|
|
@@ -1,16 +1,11 @@
|
|
|
package com.style24.scm.biz.web;
|
|
|
|
|
|
import java.io.IOException;
|
|
|
-import java.io.PrintWriter;
|
|
|
import java.util.ArrayList;
|
|
|
import java.util.Collection;
|
|
|
|
|
|
import javax.servlet.http.HttpServletRequest;
|
|
|
-import javax.servlet.http.HttpServletResponse;
|
|
|
|
|
|
-import com.style24.core.biz.checkout.base.ChangedProductOrderInfo;
|
|
|
-import com.style24.core.biz.checkout.base.ProductOrderChangeType;
|
|
|
-import com.style24.core.biz.service.TscNaverPayService;
|
|
|
import org.apache.commons.collections4.CollectionUtils;
|
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
|
import org.springframework.core.env.Environment;
|
|
|
@@ -30,11 +25,15 @@ import com.gagaframework.web.parameter.GagaMap;
|
|
|
import com.gagaframework.web.rest.server.GagaResponse;
|
|
|
import com.gagaframework.web.util.GagaDateUtil;
|
|
|
import com.gagaframework.web.util.GagaFileUtil;
|
|
|
+import com.style24.core.biz.service.TscKakaotalkService;
|
|
|
+import com.style24.core.biz.service.TscNaverPayService;
|
|
|
+import com.style24.core.biz.service.TscOrderChangeService;
|
|
|
import com.style24.core.biz.service.TscOrderService;
|
|
|
import com.style24.core.support.env.TscConstants;
|
|
|
import com.style24.core.support.message.TscMessageByLocale;
|
|
|
import com.style24.persistence.TscPageRequest;
|
|
|
import com.style24.persistence.domain.Order;
|
|
|
+import com.style24.persistence.domain.OrderChange;
|
|
|
import com.style24.scm.biz.service.TssOrderService;
|
|
|
import com.style24.scm.biz.service.TssRendererService;
|
|
|
import com.style24.scm.support.controller.TssBaseController;
|
|
|
@@ -71,6 +70,12 @@ public class TssOrderController extends TssBaseController {
|
|
|
|
|
|
@Autowired
|
|
|
private TscNaverPayService coreNaverPayService;
|
|
|
+
|
|
|
+ @Autowired
|
|
|
+ private TscOrderChangeService coreOrderChangeService;
|
|
|
+
|
|
|
+ @Autowired
|
|
|
+ private TscKakaotalkService coreKakaotalkService;
|
|
|
|
|
|
/**
|
|
|
* 입점업체미발주목록화면
|
|
|
@@ -316,7 +321,79 @@ public class TssOrderController extends TssBaseController {
|
|
|
@ResponseBody
|
|
|
public GagaResponse sellerDelvStarted(@RequestBody Collection<Order> orderList) {
|
|
|
int userNo = TssSession.getInfo().getUserNo();
|
|
|
- coreOrderService.updateSellerDelvStartAndPartCancel(orderList, userNo);
|
|
|
+ Collection<OrderChange> cancelDataList = coreOrderService.updateSellerDelvStartAndPartCancel(orderList, userNo);
|
|
|
+
|
|
|
+ // [주문배송] 리스트로 지정된 주문상세번호와 취소수량 배열로 변경 후 취소
|
|
|
+ for (OrderChange change : cancelDataList) {
|
|
|
+ change.setOrdDtlNoArr(change.getOrdDtlNoList().stream().mapToInt(i->i).toArray());
|
|
|
+ change.setCnclRtnReqQtyArr(change.getCnclRtnReqQtyList().stream().mapToInt(i->i).toArray());
|
|
|
+
|
|
|
+ // 2021.07.15 교환배송건인 경우는 취소처리 대상에서 예외 처리
|
|
|
+ if (change.getOrdChgSq() == null || change.getOrdChgSq() < 1) {
|
|
|
+
|
|
|
+ // PG구분:KCP, 결제수단:무통장입금, 환불계좌가 없는경우 취소접수단계로 처리
|
|
|
+ if (TscConstants.PgGb.KCP.value().equals(change.getPgGb())) {
|
|
|
+ // 2021.09.10 card007 핸드폰결제, 무통장입금은 부분취소 시 에러 발생함으로 취소접수로 처리
|
|
|
+ if (TscConstants.PayMeans.BANK_DEPOSIT.value().equals(change.getPayMeans()) || TscConstants.PayMeans.CELL_PHONE.value().equals(change.getPayMeans())) {
|
|
|
+ // 취소점수
|
|
|
+ change.setChgGb(TscConstants.OrderChangeGb.CANCEL.value());
|
|
|
+ coreOrderChangeService.cancelRequest(change);
|
|
|
+
|
|
|
+ // 2021.09.10 card007 취소 접수시에는 CS에서 OB함으로 카카오알림톡 발송 X
|
|
|
+ // try {
|
|
|
+ // // 환불계좌X 취소 접수 알림톡 관련 정보 조회
|
|
|
+ // OrderChange orderChange = new OrderChange();
|
|
|
+ // orderChange = coreOrderChangeService.getKakaoOrderCancelInfo(change.getOrdChgSq());
|
|
|
+ //
|
|
|
+ // // 취소 알림톡 발송
|
|
|
+ // orderChange.setChgGb(TscConstants.OrderCancelReason.SOLDOUT_CANCEL.value());
|
|
|
+ // coreKakaotalkService.sendOrderCancelComplete(orderChange, userNo);
|
|
|
+ // } catch (Exception e) {
|
|
|
+ // e.printStackTrace();
|
|
|
+ // }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ // 무통장입금 주문 중 환불계좌정보 없을 경우 제외는 취소처리
|
|
|
+ // 2021.09.10 card007 핸드폰결제, 무통장입금 제외로 변경
|
|
|
+ else {
|
|
|
+ // 취소완료처리
|
|
|
+ GagaMap cancelInfo = coreOrderChangeService.orderCancelPreInfo(change, userNo);
|
|
|
+
|
|
|
+ // 3. 취소완료 카카오알림톡 발송
|
|
|
+ Integer ordChgSq = cancelInfo.getInt("ordChgSq");
|
|
|
+
|
|
|
+ if (ordChgSq != null && ordChgSq > 0) {
|
|
|
+
|
|
|
+ // 네이버페이 품절취소 송부
|
|
|
+ if(TscConstants.PgGb.NAVER_ORDER.value().equals(change.getPgGb())) {
|
|
|
+ for (int i = 0; i < change.getOrdDtlNoArr().length; i++) {
|
|
|
+ Order order = new Order();
|
|
|
+ order.setOrdDtlNo(change.getOrdDtlNoArr()[i]);
|
|
|
+ try {
|
|
|
+ coreNaverPayService.sendNaverPaySoldoutCancel(order, userNo); // 품절취소
|
|
|
+ } catch (Exception e) {
|
|
|
+ e.printStackTrace();
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ try {
|
|
|
+ // 취소 알림톡 관련 정보 조회
|
|
|
+ OrderChange orderChange = new OrderChange();
|
|
|
+ orderChange = coreOrderChangeService.getKakaoOrderCancelInfo(ordChgSq);
|
|
|
+
|
|
|
+ // 취소 알림톡 발송
|
|
|
+ orderChange.setChgGb(TscConstants.OrderCancelReason.SOLDOUT_CANCEL.value());
|
|
|
+ coreKakaotalkService.sendOrderCancelComplete(orderChange, userNo);
|
|
|
+ } catch (Exception e) {
|
|
|
+ e.printStackTrace();
|
|
|
+ }
|
|
|
+
|
|
|
+ // TODO 취소 메일 송부를 품절취소에서도 보내는지 ?
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
return super.ok("");
|
|
|
}
|
|
|
|