|
@@ -1,9 +1,12 @@
|
|
|
package com.style24.front.biz.web;
|
|
package com.style24.front.biz.web;
|
|
|
|
|
|
|
|
|
|
+import java.util.ArrayList;
|
|
|
import java.util.Collection;
|
|
import java.util.Collection;
|
|
|
|
|
|
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
|
import org.springframework.stereotype.Controller;
|
|
import org.springframework.stereotype.Controller;
|
|
|
|
|
+import org.springframework.web.bind.annotation.PostMapping;
|
|
|
|
|
+import org.springframework.web.bind.annotation.RequestBody;
|
|
|
import org.springframework.web.bind.annotation.RequestMapping;
|
|
import org.springframework.web.bind.annotation.RequestMapping;
|
|
|
import org.springframework.web.bind.annotation.ResponseBody;
|
|
import org.springframework.web.bind.annotation.ResponseBody;
|
|
|
import org.springframework.web.servlet.ModelAndView;
|
|
import org.springframework.web.servlet.ModelAndView;
|
|
@@ -55,8 +58,6 @@ public class TsfOrderController extends TsfBaseController {
|
|
|
public ModelAndView orderNoMember(Order order, RedirectAttributes redirectAttributes) {
|
|
public ModelAndView orderNoMember(Order order, RedirectAttributes redirectAttributes) {
|
|
|
ModelAndView mav = new ModelAndView();
|
|
ModelAndView mav = new ModelAndView();
|
|
|
|
|
|
|
|
- String rtnView = "";
|
|
|
|
|
-
|
|
|
|
|
// 비회원 주문시 로직 정리
|
|
// 비회원 주문시 로직 정리
|
|
|
// @ web 인 경우에는 고객정보 입력 화면 후 주문서 이동 후 본인인중
|
|
// @ web 인 경우에는 고객정보 입력 화면 후 주문서 이동 후 본인인중
|
|
|
// @ web 의 경우에는 입력한 고객정보와 인증받은 고객정보가 다른경우 고객정보 업데이트
|
|
// @ web 의 경우에는 입력한 고객정보와 인증받은 고객정보가 다른경우 고객정보 업데이트
|
|
@@ -76,6 +77,8 @@ public class TsfOrderController extends TsfBaseController {
|
|
|
return mav;
|
|
return mav;
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
|
|
+
|
|
|
|
|
+
|
|
|
/**
|
|
/**
|
|
|
* 주문페이지
|
|
* 주문페이지
|
|
|
*
|
|
*
|
|
@@ -92,58 +95,31 @@ public class TsfOrderController extends TsfBaseController {
|
|
|
// TODO
|
|
// TODO
|
|
|
// 1.비회주문, 회원 주문 판단 로직, 고객정보 세션 판단
|
|
// 1.비회주문, 회원 주문 판단 로직, 고객정보 세션 판단
|
|
|
// 세션고객정보가 존재하면 회원주문 없으면 비회원 주문
|
|
// 세션고객정보가 존재하면 회원주문 없으면 비회원 주문
|
|
|
-
|
|
|
|
|
- // 임시 jsessionId
|
|
|
|
|
- String jsessionId = "aaec62cc-5f91-47bb-ba65-ebc9a61385cf";
|
|
|
|
|
- Boolean noMember = true;
|
|
|
|
|
|
|
|
|
|
- // TODO 로그인체크 로직 추가
|
|
|
|
|
- // 1.0 회원, 비회원 여부 판단
|
|
|
|
|
- if (TsfSession.getInfo().getCustNo() == null) {
|
|
|
|
|
- order.setJsessionId(jsessionId);
|
|
|
|
|
- } else {
|
|
|
|
|
- noMember = false;
|
|
|
|
|
|
|
+ // 1. 로그인체크 후 custNo 설정
|
|
|
|
|
+ if (TsfSession.isLogin()) {
|
|
|
order.setCustNo(TsfSession.getInfo().getCustNo()); // 고객번호등록
|
|
order.setCustNo(TsfSession.getInfo().getCustNo()); // 고객번호등록
|
|
|
|
|
+ } else {
|
|
|
|
|
+ order.setJsessionId(TsfSession.getSessionId());
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
// TODO
|
|
// TODO
|
|
|
- // 1.1 카트시퀀스가 없을때 처리 장바구니로 이동
|
|
|
|
|
|
|
+ // 1.1 카트시퀀스가 정보가 없을때 처리 장바구니로 이동
|
|
|
if (order.getCartSqArr() == null) {
|
|
if (order.getCartSqArr() == null) {
|
|
|
mav.setViewName("redirect:/order/noMember"); // 비회원주문서화면
|
|
mav.setViewName("redirect:/order/noMember"); // 비회원주문서화면
|
|
|
return mav;
|
|
return mav;
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
- Order custemerInfo = new Order();
|
|
|
|
|
- Order deliveryAddrInfo = new Order();
|
|
|
|
|
-
|
|
|
|
|
- // TODO 로그인체크 로직 추가
|
|
|
|
|
- if (noMember) {
|
|
|
|
|
- // 1.1 주문고객 정보조회
|
|
|
|
|
- custemerInfo.setCustNm(order.getCustNm());
|
|
|
|
|
- custemerInfo.setCellPhnno(order.getCellPhnno());
|
|
|
|
|
- custemerInfo.setEmail(order.getEmail());
|
|
|
|
|
|
|
+ // 2. 로그인정보 체크 후 비회원 고객정보 설정
|
|
|
|
|
+ if (TsfSession.isLogin()) {
|
|
|
|
|
+ order.setCustNm("");
|
|
|
|
|
+ order.setCellPhnno("");
|
|
|
|
|
+ order.setEmail("");
|
|
|
|
|
|
|
|
- // 1.2 배송지 정보조회 (기본배송지)
|
|
|
|
|
- deliveryAddrInfo.setDelvAddrNm(order.getCustNm());
|
|
|
|
|
- deliveryAddrInfo.setRecipZipcode(order.getRecipZipcode());
|
|
|
|
|
- deliveryAddrInfo.setRecipBaseAddr(order.getRecipBaseAddr());
|
|
|
|
|
- deliveryAddrInfo.setRecipDtlAddr(order.getRecipDtlAddr());
|
|
|
|
|
- deliveryAddrInfo.setDelvMemo("직접받고 부재시 문 앞");
|
|
|
|
|
- } else {
|
|
|
|
|
- // 1.1 주문고객 정보조회
|
|
|
|
|
- custemerInfo = coreOrderService.getCustemerInfo(order);
|
|
|
|
|
-
|
|
|
|
|
- // 1.2 배송지 정보조회 (기본배송지)
|
|
|
|
|
- deliveryAddrInfo = coreOrderService.getDeliveryAddrInfo(order);
|
|
|
|
|
-
|
|
|
|
|
- if (deliveryAddrInfo == null) {
|
|
|
|
|
- deliveryAddrInfo = new Order();
|
|
|
|
|
- deliveryAddrInfo.setDelvAddrNm(custemerInfo.getCustNm());
|
|
|
|
|
- deliveryAddrInfo.setRecipZipcode("");
|
|
|
|
|
- deliveryAddrInfo.setRecipBaseAddr("");
|
|
|
|
|
- deliveryAddrInfo.setRecipDtlAddr("");
|
|
|
|
|
- deliveryAddrInfo.setDelvMemo("직접받고 부재시 문 앞");
|
|
|
|
|
- }
|
|
|
|
|
|
|
+ order.setDelvAddrNm("");
|
|
|
|
|
+ order.setRecipZipcode("");
|
|
|
|
|
+ order.setRecipBaseAddr("");
|
|
|
|
|
+ order.setRecipDtlAddr("");
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
// TODO 임시 장바구니
|
|
// TODO 임시 장바구니
|
|
@@ -156,37 +132,12 @@ public class TsfOrderController extends TsfBaseController {
|
|
|
|
|
|
|
|
// 2.2 배송단위별 장바구니 상품 건수 조회 (장바구니상품)
|
|
// 2.2 배송단위별 장바구니 상품 건수 조회 (장바구니상품)
|
|
|
GagaMap delvOrderMap = coreOrderService.getCartDelvGoodsCntList(tmtbGoodsApplyList);
|
|
GagaMap delvOrderMap = coreOrderService.getCartDelvGoodsCntList(tmtbGoodsApplyList);
|
|
|
-
|
|
|
|
|
- // 3. 할인구간정보조회
|
|
|
|
|
- // 3.2 상품쿠폰, 장바구니쿠폰 목록 조회
|
|
|
|
|
- GagaMap goodsCartCpnMap = coreOrderService.getGoodsCartCpnApplyGoodsList(order);
|
|
|
|
|
-
|
|
|
|
|
- Collection<Order> goodsCpnList = (Collection<Order>) goodsCartCpnMap.get("goodsCpnList");
|
|
|
|
|
- Collection<Order> cartCpnList = (Collection<Order>) goodsCartCpnMap.get("cartCpnList");
|
|
|
|
|
-
|
|
|
|
|
- // 3.2.1 상품기준 ---> 상품쿠폰 적용된 상품 목록
|
|
|
|
|
- Collection<Order> goodsApplyCpnList = coreOrderService.getGoodsCpnApplyList(tmtbGoodsApplyList, goodsCpnList);
|
|
|
|
|
-
|
|
|
|
|
- // 3.2.2 장바구니쿠폰기준 ---> 상품목록
|
|
|
|
|
- cartCpnList = coreOrderService.getCartCpnApplyList(tmtbGoodsApplyList, cartCpnList);
|
|
|
|
|
-
|
|
|
|
|
- // 3.3 배송비쿠폰목록 조회
|
|
|
|
|
- Collection<Order> delvCpnList = coreOrderService.getDelvCpnList(order);
|
|
|
|
|
-
|
|
|
|
|
- Collection<Order> delvFeeCdList = (Collection<Order>) delvOrderMap.get("delvFeeCdList");
|
|
|
|
|
-
|
|
|
|
|
- // 3.3.1 배소업체기준 ---> 배송비쿠폰
|
|
|
|
|
- delvCpnList = coreOrderService.getDelvCpnApplyList(delvFeeCdList, delvCpnList);
|
|
|
|
|
|
|
|
|
|
// 3.4 고객 보유 포인트 정보 조회
|
|
// 3.4 고객 보유 포인트 정보 조회
|
|
|
int rmPntAmt = coreOrderService.getCustPointInfo(order);
|
|
int rmPntAmt = coreOrderService.getCustPointInfo(order);
|
|
|
|
|
|
|
|
// 3.5 고객 보유 상품권 정보 조회
|
|
// 3.5 고객 보유 상품권 정보 조회
|
|
|
int rmGfcdAmt = coreOrderService.getGiftcardInfo(order);
|
|
int rmGfcdAmt = coreOrderService.getGiftcardInfo(order);
|
|
|
-
|
|
|
|
|
- // 4. 사은품 정보
|
|
|
|
|
- // 4.1 장바구니상품 사음품 적용 정보 조회
|
|
|
|
|
- GagaMap resultMap = coreFreegiftService.getOrderFreegift(order);
|
|
|
|
|
|
|
|
|
|
// 101. 상품정보
|
|
// 101. 상품정보
|
|
|
mav.addObject("cartGoodsList" , tmtbGoodsApplyList); // 장바구니상품목록 (즉시할인쿠폰적용)
|
|
mav.addObject("cartGoodsList" , tmtbGoodsApplyList); // 장바구니상품목록 (즉시할인쿠폰적용)
|
|
@@ -203,17 +154,228 @@ public class TsfOrderController extends TsfBaseController {
|
|
|
mav.addObject("delvAllCartList" , delvOrderMap.get("delvAllCartList")); // 전체배송목록
|
|
mav.addObject("delvAllCartList" , delvOrderMap.get("delvAllCartList")); // 전체배송목록
|
|
|
mav.addObject("sumDelvFee" , delvOrderMap.get("sumDelvFee")); // 배송비합계
|
|
mav.addObject("sumDelvFee" , delvOrderMap.get("sumDelvFee")); // 배송비합계
|
|
|
|
|
|
|
|
- // 102. 고객정보
|
|
|
|
|
- mav.addObject("custemerInfo" , custemerInfo); // 고객정보
|
|
|
|
|
- mav.addObject("deliveryAddrInfo" , deliveryAddrInfo); // 배송지정보
|
|
|
|
|
- mav.addObject("shotDelvYn" , order.getShotDelvYn()); // 장바구니 총알배송여부
|
|
|
|
|
-
|
|
|
|
|
|
|
+ // 102. 주문정보
|
|
|
|
|
+ mav.addObject("order" , order); // 주문정보
|
|
|
|
|
+
|
|
|
// 103. 할인정보
|
|
// 103. 할인정보
|
|
|
mav.addObject("tmtbGoodsApplyList" , tmtbGoodsApplyList); // 다다익선상품 적용목록
|
|
mav.addObject("tmtbGoodsApplyList" , tmtbGoodsApplyList); // 다다익선상품 적용목록
|
|
|
|
|
+ mav.addObject("orgGoodsSumAmt" , goodsDcAmtMap.get("orgGoodsSumAmt")); // 상품금액합계
|
|
|
|
|
+ mav.addObject("cpn1DcSumAmt" , goodsDcAmtMap.get("cpn1DcSumAmt")); // 즉시할인금액합계
|
|
|
|
|
+ mav.addObject("tmtbDcSumAmt" , goodsDcAmtMap.get("tmtbDcSumAmt")); // 다다익선할인금액합계
|
|
|
|
|
+ mav.addObject("prePntDcAmt" , goodsDcAmtMap.get("prePntDcAmt")); // 선포인트사용가능금액
|
|
|
|
|
+
|
|
|
|
|
+ mav.addObject("rmPntAmt" , rmPntAmt); // 고객포인트정보
|
|
|
|
|
+ mav.addObject("rmGfcdAmt" , rmGfcdAmt); // 고객상품권정보
|
|
|
|
|
+ mav.addObject("savePntSumAmt" , goodsDcAmtMap.get("savePntSumAmt")); // 적립예정포인트합계
|
|
|
|
|
+
|
|
|
|
|
+ mav.setViewName(super.getDeviceViewName("order/OrderForm"));
|
|
|
|
|
+
|
|
|
|
|
+ return mav;
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+ /**
|
|
|
|
|
+ * 고객정보조회
|
|
|
|
|
+ *
|
|
|
|
|
+ * @param
|
|
|
|
|
+ * @return
|
|
|
|
|
+ * @author jsh77b
|
|
|
|
|
+ * @since 2021. 02. 17
|
|
|
|
|
+ */
|
|
|
|
|
+ @ResponseBody
|
|
|
|
|
+ @PostMapping("/custemerInfo")
|
|
|
|
|
+ public ModelAndView custemerInfo(@RequestBody Order order) {
|
|
|
|
|
+
|
|
|
|
|
+ Order custemerInfo = new Order();
|
|
|
|
|
+
|
|
|
|
|
+ // 1. 로그인체크 후 custNo 설정
|
|
|
|
|
+ if (TsfSession.isLogin()) {
|
|
|
|
|
+ order.setCustNo(TsfSession.getInfo().getCustNo()); // 고객번호등록
|
|
|
|
|
+ } else {
|
|
|
|
|
+ order.setJsessionId(TsfSession.getSessionId());
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+ // 2. 로그인체크 후 고객정보 설정
|
|
|
|
|
+ if (TsfSession.isLogin()) {
|
|
|
|
|
+ // 2.1 주문고객 정보조회
|
|
|
|
|
+ custemerInfo = coreOrderService.getCustemerInfo(order);
|
|
|
|
|
+ } else {
|
|
|
|
|
+ // 2.1 주문고객 정보조회
|
|
|
|
|
+ custemerInfo.setCustNm(order.getCustNm());
|
|
|
|
|
+ custemerInfo.setCellPhnno(order.getCellPhnno());
|
|
|
|
|
+ custemerInfo.setEmail(order.getEmail());
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+ ModelAndView mav = new ModelAndView();
|
|
|
|
|
+ mav.addObject("custemerInfo" , custemerInfo); // 고객정보
|
|
|
|
|
+ mav.addObject("order" , order); // 파라미터
|
|
|
|
|
+ mav.setViewName(super.getDeviceViewName("order/OrderCustemerInfo"));
|
|
|
|
|
+
|
|
|
|
|
+ return mav;
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+ /**
|
|
|
|
|
+ * 배송정보조회
|
|
|
|
|
+ *
|
|
|
|
|
+ * @param
|
|
|
|
|
+ * @return
|
|
|
|
|
+ * @author jsh77b
|
|
|
|
|
+ * @since 2021. 02. 17
|
|
|
|
|
+ */
|
|
|
|
|
+ @ResponseBody
|
|
|
|
|
+ @PostMapping("/deliveryAddrInfo")
|
|
|
|
|
+ public ModelAndView deliveryAddrInfo(@RequestBody Order order) {
|
|
|
|
|
+
|
|
|
|
|
+ Order deliveryAddrInfo = new Order();
|
|
|
|
|
+
|
|
|
|
|
+ // 1. 로그인체크 후 custNo 설정
|
|
|
|
|
+ if (TsfSession.isLogin()) {
|
|
|
|
|
+ order.setCustNo(TsfSession.getInfo().getCustNo()); // 고객번호등록
|
|
|
|
|
+ } else {
|
|
|
|
|
+ order.setJsessionId(TsfSession.getSessionId());
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+ // 2. 로그인체크 후 고객정보 설정
|
|
|
|
|
+ if (TsfSession.isLogin()) {
|
|
|
|
|
+ // 2.1 주문고객 정보조회
|
|
|
|
|
+ deliveryAddrInfo = coreOrderService.getDeliveryAddrInfo(order);
|
|
|
|
|
+
|
|
|
|
|
+ if (deliveryAddrInfo == null) {
|
|
|
|
|
+ deliveryAddrInfo = new Order();
|
|
|
|
|
+ deliveryAddrInfo.setDelvAddrNm(deliveryAddrInfo.getCustNm());
|
|
|
|
|
+ deliveryAddrInfo.setRecipZipcode("");
|
|
|
|
|
+ deliveryAddrInfo.setRecipBaseAddr("");
|
|
|
|
|
+ deliveryAddrInfo.setRecipDtlAddr("");
|
|
|
|
|
+ deliveryAddrInfo.setDelvMemo("직접받고 부재시 문 앞");
|
|
|
|
|
+ }
|
|
|
|
|
+ } else {
|
|
|
|
|
+ // 2.1 주문고객 정보조회
|
|
|
|
|
+ deliveryAddrInfo.setDelvAddrNm(order.getCustNm());
|
|
|
|
|
+ deliveryAddrInfo.setRecipZipcode(order.getRecipZipcode());
|
|
|
|
|
+ deliveryAddrInfo.setRecipBaseAddr(order.getRecipBaseAddr());
|
|
|
|
|
+ deliveryAddrInfo.setRecipDtlAddr(order.getRecipDtlAddr());
|
|
|
|
|
+ deliveryAddrInfo.setDelvMemo("직접받고 부재시 문 앞");
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+ ModelAndView mav = new ModelAndView();
|
|
|
|
|
+ mav.addObject("deliveryAddrInfo", deliveryAddrInfo); // 배송지정보
|
|
|
|
|
+ mav.addObject("order" , order); // 파라미터
|
|
|
|
|
+ mav.setViewName(super.getDeviceViewName("order/OrderDeliveryAddrInfo"));
|
|
|
|
|
+
|
|
|
|
|
+ return mav;
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+ /**
|
|
|
|
|
+ * 사은품정보조회
|
|
|
|
|
+ *
|
|
|
|
|
+ * @param
|
|
|
|
|
+ * @return
|
|
|
|
|
+ * @author jsh77b
|
|
|
|
|
+ * @since 2021. 02. 17
|
|
|
|
|
+ */
|
|
|
|
|
+ @ResponseBody
|
|
|
|
|
+ @PostMapping("/freegiftInfo")
|
|
|
|
|
+ public ModelAndView freegiftInfo(@RequestBody Order order) {
|
|
|
|
|
+
|
|
|
|
|
+ GagaMap resultMap = new GagaMap();
|
|
|
|
|
+
|
|
|
|
|
+ // 1. 로그인체크 후 custNo 설정
|
|
|
|
|
+ if (TsfSession.isLogin()) {
|
|
|
|
|
+ order.setCustNo(TsfSession.getInfo().getCustNo()); // 고객번호등록
|
|
|
|
|
+ } else {
|
|
|
|
|
+ order.setJsessionId(TsfSession.getSessionId());
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+ // 2. 로그인체크 후 정보 설정
|
|
|
|
|
+ if (TsfSession.isLogin()) {
|
|
|
|
|
+ // 4. 사은품 정보 (장바구니상품 사음품 적용 정보 조회)
|
|
|
|
|
+ resultMap = coreFreegiftService.getOrderFreegift(order);
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+ ModelAndView mav = new ModelAndView();
|
|
|
|
|
+ mav.addObject("freegiftGoodsList" , resultMap.get("freegiftGoodsList")); // 사은품상품정보 목록
|
|
|
|
|
+ mav.addObject("freegiftList" , resultMap.get("freegiftList")); // 사은품정보 목록
|
|
|
|
|
+ mav.addObject("order" , order); // 파라미터
|
|
|
|
|
+
|
|
|
|
|
+ mav.setViewName(super.getDeviceViewName("order/OrderFreegiftInfo"));
|
|
|
|
|
+
|
|
|
|
|
+ return mav;
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+ /**
|
|
|
|
|
+ * 할인정보조회
|
|
|
|
|
+ *
|
|
|
|
|
+ * @param
|
|
|
|
|
+ * @return
|
|
|
|
|
+ * @author jsh77b
|
|
|
|
|
+ * @since 2021. 02. 17
|
|
|
|
|
+ */
|
|
|
|
|
+ @SuppressWarnings("unchecked")
|
|
|
|
|
+ @ResponseBody
|
|
|
|
|
+ @PostMapping("/dcAmtInfo")
|
|
|
|
|
+ public ModelAndView dcAmtInfo(@RequestBody Order order) {
|
|
|
|
|
+
|
|
|
|
|
+ GagaMap goodsDcAmtMap = new GagaMap();
|
|
|
|
|
+
|
|
|
|
|
+ Collection<Order> goodsApplyCpnList = new ArrayList<Order>();
|
|
|
|
|
+ Collection<Order> goodsCpnList = new ArrayList<Order>();
|
|
|
|
|
+ Collection<Order> cartCpnList = new ArrayList<Order>();
|
|
|
|
|
+ Collection<Order> delvCpnList = new ArrayList<Order>();
|
|
|
|
|
+ Collection<Order> delvFeeCdList = new ArrayList<Order>();
|
|
|
|
|
+
|
|
|
|
|
+ int rmPntAmt = 0;
|
|
|
|
|
+ int rmGfcdAmt = 0;
|
|
|
|
|
+
|
|
|
|
|
+ // 1. 로그인체크 후 custNo 설정
|
|
|
|
|
+ if (TsfSession.isLogin()) {
|
|
|
|
|
+ order.setCustNo(TsfSession.getInfo().getCustNo()); // 고객번호등록
|
|
|
|
|
+ } else {
|
|
|
|
|
+ order.setJsessionId(TsfSession.getSessionId());
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+ // 2. 로그인체크 후 정보 설정 (할인구간정보조회)
|
|
|
|
|
+ if (TsfSession.isLogin()) {
|
|
|
|
|
+
|
|
|
|
|
+ // 2.1 배송단위별 상품 목록 조회 (장바구니)
|
|
|
|
|
+ Collection<Order> tmtbGoodsApplyList = cartService.getMoreBetterAmtList(order);
|
|
|
|
|
+
|
|
|
|
|
+ // 2.2 상품금액, 선포인트, 다다익선할인금액
|
|
|
|
|
+ goodsDcAmtMap = coreOrderService.getGoodsDcAmt(tmtbGoodsApplyList);
|
|
|
|
|
+
|
|
|
|
|
+ // 2.3 배송단위별 장바구니 상품 건수 조회 (장바구니상품)
|
|
|
|
|
+ GagaMap delvOrderMap = coreOrderService.getCartDelvGoodsCntList(tmtbGoodsApplyList);
|
|
|
|
|
+
|
|
|
|
|
+ // 2.4 상품쿠폰, 장바구니쿠폰 목록 조회
|
|
|
|
|
+ GagaMap goodsCartCpnMap = coreOrderService.getGoodsCartCpnApplyGoodsList(order);
|
|
|
|
|
+
|
|
|
|
|
+ goodsCpnList = (Collection<Order>) goodsCartCpnMap.get("goodsCpnList");
|
|
|
|
|
+ cartCpnList = (Collection<Order>) goodsCartCpnMap.get("cartCpnList");
|
|
|
|
|
+
|
|
|
|
|
+ // 2.5 상품쿠폰 적용된 상품 목록(상품기준)
|
|
|
|
|
+ goodsApplyCpnList = coreOrderService.getGoodsCpnApplyList(tmtbGoodsApplyList, goodsCpnList);
|
|
|
|
|
+
|
|
|
|
|
+ // 2.6 장바구니쿠폰(장바구니기준 상품목록)
|
|
|
|
|
+ cartCpnList = coreOrderService.getCartCpnApplyList(tmtbGoodsApplyList, cartCpnList);
|
|
|
|
|
+
|
|
|
|
|
+ // 2.7 배송비쿠폰목록 조회
|
|
|
|
|
+ delvCpnList = coreOrderService.getDelvCpnList(order);
|
|
|
|
|
+
|
|
|
|
|
+ delvFeeCdList = (Collection<Order>) delvOrderMap.get("delvFeeCdList");
|
|
|
|
|
+
|
|
|
|
|
+ // 2.8 배송비쿠폰(배송업체기준)
|
|
|
|
|
+ delvCpnList = coreOrderService.getDelvCpnApplyList(delvFeeCdList, delvCpnList);
|
|
|
|
|
+
|
|
|
|
|
+ // 2.9 고객 보유 포인트 정보 조회
|
|
|
|
|
+ rmPntAmt = coreOrderService.getCustPointInfo(order);
|
|
|
|
|
+
|
|
|
|
|
+ // 2.10 고객 보유 상품권 정보 조회
|
|
|
|
|
+ rmGfcdAmt = coreOrderService.getGiftcardInfo(order);
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+ ModelAndView mav = new ModelAndView();
|
|
|
mav.addObject("goodsApplyCpnList" , goodsApplyCpnList); // 상품적용쿠폰
|
|
mav.addObject("goodsApplyCpnList" , goodsApplyCpnList); // 상품적용쿠폰
|
|
|
mav.addObject("cartCpnList" , cartCpnList); // 장바구니쿠폰목록
|
|
mav.addObject("cartCpnList" , cartCpnList); // 장바구니쿠폰목록
|
|
|
mav.addObject("delvCpnList" , delvCpnList); // 배송비쿠폰목록
|
|
mav.addObject("delvCpnList" , delvCpnList); // 배송비쿠폰목록
|
|
|
-
|
|
|
|
|
|
|
+
|
|
|
mav.addObject("orgGoodsSumAmt" , goodsDcAmtMap.get("orgGoodsSumAmt")); // 상품금액합계
|
|
mav.addObject("orgGoodsSumAmt" , goodsDcAmtMap.get("orgGoodsSumAmt")); // 상품금액합계
|
|
|
mav.addObject("cpn1DcSumAmt" , goodsDcAmtMap.get("cpn1DcSumAmt")); // 즉시할인금액합계
|
|
mav.addObject("cpn1DcSumAmt" , goodsDcAmtMap.get("cpn1DcSumAmt")); // 즉시할인금액합계
|
|
|
mav.addObject("tmtbDcSumAmt" , goodsDcAmtMap.get("tmtbDcSumAmt")); // 다다익선할인금액합계
|
|
mav.addObject("tmtbDcSumAmt" , goodsDcAmtMap.get("tmtbDcSumAmt")); // 다다익선할인금액합계
|
|
@@ -222,16 +384,48 @@ public class TsfOrderController extends TsfBaseController {
|
|
|
mav.addObject("rmPntAmt" , rmPntAmt); // 고객포인트정보
|
|
mav.addObject("rmPntAmt" , rmPntAmt); // 고객포인트정보
|
|
|
mav.addObject("rmGfcdAmt" , rmGfcdAmt); // 고객상품권정보
|
|
mav.addObject("rmGfcdAmt" , rmGfcdAmt); // 고객상품권정보
|
|
|
mav.addObject("savePntSumAmt" , goodsDcAmtMap.get("savePntSumAmt")); // 적립예정포인트합계
|
|
mav.addObject("savePntSumAmt" , goodsDcAmtMap.get("savePntSumAmt")); // 적립예정포인트합계
|
|
|
|
|
+ mav.addObject("order" , order); // 파라미터
|
|
|
|
|
|
|
|
- // 104. 사은품정보
|
|
|
|
|
- mav.addObject("freegiftGoodsList" , resultMap.get("freegiftGoodsList")); // 사은품상품정보 목록
|
|
|
|
|
- mav.addObject("freegiftList" , resultMap.get("freegiftList")); // 사은품정보 목록
|
|
|
|
|
|
|
+ mav.setViewName(super.getDeviceViewName("order/OrderDcAmtInfo"));
|
|
|
|
|
|
|
|
- mav.setViewName(super.getDeviceViewName("order/OrderForm"));
|
|
|
|
|
|
|
+ return mav;
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+ /**
|
|
|
|
|
+ * 할인정보조회
|
|
|
|
|
+ *
|
|
|
|
|
+ * @param
|
|
|
|
|
+ * @return
|
|
|
|
|
+ * @author jsh77b
|
|
|
|
|
+ * @since 2021. 02. 17
|
|
|
|
|
+ */
|
|
|
|
|
+ @ResponseBody
|
|
|
|
|
+ @PostMapping("/paymentInfo")
|
|
|
|
|
+ public ModelAndView paymentInfo(@RequestBody Order order) {
|
|
|
|
|
+
|
|
|
|
|
+ // 1. 로그인체크 후 custNo 설정
|
|
|
|
|
+ if (TsfSession.isLogin()) {
|
|
|
|
|
+ order.setCustNo(TsfSession.getInfo().getCustNo()); // 고객번호등록
|
|
|
|
|
+ } else {
|
|
|
|
|
+ order.setJsessionId(TsfSession.getSessionId());
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+ // 2. 로그인체크 후 정보 설정
|
|
|
|
|
+ if (TsfSession.isLogin()) {
|
|
|
|
|
+
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+ ModelAndView mav = new ModelAndView();
|
|
|
|
|
+ mav.addObject("order" , order); // 파라미터
|
|
|
|
|
+ mav.setViewName(super.getDeviceViewName("order/OrderPaymentInfo"));
|
|
|
|
|
|
|
|
return mav;
|
|
return mav;
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
|
|
+
|
|
|
|
|
+
|
|
|
|
|
+
|
|
|
|
|
+
|
|
|
/**
|
|
/**
|
|
|
* 총알배송 가능 지역 체크
|
|
* 총알배송 가능 지역 체크
|
|
|
*
|
|
*
|
|
@@ -241,7 +435,7 @@ public class TsfOrderController extends TsfBaseController {
|
|
|
* @since 2021. 02. 08
|
|
* @since 2021. 02. 08
|
|
|
*/
|
|
*/
|
|
|
@ResponseBody
|
|
@ResponseBody
|
|
|
- @RequestMapping(value = "/getDailyDeliveryCheck")
|
|
|
|
|
|
|
+ @PostMapping(value = "/getDailyDeliveryCheck")
|
|
|
public int getDailyDeliveryCheck(Order order) {
|
|
public int getDailyDeliveryCheck(Order order) {
|
|
|
|
|
|
|
|
// 1. 총알배송가능 지역, 총알배송 가능 시간 체크
|
|
// 1. 총알배송가능 지역, 총알배송 가능 시간 체크
|
|
@@ -259,7 +453,7 @@ public class TsfOrderController extends TsfBaseController {
|
|
|
* @since 2021. 02. 17
|
|
* @since 2021. 02. 17
|
|
|
*/
|
|
*/
|
|
|
@ResponseBody
|
|
@ResponseBody
|
|
|
- @RequestMapping(value = "/delvAddrChangePop")
|
|
|
|
|
|
|
+ @PostMapping(value = "/delvAddrChangePop")
|
|
|
public ModelAndView delvAddrChangePop(Order order) {
|
|
public ModelAndView delvAddrChangePop(Order order) {
|
|
|
|
|
|
|
|
ModelAndView mav = new ModelAndView();
|
|
ModelAndView mav = new ModelAndView();
|
|
@@ -345,5 +539,164 @@ public class TsfOrderController extends TsfBaseController {
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
+
|
|
|
|
|
+
|
|
|
|
|
+ /**
|
|
|
|
|
+ * 주문페이지
|
|
|
|
|
+ *
|
|
|
|
|
+ * @param
|
|
|
|
|
+ * @return
|
|
|
|
|
+ * @author jsh77b
|
|
|
|
|
+ * @since 2021. 02. 02
|
|
|
|
|
+ */
|
|
|
|
|
+ @SuppressWarnings({ "unchecked", "null" })
|
|
|
|
|
+ @RequestMapping(value = "/form20210304")
|
|
|
|
|
+ public ModelAndView orderForm20210304(Order order) {
|
|
|
|
|
+ ModelAndView mav = new ModelAndView();
|
|
|
|
|
+
|
|
|
|
|
+ // TODO
|
|
|
|
|
+ // 1.비회주문, 회원 주문 판단 로직, 고객정보 세션 판단
|
|
|
|
|
+ // 세션고객정보가 존재하면 회원주문 없으면 비회원 주문
|
|
|
|
|
+
|
|
|
|
|
+ // 임시 jsessionId
|
|
|
|
|
+ String jsessionId = "aaec62cc-5f91-47bb-ba65-ebc9a61385cf";
|
|
|
|
|
+ Boolean noMember = true;
|
|
|
|
|
+
|
|
|
|
|
+ // TODO 로그인체크 로직 추가
|
|
|
|
|
+ // 1.0 회원, 비회원 여부 판단
|
|
|
|
|
+ if (TsfSession.getInfo().getCustNo() == null) {
|
|
|
|
|
+ order.setJsessionId(jsessionId);
|
|
|
|
|
+ } else {
|
|
|
|
|
+ noMember = false;
|
|
|
|
|
+ order.setCustNo(TsfSession.getInfo().getCustNo()); // 고객번호등록
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+ // TODO
|
|
|
|
|
+ // 1.1 카트시퀀스가 없을때 처리 장바구니로 이동
|
|
|
|
|
+ if (order.getCartSqArr() == null) {
|
|
|
|
|
+ mav.setViewName("redirect:/order/noMember"); // 비회원주문서화면
|
|
|
|
|
+ return mav;
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+ Order custemerInfo = new Order();
|
|
|
|
|
+ Order deliveryAddrInfo = new Order();
|
|
|
|
|
+
|
|
|
|
|
+ // TODO 로그인체크 로직 추가
|
|
|
|
|
+ if (noMember) {
|
|
|
|
|
+ // 1.1 주문고객 정보조회
|
|
|
|
|
+ custemerInfo.setCustNm(order.getCustNm());
|
|
|
|
|
+ custemerInfo.setCellPhnno(order.getCellPhnno());
|
|
|
|
|
+ custemerInfo.setEmail(order.getEmail());
|
|
|
|
|
+
|
|
|
|
|
+ // 1.2 배송지 정보조회 (기본배송지)
|
|
|
|
|
+ deliveryAddrInfo.setDelvAddrNm(order.getCustNm());
|
|
|
|
|
+ deliveryAddrInfo.setRecipZipcode(order.getRecipZipcode());
|
|
|
|
|
+ deliveryAddrInfo.setRecipBaseAddr(order.getRecipBaseAddr());
|
|
|
|
|
+ deliveryAddrInfo.setRecipDtlAddr(order.getRecipDtlAddr());
|
|
|
|
|
+ deliveryAddrInfo.setDelvMemo("직접받고 부재시 문 앞");
|
|
|
|
|
+ } else {
|
|
|
|
|
+ // 1.1 주문고객 정보조회
|
|
|
|
|
+ custemerInfo = coreOrderService.getCustemerInfo(order);
|
|
|
|
|
+
|
|
|
|
|
+ // 1.2 배송지 정보조회 (기본배송지)
|
|
|
|
|
+ deliveryAddrInfo = coreOrderService.getDeliveryAddrInfo(order);
|
|
|
|
|
+
|
|
|
|
|
+ if (deliveryAddrInfo == null) {
|
|
|
|
|
+ deliveryAddrInfo = new Order();
|
|
|
|
|
+ deliveryAddrInfo.setDelvAddrNm(custemerInfo.getCustNm());
|
|
|
|
|
+ deliveryAddrInfo.setRecipZipcode("");
|
|
|
|
|
+ deliveryAddrInfo.setRecipBaseAddr("");
|
|
|
|
|
+ deliveryAddrInfo.setRecipDtlAddr("");
|
|
|
|
|
+ deliveryAddrInfo.setDelvMemo("직접받고 부재시 문 앞");
|
|
|
|
|
+ }
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+ // TODO 임시 장바구니
|
|
|
|
|
+ // 2. 장바구니시퀀스 배열 등록 (장바구니 상품 정보 조회)
|
|
|
|
|
+ // 2.1 배송단위별 상품 목록 조회 (장바구니)
|
|
|
|
|
+ Collection<Order> tmtbGoodsApplyList = cartService.getMoreBetterAmtList(order);
|
|
|
|
|
+
|
|
|
|
|
+ // 2.1.0 상품금액, 선포인트, 다다익선할인금액
|
|
|
|
|
+ GagaMap goodsDcAmtMap = coreOrderService.getGoodsDcAmt(tmtbGoodsApplyList);
|
|
|
|
|
+
|
|
|
|
|
+ // 2.2 배송단위별 장바구니 상품 건수 조회 (장바구니상품)
|
|
|
|
|
+ GagaMap delvOrderMap = coreOrderService.getCartDelvGoodsCntList(tmtbGoodsApplyList);
|
|
|
|
|
+
|
|
|
|
|
+ // 3. 할인구간정보조회
|
|
|
|
|
+ // 3.2 상품쿠폰, 장바구니쿠폰 목록 조회
|
|
|
|
|
+ GagaMap goodsCartCpnMap = coreOrderService.getGoodsCartCpnApplyGoodsList(order);
|
|
|
|
|
+
|
|
|
|
|
+ Collection<Order> goodsCpnList = (Collection<Order>) goodsCartCpnMap.get("goodsCpnList");
|
|
|
|
|
+ Collection<Order> cartCpnList = (Collection<Order>) goodsCartCpnMap.get("cartCpnList");
|
|
|
|
|
+
|
|
|
|
|
+ // 3.2.1 상품기준 ---> 상품쿠폰 적용된 상품 목록
|
|
|
|
|
+ Collection<Order> goodsApplyCpnList = coreOrderService.getGoodsCpnApplyList(tmtbGoodsApplyList, goodsCpnList);
|
|
|
|
|
+
|
|
|
|
|
+ // 3.2.2 장바구니쿠폰기준 ---> 상품목록
|
|
|
|
|
+ cartCpnList = coreOrderService.getCartCpnApplyList(tmtbGoodsApplyList, cartCpnList);
|
|
|
|
|
+
|
|
|
|
|
+ // 3.3 배송비쿠폰목록 조회
|
|
|
|
|
+ Collection<Order> delvCpnList = coreOrderService.getDelvCpnList(order);
|
|
|
|
|
+
|
|
|
|
|
+ Collection<Order> delvFeeCdList = (Collection<Order>) delvOrderMap.get("delvFeeCdList");
|
|
|
|
|
+
|
|
|
|
|
+ // 3.3.1 배소업체기준 ---> 배송비쿠폰
|
|
|
|
|
+ delvCpnList = coreOrderService.getDelvCpnApplyList(delvFeeCdList, delvCpnList);
|
|
|
|
|
+
|
|
|
|
|
+ // 3.4 고객 보유 포인트 정보 조회
|
|
|
|
|
+ int rmPntAmt = coreOrderService.getCustPointInfo(order);
|
|
|
|
|
+
|
|
|
|
|
+ // 3.5 고객 보유 상품권 정보 조회
|
|
|
|
|
+ int rmGfcdAmt = coreOrderService.getGiftcardInfo(order);
|
|
|
|
|
+
|
|
|
|
|
+ // 4. 사은품 정보
|
|
|
|
|
+ // 4.1 장바구니상품 사음품 적용 정보 조회
|
|
|
|
|
+ GagaMap resultMap = coreFreegiftService.getOrderFreegift(order);
|
|
|
|
|
+
|
|
|
|
|
+ // 101. 상품정보
|
|
|
|
|
+ mav.addObject("cartGoodsList" , tmtbGoodsApplyList); // 장바구니상품목록 (즉시할인쿠폰적용)
|
|
|
|
|
+ mav.addObject("delvTotCnt" , delvOrderMap.get("delvTotCnt")); // 총상품건수
|
|
|
|
|
+ mav.addObject("delvFeeTotCnt" , delvOrderMap.get("delvFeeTotCnt")); // 총배송타입건수
|
|
|
|
|
+ mav.addObject("wmsCnt" , delvOrderMap.get("wmsCnt")); // 자사상품건수
|
|
|
|
|
+ mav.addObject("resCnt" , delvOrderMap.get("resCnt")); // 자사예약상품건수
|
|
|
|
|
+ mav.addObject("delvCnt" , delvOrderMap.get("delvCnt")); // 입점업체상품건수
|
|
|
|
|
+
|
|
|
|
|
+ mav.addObject("shotCartList" , delvOrderMap.get("shotCartList")); // 자사총알배송상품목록
|
|
|
|
|
+ mav.addObject("wmsCartList" , delvOrderMap.get("wmsCartList")); // 자사일반배송상품목록
|
|
|
|
|
+ mav.addObject("delvCartList" , delvOrderMap.get("delvCartList")); // 입점업체상품목록
|
|
|
|
|
+ mav.addObject("resCartList" , delvOrderMap.get("resCartList")); // 자사예약배송상품목록
|
|
|
|
|
+ mav.addObject("delvAllCartList" , delvOrderMap.get("delvAllCartList")); // 전체배송목록
|
|
|
|
|
+ mav.addObject("sumDelvFee" , delvOrderMap.get("sumDelvFee")); // 배송비합계
|
|
|
|
|
+
|
|
|
|
|
+ // 102. 고객정보
|
|
|
|
|
+ mav.addObject("custemerInfo" , custemerInfo); // 고객정보
|
|
|
|
|
+ mav.addObject("deliveryAddrInfo" , deliveryAddrInfo); // 배송지정보
|
|
|
|
|
+ mav.addObject("shotDelvYn" , order.getShotDelvYn()); // 장바구니 총알배송여부
|
|
|
|
|
+
|
|
|
|
|
+ // 103. 할인정보
|
|
|
|
|
+ mav.addObject("tmtbGoodsApplyList" , tmtbGoodsApplyList); // 다다익선상품 적용목록
|
|
|
|
|
+ mav.addObject("goodsApplyCpnList" , goodsApplyCpnList); // 상품적용쿠폰
|
|
|
|
|
+ mav.addObject("cartCpnList" , cartCpnList); // 장바구니쿠폰목록
|
|
|
|
|
+ mav.addObject("delvCpnList" , delvCpnList); // 배송비쿠폰목록
|
|
|
|
|
+
|
|
|
|
|
+ mav.addObject("orgGoodsSumAmt" , goodsDcAmtMap.get("orgGoodsSumAmt")); // 상품금액합계
|
|
|
|
|
+ mav.addObject("cpn1DcSumAmt" , goodsDcAmtMap.get("cpn1DcSumAmt")); // 즉시할인금액합계
|
|
|
|
|
+ mav.addObject("tmtbDcSumAmt" , goodsDcAmtMap.get("tmtbDcSumAmt")); // 다다익선할인금액합계
|
|
|
|
|
+ mav.addObject("prePntDcAmt" , goodsDcAmtMap.get("prePntDcAmt")); // 선포인트사용가능금액
|
|
|
|
|
+
|
|
|
|
|
+ mav.addObject("rmPntAmt" , rmPntAmt); // 고객포인트정보
|
|
|
|
|
+ mav.addObject("rmGfcdAmt" , rmGfcdAmt); // 고객상품권정보
|
|
|
|
|
+ mav.addObject("savePntSumAmt" , goodsDcAmtMap.get("savePntSumAmt")); // 적립예정포인트합계
|
|
|
|
|
+
|
|
|
|
|
+ // 104. 사은품정보
|
|
|
|
|
+ mav.addObject("freegiftGoodsList" , resultMap.get("freegiftGoodsList")); // 사은품상품정보 목록
|
|
|
|
|
+ mav.addObject("freegiftList" , resultMap.get("freegiftList")); // 사은품정보 목록
|
|
|
|
|
+
|
|
|
|
|
+ mav.setViewName(super.getDeviceViewName("order/OrderForm"));
|
|
|
|
|
+
|
|
|
|
|
+ return mav;
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+
|
|
|
|
|
|
|
|
}
|
|
}
|