인증번호 패키지화 완료

This commit is contained in:
hehihoho3@gmail.com 2024-11-20 12:44:01 +09:00
parent 34efc8d6fb
commit 6223dd1cdb
20 changed files with 605 additions and 426 deletions

View File

@ -29,6 +29,8 @@ public interface CertIpService {
public StatusResponse insertCertIp(MberCertIpVO mberCertIpVO);
public StatusResponse deleteCertIp(MberCertIpVO mberCertIpVO);
}

View File

@ -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<MberCertIpVO> selectMberCertIpList(MberCertIpVO mberCertPhoneVO) {
return (List<MberCertIpVO>) list("MberCertIpVO.selectMberCertIpList", mberCertPhoneVO);
public List<MberCertIpVO> selectMberCertIpList(MberCertIpVO mberCertIpVO) {
return (List<MberCertIpVO>) 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);
}
}

View File

@ -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());
}
}

View File

@ -44,7 +44,6 @@ public class CertIpController {
@RequestMapping(value = {"/cert/ip/selectMberCertIpList.do"})
public ResponseEntity<StatusResponse> 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<StatusResponse> findByCertIp(MberCertIpVO mberCertPhoneVO) throws Exception {
@RequestMapping(value = {"/cert/ip/deleteCertIp.do"})
public ResponseEntity<StatusResponse> 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<StatusResponse> 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<StatusResponse> 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));
}
*/
}

View File

@ -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<MberCertPhoneVO> selectMberCertPhoneList(String userId);
//
// public StatusResponse insertMberCertPhoneInfo(MberCertPhoneVO mberCertPhoneVO);
//
// public StatusResponse deleteCertPhoneInfo(MberCertPhoneVO mberCertPhoneVO);
//
// public List<MberCertPhoneVO> 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<MberCertPhoneVO> selectMberCertPhoneList(String userId);
public StatusResponse updateMberCertPhone(MberCertPhoneVO mberCertPhoneVO);
}

View File

@ -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;
}

View File

@ -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<MberCertPhoneVO> selectMberCertPhoneList(String userId) {
return (List<MberCertPhoneVO>) 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<MberCertPhoneVO> selectMberCertPhoneListVO(MberCertPhoneVO mberCertPhoneVO) {
return (List<MberCertPhoneVO>) list("mberCertPhoneVO.selectMberCertPhoneListVO", mberCertPhoneVO);
}
}

View File

@ -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<MberCertPhoneVO> 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<MberCertPhoneVO> selectMberCertPhoneList(String userId) {
return certPhoneDAO.selectMberCertPhoneList(userId);
}
@Override
public StatusResponse updateMberCertPhone(MberCertPhoneVO mberCertPhoneVO) {
certPhoneDAO.updateMberCertPhone(mberCertPhoneVO);
return new StatusResponse(HttpStatus.OK, "수정 하였습니다.", LocalDateTime.now());
}
}

View File

@ -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<StatusResponse> 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<StatusResponse> 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<StatusResponse> 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<StatusResponse> 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<StatusResponse> 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<StatusResponse> 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));
}
*/
}

View File

@ -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<MjonMsgVO> selectPayUserSumFaxList(MjonMsgVO mjonMsgVO) throws Exception;
public List<MberCertPhoneVO> selectMberCertPhoneList(String userId);
public StatusResponse insertMberCertPhoneInfo(MberCertPhoneVO mberCertPhoneVO);
public StatusResponse deleteCertPhoneInfo(MberCertPhoneVO mberCertPhoneVO);
public List<MberCertPhoneVO> selectMberCertPhoneListVO(MberCertPhoneVO mberCertPhoneVO);
public StatusResponse findByCertPhoneInfo(MberCertPhoneVO mberCertPhoneVO);
public StatusResponse updateMberCertPhoneInfo(MberCertPhoneVO mberCertPhoneVO);

View File

@ -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<MberCertPhoneVO> selectMberCertPhoneList(String userId) {
return (List<MberCertPhoneVO>) 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<MberCertPhoneVO> selectMberCertPhoneListVO(MberCertPhoneVO mberCertPhoneVO) {
return (List<MberCertPhoneVO>) list("mjonMsgDataDAO.selectMberCertPhoneListVO", mberCertPhoneVO);
}
public MberCertPhoneVO findByCertPhoneInfo(MberCertPhoneVO mberCertPhoneVO) {
return (MberCertPhoneVO) select("mjonMsgDataDAO.findByCertPhoneInfo", mberCertPhoneVO);
}
}

View File

@ -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<MberCertPhoneVO> 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<MberCertPhoneVO> 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());
}
}

View File

@ -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<MberCertPhoneVO> mberCertPhoneList = mjonMsgDataService.selectMberCertPhoneList(resultVO.getId());
List<MberCertPhoneVO> mberCertPhoneList = certPhoneService.selectMberCertPhoneList(resultVO.getId());
modelAndView.addObject("status", "success");
@ -3633,7 +3637,7 @@ public class EgovLoginController {
mberCertPhoneVO.setMberId(mjonMsgVO.getUserId());
List<MberCertPhoneVO> mberCertPhoneList = mjonMsgDataService.selectMberCertPhoneListVO(mberCertPhoneVO);
List<MberCertPhoneVO> mberCertPhoneList = certPhoneService.selectMberCertPhoneList(mjonMsgVO.getUserId());

View File

@ -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<MberCertPhoneVO> mberCertPhoneList = mjonMsgDataService.selectMberCertPhoneList(userId);
List<MberCertPhoneVO> 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<StatusResponse> 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<StatusResponse> 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<StatusResponse> 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<StatusResponse> 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));
}
/**
* 회원정보 팝업 이벤트 정보 신규 추가 기능

View File

@ -4,4 +4,5 @@
<sqlMapConfig>
<settings cacheModelsEnabled="true" useStatementNamespaces="true" />
<sqlMap resource="egovframework/sqlmap/let/cert/MjonCertIp_SQL_mysql.xml"/> <!-- 문자메세지 -->
<sqlMap resource="egovframework/sqlmap/let/cert/MjonCertPhone_SQL_mysql.xml"/> <!-- 문자메세지 -->
</sqlMapConfig>

View File

@ -8,6 +8,7 @@
<typeAlias alias="mberCertIpVO" type="itn.let.cert.ip.service.MberCertIpVO"/>
<select id="MberCertIpVO.selectMberCertIpList" parameterClass="mberCertIpVO" resultClass="mberCertIpVO">
/*MberCertIpVO.selectMberCertIpList*/
SELECT
MBER_ID as mberId
, CERT_IP as certIp
@ -21,17 +22,39 @@
LETTNGNRLMBER_CERT_IP
where
MBER_ID = #mberId#
AND CERT_USE_YN = 'Y'
order by FRST_REGIST_PNTTM desc
</select>
<select id="MberCertIpVO.findByMberCertIpList" parameterClass="mberCertIpVO" resultClass="mberCertIpVO">
/*MberCertIpVO.findByMberCertIpList*/
SELECT
MBER_ID as mberId
, CERT_IP as certIp
, CERT_MEMO as certMemo
, CERT_USE_YN as certUseYn
, FRST_REGIST_PNTTM as frstRegistPnttm
, FRST_REGISTER_ID as frstRegisterId
, LAST_UPDT_PNTTM as lastUpdtPnttm
, LAST_UPDUSR_ID as lastUpdusrId
FROM
LETTNGNRLMBER_CERT_IP
where
MBER_ID = #mberId#
AND CERT_IP = #certIp#
AND CERT_USE_YN = 'Y'
</select>
<insert id="MberCertIpVO.insertCertIp">
/*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 @@
</insert>
<update id="MberCertIpVO.deleteCertIp">
/*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#
</update>
</sqlMap>

View File

@ -0,0 +1,119 @@
<?xml version="1.0" encoding="UTF-8"?><!--
수정일 수정자 수정내용
========= ======= =================================================
2021.03.01 신명섭
-->
<!DOCTYPE sqlMap PUBLIC "-//iBATIS.com//DTD SQL Map 2.0//EN" "http://ibatis.apache.org/dtd/sql-map-2.dtd">
<sqlMap namespace="MjonCertPhone">
<typeAlias alias="mberCertPhoneVO" type="itn.let.cert.phone.service.MberCertPhoneVO"/>
<select id="mberCertPhoneVO.selectMberCertPhoneList" parameterClass="String" resultClass="mberCertPhoneVO">
/* mberCertPhoneVO.selectMberCertPhoneList */
SELECT
MBTLNUM AS mbtlnum
, '-' AS certMemo
, '대표번호' AS certAlias
, '-' AS frstRegistPnttm
FROM
lettngnrlmber
WHERE MBER_ID = #userId#
UNION ALL
SELECT
MBTLNUM AS mbtlnum
, CERT_MEMO AS certMemo
, CERT_ALIAS AS certAlias
, FRST_REGIST_PNTTM AS frstRegistPnttm
FROM
lettngnrlmber_cert_phone
WHERE MBER_ID = #userId#
AND CERT_USE_YN = 'Y'
</select>
<select id="mberCertPhoneVO.selectMberCertPhoneListVO" parameterClass="mberCertPhoneVO" resultClass="mberCertPhoneVO">
SELECT
MBTLNUM AS mbtlnum,
'-' AS frstRegistPnttm
FROM
lettngnrlmber
WHERE MBER_ID = #mberId#
UNION ALL
SELECT
MBTLNUM AS mbtlnum,
FRST_REGIST_PNTTM AS frstRegistPnttm
FROM
lettngnrlmber_cert_phone
WHERE MBER_ID = #mberId#
AND MBTLNUM = #mbtlnum#
AND CERT_USE_YN = 'Y'
</select>
<select id="mberCertPhoneVO.findByCertPhoneInfo" parameterClass="mberCertPhoneVO" resultClass="mberCertPhoneVO">
/*mberCertPhoneVO.findByMberCertIpList*/
SELECT
MBTLNUM AS mbtlnum
, CERT_MEMO AS certMemo
, CERT_ALIAS AS certAlias
, FRST_REGIST_PNTTM AS frstRegistPnttm
FROM
lettngnrlmber_cert_phone
WHERE MBER_ID = #mberId#
AND MBTLNUM = #mbtlnum#
AND CERT_USE_YN = 'Y'
</select>
<insert id="mberCertPhoneVO.insertCertPhone">
/* 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#
)
</insert>
<update id="mberCertPhoneVO.deleteCertPhone" parameterClass="mberCertPhoneVO">
UPDATE LETTNGNRLMBER_CERT_PHONE
SET CERT_USE_YN = 'N'
, LAST_UPDUSR_ID = #lastUpdusrId#
WHERE
MBER_ID = #mberId#
AND MBTLNUM = #mbtlnum#
</update>
<update id="mberCertPhoneVO.updateMberCertPhone" parameterClass="mberCertPhoneVO">
UPDATE LETTNGNRLMBER_CERT_PHONE
SET
LAST_UPDUSR_ID = #lastUpdusrId#
, CERT_MEMO = #certMemo#
, CERT_ALIAS = #certAlias#
WHERE
MBER_ID = #mberId#
AND MBTLNUM = #mbtlnum#
</update>
</sqlMap>

View File

@ -21,7 +21,6 @@
<typeAlias alias="mjonMsgResvVO" type="itn.let.mjo.reservmsg.service.MjonResvMsgVO"/>
<typeAlias alias="mjonMsgStatVO" type="itn.let.mjo.msg.service.MjonMsgStatVO"/>
<typeAlias alias="mjonMsgStatVO" type="itn.let.mjo.msg.service.MjonMsgStatVO"/>
<typeAlias alias="mberCertPhoneVO" type="itn.let.uat.uia.service.MberCertPhoneVO"/>
<!-- 공통 쿼리 부분 문자 발송 관련 -->
@ -3757,110 +3756,6 @@
<select id="mjonMsgDataDAO.selectMberCertPhoneList" parameterClass="String" resultClass="mberCertPhoneVO">
/* mjonMsgDataDAO.selectMberCertPhoneList */
SELECT
MBTLNUM AS mbtlnum
, '-' AS certMemo
, '대표번호' AS certAlias
, '-' AS frstRegistPnttm
FROM
lettngnrlmber
WHERE MBER_ID = #userId#
UNION ALL
SELECT
MBTLNUM AS mbtlnum
, CERT_MEMO AS certMemo
, CERT_ALIAS AS certAlias
, FRST_REGIST_PNTTM AS frstRegistPnttm
FROM
lettngnrlmber_cert_phone
WHERE MBER_ID = #userId#
AND CERT_USE_YN = 'Y'
</select>
<select id="mjonMsgDataDAO.selectMberCertPhoneListVO" parameterClass="mberCertPhoneVO" resultClass="mberCertPhoneVO">
SELECT
MBTLNUM AS mbtlnum,
'-' AS frstRegistPnttm
FROM
lettngnrlmber
WHERE MBER_ID = #mberId#
UNION ALL
SELECT
MBTLNUM AS mbtlnum,
FRST_REGIST_PNTTM AS frstRegistPnttm
FROM
lettngnrlmber_cert_phone
WHERE MBER_ID = #mberId#
AND MBTLNUM = #mbtlnum#
AND CERT_USE_YN = 'Y'
</select>
<select id="mjonMsgDataDAO.findByCertPhoneInfo" parameterClass="mberCertPhoneVO" resultClass="mberCertPhoneVO">
/*mjonMsgDataDAO.findByCertPhoneInfo*/
SELECT
MBTLNUM AS mbtlnum
, CERT_MEMO AS certMemo
, CERT_ALIAS AS certAlias
, FRST_REGIST_PNTTM AS frstRegistPnttm
FROM
lettngnrlmber_cert_phone
WHERE MBER_ID = #mberId#
AND MBTLNUM = #mbtlnum#
AND CERT_USE_YN = 'Y'
</select>
<insert id="mjonMsgDataDAO.insertMberCertPhoneInfo" parameterClass="mberCertPhoneVO">
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#
)
</insert>
<update id="mjonMsgDataDAO.deleteCertPhoneInfo" parameterClass="mberCertPhoneVO">
UPDATE LETTNGNRLMBER_CERT_PHONE
SET CERT_USE_YN = 'N'
, LAST_UPDUSR_ID = #lastUpdusrId#
WHERE
MBER_ID = #mberId#
AND MBTLNUM = #mbtlnum#
</update>
<update id="mjonMsgDataDAO.updateMberCertPhoneInfo" parameterClass="mberCertPhoneVO">
UPDATE LETTNGNRLMBER_CERT_PHONE
SET
LAST_UPDUSR_ID = #lastUpdusrId#
, CERT_MEMO = #certMemo#
, CERT_ALIAS = #certAlias#
WHERE
MBER_ID = #mberId#
AND MBTLNUM = #mbtlnum#
</update>
<!-- 발신번호 등록 여부 조회 -->
<select id="mjonMsgDAO.selectSendPhonNumCheck" parameterClass="mjonMsgVO" resultClass="int">

View File

@ -2096,7 +2096,7 @@ function fn_certPhoneReg(){
$.ajax({
type: "POST",
url: "/uss/umt/user/insertCertPhone.do",
url: "/cert/phone/insertCertPhone.do",
data: params,
dataType:'json',
async: false,
@ -2106,6 +2106,7 @@ function fn_certPhoneReg(){
location.reload();
}else if(returnData.status == 'CONFLICT'){
alert(returnData.message);
return false;
}else{
alert("오류가 발생하였습니다.");
}
@ -2134,7 +2135,7 @@ function fn_certPhoneUdt(){
$.ajax({
type: "POST",
url: "/uss/umt/user/updateCertPhone.do",
url: "/cert/phone/updateCertPhone.do",
data: params,
dataType:'json',
async: false,
@ -2161,7 +2162,7 @@ function fn_certPhoneUpdatePopOpen(mbtlnum){
$.ajax({
type: "POST",
url: "/uss/umt/user/findByCertPhoneInfo.do",
url: "/cert/phone/findByCertPhoneInfo.do",
data: params,
dataType:'json',
async: false,
@ -2187,41 +2188,6 @@ function fn_certPhoneUpdatePopOpen(mbtlnum){
}
//이벤트 수정하기
function fn_certPhoneDel(mbtlnum){
var mberId = $('#cashUserId').val();
var mbtlnum = mbtlnum;
var params = {
"mberId" : mberId
, "mbtlnum" : mbtlnum
}
console.log('params : ', params);
if(!confirm(mbtlnum+" 번호를 정말 삭제하시겠습니까?")){
return false;
}
$.ajax({
type: "POST",
url: "/uss/umt/user/deleteCertPhone.do",
data: params,
dataType:'json',
async: false,
success: function (returnData) {
console.log('returnData : ', returnData);
if(returnData.status == 'OK'){
alert(returnData.message);
location.reload();
}else{
alert("오류가 발생하였습니다.");
}
},
error: function (e) { alert("오류가 발생하였습니다."); console.log("ERROR : ", e); }
});
}
//이벤트 수정하기
function fn_certPhoneDel(mbtlnum){
@ -2242,7 +2208,7 @@ function fn_certPhoneDel(mbtlnum){
$.ajax({
type: "POST",
url: "/uss/umt/user/deleteCertPhone.do",
url: "/cert/phone/deleteCertPhone.do",
data: params,
dataType:'json',
async: false,

View File

@ -74,7 +74,8 @@ $(document).ready(function(){
// 추가할 HTML 구조
const ipTr = `
<tr class="ip-new">
<td><input type="text" class="input_text"></td>
<td><input type="text" class="input_text"
oninput="this.value = this.value.replace(/[^0-9.]/g, '');" maxlength="15"/></td>
<td><input type="text" class="input_text"></td>
<td>-</td>
<td>
@ -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 += `
<tr>
<td>${obj.certIp || "-"}</td>
<td>${obj.certMemo || "-"}</td>
<td>${obj.lastUpdtPnttm || "-"}</td>
<td>
<button type="button" class="btnType btn_text btn_lightgray fill btn_28">삭제</button>
</td>
</tr>
`;
});
// 기존 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 += `
<tr>
<td>${obj.certIp || "-"}</td> <!-- 허용 IP -->
<td>${obj.certMemo || "-"}</td> <!-- 메모 -->
<td>${obj.lastUpdtPnttm || "-"}</td> <!-- 등록일시 -->
<td>
<button type="button" class="btnType btn_text btn_lightgray fill btn_28" onclick="deleteRow(this)">삭제</button>
</td>
</tr>
`;
});
// 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></tr>"); // tr 요소 생성
// 각 td 요소 생성
const $certIp = $("<td></td>").text(obj.certIp || "");
const $certMemo = $("<td></td>").text(obj.certMemo || "");
const $frstRegistPnttm = $("<td></td>").text(obj.frstRegistPnttm || "등록되지 않음");
const $deleteBtn = $("<button></button>")
.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 = $("<td></td>").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() {
<p>접속 IP를 미리 등록할 경우 2차 로그인 인증 없이 접속이 가능합니다. <br>
<span>(공용 PC는 보안상의 이유로 등록을 권장하지 않습니다.)</span></p>
</div>
<button type="button" class="btn_plus btn_ip_plus"><img src="/publish/images/content/mypage_plus.png" alt="더보기"></button>
<button type="button" class="btn_plus btn_ip_plus"><img src="/publish/images/content/mypage_plus.png" alt="등록버튼"></button>
</div>
<div class="table_wrap ip_table">
@ -693,10 +721,7 @@ function getMberGrdChk() {
</thead>
<tbody>
<tr>
<td>192.168.0.0</td>
<td>dadfadfjadkfjalkdjfajflajdlfjaldjflajd</td>
<td>2024-11-11 11:11</td>
<td><button type="button" class="btnType btn_text btn_lightgray fill btn_28">삭제</button></td>
<td colspan="4">등록된 IP 주소가 없습니다.</td>
</tr>
</tbody>
</table>