|
|
@@ -3,7 +3,9 @@ package com.style24.batch.biz.service;
|
|
|
import java.net.URI;
|
|
|
import java.util.ArrayList;
|
|
|
import java.util.Collection;
|
|
|
+import java.util.List;
|
|
|
|
|
|
+import org.apache.commons.lang3.StringUtils;
|
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
|
import org.springframework.core.env.Environment;
|
|
|
import org.springframework.http.HttpEntity;
|
|
|
@@ -24,13 +26,17 @@ import com.style24.core.biz.dao.TscOrderChangeDao;
|
|
|
import com.style24.core.biz.dao.TscOrderDao;
|
|
|
import com.style24.core.biz.service.TscDeliveryService;
|
|
|
import com.style24.core.biz.service.TscErpService;
|
|
|
+import com.style24.core.biz.service.TscOrderChangeService;
|
|
|
+import com.style24.core.biz.service.TscOrderRefundService;
|
|
|
import com.style24.core.biz.service.TscWmsService;
|
|
|
import com.style24.core.biz.thirdparty.HansaeErp;
|
|
|
+import com.style24.core.support.env.TscConstants;
|
|
|
import com.style24.core.support.env.TscConstants.OrderChangeGb;
|
|
|
import com.style24.core.support.env.TscConstants.OrderChangeStat;
|
|
|
import com.style24.core.support.env.TscConstants.OrderDetailStat;
|
|
|
import com.style24.persistence.domain.Delivery;
|
|
|
import com.style24.persistence.domain.Erp;
|
|
|
+import com.style24.persistence.domain.GiftCard;
|
|
|
import com.style24.persistence.domain.Order;
|
|
|
import com.style24.persistence.domain.OrderChange;
|
|
|
import com.style24.persistence.domain.WmsDelivery;
|
|
|
@@ -73,6 +79,12 @@ public class TsbDeliveryService {
|
|
|
@Autowired
|
|
|
private TscDeliveryService coreDeliveryService;
|
|
|
|
|
|
+ @Autowired
|
|
|
+ private TscOrderChangeService orderChangeService;
|
|
|
+
|
|
|
+ @Autowired
|
|
|
+ private TscOrderRefundService orderRefundService;
|
|
|
+
|
|
|
@Autowired
|
|
|
private HansaeErp hansaeErp;
|
|
|
|
|
|
@@ -226,29 +238,16 @@ public class TsbDeliveryService {
|
|
|
* @author moon
|
|
|
* @since 2021. 03. 19
|
|
|
*/
|
|
|
- @Transactional("shopTxnManager")
|
|
|
- public void createWithdraw(Delivery delivery) {
|
|
|
-
|
|
|
- delivery.setRegNo(TsbConstants.REG_NO);
|
|
|
-
|
|
|
- // TB_WITHDRAW 입력
|
|
|
- deliveryDao.insertTbWithdraw(delivery);
|
|
|
- // TB_WITHDRAW_DETAIL 입력
|
|
|
- deliveryDao.insertTbWithdrawDetail(delivery);
|
|
|
- }
|
|
|
-
|
|
|
- /**
|
|
|
- * 주문정보 조회
|
|
|
- * @param Delivery
|
|
|
- * @return Delivery
|
|
|
- * @author moon
|
|
|
- * @since 2021. 03. 23
|
|
|
- */
|
|
|
- public Delivery getOrderInfoList(Delivery delivery) {
|
|
|
-
|
|
|
- Delivery orderInfo = deliveryDao.getOrderInfoList(delivery);
|
|
|
- return orderInfo;
|
|
|
- }
|
|
|
+// @Transactional("shopTxnManager")
|
|
|
+// public void createWithdraw(Delivery delivery) {
|
|
|
+//
|
|
|
+// delivery.setRegNo(TsbConstants.REG_NO);
|
|
|
+//
|
|
|
+// // TB_WITHDRAW 입력
|
|
|
+// deliveryDao.insertTbWithdraw(delivery);
|
|
|
+// // TB_WITHDRAW_DETAIL 입력
|
|
|
+// deliveryDao.insertTbWithdrawDetail(delivery);
|
|
|
+// }
|
|
|
|
|
|
/**
|
|
|
* 회수결과 주문변경 처리
|
|
|
@@ -258,60 +257,392 @@ public class TsbDeliveryService {
|
|
|
* @since 2021. 03. 25
|
|
|
*/
|
|
|
@Transactional("shopTxnManager")
|
|
|
- public void updateOrderChange(Delivery delivery) {
|
|
|
-
|
|
|
+ public void saveWithdraw(Delivery data) {
|
|
|
+
|
|
|
+ // 주문정보 및 주문변경정보 조회 (as-is 회수건 포함)
|
|
|
+ Delivery ordInfo = deliveryDao.getOrderInfoList(data);
|
|
|
+ data.setOrdChgSq(ordInfo.getOrdChgSq());
|
|
|
+ data.setOrderdtlno(ordInfo.getOrdDtlNo());
|
|
|
+ data.setItemCd(ordInfo.getItemCd());
|
|
|
+ data.setOptCd1(ordInfo.getOptCd1());
|
|
|
+ data.setOptCd2(ordInfo.getOptCd2());
|
|
|
+ data.setOrdExchGb(ordInfo.getOrdExchGb());
|
|
|
+ data.setChgGb(ordInfo.getChgGb());
|
|
|
+ data.setChgOrdDtlNo(ordInfo.getChgOrdDtlNo());
|
|
|
+ data.setWdInvoiceSendYn("Y");
|
|
|
+ data.setCustNo(ordInfo.getCustNo());
|
|
|
+ data.setWdBfSendYn(ordInfo.getWdBfSendYn());
|
|
|
+ data.setSellStoreCd(ordInfo.getSellStoreCd());
|
|
|
+ data.setRtnLocCd("DL001");
|
|
|
+
|
|
|
// 교환일경우 자동 완료처리
|
|
|
- delivery.setRegNo(TsbConstants.REG_NO);
|
|
|
- if (OrderChangeGb.EXCHANGE.value().equals(delivery.getChgGb())) { // 교환
|
|
|
- delivery.setChgStat(OrderChangeStat.EXCHANGE_COMPLETE.value()); // 교환완료 G685_40
|
|
|
+ data.setRegNo(TsbConstants.REG_NO);
|
|
|
+ if (OrderChangeGb.EXCHANGE.value().equals(data.getChgGb())) { // 교환
|
|
|
+ data.setChgStat(OrderChangeStat.EXCHANGE_COMPLETE.value()); // 교환완료 G685_40
|
|
|
} else {
|
|
|
- delivery.setChgStat(OrderChangeStat.RETURN_ING.value()); // 반품진행중 G685_33
|
|
|
+ data.setChgStat(OrderChangeStat.RETURN_ING.value()); // 반품진행중 G685_33
|
|
|
}
|
|
|
|
|
|
// TB_ORDER_CHANGE
|
|
|
- deliveryDao.updateTbOrderChange(delivery);
|
|
|
+ deliveryDao.updateTbOrderChange(data);
|
|
|
|
|
|
// TB_ORDER_CHANGE_DETAIL
|
|
|
- deliveryDao.updateTbOrderChangeDetail(delivery);
|
|
|
+ deliveryDao.updateTbOrderChangeDetail(data);
|
|
|
|
|
|
// 주문상세변경 이력
|
|
|
OrderChange ordChg = new OrderChange();
|
|
|
ordChg.setRegNo(0);
|
|
|
ordChg.setUpdNo(0);
|
|
|
- ordChg.setOrdChgSq(delivery.getOrdChgSq());
|
|
|
- ordChg.setOrdDtlNo(delivery.getOrderdtlno());
|
|
|
- ordChg.setChgStat(delivery.getChgStat());
|
|
|
+ ordChg.setOrdChgSq(data.getOrdChgSq());
|
|
|
+ ordChg.setOrdDtlNo(data.getOrderdtlno());
|
|
|
+ ordChg.setChgStat(data.getChgStat());
|
|
|
orderChangeDao.createOrderChangeDetailHst(ordChg);
|
|
|
+
|
|
|
|
|
|
+
|
|
|
+ // TB_WITHDRAW 입력
|
|
|
+ deliveryDao.insertTbWithdraw(data);
|
|
|
+ // TB_WITHDRAW_DETAIL 입력
|
|
|
+ deliveryDao.insertTbWithdrawDetail(data);
|
|
|
+
|
|
|
+
|
|
|
+ // 교환일 경우 주문상세 상태값 처리
|
|
|
+ if(OrderChangeGb.EXCHANGE.value().equals(ordInfo.getChgGb())) {
|
|
|
+
|
|
|
+ OrderChange orderChange = new OrderChange();
|
|
|
+ orderChange.setOrdChgSq(data.getOrdChgSq());
|
|
|
+ orderChange.setCustNo(data.getCustNo());
|
|
|
+
|
|
|
+ // 주문변경상세정보 조회
|
|
|
+ Collection<OrderChange> orderChangeList = deliveryDao.getOrderChangeDetailInfo(orderChange);
|
|
|
+
|
|
|
+
|
|
|
+ // 환불 사전 정보 설정
|
|
|
+ int idx = 0;
|
|
|
+ int size = orderChangeList.size();
|
|
|
+ String chgGb = orderChangeList.iterator().next().getChgGb();
|
|
|
+ Integer ordNo = orderChangeList.iterator().next().getOrdNo();
|
|
|
+ Integer custNo = orderChangeList.iterator().next().getCustNo();
|
|
|
+ String ordNm = orderChangeList.iterator().next().getOrdNm();
|
|
|
+ String ordPhnno = orderChangeList.iterator().next().getOrdPhnno();
|
|
|
+ int[] ordDtlNoArr = new int[size];
|
|
|
+ int[] cnclRtnReqQtyArr = new int[size];
|
|
|
+
|
|
|
+ for (OrderChange param : orderChangeList) {
|
|
|
+ ordDtlNoArr[idx] = param.getOrdDtlNo();
|
|
|
+ cnclRtnReqQtyArr[idx] = param.getChgQty();
|
|
|
+ idx++;
|
|
|
+ }
|
|
|
+
|
|
|
+ // 회원/비회원 정보 설정
|
|
|
+ if (custNo > 0) {
|
|
|
+ orderChange.setCustNo(custNo);
|
|
|
+ } else {
|
|
|
+ orderChange.setOrdNm(ordNm);
|
|
|
+ orderChange.setOrdPhnno(ordPhnno);
|
|
|
+ }
|
|
|
+
|
|
|
+ orderChange.setOrdNo(ordNo);
|
|
|
+ orderChange.setChgGb(chgGb);
|
|
|
+ orderChange.setOrdDtlNoArr(ordDtlNoArr);
|
|
|
+ orderChange.setCnclRtnReqQtyArr(cnclRtnReqQtyArr);
|
|
|
+
|
|
|
+ // 환불 사전 정보 조회
|
|
|
+ GagaMap refundPreInfo = orderChangeService.getRefundPreInfo2(orderChange);
|
|
|
+ List<Order> cnclReqList2 = (List<Order>)refundPreInfo.get("cnclReqList");
|
|
|
+
|
|
|
+ GagaMap info = orderRefundService.cnclRtnRefundAmt2(cnclReqList2);
|
|
|
+
|
|
|
+ //List<Order> cnclReqList = (List<Order>)info.get("cnclRtnList");
|
|
|
+ List<Order> cancelOrderRefundList = (List<Order>)info.get("cancelOrderRefundList");
|
|
|
+ //log.info("cnclReqList {}"+cnclReqList);
|
|
|
+ log.info("cancelOrderRefundList {}"+cancelOrderRefundList);
|
|
|
+
|
|
|
+
|
|
|
+ for (Order vo : cancelOrderRefundList) {
|
|
|
+
|
|
|
+ if(data.getOrdDtlNo().equals(vo.getOrdDtlNo()))
|
|
|
+ {
|
|
|
+ vo.setRegNo(TsbConstants.REG_NO);
|
|
|
+ vo.setUpdNo(TsbConstants.REG_NO);
|
|
|
+ vo.setOrdDtlStat(OrderDetailStat.PAYMENT_AFTER_CANCEL.value());
|
|
|
+ // 원주문 상세정보 수정
|
|
|
+ orderChangeDao.updateOrderDetailTemp(vo);
|
|
|
+ // 원주문 상세 이력 등록
|
|
|
+ orderDao.createOrderDetailHst(vo);
|
|
|
+
|
|
|
+ //vo.setOrdDtlNo(data.getOrderdtlno());
|
|
|
+ // 3-2-3. 주문상세단품정보 수정 및 주문상세단품이력 등록
|
|
|
+ // 주문상세단품정보조회
|
|
|
+ Collection<Order> orderDetailItemList = orderChangeDao.getOrderDetailItemForCnclRtn(vo);
|
|
|
+ int ordDtlOrdAmt = orderDetailItemList.iterator().next().getOrdAmt();
|
|
|
+ int ordDtlCnclRtnAmt = orderDetailItemList.iterator().next().getCnclRtnAmt();
|
|
|
+ int ordDtlCpn1DcAmt = orderDetailItemList.iterator().next().getCpn1DcAmt();
|
|
|
+ int ordDtlTmtb1DcAmt = orderDetailItemList.iterator().next().getTmtb1DcAmt();
|
|
|
+ int ordDtlTmtb2DcAmt = orderDetailItemList.iterator().next().getTmtb2DcAmt();
|
|
|
+ int ordDtlGoodsCpnDcAmt = orderDetailItemList.iterator().next().getGoodsCpnDcAmt();
|
|
|
+ int ordDtlCartCpnDcAmt = orderDetailItemList.iterator().next().getCartCpnDcAmt();
|
|
|
+ int ordDtlPntDcAmt = orderDetailItemList.iterator().next().getPntDcAmt();
|
|
|
+ int ordDtlPrePntDcAmt = orderDetailItemList.iterator().next().getPrePntDcAmt();
|
|
|
+ int ordDtlSavePntAmt = orderDetailItemList.iterator().next().getSavePntAmt();
|
|
|
+ int ordDtlRealOrdAmt = orderDetailItemList.iterator().next().getRealOrdAmt();
|
|
|
+ int ordDtlGfcdUseAmt = orderDetailItemList.iterator().next().getGfcdUseAmt();
|
|
|
+
|
|
|
+ // 주문상세단품단위 금액 등록
|
|
|
+ int length = orderDetailItemList.size();
|
|
|
+ int index = 1;
|
|
|
+ int leftOrdAmt = ordDtlOrdAmt;
|
|
|
+ int leftCnclRtnAmt = ordDtlCnclRtnAmt;
|
|
|
+ int leftCpn1DcAmt = ordDtlCpn1DcAmt;
|
|
|
+ int leftTmtb1DcAmt = ordDtlTmtb1DcAmt;
|
|
|
+ int leftTmtb2DcAmt = ordDtlTmtb2DcAmt;
|
|
|
+ int leftGoodsCpnDcAmt = ordDtlGoodsCpnDcAmt;
|
|
|
+ int leftCartCpnDcAmt = ordDtlCartCpnDcAmt;
|
|
|
+ int leftPntDcAmt = ordDtlPntDcAmt;
|
|
|
+ int leftPrePntDcAmt = ordDtlPrePntDcAmt;
|
|
|
+ int leftSavePntAmt = ordDtlSavePntAmt;
|
|
|
+ int leftRealOrdAmt = ordDtlRealOrdAmt;
|
|
|
+ int leftGfcdUseAmt = ordDtlGfcdUseAmt;
|
|
|
+
|
|
|
+ for (Order orderDetailItem : orderDetailItemList) {
|
|
|
+ double dtlOrdAmt = orderDetailItem.getDtlOrdAmt();
|
|
|
+ double dtlItemOrdAmt = orderDetailItem.getDtlItemOrdAmt();
|
|
|
+ double tempDivD = (dtlItemOrdAmt / dtlOrdAmt) * 100;
|
|
|
+
|
|
|
+ int tempDiv = Integer.parseInt(String.valueOf(Math.round(tempDivD)));
|
|
|
+
|
|
|
+ if (index == length) {
|
|
|
+ orderDetailItem.setCnclRtnAmt(leftCnclRtnAmt);
|
|
|
+ orderDetailItem.setCpn1DcAmt(leftCpn1DcAmt);
|
|
|
+ orderDetailItem.setTmtb1DcAmt(leftTmtb1DcAmt);
|
|
|
+ orderDetailItem.setTmtb2DcAmt(leftTmtb2DcAmt);
|
|
|
+ orderDetailItem.setGoodsCpnDcAmt(leftGoodsCpnDcAmt);
|
|
|
+ orderDetailItem.setCartCpnDcAmt(leftCartCpnDcAmt);
|
|
|
+ orderDetailItem.setPrePntDcAmt(leftPrePntDcAmt);
|
|
|
+ orderDetailItem.setPntDcAmt(leftPntDcAmt);
|
|
|
+ orderDetailItem.setGfcdUseAmt(leftGfcdUseAmt);
|
|
|
+ orderDetailItem.setRealOrdAmt(leftRealOrdAmt);
|
|
|
+ orderDetailItem.setSavePntAmt(leftSavePntAmt);
|
|
|
+
|
|
|
+ } else {
|
|
|
+ orderDetailItem.setCnclRtnAmt((ordDtlCnclRtnAmt * tempDiv) / 100);
|
|
|
+ orderDetailItem.setCpn1DcAmt((ordDtlCpn1DcAmt * tempDiv) / 100);
|
|
|
+ orderDetailItem.setTmtb1DcAmt((ordDtlTmtb1DcAmt * tempDiv) / 100);
|
|
|
+ orderDetailItem.setTmtb2DcAmt((ordDtlTmtb2DcAmt * tempDiv) / 100);
|
|
|
+ orderDetailItem.setGoodsCpnDcAmt((ordDtlGoodsCpnDcAmt * tempDiv) / 100);
|
|
|
+ orderDetailItem.setCartCpnDcAmt((ordDtlCartCpnDcAmt * tempDiv) / 100);
|
|
|
+ orderDetailItem.setPrePntDcAmt((ordDtlPrePntDcAmt * tempDiv) / 100);
|
|
|
+ orderDetailItem.setPntDcAmt((ordDtlPntDcAmt * tempDiv) / 100);
|
|
|
+ orderDetailItem.setGfcdUseAmt((ordDtlGfcdUseAmt * tempDiv) / 100);
|
|
|
+ orderDetailItem.setRealOrdAmt((ordDtlRealOrdAmt * tempDiv) / 100);
|
|
|
+ orderDetailItem.setSavePntAmt((ordDtlSavePntAmt * tempDiv) / 100);
|
|
|
+
|
|
|
+ leftCnclRtnAmt -= ((ordDtlCnclRtnAmt * tempDiv) / 100);
|
|
|
+ leftCpn1DcAmt -= ((ordDtlCpn1DcAmt * tempDiv) / 100);
|
|
|
+ leftTmtb1DcAmt -= ((ordDtlTmtb1DcAmt * tempDiv) / 100);
|
|
|
+ leftTmtb2DcAmt -= ((ordDtlTmtb2DcAmt * tempDiv) / 100);
|
|
|
+ leftGoodsCpnDcAmt -= ((ordDtlGoodsCpnDcAmt * tempDiv) / 100);
|
|
|
+ leftCartCpnDcAmt -= ((ordDtlCartCpnDcAmt * tempDiv) / 100);
|
|
|
+ leftPrePntDcAmt -= ((ordDtlPrePntDcAmt * tempDiv) / 100);
|
|
|
+ leftPntDcAmt -= ((ordDtlPntDcAmt * tempDiv) / 100);
|
|
|
+ leftGfcdUseAmt -= ((ordDtlGfcdUseAmt * tempDiv) / 100);
|
|
|
+ leftRealOrdAmt -= ((ordDtlRealOrdAmt * tempDiv) / 100);
|
|
|
+ leftSavePntAmt -= ((ordDtlSavePntAmt * tempDiv) / 100);
|
|
|
+ }
|
|
|
+
|
|
|
+ orderDetailItem.setRegNo(TsbConstants.REG_NO);
|
|
|
+ orderDetailItem.setUpdNo(TsbConstants.REG_NO);
|
|
|
+ orderDetailItem.setOrdDtlStat(vo.getOrdDtlStat());
|
|
|
+
|
|
|
+ //log.info("ordDtlStat ::: {}", ordDtlStat);
|
|
|
+
|
|
|
+ orderChangeDao.updateOrderDetailItemTemp(orderDetailItem);
|
|
|
+ orderChangeDao.createOrderDetailItemHstTemp(orderDetailItem);
|
|
|
+
|
|
|
+ index++;
|
|
|
+ }
|
|
|
+
|
|
|
+ // 교환주문 상세 수성
|
|
|
+ vo.setOrdDtlStat(OrderDetailStat.PAYMENT_COMPLETE.value()); // 교환주문상세 결제완료
|
|
|
+ vo.setOrdDtlNo(data.getChgOrdDtlNo());
|
|
|
+ vo.setWdBfSendYn(data.getWdBfSendYn());
|
|
|
+ orderChangeDao.updateChgOrderDetailTemp(vo);
|
|
|
+ // 교환주문 상세 이력 등록
|
|
|
+ orderDao.createOrderDetailHst(vo);
|
|
|
+
|
|
|
+ // 주문상세단품정보조회
|
|
|
+ Collection<Order> orderDetailItemList2 = orderChangeDao.getOrderDetailItemForCnclRtn(vo);
|
|
|
+ int ordDtlOrdAmt2 = orderDetailItemList2.iterator().next().getOrdAmt();
|
|
|
+ int ordDtlCnclRtnAmt2 = orderDetailItemList2.iterator().next().getCnclRtnAmt();
|
|
|
+ int ordDtlCpn1DcAmt2 = orderDetailItemList2.iterator().next().getCpn1DcAmt();
|
|
|
+ int ordDtlTmtb1DcAmt2 = orderDetailItemList2.iterator().next().getTmtb1DcAmt();
|
|
|
+ int ordDtlTmtb2DcAmt2 = orderDetailItemList2.iterator().next().getTmtb2DcAmt();
|
|
|
+ int ordDtlGoodsCpnDcAmt2 = orderDetailItemList2.iterator().next().getGoodsCpnDcAmt();
|
|
|
+ int ordDtlCartCpnDcAmt2 = orderDetailItemList2.iterator().next().getCartCpnDcAmt();
|
|
|
+ int ordDtlPntDcAmt2 = orderDetailItemList2.iterator().next().getPntDcAmt();
|
|
|
+ int ordDtlPrePntDcAmt2 = orderDetailItemList2.iterator().next().getPrePntDcAmt();
|
|
|
+ int ordDtlSavePntAmt2 = orderDetailItemList2.iterator().next().getSavePntAmt();
|
|
|
+ int ordDtlRealOrdAmt2 = orderDetailItemList2.iterator().next().getRealOrdAmt();
|
|
|
+ int ordDtlGfcdUseAmt2 = orderDetailItemList2.iterator().next().getGfcdUseAmt();
|
|
|
+
|
|
|
+ // 주문상세단품단위 금액 등록
|
|
|
+ int length2 = orderDetailItemList2.size();
|
|
|
+ int index2 = 1;
|
|
|
+ int leftOrdAmt2 = ordDtlOrdAmt2;
|
|
|
+ int leftCnclRtnAmt2 = ordDtlCnclRtnAmt2;
|
|
|
+ int leftCpn1DcAmt2 = ordDtlCpn1DcAmt2;
|
|
|
+ int leftTmtb1DcAmt2 = ordDtlTmtb1DcAmt2;
|
|
|
+ int leftTmtb2DcAmt2 = ordDtlTmtb2DcAmt2;
|
|
|
+ int leftGoodsCpnDcAmt2 = ordDtlGoodsCpnDcAmt2;
|
|
|
+ int leftCartCpnDcAmt2 = ordDtlCartCpnDcAmt2;
|
|
|
+ int leftPntDcAmt2 = ordDtlPntDcAmt2;
|
|
|
+ int leftPrePntDcAmt2 = ordDtlPrePntDcAmt2;
|
|
|
+ int leftSavePntAmt2 = ordDtlSavePntAmt2;
|
|
|
+ int leftRealOrdAmt2 = ordDtlRealOrdAmt2;
|
|
|
+ int leftGfcdUseAmt2 = ordDtlGfcdUseAmt2;
|
|
|
+
|
|
|
+ for (Order orderDetailItem : orderDetailItemList2) {
|
|
|
+ double dtlOrdAmt = orderDetailItem.getDtlOrdAmt();
|
|
|
+ double dtlItemOrdAmt = orderDetailItem.getDtlItemOrdAmt();
|
|
|
+ double tempDivD = (dtlItemOrdAmt / dtlOrdAmt) * 100;
|
|
|
+
|
|
|
+ int tempDiv = Integer.parseInt(String.valueOf(Math.round(tempDivD)));
|
|
|
+
|
|
|
+ if (index2 == length2) {
|
|
|
+ orderDetailItem.setOrdAmt(leftOrdAmt2);
|
|
|
+ orderDetailItem.setCnclRtnAmt(leftCnclRtnAmt2);
|
|
|
+ orderDetailItem.setCpn1DcAmt(leftCpn1DcAmt2);
|
|
|
+ orderDetailItem.setTmtb1DcAmt(leftTmtb1DcAmt2);
|
|
|
+ orderDetailItem.setTmtb2DcAmt(leftTmtb2DcAmt2);
|
|
|
+ orderDetailItem.setGoodsCpnDcAmt(leftGoodsCpnDcAmt2);
|
|
|
+ orderDetailItem.setCartCpnDcAmt(leftCartCpnDcAmt2);
|
|
|
+ orderDetailItem.setPrePntDcAmt(leftPrePntDcAmt2);
|
|
|
+ orderDetailItem.setPntDcAmt(leftPntDcAmt2);
|
|
|
+ orderDetailItem.setGfcdUseAmt(leftGfcdUseAmt2);
|
|
|
+ orderDetailItem.setRealOrdAmt(leftRealOrdAmt2);
|
|
|
+ orderDetailItem.setSavePntAmt(leftSavePntAmt2);
|
|
|
+
|
|
|
+ } else {
|
|
|
+ orderDetailItem.setOrdAmt((ordDtlOrdAmt2 * tempDiv) / 100);
|
|
|
+ orderDetailItem.setCnclRtnAmt((ordDtlCnclRtnAmt2 * tempDiv) / 100);
|
|
|
+ orderDetailItem.setCpn1DcAmt((ordDtlCpn1DcAmt2 * tempDiv) / 100);
|
|
|
+ orderDetailItem.setTmtb1DcAmt((ordDtlTmtb1DcAmt2 * tempDiv) / 100);
|
|
|
+ orderDetailItem.setTmtb2DcAmt((ordDtlTmtb2DcAmt2 * tempDiv) / 100);
|
|
|
+ orderDetailItem.setGoodsCpnDcAmt((ordDtlGoodsCpnDcAmt2 * tempDiv) / 100);
|
|
|
+ orderDetailItem.setCartCpnDcAmt((ordDtlCartCpnDcAmt2 * tempDiv) / 100);
|
|
|
+ orderDetailItem.setPrePntDcAmt((ordDtlPrePntDcAmt2 * tempDiv) / 100);
|
|
|
+ orderDetailItem.setPntDcAmt((ordDtlPntDcAmt2 * tempDiv) / 100);
|
|
|
+ orderDetailItem.setGfcdUseAmt((ordDtlGfcdUseAmt2 * tempDiv) / 100);
|
|
|
+ orderDetailItem.setRealOrdAmt((ordDtlRealOrdAmt2 * tempDiv) / 100);
|
|
|
+ orderDetailItem.setSavePntAmt((ordDtlSavePntAmt2 * tempDiv) / 100);
|
|
|
+
|
|
|
+ leftOrdAmt2 -= ((ordDtlOrdAmt2 * tempDiv) / 100);
|
|
|
+ leftCnclRtnAmt2 -= ((ordDtlCnclRtnAmt2 * tempDiv) / 100);
|
|
|
+ leftCpn1DcAmt2 -= ((ordDtlCpn1DcAmt2 * tempDiv) / 100);
|
|
|
+ leftTmtb1DcAmt2 -= ((ordDtlTmtb1DcAmt2 * tempDiv) / 100);
|
|
|
+ leftTmtb2DcAmt2 -= ((ordDtlTmtb2DcAmt2 * tempDiv) / 100);
|
|
|
+ leftGoodsCpnDcAmt2 -= ((ordDtlGoodsCpnDcAmt2 * tempDiv) / 100);
|
|
|
+ leftCartCpnDcAmt2 -= ((ordDtlCartCpnDcAmt2 * tempDiv) / 100);
|
|
|
+ leftPrePntDcAmt2 -= ((ordDtlPrePntDcAmt2 * tempDiv) / 100);
|
|
|
+ leftPntDcAmt2 -= ((ordDtlPntDcAmt2 * tempDiv) / 100);
|
|
|
+ leftGfcdUseAmt2 -= ((ordDtlGfcdUseAmt2 * tempDiv) / 100);
|
|
|
+ leftRealOrdAmt2 -= ((ordDtlRealOrdAmt2 * tempDiv) / 100);
|
|
|
+ leftSavePntAmt2 -= ((ordDtlSavePntAmt2 * tempDiv) / 100);
|
|
|
+ }
|
|
|
+ log.info("orderDetailItem: "+orderDetailItem.getOrdAmt());
|
|
|
+ orderDetailItem.setRegNo(TsbConstants.REG_NO);
|
|
|
+ orderDetailItem.setUpdNo(TsbConstants.REG_NO);
|
|
|
+ orderDetailItem.setOrdDtlStat(vo.getOrdDtlStat());
|
|
|
+
|
|
|
+ //log.info("ordDtlStat ::: {}", ordDtlStat);
|
|
|
+
|
|
|
+ orderChangeDao.updateChgOrderDetailItemTemp(orderDetailItem);
|
|
|
+ orderChangeDao.createOrderDetailItemHstTemp(orderDetailItem);
|
|
|
+
|
|
|
+ index2++;
|
|
|
+ }
|
|
|
+
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ }
|
|
|
+
|
|
|
}
|
|
|
+ /**
|
|
|
+ * 주문정보 조회
|
|
|
+ * @param Delivery
|
|
|
+ * @return Delivery
|
|
|
+ * @author moon
|
|
|
+ * @since 2021. 03. 23
|
|
|
+ */
|
|
|
+// public Delivery getOrderInfoList(Delivery delivery) {
|
|
|
+//
|
|
|
+// Delivery orderInfo = deliveryDao.getOrderInfoList(delivery);
|
|
|
+// return orderInfo;
|
|
|
+// }
|
|
|
|
|
|
/**
|
|
|
- * 회수결과 - 주문상세 상태값 변경
|
|
|
+ * 회수결과 주문변경 처리
|
|
|
* @param Delivery
|
|
|
* @return
|
|
|
* @author moon
|
|
|
* @since 2021. 03. 25
|
|
|
*/
|
|
|
- @Transactional("shopTxnManager")
|
|
|
- public void updateWdOrderDtlStat(Delivery data) {
|
|
|
-
|
|
|
- data.setOrdDtlStat(OrderDetailStat.PAYMENT_AFTER_CANCEL.value()); //
|
|
|
- data.setUpdNo(TsbConstants.REG_NO);
|
|
|
- deliveryDao.updateWdOrderDtlStat(data);
|
|
|
-
|
|
|
- // 주문상세이력
|
|
|
- Order order = new Order();
|
|
|
- order.setOrdDtlNo(data.getOrderdtlno());
|
|
|
- order.setUpdNo(TsbConstants.REG_NO);
|
|
|
- order.setRegNo(TsbConstants.REG_NO);
|
|
|
- orderDao.createOrderDetailHst(order);
|
|
|
-
|
|
|
- // 주문상세아이템 이력
|
|
|
- data.setOrdDtlStat(OrderChangeStat.EXCHANGE_COMPLETE.value());
|
|
|
- data.setOrdDtlNo(data.getOrderdtlno());
|
|
|
- deliveryDao.createOrderDetailItemHst(data);
|
|
|
+// @Transactional("shopTxnManager")
|
|
|
+// public void updateOrderChange(Delivery delivery) {
|
|
|
+//
|
|
|
+// // 교환일경우 자동 완료처리
|
|
|
+// delivery.setRegNo(TsbConstants.REG_NO);
|
|
|
+// if (OrderChangeGb.EXCHANGE.value().equals(delivery.getChgGb())) { // 교환
|
|
|
+// delivery.setChgStat(OrderChangeStat.EXCHANGE_COMPLETE.value()); // 교환완료 G685_40
|
|
|
+// } else {
|
|
|
+// delivery.setChgStat(OrderChangeStat.RETURN_ING.value()); // 반품진행중 G685_33
|
|
|
+// }
|
|
|
+//
|
|
|
+// // TB_ORDER_CHANGE
|
|
|
+// deliveryDao.updateTbOrderChange(delivery);
|
|
|
+//
|
|
|
+// // TB_ORDER_CHANGE_DETAIL
|
|
|
+// deliveryDao.updateTbOrderChangeDetail(delivery);
|
|
|
+//
|
|
|
+// // 주문상세변경 이력
|
|
|
+// OrderChange ordChg = new OrderChange();
|
|
|
+// ordChg.setRegNo(0);
|
|
|
+// ordChg.setUpdNo(0);
|
|
|
+// ordChg.setOrdChgSq(delivery.getOrdChgSq());
|
|
|
+// ordChg.setOrdDtlNo(delivery.getOrderdtlno());
|
|
|
+// ordChg.setChgStat(delivery.getChgStat());
|
|
|
+// orderChangeDao.createOrderChangeDetailHst(ordChg);
|
|
|
+//
|
|
|
+// }
|
|
|
|
|
|
- }
|
|
|
+ /**
|
|
|
+ * 회수결과 - 주문상세 상태값 변경
|
|
|
+ * @param Delivery
|
|
|
+ * @return
|
|
|
+ * @author moon
|
|
|
+ * @since 2021. 03. 25
|
|
|
+ */
|
|
|
+// @Transactional("shopTxnManager")
|
|
|
+// public void updateWdOrderDtlStat(Delivery data) {
|
|
|
+//
|
|
|
+// data.setOrdDtlStat(OrderDetailStat.PAYMENT_AFTER_CANCEL.value()); //
|
|
|
+// data.setUpdNo(TsbConstants.REG_NO);
|
|
|
+// deliveryDao.updateWdOrderDtlStat(data);
|
|
|
+//
|
|
|
+// // 주문상세이력
|
|
|
+// Order order = new Order();
|
|
|
+// order.setOrdDtlNo(data.getOrderdtlno());
|
|
|
+// order.setUpdNo(TsbConstants.REG_NO);
|
|
|
+// order.setRegNo(TsbConstants.REG_NO);
|
|
|
+// orderDao.createOrderDetailHst(order);
|
|
|
+//
|
|
|
+// // 주문상세아이템 이력
|
|
|
+// data.setOrdDtlStat(OrderChangeStat.EXCHANGE_COMPLETE.value());
|
|
|
+// data.setOrdDtlNo(data.getOrderdtlno());
|
|
|
+// deliveryDao.createOrderDetailItemHst(data);
|
|
|
+//
|
|
|
+// }
|
|
|
|
|
|
/**
|
|
|
* 교환대기 상태값변경
|
|
|
@@ -320,22 +651,22 @@ public class TsbDeliveryService {
|
|
|
* @author moon
|
|
|
* @since 2021. 03. 25
|
|
|
*/
|
|
|
- @Transactional("shopTxnManager")
|
|
|
- public void updateOrderExch(Delivery data) {
|
|
|
-
|
|
|
- data.setOrdDtlStat(OrderDetailStat.PAYMENT_COMPLETE.value()); // 결제완료 G013_20
|
|
|
- data.setUpdNo(TsbConstants.REG_NO);
|
|
|
- int rtn = deliveryDao.updateOrderExch(data);
|
|
|
-
|
|
|
- if (rtn > 0) {
|
|
|
- // 주문상세이력
|
|
|
- Order order = new Order();
|
|
|
- order.setOrdDtlNo(data.getChgOrdDtlNo());
|
|
|
- order.setUpdNo(TsbConstants.REG_NO);
|
|
|
- order.setRegNo(TsbConstants.REG_NO);
|
|
|
- orderDao.createOrderDetailHst(order);
|
|
|
- }
|
|
|
- }
|
|
|
+// @Transactional("shopTxnManager")
|
|
|
+// public void updateOrderExch(Delivery data) {
|
|
|
+//
|
|
|
+// data.setOrdDtlStat(OrderDetailStat.PAYMENT_COMPLETE.value()); // 결제완료 G013_20
|
|
|
+// data.setUpdNo(TsbConstants.REG_NO);
|
|
|
+// int rtn = deliveryDao.updateOrderExch(data);
|
|
|
+//
|
|
|
+// if (rtn > 0) {
|
|
|
+// // 주문상세이력
|
|
|
+// Order order = new Order();
|
|
|
+// order.setOrdDtlNo(data.getChgOrdDtlNo());
|
|
|
+// order.setUpdNo(TsbConstants.REG_NO);
|
|
|
+// order.setRegNo(TsbConstants.REG_NO);
|
|
|
+// orderDao.createOrderDetailHst(order);
|
|
|
+// }
|
|
|
+// }
|
|
|
|
|
|
/**
|
|
|
* 출고 송장번호 등록
|
|
|
@@ -717,7 +1048,7 @@ public class TsbDeliveryService {
|
|
|
public void updateTbOrderChaneInvoc(Delivery delivery) {
|
|
|
|
|
|
delivery.setUpdNo(TsbConstants.REG_NO);
|
|
|
- delivery.setShipCompCd("D1013");
|
|
|
+ delivery.setShipCompCd("D1029");
|
|
|
deliveryDao.updateTbOrderChaneInvoc(delivery);
|
|
|
}
|
|
|
|