등급제 신청기능 추가
This commit is contained in:
parent
5530aa37c5
commit
1b6f5e22af
@ -14,12 +14,21 @@ public interface MberGrdService {
|
|||||||
// 등급제 설정 목록
|
// 등급제 설정 목록
|
||||||
List<MberGrdVO> selectMberGrdSettingList(MberGrdVO mberGrdVO) throws Exception;
|
List<MberGrdVO> selectMberGrdSettingList(MberGrdVO mberGrdVO) throws Exception;
|
||||||
|
|
||||||
|
// 회원별 설정 상세
|
||||||
|
public MberGrdVO selectMberGrdSettingDetail(MberGrdVO mberGrdVO) throws Exception;
|
||||||
|
|
||||||
// 등급제 설정 일괄변경
|
// 등급제 설정 일괄변경
|
||||||
public int updateGrdSettingList(MberGrdVO mberGrdVO) throws Exception;
|
public int updateGrdSettingList(MberGrdVO mberGrdVO) throws Exception;
|
||||||
|
|
||||||
|
// 등급제 등급 목록
|
||||||
|
List<MberGrdVO> selectMberGrdList(MberGrdVO mberGrdVO) throws Exception;
|
||||||
|
|
||||||
// 회원별 등급 상세
|
// 회원별 등급 상세
|
||||||
public MberGrdVO selectMberGrdDetail(MberGrdVO mberGrdVO) throws Exception;
|
public MberGrdVO selectMberGrdDetail(MberGrdVO mberGrdVO) throws Exception;
|
||||||
|
|
||||||
|
// 회원별 등급 누적결제액 상세
|
||||||
|
public MberGrdVO selectMberGrdAmtDetail(MberGrdVO mberGrdVO) throws Exception;
|
||||||
|
|
||||||
// 회원별 등급 등록
|
// 회원별 등급 등록
|
||||||
public void insertMberGrd(MberGrdVO mberGrdVO) throws Exception;
|
public void insertMberGrd(MberGrdVO mberGrdVO) throws Exception;
|
||||||
|
|
||||||
@ -32,9 +41,15 @@ public interface MberGrdService {
|
|||||||
// 회원별 등급 초기화
|
// 회원별 등급 초기화
|
||||||
public int updateMberGrdEndAll(MberGrdVO mberGrdVO) throws Exception;
|
public int updateMberGrdEndAll(MberGrdVO mberGrdVO) throws Exception;
|
||||||
|
|
||||||
|
// 회원별 등급 적용
|
||||||
|
public void mberGrdSaveByUser(MberGrdVO mberGrdVO) throws Exception;
|
||||||
|
|
||||||
// 회원별 등급 진행여부
|
// 회원별 등급 진행여부
|
||||||
int selectMberGrdPrgCnt(String userId) throws Exception;
|
int selectMberGrdPrgCnt(String userId) throws Exception;
|
||||||
|
|
||||||
|
// 회원별 등급 저장여부
|
||||||
|
int selectMberGrdSaveCnt(String userId) throws Exception;
|
||||||
|
|
||||||
|
|
||||||
// 회원별 등급 히스토리 등록
|
// 회원별 등급 히스토리 등록
|
||||||
public void insertMberGrdHist(MberGrdVO mberGrdVO) throws Exception ;
|
public void insertMberGrdHist(MberGrdVO mberGrdVO) throws Exception ;
|
||||||
|
|||||||
@ -30,7 +30,7 @@ public class MberGrdVO {
|
|||||||
private String mberId;
|
private String mberId;
|
||||||
private String amt;
|
private String amt;
|
||||||
private String grdStartDate;
|
private String grdStartDate;
|
||||||
private String grd_endDate;
|
private String grdEndDate;
|
||||||
private String grdStatus;
|
private String grdStatus;
|
||||||
private int mberGrdHistNo;
|
private int mberGrdHistNo;
|
||||||
|
|
||||||
@ -184,11 +184,11 @@ public class MberGrdVO {
|
|||||||
public void setGrdStartDate(String grdStartDate) {
|
public void setGrdStartDate(String grdStartDate) {
|
||||||
this.grdStartDate = grdStartDate;
|
this.grdStartDate = grdStartDate;
|
||||||
}
|
}
|
||||||
public String getGrd_endDate() {
|
public String getGrdEndDate() {
|
||||||
return grd_endDate;
|
return grdEndDate;
|
||||||
}
|
}
|
||||||
public void setGrd_endDate(String grd_endDate) {
|
public void setGrdEndDate(String grd_endDate) {
|
||||||
this.grd_endDate = grd_endDate;
|
this.grdEndDate = grd_endDate;
|
||||||
}
|
}
|
||||||
public String getGrdStatus() {
|
public String getGrdStatus() {
|
||||||
return grdStatus;
|
return grdStatus;
|
||||||
|
|||||||
@ -20,22 +20,39 @@ public class MberGrdDAO extends EgovAbstractDAO {
|
|||||||
return (MberGrdVO) select("mberGrdDAO.selectMberSettingDetail", mberGrdVO);
|
return (MberGrdVO) select("mberGrdDAO.selectMberSettingDetail", mberGrdVO);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
// 등급제 설정 목록
|
// 등급제 설정 목록
|
||||||
@SuppressWarnings("unchecked")
|
@SuppressWarnings("unchecked")
|
||||||
public List<MberGrdVO> selectMberGrdSettingList(MberGrdVO mberGrdVO) throws Exception{
|
public List<MberGrdVO> selectMberGrdSettingList(MberGrdVO mberGrdVO) throws Exception{
|
||||||
return (List<MberGrdVO>)list("mberGrdDAO.selectMberGrdSettingList", mberGrdVO);
|
return (List<MberGrdVO>)list("mberGrdDAO.selectMberGrdSettingList", mberGrdVO);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// 회원별 설정 상세
|
||||||
|
public MberGrdVO selectMberGrdSettingDetail(MberGrdVO mberGrdVO) throws Exception{
|
||||||
|
return (MberGrdVO) select("mberGrdDAO.selectMberGrdSettingDetail", mberGrdVO);
|
||||||
|
}
|
||||||
|
|
||||||
// 등급제 설정 일괄변경
|
// 등급제 설정 일괄변경
|
||||||
public int updateGrdSetting(MberGrdVO mberGrdVO) throws Exception {
|
public int updateGrdSetting(MberGrdVO mberGrdVO) throws Exception {
|
||||||
return update("mberGrdDAO.updateGrdSetting", mberGrdVO);
|
return update("mberGrdDAO.updateGrdSetting", mberGrdVO);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// 등급제 등급 목록
|
||||||
|
@SuppressWarnings("unchecked")
|
||||||
|
public List<MberGrdVO> selectMberGrdList(MberGrdVO mberGrdVO) throws Exception{
|
||||||
|
return (List<MberGrdVO>)list("mberGrdDAO.selectMberGrdList", mberGrdVO);
|
||||||
|
}
|
||||||
|
|
||||||
// 회원별 등급 상세
|
// 회원별 등급 상세
|
||||||
public MberGrdVO selectMberGrdDetail(MberGrdVO mberGrdVO) throws Exception{
|
public MberGrdVO selectMberGrdDetail(MberGrdVO mberGrdVO) throws Exception{
|
||||||
return (MberGrdVO) select("mberGrdDAO.selectMberGrdDetail", mberGrdVO);
|
return (MberGrdVO) select("mberGrdDAO.selectMberGrdDetail", mberGrdVO);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// 회원별 등급 누적결제액 상세
|
||||||
|
public MberGrdVO selectMberGrdAmtDetail(MberGrdVO mberGrdVO) throws Exception{
|
||||||
|
return (MberGrdVO) select("mberGrdDAO.selectMberGrdAmtDetail", mberGrdVO);
|
||||||
|
}
|
||||||
|
|
||||||
// 회원별 등급 등록
|
// 회원별 등급 등록
|
||||||
public void insertMberGrd(MberGrdVO mberGrdVO) throws Exception{
|
public void insertMberGrd(MberGrdVO mberGrdVO) throws Exception{
|
||||||
insert("mberGrdDAO.insertMberGrd", mberGrdVO);
|
insert("mberGrdDAO.insertMberGrd", mberGrdVO);
|
||||||
@ -61,6 +78,11 @@ public class MberGrdDAO extends EgovAbstractDAO {
|
|||||||
return (int) select("mberGrdDAO.selectMberGrdPrgCnt", userId);
|
return (int) select("mberGrdDAO.selectMberGrdPrgCnt", userId);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// 회원별 등급 저장여부
|
||||||
|
public int selectMberGrdSaveCnt(String userId) throws Exception{
|
||||||
|
return (int) select("mberGrdDAO.selectMberGrdSaveCnt", userId);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
// 회원별 등급 히스토리 등록
|
// 회원별 등급 히스토리 등록
|
||||||
public void insertMberGrdHist(MberGrdVO mberGrdVO) throws Exception{
|
public void insertMberGrdHist(MberGrdVO mberGrdVO) throws Exception{
|
||||||
|
|||||||
@ -29,11 +29,18 @@ public class MberGrdServiceImpl extends EgovAbstractServiceImpl implements MberG
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
// 등급제 설정 목록
|
||||||
@Override
|
@Override
|
||||||
public List<MberGrdVO> selectMberGrdSettingList(MberGrdVO mberGrdVO) throws Exception {
|
public List<MberGrdVO> selectMberGrdSettingList(MberGrdVO mberGrdVO) throws Exception {
|
||||||
return mberGrdDAO.selectMberGrdSettingList(mberGrdVO);
|
return mberGrdDAO.selectMberGrdSettingList(mberGrdVO);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// 회원별 설정 상세
|
||||||
|
@Override
|
||||||
|
public MberGrdVO selectMberGrdSettingDetail(MberGrdVO mberGrdVO) throws Exception {
|
||||||
|
return mberGrdDAO.selectMberGrdSettingDetail(mberGrdVO);
|
||||||
|
}
|
||||||
|
|
||||||
// 등급제 설정 일괄변경
|
// 등급제 설정 일괄변경
|
||||||
@Override
|
@Override
|
||||||
public int updateGrdSettingList(MberGrdVO mberGrdVO) throws Exception {
|
public int updateGrdSettingList(MberGrdVO mberGrdVO) throws Exception {
|
||||||
@ -56,6 +63,12 @@ public class MberGrdServiceImpl extends EgovAbstractServiceImpl implements MberG
|
|||||||
return updateCnt;
|
return updateCnt;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
// 등급제 등급 목록
|
||||||
|
@Override
|
||||||
|
public List<MberGrdVO> selectMberGrdList(MberGrdVO mberGrdVO) throws Exception {
|
||||||
|
return mberGrdDAO.selectMberGrdList(mberGrdVO);
|
||||||
|
}
|
||||||
|
|
||||||
// 회원별 등급 상세
|
// 회원별 등급 상세
|
||||||
@Override
|
@Override
|
||||||
@ -63,6 +76,12 @@ public class MberGrdServiceImpl extends EgovAbstractServiceImpl implements MberG
|
|||||||
return mberGrdDAO.selectMberGrdDetail(mberGrdVO);
|
return mberGrdDAO.selectMberGrdDetail(mberGrdVO);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// 회원별 등급 누적결제액 상세
|
||||||
|
@Override
|
||||||
|
public MberGrdVO selectMberGrdAmtDetail(MberGrdVO mberGrdVO) throws Exception {
|
||||||
|
return mberGrdDAO.selectMberGrdAmtDetail(mberGrdVO);
|
||||||
|
}
|
||||||
|
|
||||||
// 회원별 등급 등록
|
// 회원별 등급 등록
|
||||||
@Override
|
@Override
|
||||||
public void insertMberGrd(MberGrdVO mberGrdVO) throws Exception {
|
public void insertMberGrd(MberGrdVO mberGrdVO) throws Exception {
|
||||||
@ -78,7 +97,16 @@ public class MberGrdServiceImpl extends EgovAbstractServiceImpl implements MberG
|
|||||||
// 회원별 등급 초기화
|
// 회원별 등급 초기화
|
||||||
@Override
|
@Override
|
||||||
public int updateMberGrdAll(MberGrdVO mberGrdVO) throws Exception {
|
public int updateMberGrdAll(MberGrdVO mberGrdVO) throws Exception {
|
||||||
return mberGrdDAO.updateMberGrdAll(mberGrdVO);
|
int updateCnt = 0;
|
||||||
|
|
||||||
|
// Step 1. 등급제 시행 ON 일경우
|
||||||
|
MberGrdVO mberGrdVO1 = new MberGrdVO();
|
||||||
|
mberGrdVO1 = selectMberSettingDetail(mberGrdVO);
|
||||||
|
if (mberGrdVO1.getGrdNoti().equals("Y") && null != mberGrdVO1.getGrdDate()) {
|
||||||
|
updateCnt = mberGrdDAO.updateMberGrdAll(mberGrdVO);
|
||||||
|
}
|
||||||
|
|
||||||
|
return updateCnt;
|
||||||
}
|
}
|
||||||
|
|
||||||
// 회원별 등급 일괄변경
|
// 회원별 등급 일괄변경
|
||||||
@ -87,12 +115,77 @@ public class MberGrdServiceImpl extends EgovAbstractServiceImpl implements MberG
|
|||||||
return mberGrdDAO.updateMberGrdEndAll(mberGrdVO);
|
return mberGrdDAO.updateMberGrdEndAll(mberGrdVO);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// 회원별 등급 적용
|
||||||
|
@Override
|
||||||
|
public void mberGrdSaveByUser(MberGrdVO mberGrdVO) throws Exception {
|
||||||
|
mberGrdVO.setRegId(mberGrdVO.getMberId());
|
||||||
|
mberGrdVO.setEditId(mberGrdVO.getMberId());
|
||||||
|
|
||||||
|
// Step 1. 등급제 시행 ON 일경우
|
||||||
|
MberGrdVO mberGrdVO1 = new MberGrdVO();
|
||||||
|
mberGrdVO1 = selectMberSettingDetail(mberGrdVO);
|
||||||
|
if (mberGrdVO1.getGrdNoti().equals("Y") && null != mberGrdVO1.getGrdDate()) {
|
||||||
|
mberGrdVO.setGrdDate(mberGrdVO1.getGrdDate());
|
||||||
|
|
||||||
|
// Step 2. 누적결제금액(이벤트금액 제외) 추출 및 등급 조회
|
||||||
|
MberGrdVO mberGrdVO2 = new MberGrdVO();
|
||||||
|
mberGrdVO2 = selectMberGrdAmtDetail(mberGrdVO);
|
||||||
|
if (null != mberGrdVO2) {
|
||||||
|
mberGrdVO.setTotAmt(mberGrdVO2.getTotAmt());
|
||||||
|
mberGrdVO.setGrdSetNo(mberGrdVO2.getGrdSetNo());
|
||||||
|
|
||||||
|
// Step 3. 등급제 설정값 조회
|
||||||
|
MberGrdVO mberGrdVO3 = new MberGrdVO();
|
||||||
|
mberGrdVO3 = selectMberGrdSettingDetail(mberGrdVO);
|
||||||
|
if (null != mberGrdVO3) {
|
||||||
|
mberGrdVO.setAmt("0");
|
||||||
|
mberGrdVO.setTotAmt(mberGrdVO.getTotAmt());
|
||||||
|
mberGrdVO.setShortPrice(mberGrdVO3.getShortPrice());
|
||||||
|
mberGrdVO.setLongPrice(mberGrdVO3.getLongPrice());
|
||||||
|
mberGrdVO.setPicturePrice(mberGrdVO3.getPicturePrice());
|
||||||
|
mberGrdVO.setPicture2Price(mberGrdVO3.getPicture2Price());
|
||||||
|
mberGrdVO.setPicture3Price(mberGrdVO3.getPicture3Price());
|
||||||
|
mberGrdVO.setGrdStartDate(mberGrdVO.getGrdDate() + " 00:00:00");
|
||||||
|
mberGrdVO.setGrdEndDate("9999:12:31 23:59:59");
|
||||||
|
mberGrdVO.setGrdStatus("Y");
|
||||||
|
|
||||||
|
// Step 4. 인서트 Or 업데이트
|
||||||
|
MberGrdVO mberGrdVO4 = new MberGrdVO();
|
||||||
|
mberGrdVO4 = selectMberGrdDetail(mberGrdVO);
|
||||||
|
if (null != mberGrdVO4) {
|
||||||
|
// 업데이트 => 현재 등급보다 낮거나 같으면 업데이트 처리
|
||||||
|
if (mberGrdVO4.getGrdSetNo() >= mberGrdVO.getGrdSetNo()) {
|
||||||
|
updateMberGrd(mberGrdVO);
|
||||||
|
|
||||||
|
// 회원별 등급 히스토리 인서트
|
||||||
|
insertMberGrdHist(mberGrdVO);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
// 인서트
|
||||||
|
insertMberGrd(mberGrdVO);
|
||||||
|
|
||||||
|
// 회원별 등급 히스토리 인서트
|
||||||
|
insertMberGrdHist(mberGrdVO);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
// 회원별 등급 진행여부
|
// 회원별 등급 진행여부
|
||||||
@Override
|
@Override
|
||||||
public int selectMberGrdPrgCnt(String userId) throws Exception{
|
public int selectMberGrdPrgCnt(String userId) throws Exception{
|
||||||
return mberGrdDAO.selectMberGrdPrgCnt(userId);
|
return mberGrdDAO.selectMberGrdPrgCnt(userId);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// 회원별 등급 저장여부
|
||||||
|
@Override
|
||||||
|
public int selectMberGrdSaveCnt(String userId) throws Exception{
|
||||||
|
return mberGrdDAO.selectMberGrdSaveCnt(userId);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
// 회원별 등급 히스토리 등록
|
// 회원별 등급 히스토리 등록
|
||||||
@Override
|
@Override
|
||||||
|
|||||||
@ -127,4 +127,39 @@ public class MberGrdController {
|
|||||||
return modelAndView;
|
return modelAndView;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// 회원별 등급 적용 테스트
|
||||||
|
@RequestMapping(value = "/sym/grd/mberGrdSaveAjax.do")
|
||||||
|
public ModelAndView mberGrdSaveAjax(
|
||||||
|
@ModelAttribute("mberGrdVO") MberGrdVO mberGrdVO) throws Exception {
|
||||||
|
|
||||||
|
ModelAndView modelAndView = new ModelAndView();
|
||||||
|
modelAndView.setViewName("jsonView");
|
||||||
|
|
||||||
|
boolean isSuccess = true;
|
||||||
|
String msg = "";
|
||||||
|
|
||||||
|
// 로그인VO에서 사용자 정보 가져오기
|
||||||
|
LoginVO loginVO = (LoginVO)EgovUserDetailsHelper.getAuthenticatedUser();
|
||||||
|
String frstRegisterId = loginVO == null ? "" : loginVO.getId();
|
||||||
|
mberGrdVO.setEditId(frstRegisterId); // 최초등록자ID
|
||||||
|
|
||||||
|
try{
|
||||||
|
|
||||||
|
// 회원별 등급 적용
|
||||||
|
mberGrdVO.setMberId("nopay");
|
||||||
|
mberGrdService.mberGrdSaveByUser(mberGrdVO);
|
||||||
|
|
||||||
|
}
|
||||||
|
catch(Exception e) {
|
||||||
|
isSuccess = false;
|
||||||
|
msg = e.getMessage();
|
||||||
|
}
|
||||||
|
|
||||||
|
modelAndView.addObject("isSuccess", isSuccess);
|
||||||
|
modelAndView.addObject("msg", msg);
|
||||||
|
|
||||||
|
return modelAndView;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@ -17,7 +17,7 @@
|
|||||||
<select id="mberGrdDAO.selectMberSettingDetail" parameterClass="mberGrdVO" resultClass="mberGrdVO">
|
<select id="mberGrdDAO.selectMberSettingDetail" parameterClass="mberGrdVO" resultClass="mberGrdVO">
|
||||||
SELECT
|
SELECT
|
||||||
GRD_NOTI AS grdNoti
|
GRD_NOTI AS grdNoti
|
||||||
, GRD_DATE AS grdDate
|
, DATE_FORMAT(GRD_DATE, '%Y-%m-%d' ) AS grdDate
|
||||||
FROM
|
FROM
|
||||||
MJ_MBER_SETTING
|
MJ_MBER_SETTING
|
||||||
LIMIT 1
|
LIMIT 1
|
||||||
@ -44,6 +44,26 @@
|
|||||||
ORDER BY A.GRD_SET_NO ASC
|
ORDER BY A.GRD_SET_NO ASC
|
||||||
</select>
|
</select>
|
||||||
|
|
||||||
|
<!-- 등급제 설정 상세 -->
|
||||||
|
<select id="mberGrdDAO.selectMberGrdSettingDetail" parameterClass="mberGrdVO" resultClass="mberGrdVO">
|
||||||
|
SELECT
|
||||||
|
A.GRD_SET_NO AS grdSetNo
|
||||||
|
, A.GRD_SET_NM AS grdSetNm
|
||||||
|
, FLOOR(A.STD_AMT) AS stdAmt
|
||||||
|
, FORMAT(FLOOR(A.STD_AMT),0) AS stdAmtComma
|
||||||
|
, A.SHORT_PRICE AS shortPrice
|
||||||
|
, A.LONG_PRICE AS longPrice
|
||||||
|
, A.PICTURE_PRICE AS picturePrice
|
||||||
|
, A.PICTURE2_PRICE AS picture2Price
|
||||||
|
, A.PICTURE3_PRICE AS picture3Price
|
||||||
|
, A.REG_ID AS regId
|
||||||
|
, A.REG_DATE AS regDate
|
||||||
|
, A.EDIT_ID AS editId
|
||||||
|
, A.EDIT_DATE AS editDate
|
||||||
|
FROM mj_mber_grd_setting A
|
||||||
|
WHERE A.GRD_SET_NO = #grdSetNo#
|
||||||
|
</select>
|
||||||
|
|
||||||
<!-- 등급제 설정 일괄변경 일괄변경 -->
|
<!-- 등급제 설정 일괄변경 일괄변경 -->
|
||||||
<update id="mberGrdDAO.updateGrdSetting" parameterClass="mberGrdVO">
|
<update id="mberGrdDAO.updateGrdSetting" parameterClass="mberGrdVO">
|
||||||
UPDATE mj_mber_grd_setting A
|
UPDATE mj_mber_grd_setting A
|
||||||
@ -59,6 +79,39 @@
|
|||||||
WHERE A.GRD_SET_NO = #grdSetNo#
|
WHERE A.GRD_SET_NO = #grdSetNo#
|
||||||
</update>
|
</update>
|
||||||
|
|
||||||
|
<!-- 회원별 등급 목록 -->
|
||||||
|
<select id="mberGrdDAO.selectMberGrdList" parameterClass="mberGrdVO" resultClass="mberGrdVO">
|
||||||
|
SELECT
|
||||||
|
COUNT(MBER_ID) OVER() AS totCnt
|
||||||
|
, MBER_ID AS mberId
|
||||||
|
, GRD_SET_NO AS grdSetNo
|
||||||
|
, SHORT_PRICE AS shortPrice
|
||||||
|
, LONG_PRICE AS longPrice
|
||||||
|
, PICTURE_PRICE AS picturePrice
|
||||||
|
, PICTURE2_PRICE AS picture2Price
|
||||||
|
, PICTURE3_PRICE AS picture3Price
|
||||||
|
, AMT AS amt
|
||||||
|
, TOT_AMT AS totAmt
|
||||||
|
, GRD_START_DATE AS grdStartDate
|
||||||
|
, GRD_END_DATE AS grdEndDate
|
||||||
|
, GRD_STATUS AS grdStatus
|
||||||
|
, REG_ID AS regId
|
||||||
|
, REG_DATE AS regDate
|
||||||
|
, EDIT_ID AS editId
|
||||||
|
, EDIT_DATE AS editDate
|
||||||
|
FROM
|
||||||
|
mj_mber_grd_info
|
||||||
|
WHERE 1=1
|
||||||
|
ORDER BY 1=1
|
||||||
|
<isNotEmpty property="searchSortCnd">
|
||||||
|
,$searchSortCnd$
|
||||||
|
</isNotEmpty>
|
||||||
|
<isNotEmpty property="searchSortOrd">
|
||||||
|
$searchSortOrd$
|
||||||
|
</isNotEmpty>
|
||||||
|
LIMIT #recordCountPerPage# OFFSET #firstIndex#
|
||||||
|
</select>
|
||||||
|
|
||||||
<!-- 회원별 등급 상세 -->
|
<!-- 회원별 등급 상세 -->
|
||||||
<select id="mberGrdDAO.selectMberGrdDetail" parameterClass="mberGrdVO" resultClass="mberGrdVO">
|
<select id="mberGrdDAO.selectMberGrdDetail" parameterClass="mberGrdVO" resultClass="mberGrdVO">
|
||||||
SELECT
|
SELECT
|
||||||
@ -72,7 +125,7 @@
|
|||||||
, AMT AS amt
|
, AMT AS amt
|
||||||
, TOT_AMT AS totAmt
|
, TOT_AMT AS totAmt
|
||||||
, GRD_START_DATE AS grdStartDate
|
, GRD_START_DATE AS grdStartDate
|
||||||
, GRD_END_DATE AS grd_endDate
|
, GRD_END_DATE AS grdEndDate
|
||||||
, GRD_STATUS AS grdStatus
|
, GRD_STATUS AS grdStatus
|
||||||
, REG_ID AS regId
|
, REG_ID AS regId
|
||||||
, REG_DATE AS regDate
|
, REG_DATE AS regDate
|
||||||
@ -84,6 +137,34 @@
|
|||||||
MBER_ID = #mberId#
|
MBER_ID = #mberId#
|
||||||
</select>
|
</select>
|
||||||
|
|
||||||
|
<!-- 회원별 등급 누적결제액 상세 -->
|
||||||
|
<select id="mberGrdDAO.selectMberGrdAmtDetail" parameterClass="mberGrdVO" resultClass="mberGrdVO">
|
||||||
|
<![CDATA[
|
||||||
|
SELECT
|
||||||
|
M.USER_ID AS mberId
|
||||||
|
, M.AMT_SUM AS totAmt
|
||||||
|
, M.GRD_SET_NO AS grdSetNo
|
||||||
|
FROM (
|
||||||
|
SELECT
|
||||||
|
S.USER_ID
|
||||||
|
, SUM(S.AMT) AS AMT_SUM_ORIGIN
|
||||||
|
, (SUM(S.AMT) - IFNULL(SS.EVENT_FRST_CASH + ROUND(SS.EVENT_FRST_CASH / 10), 0)) AS AMT_SUM
|
||||||
|
, (
|
||||||
|
SELECT MIN(GRD_SET_NO) FROM MJ_MBER_GRD_SETTING S1 WHERE S1.STD_AMT <= (SUM(S.AMT) - 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
|
||||||
|
ON S.USER_ID = SS.MBER_ID
|
||||||
|
AND SS.EVENT_START_DATE >= CONCAT(DATE_FORMAT(#grdDate#, '%Y-%m-%d'), ' ', '00:00:00')
|
||||||
|
WHERE S.PG_STATUS = '1'
|
||||||
|
AND S.REG_DATE >= CONCAT(DATE_FORMAT(#grdDate#, '%Y-%m-%d'), ' ', '00:00:00')
|
||||||
|
GROUP BY S.USER_ID
|
||||||
|
) M
|
||||||
|
WHERE M.GRD_SET_NO IS NOT NULL
|
||||||
|
AND M.USER_ID = #mberId#
|
||||||
|
]]>
|
||||||
|
</select>
|
||||||
|
|
||||||
<!-- 회원별 등급 등록 -->
|
<!-- 회원별 등급 등록 -->
|
||||||
<insert id="mberGrdDAO.insertMberGrd" parameterClass="mberGrdVO">
|
<insert id="mberGrdDAO.insertMberGrd" parameterClass="mberGrdVO">
|
||||||
INSERT INTO mj_mber_grd_info
|
INSERT INTO mj_mber_grd_info
|
||||||
@ -117,7 +198,7 @@
|
|||||||
, #amt#
|
, #amt#
|
||||||
, #totAmt#
|
, #totAmt#
|
||||||
, #grdStartDate#
|
, #grdStartDate#
|
||||||
, #grd_endDate#
|
, #grdEndDate#
|
||||||
, #grdStatus#
|
, #grdStatus#
|
||||||
, #regId#
|
, #regId#
|
||||||
, NOW()
|
, NOW()
|
||||||
@ -136,12 +217,9 @@
|
|||||||
, PICTURE_PRICE = #picturePrice#
|
, PICTURE_PRICE = #picturePrice#
|
||||||
, PICTURE2_PRICE = #picture2Price#
|
, PICTURE2_PRICE = #picture2Price#
|
||||||
, PICTURE3_PRICE = #picture3Price#
|
, PICTURE3_PRICE = #picture3Price#
|
||||||
, AMT = #amt#
|
, AMT = #amt#
|
||||||
, TOT_AMT = #totAmt#
|
, TOT_AMT = #totAmt#
|
||||||
, GRD_START_DATE = #grdStartDate#
|
, EDIT_ID = #editId#
|
||||||
, GRD_END_DATE = #grd_endDate#
|
|
||||||
, GRD_STATUS = #grdStatus#
|
|
||||||
, EDIT_ID = #editId#
|
|
||||||
, EDIT_DATE = NOW()
|
, EDIT_DATE = NOW()
|
||||||
WHERE
|
WHERE
|
||||||
MBER_ID = #mberId#
|
MBER_ID = #mberId#
|
||||||
@ -216,7 +294,16 @@
|
|||||||
AND NOW() BETWEEN GRD_START_DATE AND GRD_END_DATE
|
AND NOW() BETWEEN GRD_START_DATE AND GRD_END_DATE
|
||||||
LIMIT 1
|
LIMIT 1
|
||||||
</select>
|
</select>
|
||||||
|
|
||||||
|
<!-- 회원별 등급 저장여부 -->
|
||||||
|
<select id="mberGrdDAO.selectMberGrdSaveCnt" parameterClass="String" resultClass="Integer">
|
||||||
|
SELECT
|
||||||
|
COUNT(0)
|
||||||
|
FROM MJ_MBER_GRD_INFO A
|
||||||
|
WHERE A.MBER_ID = #mberId#
|
||||||
|
LIMIT 1
|
||||||
|
</select>
|
||||||
|
|
||||||
|
|
||||||
<!-- 회원별 등급 히스토리 등록 -->
|
<!-- 회원별 등급 히스토리 등록 -->
|
||||||
<insert id="mberGrdDAO.insertMberGrdHist" parameterClass="mberGrdVO">
|
<insert id="mberGrdDAO.insertMberGrdHist" parameterClass="mberGrdVO">
|
||||||
|
|||||||
@ -84,6 +84,32 @@
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// 등급제 적용 테스트
|
||||||
|
function setMberGrdSave() {
|
||||||
|
if(confirm("등급제 적용하시겠습니까?")) {
|
||||||
|
$.ajax({
|
||||||
|
type: "POST",
|
||||||
|
url: "/sym/grd/mberGrdSaveAjax.do",
|
||||||
|
data: {},
|
||||||
|
dataType:'json',
|
||||||
|
async: false,
|
||||||
|
success: function (data) {
|
||||||
|
if (data.isSuccess) {
|
||||||
|
alert("저장 완료했습니다.");
|
||||||
|
location.reload();
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
alert("Msg : " + data.msg);
|
||||||
|
}
|
||||||
|
},
|
||||||
|
error: function (e) {
|
||||||
|
alert("ERROR : " + JSON.stringify(e));
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
</script>
|
</script>
|
||||||
</head>
|
</head>
|
||||||
<body>
|
<body>
|
||||||
@ -172,6 +198,7 @@
|
|||||||
<br />
|
<br />
|
||||||
<div class="btnWrap">
|
<div class="btnWrap">
|
||||||
<input type="button" class="btnType2" value="모든 고객 등급 초기화" onclick="javascript:setMberGrdEndMassEdit(); return false;">
|
<input type="button" class="btnType2" value="모든 고객 등급 초기화" onclick="javascript:setMberGrdEndMassEdit(); return false;">
|
||||||
|
<input type="button" class="btnType2" value="등급제 적용테스트" onclick="javascript:setMberGrdSave(); return false;">
|
||||||
<input type="button" class="btnType1" value="취소" onclick="javascript:location.reload(); 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="btnType1" value="수정" onclick="javascript:setMberGrdSettingMassEdit(); return false;">
|
||||||
</div>
|
</div>
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user