|
|
@@ -1,5 +1,7 @@
|
|
|
package com.style24.admin.biz.service;
|
|
|
|
|
|
+import com.google.gson.Gson;
|
|
|
+import com.google.gson.reflect.TypeToken;
|
|
|
import com.style24.admin.support.security.session.TsaSession;
|
|
|
import com.style24.core.support.message.TscMessageByLocale;
|
|
|
import com.style24.persistence.domain.MoreBetter;
|
|
|
@@ -7,6 +9,7 @@ import com.style24.persistence.domain.MoreBetterBurden;
|
|
|
import com.style24.persistence.domain.MoreBetterGoods;
|
|
|
import com.style24.persistence.domain.MoreBetterSection;
|
|
|
import lombok.extern.slf4j.Slf4j;
|
|
|
+import org.apache.commons.lang3.StringUtils;
|
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
|
import org.springframework.core.env.Environment;
|
|
|
import org.springframework.stereotype.Service;
|
|
|
@@ -118,132 +121,143 @@ public class TsaMorebetterService {
|
|
|
|
|
|
/**
|
|
|
* 다다익선 저장
|
|
|
- * @param tmtb
|
|
|
+ * @param moreBetter
|
|
|
* @return
|
|
|
* @author bin2107
|
|
|
* @since 2021. 1. 5
|
|
|
*/
|
|
|
@Transactional("shopTxnManager")
|
|
|
- public void saveMoreBetterDetail(MoreBetter tmtb) {
|
|
|
+ public void saveMoreBetterDetail(MoreBetter moreBetter) {
|
|
|
+ Gson gson = new Gson();
|
|
|
+ String jsonData = gson.toJson(moreBetter);
|
|
|
+
|
|
|
// <,> replace 처리
|
|
|
- tmtb.setRegNo(TsaSession.getInfo().getUserNo());
|
|
|
- tmtb.setUdpNo(TsaSession.getInfo().getUserNo());
|
|
|
+ moreBetter.setRegNo(TsaSession.getInfo().getUserNo());
|
|
|
+ moreBetter.setUdpNo(TsaSession.getInfo().getUserNo());
|
|
|
|
|
|
// TMTB 마스터(TB_TMTB) 저장
|
|
|
- morebetterDao.saveMorebetterMst(tmtb);
|
|
|
+ morebetterDao.saveMorebetterMst(moreBetter);
|
|
|
|
|
|
// 다다익선 적용대상 설정
|
|
|
// 공급업체
|
|
|
- Collection<MoreBetterGoods> supplyCompList = tmtb.getSupplyCompListNew();
|
|
|
+ Collection<MoreBetterGoods> supplyCompList = gson.fromJson(moreBetter.getSupplyCompList() , new TypeToken<Collection<MoreBetterGoods>>(){}.getType());
|
|
|
for(MoreBetterGoods regSupplyComp : supplyCompList){
|
|
|
// 다다익선 적용대상 설정(TB_TMTB_GOODS) 저장
|
|
|
// tmtbGoodsSq 생성
|
|
|
log.info("regSupplyComp.getTmtbGoodsSq = {}",regSupplyComp.getTmtbGoodsSq());
|
|
|
- if("".equals(regSupplyComp.getTmtbGoodsSq())){
|
|
|
- Integer tmtbGoodsSq = commonService.getNextSequence("SEQ_TMTB_GOODS");
|
|
|
+ Integer tmtbGoodsSq = regSupplyComp.getTmtbGoodsSq();
|
|
|
+ if(tmtbGoodsSq == null){
|
|
|
+ tmtbGoodsSq = commonService.getNextSequence("SEQ_TMTB_GOODS");
|
|
|
regSupplyComp.setTmtbGoodsSq(tmtbGoodsSq);
|
|
|
}
|
|
|
- regSupplyComp.setTmtbSq(tmtb.getTmtbSq());
|
|
|
+ regSupplyComp.setTmtbSq(moreBetter.getTmtbSq());
|
|
|
regSupplyComp.setGoodsGb("G800_20");
|
|
|
regSupplyComp.setTargetVal(regSupplyComp.getSupplyCompCd());
|
|
|
- regSupplyComp.setRegNo(tmtb.getRegNo());
|
|
|
- regSupplyComp.setUdpNo(tmtb.getUdpNo());
|
|
|
+ regSupplyComp.setRegNo(moreBetter.getRegNo());
|
|
|
+ regSupplyComp.setUdpNo(moreBetter.getUdpNo());
|
|
|
|
|
|
morebetterDao.saveMorebetterGoods(regSupplyComp);
|
|
|
}
|
|
|
|
|
|
// 브랜드
|
|
|
- Collection<MoreBetterGoods> brandList = tmtb.getBrandListNew();
|
|
|
+ Collection<MoreBetterGoods> brandList = gson.fromJson(moreBetter.getBrandList() , new TypeToken<Collection<MoreBetterGoods>>(){}.getType());
|
|
|
for(MoreBetterGoods regBrand : brandList){
|
|
|
// 다다익선 적용대상 설정(TB_TMTB_GOODS) 저장
|
|
|
// tmtbGoodsSq 생성
|
|
|
log.info("regBrand.getTmtbGoodsSq = {}",regBrand.getTmtbGoodsSq());
|
|
|
- if("".equals(regBrand.getTmtbGoodsSq())){
|
|
|
- Integer tmtbGoodsSq = commonService.getNextSequence("SEQ_TMTB_GOODS");
|
|
|
+ Integer tmtbGoodsSq = regBrand.getTmtbGoodsSq();
|
|
|
+ if(tmtbGoodsSq == null){
|
|
|
+ tmtbGoodsSq = commonService.getNextSequence("SEQ_TMTB_GOODS");
|
|
|
regBrand.setTmtbGoodsSq(tmtbGoodsSq);
|
|
|
}
|
|
|
- regBrand.setTmtbSq(tmtb.getTmtbSq());
|
|
|
+ regBrand.setTmtbSq(moreBetter.getTmtbSq());
|
|
|
regBrand.setGoodsGb("G800_20");
|
|
|
regBrand.setTargetVal(regBrand.getBrandCd());
|
|
|
- regBrand.setRegNo(tmtb.getRegNo());
|
|
|
- regBrand.setUdpNo(tmtb.getUdpNo());
|
|
|
+ regBrand.setRegNo(moreBetter.getRegNo());
|
|
|
+ regBrand.setUdpNo(moreBetter.getUdpNo());
|
|
|
|
|
|
morebetterDao.saveMorebetterGoods(regBrand);
|
|
|
}
|
|
|
|
|
|
// 적용상품
|
|
|
- Collection<MoreBetterGoods> applyGoodsList = tmtb.getApplyGoodsListNew();
|
|
|
+ Collection<MoreBetterGoods> applyGoodsList = gson.fromJson(moreBetter.getApplyGoodsList() , new TypeToken<Collection<MoreBetterGoods>>(){}.getType());
|
|
|
for(MoreBetterGoods regApplyGoods : applyGoodsList){
|
|
|
// 다다익선 적용대상 설정(TB_TMTB_GOODS) 저장
|
|
|
// tmtbGoodsSq 생성
|
|
|
log.info("regApplyGoods.getTmtbGoodsSq = {}",regApplyGoods.getTmtbGoodsSq());
|
|
|
- if("".equals(regApplyGoods.getTmtbGoodsSq())){
|
|
|
- Integer tmtbGoodsSq = commonService.getNextSequence("SEQ_TMTB_GOODS");
|
|
|
+ Integer tmtbGoodsSq = regApplyGoods.getTmtbGoodsSq();
|
|
|
+ if(tmtbGoodsSq == null){
|
|
|
+ tmtbGoodsSq = commonService.getNextSequence("SEQ_TMTB_GOODS");
|
|
|
regApplyGoods.setTmtbGoodsSq(tmtbGoodsSq);
|
|
|
}
|
|
|
- regApplyGoods.setTmtbSq(tmtb.getTmtbSq());
|
|
|
+ regApplyGoods.setTmtbSq(moreBetter.getTmtbSq());
|
|
|
regApplyGoods.setTargetVal(regApplyGoods.getGoodsCd());
|
|
|
- regApplyGoods.setRegNo(tmtb.getRegNo());
|
|
|
- regApplyGoods.setUdpNo(tmtb.getUdpNo());
|
|
|
+ regApplyGoods.setRegNo(moreBetter.getRegNo());
|
|
|
+ regApplyGoods.setUdpNo(moreBetter.getUdpNo());
|
|
|
|
|
|
morebetterDao.saveMorebetterGoods(regApplyGoods);
|
|
|
}
|
|
|
|
|
|
// 제외상품
|
|
|
- Collection<MoreBetterGoods> exceptGoodsList = tmtb.getExceptGoodsListNew();
|
|
|
+ Collection<MoreBetterGoods> exceptGoodsList = gson.fromJson(moreBetter.getExceptGoodsList() , new TypeToken<Collection<MoreBetterGoods>>(){}.getType());
|
|
|
for(MoreBetterGoods regExceptGoods : exceptGoodsList){
|
|
|
// 다다익선 적용대상 설정(TB_TMTB_GOODS) 저장
|
|
|
// tmtbGoodsSq 생성
|
|
|
log.info("regExceptGoods.getTmtbGoodsSq = {}",regExceptGoods.getTmtbGoodsSq());
|
|
|
- if("".equals(regExceptGoods.getTmtbGoodsSq())){
|
|
|
- Integer tmtbGoodsSq = commonService.getNextSequence("SEQ_TMTB_GOODS");
|
|
|
+ Integer tmtbGoodsSq = regExceptGoods.getTmtbGoodsSq();
|
|
|
+ if(tmtbGoodsSq == null){
|
|
|
+ tmtbGoodsSq = commonService.getNextSequence("SEQ_TMTB_GOODS");
|
|
|
regExceptGoods.setTmtbGoodsSq(tmtbGoodsSq);
|
|
|
}
|
|
|
- regExceptGoods.setTmtbSq(tmtb.getTmtbSq());
|
|
|
+ regExceptGoods.setTmtbSq(moreBetter.getTmtbSq());
|
|
|
regExceptGoods.setTargetVal(regExceptGoods.getGoodsCd());
|
|
|
- regExceptGoods.setRegNo(tmtb.getRegNo());
|
|
|
- regExceptGoods.setUdpNo(tmtb.getUdpNo());
|
|
|
+ regExceptGoods.setRegNo(moreBetter.getRegNo());
|
|
|
+ regExceptGoods.setUdpNo(moreBetter.getUdpNo());
|
|
|
|
|
|
morebetterDao.saveMorebetterGoods(regExceptGoods);
|
|
|
}
|
|
|
|
|
|
// 다다익선 할인구간 저장
|
|
|
- Collection<MoreBetterSection> sectionGbList = tmtb.getSectionGbListNew();
|
|
|
+ Collection<MoreBetterSection> sectionGbList = gson.fromJson(moreBetter.getSectionGbList() , new TypeToken<Collection<MoreBetterSection>>(){}.getType());
|
|
|
for(MoreBetterSection regSection : sectionGbList){
|
|
|
log.info("regSection.getTmtbSectionSq = {}",regSection.getTmtbSectionSq());
|
|
|
log.info("regSection.getTmtbValSq = {}",regSection.getTmtbValSq());
|
|
|
// 다다익선 할인구간설정 2차조건(TB_TMTB_SECTION) 저장
|
|
|
// tmtbSectionSq 생성
|
|
|
- if("".equals(regSection.getTmtbSectionSq()) || regSection.getTmtbSectionSq() == null){
|
|
|
- Integer tmtbSectionSq = commonService.getNextSequence("SEQ_TMTB_SECTION");
|
|
|
+ Integer tmtbSectionSq = regSection.getTmtbSectionSq();
|
|
|
+ //if("".equals(regSection.getTmtbSectionSq()) || regSection.getTmtbSectionSq() == null){
|
|
|
+ if(tmtbSectionSq == null){
|
|
|
+ tmtbSectionSq = commonService.getNextSequence("SEQ_TMTB_SECTION");
|
|
|
regSection.setTmtbSectionSq(tmtbSectionSq);
|
|
|
}
|
|
|
// 다다익선 조건에 따른 할인혜택(금액할인) 설정(TB_TMTB_VAL) 저장
|
|
|
// tmtbValSq 생성
|
|
|
- if("".equals(regSection.getTmtbValSq()) || regSection.getTmtbValSq() == null){
|
|
|
- Integer tmtbValSq = commonService.getNextSequence("SEQ_TMTB_VAL");
|
|
|
+ Integer tmtbValSq = regSection.getTmtbValSq();
|
|
|
+ if(tmtbValSq == null){
|
|
|
+ tmtbValSq = commonService.getNextSequence("SEQ_TMTB_VAL");
|
|
|
regSection.setTmtbValSq(tmtbValSq);
|
|
|
}
|
|
|
- regSection.setTmtbSq(tmtb.getTmtbSq());
|
|
|
- regSection.setRegNo(tmtb.getRegNo());
|
|
|
- regSection.setUdpNo(tmtb.getUdpNo());
|
|
|
+ regSection.setTmtbSq(moreBetter.getTmtbSq());
|
|
|
+ regSection.setRegNo(moreBetter.getRegNo());
|
|
|
+ regSection.setUdpNo(moreBetter.getUdpNo());
|
|
|
|
|
|
morebetterDao.saveMorebetterSection(regSection);
|
|
|
morebetterDao.saveMorebetterVal(regSection);
|
|
|
}
|
|
|
|
|
|
// 다다익선 업체분담율(TB_TMTB_BURDEN) 저장
|
|
|
- Collection<MoreBetterBurden> burdenList = tmtb.getBurdenListNew();
|
|
|
+ Collection<MoreBetterBurden> burdenList = gson.fromJson(moreBetter.getBurdenList() , new TypeToken<Collection<MoreBetterBurden>>(){}.getType());
|
|
|
for (MoreBetterBurden regBurden : burdenList) {
|
|
|
// tmtbBurdenSq 생성
|
|
|
log.info("regBurden.getTmtbBurdenSq = {}",regBurden.getTmtbBurdenSq());
|
|
|
- if("".equals(regBurden.getTmtbBurdenSq())){
|
|
|
- Integer tmtbBurdenSq = commonService.getNextSequence("SEQ_TMTB_BURDEN");
|
|
|
+ Integer tmtbBurdenSq = regBurden.getTmtbBurdenSq();
|
|
|
+ if(tmtbBurdenSq == null){
|
|
|
+ tmtbBurdenSq = commonService.getNextSequence("SEQ_TMTB_BURDEN");
|
|
|
regBurden.setTmtbBurdenSq(tmtbBurdenSq);
|
|
|
}
|
|
|
- regBurden.setTmtbSq(tmtb.getTmtbSq());
|
|
|
- regBurden.setRegNo(tmtb.getRegNo());
|
|
|
- regBurden.setUdpNo(tmtb.getUdpNo());
|
|
|
+ regBurden.setTmtbSq(moreBetter.getTmtbSq());
|
|
|
+ regBurden.setRegNo(moreBetter.getRegNo());
|
|
|
+ regBurden.setUdpNo(moreBetter.getUdpNo());
|
|
|
|
|
|
morebetterDao.saveMorebetterBurden(regBurden);
|
|
|
}
|