|
@@ -141,8 +141,12 @@ public class TsaMorebetterService {
|
|
|
*/
|
|
*/
|
|
|
@Transactional("shopTxnManager")
|
|
@Transactional("shopTxnManager")
|
|
|
public void saveMoreBetterDetail(MoreBetter moreBetter) {
|
|
public void saveMoreBetterDetail(MoreBetter moreBetter) {
|
|
|
|
|
+ // <,> replace 처리
|
|
|
moreBetter.setRegNo(TsaSession.getInfo().getUserNo());
|
|
moreBetter.setRegNo(TsaSession.getInfo().getUserNo());
|
|
|
moreBetter.setUpdNo(TsaSession.getInfo().getUserNo());
|
|
moreBetter.setUpdNo(TsaSession.getInfo().getUserNo());
|
|
|
|
|
+
|
|
|
|
|
+ Gson gson = new Gson();
|
|
|
|
|
+ String jsonData = gson.toJson(moreBetter);
|
|
|
|
|
|
|
|
if ("U".equals(moreBetter.getMode())){
|
|
if ("U".equals(moreBetter.getMode())){
|
|
|
morebetterDao.deleteTmtbGoods(moreBetter); // TB_TMTB_GOODS DEL_YN 'Y' UPDATE
|
|
morebetterDao.deleteTmtbGoods(moreBetter); // TB_TMTB_GOODS DEL_YN 'Y' UPDATE
|
|
@@ -155,7 +159,7 @@ public class TsaMorebetterService {
|
|
|
// TMTB 마스터(TB_TMTB) 저장
|
|
// TMTB 마스터(TB_TMTB) 저장
|
|
|
morebetterDao.saveMorebetterMst(moreBetter);
|
|
morebetterDao.saveMorebetterMst(moreBetter);
|
|
|
|
|
|
|
|
- // 1. 공급업체
|
|
|
|
|
|
|
+ // 공급업체
|
|
|
for (MoreBetterGoods regSupplyComp : moreBetter.getSupplyCompList()) {
|
|
for (MoreBetterGoods regSupplyComp : moreBetter.getSupplyCompList()) {
|
|
|
regSupplyComp.setTmtbSq(moreBetter.getTmtbSq());
|
|
regSupplyComp.setTmtbSq(moreBetter.getTmtbSq());
|
|
|
regSupplyComp.setGoodsGb("G800_20");
|
|
regSupplyComp.setGoodsGb("G800_20");
|
|
@@ -165,8 +169,8 @@ public class TsaMorebetterService {
|
|
|
morebetterDao.saveMorebetterGoods(regSupplyComp);
|
|
morebetterDao.saveMorebetterGoods(regSupplyComp);
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
- // 2. 브랜드
|
|
|
|
|
- for (MoreBetterGoods regBrand : moreBetter.getBrandList()) {
|
|
|
|
|
|
|
+ // 브랜드
|
|
|
|
|
+ for(MoreBetterGoods regBrand : moreBetter.getBrandList()){
|
|
|
// 다다익선 적용대상 설정(TB_TMTB_GOODS) 저장
|
|
// 다다익선 적용대상 설정(TB_TMTB_GOODS) 저장
|
|
|
regBrand.setTmtbSq(moreBetter.getTmtbSq());
|
|
regBrand.setTmtbSq(moreBetter.getTmtbSq());
|
|
|
regBrand.setGoodsGb("G800_20");
|
|
regBrand.setGoodsGb("G800_20");
|
|
@@ -176,8 +180,8 @@ public class TsaMorebetterService {
|
|
|
morebetterDao.saveMorebetterGoods(regBrand);
|
|
morebetterDao.saveMorebetterGoods(regBrand);
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
- // 3. 기준상품
|
|
|
|
|
- for (MoreBetterGoods regDefaultGoods : moreBetter.getDefaultGoodsList()) {
|
|
|
|
|
|
|
+ // 기준상품
|
|
|
|
|
+ for(MoreBetterGoods regDefaultGoods : moreBetter.getDefaultGoodsList()){
|
|
|
// 다다익선 적용대상 설정(TB_TMTB_GOODS) 저장
|
|
// 다다익선 적용대상 설정(TB_TMTB_GOODS) 저장
|
|
|
regDefaultGoods.setTmtbSq(moreBetter.getTmtbSq());
|
|
regDefaultGoods.setTmtbSq(moreBetter.getTmtbSq());
|
|
|
regDefaultGoods.setTargetVal(regDefaultGoods.getGoodsCd());
|
|
regDefaultGoods.setTargetVal(regDefaultGoods.getGoodsCd());
|
|
@@ -186,9 +190,33 @@ public class TsaMorebetterService {
|
|
|
regDefaultGoods.setMultiDuplicateGoods(moreBetter.getMultiDuplicateGoods());
|
|
regDefaultGoods.setMultiDuplicateGoods(moreBetter.getMultiDuplicateGoods());
|
|
|
morebetterDao.saveMorebetterGoods(regDefaultGoods);
|
|
morebetterDao.saveMorebetterGoods(regDefaultGoods);
|
|
|
}
|
|
}
|
|
|
|
|
+
|
|
|
|
|
+ // 기준상품 + 적용상품 중복제거
|
|
|
|
|
+ List<MoreBetterGoods> dgList = moreBetter.getDefaultGoodsList(); // 기준상품
|
|
|
|
|
+ List<MoreBetterGoods> agList = moreBetter.getGridApplyGoodsList(); // 적용상품
|
|
|
|
|
+ List<MoreBetterGoods> applyList = new ArrayList<>();
|
|
|
|
|
+
|
|
|
|
|
+ int dupCnt = 0;
|
|
|
|
|
|
|
|
- // 4. 적용상품
|
|
|
|
|
- for (MoreBetterGoods regApplyGoods : moreBetter.getGridApplyGoodsList()) {
|
|
|
|
|
|
|
+ if (agList.size() > 0){
|
|
|
|
|
+ applyList = dgList;
|
|
|
|
|
+
|
|
|
|
|
+ for (int i=0 ; i<agList.size() ; i++) {
|
|
|
|
|
+ for (int j=0; j<dgList.size(); j++) {
|
|
|
|
|
+ if (agList.get(i).getGoodsCd().equals(dgList.get(j).getGoodsCd())) {
|
|
|
|
|
+ dupCnt++;
|
|
|
|
|
+ }
|
|
|
|
|
+ }
|
|
|
|
|
+ if (dupCnt == 0) {
|
|
|
|
|
+ applyList.add(agList.get(i));
|
|
|
|
|
+ }
|
|
|
|
|
+ }
|
|
|
|
|
+ } else {
|
|
|
|
|
+ applyList = dgList;
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+ for(MoreBetterGoods regApplyGoods : applyList){
|
|
|
|
|
+ // 다다익선 적용대상 설정(TB_TMTB_GOODS) 저장
|
|
|
regApplyGoods.setTmtbSq(moreBetter.getTmtbSq());
|
|
regApplyGoods.setTmtbSq(moreBetter.getTmtbSq());
|
|
|
regApplyGoods.setTargetVal(regApplyGoods.getGoodsCd());
|
|
regApplyGoods.setTargetVal(regApplyGoods.getGoodsCd());
|
|
|
regApplyGoods.setRegNo(moreBetter.getRegNo());
|
|
regApplyGoods.setRegNo(moreBetter.getRegNo());
|
|
@@ -196,9 +224,11 @@ public class TsaMorebetterService {
|
|
|
regApplyGoods.setMultiDuplicateGoods(moreBetter.getMultiDuplicateGoods());
|
|
regApplyGoods.setMultiDuplicateGoods(moreBetter.getMultiDuplicateGoods());
|
|
|
morebetterDao.saveMorebetterGoods(regApplyGoods);
|
|
morebetterDao.saveMorebetterGoods(regApplyGoods);
|
|
|
}
|
|
}
|
|
|
-
|
|
|
|
|
- // 5. 제외상품
|
|
|
|
|
|
|
+
|
|
|
|
|
+ // 제외상품
|
|
|
for(MoreBetterGoods regExceptGoods : moreBetter.getExceptGoodsList()){
|
|
for(MoreBetterGoods regExceptGoods : moreBetter.getExceptGoodsList()){
|
|
|
|
|
+ // 다다익선 적용대상 설정(TB_TMTB_GOODS) 저장
|
|
|
|
|
+ log.info("exception::{}",moreBetter.getExceptGoodsList());
|
|
|
regExceptGoods.setTmtbSq(moreBetter.getTmtbSq());
|
|
regExceptGoods.setTmtbSq(moreBetter.getTmtbSq());
|
|
|
regExceptGoods.setTargetVal(regExceptGoods.getGoodsCd());
|
|
regExceptGoods.setTargetVal(regExceptGoods.getGoodsCd());
|
|
|
regExceptGoods.setRegNo(moreBetter.getRegNo());
|
|
regExceptGoods.setRegNo(moreBetter.getRegNo());
|
|
@@ -207,8 +237,8 @@ public class TsaMorebetterService {
|
|
|
morebetterDao.saveMorebetterGoods(regExceptGoods);
|
|
morebetterDao.saveMorebetterGoods(regExceptGoods);
|
|
|
morebetterDao.saveMorebetterApplyGoods(regExceptGoods);
|
|
morebetterDao.saveMorebetterApplyGoods(regExceptGoods);
|
|
|
}
|
|
}
|
|
|
-
|
|
|
|
|
- // 6. 다다익선 할인구간 저장
|
|
|
|
|
|
|
+
|
|
|
|
|
+ // 다다익선 할인구간 저장
|
|
|
for(MoreBetterSection regSection : moreBetter.getSectionGbList()){
|
|
for(MoreBetterSection regSection : moreBetter.getSectionGbList()){
|
|
|
// 다다익선 할인구간설정 2차조건(TB_TMTB_SECTION) 저장
|
|
// 다다익선 할인구간설정 2차조건(TB_TMTB_SECTION) 저장
|
|
|
regSection.setTmtbSq(moreBetter.getTmtbSq());
|
|
regSection.setTmtbSq(moreBetter.getTmtbSq());
|
|
@@ -219,7 +249,7 @@ public class TsaMorebetterService {
|
|
|
morebetterDao.saveMorebetterVal(regSection);
|
|
morebetterDao.saveMorebetterVal(regSection);
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
- // 7. 다다익선 업체분담율(TB_TMTB_BURDEN) 저장
|
|
|
|
|
|
|
+ // 다다익선 업체분담율(TB_TMTB_BURDEN) 저장
|
|
|
for (MoreBetterBurden regBurden : moreBetter.getBurdenList()) {
|
|
for (MoreBetterBurden regBurden : moreBetter.getBurdenList()) {
|
|
|
regBurden.setTmtbSq(moreBetter.getTmtbSq());
|
|
regBurden.setTmtbSq(moreBetter.getTmtbSq());
|
|
|
regBurden.setRegNo(moreBetter.getRegNo());
|
|
regBurden.setRegNo(moreBetter.getRegNo());
|
|
@@ -227,51 +257,27 @@ public class TsaMorebetterService {
|
|
|
|
|
|
|
|
morebetterDao.saveMorebetterBurden(regBurden);
|
|
morebetterDao.saveMorebetterBurden(regBurden);
|
|
|
}
|
|
}
|
|
|
-
|
|
|
|
|
- // 기준상품 + 적용상품 중복제거
|
|
|
|
|
- List<MoreBetterGoods> dgList = moreBetter.getDefaultGoodsList(); // 기준상품
|
|
|
|
|
- List<MoreBetterGoods> agList = moreBetter.getGridApplyGoodsList(); // 적용상품
|
|
|
|
|
-
|
|
|
|
|
- // 적용상품존재여부체크
|
|
|
|
|
- //int dupCnt = 0;
|
|
|
|
|
- /*
|
|
|
|
|
- if (agList.size() > 0) {
|
|
|
|
|
- applyList = dgList;
|
|
|
|
|
-
|
|
|
|
|
- // 적용상품 반복문
|
|
|
|
|
- for (int i=0 ; i<agList.size() ; i++) {
|
|
|
|
|
- // 기준상품 반복문
|
|
|
|
|
- for (int j=0; j<dgList.size(); j++) {
|
|
|
|
|
- if (agList.get(i).getGoodsCd().equals(dgList.get(j).getGoodsCd())) {
|
|
|
|
|
- dupCnt++;
|
|
|
|
|
- }
|
|
|
|
|
- }
|
|
|
|
|
- if (dupCnt == 0) {
|
|
|
|
|
- applyList.add(agList.get(i));
|
|
|
|
|
- }
|
|
|
|
|
- }
|
|
|
|
|
- } else {
|
|
|
|
|
- applyList = dgList;
|
|
|
|
|
- }
|
|
|
|
|
- */
|
|
|
|
|
|
|
|
|
|
- // 업체 & 브랜드 상품
|
|
|
|
|
|
|
+ // 업체&브랜드 상품
|
|
|
MoreBetterGoods moreBetterGoods = new MoreBetterGoods();
|
|
MoreBetterGoods moreBetterGoods = new MoreBetterGoods();
|
|
|
StringBuilder sb = new StringBuilder();
|
|
StringBuilder sb = new StringBuilder();
|
|
|
StringBuilder sb3 = new StringBuilder();
|
|
StringBuilder sb3 = new StringBuilder();
|
|
|
-
|
|
|
|
|
- // 2021.11.09 적용상품등록
|
|
|
|
|
- if (agList.size() > 0) {
|
|
|
|
|
- for (int i=0; i<agList.size(); i++) {
|
|
|
|
|
- sb.append("SELECT '").append(agList.get(i).getGoodsCd()).append("' AS GOODS_CD ");
|
|
|
|
|
|
|
+ //int i = 1;
|
|
|
|
|
+
|
|
|
|
|
+ if (applyList.size() > 0) {
|
|
|
|
|
+ for (int i=0; i<applyList.size(); i++) {
|
|
|
|
|
+ log.info("goodCd >>> {}", applyList.get(i).getGoodsCd());
|
|
|
|
|
+ log.info("goodGb >>> {}", applyList.get(i).getGoodsGb());
|
|
|
|
|
+
|
|
|
|
|
+ sb.append("SELECT '").append(applyList.get(i).getGoodsCd()).append("' AS GOODS_CD ");
|
|
|
|
|
|
|
|
- if (i < agList.size()-1) {
|
|
|
|
|
|
|
+ if (i < applyList.size()-1) {
|
|
|
sb.append("\n UNION ALL \n");
|
|
sb.append("\n UNION ALL \n");
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
- sb3.append("SELECT '").append(agList.get(i).getGoodsCd()).append("' AS GOODS_CD ");
|
|
|
|
|
- sb3.append(" , '").append(agList.get(i).getGoodsGb()).append("' AS GOODS_GB ");
|
|
|
|
|
- if (i < agList.size()-1) {
|
|
|
|
|
|
|
+ sb3.append("SELECT '").append(applyList.get(i).getGoodsCd()).append("' AS GOODS_CD ");
|
|
|
|
|
+ sb3.append(" , '").append(applyList.get(i).getGoodsGb()).append("' AS GOODS_GB ");
|
|
|
|
|
+ if(i<applyList.size()-1){
|
|
|
sb3.append("\n UNION ALL \n");
|
|
sb3.append("\n UNION ALL \n");
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|
|
@@ -279,17 +285,16 @@ public class TsaMorebetterService {
|
|
|
|
|
|
|
|
moreBetterGoods.setApplySql(sb.toString());
|
|
moreBetterGoods.setApplySql(sb.toString());
|
|
|
moreBetterGoods.setApplyGbSql(sb3.toString());
|
|
moreBetterGoods.setApplyGbSql(sb3.toString());
|
|
|
-
|
|
|
|
|
|
|
+
|
|
|
StringBuilder sb2 = new StringBuilder();
|
|
StringBuilder sb2 = new StringBuilder();
|
|
|
- if (moreBetter.getExceptGoodsList().size() > 0) {
|
|
|
|
|
- for (int i=0; i<moreBetter.getExceptGoodsList().size(); i++) {
|
|
|
|
|
|
|
+ if(moreBetter.getExceptGoodsList().size()>0){
|
|
|
|
|
+ for(int i=0; i<moreBetter.getExceptGoodsList().size(); i++){
|
|
|
sb2.append("SELECT '").append(moreBetter.getExceptGoodsList().get(i).getGoodsCd()).append("' AS GOODS_CD ");
|
|
sb2.append("SELECT '").append(moreBetter.getExceptGoodsList().get(i).getGoodsCd()).append("' AS GOODS_CD ");
|
|
|
- if (i < moreBetter.getExceptGoodsList().size()-1) {
|
|
|
|
|
|
|
+ if(i<moreBetter.getExceptGoodsList().size()-1){
|
|
|
sb2.append("\n UNION ALL \n");
|
|
sb2.append("\n UNION ALL \n");
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|
|
|
-
|
|
|
|
|
moreBetterGoods.setExceptSql(sb2.toString());
|
|
moreBetterGoods.setExceptSql(sb2.toString());
|
|
|
moreBetterGoods.setTmtbSq(moreBetter.getTmtbSq());
|
|
moreBetterGoods.setTmtbSq(moreBetter.getTmtbSq());
|
|
|
moreBetterGoods.setRegNo(TsaSession.getInfo().getUserNo());
|
|
moreBetterGoods.setRegNo(TsaSession.getInfo().getUserNo());
|
|
@@ -301,31 +306,6 @@ public class TsaMorebetterService {
|
|
|
moreBetterGoods.setMultiExceptGoods(moreBetter.getMultiExceptGoods());
|
|
moreBetterGoods.setMultiExceptGoods(moreBetter.getMultiExceptGoods());
|
|
|
moreBetterGoods.setSectionGb(moreBetter.getSectionGb());
|
|
moreBetterGoods.setSectionGb(moreBetter.getSectionGb());
|
|
|
morebetterDao.insertMorebetterApplyGoods(moreBetterGoods);
|
|
morebetterDao.insertMorebetterApplyGoods(moreBetterGoods);
|
|
|
-
|
|
|
|
|
- // 2021.11.09 기본상품 있으면 기본상품 등록, 없으면 적용상품 등록
|
|
|
|
|
- // 2021.11.09 기본상품등록
|
|
|
|
|
- if (dgList.size() > 0) {
|
|
|
|
|
- for (int i=0; i<dgList.size(); i++) {
|
|
|
|
|
- sb3.append("SELECT '").append(dgList.get(i).getGoodsCd()).append("' AS GOODS_CD ");
|
|
|
|
|
- sb3.append(" , '").append(dgList.get(i).getGoodsGb()).append("' AS GOODS_GB ");
|
|
|
|
|
- if (i < agList.size()-1) {
|
|
|
|
|
- sb3.append("\n UNION ALL \n");
|
|
|
|
|
- }
|
|
|
|
|
- }
|
|
|
|
|
-
|
|
|
|
|
- moreBetterGoods.setTmtbSq(moreBetter.getTmtbSq());
|
|
|
|
|
- moreBetterGoods.setRegNo(TsaSession.getInfo().getUserNo());
|
|
|
|
|
- moreBetterGoods.setUpdNo(TsaSession.getInfo().getUserNo());
|
|
|
|
|
- moreBetterGoods.setMultiDefaultGoods(moreBetter.getMultiDefaultGoods());
|
|
|
|
|
- morebetterDao.insertMorebetterDefaultGoods(moreBetterGoods);
|
|
|
|
|
- }
|
|
|
|
|
- else {
|
|
|
|
|
- moreBetterGoods.setTmtbSq(moreBetter.getTmtbSq());
|
|
|
|
|
- moreBetterGoods.setRegNo(TsaSession.getInfo().getUserNo());
|
|
|
|
|
- moreBetterGoods.setUpdNo(TsaSession.getInfo().getUserNo());
|
|
|
|
|
- moreBetterGoods.setMultiDefaultGoods(moreBetter.getMultiDefaultGoods());
|
|
|
|
|
- morebetterDao.insertMorebetterDefaultGoodsApply(moreBetterGoods);
|
|
|
|
|
- }
|
|
|
|
|
|
|
|
|
|
log.info("newBurdenSq = {}, newTmtbSq = {}, newSupplyCd = {}, newBurdenRate = {} , newUseYn = {}");
|
|
log.info("newBurdenSq = {}, newTmtbSq = {}, newSupplyCd = {}, newBurdenRate = {} , newUseYn = {}");
|
|
|
}
|
|
}
|
|
@@ -483,7 +463,7 @@ public class TsaMorebetterService {
|
|
|
|
|
|
|
|
moreBetter.setMultiDefaultGoods(applyArr);
|
|
moreBetter.setMultiDefaultGoods(applyArr);
|
|
|
|
|
|
|
|
- if (moreBetter.getMultiDefaultGoods().length > 0) {
|
|
|
|
|
|
|
+ if(moreBetter.getMultiDefaultGoods().length > 0){
|
|
|
morebetterDao.deleteMorebetterApplyGoodsTemp(moreBetter);
|
|
morebetterDao.deleteMorebetterApplyGoodsTemp(moreBetter);
|
|
|
morebetterDao.insertMorebetterApplyGoodsTemp(moreBetter);
|
|
morebetterDao.insertMorebetterApplyGoodsTemp(moreBetter);
|
|
|
}
|
|
}
|