Selaa lähdekoodia

취소신청, 취소완료 통합 작업

jsh77b 5 vuotta sitten
vanhempi
commit
57eec649ba

+ 49 - 44
src/main/java/com/style24/admin/biz/web/TsaOrderChangeController.java

@@ -69,11 +69,16 @@ public class TsaOrderChangeController extends TsaBaseController {
 	 * @since 2020. 12. 22
 	 */
 	@GetMapping("/cncl/req/form")
-	public ModelAndView cnclReqForm(@RequestParam(value = "ordNo") int ordNo) {
+	public ModelAndView cnclReqForm(@RequestParam(value = "ordNo") int ordNo, @RequestParam(value = "ordChgSq") int ordChgSq) {
 
 		Order order = new Order();
 		ModelAndView mav = new ModelAndView();
 		order.setOrdNo(ordNo);
+		
+		// 2021.01.26 변경시퀀스가 있을때 담기
+		if (ordChgSq > 0) {
+			order.setOrdChgSq(ordChgSq);
+		}
 				
 		// 취소가능 주문상세상탭값 설정
 		String[] ordDtlStatArr = new String[4];
@@ -82,57 +87,30 @@ public class TsaOrderChangeController extends TsaBaseController {
 		ordDtlStatArr[2] = TscConstants.OrderDetailStat.GOODS_PREPARE.value();
 		ordDtlStatArr[3] = TscConstants.OrderDetailStat.DELIVERY_PREPARE.value();
 		order.setOrdDtlStatArr(ordDtlStatArr);
-
-		mav.addObject("chgReasonList"				, rendererService.getAvailCommonCodeList("G686"));				// 취소사유
-		mav.addObject("cancelRequestTargetList"		, coreOrderChangeService.getCancelRequestTargetList(order));	// 취소요청대상목록
-		mav.addObject("orderInfoList"				, orderService.getOrderInfoList(order));						// 주문정보
-		mav.addObject("ordNo"						, ordNo);														// 주문번호
-
-		mav.setViewName("order/CnclReqForm");
-		
-		return mav;
-	}
-	
-	/**
-	 * 취소요청 화면 (관리자)
-	 * 
-	 * @param ordNo - 주문번호
-	 * @param cncWait - 취소대기요청 구분
-	 * @return ModelAndView
-	 * @author jsh77b
-	 * @since 2020. 12. 22
-	 */
-	@GetMapping("/cncl/req/view/form")
-	public ModelAndView cnclReqViewForm(@RequestParam(value = "ordNo") int ordNo ,@RequestParam(value = "ordChgSq") int ordChgSq) {
-
-		Order order = new Order();
-		ModelAndView mav = new ModelAndView();
 		
-		order.setOrdNo(ordNo);
-		order.setOrdChgSq(ordChgSq);
-		
-		// 취소가능 주문상세상탭값 설정
-		String[] ordDtlStatArr = new String[4];
-		ordDtlStatArr[0] = TscConstants.OrderDetailStat.DEPOSIT_WAIT.value();
-		ordDtlStatArr[1] = TscConstants.OrderDetailStat.PAYMENT_COMPLETE.value();
-		ordDtlStatArr[2] = TscConstants.OrderDetailStat.GOODS_PREPARE.value();
-		ordDtlStatArr[3] = TscConstants.OrderDetailStat.DELIVERY_PREPARE.value();
-		order.setOrdDtlStatArr(ordDtlStatArr);
-
+		// 2021.01.26 취소요청 화면, 취소요청정보확인 화면 합 
 		mav.addObject("chgReasonList"				, rendererService.getAvailCommonCodeList("G686"));				// 취소사유
 		mav.addObject("cancelRequestTargetList"		, coreOrderChangeService.getCancelRequestTargetList(order));	// 취소요청대상목록
 		mav.addObject("orderInfoList"				, orderService.getOrderInfoList(order));						// 주문정보
 		mav.addObject("ordNo"						, ordNo);														// 주문번호
 		mav.addObject("ordChgSq"					, ordChgSq);													// 주문변경번호
 		mav.addObject("orderChangeList"				, orderService.getOrderChangeList(order));						// 취소/반품/교환 요청 정보
+		
+		String viewName = "";
+		
+		if (ordChgSq > 0) {
+			viewName = "order/CnclReqViewForm";	// 변경요청정보화면 (취소요청정보화면)
+		} else {
+			viewName = "order/CnclReqForm";		// 변경요청화면 (취소요청화면)
+		}
 
-		mav.setViewName("order/CnclReqViewForm");
+		mav.setViewName(viewName);
 		
 		return mav;
 	}
 	
 	/**
-	 * 취소신청 (ADMIN, NAPY, 외부몰) (배치)
+	 * 취소요청 (ADMIN, NAPY, 외부몰) (배치)
 	 * 
 	 * @param OrderChange - 주문취소신청정보
 	 * @return
@@ -180,9 +158,12 @@ public class TsaOrderChangeController extends TsaBaseController {
 		mav.set("chgerEmail"	, cnclReq.getChgerEmail());			// 변경자이메일주소
 		mav.set("chgerPhnno"	, cnclReq.getChgerPhnno());			// 변경자핸드폰번호
 		mav.set("chgerTelno"	, cnclReq.getChgerTelno());			// 변경자전화번호
-				
+		
+		mav.set("reqGbn"		, cnclReq.getReqGbn());				// 신청구분
+						
 		// 5. 주문변경 DB 등록 (TB_ORDER_CHANGE, TB_ORDER_CHANGE_DETAIL, TB_REFUND)
-		coreOrderChangeService.cnclReq(mav, userNo);
+		//coreOrderChangeService.cnclReq(mav, userNo);
+		coreOrderChangeService.cnclComplete(mav, userNo);
 		
 		return super.ok("성공");
 	}
@@ -194,7 +175,7 @@ public class TsaOrderChangeController extends TsaBaseController {
 	 * @author jsh77b
 	 * @since 2021. 01. 20
 	 */
-	@PostMapping("/cnclReqComplete")
+	@PostMapping("/cnclReqCancel")
 	@ResponseBody
 	public GagaResponse cnclReqCancel(@RequestBody OrderChange cnclReq) {
 		
@@ -202,6 +183,28 @@ public class TsaOrderChangeController extends TsaBaseController {
 			throw new IllegalStateException(message.getMessage("FAIL_1001"));
 		}
 		
+		// 1. 세션회원조회
+		int userNo = TsaSession.getInfo().getUserNo();
+		
+		GagaMap mav = new GagaMap();
+		mav.set("ordNo"			, cnclReq.getOrdNo());
+		mav.set("ordChgSq"		, cnclReq.getOrdChgSq());
+		
+		Order order = new Order();
+		
+		// 2. 취소가능 주문상세상탭값 설정
+		String[] ordDtlStatArr = new String[4];
+		ordDtlStatArr[0] = TscConstants.OrderDetailStat.DEPOSIT_WAIT.value();
+		ordDtlStatArr[1] = TscConstants.OrderDetailStat.PAYMENT_COMPLETE.value();
+		ordDtlStatArr[2] = TscConstants.OrderDetailStat.GOODS_PREPARE.value();
+		ordDtlStatArr[3] = TscConstants.OrderDetailStat.DELIVERY_PREPARE.value();
+		order.setOrdDtlStatArr(ordDtlStatArr);
+
+		mav.set("cancelRequestTargetList", coreOrderChangeService.getCancelRequestTargetList(order));
+		
+		// 2.취소요청철회 
+		mav = coreOrderChangeService.cnclReqCancel(mav, userNo);
+		
 		return super.ok("성공");
 	}
 	
@@ -234,12 +237,12 @@ public class TsaOrderChangeController extends TsaBaseController {
 	@ResponseBody
 	public GagaResponse cnclComplete(@RequestBody OrderChange cnclReq) {
 		
-		GagaMap mav = new GagaMap();
-		
 		if (cnclReq== null) {
 			throw new IllegalStateException(message.getMessage("FAIL_1001"));
 		}
 		
+		GagaMap mav = new GagaMap();
+		
 		List<Order> cnclReqList = cnclReq.getCancelReqList(); // 취소요청정보목록
 		
 		// To Do List
@@ -271,6 +274,8 @@ public class TsaOrderChangeController extends TsaBaseController {
 		mav.set("chgerEmail"	, cnclReq.getChgerEmail());			// 변경자이메일주소
 		mav.set("chgerPhnno"	, cnclReq.getChgerPhnno());			// 변경자핸드폰번호
 		mav.set("chgerTelno"	, cnclReq.getChgerTelno());			// 변경자전화번호
+		
+		mav.set("reqGbn"		, cnclReq.getReqGbn());				// 신청구분
 				
 		// 5. 주문변경 DB 등록 (TB_ORDER_CHANGE, TB_ORDER_CHANGE_DETAIL)
 		coreOrderChangeService.cnclComplete(mav, userNo);

+ 2 - 2
src/main/java/com/style24/persistence/domain/Order.java

@@ -166,7 +166,7 @@ public class Order extends TscBaseDomain {
 	private String delYn;
 	private String recipPhnno;
 	private String recipTelno;
-	private String recipZipNo;
+	private String recipZipcode;
 	private String recipBaseAddr;
 	private String recipDtlAddr;
 	private String ordEmail;
@@ -206,7 +206,7 @@ public class Order extends TscBaseDomain {
 	private String chgMemo;
 	private String chgerNm;
 	private String chgerPhnno;
-	private String chgerZipNo;
+	private String chgerZipcode;
 	private String chgerBaseAddr;
 	private String chgerDtlAddr;
 	private String wdInvoiceNo;

+ 30 - 27
src/main/webapp/WEB-INF/views/order/CnclReqForm.html

@@ -36,8 +36,8 @@
 				<div id="gridDelvCdList" style="width:100%; height: 140px;" class="ag-theme-balham"></div>
 				
 				<div style="text-align:right; padding-bottom:5px; padding-top:5px;">
-					<button type="button" class="btn btn-success" onclick="fnCnclReq('req');">취소신청</button>
-					<button type="button" class="btn btn-success" onclick="fnCnclReq('complete');">취소완료</button>
+					<button type="button" class="btn btn-success" onclick="fnCnclReq('cnclReq');">취소신청</button>
+					<button type="button" class="btn btn-success" onclick="fnCnclReq('cnclComplete');">취소완료</button>
 				</div>
 				
 				<table class="frmStyle">
@@ -949,47 +949,50 @@ var fnCnclReq = function (reqGbn) {
 	var chgerEmail 	= orderInfoList[0].ordEmail;
 	var chgerPhnno 	= orderInfoList[0].ordPhnno;
 	var chgerTelno 	= orderInfoList[0].ordTelno;
-	
-	var jsonObj = {
-		"ordNo"				: $('#cancelRequestFrm input[name=ordNo]').val()
-		,"chgReason" 		: $('#cancelRequestFrm input[name=chgReason]').val()
-		,"chgMemo"			: $('#chgMemo').val()
-		,"cancelReqList" 	: cancelRequestTargetList
-		,"accountNo" 		: accountNo
-		,"accountNm" 		: accountNm
-		,"bankCd" 			: bankCd
-		,"allCanYn" 		: allCanYn
-		,"isCustomer" 		: isCustomer
-		,"chgerNm"			: chgerNm
-		,"chgerEmail"		: chgerEmail
-		,"chgerZipcode"		: ""
-		,"chgerBaseAddr"	: ""
-		,"chgerDtlAddr"		: ""
-		,"chgerPhnno"		: chgerPhnno
-		,"chgerTelno"		: chgerTelno
-	}
-	
+
 	// 6. 취소신청, 취소완료 여부 체크
 	// 취소완료
-	if (reqGbn == "complete") {
+	if (reqGbn == "cnclComplete") {
 		cnclUrl = '/orderChange/cnclComplete/';
 	}
 	// 취소신청
-	else if (reqGbn == "req") {
+	else if (reqGbn == "cnclReq") {
 		cnclUrl = '/orderChange/cnclReq/';
 	}
-	// 취소신청 완료
-	else if (reqGbn == "reqComplete"){
+	// 취소신청완료
+	else if (reqGbn == "cnclReqComplete") {
 		cnclUrl = '/orderChange/cnclReqComplete/';
 	}
 
+	// 2021.01.26 화면통합
+	cnclUrl = '/orderChange/cnclComplete/';
+	
+	var jsonObj = {
+			"ordNo"				: $('#cancelRequestFrm input[name=ordNo]').val()
+			,"chgReason" 		: $('#cancelRequestFrm input[name=chgReason]').val()
+			,"chgMemo"			: $('#chgMemo').val()
+			,"cancelReqList" 	: cancelRequestTargetList
+			,"accountNo" 		: accountNo
+			,"accountNm" 		: accountNm
+			,"bankCd" 			: bankCd
+			,"allCanYn" 		: allCanYn
+			,"isCustomer" 		: isCustomer
+			,"chgerNm"			: chgerNm
+			,"chgerEmail"		: chgerEmail
+			,"chgerZipcode"		: ""
+			,"chgerBaseAddr"	: ""
+			,"chgerDtlAddr"		: ""
+			,"chgerPhnno"		: chgerPhnno
+			,"chgerTelno"		: chgerTelno
+			,"reqGbn"			: reqGbn
+		}
+
 	// 주문번호, 취소사유, 취소메모, (취소, 반품, 교환 신청 정보 목록), 환불계좌
 	var jsonData = JSON.stringify(jsonObj);
 	
 	mcxDialog.confirm('취소요청하시겠습니까?', {
 		cancelBtnText		: "취소",
 		sureBtnClick		: function(){
-			// 취소 실행
 			gagajf.ajaxJsonSubmit(
 				cnclUrl
 				, jsonData

+ 7 - 4
src/main/webapp/WEB-INF/views/order/CnclReqViewForm.html

@@ -43,11 +43,12 @@
 <script th:inline="javascript">
 /*<![CDATA[*/
 var ordNo 					= [[${ordNo}]];									// 주문번호
-var orderInfoList 			= [[${orderInfoList}]];							// 주문기본정보
-var payMeans 				= orderInfoList[0].payMeans;					// 결제수단
 var orderChangeList 		= [[${orderChangeList}]];						// 취소/반품/교환요청 정보
-var chgReason				= orderChangeList[0].chgReason;					// 변경사유코드
-var chgMemo					= orderChangeList[0].chgMemo;					// 변경사유메모
+
+//var orderInfoList 		= [[${orderInfoList}]];							// 주문기본정보
+//var payMeans 				= orderInfoList[0].payMeans;					// 결제수단
+//var chgReason				= orderChangeList[0].chgReason;					// 변경사유코드
+//var chgMemo				= orderChangeList[0].chgMemo;					// 변경사유메모
 
 var temp1 = true;
 var temp2 = false;
@@ -107,12 +108,14 @@ var fnCnclReq = function (cnclGbn) {
 			data.ordChgSq 	= ordChgSq;
 
 			var jsonData = JSON.stringify(data);
+			
 			gagajf.ajaxJsonSubmit(
 				cnclLinkStr
 				, jsonData
 				, function (result) {
 					uifnPopupClose('popupOrderDetail');
 					fnReOpenOrderDetailPopup();
+					uifnPopupClose('popupCancelRequestForm');
 				}
 			);
 		}

+ 17 - 54
src/main/webapp/WEB-INF/views/order/OrderDetailForm.html

@@ -615,7 +615,7 @@ var columnDefsOrderChangeInfo = [
 			
 			// 취소요청, 교환요청, 반품요청 일때는 요청 정보 확인 팝업 정보
 			if (params.data.chgStat == 'G685_20' || params.data.chgStat == 'G685_30' || params.data.chgStat == 'G685_40') {
-				rtnStr = '<a href="javascript:void(0);" onclick="fnChgReqInfo(\'' + params.value + '\');">' + params.value + '</a>';
+				rtnStr = '<a href="javascript:void(0);" onclick="fnCancelRequest(\'' + params.value + '\');">' + params.value + '</a>';
 			} else {
 				rtnStr = params.value;
 			}
@@ -674,6 +674,7 @@ var columnDefsOrderChangeInfo = [
 			return (params.value == 'N') ? '미전송' : '전송';
 		}
 	},
+	/*
 	{
 		headerName		: "요청취소"
 		, field			: "ordDtlNo"
@@ -693,6 +694,7 @@ var columnDefsOrderChangeInfo = [
 			return retStr;
 		}
 	},
+	*/
 	{
 		headerName		: "회수지시전송"
 		, field			: "wdInvoiceSendYn"
@@ -944,7 +946,7 @@ $(document).ready(function () {
 	
 	// 취소요청
 	$('#btnCancel').on('click', function () {
-		fnCancelRequest(ordNo, 'N');
+		fnCancelRequest();
 	});
 	// 반품요청
 	$('#btnReturn').on('click', function () {
@@ -993,12 +995,22 @@ var fnUpdateOrderAddr = function (rowIdx) {
 	});
 }
 
-// 취소요청
-var fnCancelRequest = function () {
-	var actionUrl = "/orderChange/cncl/req/form?ordNo=" + ordNo;
+// 2021.01.25 추가
+// 취소요청, 교환요청, 반품요청 일때는 요청 정보 확인 팝업 정보
+var fnCancelRequest = function (ordChgSq) {
+	
+	// 취소요청 구분 (orChgSq null 이면 취소요청화면 있으면 취소요청정보화면)
+	if (ordChgSq == null) {
+		ordChgSq = 0;
+	}
+	
+	var actionUrl = "/orderChange/cncl/req/form?ordNo=" + ordNo + "&ordChgSq=" + ordChgSq;
+	
 	cfnOpenModalPopup(actionUrl, 'popupCancelRequestForm');
 };
 
+
+
 // 반품요청
 var fnReturnRequest = function () {
 	var actionUrl = "/orderChange/rtn/req/form?ordNo=" + ordNo;
@@ -1011,56 +1023,7 @@ var fnExchangeRequest = function () {
 	cfnOpenModalPopup(actionUrl, 'popupExchangeRequestForm');
 };
 
-// 2021.01.25 추가
-// 취소요청, 교환요청, 반품요청 일때는 요청 정보 확인 팝업 정보
-var fnChgReqInfo = function (ordChgSq) {
-	var actionUrl = "/orderChange/cncl/req/view/form?ordNo=" + ordNo + "&ordChgSq=" + ordChgSq;
-	cfnOpenModalPopup(actionUrl, 'popupCancelRequestForm');
-};
 
-// 취소승인
-var fnCancelConfirmRequest = function (ordChgSq) {
-	mcxDialog.confirm("요청번호 [" + ordChgSq + "] 에 대한 취소승인 처리를 하시겠습니까?", {
-		cancelBtnText	: "취소",
-		sureBtnText		: "확인",
-		sureBtnClick	: function () {
-			var data = new Object();
-			data.ordNo 		= ordNo;	//전역변수
-			data.ordChgSq 	= ordChgSq;
-
-			var jsonData = JSON.stringify(data);
-			gagajf.ajaxJsonSubmit(
-				'/orderChange/cancel/confirm'
-				, jsonData
-				, function (result) {
-					uifnPopupClose('popupOrderDetail');
-					fnReOpenOrderDetailPopup();
-				}
-			);
-		}
-	});
-};
-
-// 취소요청철회
-var fnCancelConfirmRequestCancel = function (ordChgSq) {
-	mcxDialog.confirm("요청번호 [" + ordChgSq + "] 에 대한 요청철회 처리를 하시겠습니까?", {
-		cancelBtnText	: "취소",
-		sureBtnText		: "확인",
-		sureBtnClick	: function () {
-			var data = new Object();
-			data.ordChgSq = ordChgSq;
-			
-			var jsonData = JSON.stringify(data);
-			gagajf.ajaxJsonSubmit(
-				'/orderChange/cancel/wait/cancel'
-				, jsonData
-				, function (result) {
-					uifnPopupClose('popupOrderDetail');
-					fnReOpenOrderDetailPopup();
-			});
-		}
-	});
-}
 
 // 주문상품 상세 변경 이력 팝업
 var fnOrderDetailChangeHst = function (ordDtlNo) {