浏览代码

개선 #998 [ADMIN][FRONT] 배송비 계산 처리 시 상품권 사용 금액 추가 처리 임시 커밋

card007 4 年之前
父节点
当前提交
aba5947658

+ 92 - 69
src/main/java/com/style24/admin/biz/service/TsaWithdrawService.java

@@ -371,77 +371,101 @@ public class TsaWithdrawService {
 	 */
 	@Transactional("shopTxnManager")
 	public void refundDetailConfirm(GagaMap params) {
-		
-		Integer userNo = TsaSession.getInfo().getUserNo();
-		OrderChange change = new OrderChange();
-		
-		change.setOrdNo(params.getInt("ordNo"));
-		change.setCustNo(params.getInt("custNo"));
-		change.setOrderNm(params.getString("ordNm"));
-		change.setPgGb(params.getString("pgGb"));
-		change.setPayMeans(params.getString("payMeans"));
-		change.setBankCd(params.getString("bankCd"));
-		change.setAccountNm(params.getString("accountNm"));
-		change.setAccountNo(CryptoUtils.decryptAES(params.getString("accountNo")));
-		//change.getOrdDtlNoList().add(params.getOrdDtlNo());
-		//change.getCnclRtnReqQtyList().add(params.getCnclRtnQty());
-		change.setChgReason(params.getString("chgReason"));
-		change.setChgReasonNm(params.getString("chgReasonNm"));
-		change.setBatchYn("N");
-		change.setDelvAddrSq(params.getInt("delvAddrSq"));
-		change.setAddDeliveryFeeYn(params.getString("addDeliveryFeeYn"));
-		change.setAddDeliveryFee(params.getInt("addDeliveryFee"));
-		change.setRegNo(userNo);
-		change.setUpdNo(userNo);
-		change.setUserNo(userNo);
-		change.setOrdChgSq(params.getInt("ordChgSq"));
-		change.setMallGb(params.getString("mallGb"));
-		change.setSpanRefundAmt(params.getInt("spanRefundAmt"));
-		change.setPgStat(params.getString("pgStat"));
-		change.setCodFeeYn(params.getString("codFeeYn"));
-		change.setCodFee(params.getInt("codFee"));
-		change.setEnCloseFeeYn(params.getString("enCloseFeeYn"));
-		change.setEncloseFee(params.getInt("enCloseFee"));
-		change.setWdInvoiceNo(params.getString("wdInvoiceNo"));
-
-		String allCanYn = params.getString("allCanYn");
-		
+		Integer userNo			= params.getInt("userNo");									// 사용자번호
+		String allCanYn			= params.getString("allCanYn");								// 전체반품여부
+		Integer ordNo			= params.getInt("ordNo");									// 주문번호
+		Integer custNo			= params.getInt("custNo");									// 고객번호
+		String chgReasonNm		= params.getString("chgReasonNm");							// 변경사유
+		String chgReason		= params.getString("chgReason");							// 변경사유코드
+		String accountNm		= params.getString("accountNm");							// 환불계좌이름
+		String accountNo		= CryptoUtils.decryptAES(params.getString("accountNo"));	// 환불계좌번호
+		String bankCd			= params.getString("bankCd");								// 환불계좌은행코드
+		String ordNm			= params.getString("ordNm");								// 주문자명
+		Integer delvAddrSq		= params.getInt("delvAddrSq");								// 배송지번호
+		int addDeliveryFee		= params.getInt("addDeliveryFee");							// 추가배송비
+		String addDeliveryFeeYn	= params.getString("addDeliveryFeeYn");						// 추가배송비여부
+		String mallGb			= params.getString("mallGb");								// 몰구분
+		Integer ordChgSq		= params.getInt("ordChgSq");								// 변경요청번호
+		String pgStat			= params.getString("pgStat");								// PG 상태
+		int codFee				= params.getInt("codFee");									// 착불비
+		String codFeeYn			= params.getString("codFeeYn");								// 착불비여부
+		String enCloseFeeYn		= params.getString("enCloseFeeYn");							// 동봉비여부
+		int enCloseFee			= params.getInt("enCloseFee");								// 동봉비
+		int wdInvoiceNo			= params.getInt("wdInvoiceNo");								// 회수송장번호
+		String wdGb				= params.getString("wdGb");									// 회수구분
+		int addPayCost			= params.getInt("addPayCost");								// 추가배송비
+		String delvExpnYn		= params.getString("delvExpnYn");							// 확정후 품절,불량 여부
+		String delvFeeCd		= params.getString("delvFeeCd");							// 배송비정책코드
+		String pgGb				= params.getString("pgGb");									// PG 구분
+		String payMeans			= params.getString("payMeans");
+		String batchYn			= "N";
+
+		// OrderChange change = new OrderChange();
+		// change.setOrdNo(params.getInt("ordNo"));
+		// change.setCustNo(params.getInt("custNo"));
+		// change.setOrderNm(params.getString("ordNm"));
+		// change.setPgGb(params.getString("pgGb"));
+		// change.setPayMeans(params.getString("payMeans"));
+		// change.setBankCd(params.getString("bankCd"));
+		// change.setAccountNm(params.getString("accountNm"));
+		// change.setAccountNo(CryptoUtils.decryptAES(params.getString("accountNo")));
+		// //change.getOrdDtlNoList().add(params.getOrdDtlNo());
+		// //change.getCnclRtnReqQtyList().add(params.getCnclRtnQty());
+		// change.setChgReason(params.getString("chgReason"));
+		// change.setChgReasonNm(params.getString("chgReasonNm"));
+		// change.setBatchYn("N");
+		// change.setDelvAddrSq(params.getInt("delvAddrSq"));
+		// change.setAddDeliveryFeeYn(params.getString("addDeliveryFeeYn"));
+		// change.setAddDeliveryFee(params.getInt("addDeliveryFee"));
+		// change.setRegNo(userNo);
+		// change.setUpdNo(userNo);
+		// change.setUserNo(userNo);
+		// change.setOrdChgSq(params.getInt("ordChgSq"));
+		// change.setMallGb(params.getString("mallGb"));
+		// change.setSpanRefundAmt(params.getInt("spanRefundAmt"));
+		// change.setPgStat(params.getString("pgStat"));
+		// change.setCodFeeYn(params.getString("codFeeYn"));
+		// change.setCodFee(params.getInt("codFee"));
+		// change.setEnCloseFeeYn(params.getString("enCloseFeeYn"));
+		// change.setEncloseFee(params.getInt("enCloseFee"));
+		// change.setWdInvoiceNo(params.getString("wdInvoiceNo"));
+
 		try {
-			OrderChange orderChange= new OrderChange();
-			orderChange.setOrdChgSq(params.getInt("ordChgSq"));
-			orderChange.setUserNo(params.getInt("custNo"));
+			OrderChange orderChange = new OrderChange();
+			orderChange.setOrdChgSq(ordChgSq);
+			orderChange.setUserNo(userNo);
 
 			GagaMap info = orderChangeService.refundConfirmPreInfo(orderChange);
 
-			info.set("chgReasonNm"		, params.getString("chgReasonNm"));							// 변경사유
-			info.set("chgReason"		, params.getString("chgReason"));							// 변경사유코드
-			info.set("accountNm"		, params.getString("accountNm"));							// 환불계좌이름
-			info.set("accountNo"		, CryptoUtils.decryptAES(params.getString("accountNo")));	// 환불계좌번호
-			info.set("bankCd"			, params.getString("bankCd"));								// 환불계좌은행코드
-			info.set("custNo"			, params.getInt("custNo"));									// 고객번호
-			info.set("ordNm"			, params.getString("ordNm"));								// 주문자명
-			info.set("delvAddrSq"		, params.getInt("delvAddrSq"));								// 배송지번호
-			info.set("delvExpnYn"		, params.getString("delvExpnYn"));							// 확정후반품,불량여부
-			info.set("addDeliveryFee"	, params.getInt("addDeliveryFee"));							// 추가배송비
-			info.set("addDeliveryFeeYn"	, params.getString("addDeliveryFeeYn"));					// 추가배송비여부
-			info.set("mallGb"			, params.getString("mallGb"));								// 몰구분
-			info.set("ordNo"			, params.getInt("ordNo"));									// 주문번호
-			info.set("ordChgSq"			, params.getInt("ordChgSq"));								// 변경요청번호
-			info.set("pgStat"			, params.getString("pgStat"));								// PG 상태
-			info.set("codFee"			, params.getInt("codFee"));									// 착불비
-			info.set("codFeeYn"			, params.getString("codFeeYn"));							// 착불비여부
-			info.set("enCloseFeeYn"		, params.getString("enCloseFeeYn"));						// 동봉비여부
-			info.set("enCloseFee"		, params.getInt("enCloseFee"));								// 동봉비
-			info.set("wdInvoiceNo"		, params.getInt("wdInvoiceNo"));							// 회수송장번호
-			info.set("wdGb"				, params.getString("wdGb"));								// 회수구분
-			info.set("addPayCost"		, params.getInt("addPayCost"));								// 추가배송비
-			info.set("allCanYn"			, allCanYn);												// 전체반품여부
-			info.set("delvExpnYn"		, params.getString("delvExpnYn"));							// 확정후 품절,불량 여부
-			info.set("delvFeeCd"		, params.getString("delvFeeCd"));							// 배송비정책코드
+			info.set("chgReasonNm"		, chgReasonNm);			// 변경사유
+			info.set("chgReason"		, chgReason);			// 변경사유코드
+			info.set("accountNm"		, accountNm);			// 환불계좌이름
+			info.set("accountNo"		, accountNo);			// 환불계좌번호
+			info.set("bankCd"			, bankCd);				// 환불계좌은행코드
+			info.set("custNo"			, custNo);				// 고객번호
+			info.set("ordNm"			, ordNm);				// 주문자명
+			info.set("delvAddrSq"		, delvAddrSq);			// 배송지번호
+			info.set("delvExpnYn"		, delvExpnYn);			// 확정후반품,불량여부
+			info.set("addDeliveryFee"	, addDeliveryFee);		// 추가배송비
+			info.set("addDeliveryFeeYn"	, addDeliveryFeeYn);	// 추가배송비여부
+			info.set("mallGb"			, mallGb);				// 몰구분
+			info.set("ordNo"			, ordNo);				// 주문번호
+			info.set("ordChgSq"			, ordChgSq);			// 변경요청번호
+			info.set("pgStat"			, pgStat);				// PG 상태
+			info.set("codFee"			, codFee);				// 착불비
+			info.set("codFeeYn"			, codFeeYn);			// 착불비여부
+			info.set("enCloseFeeYn"		, enCloseFeeYn);		// 동봉비여부
+			info.set("enCloseFee"		, enCloseFee);			// 동봉비
+			info.set("wdInvoiceNo"		, wdInvoiceNo);			// 회수송장번호
+			info.set("wdGb"				, wdGb);				// 회수구분
+			info.set("addPayCost"		, addPayCost);			// 추가배송비
+			info.set("allCanYn"			, allCanYn);			// 전체반품여부
+			info.set("delvExpnYn"		, delvExpnYn);			// 확정후 품절,불량 여부
+			info.set("delvFeeCd"		, delvFeeCd);			// 배송비정책코드
 
 			if ("Y".equals(allCanYn)) {
 				// orderChangeService.allRefund(change);
-				orderChangeService.allRefund(info);
+				orderChangeService.allRefund(info, userNo);
 			} else {
 				orderChangeService.partialRefund(info, userNo);
 			}
@@ -449,7 +473,7 @@ public class TsaWithdrawService {
 			// 반품완료 알림톡
 			
 			Withdraw refundOrdchgSq = new Withdraw();
-			refundOrdchgSq.setOrdChgSq(params.getInt("ordChgSq"));
+			refundOrdchgSq.setOrdChgSq(ordChgSq);
 			Withdraw refundInfo = withdrawDao.getRefundInfo(refundOrdchgSq);
 			
 			Order order = new Order();
@@ -463,13 +487,12 @@ public class TsaWithdrawService {
 			
 			kakaotalkService.sendRefundComplete(order, userNo);
 			
-			
 			// 네이버페이 환불컨펌
-			if(TscConstants.PgGb.NAVER_ORDER.value().equals(change.getPgGb())) {
+			if(TscConstants.PgGb.NAVER_ORDER.value().equals(pgGb)) {
 				// PG 미전송이 아닐 경우 (Y면 미전송, N이면 전송)
-				if("N".equals(change.getPgStat())) {
+				if("N".equals(pgStat)) {
 					// WMS 예외로 넘어온 데이터인지 확인 후 네이버페이 진행
-					Collection<OrderChange> exceptions = orderChangeDao.getOrderRecallExceptionInfo(change);		// 예외 품절 및 불량 정보 조회
+					Collection<OrderChange> exceptions = orderChangeDao.getOrderRecallExceptionInfo(orderChange);		// 예외 품절 및 불량 정보 조회
 					int i = 0;
 
 					for(OrderChange exception : exceptions) {

+ 14 - 18
src/main/java/com/style24/admin/biz/web/TsaWithdrawController.java

@@ -1,43 +1,34 @@
 package com.style24.admin.biz.web;
 
-import java.util.ArrayList;
 import java.util.Collection;
 
-import org.apache.commons.collections4.CollectionUtils;
-import org.apache.commons.lang3.StringUtils;
-//import org.apache.commons.collections.CollectionUtils;
-//import org.apache.commons.lang.StringUtils;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Controller;
 import org.springframework.web.bind.annotation.GetMapping;
-import org.springframework.web.bind.annotation.PathVariable;
 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.ResponseBody;
 import org.springframework.web.servlet.ModelAndView;
 
-import lombok.extern.slf4j.Slf4j;
-
 import com.gagaframework.web.parameter.GagaMap;
 import com.gagaframework.web.rest.server.GagaResponse;
-import com.style24.persistence.TscPageRequest;
-import com.style24.persistence.domain.CommonCode;
-import com.style24.persistence.domain.Delivery;
-import com.style24.persistence.domain.Pos;
-import com.style24.persistence.domain.Withdraw;
-import com.style24.persistence.domain.WithdrawExc;
-import com.style24.persistence.domain.WmsWithdraw;
-import com.style24.persistence.domain.OrderChange;
 import com.style24.admin.biz.service.TsaDeliveryService;
 import com.style24.admin.biz.service.TsaRendererService;
 import com.style24.admin.biz.service.TsaWithdrawService;
 import com.style24.admin.biz.service.TsaWmsWithdrawService;
 import com.style24.admin.support.controller.TsaBaseController;
 import com.style24.admin.support.security.session.TsaSession;
-import com.style24.core.support.session.TscSession;
-import com.style24.core.support.message.TscMessageByLocale;
 import com.style24.core.biz.service.TscOrderChangeService;
+import com.style24.core.support.message.TscMessageByLocale;
+import com.style24.core.support.session.TscSession;
+import com.style24.persistence.TscPageRequest;
+import com.style24.persistence.domain.OrderChange;
+import com.style24.persistence.domain.Withdraw;
+import com.style24.persistence.domain.WithdrawExc;
+import com.style24.persistence.domain.WmsWithdraw;
+
+import lombok.extern.slf4j.Slf4j;
 
 
 
@@ -188,7 +179,12 @@ public class TsaWithdrawController extends TsaBaseController {
 	public GagaResponse refundDetailConfirm(@RequestBody GagaMap orderChange) {
 		log.info("orderChange {}"+orderChange);
 
+		// 환불 컨펌 처리자 설정
+		orderChange.setInt("userNo", TsaSession.getInfo().getUserNo());
+
+		// 환불컨펌 처리
 		withdrawService.refundDetailConfirm(orderChange);
+
 		return super.ok(message.getMessage("SUCC_0004"));
 	}