diff --git a/src/main/java/itn/let/fax/addr/web/FaxAddrController.java b/src/main/java/itn/let/fax/addr/web/FaxAddrController.java
index f21c50ff..6c98f7a4 100644
--- a/src/main/java/itn/let/fax/addr/web/FaxAddrController.java
+++ b/src/main/java/itn/let/fax/addr/web/FaxAddrController.java
@@ -317,7 +317,43 @@ public class FaxAddrController {
return "/web/fax/addr/FaxAddrListPrint";
}
-
+ /**
+ * 주소록 상세정보 ajax
+ * @param addrCheck
+ * @param request
+ * @param addrVO
+ * @param model
+ * @param redirectAttributes
+ * @return
+ * @throws Exception
+ */
+ @RequestMapping("/web/mjon/fax/addr/selectFaxAddrDetailAjax.do")
+ public ModelAndView selectAddrDetailAjax(HttpServletRequest request,
+ FaxAddrVO addrVO, Model model) throws Exception {
+
+ ModelAndView modelAndView = new ModelAndView();
+ modelAndView.setViewName("jsonView");
+
+ boolean isSuccess = true;
+ String msg = "";
+ FaxAddrVO addrInfo = null;
+
+ try {
+
+ addrInfo = faxAddrService.selectFaxAddrDetail(addrVO);
+
+ } catch (Exception e) {
+ isSuccess = false;
+ msg = e.getMessage();
+ }
+
+ modelAndView.addObject("isSuccess", isSuccess);
+ modelAndView.addObject("msg", msg);
+ modelAndView.addObject("addrInfo", addrInfo);
+
+ return modelAndView;
+
+ }
/**
* 주소록 그룹 삭제 로직 ajax
diff --git a/src/main/java/itn/let/sym/grd/service/MberGrdService.java b/src/main/java/itn/let/sym/grd/service/MberGrdService.java
index c7f6c9d7..6a2b0a2a 100644
--- a/src/main/java/itn/let/sym/grd/service/MberGrdService.java
+++ b/src/main/java/itn/let/sym/grd/service/MberGrdService.java
@@ -28,6 +28,9 @@ public interface MberGrdService {
// 회원별 설정 상세
public MberGrdVO selectMberGrdSettingDetail(MberGrdVO mberGrdVO) throws Exception;
+ // 회원별 설정 상세(White)
+ public MberGrdVO selectMberGrdSettingDetailWhite(MberGrdVO mberGrdVO) throws Exception;
+
// 등급제 설정 일괄변경
public int updateGrdSettingList(MberGrdVO mberGrdVO) throws Exception;
@@ -55,6 +58,9 @@ public interface MberGrdService {
// 회원별 등급 등록 All => 기존대상자 제외
public void insertMberGrdAllByExist(MberGrdVO mberGrdVO) throws Exception;
+ // 회원별 등급 등록 By MberId
+ public void insertMberGrdByMberId(MberGrdVO mberGrdVO) throws Exception;
+
// 회원별 등급 히스토리 등록 All
public void insertMberGrdHistAll(MberGrdVO mberGrdVO) throws Exception;
diff --git a/src/main/java/itn/let/sym/grd/service/impl/MberGrdDAO.java b/src/main/java/itn/let/sym/grd/service/impl/MberGrdDAO.java
index 9ea3449f..0049c91b 100644
--- a/src/main/java/itn/let/sym/grd/service/impl/MberGrdDAO.java
+++ b/src/main/java/itn/let/sym/grd/service/impl/MberGrdDAO.java
@@ -37,6 +37,11 @@ public class MberGrdDAO extends EgovAbstractDAO {
return (MberGrdVO) select("mberGrdDAO.selectMberGrdSettingDetail", mberGrdVO);
}
+ // 회원별 설정 상세(White)
+ public MberGrdVO selectMberGrdSettingDetailWhite(MberGrdVO mberGrdVO) throws Exception{
+ return (MberGrdVO) select("mberGrdDAO.selectMberGrdSettingDetailWhite", mberGrdVO);
+ }
+
// 등급제 설정 일괄변경
public int updateGrdSetting(MberGrdVO mberGrdVO) throws Exception {
return update("mberGrdDAO.updateGrdSetting", mberGrdVO);
@@ -88,6 +93,11 @@ public class MberGrdDAO extends EgovAbstractDAO {
insert("mberGrdDAO.insertMberGrdAllByExist", mberGrdVO);
}
+ // 회원별 등급 등록 By MberId
+ public void insertMberGrdByMberId(MberGrdVO mberGrdVO) throws Exception{
+ insert("mberGrdDAO.insertMberGrdByMberId", mberGrdVO);
+ }
+
// 회원별 등급 히스토리 등록 All
public void insertMberGrdHistAll(MberGrdVO mberGrdVO) throws Exception{
insert("mberGrdDAO.insertMberGrdHistAll", mberGrdVO);
diff --git a/src/main/java/itn/let/sym/grd/service/impl/MberGrdServiceImpl.java b/src/main/java/itn/let/sym/grd/service/impl/MberGrdServiceImpl.java
index 4c47aca2..64e4d038 100644
--- a/src/main/java/itn/let/sym/grd/service/impl/MberGrdServiceImpl.java
+++ b/src/main/java/itn/let/sym/grd/service/impl/MberGrdServiceImpl.java
@@ -75,6 +75,12 @@ public class MberGrdServiceImpl extends EgovAbstractServiceImpl implements MberG
return mberGrdDAO.selectMberGrdSettingDetail(mberGrdVO);
}
+ // 회원별 설정 상세(White)
+ @Override
+ public MberGrdVO selectMberGrdSettingDetailWhite(MberGrdVO mberGrdVO) throws Exception {
+ return mberGrdDAO.selectMberGrdSettingDetailWhite(mberGrdVO);
+ }
+
// 등급제 설정 일괄변경
@Override
public int updateGrdSettingList(MberGrdVO mberGrdVO) throws Exception {
@@ -156,6 +162,12 @@ public class MberGrdServiceImpl extends EgovAbstractServiceImpl implements MberG
mberGrdDAO.insertMberGrdAllByExist(mberGrdVO);
}
+ // 회원별 등급 등록 By MberId
+ @Override
+ public void insertMberGrdByMberId(MberGrdVO mberGrdVO) throws Exception {
+ mberGrdDAO.insertMberGrdByMberId(mberGrdVO);
+ }
+
// 회원별 등급 히스토리 등록 All
@Override
public void insertMberGrdHistAll(MberGrdVO mberGrdVO) throws Exception {
@@ -368,6 +380,7 @@ public class MberGrdServiceImpl extends EgovAbstractServiceImpl implements MberG
MberGrdVO mberGrdVO5 = new MberGrdVO();
mberGrdVO5 = selectMberGrdDetail(mberGrdVO);
if (mberGrdVO5 != null) {
+ // 업데이트
updateMberGrdOk(mberGrdVO);
// 회원별 등급 히스토리 인서트
@@ -381,8 +394,53 @@ public class MberGrdServiceImpl extends EgovAbstractServiceImpl implements MberG
insertMberGrdHist(mberGrdVO);
}
}
- }
- }
+ }
+ else {
+ System.out.println("Step 3. ELSE => 화이트등급 인서트");
+
+ // Step 4. 등급제 설정값 조회
+ System.out.println("Step 4. 등급제 설정값 조회");
+ MberGrdVO mberGrdVO4 = new MberGrdVO();
+ mberGrdVO4 = selectMberGrdSettingDetailWhite(mberGrdVO);
+ if (mberGrdVO4 != null) {
+ mberGrdVO.setAmt("0");
+ mberGrdVO.setTotAmt(0);
+ mberGrdVO.setGrdSetNo(mberGrdVO4.getGrdSetNo());
+ mberGrdVO.setShortPrice(mberGrdVO4.getShortPrice());
+ mberGrdVO.setLongPrice(mberGrdVO4.getLongPrice());
+ mberGrdVO.setPicturePrice(mberGrdVO4.getPicturePrice());
+ mberGrdVO.setPicture2Price(mberGrdVO4.getPicture2Price());
+ mberGrdVO.setPicture3Price(mberGrdVO4.getPicture3Price());
+ mberGrdVO.setGrdDate(mberGrdVO.getGrdDate());
+ mberGrdVO.setGrdStartDate(nowDate + " 00:00:00");
+ mberGrdVO.setGrdEndDate("9999:12:31 23:59:59");
+ mberGrdVO.setGrdStatus("Y");
+
+ // Step 5. 인서트 Or 업데이트
+ System.out.println("Step 5. 인서트 Or 업데이트");
+ MberGrdVO mberGrdVO5 = new MberGrdVO();
+ mberGrdVO5 = selectMberGrdDetail(mberGrdVO);
+ if (mberGrdVO5 != null) {
+ // 업데이트
+ updateMberGrdOk(mberGrdVO);
+
+ // 회원별 등급 히스토리 인서트
+ insertMberGrdHist(mberGrdVO);
+ }
+ else {
+ // 인서트
+ insertMberGrd(mberGrdVO);
+
+ // 회원별 등급 히스토리 인서트
+ insertMberGrdHist(mberGrdVO);
+ }
+ }
+ }
+ }
+ else {
+ System.out.println("Step 2. ELSE 등급제 종료");
+ updateMberGrdEndByUser(mberGrdVO);
+ }
}
}
System.out.println("END 회원별 등급 적용");
@@ -456,6 +514,7 @@ public class MberGrdServiceImpl extends EgovAbstractServiceImpl implements MberG
MberGrdVO mberGrdVO5 = new MberGrdVO();
mberGrdVO5 = selectMberGrdDetail(mberGrdVO);
if (mberGrdVO5 != null) {
+ // 업데이트
updateMberGrdOk(mberGrdVO);
}
else {
@@ -463,8 +522,53 @@ public class MberGrdServiceImpl extends EgovAbstractServiceImpl implements MberG
insertMberGrd(mberGrdVO);
}
}
- }
- }
+ }
+ else {
+ System.out.println("Step 3. ELSE => 화이트등급 인서트");
+
+ // Step 4. 등급제 설정값 조회
+ System.out.println("Step 4. 등급제 설정값 조회");
+ MberGrdVO mberGrdVO4 = new MberGrdVO();
+ mberGrdVO4 = selectMberGrdSettingDetailWhite(mberGrdVO);
+ if (mberGrdVO4 != null) {
+ mberGrdVO.setAmt("0");
+ mberGrdVO.setTotAmt(0);
+ mberGrdVO.setGrdSetNo(mberGrdVO4.getGrdSetNo());
+ mberGrdVO.setShortPrice(mberGrdVO4.getShortPrice());
+ mberGrdVO.setLongPrice(mberGrdVO4.getLongPrice());
+ mberGrdVO.setPicturePrice(mberGrdVO4.getPicturePrice());
+ mberGrdVO.setPicture2Price(mberGrdVO4.getPicture2Price());
+ mberGrdVO.setPicture3Price(mberGrdVO4.getPicture3Price());
+ mberGrdVO.setGrdDate(mberGrdVO.getGrdDate());
+ mberGrdVO.setGrdStartDate(nowDate + " 00:00:00");
+ mberGrdVO.setGrdEndDate("9999:12:31 23:59:59");
+ mberGrdVO.setGrdStatus("Y");
+
+ // Step 5. 인서트 Or 업데이트
+ System.out.println("Step 5. 인서트 Or 업데이트");
+ MberGrdVO mberGrdVO5 = new MberGrdVO();
+ mberGrdVO5 = selectMberGrdDetail(mberGrdVO);
+ if (mberGrdVO5 != null) {
+ // 업데이트
+ updateMberGrdOk(mberGrdVO);
+
+ // 회원별 등급 히스토리 인서트
+ insertMberGrdHist(mberGrdVO);
+ }
+ else {
+ // 인서트
+ insertMberGrd(mberGrdVO);
+
+ // 회원별 등급 히스토리 인서트
+ insertMberGrdHist(mberGrdVO);
+ }
+ }
+ }
+ }
+ else {
+ System.out.println("Step 2. ELSE 등급제 종료");
+ updateMberGrdEndByUser(mberGrdVO);
+ }
}
}
System.out.println("END 회원별 등급 적용(로그인, 환불시 사용 => 히스토리 저장 제외)");
diff --git a/src/main/java/itn/let/sym/grd/web/MberGrdMngController.java b/src/main/java/itn/let/sym/grd/web/MberGrdMngController.java
index ad29bd19..845930e8 100644
--- a/src/main/java/itn/let/sym/grd/web/MberGrdMngController.java
+++ b/src/main/java/itn/let/sym/grd/web/MberGrdMngController.java
@@ -466,16 +466,37 @@ public class MberGrdMngController {
// 로그인VO에서 사용자 정보 가져오기
LoginVO loginVO = (LoginVO)EgovUserDetailsHelper.getAuthenticatedUser();
String frstRegisterId = loginVO == null ? "" : loginVO.getId();
- mberGrdVO.setEditId(frstRegisterId); // 최초등록자ID
-
+ mberGrdVO.setRegId(frstRegisterId);
+ mberGrdVO.setEditId(frstRegisterId);
+
try{
-
- // 회원 등급제 복원
- mberGrdService.updateMberGrdRestoreByUser(mberGrdVO);
-
- // 회원 등급 변경(환불후) => 기존등급 상관없이 업데이트
- mberGrdService.updateMberGrdAfterRefund(mberGrdVO);
-
+
+ // Step 1. 등급제 시행 ON 일경우(시행일자 진행여부 Y일경우)
+ System.out.println("Step 1. 등급제 시행 ON 일경우(시행일자 진행여부 Y일경우)");
+ MberGrdVO mberGrdVO1 = new MberGrdVO();
+ mberGrdVO1 = mberGrdService.selectMberSettingDetail(mberGrdVO);
+ if (mberGrdVO1.getGrdNoti().equals("Y")) {
+ mberGrdVO.setGrdNewDate(mberGrdVO1.getGrdNewDate());
+
+ // Step 2. 문자할인, B선라인, 스팸회원 대상자 제외
+ System.out.println("Step 2. 문자할인, B선라인, 스팸회원 대상자 제외");
+ int isMberGrd = mberGrdService.selectMberGrdCnt(mberGrdVO.getMberId()); // 등급제 대상여부(1: 대상, 0: 미대상)
+ if(isMberGrd == 1) {
+ // 회원 등급제 복원
+ mberGrdService.updateMberGrdRestoreByUser(mberGrdVO);
+
+ // 회원 등급 변경(환불후) => 기존등급 상관없이 업데이트
+ mberGrdService.updateMberGrdAfterRefund(mberGrdVO);
+ }
+ else {
+ isSuccess = false;
+ msg = "문자할인, B선라인, 스팸회원 대상자는 등급제 대상자가 아닙니다.";
+ }
+ }
+ else {
+ isSuccess = false;
+ msg = "등급제 시행 OFF 일경우 복원이 불가합니다.";
+ }
}
catch(Exception e) {
isSuccess = false;
diff --git a/src/main/java/itn/let/uat/uia/web/EgovMypageController.java b/src/main/java/itn/let/uat/uia/web/EgovMypageController.java
index 930863e9..023cbe3f 100644
--- a/src/main/java/itn/let/uat/uia/web/EgovMypageController.java
+++ b/src/main/java/itn/let/uat/uia/web/EgovMypageController.java
@@ -848,9 +848,31 @@ public class EgovMypageController {
mberManageService.insertCmpUsrHst(mberManageVO);
- //Slack 알림 전송 처리
- String msg = "[문자온] 기업회원 담당자변경 요청 - " + mberManageVO.getMberNm() +"("+ mberManageVO.getMberId() + ")";
- mjonCommon.sendSimpleSlackMsg(msg);
+ // 법인폰 알람여부 체크
+ JoinSettingVO joinSettingVO = new JoinSettingVO();
+ joinSettingVO = egovSiteManagerService.selectAdminNotiDetail();
+ // 이메일 체크
+ if (joinSettingVO != null && joinSettingVO.getEmailNoti().equals("Y")) {
+ String emailTitle = "회원관리 > 기업회원 담당자변경 요청";
+
+ // CS관리자 이메일 알림전송
+ mjonNoticeSendUtil.csAdminEmailNoticeSend(mberManageVO.getMberNm(), mberManageVO.getMberId(), emailTitle);
+ }
+
+ // SMS 체크
+ if (joinSettingVO != null && joinSettingVO.getSmsNoti().equals("Y")) {
+ String smsTitle = "기업회원 담당자변경 요청";
+
+ // CS관리자 SMS 알림전송
+ mjonNoticeSendUtil.csAdminSmsNoticeSend(mberManageVO.getMberId(), smsTitle);
+ }
+
+ // SLACK 체크
+ if (joinSettingVO != null && joinSettingVO.getSlackNoti().equals("Y")) {
+ // Slack 메시지 발송(단순본문)
+ String msg = "[문자온] 기업회원 담당자변경 요청 - " + mberManageVO.getMberNm() +"("+ mberManageVO.getMberId() + ")";
+ mjonCommon.sendSimpleSlackMsg(msg);
+ }
}
@@ -932,9 +954,31 @@ public class EgovMypageController {
mberManageService.insertCmpUsrHst(mberManageVO);
- //Slack 알림 처리
- String msg = "[문자온] 기업회원 정보변경 요청 - " + mberManageVO.getMberNm() +"("+ mberManageVO.getMberId() + ")";
- mjonCommon.sendSimpleSlackMsg(msg);
+ // 법인폰 알람여부 체크
+ JoinSettingVO joinSettingVO = new JoinSettingVO();
+ joinSettingVO = egovSiteManagerService.selectAdminNotiDetail();
+ // 이메일 체크
+ if (joinSettingVO != null && joinSettingVO.getEmailNoti().equals("Y")) {
+ String emailTitle = "회원관리 > 기업회원 정보변경 요청";
+
+ // CS관리자 이메일 알림전송
+ mjonNoticeSendUtil.csAdminEmailNoticeSend(mberManageVO.getMberNm(), mberManageVO.getMberId(), emailTitle);
+ }
+
+ // SMS 체크
+ if (joinSettingVO != null && joinSettingVO.getSmsNoti().equals("Y")) {
+ String smsTitle = "기업회원 정보변경 요청";
+
+ // CS관리자 SMS 알림전송
+ mjonNoticeSendUtil.csAdminSmsNoticeSend(mberManageVO.getMberId(), smsTitle);
+ }
+
+ // SLACK 체크
+ if (joinSettingVO != null && joinSettingVO.getSlackNoti().equals("Y")) {
+ // Slack 메시지 발송(단순본문)
+ String msg = "[문자온] 기업회원 정보변경 요청 - " + mberManageVO.getMberNm() +"("+ mberManageVO.getMberId() + ")";
+ mjonCommon.sendSimpleSlackMsg(msg);
+ }
modelAndView.addObject("result", "success");
diff --git a/src/main/resources/egovframework/sqlmap/let/sym/grd/MberGrd_SQL_Mysql.xml b/src/main/resources/egovframework/sqlmap/let/sym/grd/MberGrd_SQL_Mysql.xml
index a39c6262..8edc58d9 100644
--- a/src/main/resources/egovframework/sqlmap/let/sym/grd/MberGrd_SQL_Mysql.xml
+++ b/src/main/resources/egovframework/sqlmap/let/sym/grd/MberGrd_SQL_Mysql.xml
@@ -102,6 +102,28 @@
LIMIT 1
+
+
+
+