Prechádzať zdrojové kódy

다다익선 추가 수정

bin2107 5 rokov pred
rodič
commit
e5ffc0a2d1

+ 36 - 6
src/main/java/com/style24/admin/biz/web/TsaMarketingController.java

@@ -853,20 +853,50 @@ public class TsaMarketingController extends TsaBaseController {
 	 */
 	@PostMapping("/morebetter/changeStat")
 	@ResponseBody
-	public GagaResponse updateMorebetterStat(@RequestBody MoreBetter moreBetter) {
-		try {
+	public GagaMap updateMorebetterStat(@RequestBody MoreBetter moreBetter) {
+		GagaMap map = new GagaMap();
+
+		try{
 			log.info("getTmtbStat :::{}",moreBetter.getTmtbStat());
-			if("G232_11".equals(moreBetter.getTmtbStat())){
+			MoreBetterGoods moreBetterGoods = new MoreBetterGoods();
 
+			if("G232_11".equals(moreBetter.getTmtbStat())){
+				moreBetterGoods.setMultiSupplyCompCd(moreBetter.getMultiSupplyCompCd());
+				moreBetterGoods.setMultiBrand(moreBetter.getMultiBrand());
+				moreBetterGoods.setMultiApplyGoods(moreBetter.getMultiApplyGoods());
+				moreBetterGoods.setMultiExceptGoods(moreBetter.getMultiExceptGoods());
+
+				// TMTB_GOODS_TEMP TABLE TRUNCATE -> 다른 다다에서 사용중인 상품 조회 -> INSERT
+				moreBetterGoods.setApplyGoodsList(moreBetter.getApplyGoodsList());
+				moreBetterGoods.setSectionGb(moreBetter.getSectionGb());
+				morebetterService.createMorebetterGoodsTemp(moreBetterGoods);
+
+				// 다른 다다에서 사용중인 상품 조회
+				Collection<MoreBetterGoods> duplicateGoodsList = morebetterService.getMorebetterDuplicateList(moreBetterGoods);
+
+				// 조회 건수 있으면 -> 해당 상품코드 엑셀로 던져주기
+				if(duplicateGoodsList.size() > 0){
+					map.set("duplicateYn","Y");
+					map.set("duplicateGoodsList",duplicateGoodsList);
+					map.set("message", message.getMessage("FAIL_0001"));
+				}else{
+					// 조회 건수 없으면 -> 저장으로 넘어감
+					map.set("duplicateYn","N");
+					morebetterService.saveMoreBetterDetail(moreBetter);
+					//morebetterService.updateMorebetterStat(moreBetter);
+					map.set("message", message.getMessage("SUCC_0002"));
+				}
 			}else{
 				morebetterService.updateMorebetterStat(moreBetter);
+				map.set("message", message.getMessage("SUCC_0002"));
 			}
-		} catch (Exception e) {
+		} catch(Exception e) {
 			e.printStackTrace();
-			return super.error(message.getMessage("FAIL_0001"));
+			map.set("message", message.getMessage("FAIL_0001"));
+			return map;
 		}
 
-		return super.ok(message.getMessage("SUCC_0002"));
+		return map;
 	}
 
 	/**

+ 38 - 10
src/main/webapp/WEB-INF/views/marketing/MorebetterPopupForm.html

@@ -709,9 +709,7 @@
 	});
 
 	var fnMorebetterSaveCollback = function(result){
-		//mcxDialog.alert(result.message);
 		if(result.duplicateYn == "Y"){
-			//console.log('duplicateGoodsList Size::'+ result.duplicateGoodsList.length);
 			for(let i=0; i<result.duplicateGoodsList.length; i++){
 				gagaAgGrid.addRowData(gridOptionsDuplicateGoodsList, {"goodsCd" : result.duplicateGoodsList[i].goodsCd, "goodsNm" : result.duplicateGoodsList[i].goodsNm});
 			}
@@ -1235,7 +1233,7 @@
 			multiExceptGoods.push(item.goodsCd);
 		});
 
-		var data = {
+		/*var data = {
 			mode : $('#moreBetterForm input[name=mode]').val()
 			, tmtbSq : $('#moreBetterForm input[name=disTmtbSq]').val()
 			, tmtbNm : $('#moreBetterForm input[name=tmtbNm]').val()
@@ -1258,26 +1256,56 @@
 		};
 
 		var jsonData = JSON.stringify(data);
+		 */
 
-		gagajf.ajaxJsonSubmit('/marketing/morebetter/changeStat', jsonData, fnMorebetterChangeStatCollback);
-
-
-		/*mcxDialog.confirmC("프로모션을 진행하시겠습니까?<br/>진행 후에는 수정이 제한될 수 있습니다.", {
+		mcxDialog.confirmC("프로모션을 진행하시겠습니까?<br/>진행 후에는 수정이 제한될 수 있습니다.", {
 			btn: confirmBtnText,
 			btnClick: function(index) {
 				if(index == 1) {
-					let data = { tmtbStat : "G232_11"				// 진행
+					let data = {
+						mode : $('#moreBetterForm input[name=mode]').val()
 						, tmtbSq : $('#moreBetterForm input[name=disTmtbSq]').val()
+						, tmtbNm : $('#moreBetterForm input[name=tmtbNm]').val()
+						, tmtbStat : "G232_11"				// 진행
+						, tmtbStdt : $('#moreBetterForm input[name=tmtbStdt]').val()
+						, tmtbEddt : $('#moreBetterForm input[name=tmtbEddt]').val()
+						, sectionGb : $('input:radio[name="sectionGb"]:checked').val()
+						, applyGb : $('input:radio[name="sectionGb"]:checked').val()
+						, dcWay : $('input:radio[name="dcWay"]:checked').val()
+						, supplyCompList : allSupplyCompData
+						, brandList : allBrandData
+						, applyGoodsList : allApplyGoodsData
+						, exceptGoodsList : allExceptGoodsData
+						, burdenList : allApplyBurdenData
+						, sectionGbList : allSectionGbData
+						, multiSupplyCompCd : multiSupplyCompCd
+						, multiBrand : multiBrand
+						, multiApplyGoods : multiApplyGoods
+						, multiExceptGoods : multiExceptGoods
 					}
 					var jsonData = JSON.stringify(data);
-					gagajf.ajaxJsonSubmit('/marketing/morebetter/changeStat', jsonData, fnMorebetterFormClose);
+					gagajf.ajaxJsonSubmit('/marketing/morebetter/changeStat', jsonData, fnMorebetterChangeStatCollback);
 				}
 			}
-		});*/
+		});
 	});
 
 	var fnMorebetterChangeStatCollback = function(result){
 		console.log('<fnMorebetterChangeStatCollback result>');
+		if(result.duplicateYn == "Y"){
+			for(let i=0; i<result.duplicateGoodsList.length; i++){
+				gagaAgGrid.addRowData(gridOptionsDuplicateGoodsList, {"goodsCd" : result.duplicateGoodsList[i].goodsCd, "goodsNm" : result.duplicateGoodsList[i].goodsNm});
+			}
+			mcxDialog.alert("다른 다다익선에서 사용중인 상품이 존재합니다.");
+			gagaAgGrid.exportToExcel('다다익선 중복상품 목록', gridOptionsDuplicateGoodsList);
+			fnMorebetterFormClose();
+			$('#btnInit').trigger('click');
+			$('#btnSearch').trigger('click');
+		}else{
+			fnMorebetterFormClose();
+			$('#btnInit').trigger('click');
+			$('#btnSearch').trigger('click');
+		}
 	};
 
 	// 중지 버튼 클릭