Merge branch 'jsp'
This commit is contained in:
commit
7454e342be
@ -52,10 +52,19 @@ public interface MberGrdService {
|
||||
// 회원 등급 변경(환불후) => 기존등급 상관없이 업데이트
|
||||
public int updateMberGrdAfterRefund(MberGrdVO mberGrdVO) throws Exception;
|
||||
|
||||
// 회원별 등급 초기화 By Temp
|
||||
public int updateMberGrdWhiteByTemp(MberGrdVO mberGrdVO) throws Exception;
|
||||
|
||||
// 회원별 등급 초기화 All
|
||||
public int updateMberGrdWhiteAll(MberGrdVO mberGrdVO) throws Exception;
|
||||
|
||||
// 문자할인, B선라인 대상자 종료
|
||||
public int updateMberGrdEndBySale(MberGrdVO mberGrdVO) throws Exception;
|
||||
|
||||
// 전체회원 등급 종료
|
||||
// 전체회원 TEMP_YN 업데이트
|
||||
public int updateMberGrdTempYn(MberGrdVO mberGrdVO) throws Exception;
|
||||
|
||||
// 전체회원 등급 전체종료
|
||||
public int updateMberGrdEndAll(MberGrdVO mberGrdVO) throws Exception;
|
||||
|
||||
// 회원 등급제 종료
|
||||
|
||||
@ -46,6 +46,7 @@ public class MberGrdVO extends UserDefaultVO {
|
||||
private String grdNewDate; // 시작일자, 계산기간 시작일자 중 최근날짜
|
||||
private String grdDatePrgYn; // 회원등급제 시작일자 진행여부(오늘보다 이전날짜이면 Y, 이후이면 N)
|
||||
private String grdPeriod; // 회원등급제 누적결제 계산기간
|
||||
private String tempYn;
|
||||
|
||||
// 검색필터
|
||||
private String searchGrdStatus;
|
||||
@ -268,6 +269,12 @@ public class MberGrdVO extends UserDefaultVO {
|
||||
public void setGrdPeriod(String grdPeriod) {
|
||||
this.grdPeriod = grdPeriod;
|
||||
}
|
||||
public String getTempYn() {
|
||||
return tempYn;
|
||||
}
|
||||
public void setTempYn(String tempYn) {
|
||||
this.tempYn = tempYn;
|
||||
}
|
||||
public String getSearchGrdStatus() {
|
||||
return searchGrdStatus;
|
||||
}
|
||||
|
||||
@ -83,12 +83,27 @@ public class MberGrdDAO extends EgovAbstractDAO {
|
||||
return update("mberGrdDAO.updateMberGrdAfterRefund", mberGrdVO);
|
||||
}
|
||||
|
||||
// 회원별 등급 초기화 By Temp
|
||||
public int updateMberGrdWhiteByTemp(MberGrdVO mberGrdVO) throws Exception {
|
||||
return update("mberGrdDAO.updateMberGrdWhiteByTemp", mberGrdVO);
|
||||
}
|
||||
|
||||
// 회원별 등급 초기화 All
|
||||
public int updateMberGrdWhiteAll(MberGrdVO mberGrdVO) throws Exception {
|
||||
return update("mberGrdDAO.updateMberGrdWhiteAll", mberGrdVO);
|
||||
}
|
||||
|
||||
// 문자할인, B선라인 대상자 종료
|
||||
public int updateMberGrdEndBySale(MberGrdVO mberGrdVO) throws Exception {
|
||||
return update("mberGrdDAO.updateMberGrdEndBySale", mberGrdVO);
|
||||
}
|
||||
|
||||
// 전체회원 등급 종료
|
||||
// 전체회원 TEMP_YN 업데이트
|
||||
public int updateMberGrdTempYn(MberGrdVO mberGrdVO) throws Exception {
|
||||
return update("mberGrdDAO.updateMberGrdTempYn", mberGrdVO);
|
||||
}
|
||||
|
||||
// 전체회원 등급 전체종료
|
||||
public int updateMberGrdEndAll(MberGrdVO mberGrdVO) throws Exception {
|
||||
return update("mberGrdDAO.updateMberGrdEndAll", mberGrdVO);
|
||||
}
|
||||
|
||||
@ -155,8 +155,9 @@ public class MberGrdServiceImpl extends EgovAbstractServiceImpl implements MberG
|
||||
// 회원별 등급 일괄변경
|
||||
@Override
|
||||
public int updateMberGrdAll(MberGrdVO mberGrdVO) throws Exception {
|
||||
int updateCnt1 = 0;
|
||||
int updateCnt = 0;
|
||||
int updateCnt2 = 0;
|
||||
int updateCnt3 = 0;
|
||||
|
||||
// Step 1. 등급제 시행 ON 일경우
|
||||
MberGrdVO mberGrdVO1 = new MberGrdVO();
|
||||
@ -164,19 +165,26 @@ public class MberGrdServiceImpl extends EgovAbstractServiceImpl implements MberG
|
||||
if (mberGrdVO1.getGrdNoti().equals("Y") && null != mberGrdVO1.getGrdDate() && mberGrdVO1.getGrdDatePrgYn().equals("Y")) {
|
||||
mberGrdVO.setGrdNewDate(mberGrdVO1.getGrdNewDate());
|
||||
|
||||
// 대상자 추가
|
||||
// Step1. 대상자 추가
|
||||
insertMberGrdAllByExist(mberGrdVO);
|
||||
|
||||
// 문자할인, B선라인, 스팸회원 대상자 종료
|
||||
updateCnt1 = updateMberGrdEndBySale(mberGrdVO);
|
||||
// Step2. TEMP_YN 업데이트(N)
|
||||
mberGrdVO.setTempYn("N");
|
||||
updateMberGrdTempYn(mberGrdVO);
|
||||
|
||||
// 등급제 정상대상자 초기화(화이트등급)
|
||||
// Step3. 문자할인, B선라인, 스팸회원 대상자 종료
|
||||
updateCnt = updateMberGrdEndBySale(mberGrdVO);
|
||||
|
||||
// 회원별 등급 일괄변경
|
||||
// Step4. 회원별 등급 일괄변경
|
||||
updateCnt2 = mberGrdDAO.updateMberGrdAll(mberGrdVO);
|
||||
|
||||
// Step5. 등급제 정상대상자 초기화(화이트등급)
|
||||
updateCnt3 = updateMberGrdWhiteByTemp(mberGrdVO);
|
||||
|
||||
|
||||
}
|
||||
|
||||
return updateCnt1 + updateCnt2;
|
||||
return updateCnt + updateCnt2 + updateCnt3;
|
||||
}
|
||||
|
||||
// 회원 등급 변경(환불후) => 기존등급 상관없이 업데이트
|
||||
@ -185,13 +193,31 @@ public class MberGrdServiceImpl extends EgovAbstractServiceImpl implements MberG
|
||||
return mberGrdDAO.updateMberGrdAfterRefund(mberGrdVO);
|
||||
}
|
||||
|
||||
// 회원별 등급 초기화 By Temp
|
||||
@Override
|
||||
public int updateMberGrdWhiteByTemp(MberGrdVO mberGrdVO) throws Exception {
|
||||
return mberGrdDAO.updateMberGrdWhiteByTemp(mberGrdVO);
|
||||
}
|
||||
|
||||
// 회원별 등급 초기화 All
|
||||
@Override
|
||||
public int updateMberGrdWhiteAll(MberGrdVO mberGrdVO) throws Exception {
|
||||
return mberGrdDAO.updateMberGrdWhiteAll(mberGrdVO);
|
||||
}
|
||||
|
||||
// 문자할인, B선라인 대상자 종료
|
||||
@Override
|
||||
public int updateMberGrdEndBySale(MberGrdVO mberGrdVO) throws Exception {
|
||||
return mberGrdDAO.updateMberGrdEndBySale(mberGrdVO);
|
||||
}
|
||||
|
||||
// 전체회원 등급 종료
|
||||
// 전체회원 TEMP_YN 업데이트
|
||||
@Override
|
||||
public int updateMberGrdTempYn(MberGrdVO mberGrdVO) throws Exception {
|
||||
return mberGrdDAO.updateMberGrdTempYn(mberGrdVO);
|
||||
}
|
||||
|
||||
// 전체회원 등급 전체종료
|
||||
@Override
|
||||
public int updateMberGrdEndAll(MberGrdVO mberGrdVO) throws Exception {
|
||||
return mberGrdDAO.updateMberGrdEndAll(mberGrdVO);
|
||||
|
||||
@ -45,9 +45,9 @@ public class MberGrdMngController {
|
||||
return "/sym/grd/mberGrdSetting";
|
||||
}
|
||||
|
||||
// 등급제 일괄 저장
|
||||
@RequestMapping(value = "/sym/grd/mberGrdSettingMassUpdateAjax.do")
|
||||
public ModelAndView mberGrdSettingMassUpdateAjax(
|
||||
// 등급제 설정 저장
|
||||
@RequestMapping(value = "/sym/grd/mberGrdSettingUpdateAjax.do")
|
||||
public ModelAndView mberGrdSettingUpdateAjax(
|
||||
@ModelAttribute("mberGrdVO") MberGrdVO mberGrdVO) throws Exception {
|
||||
|
||||
ModelAndView modelAndView = new ModelAndView();
|
||||
@ -69,7 +69,44 @@ public class MberGrdMngController {
|
||||
isSuccess = false;
|
||||
msg = "등급제 시행여부 변경에 실패했습니다.";
|
||||
}
|
||||
else {
|
||||
}
|
||||
catch(Exception e) {
|
||||
isSuccess = false;
|
||||
msg = e.getMessage();
|
||||
}
|
||||
|
||||
modelAndView.addObject("isSuccess", isSuccess);
|
||||
modelAndView.addObject("msg", msg);
|
||||
modelAndView.addObject("updateMberCnt", updateMberCnt);
|
||||
|
||||
return modelAndView;
|
||||
}
|
||||
|
||||
// 등급제 일괄 저장
|
||||
@RequestMapping(value = "/sym/grd/mberGrdSettingMassUpdateAjax.do")
|
||||
public ModelAndView mberGrdSettingMassUpdateAjax(
|
||||
@ModelAttribute("mberGrdVO") MberGrdVO mberGrdVO) throws Exception {
|
||||
|
||||
ModelAndView modelAndView = new ModelAndView();
|
||||
modelAndView.setViewName("jsonView");
|
||||
|
||||
boolean isSuccess = true;
|
||||
String msg = "";
|
||||
int updateMberCnt = 0;
|
||||
|
||||
// 로그인VO에서 사용자 정보 가져오기
|
||||
LoginVO loginVO = (LoginVO)EgovUserDetailsHelper.getAuthenticatedUser();
|
||||
String frstRegisterId = loginVO == null ? "" : loginVO.getId();
|
||||
mberGrdVO.setEditId(frstRegisterId); // 최초등록자ID
|
||||
|
||||
try{
|
||||
// Step1. 등급제 시행여부 변경
|
||||
//int updateCnt1 = mberGrdService.updateMberSetting(mberGrdVO);
|
||||
//if (updateCnt1 == 0) {
|
||||
// isSuccess = false;
|
||||
// msg = "등급제 시행여부 변경에 실패했습니다.";
|
||||
//}
|
||||
//else {
|
||||
// Step2. 등급제 단가 업데이트
|
||||
int updateCnt2 = mberGrdService.updateGrdSettingList(mberGrdVO);
|
||||
if (updateCnt2 == 0) {
|
||||
@ -80,7 +117,7 @@ public class MberGrdMngController {
|
||||
// Step3. 회원 등급 일괄변경
|
||||
updateMberCnt = mberGrdService.updateMberGrdAll(mberGrdVO);
|
||||
}
|
||||
}
|
||||
//}
|
||||
}
|
||||
catch(Exception e) {
|
||||
isSuccess = false;
|
||||
@ -95,6 +132,46 @@ public class MberGrdMngController {
|
||||
}
|
||||
|
||||
// 회원별 등급 초기화
|
||||
@RequestMapping(value = "/sym/grd/mberGrdResetMassUpdateAjax.do")
|
||||
public ModelAndView mberGrdResetMassUpdateAjax(
|
||||
@ModelAttribute("mberGrdVO") MberGrdVO mberGrdVO) throws Exception {
|
||||
|
||||
ModelAndView modelAndView = new ModelAndView();
|
||||
modelAndView.setViewName("jsonView");
|
||||
|
||||
boolean isSuccess = true;
|
||||
String msg = "";
|
||||
int updateMberCnt = 0;
|
||||
|
||||
// 로그인VO에서 사용자 정보 가져오기
|
||||
LoginVO loginVO = (LoginVO)EgovUserDetailsHelper.getAuthenticatedUser();
|
||||
String frstRegisterId = loginVO == null ? "" : loginVO.getId();
|
||||
mberGrdVO.setEditId(frstRegisterId); // 최초등록자ID
|
||||
|
||||
try{
|
||||
// Step 1. 등급제 시행 ON 일경우
|
||||
MberGrdVO mberGrdVO1 = new MberGrdVO();
|
||||
mberGrdVO1 = mberGrdService.selectMberSettingDetail(mberGrdVO);
|
||||
if (mberGrdVO1.getGrdNoti().equals("Y") && null != mberGrdVO1.getGrdDate() && mberGrdVO1.getGrdDatePrgYn().equals("Y")) {
|
||||
mberGrdVO.setGrdNewDate(mberGrdVO1.getGrdNewDate());
|
||||
|
||||
// 회원별 등급 초기화
|
||||
updateMberCnt = mberGrdService.updateMberGrdWhiteAll(mberGrdVO);
|
||||
}
|
||||
}
|
||||
catch(Exception e) {
|
||||
isSuccess = false;
|
||||
msg = e.getMessage();
|
||||
}
|
||||
|
||||
modelAndView.addObject("isSuccess", isSuccess);
|
||||
modelAndView.addObject("msg", msg);
|
||||
modelAndView.addObject("updateMberCnt", updateMberCnt);
|
||||
|
||||
return modelAndView;
|
||||
}
|
||||
|
||||
// 회원별 등급제 전체종료
|
||||
@RequestMapping(value = "/sym/grd/mberGrdEndMassUpdateAjax.do")
|
||||
public ModelAndView mberGrdEndMassUpdateAjax(
|
||||
@ModelAttribute("mberGrdVO") MberGrdVO mberGrdVO) throws Exception {
|
||||
@ -113,7 +190,7 @@ public class MberGrdMngController {
|
||||
|
||||
try{
|
||||
|
||||
// 회원별 등급 초기화
|
||||
// 회원별 등급 전체종료
|
||||
updateMberCnt = mberGrdService.updateMberGrdEndAll(mberGrdVO);
|
||||
|
||||
}
|
||||
@ -257,7 +334,7 @@ public class MberGrdMngController {
|
||||
|
||||
// 회원 등급제 종료
|
||||
mberGrdService.updateMberGrdEndByUser(mberGrdVO);
|
||||
|
||||
|
||||
}
|
||||
catch(Exception e) {
|
||||
isSuccess = false;
|
||||
@ -327,7 +404,6 @@ public class MberGrdMngController {
|
||||
MberGrdVO mberGrdVO1 = new MberGrdVO();
|
||||
mberGrdVO1 = mberGrdService.selectMberSettingDetail(mberGrdVO);
|
||||
if (mberGrdVO1.getGrdNoti().equals("Y") && null != mberGrdVO1.getGrdDate() && mberGrdVO1.getGrdDatePrgYn().equals("Y")) {
|
||||
// 회원별 등급 일괄변경
|
||||
mberGrdVO.setGrdNewDate(mberGrdVO1.getGrdNewDate());
|
||||
|
||||
// 회원 등급 변경(환불후) => 기존등급 상관없이 업데이트
|
||||
|
||||
@ -247,7 +247,7 @@
|
||||
WHEN M.grdSetNo = 9 THEN 'orange'
|
||||
WHEN M.grdSetNo = 10 THEN 'green'
|
||||
WHEN M.grdSetNo = 11 THEN 'yellow'
|
||||
WHEN M.grdSetNo = 112 THEN 'white'
|
||||
WHEN M.grdSetNo = 12 THEN 'white'
|
||||
END grdSetIcon
|
||||
, M.grdDate
|
||||
, M.totAmt
|
||||
@ -319,7 +319,7 @@
|
||||
, IFNULL(ROUND(SUM(R.TRNSF_CASH)), 0) AS REFUND_SUM
|
||||
, (SUM(S.AMT) - IFNULL(ROUND(SUM(R.TRNSF_CASH)), 0) - IFNULL(SS.EVENT_FRST_CASH + ROUND(SS.EVENT_FRST_CASH / 10), 0)) AS AMT_SUM
|
||||
, (
|
||||
SELECT IFNULL(MIN(S1.GRD_SET_NO), 12) FROM MJ_MBER_GRD_SETTING S1 WHERE S1.STD_AMT <= (SUM(S.AMT) - IFNULL(ROUND(SUM(R.TRNSF_CASH)), 0) - IFNULL(SS.EVENT_FRST_CASH + ROUND(SS.EVENT_FRST_CASH / 10), 0))
|
||||
SELECT IFNULL(MIN(S1.GRD_SET_NO), (SELECT MAX(GRD_SET_NO) FROM MJ_MBER_GRD_SETTING)) FROM MJ_MBER_GRD_SETTING S1 WHERE S1.STD_AMT <= (SUM(S.AMT) - IFNULL(ROUND(SUM(R.TRNSF_CASH)), 0) - IFNULL(SS.EVENT_FRST_CASH + ROUND(SS.EVENT_FRST_CASH / 10), 0))
|
||||
) GRD_SET_NO
|
||||
FROM MJ_PG S
|
||||
LEFT OUTER JOIN MJ_EVENT_MBER_INFO SS
|
||||
@ -402,7 +402,7 @@
|
||||
|
||||
<!-- 회원별 등급 등록 All => 기존대상자 제외 -->
|
||||
<insert id="mberGrdDAO.insertMberGrdAllByExist" parameterClass="mberGrdVO">
|
||||
INSERT INTO MJ_MBER_GRD_INFO
|
||||
INSERT INTO MJ_MBER_GRD_INFO
|
||||
(
|
||||
MBER_ID
|
||||
, GRD_SET_NO
|
||||
@ -423,13 +423,13 @@
|
||||
, EDIT_DATE
|
||||
)
|
||||
SELECT
|
||||
A.MBER_ID
|
||||
, S.GRD_SET_NO
|
||||
, S.SHORT_PRICE
|
||||
, S.LONG_PRICE
|
||||
, S.PICTURE_PRICE
|
||||
, S.PICTURE2_PRICE
|
||||
, S.PICTURE3_PRICE
|
||||
M.MBER_ID
|
||||
, M.GRD_SET_NO
|
||||
, M.SHORT_PRICE
|
||||
, M.LONG_PRICE
|
||||
, M.PICTURE_PRICE
|
||||
, M.PICTURE2_PRICE
|
||||
, M.PICTURE3_PRICE
|
||||
, 0
|
||||
, 0
|
||||
, #grdNewDate#
|
||||
@ -439,19 +439,43 @@
|
||||
, ''
|
||||
, NOW()
|
||||
, ''
|
||||
, NOW()
|
||||
FROM LETTNGNRLMBER A
|
||||
INNER JOIN MJ_MBER_GRD_SETTING S
|
||||
ON S.GRD_SET_NO = 12
|
||||
WHERE A.MBER_STTUS = 'Y'
|
||||
AND MBER_ID NOT IN (SELECT MBER_ID FROM MJ_MBER_GRD_INFO)
|
||||
, NOW()
|
||||
FROM (
|
||||
SELECT
|
||||
A.MBER_ID
|
||||
, S.GRD_SET_NO
|
||||
, S.SHORT_PRICE
|
||||
, S.LONG_PRICE
|
||||
, S.PICTURE_PRICE
|
||||
, S.PICTURE2_PRICE
|
||||
, S.PICTURE3_PRICE
|
||||
, IFNULL(A.BLINE_CODE, 'N') AS blineCode
|
||||
, IFNULL(A.SPAM_YN, 'N') AS spamYn
|
||||
, CASE
|
||||
WHEN
|
||||
(A.SHORT_PRICE > 0
|
||||
AND (B.SHORT_PRICE > A.SHORT_PRICE
|
||||
OR B.LONG_PRICE > A.LONG_PRICE
|
||||
OR B.PICTURE_PRICE > A.PICTURE_PRICE
|
||||
OR B.PICTURE2_PRICE > A.PICTURE2_PRICE
|
||||
OR B.PICTURE3_PRICE > A.PICTURE3_PRICE)
|
||||
)
|
||||
THEN 'Y'
|
||||
ELSE 'N'
|
||||
END isSalePrice
|
||||
FROM LETTNGNRLMBER A
|
||||
INNER JOIN MJ_MBER_GRD_SETTING S
|
||||
ON S.GRD_SET_NO = (SELECT MAX(GRD_SET_NO) FROM MJ_MBER_GRD_SETTING)
|
||||
JOIN MJ_MBER_SETTING B
|
||||
WHERE A.MBER_STTUS = 'Y'
|
||||
AND MBER_ID NOT IN (SELECT MBER_ID FROM MJ_MBER_GRD_INFO)
|
||||
) M
|
||||
WHERE M.isSalePrice = 'N'
|
||||
AND M.blineCode = 'N'
|
||||
AND M.spamYn = 'N'
|
||||
</insert>
|
||||
|
||||
<!--
|
||||
회원별 등급 일괄변경
|
||||
=> 기존등급보다 상위등급 대상만 업데이트 됨.
|
||||
=> 기존등급과 같거나 좋지않은 경우 제외됨.
|
||||
-->
|
||||
<!-- 회원별 등급 일괄변경 -->
|
||||
<update id="mberGrdDAO.updateMberGrdAll" parameterClass="mberGrdVO">
|
||||
<![CDATA[
|
||||
UPDATE MJ_MBER_GRD_INFO A
|
||||
@ -469,7 +493,7 @@
|
||||
, IFNULL(ROUND(SUM(R.TRNSF_CASH)), 0) AS REFUND_SUM
|
||||
, (SUM(S.AMT) - IFNULL(ROUND(SUM(R.TRNSF_CASH)), 0) - IFNULL(SS.EVENT_FRST_CASH + ROUND(SS.EVENT_FRST_CASH / 10), 0)) AS AMT_SUM
|
||||
, (
|
||||
SELECT IFNULL(MIN(S1.GRD_SET_NO), 12) FROM MJ_MBER_GRD_SETTING S1 WHERE S1.STD_AMT <= (SUM(S.AMT) - IFNULL(ROUND(SUM(R.TRNSF_CASH)), 0) - IFNULL(SS.EVENT_FRST_CASH + ROUND(SS.EVENT_FRST_CASH / 10), 0))
|
||||
SELECT IFNULL(MIN(S1.GRD_SET_NO), (SELECT MAX(GRD_SET_NO) FROM MJ_MBER_GRD_SETTING)) FROM MJ_MBER_GRD_SETTING S1 WHERE S1.STD_AMT <= (SUM(S.AMT) - IFNULL(ROUND(SUM(R.TRNSF_CASH)), 0) - IFNULL(SS.EVENT_FRST_CASH + ROUND(SS.EVENT_FRST_CASH / 10), 0))
|
||||
) GRD_SET_NO
|
||||
FROM MJ_PG S
|
||||
LEFT OUTER JOIN MJ_EVENT_MBER_INFO SS
|
||||
@ -498,6 +522,7 @@
|
||||
, A.TOT_AMT = B.AMT_SUM
|
||||
, A.GRD_DATE = CONCAT(DATE_FORMAT(#grdNewDate#, '%Y-%m-%d'), ' ', '00:00:00')
|
||||
, A.EDIT_DATE = NOW()
|
||||
, A.TEMP_YN = 'Y'
|
||||
WHERE B.GRD_SET_NO IS NOT NULL
|
||||
AND A.GRD_STATUS = 'Y'
|
||||
AND NOW() BETWEEN A.GRD_START_DATE AND A.GRD_END_DATE
|
||||
@ -525,7 +550,7 @@
|
||||
, IFNULL(ROUND(SUM(R.TRNSF_CASH)), 0) AS REFUND_SUM
|
||||
, (SUM(S.AMT) - IFNULL(ROUND(SUM(R.TRNSF_CASH)), 0) - IFNULL(SS.EVENT_FRST_CASH + ROUND(SS.EVENT_FRST_CASH / 10), 0)) AS AMT_SUM
|
||||
, (
|
||||
SELECT IFNULL(MIN(S1.GRD_SET_NO), 12) FROM MJ_MBER_GRD_SETTING S1 WHERE S1.STD_AMT <= (SUM(S.AMT) - IFNULL(ROUND(SUM(R.TRNSF_CASH)), 0) - IFNULL(SS.EVENT_FRST_CASH + ROUND(SS.EVENT_FRST_CASH / 10), 0))
|
||||
SELECT IFNULL(MIN(S1.GRD_SET_NO), (SELECT MAX(GRD_SET_NO) FROM MJ_MBER_GRD_SETTING)) FROM MJ_MBER_GRD_SETTING S1 WHERE S1.STD_AMT <= (SUM(S.AMT) - IFNULL(ROUND(SUM(R.TRNSF_CASH)), 0) - IFNULL(SS.EVENT_FRST_CASH + ROUND(SS.EVENT_FRST_CASH / 10), 0))
|
||||
) GRD_SET_NO
|
||||
FROM MJ_PG S
|
||||
LEFT OUTER JOIN MJ_EVENT_MBER_INFO SS
|
||||
@ -562,6 +587,48 @@
|
||||
]]>
|
||||
</update>
|
||||
|
||||
<!-- 회원별 등급 초기화 By Temp -->
|
||||
<update id="mberGrdDAO.updateMberGrdWhiteByTemp" parameterClass="mberGrdVO">
|
||||
<![CDATA[
|
||||
UPDATE MJ_MBER_GRD_INFO A
|
||||
JOIN MJ_MBER_GRD_SETTING C
|
||||
SET
|
||||
A.GRD_SET_NO = C.GRD_SET_NO
|
||||
, A.SHORT_PRICE = C.SHORT_PRICE
|
||||
, A.LONG_PRICE = C.LONG_PRICE
|
||||
, A.PICTURE_PRICE = C.PICTURE_PRICE
|
||||
, A.PICTURE2_PRICE = C.PICTURE2_PRICE
|
||||
, A.PICTURE3_PRICE = C.PICTURE3_PRICE
|
||||
, A.AMT = 0
|
||||
, A.TOT_AMT = 0
|
||||
, A.GRD_DATE = CONCAT(DATE_FORMAT(#grdNewDate#, '%Y-%m-%d'), ' ', '00:00:00')
|
||||
, A.EDIT_DATE = NOW()
|
||||
, A.TEMP_YN = 'Y'
|
||||
WHERE A.TEMP_YN = 'N'
|
||||
AND C.GRD_SET_NO = (SELECT MAX(GRD_SET_NO) FROM MJ_MBER_GRD_SETTING)
|
||||
]]>
|
||||
</update>
|
||||
|
||||
<!-- 회원별 등급 초기화 All -->
|
||||
<update id="mberGrdDAO.updateMberGrdWhiteAll" parameterClass="mberGrdVO">
|
||||
<![CDATA[
|
||||
UPDATE MJ_MBER_GRD_INFO A
|
||||
JOIN MJ_MBER_GRD_SETTING C
|
||||
SET
|
||||
A.GRD_SET_NO = C.GRD_SET_NO
|
||||
, A.SHORT_PRICE = C.SHORT_PRICE
|
||||
, A.LONG_PRICE = C.LONG_PRICE
|
||||
, A.PICTURE_PRICE = C.PICTURE_PRICE
|
||||
, A.PICTURE2_PRICE = C.PICTURE2_PRICE
|
||||
, A.PICTURE3_PRICE = C.PICTURE3_PRICE
|
||||
, A.AMT = 0
|
||||
, A.TOT_AMT = 0
|
||||
, A.GRD_DATE = CONCAT(DATE_FORMAT(#grdNewDate#, '%Y-%m-%d'), ' ', '00:00:00')
|
||||
, A.EDIT_DATE = NOW()
|
||||
WHERE C.GRD_SET_NO = (SELECT MAX(GRD_SET_NO) FROM MJ_MBER_GRD_SETTING)
|
||||
]]>
|
||||
</update>
|
||||
|
||||
<!-- 문자할인, B선라인, 스팸회원 대상자 종료 -->
|
||||
<update id="mberGrdDAO.updateMberGrdEndBySale" parameterClass="mberGrdVO">
|
||||
<![CDATA[
|
||||
@ -604,6 +671,12 @@
|
||||
]]>
|
||||
</update>
|
||||
|
||||
<!-- 전체회원 TEMP_YN 업데이트 -->
|
||||
<update id="mberGrdDAO.updateMberGrdTempYn" parameterClass="mberGrdVO">
|
||||
UPDATE MJ_MBER_GRD_INFO SET
|
||||
TEMP_YN = #tempYn#
|
||||
</update>
|
||||
|
||||
<!-- 전체회원 등급 종료 -->
|
||||
<update id="mberGrdDAO.updateMberGrdEndAll" parameterClass="mberGrdVO">
|
||||
UPDATE MJ_MBER_GRD_INFO SET
|
||||
|
||||
@ -5,16 +5,55 @@
|
||||
<%@ taglib prefix="spring" uri="http://www.springframework.org/tags"%>
|
||||
<!DOCTYPE html>
|
||||
<html lang="ko">
|
||||
|
||||
<head>
|
||||
<meta charset="UTF-8">
|
||||
<title>등급제 관리</title>
|
||||
|
||||
<script type="text/javascript">
|
||||
//숫자 천단위 콤마 찍어주기
|
||||
function numberWithCommas(x) {
|
||||
return x.toString().replace(/\B(?=(\d{3})+(?!\d))/g, ",");
|
||||
}
|
||||
|
||||
// 등급제 설정변경
|
||||
function setMberGrdSettingEdit() {
|
||||
|
||||
if ($("input[name='grdNoti']:checked").val() == "") {
|
||||
alert("등급제 적용 온/오프를 선택해주세요.");
|
||||
return false;
|
||||
}
|
||||
|
||||
// 누적결제 적용일자
|
||||
if ($("#ntceBgndeYYYMMDD").val() == "") {
|
||||
alert("누적결제 적용일자를 선택해주세요.");
|
||||
return false;
|
||||
}
|
||||
|
||||
if(confirm("저장 하시겠습니까?")) {
|
||||
$("#grdDate").val($("#ntceBgndeYYYMMDD").val());
|
||||
|
||||
$.ajax({
|
||||
type: "POST",
|
||||
url: "/sym/grd/mberGrdSettingUpdateAjax.do",
|
||||
data: $("#listForm").serialize(),
|
||||
dataType:'json',
|
||||
async: false,
|
||||
success: function (data) {
|
||||
if (data.isSuccess) {
|
||||
location.reload();
|
||||
}
|
||||
else {
|
||||
alert("Msg : " + data.msg);
|
||||
}
|
||||
},
|
||||
error: function (e) {
|
||||
alert("ERROR : " + JSON.stringify(e));
|
||||
}
|
||||
});
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
// 등급제 일괄변경
|
||||
function setMberGrdSettingMassEdit() {
|
||||
|
||||
@ -55,16 +94,17 @@
|
||||
error: function (e) {
|
||||
alert("ERROR : " + JSON.stringify(e));
|
||||
}
|
||||
});
|
||||
});
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
// 회원별 등급 초기화
|
||||
function setMberGrdEndMassEdit() {
|
||||
function setMberGrdResetMassEdit() {
|
||||
if(confirm("모든 고객 등급을 초기화하시겠습니까?")) {
|
||||
$.ajax({
|
||||
type: "POST",
|
||||
url: "/sym/grd/mberGrdEndMassUpdateAjax.do",
|
||||
url: "/sym/grd/mberGrdResetMassUpdateAjax.do",
|
||||
data: {},
|
||||
dataType:'json',
|
||||
async: false,
|
||||
@ -84,6 +124,28 @@
|
||||
}
|
||||
}
|
||||
|
||||
// 오늘날짜 Get
|
||||
function getToday() {
|
||||
// new Date를 통해서 날짜 객체를 생성. 여기서 년, 월, 일 정보만 필요.
|
||||
const nowDate = new Date();
|
||||
|
||||
var year = nowDate.getFullYear(); // 년
|
||||
var month = ('0' + (nowDate.getMonth() + 1)).slice(-2); // 월
|
||||
var day = ('0' + nowDate.getDate()).slice(-2); // 일
|
||||
|
||||
// yyyy-mm-dd 형식으로 todate에 담기.
|
||||
var todate = year + '-' + month + '-' + day;
|
||||
|
||||
return todate;
|
||||
}
|
||||
|
||||
// 오늘날짜 Set
|
||||
function setToday() {
|
||||
var toDay = getToday();
|
||||
|
||||
$('#ntceBgndeYYYMMDD').val(toDay);
|
||||
}
|
||||
|
||||
</script>
|
||||
</head>
|
||||
<body>
|
||||
@ -125,6 +187,9 @@
|
||||
value="<c:out value="${grdDate}" />" >
|
||||
<input type="button" class="calBtn">
|
||||
</a>
|
||||
|
||||
|
||||
<input type="button" style="cursor: pointer; height: 33px;" onclick="setToday();" value="오늘">
|
||||
</td>
|
||||
<th>누적결제 계산기간</th>
|
||||
<td>
|
||||
@ -134,7 +199,13 @@
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
<br /><br />
|
||||
|
||||
<br />
|
||||
<div class="btnWrap">
|
||||
<input type="button" class="btnType1" value="저장" onclick="javascript:setMberGrdSettingEdit(); return false;">
|
||||
</div>
|
||||
|
||||
<br /><br /><br />
|
||||
|
||||
<div class="tableWrap">
|
||||
<table class="tbType1">
|
||||
@ -178,9 +249,9 @@
|
||||
|
||||
<br />
|
||||
<div class="btnWrap">
|
||||
<input type="button" class="btnType2" value="모든 고객 등급 초기화" onclick="javascript:setMberGrdEndMassEdit(); return false;">
|
||||
<input type="button" class="btnType1" value="취소" onclick="javascript:location.reload(); return false;">
|
||||
<input type="button" class="btnType1" value="수정" onclick="javascript:setMberGrdSettingMassEdit(); return false;">
|
||||
<input type="button" class="btnType2" value="모든 고객 등급 초기화" onclick="javascript:setMberGrdResetMassEdit(); return false;">
|
||||
<%--<input type="button" class="btnType1" value="취소" onclick="javascript:location.reload(); return false;">--%>
|
||||
<input type="button" class="btnType1" value="저장" onclick="javascript:setMberGrdSettingMassEdit(); return false;">
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
Loading…
Reference in New Issue
Block a user