|
|
@@ -854,11 +854,11 @@ public class TscOrderService {
|
|
|
*/
|
|
|
public Collection<Order> getDelvCpnApplyList(Collection<Order> delvFeeCdList, Collection<Order> delvCpnAllList) {
|
|
|
|
|
|
- // 배송비가 있으면 배소업체코드, 배송비 배송비쿠폰에 설정
|
|
|
+ // 배송비가 있으면 배송업체코드, 배송비 배송비쿠폰에 설정
|
|
|
for (Order delvCpn : delvCpnAllList) {
|
|
|
for (Order delvFeeCd : delvFeeCdList) {
|
|
|
if (delvFeeCd.getDelvFee() > 0) {
|
|
|
- delvCpn.setCpnDcAmt(delvFeeCd.getDelvFee());
|
|
|
+ delvCpn.setDelvFee(delvFeeCd.getDelvFee());
|
|
|
delvCpn.setDelvFeeCd(delvFeeCd.getDelvFeeCd());
|
|
|
}
|
|
|
}
|
|
|
@@ -989,10 +989,8 @@ public class TscOrderService {
|
|
|
Collection<Order> resCartList = (Collection<Order>)new ArrayList(); // 자사 예약배송
|
|
|
Collection<Order> delvCartList = (Collection<Order>)new ArrayList(); // 입점 일반배송
|
|
|
Collection<Collection<Order>> delvAllCartList = (Collection<Collection<Order>>)new ArrayList(); // 배송전체목록
|
|
|
- Collection<Collection<Order>> delvCartGoodsList = (Collection<Collection<Order>>)new ArrayList(); // 장바구니상품목록
|
|
|
|
|
|
-
|
|
|
- List<Order> delvFeeCdList = (ArrayList<Order>)new ArrayList();
|
|
|
+ List<Order> delvFeeCdList = (ArrayList<Order>)new ArrayList(); // 배송업체단위목록
|
|
|
int ordAmt = 0; // 주문금액
|
|
|
int sumOrdAmt = 0; // 배송단위 주문합계금액
|
|
|
int sumDelvFee = 0; // 전체배송금액
|
|
|
@@ -1141,11 +1139,6 @@ public class TscOrderService {
|
|
|
delvAllCartList.add(delvCartList); // index 4
|
|
|
delvAllCartList.add(resCartList); // index 5
|
|
|
|
|
|
- delvCartGoodsList.add(shotCartList);
|
|
|
- delvCartGoodsList.add(wmsCartList);
|
|
|
- delvCartGoodsList.add(delvCartList);
|
|
|
- delvCartGoodsList.add(resCartList);
|
|
|
-
|
|
|
resultMap.set("delvFeeCdCnt" , delvFeeCdCnt); // 배송타입건수
|
|
|
resultMap.set("shotCnt" , shotCnt); // 자사몰 총알배송건수
|
|
|
resultMap.set("wmsCnt" , wmsCnt); // 자사몰 일반배송건수(총알배송불가)
|
|
|
@@ -1155,7 +1148,6 @@ public class TscOrderService {
|
|
|
|
|
|
resultMap.set("goodsTotCnt" , goodsTotCnt); // 전체상품건수
|
|
|
resultMap.set("delvAllCartList" , delvAllCartList); // 전체배송단위목록 sort
|
|
|
- resultMap.set("delvCartGoodsList" , delvCartGoodsList); // 장바구니상품목록 sort
|
|
|
|
|
|
resultMap.set("sumDelvFee" , sumDelvFee); // 배송비합계
|
|
|
resultMap.set("delvFeeCdList" , delvFeeCdList); // 배송업체목록
|
|
|
@@ -1248,5 +1240,94 @@ public class TscOrderService {
|
|
|
*/
|
|
|
public Collection<Order> getSerialCpnApplyGoodsList(Order order) {
|
|
|
return orderDao.getGoodsCartCpnApplyGoodsList(order);
|
|
|
+ }
|
|
|
+
|
|
|
+ /**
|
|
|
+ * 주문정보등록(사전등록)
|
|
|
+ * @param Order
|
|
|
+ * @return Order
|
|
|
+ * @author jsh77b
|
|
|
+ * @since 2021. 03. 09
|
|
|
+ */
|
|
|
+ @Transactional("shopTxnManager")
|
|
|
+ public void createPreOrder(Order order) {
|
|
|
+
|
|
|
+ // 1. 주문기본정보등록
|
|
|
+ orderDao.createOrder(order);
|
|
|
+
|
|
|
+ // 2. 주문배송정보등록
|
|
|
+ orderDao.createDeliveryAddr(order);
|
|
|
+
|
|
|
+ // 3. 주문배송비정보등록
|
|
|
+ Collection<Order> delvFeeCdList = order.getDelvFeeCdList();
|
|
|
+ for (Order delvFeeCd : delvFeeCdList) {
|
|
|
+
|
|
|
+ delvFeeCd.setOrdNo(order.getOrdNo());
|
|
|
+ delvFeeCd.setCustNo(order.getCustNo());
|
|
|
+ delvFeeCd.setDelvFeeGb(TscConstants.DeliveryFeeGb.ORIGIN_DELIVERY_FEE.value());
|
|
|
+
|
|
|
+ // TODO 보유쿠폰존재여부체크
|
|
|
+ // 배송비쿠폰할인금액이 존재한다면 실결제배송비용에 쿠폰할인금액을 적용
|
|
|
+ if (delvFeeCd.getDelvCpnDcAmt() > 0) {
|
|
|
+ // 배송비 > 쿠폰할인금액
|
|
|
+ if (delvFeeCd.getDelvFee() > delvFeeCd.getDelvCpnDcAmt()) {
|
|
|
+ int realDelvAmt = delvFeeCd.getDelvFee() - delvFeeCd.getDelvCpnDcAmt();
|
|
|
+ delvFeeCd.setRealDelvAmt(realDelvAmt);
|
|
|
+ } else {
|
|
|
+ delvFeeCd.setRealDelvAmt(0);
|
|
|
+ }
|
|
|
+ } else {
|
|
|
+ delvFeeCd.setRealDelvAmt(delvFeeCd.getDelvFee());
|
|
|
+ }
|
|
|
+
|
|
|
+ orderDao.createDeliveryFee(delvFeeCd);
|
|
|
+ }
|
|
|
+
|
|
|
+ // 4. 주문상세정보등록
|
|
|
+ Collection<Order> orderDetailList = order.getOrderDetailList();
|
|
|
+ for (Order orderDetail : orderDetailList) {
|
|
|
+ orderDetail.setOrdNo(order.getOrdNo());
|
|
|
+ orderDetail.setOrdExchGb("O");
|
|
|
+ orderDetail.setCustNo(order.getCustNo());
|
|
|
+ orderDetail.setOrdDtlStat(TscConstants.OrderDetailStat.ORDER_RECEIPT.value());
|
|
|
+ orderDetail.setDelvAddrSq(order.getDelvAddrSq());
|
|
|
+ orderDetail.setGiftPackYn("N");
|
|
|
+
|
|
|
+ // TODO 총알배송, 구매대행상품여붗 체크
|
|
|
+
|
|
|
+ orderDao.createOrderDetail(orderDetail);
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
}
|
|
|
}
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|