회원별 등급 적용 로직 수정
This commit is contained in:
parent
04f60ff9e2
commit
f8566b0fdc
@ -9,8 +9,11 @@ import javax.annotation.Resource;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import egovframework.rte.fdl.cmmn.EgovAbstractServiceImpl;
|
||||
import itn.let.mjo.pay.service.MjonPayService;
|
||||
import itn.let.sym.grd.service.MberGrdService;
|
||||
import itn.let.sym.grd.service.MberGrdVO;
|
||||
import itn.let.uss.umt.service.EgovMberManageService;
|
||||
import itn.let.uss.umt.service.MberManageVO;
|
||||
|
||||
@Service("mberGrdService")
|
||||
public class MberGrdServiceImpl extends EgovAbstractServiceImpl implements MberGrdService {
|
||||
@ -18,6 +21,13 @@ public class MberGrdServiceImpl extends EgovAbstractServiceImpl implements MberG
|
||||
@Resource(name="mberGrdDAO")
|
||||
MberGrdDAO mberGrdDAO;
|
||||
|
||||
@Resource(name = "mjonPayService")
|
||||
private MjonPayService mjonPayService;
|
||||
|
||||
/** mberManageService */
|
||||
@Resource(name = "mberManageService")
|
||||
private EgovMberManageService mberManageService;
|
||||
|
||||
// 등급제 시행여부 변경
|
||||
@Override
|
||||
public int updateMberSetting(MberGrdVO mberGrdVO) throws Exception {
|
||||
@ -134,35 +144,45 @@ public class MberGrdServiceImpl extends EgovAbstractServiceImpl implements MberG
|
||||
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 2. /협의/스팸/비선등급 적용 제외
|
||||
// 문자할인여부(1: 할인, 0: 미할인)
|
||||
int isMsgSalePrice = mjonPayService.selectMsgSalePriceCnt(mberGrdVO.getMberId());
|
||||
if(isMsgSalePrice == 0) {
|
||||
// B선 전송사 이용고객 => 등급제대상 제외처리
|
||||
MberManageVO mberManageVO = new MberManageVO();
|
||||
mberManageVO.setMberId(mberGrdVO.getMberId());
|
||||
String blineCode = mberManageService.selectBlineCodeByMberId(mberManageVO);
|
||||
if (blineCode != null && blineCode.equals("N")) {
|
||||
|
||||
// Step 3. 등급제 설정값 조회
|
||||
// Step 3. 누적결제금액(이벤트금액 제외) 추출 및 등급 조회
|
||||
MberGrdVO mberGrdVO3 = new MberGrdVO();
|
||||
mberGrdVO3 = selectMberGrdSettingDetail(mberGrdVO);
|
||||
mberGrdVO3 = selectMberGrdAmtDetail(mberGrdVO);
|
||||
if (null != mberGrdVO3) {
|
||||
mberGrdVO.setTotAmt(mberGrdVO3.getTotAmt());
|
||||
mberGrdVO.setGrdSetNo(mberGrdVO3.getGrdSetNo());
|
||||
|
||||
// Step 4. 등급제 설정값 조회
|
||||
MberGrdVO mberGrdVO4 = new MberGrdVO();
|
||||
mberGrdVO4 = selectMberGrdSettingDetail(mberGrdVO);
|
||||
if (null != mberGrdVO4) {
|
||||
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.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 4. 인서트 Or 업데이트
|
||||
MberGrdVO mberGrdVO4 = new MberGrdVO();
|
||||
mberGrdVO4 = selectMberGrdDetail(mberGrdVO);
|
||||
if (null != mberGrdVO4) {
|
||||
// Step 5. 인서트 Or 업데이트
|
||||
MberGrdVO mberGrdVO5 = new MberGrdVO();
|
||||
mberGrdVO5 = selectMberGrdDetail(mberGrdVO);
|
||||
if (null != mberGrdVO5) {
|
||||
// 업데이트 => 현재 등급보다 낮거나 같으면 업데이트 처리
|
||||
if (mberGrdVO4.getGrdSetNo() >= mberGrdVO.getGrdSetNo()) {
|
||||
if (mberGrdVO5.getGrdSetNo() >= mberGrdVO.getGrdSetNo()) {
|
||||
updateMberGrd(mberGrdVO);
|
||||
|
||||
// 회원별 등급 히스토리 인서트
|
||||
@ -179,8 +199,10 @@ public class MberGrdServiceImpl extends EgovAbstractServiceImpl implements MberG
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
// 회원별 등급 진행여부
|
||||
@Override
|
||||
|
||||
@ -147,7 +147,8 @@ public class MberGrdController {
|
||||
try{
|
||||
|
||||
// 회원별 등급 적용
|
||||
mberGrdVO.setMberId("nopay");
|
||||
mberGrdVO.setAmt("0"); // 결제금액
|
||||
mberGrdVO.setMberId("nopay"); // 결제자
|
||||
mberGrdService.mberGrdSaveByUser(mberGrdVO);
|
||||
|
||||
}
|
||||
|
||||
Loading…
Reference in New Issue
Block a user