diff --git a/src/main/java/itn/let/cert/ip/service/CertIpService.java b/src/main/java/itn/let/cert/ip/service/CertIpService.java index 1562df7d..d5317c2f 100644 --- a/src/main/java/itn/let/cert/ip/service/CertIpService.java +++ b/src/main/java/itn/let/cert/ip/service/CertIpService.java @@ -29,6 +29,8 @@ public interface CertIpService { public StatusResponse insertCertIp(MberCertIpVO mberCertIpVO); + public StatusResponse deleteCertIp(MberCertIpVO mberCertIpVO); + } diff --git a/src/main/java/itn/let/cert/ip/service/impl/CertIpDAO.java b/src/main/java/itn/let/cert/ip/service/impl/CertIpDAO.java index 904a3318..e1e2278c 100644 --- a/src/main/java/itn/let/cert/ip/service/impl/CertIpDAO.java +++ b/src/main/java/itn/let/cert/ip/service/impl/CertIpDAO.java @@ -6,27 +6,26 @@ import org.springframework.stereotype.Repository; import egovframework.rte.psl.dataaccess.EgovAbstractDAO; import itn.let.cert.ip.service.MberCertIpVO; -import itn.let.lett.service.LetterVO; -import itn.let.mail.service.StatusResponse; -import itn.let.mjo.addr.service.AddrVO; -import itn.let.mjo.msg.service.MjonMsgVO; -import itn.let.mjo.msgdata.service.MjonMsgDataVO; -import itn.let.sym.site.service.JoinSettingVO; -import itn.let.uat.uia.service.MberCertPhoneVO; -import itn.let.uat.uia.web.SendLogVO; -import itn.let.uss.umt.service.MberManageVO; @Repository("CertIpDAO") public class CertIpDAO extends EgovAbstractDAO { - public List selectMberCertIpList(MberCertIpVO mberCertPhoneVO) { - return (List) list("MberCertIpVO.selectMberCertIpList", mberCertPhoneVO); + public List selectMberCertIpList(MberCertIpVO mberCertIpVO) { + return (List) list("MberCertIpVO.selectMberCertIpList", mberCertIpVO); } public void insertCertIp(MberCertIpVO mberCertIpVO) { insert("MberCertIpVO.insertCertIp", mberCertIpVO); } + + public void deleteCertIp(MberCertIpVO mberCertIpVO) { + insert("MberCertIpVO.deleteCertIp", mberCertIpVO); + } + + public MberCertIpVO findByMberCertIpList(MberCertIpVO mberCertIpVO) { + return (MberCertIpVO) select("MberCertIpVO.findByMberCertIpList", mberCertIpVO); + } } diff --git a/src/main/java/itn/let/cert/ip/service/impl/CertIpServiceImpl.java b/src/main/java/itn/let/cert/ip/service/impl/CertIpServiceImpl.java index f44dcdb4..023efcc4 100644 --- a/src/main/java/itn/let/cert/ip/service/impl/CertIpServiceImpl.java +++ b/src/main/java/itn/let/cert/ip/service/impl/CertIpServiceImpl.java @@ -29,8 +29,19 @@ public class CertIpServiceImpl extends EgovAbstractServiceImpl implements CertIp @Override public StatusResponse insertCertIp(MberCertIpVO mberCertIpVO) { + MberCertIpVO mberCertIpListVO = certIpDAO.findByMberCertIpList(mberCertIpVO); + if(mberCertIpListVO != null) { + return new StatusResponse(HttpStatus.CONFLICT, "중복 IP입니다.", LocalDateTime.now()); + } certIpDAO.insertCertIp(mberCertIpVO); return new StatusResponse(HttpStatus.OK, "등록 하였습니다.", LocalDateTime.now()); } + + + @Override + public StatusResponse deleteCertIp(MberCertIpVO mberCertIpVO) { + certIpDAO.deleteCertIp(mberCertIpVO); + return new StatusResponse(HttpStatus.OK, "삭제 하였습니다.", LocalDateTime.now()); + } } diff --git a/src/main/java/itn/let/cert/ip/web/CertIpController.java b/src/main/java/itn/let/cert/ip/web/CertIpController.java index 9cbe129a..8dfb6947 100644 --- a/src/main/java/itn/let/cert/ip/web/CertIpController.java +++ b/src/main/java/itn/let/cert/ip/web/CertIpController.java @@ -44,7 +44,6 @@ public class CertIpController { @RequestMapping(value = {"/cert/ip/selectMberCertIpList.do"}) public ResponseEntity selectMberCertIpList(MberCertIpVO mberCertPhoneVO) throws Exception { - System.out.println("????????????????????????????"); ModelAndView modelAndView = new ModelAndView(); modelAndView.setViewName("jsonView"); @@ -79,10 +78,9 @@ public class CertIpController { return ResponseEntity.ok().body(certIpService.insertCertIp(mberCertIpVO)); } - /* - @RequestMapping(value = {"/cert/ip/findByCertIp.do"}) - public ResponseEntity findByCertIp(MberCertIpVO mberCertPhoneVO) throws Exception { + @RequestMapping(value = {"/cert/ip/deleteCertIp.do"}) + public ResponseEntity deleteCertIp(MberCertIpVO mberCertIpVO) throws Exception { ModelAndView modelAndView = new ModelAndView(); modelAndView.setViewName("jsonView"); @@ -94,47 +92,11 @@ public class CertIpController { if(userId == null) { if(StringUtils.isEmpty(userId)) return ResponseEntity.ok().body(new StatusResponse(HttpStatus.BAD_REQUEST, "로그인 후 이용해 주세요", LocalDateTime.now())); } - return ResponseEntity.ok().body(certIpService.findByCertPhoneInfo(mberCertPhoneVO)); + mberCertIpVO.setLastUpdusrId(userId); + mberCertIpVO.setMberId(userId); + + + return ResponseEntity.ok().body(certIpService.deleteCertIp(mberCertIpVO)); } - - @RequestMapping(value = {"/uss/umt/user/updateCertPhone.do"}) - public ResponseEntity updateCertPhone(MberCertPhoneVO mberCertPhoneVO) throws Exception { - - ModelAndView modelAndView = new ModelAndView(); - modelAndView.setViewName("jsonView"); - - //로그인 권한정보 불러오기 - LoginVO loginVO = EgovUserDetailsHelper.isAuthenticated()? (LoginVO)EgovUserDetailsHelper.getAuthenticatedUser():null; - String userId = loginVO == null ? "" : EgovStringUtil.isNullToString(loginVO.getId()); - - if(userId == null) { - if(StringUtils.isEmpty(userId)) return ResponseEntity.ok().body(new StatusResponse(HttpStatus.BAD_REQUEST, "로그인 후 이용해 주세요", LocalDateTime.now())); - } - mberCertPhoneVO.setFrstRegisterId(userId); - - - return ResponseEntity.ok().body(certIpService.updateMberCertPhoneInfo(mberCertPhoneVO)); - } - - @RequestMapping(value = {"/uss/umt/user/deleteCertPhone.do"}) - public ResponseEntity deleteCertPhone(MberCertPhoneVO mberCertPhoneVO) throws Exception { - - ModelAndView modelAndView = new ModelAndView(); - modelAndView.setViewName("jsonView"); - - //로그인 권한정보 불러오기 - LoginVO loginVO = EgovUserDetailsHelper.isAuthenticated()? (LoginVO)EgovUserDetailsHelper.getAuthenticatedUser():null; - String userId = loginVO == null ? "" : EgovStringUtil.isNullToString(loginVO.getId()); - - if(userId == null) { - if(StringUtils.isEmpty(userId)) return ResponseEntity.ok().body(new StatusResponse(HttpStatus.BAD_REQUEST, "로그인 후 이용해 주세요", LocalDateTime.now())); - } - mberCertPhoneVO.setLastUpdusrId(userId); - - - - return ResponseEntity.ok().body(certIpService.deleteCertPhoneInfo(mberCertPhoneVO)); - } - */ } \ No newline at end of file diff --git a/src/main/java/itn/let/cert/phone/service/CertPhoneService.java b/src/main/java/itn/let/cert/phone/service/CertPhoneService.java new file mode 100644 index 00000000..53b89485 --- /dev/null +++ b/src/main/java/itn/let/cert/phone/service/CertPhoneService.java @@ -0,0 +1,35 @@ +package itn.let.cert.phone.service; + +import java.util.List; + +import itn.let.mail.service.StatusResponse; + +public interface CertPhoneService { + +// public List selectMberCertPhoneList(String userId); +// +// public StatusResponse insertMberCertPhoneInfo(MberCertPhoneVO mberCertPhoneVO); +// +// public StatusResponse deleteCertPhoneInfo(MberCertPhoneVO mberCertPhoneVO); +// +// public List selectMberCertPhoneListVO(MberCertPhoneVO mberCertPhoneVO); +// + public StatusResponse findByCertPhoneInfo(MberCertPhoneVO mberCertPhoneVO); +// +// public StatusResponse updateMberCertPhoneInfo(MberCertPhoneVO mberCertPhoneVO); + + public StatusResponse selectMberCertPhoneList(MberCertPhoneVO mberCertPhoneVO); + + public StatusResponse insertCertPhone(MberCertPhoneVO mberCertPhoneVO); + + public StatusResponse deleteCertPhone(MberCertPhoneVO mberCertPhoneVO); + + public List selectMberCertPhoneList(String userId); + + public StatusResponse updateMberCertPhone(MberCertPhoneVO mberCertPhoneVO); + + + + + +} diff --git a/src/main/java/itn/let/uat/uia/service/MberCertPhoneVO.java b/src/main/java/itn/let/cert/phone/service/MberCertPhoneVO.java similarity index 82% rename from src/main/java/itn/let/uat/uia/service/MberCertPhoneVO.java rename to src/main/java/itn/let/cert/phone/service/MberCertPhoneVO.java index b9945ef0..2eda23e9 100644 --- a/src/main/java/itn/let/uat/uia/service/MberCertPhoneVO.java +++ b/src/main/java/itn/let/cert/phone/service/MberCertPhoneVO.java @@ -1,4 +1,4 @@ -package itn.let.uat.uia.service; +package itn.let.cert.phone.service; import itn.let.uss.umt.service.UserDefaultVO; @@ -7,7 +7,7 @@ import itn.let.uss.umt.service.UserDefaultVO; * @author : 이호영 * @fileName : MberCertPhoneVO.java * @date : 2024.11.18 - * @description : 발신번호 lettngnrlmber_cert_phone 관련 vo + * @description : 발신번호 lettngnrlmber_cert_ip 관련 vo * =========================================================== * DATE AUTHOR NOTE * ----------------------------------------------------------- * @@ -16,6 +16,7 @@ import itn.let.uss.umt.service.UserDefaultVO; * * */ + public class MberCertPhoneVO extends UserDefaultVO{ @@ -30,7 +31,6 @@ public class MberCertPhoneVO extends UserDefaultVO{ private String certAlias; private String certMemo; private String certUseYn; - private String certMbtlnum; @@ -66,12 +66,6 @@ public class MberCertPhoneVO extends UserDefaultVO{ public void setCertUseYn(String certUseYn) { this.certUseYn = certUseYn; } - public String getCertMbtlnum() { - return certMbtlnum; - } - public void setCertMbtlnum(String certMbtlnum) { - this.certMbtlnum = certMbtlnum; - } diff --git a/src/main/java/itn/let/cert/phone/service/impl/CertPhoneDAO.java b/src/main/java/itn/let/cert/phone/service/impl/CertPhoneDAO.java new file mode 100644 index 00000000..d2a7931e --- /dev/null +++ b/src/main/java/itn/let/cert/phone/service/impl/CertPhoneDAO.java @@ -0,0 +1,37 @@ +package itn.let.cert.phone.service.impl; + +import java.util.List; + +import org.springframework.stereotype.Repository; + +import egovframework.rte.psl.dataaccess.EgovAbstractDAO; +import itn.let.cert.phone.service.MberCertPhoneVO; + +@Repository("CertPhoneDAO") +public class CertPhoneDAO extends EgovAbstractDAO { + + public List selectMberCertPhoneList(String userId) { + return (List) list("mberCertPhoneVO.selectMberCertPhoneList", userId); + } + + public void insertCertPhone(MberCertPhoneVO mberCertPhoneVO) { + insert("mberCertPhoneVO.insertCertPhone", mberCertPhoneVO); + } + + public void deleteCertPhone(MberCertPhoneVO mberCertPhoneVO) { + insert("mberCertPhoneVO.deleteCertPhone", mberCertPhoneVO); + } + + public MberCertPhoneVO findByCertPhoneInfo(MberCertPhoneVO mberCertPhoneVO) { + return (MberCertPhoneVO) select("mberCertPhoneVO.findByCertPhoneInfo", mberCertPhoneVO); + } + + public void updateMberCertPhone(MberCertPhoneVO mberCertPhoneVO) { + insert("mberCertPhoneVO.updateMberCertPhone", mberCertPhoneVO); + + } + + public List selectMberCertPhoneListVO(MberCertPhoneVO mberCertPhoneVO) { + return (List) list("mberCertPhoneVO.selectMberCertPhoneListVO", mberCertPhoneVO); + } +} diff --git a/src/main/java/itn/let/cert/phone/service/impl/CertPhoneServiceImpl.java b/src/main/java/itn/let/cert/phone/service/impl/CertPhoneServiceImpl.java new file mode 100644 index 00000000..4f59bc91 --- /dev/null +++ b/src/main/java/itn/let/cert/phone/service/impl/CertPhoneServiceImpl.java @@ -0,0 +1,68 @@ +package itn.let.cert.phone.service.impl; + +import java.time.LocalDateTime; +import java.util.List; + +import javax.annotation.Resource; + +import org.springframework.http.HttpStatus; +import org.springframework.stereotype.Service; + +import egovframework.rte.fdl.cmmn.EgovAbstractServiceImpl; +import itn.let.cert.phone.service.CertPhoneService; +import itn.let.cert.phone.service.MberCertPhoneVO; +import itn.let.mail.service.StatusResponse; + +@Service("CertPhoneService") +public class CertPhoneServiceImpl extends EgovAbstractServiceImpl implements CertPhoneService { + + @Resource(name = "CertPhoneDAO") + private CertPhoneDAO certPhoneDAO; + + + @Override + public StatusResponse selectMberCertPhoneList(MberCertPhoneVO mberCertPhoneVO) { + List mberCertIpListVO = certPhoneDAO.selectMberCertPhoneListVO(mberCertPhoneVO); + return new StatusResponse(HttpStatus.OK, mberCertIpListVO, LocalDateTime.now()); + } + + + @Override + public StatusResponse insertCertPhone(MberCertPhoneVO mberCertPhoneVO) { + MberCertPhoneVO mberCertIpListVO = certPhoneDAO.findByCertPhoneInfo(mberCertPhoneVO); + if(mberCertIpListVO != null) { + return new StatusResponse(HttpStatus.CONFLICT, "중복 IP입니다.", LocalDateTime.now()); + } + certPhoneDAO.insertCertPhone(mberCertPhoneVO); + return new StatusResponse(HttpStatus.OK, "등록 하였습니다.", LocalDateTime.now()); + } + + + @Override + public StatusResponse deleteCertPhone(MberCertPhoneVO mberCertPhoneVO) { + certPhoneDAO.deleteCertPhone(mberCertPhoneVO); + return new StatusResponse(HttpStatus.OK, "삭제 하였습니다.", LocalDateTime.now()); + } + + + @Override + public StatusResponse findByCertPhoneInfo(MberCertPhoneVO mberCertPhoneVO) { + MberCertPhoneVO mberCertIpListVO = certPhoneDAO.findByCertPhoneInfo(mberCertPhoneVO); + return new StatusResponse(HttpStatus.OK, mberCertIpListVO, LocalDateTime.now()); + } + + + @Override + public List selectMberCertPhoneList(String userId) { + return certPhoneDAO.selectMberCertPhoneList(userId); + + } + + + @Override + public StatusResponse updateMberCertPhone(MberCertPhoneVO mberCertPhoneVO) { + certPhoneDAO.updateMberCertPhone(mberCertPhoneVO); + return new StatusResponse(HttpStatus.OK, "수정 하였습니다.", LocalDateTime.now()); + } + +} diff --git a/src/main/java/itn/let/cert/phone/web/CertPhoneController.java b/src/main/java/itn/let/cert/phone/web/CertPhoneController.java new file mode 100644 index 00000000..3dff2eee --- /dev/null +++ b/src/main/java/itn/let/cert/phone/web/CertPhoneController.java @@ -0,0 +1,178 @@ +package itn.let.cert.phone.web; + +import java.time.LocalDateTime; + +import javax.annotation.Resource; + +import org.apache.commons.lang3.StringUtils; +import org.springframework.http.HttpStatus; +import org.springframework.http.ResponseEntity; +import org.springframework.stereotype.Controller; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.servlet.ModelAndView; + +import egovframework.rte.fdl.security.userdetails.util.EgovUserDetailsHelper; +import itn.com.cmm.LoginVO; +import itn.com.utl.fcc.service.EgovStringUtil; +import itn.let.cert.phone.service.MberCertPhoneVO; +import itn.let.cert.phone.service.CertPhoneService; +import itn.let.mail.service.StatusResponse; + +/** + * + * @author : 이호영 + * @fileName : CertIpController.java + * @date : 2024.11.19 + * @description : 허용 IP 관련 컨트롤러 + * =========================================================== + * DATE AUTHOR NOTE + * ----------------------------------------------------------- * + * 2024.11.19 이호영 최초 생성 + * + * + * + */ +@Controller +public class CertPhoneController { + + + /* certPhoneService */ + @Resource(name = "CertPhoneService") + private CertPhoneService certPhoneService; + + + + + @RequestMapping(value = {"/cert/phone/findByCertPhoneInfo.do"}) + public ResponseEntity findByCertPhoneInfo(MberCertPhoneVO mberCertPhoneVO) throws Exception { + + ModelAndView modelAndView = new ModelAndView(); + modelAndView.setViewName("jsonView"); + + //로그인 권한정보 불러오기 + LoginVO loginVO = EgovUserDetailsHelper.isAuthenticated()? (LoginVO)EgovUserDetailsHelper.getAuthenticatedUser():null; + String userId = loginVO == null ? "" : EgovStringUtil.isNullToString(loginVO.getId()); + + if(userId == null) { + if(StringUtils.isEmpty(userId)) return ResponseEntity.ok().body(new StatusResponse(HttpStatus.BAD_REQUEST, "로그인 후 이용해 주세요", LocalDateTime.now())); + } + return ResponseEntity.ok().body(certPhoneService.findByCertPhoneInfo(mberCertPhoneVO)); + } + + @RequestMapping(value = {"/cert/phone/insertCertPhone.do"}) + public ResponseEntity insertCertPhone(MberCertPhoneVO mberCertPhoneVO) throws Exception { + + ModelAndView modelAndView = new ModelAndView(); + modelAndView.setViewName("jsonView"); + + //로그인 권한정보 불러오기 + LoginVO loginVO = EgovUserDetailsHelper.isAuthenticated()? (LoginVO)EgovUserDetailsHelper.getAuthenticatedUser():null; + String userId = loginVO == null ? "" : EgovStringUtil.isNullToString(loginVO.getId()); + + if(userId == null) { + if(StringUtils.isEmpty(userId)) return ResponseEntity.ok().body(new StatusResponse(HttpStatus.BAD_REQUEST, "로그인 후 이용해 주세요", LocalDateTime.now())); + } + mberCertPhoneVO.setFrstRegisterId(userId); + + + return ResponseEntity.ok().body(certPhoneService.insertCertPhone(mberCertPhoneVO)); + } + + @RequestMapping(value = {"/cert/phone/updateCertPhone.do"}) + public ResponseEntity updateCertPhone(MberCertPhoneVO mberCertPhoneVO) throws Exception { + + ModelAndView modelAndView = new ModelAndView(); + modelAndView.setViewName("jsonView"); + + //로그인 권한정보 불러오기 + LoginVO loginVO = EgovUserDetailsHelper.isAuthenticated()? (LoginVO)EgovUserDetailsHelper.getAuthenticatedUser():null; + String userId = loginVO == null ? "" : EgovStringUtil.isNullToString(loginVO.getId()); + + if(userId == null) { + if(StringUtils.isEmpty(userId)) return ResponseEntity.ok().body(new StatusResponse(HttpStatus.BAD_REQUEST, "로그인 후 이용해 주세요", LocalDateTime.now())); + } + mberCertPhoneVO.setFrstRegisterId(userId); + + + return ResponseEntity.ok().body(certPhoneService.updateMberCertPhone(mberCertPhoneVO)); + } + + @RequestMapping(value = {"/cert/phone/deleteCertPhone.do"}) + public ResponseEntity deleteCertPhone(MberCertPhoneVO mberCertPhoneVO) throws Exception { + + ModelAndView modelAndView = new ModelAndView(); + modelAndView.setViewName("jsonView"); + + //로그인 권한정보 불러오기 + LoginVO loginVO = EgovUserDetailsHelper.isAuthenticated()? (LoginVO)EgovUserDetailsHelper.getAuthenticatedUser():null; + String userId = loginVO == null ? "" : EgovStringUtil.isNullToString(loginVO.getId()); + + if(userId == null) { + if(StringUtils.isEmpty(userId)) return ResponseEntity.ok().body(new StatusResponse(HttpStatus.BAD_REQUEST, "로그인 후 이용해 주세요", LocalDateTime.now())); + } + mberCertPhoneVO.setLastUpdusrId(userId); + + + + return ResponseEntity.ok().body(certPhoneService.deleteCertPhone(mberCertPhoneVO)); + } + + + + + + + + + + + + + + + + + + /* + + @RequestMapping(value = {"/uss/umt/user/updateCertPhone.do"}) + public ResponseEntity updateCertPhone(MberCertPhoneVO mberCertPhoneVO) throws Exception { + + ModelAndView modelAndView = new ModelAndView(); + modelAndView.setViewName("jsonView"); + + //로그인 권한정보 불러오기 + LoginVO loginVO = EgovUserDetailsHelper.isAuthenticated()? (LoginVO)EgovUserDetailsHelper.getAuthenticatedUser():null; + String userId = loginVO == null ? "" : EgovStringUtil.isNullToString(loginVO.getId()); + + if(userId == null) { + if(StringUtils.isEmpty(userId)) return ResponseEntity.ok().body(new StatusResponse(HttpStatus.BAD_REQUEST, "로그인 후 이용해 주세요", LocalDateTime.now())); + } + mberCertPhoneVO.setFrstRegisterId(userId); + + + return ResponseEntity.ok().body(certPhoneService.updateMberCertPhoneInfo(mberCertPhoneVO)); + } + + @RequestMapping(value = {"/uss/umt/user/deleteCertPhone.do"}) + public ResponseEntity deleteCertPhone(MberCertPhoneVO mberCertPhoneVO) throws Exception { + + ModelAndView modelAndView = new ModelAndView(); + modelAndView.setViewName("jsonView"); + + //로그인 권한정보 불러오기 + LoginVO loginVO = EgovUserDetailsHelper.isAuthenticated()? (LoginVO)EgovUserDetailsHelper.getAuthenticatedUser():null; + String userId = loginVO == null ? "" : EgovStringUtil.isNullToString(loginVO.getId()); + + if(userId == null) { + if(StringUtils.isEmpty(userId)) return ResponseEntity.ok().body(new StatusResponse(HttpStatus.BAD_REQUEST, "로그인 후 이용해 주세요", LocalDateTime.now())); + } + mberCertPhoneVO.setLastUpdusrId(userId); + + + + return ResponseEntity.ok().body(certPhoneService.deleteCertPhoneInfo(mberCertPhoneVO)); + } + */ + +} \ No newline at end of file diff --git a/src/main/java/itn/let/mjo/msgdata/service/MjonMsgDataService.java b/src/main/java/itn/let/mjo/msgdata/service/MjonMsgDataService.java index d7028706..7bb6990a 100644 --- a/src/main/java/itn/let/mjo/msgdata/service/MjonMsgDataService.java +++ b/src/main/java/itn/let/mjo/msgdata/service/MjonMsgDataService.java @@ -3,11 +3,9 @@ package itn.let.mjo.msgdata.service; import java.util.List; import itn.let.lett.service.LetterVO; -import itn.let.mail.service.StatusResponse; import itn.let.mjo.addr.service.AddrVO; import itn.let.mjo.msg.service.MjonMsgVO; import itn.let.sym.site.service.JoinSettingVO; -import itn.let.uat.uia.service.MberCertPhoneVO; import itn.let.uat.uia.web.SendLogVO; import itn.let.uss.umt.service.MberManageVO; @@ -179,17 +177,6 @@ public interface MjonMsgDataService { //팩스 거래명세서 합산 정보 public List selectPayUserSumFaxList(MjonMsgVO mjonMsgVO) throws Exception; - public List selectMberCertPhoneList(String userId); - - public StatusResponse insertMberCertPhoneInfo(MberCertPhoneVO mberCertPhoneVO); - - public StatusResponse deleteCertPhoneInfo(MberCertPhoneVO mberCertPhoneVO); - - public List selectMberCertPhoneListVO(MberCertPhoneVO mberCertPhoneVO); - - public StatusResponse findByCertPhoneInfo(MberCertPhoneVO mberCertPhoneVO); - - public StatusResponse updateMberCertPhoneInfo(MberCertPhoneVO mberCertPhoneVO); diff --git a/src/main/java/itn/let/mjo/msgdata/service/impl/MjonMsgDataDAO.java b/src/main/java/itn/let/mjo/msgdata/service/impl/MjonMsgDataDAO.java index 243c046d..1ea11837 100644 --- a/src/main/java/itn/let/mjo/msgdata/service/impl/MjonMsgDataDAO.java +++ b/src/main/java/itn/let/mjo/msgdata/service/impl/MjonMsgDataDAO.java @@ -6,12 +6,10 @@ import org.springframework.stereotype.Repository; import egovframework.rte.psl.dataaccess.EgovAbstractDAO; import itn.let.lett.service.LetterVO; -import itn.let.mail.service.StatusResponse; import itn.let.mjo.addr.service.AddrVO; import itn.let.mjo.msg.service.MjonMsgVO; import itn.let.mjo.msgdata.service.MjonMsgDataVO; import itn.let.sym.site.service.JoinSettingVO; -import itn.let.uat.uia.service.MberCertPhoneVO; import itn.let.uat.uia.web.SendLogVO; import itn.let.uss.umt.service.MberManageVO; @@ -369,33 +367,4 @@ public class MjonMsgDataDAO extends EgovAbstractDAO { } - public List selectMberCertPhoneList(String userId) { - - return (List) list("mjonMsgDataDAO.selectMberCertPhoneList", userId); - } - - - public void insertMberCertPhoneInfo(MberCertPhoneVO mberCertPhoneVO) { - insert("mjonMsgDataDAO.insertMberCertPhoneInfo", mberCertPhoneVO); - } - - public void updateMberCertPhoneInfo(MberCertPhoneVO mberCertPhoneVO) { - update("mjonMsgDataDAO.updateMberCertPhoneInfo", mberCertPhoneVO); - } - - - public void deleteCertPhoneInfo(MberCertPhoneVO mberCertPhoneVO) { - update("mjonMsgDataDAO.deleteCertPhoneInfo", mberCertPhoneVO); - } - - - public List selectMberCertPhoneListVO(MberCertPhoneVO mberCertPhoneVO) { - return (List) list("mjonMsgDataDAO.selectMberCertPhoneListVO", mberCertPhoneVO); - } - - - public MberCertPhoneVO findByCertPhoneInfo(MberCertPhoneVO mberCertPhoneVO) { - return (MberCertPhoneVO) select("mjonMsgDataDAO.findByCertPhoneInfo", mberCertPhoneVO); - } - } diff --git a/src/main/java/itn/let/mjo/msgdata/service/impl/MjonMsgDataServiceImpl.java b/src/main/java/itn/let/mjo/msgdata/service/impl/MjonMsgDataServiceImpl.java index 950116b9..91a619ab 100644 --- a/src/main/java/itn/let/mjo/msgdata/service/impl/MjonMsgDataServiceImpl.java +++ b/src/main/java/itn/let/mjo/msgdata/service/impl/MjonMsgDataServiceImpl.java @@ -1,7 +1,6 @@ package itn.let.mjo.msgdata.service.impl; import java.text.SimpleDateFormat; -import java.time.LocalDateTime; import java.util.ArrayList; import java.util.Calendar; import java.util.Date; @@ -9,7 +8,6 @@ import java.util.List; import javax.annotation.Resource; -import org.springframework.http.HttpStatus; import org.springframework.stereotype.Service; import egovframework.rte.fdl.cmmn.EgovAbstractServiceImpl; @@ -18,7 +16,6 @@ import egovframework.rte.psl.dataaccess.util.EgovMap; import itn.com.cmm.util.MJUtil; import itn.com.cmm.util.StringUtil; import itn.let.lett.service.LetterVO; -import itn.let.mail.service.StatusResponse; import itn.let.mjo.addr.service.AddrVO; import itn.let.mjo.event.service.MjonEventService; import itn.let.mjo.event.service.MjonEventVO; @@ -40,7 +37,6 @@ import itn.let.mjo.pay.service.MjonPayVO; import itn.let.mjo.pay.service.impl.MjonPayDAO; import itn.let.sym.site.service.JoinSettingVO; import itn.let.sym.site.service.impl.SiteManagerDAO; -import itn.let.uat.uia.service.MberCertPhoneVO; import itn.let.uat.uia.web.SendLogVO; import itn.let.uss.umt.service.MberManageVO; @@ -3160,46 +3156,5 @@ public class MjonMsgDataServiceImpl extends EgovAbstractServiceImpl implements M return mjonMsgDataDAO.selectPayUserSumFaxList(mjonMsgVO); } - @Override - public List selectMberCertPhoneList(String userId) { - return mjonMsgDataDAO.selectMberCertPhoneList(userId); - } - - @Override - public StatusResponse insertMberCertPhoneInfo(MberCertPhoneVO mberCertPhoneVO) { - MberCertPhoneVO mberCertPhoneReturnVO = mjonMsgDataDAO.findByCertPhoneInfo(mberCertPhoneVO); - if(mberCertPhoneReturnVO != null) { - return new StatusResponse(HttpStatus.CONFLICT, "중복 번호입니다.", LocalDateTime.now()); - } - - - mjonMsgDataDAO.insertMberCertPhoneInfo(mberCertPhoneVO); - - return new StatusResponse(HttpStatus.OK, "등록하였습니다.", LocalDateTime.now()); - } - - @Override - public StatusResponse updateMberCertPhoneInfo(MberCertPhoneVO mberCertPhoneVO) { - mjonMsgDataDAO.updateMberCertPhoneInfo(mberCertPhoneVO); - return new StatusResponse(HttpStatus.OK, "수정하였습니다.", LocalDateTime.now()); - } - - - @Override - public StatusResponse deleteCertPhoneInfo(MberCertPhoneVO mberCertPhoneVO) { - mjonMsgDataDAO.deleteCertPhoneInfo(mberCertPhoneVO); - return new StatusResponse(HttpStatus.OK, "삭제하였습니다.", LocalDateTime.now()); - } - - @Override - public List selectMberCertPhoneListVO(MberCertPhoneVO mberCertPhoneVO) { - return mjonMsgDataDAO.selectMberCertPhoneListVO(mberCertPhoneVO); - } - - @Override - public StatusResponse findByCertPhoneInfo(MberCertPhoneVO mberCertPhoneVO) { - MberCertPhoneVO mberCertPhoneReturnVO = mjonMsgDataDAO.findByCertPhoneInfo(mberCertPhoneVO); - return new StatusResponse(HttpStatus.OK, mberCertPhoneReturnVO, LocalDateTime.now()); - } } diff --git a/src/main/java/itn/let/uat/uia/web/EgovLoginController.java b/src/main/java/itn/let/uat/uia/web/EgovLoginController.java index f1016408..23ea14b5 100644 --- a/src/main/java/itn/let/uat/uia/web/EgovLoginController.java +++ b/src/main/java/itn/let/uat/uia/web/EgovLoginController.java @@ -83,6 +83,8 @@ import itn.com.cmm.util.StringUtil; import itn.com.cmm.util.WebUtil; import itn.com.uss.olh.hpc.service.HackIpService; import itn.com.uss.olh.hpc.service.HackIpVO; +import itn.let.cert.phone.service.CertPhoneService; +import itn.let.cert.phone.service.MberCertPhoneVO; import itn.let.cop.bbs.service.BoardVO; import itn.let.mjo.event.service.MjonEventService; import itn.let.mjo.event.service.MjonEventVO; @@ -109,7 +111,6 @@ import itn.let.uat.uap.service.EgovLoginPolicyService; import itn.let.uat.uap.service.LoginPolicyVO; import itn.let.uat.uia.service.AuthCertVO; import itn.let.uat.uia.service.EgovLoginService; -import itn.let.uat.uia.service.MberCertPhoneVO; import itn.let.uss.umt.service.EgovMberManageService; import itn.let.uss.umt.service.EgovUserManageService; import itn.let.uss.umt.service.MberManageConfigVO; @@ -237,6 +238,9 @@ public class EgovLoginController { @Resource(name = "mberGrdService") MberGrdService mberGrdService; + + @Resource(name = "CertPhoneService") + private CertPhoneService certPhoneService; private static final Logger logger = LoggerFactory.getLogger(MjonMsgDataController.class); @@ -2054,7 +2058,7 @@ public class EgovLoginController { */ - List mberCertPhoneList = mjonMsgDataService.selectMberCertPhoneList(resultVO.getId()); + List mberCertPhoneList = certPhoneService.selectMberCertPhoneList(resultVO.getId()); modelAndView.addObject("status", "success"); @@ -3633,7 +3637,7 @@ public class EgovLoginController { mberCertPhoneVO.setMberId(mjonMsgVO.getUserId()); - List mberCertPhoneList = mjonMsgDataService.selectMberCertPhoneListVO(mberCertPhoneVO); + List mberCertPhoneList = certPhoneService.selectMberCertPhoneList(mjonMsgVO.getUserId()); diff --git a/src/main/java/itn/let/uss/umt/web/EgovUserManageController.java b/src/main/java/itn/let/uss/umt/web/EgovUserManageController.java index 96b00346..b6334e4a 100644 --- a/src/main/java/itn/let/uss/umt/web/EgovUserManageController.java +++ b/src/main/java/itn/let/uss/umt/web/EgovUserManageController.java @@ -79,6 +79,8 @@ import itn.com.cmm.util.MJUtil; import itn.com.cmm.util.RedirectUrlMaker; import itn.com.cmm.util.StringUtil; import itn.com.utl.fcc.service.EgovStringUtil; +import itn.let.cert.phone.service.CertPhoneService; +import itn.let.cert.phone.service.MberCertPhoneVO; import itn.let.cop.bbs.service.BoardVO; import itn.let.fax.user.service.FaxGroupDataVO; import itn.let.fax.user.service.FaxService; @@ -131,7 +133,6 @@ import itn.let.sym.site.service.EgovSiteManagerService; import itn.let.sym.site.service.JoinSettingVO; import itn.let.sym.site.service.SiteManagerVO; import itn.let.uat.uia.service.EgovLoginService; -import itn.let.uat.uia.service.MberCertPhoneVO; import itn.let.uat.uia.web.EmailVO; import itn.let.uat.uia.web.SendLogVO; import itn.let.uat.uia.web.SendMail; @@ -281,6 +282,10 @@ public class EgovUserManageController { @Resource(name = "MjonReservMsgService") private MjonReservMsgService mjonReservMsgService; + + @Resource(name = "CertPhoneService") + private CertPhoneService certPhoneService; + @Autowired KakaoApiTemplate kakaoApiTemplate; @@ -1102,7 +1107,7 @@ public class EgovUserManageController { - List mberCertPhoneList = mjonMsgDataService.selectMberCertPhoneList(userId); + List mberCertPhoneList = certPhoneService.selectMberCertPhoneList(userId); model.addAttribute("mberCertPhoneList", mberCertPhoneList); //문자발송 단가 조회하기 @@ -1657,79 +1662,6 @@ public class EgovUserManageController { return modelAndView; } - @RequestMapping(value = {"/uss/umt/user/findByCertPhoneInfo.do"}) - public ResponseEntity findByCertPhoneInfo(MberCertPhoneVO mberCertPhoneVO) throws Exception { - - ModelAndView modelAndView = new ModelAndView(); - modelAndView.setViewName("jsonView"); - - //로그인 권한정보 불러오기 - LoginVO loginVO = EgovUserDetailsHelper.isAuthenticated()? (LoginVO)EgovUserDetailsHelper.getAuthenticatedUser():null; - String userId = loginVO == null ? "" : EgovStringUtil.isNullToString(loginVO.getId()); - - if(userId == null) { - if(StringUtils.isEmpty(userId)) return ResponseEntity.ok().body(new StatusResponse(HttpStatus.BAD_REQUEST, "로그인 후 이용해 주세요", LocalDateTime.now())); - } - return ResponseEntity.ok().body(mjonMsgDataService.findByCertPhoneInfo(mberCertPhoneVO)); - } - - @RequestMapping(value = {"/uss/umt/user/insertCertPhone.do"}) - public ResponseEntity insertCertPhone(MberCertPhoneVO mberCertPhoneVO) throws Exception { - - ModelAndView modelAndView = new ModelAndView(); - modelAndView.setViewName("jsonView"); - - //로그인 권한정보 불러오기 - LoginVO loginVO = EgovUserDetailsHelper.isAuthenticated()? (LoginVO)EgovUserDetailsHelper.getAuthenticatedUser():null; - String userId = loginVO == null ? "" : EgovStringUtil.isNullToString(loginVO.getId()); - - if(userId == null) { - if(StringUtils.isEmpty(userId)) return ResponseEntity.ok().body(new StatusResponse(HttpStatus.BAD_REQUEST, "로그인 후 이용해 주세요", LocalDateTime.now())); - } - mberCertPhoneVO.setFrstRegisterId(userId); - - - return ResponseEntity.ok().body(mjonMsgDataService.insertMberCertPhoneInfo(mberCertPhoneVO)); - } - - @RequestMapping(value = {"/uss/umt/user/updateCertPhone.do"}) - public ResponseEntity updateCertPhone(MberCertPhoneVO mberCertPhoneVO) throws Exception { - - ModelAndView modelAndView = new ModelAndView(); - modelAndView.setViewName("jsonView"); - - //로그인 권한정보 불러오기 - LoginVO loginVO = EgovUserDetailsHelper.isAuthenticated()? (LoginVO)EgovUserDetailsHelper.getAuthenticatedUser():null; - String userId = loginVO == null ? "" : EgovStringUtil.isNullToString(loginVO.getId()); - - if(userId == null) { - if(StringUtils.isEmpty(userId)) return ResponseEntity.ok().body(new StatusResponse(HttpStatus.BAD_REQUEST, "로그인 후 이용해 주세요", LocalDateTime.now())); - } - mberCertPhoneVO.setFrstRegisterId(userId); - - - return ResponseEntity.ok().body(mjonMsgDataService.updateMberCertPhoneInfo(mberCertPhoneVO)); - } - - @RequestMapping(value = {"/uss/umt/user/deleteCertPhone.do"}) - public ResponseEntity deleteCertPhone(MberCertPhoneVO mberCertPhoneVO) throws Exception { - - ModelAndView modelAndView = new ModelAndView(); - modelAndView.setViewName("jsonView"); - - //로그인 권한정보 불러오기 - LoginVO loginVO = EgovUserDetailsHelper.isAuthenticated()? (LoginVO)EgovUserDetailsHelper.getAuthenticatedUser():null; - String userId = loginVO == null ? "" : EgovStringUtil.isNullToString(loginVO.getId()); - - if(userId == null) { - if(StringUtils.isEmpty(userId)) return ResponseEntity.ok().body(new StatusResponse(HttpStatus.BAD_REQUEST, "로그인 후 이용해 주세요", LocalDateTime.now())); - } - mberCertPhoneVO.setLastUpdusrId(userId); - - - - return ResponseEntity.ok().body(mjonMsgDataService.deleteCertPhoneInfo(mberCertPhoneVO)); - } /** * 회원정보 팝업 이벤트 정보 신규 추가 기능 diff --git a/src/main/resources/egovframework/sqlmap/config/mysql/sql-map-config-mysql-cert.xml b/src/main/resources/egovframework/sqlmap/config/mysql/sql-map-config-mysql-cert.xml index 1ffaebc8..081c2f5f 100644 --- a/src/main/resources/egovframework/sqlmap/config/mysql/sql-map-config-mysql-cert.xml +++ b/src/main/resources/egovframework/sqlmap/config/mysql/sql-map-config-mysql-cert.xml @@ -4,4 +4,5 @@ + diff --git a/src/main/resources/egovframework/sqlmap/let/cert/MjonCertIp_SQL_mysql.xml b/src/main/resources/egovframework/sqlmap/let/cert/MjonCertIp_SQL_mysql.xml index 2b947f9c..cb7b6da6 100644 --- a/src/main/resources/egovframework/sqlmap/let/cert/MjonCertIp_SQL_mysql.xml +++ b/src/main/resources/egovframework/sqlmap/let/cert/MjonCertIp_SQL_mysql.xml @@ -8,6 +8,7 @@ + + + /*MberCertIpVO.insertCertIp*/ INSERT INTO LETTNGNRLMBER_CERT_IP ( MBER_ID , CERT_IP , CERT_MEMO - , LAST_UPDT_PNTTM + , FRST_REGIST_PNTTM , FRST_REGISTER_ID ) VALUES @@ -45,5 +68,22 @@ + + /*MberCertIpVO.deleteCertIp*/ + + + UPDATE LETTNGNRLMBER_CERT_IP + SET + CERT_USE_YN = 'N' + , LAST_UPDT_PNTTM = now() + , LAST_UPDUSR_ID = #lastUpdusrId# + WHERE + MBER_ID = #mberId# + AND CERT_IP = #certIp# + + + + + \ No newline at end of file diff --git a/src/main/resources/egovframework/sqlmap/let/cert/MjonCertPhone_SQL_mysql.xml b/src/main/resources/egovframework/sqlmap/let/cert/MjonCertPhone_SQL_mysql.xml new file mode 100644 index 00000000..6add6b57 --- /dev/null +++ b/src/main/resources/egovframework/sqlmap/let/cert/MjonCertPhone_SQL_mysql.xml @@ -0,0 +1,119 @@ + + + + + + + + + + + + + + + + /* mberCertPhoneVO.insertCertIp */ + INSERT + INTO LETTNGNRLMBER_CERT_PHONE + ( + MBER_ID + , MBTLNUM + , CERT_ALIAS + , CERT_MEMO + , FRST_REGIST_PNTTM + , FRST_REGISTER_ID + ) + VALUES + ( + #mberId# + , #mbtlnum# + , #certAlias# + , #certMemo# + , now() + , #frstRegisterId# + ) + + + + + + UPDATE LETTNGNRLMBER_CERT_PHONE + SET CERT_USE_YN = 'N' + , LAST_UPDUSR_ID = #lastUpdusrId# + WHERE + MBER_ID = #mberId# + AND MBTLNUM = #mbtlnum# + + + + + + + + UPDATE LETTNGNRLMBER_CERT_PHONE + SET + LAST_UPDUSR_ID = #lastUpdusrId# + , CERT_MEMO = #certMemo# + , CERT_ALIAS = #certAlias# + WHERE + MBER_ID = #mberId# + AND MBTLNUM = #mbtlnum# + + + + + + \ No newline at end of file diff --git a/src/main/resources/egovframework/sqlmap/let/msg/MjonMsgData_SQL_mysql.xml b/src/main/resources/egovframework/sqlmap/let/msg/MjonMsgData_SQL_mysql.xml index 140ea866..eeb9130a 100644 --- a/src/main/resources/egovframework/sqlmap/let/msg/MjonMsgData_SQL_mysql.xml +++ b/src/main/resources/egovframework/sqlmap/let/msg/MjonMsgData_SQL_mysql.xml @@ -21,7 +21,6 @@ - @@ -3757,110 +3756,6 @@ - - - - - - - - - - INSERT - INTO LETTNGNRLMBER_CERT_PHONE - ( - MBER_ID - , MBTLNUM - , CERT_ALIAS - , CERT_MEMO - , FRST_REGIST_PNTTM - , FRST_REGISTER_ID - ) - VALUES - ( - #mberId# - , #mbtlnum# - , #certAlias# - , #certMemo# - , now() - , #frstRegisterId# - ) - - - - - UPDATE LETTNGNRLMBER_CERT_PHONE - SET CERT_USE_YN = 'N' - , LAST_UPDUSR_ID = #lastUpdusrId# - WHERE - MBER_ID = #mberId# - AND MBTLNUM = #mbtlnum# - - - - - - - UPDATE LETTNGNRLMBER_CERT_PHONE - SET - LAST_UPDUSR_ID = #lastUpdusrId# - , CERT_MEMO = #certMemo# - , CERT_ALIAS = #certAlias# - WHERE - MBER_ID = #mberId# - AND MBTLNUM = #mbtlnum# - - - - + - @@ -92,6 +93,7 @@ $(document).ready(function(){ }); + // IP 등록버튼 $(document).on('click', '#ipRegBtn', function () { // 현재 클릭된 버튼의 부모 tr 요소 const $currentRow = $(this).closest('tr'); @@ -106,16 +108,19 @@ $(document).ready(function(){ $currentRow.find('td:eq(0) input').focus(); return; } - - // 추가 동작 (예: 서버 전송) -// alert(`입력된 IP: ${ipValue}, 메모: ${memoValue}`); + + const ipRegex = /^(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)$/; + + if (!ipRegex.test(ipValue)) { + alert("유효하지 않은 IP 주소입니다."); + return false; + } var params = { "certIp" : ipValue , "certMemo" : memoValue } - console.log('params : ', params); if(!confirm("IP를 등록 하시겠습니까?")){ return false; @@ -128,35 +133,18 @@ $(document).ready(function(){ async: false, success: function (returnData) { if(returnData.status == 'OK'){ - const objects = returnData.object; // 배열 데이터 - let rows = ""; // 추가할 행들 - - // 배열 데이터를 순회하며 각 행 생성 - objects.forEach((obj) => { - rows += ` - - ${obj.certIp || "-"} - ${obj.certMemo || "-"} - ${obj.lastUpdtPnttm || "-"} - - - - - `; - }); - - // 기존 tbody 비우고 새 행 추가 - $(".ip_table tbody").html(rows); - + findAllCertIp(); + }else if(returnData.status == 'CONFLICT'){ + alert(returnData.message); + return false; } else { - alert("오류가 발생하였습니다."); + alert("오류가 발생하였습니다."); } }, error: function (e) { alert("오류가 발생하였습니다."); console.log("ERROR : ", e); } }); - }); @@ -166,8 +154,6 @@ $(document).ready(function(){ function findAllCertIp(){ - console.log('findAllCertIp : ', findAllCertIp); - $.ajax({ type: "POST", url: "/cert/ip/selectMberCertIpList.do", @@ -177,22 +163,37 @@ function findAllCertIp(){ success: function (returnData) { if (returnData.status === "OK") { const objects = returnData.object; // 배열 데이터 - let rows = ""; // 추가할 행들 - objects.forEach((obj) => { - rows += ` - - ${obj.certIp || "-"} - ${obj.certMemo || "-"} - ${obj.lastUpdtPnttm || "-"} - - - - - `; - }); + + // tbody의 기존 내용 삭제 + const $tbody = $(".ip_table tbody"); + $tbody.empty(); - // 생성된 rows를 tbody에 삽입 - $(".ip_table tbody").html(rows); + // 배열 데이터를 기반으로 tr 생성 후 tbody에 추가 + $.each(objects, function(index, obj) { + const $tr = $(""); // tr 요소 생성 + + // 각 td 요소 생성 + const $certIp = $("").text(obj.certIp || ""); + const $certMemo = $("").text(obj.certMemo || ""); + const $frstRegistPnttm = $("").text(obj.frstRegistPnttm || "등록되지 않음"); + const $deleteBtn = $("") + .addClass("btnType btn_text btn_lightgray fill btn_28") + .text("삭제") + .attr("type", "button") + .attr("id", "ipDelBtn") + .on("click", function() { + deleteRow(obj.certIp); // 삭제 버튼 클릭 시 실행 + }); + + // 관리 버튼을 감쌀 td 생성 + const $deleteTd = $("").append($deleteBtn); + + // tr에 td 추가 + $tr.append($certIp, $certMemo, $frstRegistPnttm, $deleteTd); + + // tbody에 tr 추가 + $tbody.append($tr); + }); } else { alert("데이터를 불러오는 데 실패했습니다."); } @@ -201,6 +202,33 @@ function findAllCertIp(){ }); } +// IP 삭제 +function deleteRow(p_ip){ + + var params = { + "certIp" : p_ip + } + if(!confirm("IP를 삭제 하시겠습니까?")){ + return false; + } + $.ajax({ + type: "POST", + url: "/cert/ip/deleteCertIp.do", + data: params, + dataType:'json', + async: false, + success: function (returnData) { + if(returnData.status == 'OK'){ + findAllCertIp(); + } + else + { + alert("오류가 발생하였습니다."); + } + }, + error: function (e) { alert("오류가 발생하였습니다."); console.log("ERROR : ", e); } + }); +} //기간 요일 지정 @@ -672,7 +700,7 @@ function getMberGrdChk() {

접속 IP를 미리 등록할 경우 2차 로그인 인증 없이 접속이 가능합니다.
(공용 PC는 보안상의 이유로 등록을 권장하지 않습니다.)

- +
@@ -693,10 +721,7 @@ function getMberGrdChk() { - 192.168.0.0 - dadfadfjadkfjalkdjfajflajdlfjaldjflajd - 2024-11-11 11:11 - + 등록된 IP 주소가 없습니다.