Bladeren bron

상품평관리 기능 추가

gagamel 5 jaren geleden
bovenliggende
commit
1b00a86eeb
1 gewijzigde bestanden met toevoegingen van 124 en 53 verwijderingen
  1. 124 53
      src/main/java/com/style24/admin/biz/web/TsaMarketingController.java

+ 124 - 53
src/main/java/com/style24/admin/biz/web/TsaMarketingController.java

@@ -4,19 +4,10 @@ import java.util.ArrayList;
 import java.util.Collection;
 import java.util.List;
 
-import com.fasterxml.jackson.core.type.TypeReference;
-import com.fasterxml.jackson.databind.ObjectMapper;
-import com.gagaframework.web.util.GagaDateUtil;
-import com.gagaframework.web.util.GagaFileUtil;
-import com.style24.persistence.TscPageRequest;
-import com.style24.persistence.domain.*;
 import org.apache.commons.lang3.StringUtils;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.core.env.Environment;
-import org.springframework.core.io.InputStreamResource;
-import org.springframework.http.ResponseEntity;
 import org.springframework.stereotype.Controller;
-import org.springframework.ui.Model;
 import org.springframework.web.bind.annotation.GetMapping;
 import org.springframework.web.bind.annotation.PostMapping;
 import org.springframework.web.bind.annotation.RequestBody;
@@ -25,24 +16,32 @@ import org.springframework.web.bind.annotation.RequestParam;
 import org.springframework.web.bind.annotation.ResponseBody;
 import org.springframework.web.servlet.ModelAndView;
 
-import com.style24.admin.biz.service.TsaBusinessService;
 import com.style24.admin.biz.service.TsaCommonService;
 import com.style24.admin.biz.service.TsaCouponService;
 import com.style24.admin.biz.service.TsaFreegiftPromotionService;
 import com.style24.admin.biz.service.TsaMorebetterService;
 import com.style24.admin.biz.service.TsaRendererService;
-import com.style24.admin.biz.service.TsaSystemService;
+import com.style24.admin.biz.service.TsaReviewService;
 import com.style24.admin.support.controller.TsaBaseController;
 import com.style24.admin.support.security.session.TsaSession;
 import com.style24.core.support.message.TscMessageByLocale;
+import com.style24.persistence.TscPageRequest;
+import com.style24.persistence.domain.CommonCode;
+import com.style24.persistence.domain.Coupon;
+import com.style24.persistence.domain.CouponRefval;
+import com.style24.persistence.domain.CustCoupon;
+import com.style24.persistence.domain.FreeGoodsPromotion;
+import com.style24.persistence.domain.MoreBetter;
+import com.style24.persistence.domain.MoreBetterBurden;
+import com.style24.persistence.domain.MoreBetterGoods;
+import com.style24.persistence.domain.MoreBetterSection;
+import com.style24.persistence.domain.Review;
 
 import lombok.extern.slf4j.Slf4j;
 
 import com.gagaframework.web.parameter.GagaMap;
 import com.gagaframework.web.rest.server.GagaResponse;
 
-import javax.servlet.http.HttpServletRequest;
-
 /**
  * 마케팅 Controller
  * @author xodud1202
@@ -62,24 +61,99 @@ public class TsaMarketingController extends TsaBaseController {
 	@Autowired
 	private TsaFreegiftPromotionService freegiftService;
 
-	@Autowired
-	private TsaBusinessService businessService;
-
 	@Autowired
 	private TsaRendererService rendererService;
 
 	@Autowired
 	private TsaCommonService commonService;
 
-	@Autowired
-	private TsaSystemService systemService;
-
 	@Autowired
 	private TsaMorebetterService morebetterService;
 
 	@Autowired
 	private TsaCouponService couponService;
 
+	@Autowired
+	private TsaReviewService reviewService;
+
+	/**
+	 * 상품평관리 화면
+	 * @return
+	 * @author gagamel
+	 * @since 2021. 1. 25
+	 */
+	@GetMapping("/review/form")
+	public ModelAndView reviewForm() {
+		ModelAndView mav = new ModelAndView("marketing/ReviewForm");
+
+		// 사이즈점수
+		mav.addObject("scoreSizeList", rendererService.getAvailCommonCodeList("G040"));
+
+		// 색상점수
+		mav.addObject("scoreColorList", rendererService.getAvailCommonCodeList("G039"));
+
+		// 핏점수
+		mav.addObject("scoreFitList", rendererService.getAvailCommonCodeList("G042"));
+
+		// 두께감점수
+		mav.addObject("scoreThickList", rendererService.getAvailCommonCodeList("G079"));
+
+		// 무게감점수
+		mav.addObject("scoreWeightList", rendererService.getAvailCommonCodeList("G080"));
+
+		// 발볼넓이점수(G041)
+		mav.addObject("scoreBallList", rendererService.getAvailCommonCodeList("G041"));
+
+		// 포인트지급상태
+		mav.addObject("pntGiveStatList", rendererService.getAvailCommonCodeList("G043"));
+
+//		// 품목
+//		mav.addObject("itemkindList", rendererService.getAllItemkindList());
+//		
+//		// 브랜드그룹
+//		mav.addObject("brandGrpNmList", rendererService.getBrandGroupList());
+//		
+//		// MD
+//		mav.addObject("brandMdList", rendererService.getBrandMdList());
+//
+//		// 카테고리
+//		mav.addObject("tCateList", rendererService.getTCategoryList(""));
+//
+//		// 브랜드 조회
+//		mav.addObject("brandList", rendererService.getSupplyCompanyBrandList(""));
+
+		return mav;
+	}
+
+	/**
+	 * 상품평 목록
+	 * @param review - 상품평 정보
+	 * @return
+	 * @author gagamel
+	 * @since 2021. 1. 25
+	 */
+	@PostMapping("/review/list")
+	@ResponseBody
+	public GagaMap getReviewList(@RequestBody Review review) {
+		GagaMap result = new GagaMap();
+
+		// multi row 검색관련 처리
+		if (StringUtils.isNotBlank(review.getGoodsCd())) {
+			review.setGoodsCds(review.getGoodsCd().replaceAll("\r", "").split("\n"));
+		}
+
+		// 상품평 목록
+		Collection<Review> reviewList = reviewService.getReviewList(review);
+
+		review.setPageable(new TscPageRequest(review.getPageNo() - 1, review.getPageSize()));
+		review.getPageable().setTotalCount(reviewList.size());
+
+		result.set("paging", review);
+		result.set("dataList", reviewList);
+
+		return result;
+	}
+
 	/* xodud1202 진행 */
 	/**
 	 * 사은품 프로모션 관리 화면
@@ -160,7 +234,7 @@ public class TsaMarketingController extends TsaBaseController {
 	public GagaResponse freeGoodsPromotionSave(@RequestBody FreeGoodsPromotion param) {
 		try {
 			freegiftService.saveFreegoodsPromotionInfo(param);
-		} catch(Exception e) {
+		} catch (Exception e) {
 			e.printStackTrace();
 			return super.error(message.getMessage("FAIL_0001"));
 		}
@@ -180,7 +254,7 @@ public class TsaMarketingController extends TsaBaseController {
 	public GagaResponse freeGoodsPromotionChangeStat(@RequestBody FreeGoodsPromotion param) {
 		try {
 			freegiftService.updateFreegoodsPromotionStat(param);
-		} catch(Exception e) {
+		} catch (Exception e) {
 			e.printStackTrace();
 			return super.error(message.getMessage("FAIL_0001"));
 		}
@@ -188,7 +262,6 @@ public class TsaMarketingController extends TsaBaseController {
 		return super.ok(message.getMessage("SUCC_0001"));
 	}
 
-
 	/* // xodud1202 진행 */
 
 	/* JSM 진행 */
@@ -249,7 +322,7 @@ public class TsaMarketingController extends TsaBaseController {
 	 */
 	@GetMapping("/coupon/popup/form")
 	@ResponseBody
-	public ModelAndView couponCreatePopup(@RequestParam(value="cpnId") String cpnId ) {
+	public ModelAndView couponCreatePopup(@RequestParam(value = "cpnId") String cpnId) {
 		ModelAndView mav = new ModelAndView();
 		String num = "";
 		String mode = "N";
@@ -297,17 +370,17 @@ public class TsaMarketingController extends TsaBaseController {
 		// 입점업체 조회
 		mav.addObject("ibSupplyCompList", rendererService.getSupplyCompanyList("", "N"));
 		// 정상/이월 조회
-		mav.addObject("formalGbList" , rendererService.getCommonCodeList("G009"));
+		mav.addObject("formalGbList", rendererService.getCommonCodeList("G009"));
 		// 카테고리 구분 조회
-		mav.addObject("cateGbList" , rendererService.getCommonCodeList("G032"));
+		mav.addObject("cateGbList", rendererService.getCommonCodeList("G032"));
 		// 자사 브랜드 조회
-		mav.addObject("selfBrandList" , couponService.getSelfBrandList());
+		mav.addObject("selfBrandList", couponService.getSelfBrandList());
 		// 사이트코드 조회
 		mav.addObject("siteCdList", rendererService.getCommonCodeList("G000"));
 		// 쿠폰상태 조회
 		mav.addObject("cpnStatList", rendererService.getCommonCodeList("G232"));
 		// 쿠폰 유형 조회
-		mav.addObject("cpnTypeList", rendererService.getCommonCodeList("G230" , "Y"));
+		mav.addObject("cpnTypeList", rendererService.getCommonCodeList("G230", "Y"));
 		// 사용가능 고객구분 조회
 		mav.addObject("usableCustGbList", rendererService.getCommonCodeList("G100"));
 		// 사용가능 고객등급 조회
@@ -324,29 +397,29 @@ public class TsaMarketingController extends TsaBaseController {
 		mav.addObject("upperAfLinkCdList", rendererService.getCommonCodeList("G053"));
 
 		// 이미 쿠폰 아이디가 있으면 적용대상 조회
-		if(!StringUtils.isBlank(cpnId)) {
+		if (!StringUtils.isBlank(cpnId)) {
 			mode = "U";
 			issueCnt = couponService.getCouponIssueCnt(cpnId);
 			// 쿠폰상세조회
-			mav.addObject("cpnDetail" , couponService.getCouponDetail(cpnId));
+			mav.addObject("cpnDetail", couponService.getCouponDetail(cpnId));
 			// 쿠폰적용대상 - 공급업체 조회
-			mav.addObject("cpnDtlRefvalSupplyCompList" , couponService.getCouponRefvalSupplyCompList(cpnId));
+			mav.addObject("cpnDtlRefvalSupplyCompList", couponService.getCouponRefvalSupplyCompList(cpnId));
 			// 쿠폰적용대상 - 적용상품 조회
-			mav.addObject("cpnDtlRefvalApplyGoodsList" , couponService.getCouponRefvalGoodsList(cpnId , "G260_10"));
+			mav.addObject("cpnDtlRefvalApplyGoodsList", couponService.getCouponRefvalGoodsList(cpnId, "G260_10"));
 			// 쿠폰적용대상 - 카테고리 조회
-			mav.addObject("cpnDtlRefvalCateList" , couponService.getCouponRefvalCategoryList(cpnId));
+			mav.addObject("cpnDtlRefvalCateList", couponService.getCouponRefvalCategoryList(cpnId));
 			// 쿠폰적용대상 - 브랜드 조회
-			mav.addObject("cpnDtlRefvalBrandList" , couponService.getCouponRefvalBrandList(cpnId));
+			mav.addObject("cpnDtlRefvalBrandList", couponService.getCouponRefvalBrandList(cpnId));
 			// 쿠폰적용대상 - 제외상품 조회
-			mav.addObject("cpnDtlRefvalExceptGoodsList" , couponService.getCouponRefvalGoodsList(cpnId , "G260_14"));
+			mav.addObject("cpnDtlRefvalExceptGoodsList", couponService.getCouponRefvalGoodsList(cpnId, "G260_14"));
 			// 쿠폰 입점업체분담율 조회
-			mav.addObject("cpnDtlBurdenList" , couponService.getCouponBurdenList(cpnId));
+			mav.addObject("cpnDtlBurdenList", couponService.getCouponBurdenList(cpnId));
 		}
 
 		//issueCnt = 3;
 
-		mav.addObject("mode" , mode);
-		mav.addObject("issueCnt" , issueCnt);
+		mav.addObject("mode", mode);
+		mav.addObject("issueCnt", issueCnt);
 
 		mav.setViewName("marketing/CouponPopupForm");
 		return mav;
@@ -386,7 +459,6 @@ public class TsaMarketingController extends TsaBaseController {
 		return super.ok(message.getMessage("SUCC_0001"));
 	}
 
-
 	/**
 	 * 쿠폰발행팝업
 	 * @param
@@ -439,14 +511,14 @@ public class TsaMarketingController extends TsaBaseController {
 		// 시간 시 리스트 세팅
 		mav.addObject("hhList", hhList);
 		// 사이트조회
-		mav.addObject("siteCdList" , rendererService.getCommonCodeList("G000"));
+		mav.addObject("siteCdList", rendererService.getCommonCodeList("G000"));
 		// 사용가능 고객구분 조회
 		mav.addObject("usableCustGbList", rendererService.getCommonCodeList("G100"));
 		// 사용가능 고객등급 조회
 		mav.addObject("usableCustGradeList", rendererService.getCommonCodeList("G110"));
 		// 쿠폰발행사유 조회
 		mav.addObject("cpnPubReasonList", rendererService.getCommonCodeList("G068"));
-		
+
 		mav.setViewName("marketing/CouponPubForCustPopupForm");
 
 		return mav;
@@ -461,7 +533,7 @@ public class TsaMarketingController extends TsaBaseController {
 	 */
 	@PostMapping("/coupon/insertCustPub")
 	@ResponseBody
-	public GagaResponse saveCouponCustPub(@RequestBody CustCoupon custCoupon ){
+	public GagaResponse saveCouponCustPub(@RequestBody CustCoupon custCoupon) {
 		couponService.saveCouponCustPub(custCoupon);
 
 		return super.ok(message.getMessage("SUCC_0006"));
@@ -582,7 +654,7 @@ public class TsaMarketingController extends TsaBaseController {
 	 */
 	@PostMapping("/morebetter/save")
 	@ResponseBody
-	public GagaMap saveMorebetterDetail(@RequestBody MoreBetter moreBetter){
+	public GagaMap saveMorebetterDetail(@RequestBody MoreBetter moreBetter) {
 		String result = "";
 		GagaMap map = new GagaMap();
 
@@ -595,7 +667,7 @@ public class TsaMarketingController extends TsaBaseController {
 		moreBetterGoods.setMultiSupplyCompCd(multiSupplyCompCd);
 		moreBetterGoods.setMultiBrand(multiBrand);
 		moreBetterGoods.setMultiGoods(multiGoods);
-		log.info("[1 saveMorebetterDetail moreBetterGoods]{}",moreBetterGoods);
+		log.info("[1 saveMorebetterDetail moreBetterGoods]{}", moreBetterGoods);
 
 		// TMTB_GOODS_TEMP TABLE TRUNCATE -> 다른 다다에서 사용중인 상품 조회 -> INSERT
 		morebetterService.createMorebetterGoodsTemp(moreBetterGoods);
@@ -603,18 +675,18 @@ public class TsaMarketingController extends TsaBaseController {
 		// 다른 다다에서 사용중인 상품 조회
 		Collection<MoreBetterGoods> duplicateGoodsList = morebetterService.getMorebetterDuplicateList(moreBetterGoods);
 
-		log.info("[1 duplicateGoodsList size]{}",duplicateGoodsList.size());
+		log.info("[1 duplicateGoodsList size]{}", duplicateGoodsList.size());
 
 		// SELECT -> 지금 내가 선택한 업체&브랜드 + 적용상품에 해당하는 상품 조회 MINUS TMTB_GOODS_TEMP 상품
 		// 조회 건수 있으면 -> 해당 상품코드 엑셀로 던져주기
-		if(duplicateGoodsList.size() > 0){
-			map.set("duplicateYn","Y");
+		if (duplicateGoodsList.size() > 0) {
+			map.set("duplicateYn", "Y");
 			map.set("msg", result);
-			map.set("duplicateGoodsList",duplicateGoodsList);
-		}else{
+			map.set("duplicateGoodsList", duplicateGoodsList);
+		} else {
 			// 조회 건수 없으면 -> 저장으로 넘어감
 			//morebetterService.saveMoreBetterDetail(moreBetter);
-			map.set("duplicateYn","N");
+			map.set("duplicateYn", "N");
 			map.set("msg", message.getMessage("SUCC_0001"));
 		}
 
@@ -623,7 +695,7 @@ public class TsaMarketingController extends TsaBaseController {
 
 	@PostMapping("/morebetter/save2")
 	@ResponseBody
-	public GagaResponse saveMorebetterDetail2(@RequestBody MoreBetter moreBetter){
+	public GagaResponse saveMorebetterDetail2(@RequestBody MoreBetter moreBetter) {
 		String[] multiSupplyCompCd = moreBetter.getSupplyCompArr().split(",");
 		String[] multiBrand = moreBetter.getBrandArr().split(",");
 		String[] multiGoods = moreBetter.getGoodsArr().split(",");
@@ -633,7 +705,7 @@ public class TsaMarketingController extends TsaBaseController {
 		moreBetterGoods.setMultiSupplyCompCd(multiSupplyCompCd);
 		moreBetterGoods.setMultiBrand(multiBrand);
 		moreBetterGoods.setMultiGoods(multiGoods);
-		log.info("[saveMorebetterDetail moreBetterGoods]{}",moreBetterGoods);
+		log.info("[saveMorebetterDetail moreBetterGoods]{}", moreBetterGoods);
 
 		// TMTB_GOODS_TEMP TABLE TRUNCATE -> 다른 다다에서 사용중인 상품 조회 -> INSERT
 		morebetterService.createMorebetterGoodsTemp(moreBetterGoods);
@@ -641,13 +713,12 @@ public class TsaMarketingController extends TsaBaseController {
 		// 다른 다다에서 사용중인 상품 조회
 		Collection<MoreBetterGoods> duplicateGoodsList = morebetterService.getMorebetterDuplicateList(moreBetterGoods);
 
-		log.info("[duplicateGoodsList size]{}",duplicateGoodsList.size());
+		log.info("[duplicateGoodsList size]{}", duplicateGoodsList.size());
 
 		// SELECT -> 지금 내가 선택한 업체&브랜드에 해당하는 상품 조회 MINUS TMTB_GOODS_TEMP 상품
 		// 조회 건수 있으면 -> 해당 상품코드 엑셀로 던져주기
 		// 조회 건수 없으면 -> 저장으로 넘어감
 
-
 		//morebetterService.saveMoreBetterDetail(moreBetter);
 		return super.ok(message.getMessage("SUCC_0001"));
 	}