| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092 |
- <!DOCTYPE html>
- <html lang="ko" xmlns:th="http://www.thymeleaf.org">
- <!--
- *******************************************************************************
- * @source : CancelRequestForm.html
- * @desc : 취소요청 화면
- *============================================================================
- * STYLE24
- * 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" name="cancelRequestFrm" action="/order/cancel" method="post" target="hdFrameForOrderCancel">
- <input type="hidden" name="chgGb" value="30" />
- <input type="hidden" name="ordDtlNos" value="" />
- <input type="hidden" name="chgQtys" value="" />
- <input type="hidden" name="ordNo" th:value="${ordNo}" />
- <input type="hidden" name="mallGb" th:value="${orderInfo.mallGb}" />
- <input type="hidden" name="delvFee" value="0" />
- <input type="hidden" name="pgStat" value="" />
- <input type="hidden" name="chgReason" value="" />
- <input type="hidden" name="chgReasonDesc" value="" />
- <input type="hidden" name="cncWait" th:value="${cncWait}" />
-
- <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>
-
- <h3>배송비정보</h3>
- <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" 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.cdNm}|" 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 colspan="3"><span id="spanPayAmt"></span>원 (상품 실결제 금액 : <span id="spanSumRealOrdAmt"></span>원, 배송금액 : <span id="spanSumDeliveryFee"></span>원) </td>
- </tr>
- <tr>
- <th>주문 상품 금액</th>
- <td><span id="spanOrdAmt"></span>원</td>
- <th>취소 상품 금액</th>
- <td><span id="spanCnclRtnAmt"></span>원</td>
- </tr>
- <tr>
- <th>취소 사용 포인트</th>
- <td colspan="3"><span id="spanTotPntDcAmt"></span>원 (고객 포인트 : <span id="spanPntDcAmt"></span>원 + 상품 선포인트 : <span id="spanPrePntDcAmt"></span>원) </td>
- </tr>
- <tr>
- <th>취소 사용 쿠폰금액</th>
- <td colspan="3"><span id="spanCpnDcAmt"></span>원 (즉시할인쿠폰 : <span id="spanCpn1DcAmt"></span>원 + 상품쿠폰 : <span id="spanGoodsCpnDcAmt"></span>원 + 장바구니쿠폰 : <span id="spanCartCpnDcAmt"></span>원)</td>
- </tr>
- <tr>
- <th>취소 다다익선 금액</th>
- <td colspan="3"><span id="spanTmtbDcAmt"></span>원 (수량할인 : <span id="spanTmtb1DcAmt"></span>원 + 금액할인 : <span id="spanTmtb2DcAmt"></span>원)</td>
- </tr>
-
- <tr>
- <th>취소 고객 상품권 금액</th>
- <td colspan="3"><span id="spanGfcdUseAmt"></span>원</td>
- </tr>
-
- <tr>
- <th>취소 상품 실결제 금액</th>
- <td><span id="spanRealCnclRtnAmt"></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 = false;
- // specify the columns
- var columnCancelReqList = [
- {
- headerName : "주문상세정보",
- children : [
- {headerName: "주문번호" , field: "ordNo" , width: 80 , cellClass: 'text-center', hide: temp1},
- {headerName: "주문상세" , field: "ordDtlNo" , width: 80 , cellClass: 'text-center'},
- {headerName: "주문상세" , field: "ordDtlStat" , width: 80 , cellClass: 'text-center', hide: temp1},
- {headerName: "주문상세상태" , field: "ordDtlStatNm" , width: 100 , cellClass: 'text-center', hide: temp1},
- {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++) {
- if (i == params.data.ordCanChgQty) {
- strVal += " <option value='"+i+"' selected>"+i+"</option>";
- } else {
- strVal += " <option value='"+i+"'>"+i+"</option>";
- }
- }
-
- strVal += "</select>";
- return strVal;
- }
- }
- ]
- },
- {
- 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
- },
- {headerName: "전체취소가능" , field: "allCanYn" , width: 100 , cellClass: 'text-center', 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: "ordDtlStat" , width: 80 , cellClass: 'text-center', hide: temp1},
- {headerName: "주문상세상태" , field: "ordDtlStatNm" , width: 100 , cellClass: 'text-center', hide: temp1},
- {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();
- }
- }
- ]
- },
- {
- 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
- },
- {headerName: "전체취소가능" , field: "allCanYn" , width: 100 , cellClass: 'text-center', hide: temp2},
- ]
- }
- ];
- var gridOptionsCancelReqToBeList = orderAgGrid.getGridOptions(columnCancelReqToBeList);
- //specify the columns
- var columnDelvCdList = [
- {
- headerName : "배송코드기준금액",
- children : [
- {headerName: "업체" , field: "supplyCompCd" , width: 100 , cellClass: 'text-center', hide: temp2},
- {headerName: "배송비코드" , field: "delvFeeCd" , width: 100 , cellClass: 'text-center', hide: temp2},
- {
- headerName : "주문"
- , field : "ordAmt"
- , width : 100
- , cellClass : 'text-right'
- , cellRenderer : function (params) {
- return params.value.addComma();
- }
- },
- {
- headerName : "취소"
- , field : "cnclRtnAmt"
- , width : 100
- , cellClass : 'text-right'
- , cellRenderer : function (params) {
- return params.value.addComma();
- }
- },
- {
- headerName : "환불"
- , field : "realOrdAmt"
- , width : 100
- , cellClass : 'text-right'
- , cellRenderer : function (params) {
- return params.value.addComma();
- }
- }
- ]
- },
- {
- headerName : "배송비정보",
- children : [
- {
- headerName : "배송비"
- , field : "delvFee"
- , width : 100
- , cellClass : 'text-right'
- , cellRenderer : function (params) {
- return params.value.addComma();
- }
- , hide : temp2
- },
- {
- headerName : "무료배송비"
- , field : "minOrdAmt"
- , width : 100
- , cellClass : 'text-right'
- , cellRenderer : function (params) {
- return params.value.addComma();
- }
- , hide : temp2
- },
- {
- headerName : "기본배송비"
- , field : "orgDelvFee"
- , width : 100
- , cellClass : 'text-right'
- , cellRenderer : function (params) {
- return params.value.addComma();
- }
- , hide : temp2
- },
- {headerName: "추가배송비여부" , field: "addDelvFeeYn" , width: 140 , cellClass: 'text-center', hide: temp2},
- {
- headerName : "추가배송비"
- , field : "addDelvFee"
- , width : 100
- , cellClass : 'text-right'
- , cellRenderer : function (params) {
- return params.value.addComma();
- }
- , hide : temp2
- },
- {headerName: "전체취소가능" , field: "allCanYn" , width: 100 , cellClass: 'text-center', hide: temp2},
- ]
- }
- ];
- var gridOptionsDelvCdList = orderAgGrid.getGridOptions(columnDelvCdList);
- </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);
- }
-
- /*
- // 취소 후 발생되는 배송정보 설정
- var delvFeeList = [];
- var delvObj = new Object();
- var k = 0;
-
- // 공급업체 와 배송정책코드가 같지안으면 주문금액, 취소금액 RESET
- delvObj.ordAmt = 0;
- delvObj.cnclRtnAmt = 0;
- delvObj.realOrdAmt = 0;
- delvObj.delvFee = cancelRequestTargetList[k].delvFee;
- delvObj.minOrdAmt = cancelRequestTargetList[k].minOrdAmt;
- delvObj.orgDelvFee = cancelRequestTargetList[k].orgDelvFee;
- delvObj.supplyCompCd = cancelRequestTargetList[k].supplyCompCd;
- delvObj.delvFeeCd = cancelRequestTargetList[k].delvFeeCd;
- delvObj.allCanYn = cancelRequestTargetList[k].allCanYn;
- delvFeeList[k] = delvObj;
-
- var spanPayAmt = 0; // 총 결제 금액
- var spanSumRealOrdAmt = 0; // 상품 실결제 금액
- var spanSumDeliveryFee = 0; // 배송금액
- var spanOrdAmt = 0; // 주문 상품 금액
- var spanCnclRtnAmt = 0; // 취소 상품 금액
- var spanTotPntDcAmt = 0; // 취소 사용 포인트
- var spanPntDcAmt = 0; // 고객 포인트
- var spanPrePntDcAmt = 0; // 상품 선포인트
- var spanCpnDcAmt = 0; // 취소 사용 쿠폰금액
- var spanCpn1DcAmt = 0; // 즉시할인쿠폰
- var spanGoodsCpnDcAmt = 0; // 상품쿠폰
- var spanCartCpnDcAmt = 0; // 장바구니쿠폰
- var spanTmtbDcAmt = 0; // 취소 다다익선 금액
- var spanTmtb1DcAmt = 0; // 수량할인
- var spanTmtb2DcAmt = 0; // 금액할인
- var spanGfcdUseAmt = 0; // 취소 고객 상품권 금액
- var spanRealCnclRtnAmt = 0; // 취소 상품 실결제 금액
- var spanTotDeliveryFee = 0; // 환불 배송 금액
- var spanRefundAmt = 0; // 환불 금액 합계
- // 취소정보 설정
- 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);
-
- // 배송관련 설정
- obj.ordDtlNo = cancelRequestTargetList[i].ordDtlNo;
- obj.goodsTypeNm = cancelRequestTargetList[i].goodsTypeNm;
- obj.delvFee = cancelRequestTargetList[i].delvFee;
- obj.supplyCompCd = cancelRequestTargetList[i].supplyCompCd;
- obj.delvFeeCd = cancelRequestTargetList[i].delvFeeCd;
- obj.minOrdAmt = cancelRequestTargetList[i].minOrdAmt;
- obj.orgDelvFee = cancelRequestTargetList[i].orgDelvFee;
-
- // 주문상세상태
- obj.ordDtlStat = cancelRequestTargetList[i].ordDtlSat;
- obj.ordDtlSatNm = cancelRequestTargetList[i].ordDtlSatNm;
- obj.allCanYn = cancelRequestTargetList[i].allCanYn;
-
- cancelRequestTargetToBeList[i] = obj;
- // 배송비 정책 기준으로 조건 처리
- if (delvFeeList[k].supplyCompCd == obj.supplyCompCd && delvFeeList[k].delvFeeCd == obj.delvFeeCd) {
- // 공급업체 와 배송정책코드가 같으면 주문금액, 취소금액 SUM
- delvFeeList[k].ordAmt += obj.ordAmt;
- delvFeeList[k].cnclRtnAmt += obj.cnclRtnAmt;
- delvFeeList[k].realOrdAmt += obj.realOrdAmt;
-
- if (obj.allCanYn == "N") {
- delvFeeList[k].allCanYn = "N";
- }
- } else {
- k++;
-
- var delvObj = new Object();
-
- // 공급업체 와 배송정책코드가 같지안으면 주문금액, 취소금액 RESET
- delvObj.ordAmt = obj.ordAmt;
- delvObj.cnclRtnAmt = obj.cnclRtnAmt;
- delvObj.realOrdAmt = obj.realOrdAmt;
-
- delvObj.delvFee = obj.delvFee;
- delvObj.minOrdAmt = obj.minOrdAmt;
- delvObj.orgDelvFee = obj.orgDelvFee;
- delvObj.supplyCompCd = obj.supplyCompCd;
- delvObj.delvFeeCd = obj.delvFeeCd;
- delvObj.allCanYn = obj.allCanYn;
-
- delvFeeList[k] = delvObj;
- }
-
- spanSumRealOrdAmt += realOrdAmt;
- spanPntDcAmt += obj.pntDcAmt;
- spanPrePntDcAmt += obj.prePntDcAmt;
- spanCpn1DcAmt += obj.cpn1DcAmt;
- spanGoodsCpnDcAmt += obj.goodsCpnDcAmt;
- spanCartCpnDcAmt += obj.cartCpnDcAmt;
- spanTmtb1DcAmt += obj.tmtb1DcAmt;
- spanTmtb2DcAmt += obj.tmtb2DcAmt;
- spanGfcdUseAmt += obj.gfcdUseAmt;
- spanRealCnclRtnAmt += obj.realOrdAmt;
- }
-
- // 추가배송비 발생여부 , 추가배송비, 배송비정책단위 전체취소 여부
- for (i=0 ; i<delvFeeList.length ; i++) {
- var obj = delvFeeList[i];
-
- // 무료배송비용 > (주문금액 - 취소금액)
- if (obj.minOrdAmt > (obj.ordAmt - obj.cnclRtnAmt)) {
- // 2020.12.28
- // case : 배송정책 기준으로 1,2 상품 주문 후 1번 출고 후 1번반품 2번취소 할 경우 전체 취소 가 아니므로 배송비 부과 있을지 모르겠음 주문업체 단위로 배송되기 때문에 발생하지 않을것 같음
- if ((obj.ordAmt - obj.cnclRtnAmt) == 0) {
- if (obj.allCanYn == "N") {
- obj.addDelvFeeYn = "Y";
- obj.addDelvFee = obj.orgDelvFee;
- } else {
- // 전체취소의 경우에 해당
- obj.addDelvFeeYn = "N";
- obj.addDelvFee = 0;
- }
- } else {
- // 취소신청화면에서 대부분 아래의 조건에 해당
- obj.addDelvFeeYn = "Y";
- obj.addDelvFee = obj.orgDelvFee;
- }
-
- //obj.addDelvFeeYn = "Y";
- //obj.addDelvFee = obj.orgDelvFee;
- } else {
- obj.addDelvFeeYn = "N";
- obj.addDelvFee = 0;
- }
-
- spanSumDeliveryFee += obj.delvFee;
- spanOrdAmt += obj.ordAmt;
- spanCnclRtnAmt += obj.cnclRtnAmt;
- spanTotDeliveryFee += obj.addDelvFee;
-
- delvFeeList[i] = obj;
- }
- gridOptionsCancelReqToBeList.api.setRowData(cancelRequestTargetToBeList);
- gridOptionsDelvCdList.api.setRowData(delvFeeList);
-
- // 환불금액표시
- spanPayAmt = spanSumRealOrdAmt + spanSumDeliveryFee;
- spanTotPntDcAmt = spanPntDcAmt + spanPrePntDcAmt;
- spanCpnDcAmt = spanCpn1DcAmt + spanGoodsCpnDcAmt + spanCartCpnDcAmt;
- spanTmtbDcAmt = spanTmtb1DcAmt + spanTmtb2DcAmt;
- spanRefundAmt = spanRealCnclRtnAmt - spanTotDeliveryFee;
-
- $("#spanPayAmt").text(spanPayAmt.addComma()); //총 결제 금액
- $("#spanSumRealOrdAmt").text(spanSumRealOrdAmt.addComma()); //상품 실결제 금액
- $("#spanSumDeliveryFee").text(spanSumDeliveryFee.addComma()); //배송금액
-
- $("#spanOrdAmt").text(spanOrdAmt.addComma()); //주문 상품 금액
- $("#spanCnclRtnAmt").text(spanCnclRtnAmt.addComma()); //취소 상품 금액
-
- $("#spanTotPntDcAmt").text(spanTotPntDcAmt.addComma()); //취소 사용 포인트
- $("#spanPntDcAmt").text(spanPntDcAmt.addComma()); //고객 포인트
- $("#spanPrePntDcAmt").text(spanPrePntDcAmt.addComma()); //상품 선포인트
-
- $("#spanCpnDcAmt").text(spanCpnDcAmt.addComma()); //취소 사용 쿠폰금액
- $("#spanCpn1DcAmt").text(spanCpn1DcAmt.addComma()); //즉시할인쿠폰
- $("#spanGoodsCpnDcAmt").text(spanGoodsCpnDcAmt.addComma()); //상품쿠폰
- $("#spanCartCpnDcAmt").text(spanCartCpnDcAmt.addComma()); //장바구니쿠폰
-
- $("#spanTmtbDcAmt").text(spanTmtbDcAmt.addComma()); //취소 다다익선 금액
- $("#spanTmtb1DcAmt").text(spanTmtb1DcAmt.addComma()); //수량할인
- $("#spanTmtb2DcAmt").text(spanTmtb2DcAmt.addComma()); //금액할인
-
- $("#spanGfcdUseAmt").text(spanGfcdUseAmt.addComma()); //취소 고객 상품권 금액
-
- $("#spanRealCnclRtnAmt").text(spanRealCnclRtnAmt.addComma()); //취소 상품 실결제 금액
- $("#spanTotDeliveryFee").text(spanTotDeliveryFee.addComma()); //환불 배송 금액
-
- $("#spanRefundAmt").text(spanRefundAmt.addComma()); //환불 금액 합계
- */
-
- // 환불금액계산호출
- var jsonData = JSON.stringify(cancelRequestTargetList);
- gagajf.ajaxJsonSubmit(
- '/order/cancel/refundAmt'
- , jsonData
- , function(result) {
- gridOptionsCancelReqToBeList.api.setRowData(result.cancelOrderRefundList);
- gridOptionsDelvCdList.api.setRowData(result.cancelDelvRefundList);
-
- $("#spanPayAmt").text(result.spanPayAmt.addComma()); //총 결제 금액
- $("#spanSumRealOrdAmt").text(result.spanSumRealOrdAmt.addComma()); //상품 실결제 금액
- $("#spanSumDeliveryFee").text(result.spanSumDeliveryFee.addComma()); //배송금액
-
- $("#spanOrdAmt").text(result.spanOrdAmt.addComma()); //주문 상품 금액
- $("#spanCnclRtnAmt").text(result.spanCnclRtnAmt.addComma()); //취소 상품 금액
-
- $("#spanTotPntDcAmt").text(result.spanTotPntDcAmt.addComma()); //취소 사용 포인트
- $("#spanPntDcAmt").text(result.spanPntDcAmt.addComma()); //고객 포인트
- $("#spanPrePntDcAmt").text(result.spanPrePntDcAmt.addComma()); //상품 선포인트
-
- $("#spanCpnDcAmt").text(result.spanCpnDcAmt.addComma()); //취소 사용 쿠폰금액
- $("#spanCpn1DcAmt").text(result.spanCpn1DcAmt.addComma()); //즉시할인쿠폰
- $("#spanGoodsCpnDcAmt").text(result.spanGoodsCpnDcAmt.addComma()); //상품쿠폰
- $("#spanCartCpnDcAmt").text(result.spanCartCpnDcAmt.addComma()); //장바구니쿠폰
-
- $("#spanTmtbDcAmt").text(result.spanTmtbDcAmt.addComma()); //취소 다다익선 금액
- $("#spanTmtb1DcAmt").text(result.spanTmtb1DcAmt.addComma()); //수량할인
- $("#spanTmtb2DcAmt").text(result.spanTmtb2DcAmt.addComma()); //금액할인
-
- $("#spanGfcdUseAmt").text(result.spanGfcdUseAmt.addComma()); //취소 고객 상품권 금액
-
- $("#spanRealCnclRtnAmt").text(result.spanRealCnclRtnAmt.addComma()); //취소 상품 실결제 금액
- $("#spanTotDeliveryFee").text(result.spanTotDeliveryFee.addComma()); //환불 배송 금액
-
- $("#spanRefundAmt").text(result.spanRefundAmt.addComma()); //환불 금액 합계
-
- //alert("a");
- //$('#btnSearch').trigger('click');
- }
- );
- }
- // 사유
- var fnChangeChgReason = function(reasonCd){
- var arrREasonCd = reasonCd.split(":");
-
- // 취소, 반품, 교환 사유 판단
- if (arrREasonCd[0] == 'G686_10') {
- $("#imputeReason").text("고객");
- isImputationCustomers = true;
- } else {
- $("#imputeReason").text("회사");
- isImputationCustomers = false;
- }
- $('#cancelRequestFrm input[name=chgReason]').val(arrREasonCd[0]);
- $('#cancelRequestFrm input[name=chgReasonDesc]').val(arrREasonCd[1]);
- //fnCalculateRefundAmt(); //환불예정금액 계산.
- }
- // 에스크로 전체취소, 부분취소 요청
- var fnCancelRequestPartOk = function () {
- // 취소, 반품, 교환 신청 정보 목록
- //cancelRequestTargetList;
-
- var jsonData = JSON.stringify(cancelRequestTargetList);
-
- gagajf.ajaxJsonSubmit(
- '/order/cancel/'
- , jsonData
- , function() {
- $('#btnSearch').trigger('click');
- }
- );
-
- }
- $(document).ready(function() {
- // Create a agGrid
- gagaAgGrid.createGrid('gridOrderCancelRequestList' , gridOptionsCancelReqList); // 주문정보
- gridOptionsCancelReqList.api.setRowData(cancelRequestTargetList);
-
- gagaAgGrid.createGrid('gridOrderCancelRequestToBeList' , gridOptionsCancelReqToBeList); // 취소정보
-
- gagaAgGrid.createGrid('gridDelvCdList' , gridOptionsDelvCdList); // 배송비 정보
-
- // 취소정보계산
- fnCalculateRefundAmt(null);
- });
- </script>
- </html>
|