|
|
@@ -0,0 +1,747 @@
|
|
|
+<!DOCTYPE html>
|
|
|
+<html lang="ko" xmlns:th="http://www.thymeleaf.org">
|
|
|
+<!--
|
|
|
+ *******************************************************************************
|
|
|
+ * @source : CancelRequestForm.html
|
|
|
+ * @desc : 취소요청 화면
|
|
|
+ *============================================================================
|
|
|
+ * Pastelmall
|
|
|
+ * Copyright(C) 2019 TSIT, All rights reserved.
|
|
|
+ *============================================================================
|
|
|
+ * VER DATE AUTHOR DESCRIPTION
|
|
|
+ * === =========== ========== =============================================
|
|
|
+ * 1.0 2020.12.12 jsh77b 최초 작성
|
|
|
+ *******************************************************************************
|
|
|
+ -->
|
|
|
+<div class="modalPopup" data-width="1400" data-height="600">
|
|
|
+ <div class="panelStyle">
|
|
|
+ <div class="panelTitle">
|
|
|
+ <h2>취소요청</h2>
|
|
|
+ <button type="button" class="close" onclick="uifnPopupClose('popupCancelRequestForm');"><i class="fa fa-times"></i></button>
|
|
|
+ </div>
|
|
|
+
|
|
|
+ <div class="panelContent" style="height:90%; overflow-y:auto; padding:0px 20px !important; ">
|
|
|
+ <form id="cancelRequestFrm">
|
|
|
+ <h3>주문정보</h3>
|
|
|
+ <div id="gridOrderCancelRequestList" style="width:100%; height: 200px;" class="ag-theme-balham"></div>
|
|
|
+
|
|
|
+ <h3>취소정보</h3>
|
|
|
+ <div id="gridOrderCancelRequestToBeList" style="width:100%; height: 200px;" class="ag-theme-balham"></div>
|
|
|
+
|
|
|
+ <div style="text-align:right; padding-bottom:5px; padding-top:5px;">
|
|
|
+ <button type="button" class="btn btn-success" id="btnCancelRequestEscrow" onclick="fnCancelRequestEscrow();" style="display:none;">에스크로 결제생성</button>
|
|
|
+ <label th:if="${sessionInfo.userId == 'jsshin'
|
|
|
+ || sessionInfo.userId == 'dlffyd7942'
|
|
|
+ || sessionInfo.userId == 'card007'
|
|
|
+ || sessionInfo.userId == 'hrkim'
|
|
|
+ || sessionInfo.userId =='666badboy'
|
|
|
+ || sessionInfo.userId =='yjyy83'}">
|
|
|
+ <input type="checkbox" name="pgStats" value="N">PG 전문 미전송
|
|
|
+ </label>
|
|
|
+ <button type="button" class="btn btn-success" id="btnCancelRequestPartOk" onclick="fnCancelRequestPartOk();">요청</button>
|
|
|
+ </div>
|
|
|
+
|
|
|
+ <table class="frmStyle">
|
|
|
+ <colgroup>
|
|
|
+ <col style="width:160px;" />
|
|
|
+ <col style="width:320px;" />
|
|
|
+ <col style="width:160px;" />
|
|
|
+ <col />
|
|
|
+ </colgroup>
|
|
|
+ <tbody>
|
|
|
+ <tr>
|
|
|
+ <th>취소사유 <i class="star"></i></th>
|
|
|
+ <td>
|
|
|
+ <select name="selectChgReason" onchange="fnChangeChgReason($(this).val());">
|
|
|
+ <option value="">[선택하세요]</option>
|
|
|
+ <option th:if="${chgReasonList}" th:each="oneData, status : ${chgReasonList}" th:value="|${oneData.cd}:${oneData.cdDesc}|" th:text="|[${oneData.cd}] ${oneData.cdNm}|"></option>
|
|
|
+ </select>
|
|
|
+ </td>
|
|
|
+ <th>귀책사유</th>
|
|
|
+ <td><span id="imputeReason"></span></td>
|
|
|
+ </tr>
|
|
|
+ <tr>
|
|
|
+ <th>요청메모</th>
|
|
|
+ <td colspan="3">
|
|
|
+ <textarea name="chgMemo" style="height:80px;" placeholder="취소사유를 300자내외로 작성해 주세요"></textarea>
|
|
|
+ </td>
|
|
|
+ </tr>
|
|
|
+ </tbody>
|
|
|
+ </table>
|
|
|
+
|
|
|
+ <h4>환불예정금액</h4>
|
|
|
+ <table class="frmStyle">
|
|
|
+ <colgroup>
|
|
|
+ <col style="width:20%;"/>
|
|
|
+ <col style="width:30%;"/>
|
|
|
+ <col style="width:20%;"/>
|
|
|
+ <col style="width:30%;"/>
|
|
|
+ </colgroup>
|
|
|
+ <tbody>
|
|
|
+ <tr>
|
|
|
+ <th>총 결제 금액</th>
|
|
|
+ <td><span id="spanPayAmt"></span>원 (상품 실결제 금액 : <span id="spanSumRealOrdAmt"></span>원, 배송금액 : <span id="spanDeliveryFee"></span>원) </td>
|
|
|
+ <th>취소 상품 금액</th>
|
|
|
+ <td><span id="spanCurrPrice"></span>원</td>
|
|
|
+ </tr>
|
|
|
+ <tr>
|
|
|
+ <th>취소 사용 포인트</th>
|
|
|
+ <td><span id="spanTotPntDcAmt"></span>원 (고객 포인트 : <span id="spanPntDcAmt"></span>원 + 즉시 사용 마일리지 : <span id="spanPrePntDcAmt"></span>원) </td>
|
|
|
+ <th>취소 사용 쿠폰금액</th>
|
|
|
+ <td><span id="spanTotCpnDcAmt"></span>원</td>
|
|
|
+ </tr>
|
|
|
+ <tr>
|
|
|
+ <th>취소 상품 실결제 금액</th>
|
|
|
+ <td><span id="spanCancelPayAmt"></span>원</td>
|
|
|
+ <th>환불 배송금액</th>
|
|
|
+ <td><span id="spanTotDeliveryFee"></span>원 </td>
|
|
|
+ </tr>
|
|
|
+ <tr>
|
|
|
+ <th>환불금액</th>
|
|
|
+ <td colspan="3"><span id="spanRefundAmt"></span>원</td>
|
|
|
+ </tr>
|
|
|
+ </tbody>
|
|
|
+ </table>
|
|
|
+
|
|
|
+ </form>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+</div>
|
|
|
+
|
|
|
+<!-- data -->
|
|
|
+<script th:inline="javascript">
|
|
|
+/*<![CDATA[*/
|
|
|
+var cancelRequestTargetList = [[${cancelRequestTargetList}]];
|
|
|
+
|
|
|
+var temp1 = true;
|
|
|
+var temp2 = true;
|
|
|
+
|
|
|
+// specify the columns
|
|
|
+var columnCancelReqList = [
|
|
|
+ /*
|
|
|
+ {
|
|
|
+ width : 40
|
|
|
+ , minWidth : 40
|
|
|
+ , cellClass : 'text-center'
|
|
|
+ , headerCheckboxSelection : true
|
|
|
+ , checkboxSelection : true
|
|
|
+ , filter : false
|
|
|
+ },
|
|
|
+ */
|
|
|
+ {
|
|
|
+ headerName : "주문상세정보",
|
|
|
+ children : [
|
|
|
+ {headerName: "주문번호" , field: "ordNo" , width: 80 , cellClass: 'text-center', hide: temp1},
|
|
|
+ {headerName: "주문상세" , field: "ordDtlNo" , width: 80 , cellClass: 'text-center'},
|
|
|
+ {headerName: "상품코드" , field: "goodsCd" , width: 100 , cellClass: 'text-center', hide: temp1},
|
|
|
+ {headerName: "상품명" , field: "goodsNm" , width: 200 , cellClass: 'text-center', hide: temp1},
|
|
|
+ {headerName: "상품타입" , field: "goodsTypeNm" , width: 100 , cellClass: 'text-center', hide: temp2}
|
|
|
+ ]
|
|
|
+ },
|
|
|
+ {
|
|
|
+ headerName : "주문상세단품정보",
|
|
|
+ children : [
|
|
|
+ {headerName: "단품코드" , field: "itemCd" , width: 100 , cellClass: 'text-center', hide: temp2},
|
|
|
+ {headerName: "단품명" , field: "itemNm" , width: 200 , cellClass: 'text-center', hide: temp2},
|
|
|
+ {headerName: "칼라코드" , field: "optCd1" , width: 80 , cellClass: 'text-center', hide: temp1},
|
|
|
+ {headerName: "사이즈코드" , field: "optCd2" , width: 80 , cellClass: 'text-center', hide: temp2},
|
|
|
+ {
|
|
|
+ headerName : "단품수량"
|
|
|
+ , field : "itemQty"
|
|
|
+ , width : 80
|
|
|
+ , cellClass : 'text-center'
|
|
|
+ , cellRenderer : function (params) {
|
|
|
+ return params.value.addComma();
|
|
|
+ }
|
|
|
+ },
|
|
|
+ {
|
|
|
+ headerName : "단품금액"
|
|
|
+ , field : "itemPrice"
|
|
|
+ , width : 80
|
|
|
+ , cellClass : 'text-right'
|
|
|
+ , cellRenderer : function (params) {
|
|
|
+ return params.value.addComma();
|
|
|
+ }
|
|
|
+ },
|
|
|
+ {
|
|
|
+ headerName : "단품옵션금액"
|
|
|
+ , field : "optAddPrice"
|
|
|
+ , width : 80
|
|
|
+ , cellClass : 'text-right'
|
|
|
+ , cellRenderer : function (params) {
|
|
|
+ return params.value.addComma();
|
|
|
+ }
|
|
|
+ }
|
|
|
+ ]
|
|
|
+ },
|
|
|
+ {
|
|
|
+ headerName : "주문상세수량",
|
|
|
+ children : [
|
|
|
+ {
|
|
|
+ headerName : "주문"
|
|
|
+ , field : "ordQty"
|
|
|
+ , width : 80
|
|
|
+ , cellClass : 'text-center'
|
|
|
+ , cellRenderer : function (params) {
|
|
|
+ return params.value.addComma();
|
|
|
+ }
|
|
|
+ },
|
|
|
+ {
|
|
|
+ headerName : "취소/요청"
|
|
|
+ , field : "cnclRtnQty"
|
|
|
+ , width : 80
|
|
|
+ , cellClass : 'text-center'
|
|
|
+ , cellRenderer : function (params) {
|
|
|
+ var cnclRtnReqQty = parseInt(params.data.cnclRtnQty) + parseInt(params.data.ordReqChgQty);
|
|
|
+ return cnclRtnReqQty;
|
|
|
+ }
|
|
|
+ },
|
|
|
+ {
|
|
|
+ headerName : "취소"
|
|
|
+ , field : "ordCanChgQty"
|
|
|
+ , width : 100
|
|
|
+ , cellClass : 'text-center'
|
|
|
+ , cellRenderer : function (params) {
|
|
|
+ var ordQty = parseInt(params.data.ordQty);
|
|
|
+ var cnclRtnQty = parseInt(params.data.cnclRtnQty);
|
|
|
+ var ordReqChgQty = parseInt(params.data.ordReqChgQty);
|
|
|
+ var ordCanChgQty = ordQty - (cnclRtnQty + ordReqChgQty);
|
|
|
+
|
|
|
+ var strVal = "";
|
|
|
+ strVal += "<select class='ordCanChgQty' name='ordCanChgQty' ordDtlNo='"+params.data.ordDtlNo+"' onChange='fnCalculateRefundAmt(this);'>";
|
|
|
+
|
|
|
+ for (i=0 ; i<=ordCanChgQty ; i++) {
|
|
|
+ //alert(i + " :::: " +params.data.ordCanChgQty);
|
|
|
+ if (i == params.data.ordCanChgQty) {
|
|
|
+ strVal += " <option value='"+i+"' selected>"+i+"</option>";
|
|
|
+ } else {
|
|
|
+ strVal += " <option value='"+i+"'>"+i+"</option>";
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ strVal += "</select>";
|
|
|
+ return strVal;
|
|
|
+ }
|
|
|
+ /*
|
|
|
+ , valueGetter : function(params) {
|
|
|
+ return params.data.ordCanChgQty;
|
|
|
+ }
|
|
|
+ , valueSetter : function(params) {
|
|
|
+ var ordQty = parseInt(params.data.ordQty);
|
|
|
+ var cnclRtnQty = parseInt(params.data.cnclRtnQty);
|
|
|
+ var ordReqChgQty = parseInt(params.data.ordReqChgQty);
|
|
|
+ var ordCanChgQty = ordQty - (cnclRtnQty + ordReqChgQty);
|
|
|
+
|
|
|
+ if (params.data.ordCanChgQty != params.newValue) {
|
|
|
+ if (!isNaN(parseInt(params.newValue))) {
|
|
|
+ // 2020.12.24 외부몰 취소건에 대해서는 업무 협의
|
|
|
+ if (orderInfo.mallGb == '20') {
|
|
|
+ if (parseInt(params.newValue) != parseInt(params.data.ordQty)) {
|
|
|
+ mcxDialog.alert('외부몰주문건은 전체취소만 가능합니다.'); return false;
|
|
|
+ } else {
|
|
|
+ params.data.chgQty = parseInt(params.newValue);
|
|
|
+ }
|
|
|
+ } else {
|
|
|
+ if (parseInt(params.newValue) > ordCanChgQty) {
|
|
|
+ mcxDialog.alert('취소가능수량보다 큽니다!');
|
|
|
+ return false;
|
|
|
+ } else {
|
|
|
+ alert(parseInt(params.newValue));
|
|
|
+ params.data.ordCanChgQty = parseInt(params.newValue);
|
|
|
+ }
|
|
|
+ }
|
|
|
+ } else {
|
|
|
+ mcxDialog.alert('숫자만 입력이 가능합니다!'); return false;
|
|
|
+ }
|
|
|
+ return true;
|
|
|
+ } else {
|
|
|
+ return false;
|
|
|
+ }
|
|
|
+ }
|
|
|
+ */
|
|
|
+ }
|
|
|
+ ]
|
|
|
+ },
|
|
|
+ {
|
|
|
+ headerName : "주문단품금액",
|
|
|
+ children : [
|
|
|
+ {
|
|
|
+ headerName : "주문"
|
|
|
+ , field : "ordAmt"
|
|
|
+ , width : 80
|
|
|
+ , cellClass : 'text-right'
|
|
|
+ , cellRenderer : function (params) {
|
|
|
+ return params.value.addComma();
|
|
|
+ }
|
|
|
+ },
|
|
|
+ {
|
|
|
+ headerName : "취소"
|
|
|
+ , field : "cnclRtnAmt"
|
|
|
+ , width : 80
|
|
|
+ , cellClass : 'text-right'
|
|
|
+ , cellRenderer : function (params) {
|
|
|
+ return params.value.addComma();
|
|
|
+ }
|
|
|
+ },
|
|
|
+ {
|
|
|
+ headerName : "즉시할인"
|
|
|
+ , field : "cpn1DcAmt"
|
|
|
+ , width : 80
|
|
|
+ , cellClass : 'text-right'
|
|
|
+ , cellRenderer : function (params) {
|
|
|
+ return params.value.addComma();
|
|
|
+ }
|
|
|
+ },
|
|
|
+ {
|
|
|
+ headerName : "다다익선1"
|
|
|
+ , field : "tmtb1DcAmt"
|
|
|
+ , width : 80
|
|
|
+ , cellClass : 'text-right'
|
|
|
+ , cellRenderer : function (params) {
|
|
|
+ return params.value.addComma();
|
|
|
+ }
|
|
|
+ },
|
|
|
+ {
|
|
|
+ headerName : "다다익선2"
|
|
|
+ , field : "tmtb2DcAmt"
|
|
|
+ , width : 80
|
|
|
+ , cellClass : 'text-right'
|
|
|
+ , cellRenderer : function (params) {
|
|
|
+ return params.value.addComma();
|
|
|
+ }
|
|
|
+ },
|
|
|
+ {
|
|
|
+ headerName : "상품쿠폰"
|
|
|
+ , field : "goodsCpnDcAmt"
|
|
|
+ , width : 80
|
|
|
+ , cellClass : 'text-right'
|
|
|
+ , cellRenderer : function (params) {
|
|
|
+ return params.value.addComma();
|
|
|
+ }
|
|
|
+ },
|
|
|
+ {
|
|
|
+ headerName : "장바구니쿠폰"
|
|
|
+ , field : "cartCpnDcAmt"
|
|
|
+ , width : 80
|
|
|
+ , cellClass : 'text-right'
|
|
|
+ , cellRenderer : function (params) {
|
|
|
+ return params.value.addComma();
|
|
|
+ }
|
|
|
+ },
|
|
|
+ {
|
|
|
+ headerName : "포인트"
|
|
|
+ , field : "pntDcAmt"
|
|
|
+ , width : 80
|
|
|
+ , cellClass : 'text-right'
|
|
|
+ , cellRenderer : function (params) {
|
|
|
+ return params.value.addComma();
|
|
|
+ }
|
|
|
+ },
|
|
|
+ {
|
|
|
+ headerName : "선포인트"
|
|
|
+ , field : "prePntDcAmt"
|
|
|
+ , width : 80
|
|
|
+ , cellClass : 'text-right'
|
|
|
+ , cellRenderer : function (params) {
|
|
|
+ return params.value.addComma();
|
|
|
+ }
|
|
|
+ },
|
|
|
+ {
|
|
|
+ headerName : "상품권"
|
|
|
+ , field : "gfcdUseAmt"
|
|
|
+ , width : 80
|
|
|
+ , cellClass : 'text-right'
|
|
|
+ , cellRenderer : function (params) {
|
|
|
+ return params.value.addComma();
|
|
|
+ }
|
|
|
+ },
|
|
|
+ {
|
|
|
+ headerName : "실결제금액"
|
|
|
+ , field : "realOrdAmt"
|
|
|
+ , width : 80
|
|
|
+ , cellClass : 'text-right'
|
|
|
+ , cellRenderer : function (params) {
|
|
|
+ return params.value.addComma();
|
|
|
+ }
|
|
|
+ }
|
|
|
+ ]
|
|
|
+ },
|
|
|
+ {
|
|
|
+ headerName : "주문배송비정보",
|
|
|
+ children : [
|
|
|
+ {
|
|
|
+ headerName : "배송비"
|
|
|
+ , field : "delvFee"
|
|
|
+ , width : 80
|
|
|
+ , cellClass : 'text-right'
|
|
|
+ , cellRenderer : function (params) {
|
|
|
+ return params.value.addComma();
|
|
|
+ }
|
|
|
+ , hide : temp2
|
|
|
+ },
|
|
|
+ {headerName: "업체" , field: "supplyCompCd" , width: 100 , cellClass: 'text-center', hide: temp2},
|
|
|
+ {headerName: "배송비코드" , field: "delvFeeCd" , width: 100 , cellClass: 'text-center', hide: temp2},
|
|
|
+ {
|
|
|
+ headerName : "무료배송비"
|
|
|
+ , field : "minOrdAmt"
|
|
|
+ , width : 80
|
|
|
+ , cellClass : 'text-right'
|
|
|
+ , cellRenderer : function (params) {
|
|
|
+ return params.value.addComma();
|
|
|
+ }
|
|
|
+ , hide : temp2
|
|
|
+ },
|
|
|
+ {
|
|
|
+ headerName : "기본배송비"
|
|
|
+ , field : "orgDelvFee"
|
|
|
+ , width : 80
|
|
|
+ , cellClass : 'text-right'
|
|
|
+ , cellRenderer : function (params) {
|
|
|
+ return params.value.addComma();
|
|
|
+ }
|
|
|
+ , hide : temp2
|
|
|
+ }
|
|
|
+ ]
|
|
|
+ }
|
|
|
+];
|
|
|
+var gridOptionsCancelReqList = orderAgGrid.getGridOptions(columnCancelReqList);
|
|
|
+// Add on options
|
|
|
+gridOptionsCancelReqList.suppressRowClickSelection = true;
|
|
|
+gridOptionsCancelReqList.rowSelection = 'multiple';
|
|
|
+
|
|
|
+
|
|
|
+//specify the columns
|
|
|
+var columnCancelReqToBeList = [
|
|
|
+ {
|
|
|
+ headerName : "주문상세정보",
|
|
|
+ children : [
|
|
|
+ {headerName: "주문번호" , field: "ordNo" , width: 80 , cellClass: 'text-center', hide: temp1},
|
|
|
+ {headerName: "주문상세" , field: "ordDtlNo" , width: 80 , cellClass: 'text-center'},
|
|
|
+ {headerName: "상품코드" , field: "goodsCd" , width: 100 , cellClass: 'text-center', hide: temp1},
|
|
|
+ {headerName: "상품명" , field: "goodsNm" , width: 200 , cellClass: 'text-center', hide: temp1},
|
|
|
+ {headerName: "상품타입" , field: "goodsTypeNm" , width: 100 , cellClass: 'text-center', hide: temp2}
|
|
|
+ ]
|
|
|
+ },
|
|
|
+ {
|
|
|
+ headerName : "주문상세단품정보",
|
|
|
+ children : [
|
|
|
+ {headerName: "단품코드" , field: "itemCd" , width: 100 , cellClass: 'text-center', hide: temp2},
|
|
|
+ {headerName: "단품명" , field: "itemNm" , width: 200 , cellClass: 'text-center', hide: temp2},
|
|
|
+ {headerName: "칼라코드" , field: "optCd1" , width: 80 , cellClass: 'text-center', hide: temp1},
|
|
|
+ {headerName: "사이즈코드" , field: "optCd2" , width: 80 , cellClass: 'text-center', hide: temp2},
|
|
|
+ {
|
|
|
+ headerName : "단품수량"
|
|
|
+ , field : "itemQty"
|
|
|
+ , width : 80
|
|
|
+ , cellClass : 'text-center'
|
|
|
+ , cellRenderer : function (params) {
|
|
|
+ return params.value.addComma();
|
|
|
+ }
|
|
|
+ },
|
|
|
+ {
|
|
|
+ headerName : "단품금액"
|
|
|
+ , field : "itemPrice"
|
|
|
+ , width : 80
|
|
|
+ , cellClass : 'text-right'
|
|
|
+ , cellRenderer : function (params) {
|
|
|
+ return params.value.addComma();
|
|
|
+ }
|
|
|
+ },
|
|
|
+ {
|
|
|
+ headerName : "단품옵션금액"
|
|
|
+ , field : "optAddPrice"
|
|
|
+ , width : 80
|
|
|
+ , cellClass : 'text-right'
|
|
|
+ , cellRenderer : function (params) {
|
|
|
+ return params.value.addComma();
|
|
|
+ }
|
|
|
+ }
|
|
|
+ ]
|
|
|
+ },
|
|
|
+ {
|
|
|
+ headerName : "주문상세수량",
|
|
|
+ children : [
|
|
|
+ {
|
|
|
+ headerName : "주문"
|
|
|
+ , field : "ordQty"
|
|
|
+ , width : 80
|
|
|
+ , cellClass : 'text-center'
|
|
|
+ , cellRenderer : function (params) {
|
|
|
+ return params.value.addComma();
|
|
|
+ }
|
|
|
+ },
|
|
|
+ {
|
|
|
+ headerName : "취소/요청"
|
|
|
+ , field : "cnclRtnQty"
|
|
|
+ , width : 80
|
|
|
+ , cellClass : 'text-center'
|
|
|
+ , cellRenderer : function (params) {
|
|
|
+ var cnclRtnReqQty = parseInt(params.data.cnclRtnQty) + parseInt(params.data.ordReqChgQty);
|
|
|
+ return cnclRtnReqQty;
|
|
|
+ }
|
|
|
+ },
|
|
|
+ {
|
|
|
+ headerName : "취소"
|
|
|
+ , field : "ordCanChgQty"
|
|
|
+ , width : 100
|
|
|
+ , cellClass : 'text-center'
|
|
|
+ , cellRenderer : function (params) {
|
|
|
+ return params.value.addComma();
|
|
|
+ }
|
|
|
+ }
|
|
|
+ ]
|
|
|
+ },
|
|
|
+ {
|
|
|
+ headerName : "주문단품금액",
|
|
|
+ children : [
|
|
|
+ {
|
|
|
+ headerName : "주문"
|
|
|
+ , field : "ordAmt"
|
|
|
+ , width : 80
|
|
|
+ , cellClass : 'text-right'
|
|
|
+ , cellRenderer : function (params) {
|
|
|
+ return params.value.addComma();
|
|
|
+ }
|
|
|
+ },
|
|
|
+ {
|
|
|
+ headerName : "취소"
|
|
|
+ , field : "cnclRtnAmt"
|
|
|
+ , width : 80
|
|
|
+ , cellClass : 'text-right'
|
|
|
+ , cellRenderer : function (params) {
|
|
|
+ return params.value.addComma();
|
|
|
+ }
|
|
|
+ },
|
|
|
+ {
|
|
|
+ headerName : "즉시할인"
|
|
|
+ , field : "cpn1DcAmt"
|
|
|
+ , width : 80
|
|
|
+ , cellClass : 'text-right'
|
|
|
+ , cellRenderer : function (params) {
|
|
|
+ return params.value.addComma();
|
|
|
+ }
|
|
|
+ },
|
|
|
+ {
|
|
|
+ headerName : "다다익선1"
|
|
|
+ , field : "tmtb1DcAmt"
|
|
|
+ , width : 80
|
|
|
+ , cellClass : 'text-right'
|
|
|
+ , cellRenderer : function (params) {
|
|
|
+ return params.value.addComma();
|
|
|
+ }
|
|
|
+ },
|
|
|
+ {
|
|
|
+ headerName : "다다익선2"
|
|
|
+ , field : "tmtb2DcAmt"
|
|
|
+ , width : 80
|
|
|
+ , cellClass : 'text-right'
|
|
|
+ , cellRenderer : function (params) {
|
|
|
+ return params.value.addComma();
|
|
|
+ }
|
|
|
+ },
|
|
|
+ {
|
|
|
+ headerName : "상품쿠폰"
|
|
|
+ , field : "goodsCpnDcAmt"
|
|
|
+ , width : 80
|
|
|
+ , cellClass : 'text-right'
|
|
|
+ , cellRenderer : function (params) {
|
|
|
+ return params.value.addComma();
|
|
|
+ }
|
|
|
+ },
|
|
|
+ {
|
|
|
+ headerName : "장바구니쿠폰"
|
|
|
+ , field : "cartCpnDcAmt"
|
|
|
+ , width : 80
|
|
|
+ , cellClass : 'text-right'
|
|
|
+ , cellRenderer : function (params) {
|
|
|
+ return params.value.addComma();
|
|
|
+ }
|
|
|
+ },
|
|
|
+ {
|
|
|
+ headerName : "포인트"
|
|
|
+ , field : "pntDcAmt"
|
|
|
+ , width : 80
|
|
|
+ , cellClass : 'text-right'
|
|
|
+ , cellRenderer : function (params) {
|
|
|
+ return params.value.addComma();
|
|
|
+ }
|
|
|
+ },
|
|
|
+ {
|
|
|
+ headerName : "선포인트"
|
|
|
+ , field : "prePntDcAmt"
|
|
|
+ , width : 80
|
|
|
+ , cellClass : 'text-right'
|
|
|
+ , cellRenderer : function (params) {
|
|
|
+ return params.value.addComma();
|
|
|
+ }
|
|
|
+ },
|
|
|
+ {
|
|
|
+ headerName : "상품권"
|
|
|
+ , field : "gfcdUseAmt"
|
|
|
+ , width : 80
|
|
|
+ , cellClass : 'text-right'
|
|
|
+ , cellRenderer : function (params) {
|
|
|
+ return params.value.addComma();
|
|
|
+ }
|
|
|
+ },
|
|
|
+ {
|
|
|
+ headerName : "환불금액"
|
|
|
+ , field : "realOrdAmt"
|
|
|
+ , width : 80
|
|
|
+ , cellClass : 'text-right'
|
|
|
+ , cellRenderer : function (params) {
|
|
|
+ return params.value.addComma();
|
|
|
+ }
|
|
|
+ }
|
|
|
+ ]
|
|
|
+ }
|
|
|
+];
|
|
|
+var gridOptionsCancelReqLToBeist = orderAgGrid.getGridOptions(columnCancelReqToBeList);
|
|
|
+</script>
|
|
|
+
|
|
|
+<!-- AgGrid 컬럼 세팅 -->
|
|
|
+<script>
|
|
|
+// 공통1. 주문상세 그리드 옵션 정보 적용
|
|
|
+var orderAgGrid = {
|
|
|
+ getGridOptions : function(colDefs) {
|
|
|
+ return {
|
|
|
+ columnDefs : colDefs
|
|
|
+ , detailCellRendererParams : {
|
|
|
+ detailGridOptions : {
|
|
|
+ columnDefs : []
|
|
|
+ , defaultColDef : {
|
|
|
+ resizable: true
|
|
|
+ }
|
|
|
+ , suppressLoadingOverlay: false
|
|
|
+ , onGridReady : function (params) {
|
|
|
+ params.api.setDomLayout('autoHeight');
|
|
|
+ }
|
|
|
+ , onFirstDataRendered : function (params) {
|
|
|
+ params.api.sizeColumnsToFit();
|
|
|
+ }
|
|
|
+ }
|
|
|
+ , getDetailRowData: function (params) {
|
|
|
+ params.successCallback(params.data.orderDetailList);
|
|
|
+ }
|
|
|
+ }
|
|
|
+ , defaultColDef: {
|
|
|
+ resizable: true
|
|
|
+ }
|
|
|
+ , isRowMaster: function (dataItem) {
|
|
|
+ return dataItem ? dataItem.orderDetailList.length > 1 : false;
|
|
|
+ }
|
|
|
+ , suppressRowTransform: true
|
|
|
+ , enableRangeSelection: true
|
|
|
+ };
|
|
|
+ }
|
|
|
+}
|
|
|
+</script>
|
|
|
+
|
|
|
+<script>
|
|
|
+// 취소정보계산
|
|
|
+var fnCalculateRefundAmt = function (obj) {
|
|
|
+ //취소정보담은목록
|
|
|
+ var cancelRequestTargetToBeList = [];
|
|
|
+
|
|
|
+ if (obj != null) {
|
|
|
+ for (i=0 ; i<cancelRequestTargetList.length ; i++) {
|
|
|
+ var orDtlNo = $(obj).attr("ordDtlNo");
|
|
|
+ var ordCanChgQty = $(obj).val();
|
|
|
+
|
|
|
+ if (cancelRequestTargetList[i].ordDtlNo == orDtlNo) {
|
|
|
+ cancelRequestTargetList[i].ordCanChgQty = ordCanChgQty;
|
|
|
+ }
|
|
|
+ }
|
|
|
+ // 주문정보 다시 셋팅 (체크해봐야할문제)
|
|
|
+ gridOptionsCancelReqList.api.setRowData(cancelRequestTargetList);
|
|
|
+ }
|
|
|
+
|
|
|
+ // 취소정보 초기화
|
|
|
+ for (i=0 ; i<cancelRequestTargetList.length ; i++) {
|
|
|
+ var obj = new Object();
|
|
|
+
|
|
|
+ var itemQty = cancelRequestTargetList[i].itemQty;
|
|
|
+ var ordQty = cancelRequestTargetList[i].ordQty;
|
|
|
+ var cnclRtnQty = cancelRequestTargetList[i].cnclRtnQty;
|
|
|
+ var ordReqChgQty = cancelRequestTargetList[i].ordReqChgQty;
|
|
|
+ var ordCanChgQty = cancelRequestTargetList[i].ordCanChgQty;
|
|
|
+ var itemPrice = cancelRequestTargetList[i].itemPrice;
|
|
|
+ var optAddPrice = cancelRequestTargetList[i].optAddPrice;
|
|
|
+ var ordAmt = cancelRequestTargetList[i].ordAmt;
|
|
|
+
|
|
|
+ var cnclRtnAmt = cancelRequestTargetList[i].cnclRtnAmt;
|
|
|
+ var cpn1DcAmt = cancelRequestTargetList[i].cpn1DcAmt;
|
|
|
+ var tmtb1DcAmt = cancelRequestTargetList[i].tmtb1DcAmt;
|
|
|
+ var tmtb2DcAmt = cancelRequestTargetList[i].tmtb2DcAmt;
|
|
|
+ var goodsCpnDcAmt = cancelRequestTargetList[i].goodsCpnDcAmt;
|
|
|
+ var cartCpnDcAmt = cancelRequestTargetList[i].cartCpnDcAmt;
|
|
|
+ var pntDcAmt = cancelRequestTargetList[i].pntDcAmt;
|
|
|
+ var prePntDcAmt = cancelRequestTargetList[i].prePntDcAmt;
|
|
|
+ var gfcdUseAmt = cancelRequestTargetList[i].gfcdUseAmt;
|
|
|
+ var realOrdAmt = cancelRequestTargetList[i].realOrdAmt;
|
|
|
+
|
|
|
+ obj.ordNo = cancelRequestTargetList[i].ordNo;
|
|
|
+ obj.ordDtlNo = cancelRequestTargetList[i].ordDtlNo;
|
|
|
+ obj.goodsCd = cancelRequestTargetList[i].goodsCd;
|
|
|
+ obj.goodsNm = cancelRequestTargetList[i].goodsNm;
|
|
|
+ obj.itemCd = cancelRequestTargetList[i].itemCd;
|
|
|
+ obj.itemNm = cancelRequestTargetList[i].itemNm;
|
|
|
+ obj.optCd1 = cancelRequestTargetList[i].optCd1;
|
|
|
+ obj.optCd2 = cancelRequestTargetList[i].optCd2;
|
|
|
+ obj.itemQty = itemQty;
|
|
|
+ obj.ordQty = ordQty;
|
|
|
+ obj.cnclRtnQty = cnclRtnQty;
|
|
|
+ obj.ordReqChgQty = ordReqChgQty;
|
|
|
+ obj.ordCanChgQty = ordCanChgQty;
|
|
|
+ obj.itemPrice = itemPrice;
|
|
|
+ obj.optAddPrice = optAddPrice;
|
|
|
+ obj.ordAmt = ordAmt;
|
|
|
+
|
|
|
+ obj.cnclRtnAmt = ((itemPrice + optAddPrice) * itemQty) * ordCanChgQty;
|
|
|
+ obj.cpn1DcAmt = cpn1DcAmt * (ordCanChgQty/ordQty);
|
|
|
+ obj.tmtb1DcAmt = tmtb1DcAmt * (ordCanChgQty/ordQty);
|
|
|
+ obj.tmtb2DcAmt = tmtb2DcAmt * (ordCanChgQty/ordQty);
|
|
|
+ obj.goodsCpnDcAmt = goodsCpnDcAmt * (ordCanChgQty/ordQty);
|
|
|
+ obj.cartCpnDcAmt = cartCpnDcAmt * (ordCanChgQty/ordQty);
|
|
|
+ obj.pntDcAmt = pntDcAmt * (ordCanChgQty/ordQty);
|
|
|
+ obj.prePntDcAmt = prePntDcAmt * (ordCanChgQty/ordQty);
|
|
|
+ obj.gfcdUseAmt = gfcdUseAmt * (ordCanChgQty/ordQty);
|
|
|
+
|
|
|
+ obj.realOrdAmt = obj.cnclRtnAmt - (obj.cpn1DcAmt + obj.tmtb1DcAmt + obj.tmtb2DcAmt + obj.goodsCpnDcAmt + obj.cartCpnDcAmt + obj.pntDcAmt + obj.prePntDcAmt + obj.gfcdUseAmt);
|
|
|
+
|
|
|
+ cancelRequestTargetToBeList[i] = obj;
|
|
|
+ }
|
|
|
+
|
|
|
+ gridOptionsCancelReqLToBeist.api.setRowData(cancelRequestTargetToBeList);
|
|
|
+}
|
|
|
+
|
|
|
+$(document).ready(function() {
|
|
|
+ // Create a agGrid
|
|
|
+ gagaAgGrid.createGrid('gridOrderCancelRequestList', gridOptionsCancelReqList); // as-is 정보
|
|
|
+ gridOptionsCancelReqList.api.setRowData(cancelRequestTargetList);
|
|
|
+
|
|
|
+ gagaAgGrid.createGrid('gridOrderCancelRequestToBeList', gridOptionsCancelReqLToBeist); // to-be 정보
|
|
|
+
|
|
|
+ // 취소정보계산
|
|
|
+ fnCalculateRefundAmt(null);
|
|
|
+
|
|
|
+ /*
|
|
|
+ // 그리드 클릭마다 환불금액 계산
|
|
|
+ gridOptionsCancelReqList.onRowSelected = function(event){
|
|
|
+ fnCalculateRefundAmt(); //환불예정금액 계산.
|
|
|
+ }
|
|
|
+ gridOptionsCancelReqList.onRowClicked = function(event){
|
|
|
+ fnCalculateRefundAmt(); //환불예정금액 계산.
|
|
|
+ }
|
|
|
+ gridOptionsCancelReqList.onCellValueChanged = function(event){
|
|
|
+ fnCalculateRefundAmt(); //환불예정금액 계산.
|
|
|
+ }
|
|
|
+ */
|
|
|
+});
|
|
|
+</script>
|
|
|
+</html>
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|