| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157115811591160116111621163116411651166116711681169117011711172117311741175117611771178117911801181118211831184118511861187118811891190119111921193119411951196119711981199120012011202120312041205120612071208120912101211121212131214121512161217121812191220122112221223122412251226122712281229123012311232123312341235123612371238123912401241124212431244124512461247124812491250125112521253125412551256125712581259126012611262126312641265126612671268126912701271127212731274127512761277127812791280128112821283128412851286128712881289129012911292129312941295129612971298129913001301130213031304130513061307130813091310131113121313131413151316131713181319132013211322132313241325132613271328132913301331133213331334133513361337133813391340134113421343134413451346134713481349135013511352135313541355135613571358135913601361136213631364136513661367136813691370137113721373137413751376137713781379138013811382138313841385138613871388138913901391139213931394139513961397139813991400140114021403140414051406140714081409141014111412141314141415141614171418141914201421142214231424142514261427142814291430143114321433143414351436143714381439144014411442144314441445144614471448144914501451145214531454145514561457145814591460146114621463146414651466146714681469147014711472147314741475147614771478147914801481148214831484148514861487148814891490149114921493149414951496149714981499150015011502150315041505150615071508150915101511151215131514151515161517151815191520152115221523152415251526152715281529153015311532 |
- <!DOCTYPE html>
- <html lang="ko" xmlns:th="http://www.thymeleaf.org">
- <!--
- *******************************************************************************
- * @source : CnclReqForm.html
- * @desc : 취소요청 화면
- *============================================================================
- * STYLE24
- * Copyright(C) 2019 TSIT, All rights reserved.
- *============================================================================
- * VER DATE AUTHOR DESCRIPTION
- * === =========== ========== =============================================
- * 1.0 2020.12.12 jsh77b 최초 작성
- *******************************************************************************
- -->
- <div class="modalPopup" data-height="800">
- <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="/orderChange/cancel" method="post" target="hdFrameForOrderCancel">
- <input type="hidden" name="ordNo" th:value="${ordNo}"/>
- <input type="hidden" name="ordChgSq" th:value="${ordChgSq}"/>
- <input type="hidden" name="delvFeeCd" th:value="${delvFeeCd}"/>
- <input type="hidden" name="chgReason" th:value="${ordChgSq > 0 && chgStat != 'G685_40' ? orderChangeDetailList[0].chgReason : ''}"/>
- <input type="hidden" name="chgReasonDesc" value=""/>
-
- <div id="orderInfoList" style="display:none;">
- <h4>기본정보</h4>
- <!-- TABLE -->
- <table class="tableStyle">
- <colgroup>
- <col width="">
- <col width="">
- <col width="">
- <col width="">
- <col width="">
- <col width="">
- <col width="">
- <col width="">
- <col width="">
- <col width="">
- <col width="">
- <col width="">
- <col width="">
- </colgroup>
- <thead>
- <tr>
- <th>사이트</th>
- <th>몰구분</th>
- <th>웹구분</th>
- <th>외부몰</th>
- <th>주문일시</th>
- <th>주문자</th>
- <th>고객번호</th>
- <th>주문번호</th>
- <th>이메일</th>
- <th>핸드폰번호</th>
- <th>회원구분</th>
- <th>관리대상</th>
- <th>등급</th>
- </tr>
- </thead>
- <tbody>
- <tr>
- <td th:text="${orderInfoList[0].siteCdNm}"></td>
- <td th:text="${orderInfoList[0].mallGbNm}"></td>
- <td th:text="${orderInfoList[0].frontGbNm}"></td>
- <td th:text="${orderInfoList[0].extmallNm}"></td>
- <td th:text="${orderInfoList[0].ordDt}"></td>
- <td th:text="${orderInfoList[0].ordNm}"></td>
- <td th:text="${orderInfoList[0].custNo}"></td>
- <td th:text="${orderInfoList[0].ordNo}"></td>
- <td th:text="${orderInfoList[0].ordEmail}"></td>
- <td th:text="${orderInfoList[0].ordPhnno}"></td>
- <td th:text="${orderInfoList[0].custGbNm}"></td>
- <td th:text="${orderInfoList[0].managedRsnNm}"></td>
- <td th:text="${orderInfoList[0].custGradeNm}"></td>
- </tr>
- </tbody>
- </table>
- <!-- //TABLE -->
- </div>
-
- <h4 id="orderInfoTitle">주문정보</h4>
- <div id="gridOrderCancelRequestList" style="width:100%; height: 200px;" class="ag-theme-balham"></div>
- <h4 id="h4OrderCancelRequestToBeList">취소정보</h4>
- <div id="gridOrderCancelRequestToBeList" style="width:100%; height: 200px;" class="ag-theme-balham"></div>
-
- <h4 id="h4DelvCdList">배송비정보</h4>
- <div id="gridDelvCdList" style="width:100%; height: 140px;" class="ag-theme-balham"></div>
-
- <div style="text-align:right; padding-bottom:5px; padding-top:5px;">
- <th:block th:if="${userId} == 'jsh77b'">
- <button type="button" class="btn btn-success" id="cnclReqBtn" onclick="fnCnclReq('cnclReq');">취소접수</button>
- </th:block>
- <button type="button" class="btn btn-success" id="cnclCompleteBtn" onclick="fnCnclReq('cnclComplete');">취소완료</button>
- <button type="button" class="btn btn-success" id="cnclReqCancelBtn" onclick="fnCnclReq('cnclReqCancel');">취소철회</button>
- <button type="button" class="btn btn-success" id="cnclReqCompleteBtn" onclick="fnCnclReq('cnclReqComplete');">취소승인</button>
- </div>
-
- <table class="frmStyle">
- <colgroup>
- <col style="width:140px;" />
- <col style="width:180px;" />
- <col style="width:140px;" />
- <col style="width:180px;" />
- <col style="width:140px;" />
- <col style="width:180px;" />
- <col style="width:140px;" />
- <col />
- </colgroup>
- <tbody>
- <tr>
- <th>취소사유 <i class="star"></i></th>
- <td>
- <select name="selectChgReason" onchange="fnChangeChgReason($(this).val());">
- <option value="">[선택하세요]</option>
- <th:block th:each="oneData, status : ${chgReasonList}">
- <th:block th:if="${ordChgSq > 0} or ${oneData.cd} == G686_10 or ${oneData.cd} == G686_20 or ${oneData.cd} == G686_30">
- <option th:if="${chgReasonList}" th:value="|${oneData.cd}|" th:text="|${oneData.cdNm}|"></option>
- </th:block>
- </th:block>
- </select>
- </td>
- <th>귀책사유</th>
- <td colspan="5"><span id="imputeReason"></span></td>
- </tr>
- <tr>
- <th>PG점프</th>
- <td>
- <label class="chkBox">
- <input type="checkbox" name="pgStat" id="pgStat" onclick="fnChangePgStat();"/>
- </label>
- </td>
- <th>입금액(원)</th>
- <td>
- <input type="text" name="depositAmt" id="depositAmt" value="0" readonly="readonly"/>
- </td>
- <th>알림톡미전송여부</th>
- <td colspan="3">
- <label class="chkBox">
- <input type="checkbox" name="msgStat" id="msgStat" checked/>
- </label>
- </td>
- </tr>
- <tr>
- <th>요청메모<br/><span id="dpLocAnsContent">0</span>/1,000Byte</th>
- <td colspan="7">
- <textarea id="chgMemo" name="chgMemo" style="height:80px;" onkeyup="cfnGetTextLength(this, 1000, $('#dpLocAnsContent'));"></textarea>
- </td>
- </tr>
- </tbody>
- </table>
-
- <h4>환불예정금액</h4>
- <table class="frmStyle">
- <colgroup>
- <col width="">
- <col width="">
- <col width="">
- <col width="">
- </colgroup>
- <thead>
- <tr>
- <th style="height:30px;">구분</th>
- <th style="height:30px;">항목</th>
- <th style="height:30px;">합계</th>
- <th style="height:30px;">내역</th>
- </tr>
- </thead>
- <tbody>
- <tr>
- <td style="height:25px;">상품금액</td>
- <td>취소상품금액</td>
- <td class="spanCnclRtnAmt">0원</td>
- <td></td>
- </tr>
- <tr>
- <td rowspan="2">할인금액차감</td>
- <td>쿠폰할인차감</td>
- <td class="spanCpnDcAmt">0원</td>
- <td style="line-height:25px;">
- <div style="height:25px;"><span>즉시할인쿠폰 : </span><span class="spanCpn1DcAmt">0원</span></div>
- <div style="height:25px;"><span>주문서상품쿠폰 : </span><span class="spanGoodsCpnDcAmt">0원</span></div>
- <div style="height:25px;"><span>장바구니쿠폰 : </span><span class="spanCartCpnDcAmt">0원</span></div>
- </td>
- </tr>
- <tr>
- <td>상품할인차감</td>
- <td class="goodsDcSumAmt">0원</td>
- <td style="line-height:25px;">
- <div style="height:25px;"><span>선포인트할인 : </span><span class="spanPrePntDcAmt">0원</span></div>
- <div style="height:25px;"><span>다다익선할인 : </span><span class="spanTmtbDcAmt">0원</span></div>
- </td>
- </tr>
- <tr>
- <td>배송비</td>
- <td>환불배송비</td>
- <td class="spanRealDelvAmt">0원</td>
- <td style="line-height:25px;">
- <div style="height:25px;"><span>배송비쿠폰 : </span><span class="delvCpnAmt">0원</span></div>
- <div style="height:25px;"><span>추가금결제 : </span><span class="addDelvFee">0원</span></div>
- </td>
- </tr>
- <tr>
- <td rowspan="4">환불금액</td>
- <td style="height:25px;">총환불금액</td>
- <td class="totalRefundAmt">0원</td>
- <td></td>
- </tr>
- <tr>
- <td style="height:25px;">결제수단환불</td>
- <td class="spanRefundAmt">0원</td>
- <td>
- <span class="pgGbNm">신용카드</span><span class="cardNm"></span>
- </td>
- </tr>
- <tr>
- <td style="height:25px;">상품권환불</td>
- <td class="spanGfcdUseAmt">0원</td>
- <td></td>
- </tr>
- <tr>
- <td style="height:25px;">포인트환불</td>
- <td class="spanPntDcAmt">0P</td>
- <td>
- <span>적립예정포인트환수 : </span><span class="spanSavePntAmt">0P</span>
- </td>
- </tr>
- </tbody>
- </table>
-
- <div class="refundAccount" style="width:100%">
- <h4>환불계좌정보</h4>
- <button type="button" id="btnSaveAccount" class="btn btnRight btn-base btn-sm" style="margin-left:10px;" onclick="fnCreateOrderRfAccount();">환불계좌체크</button>
-
- <!-- TABLE -->
- <table class="tableStyle">
- <colgroup>
- <col width="">
- <col width="">
- <col width="">
- <col width="">
- <col width="">
- </colgroup>
- <thead>
- <tr>
- <th>은행명</th>
- <th>은행코드</th>
- <th>계좌번호</th>
- <th>예금주</th>
- <th>기본여부</th>
- </tr>
- </thead>
- <tbody>
- <tr style="height:30px;">
- <td class="bankNm"></td>
- <td class="bankCd"></td>
- <td class="accountNo"></td>
- <td class="accountNm"></td>
- <td class="defaultYn"></td>
- </tr>
- </tbody>
- </table>
- </div>
- <br>
- </form>
- </div>
- </div>
- </div>
- <!-- data -->
- <script th:inline="javascript">
- /*<![CDATA[*/
- var cancelRequestTargetList = [[${cancelRequestTargetList}]]; // 취소대상목록
- var cancelRequestTargetCnt = [[${cancelRequestTargetList.size()}]]; // 취소대상건수
- var ordNo = [[${ordNo}]]; // 주문번호
- var ordChgSq = [[${ordChgSq}]]; // 주문변경번호
- var delvFeeCd = [[${delvFeeCd}]]; // 배송정책코드
- var orderInfoList = [[${orderInfoList}]]; // 주문기본정보
- var orderChangeDetailList = [[${orderChangeDetailList}]]; // 취소/반품/교환요청 정보
- var payGb = orderInfoList[0].payGb; // 결제수단
- var payMeans = orderInfoList[0].payMeans; // 결제방법
- var payStat = orderInfoList[0].payStat; // 결제상태
- var chgReason = ""; // 변경사유코드
- var chgMemo = ""; // 변경사유메모
- var chgStat = cancelRequestTargetList[0].chgStat // 변경상태(교환출고실패 취소처리)
- var wdGb = cancelRequestTargetList[0].wdGb // 회수구분(교환출고실패 취소처리)
- var addPayCost = cancelRequestTargetList[0].addPayCost // 추가결제비용(교환출고실패 취소처리)
- var canDeliveryCancelYn = [[${canDeliveryCancelYn}]]; // 교환배송비 취소가능여부
- var delvPayMeans = [[${payMeans}]]; // 교환배송비 결제수단
- // 변경요청정보 승인, 철회
- if (ordChgSq > 0 && chgStat != 'G685_40') {
- chgReason = orderChangeDetailList[0].chgReason; // 변경사유코드
- chgMemo = orderChangeDetailList[0].chgMemo; // 변경사유메모
- }
- // 교환배송미출고대상
- if (ordChgSq > 0 && chgStat == 'G685_40') {
- $("#orderInfoList").show();
- }
- var temp1 = true;
- var temp2 = false;
- var temp3 = true;
- // 1. 주문정보(변경요청가능대상)
- var columnCancelReqList = [
- {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-left' , hide: temp2},
- {headerName: "SKUCODE" , field: "optCd" , width: 100 , cellClass: 'text-center' , hide: temp2},
- {headerName: "상품명" , field: "goodsNm" , width: 330 , cellClass: 'text-left' , hide: temp2},
- {headerName: "상품타입" , field: "goodsTypeNm" , width: 100 , cellClass: 'text-center' ,
- cellRenderer: function (params) {
- var option;
- if (params.data.goodsType == 'G056_S') {
- option = "<a href=\"javascript:void(0);\" onclick=\"fnOrderDetailItemForm('" + params.data.ordDtlNo + "');\">" + params.value + "</a>";
- } else {
- option = params.value;
- }
- return option;
- },
- hide: temp2
- },
- {headerName: "옵션1" , field: "colorNm" , width: 100 , cellClass: 'text-center' , hide: temp2
- , cellRenderer : function (params) {
- return params.data.colorNm + "[" + params.data.optCd1 +"]" ;
- }},
- {headerName: "옵션2" , field: "optCd2" , width: 80 , cellClass: 'text-center' , hide: temp2},
- {
- headerName : "옵션금액"
- , field : "optAddPrice"
- , width : 80
- , cellClass : 'text-right'
- , cellRenderer : function (params) {
- return params.value.addComma();
- }
- , hide : temp1
- },
- {
- 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;
- }
- , hide : temp1
- },
- {
- 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 = parseInt(params.value);
- var rtnStr = "";
- // 취소신청가능수량있으면 수량만 표시 (취소,반품,교환 신청정보 처리)
- if (ordChgSq > 0 && chgStat != 'G685_40') {
- rtnStr = ordCanChgQty;
- } else {
- ordCanChgQty = ordQty - (cnclRtnQty + ordReqChgQty);
- rtnStr += "<select class='ordCanChgQty' name='ordCanChgQty' ordDtlNo='"+params.data.ordDtlNo+"' onChange='fnCalculateRefundAmt(this);'>";
- for (i=0 ; i<=ordCanChgQty ; i++) {
- if (i == params.data.ordCanChgQty) {
- rtnStr += " <option value='"+i+"' selected>"+i+"</option>";
- } else {
- rtnStr += " <option value='"+i+"'>"+i+"</option>";
- }
- }
- rtnStr += "</select>";
- }
- return rtnStr;
- }
- },
- {
- 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 : 100
- , 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 : 100
- , cellClass : 'text-right'
- , cellRenderer : function (params) {
- return params.value.addComma();
- }
- },
- {
- headerName : "배송비"
- , field : "delvFee"
- , width : 80
- , cellClass : 'text-right'
- , cellRenderer : function (params) {
- return params.value.addComma();
- }
- , hide : temp1
- },
- {headerName: "업체" , field: "supplyCompCd" , width: 100 , cellClass: 'text-center', hide: temp1},
- {headerName: "배송비코드" , field: "delvFeeCd" , width: 100 , cellClass: 'text-center', hide: temp1},
- {
- headerName : "무료배송비"
- , field : "minOrdAmt"
- , width : 80
- , cellClass : 'text-right'
- , cellRenderer : function (params) {
- if (params.data.delvFeeCrite == 'G078_30') {
- return 0;
- } else {
- return params.value.addComma();
- }
- }
- , hide : temp1
- },
- {
- headerName : "기본배송비"
- , field : "orgDelvFee"
- , width : 80
- , cellClass : 'text-right'
- , cellRenderer : function (params) {
- return params.value.addComma();
- }
- , hide : temp1
- },
- {
- headerName : "반품배송비"
- , field : "rtnDelvFee"
- , width : 80
- , cellClass : 'text-right'
- , cellRenderer : function (params) {
- return params.value.addComma();
- }
- , hide : temp1
- },
- {
- headerName : "교환배송비"
- , field : "excDelvFee"
- , width : 80
- , cellClass : 'text-right'
- , cellRenderer : function (params) {
- return params.value.addComma();
- }
- , hide : temp1
- },
- {headerName: "전체취소가능" , field: "allCanYn" , width: 100 , cellClass: 'text-center', hide: temp1}
- ];
- var gridOptionsCancelReqList = gagaAgGrid.getGridOptions(columnCancelReqList);
- // Add on options
- gridOptionsCancelReqList.suppressRowClickSelection = true;
- gridOptionsCancelReqList.rowSelection = 'multiple';
- // 2. 취소정보(환불정보)
- 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: "ordDtlItemSq" , width: 100 , cellClass: 'text-center', hide: temp2},
- {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) {
- if (params.data.delvFeeCrite == 'G078_30') {
- return 0;
- } else {
- 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 : "rtnDelvFee"
- , width : 80
- , cellClass : 'text-right'
- , cellRenderer : function (params) {
- return params.value.addComma();
- }
- , hide : temp2
- },
- {
- headerName : "교환배송비"
- , field : "excDelvFee"
- , 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 = gagaAgGrid.getGridOptions(columnCancelReqToBeList);
- // 3. 배송비정보(환불정보)
- 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) {
- if (params.data.delvFeeCrite == 'G078_30') {
- return 0;
- } else {
- 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 : "rtnDelvFee"
- , width : 80
- , cellClass : 'text-right'
- , cellRenderer : function (params) {
- return params.value.addComma();
- }
- , hide : temp2
- },
- {
- headerName : "교환배송비"
- , field : "excDelvFee"
- , width : 80
- , 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 = gagaAgGrid.getGridOptions(columnDelvCdList);
- </script>
- <script>
- // 현재 사유는 고객 입니다.
- var isCustomer = true;
- var pgGb = orderInfoList[0].pgGb;
- var payMeans = orderInfoList[0].payMeans;
- var payMeansNm = orderInfoList[0].payMeansNm;
- var cardNm = orderInfoList[0].cardNm;
- var addDelvFee = 0;
- var cnclChk = false;
- //0원이하이면 '-' 처리 삭제 함수
- var getZeroMinusDelAmt = function(tempAmt) {
- var rtnAmtStr = "";
-
- if (tempAmt > 0) {
- rtnAmtStr = "-" + tempAmt.addComma();
- } else {
- rtnAmtStr = tempAmt.addComma();
- }
-
- return rtnAmtStr;
- }
- // 환불예상금액계산
- 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);
- }
-
- if (cancelRequestTargetList.length == 0) {
- alert("요청 대상정보가 존재 하지 않습니다.");
- uifnPopupClose('popupCancelRequestForm');
- return false;
- }
-
- // 2021.05.25 수정
- var ordDtlNoArr = [];
- var cnclRtnReqQtyArr = [];
-
- // 1. 반품신청수량 체크
- for (i=0 ; i<cancelRequestTargetList.length ; i++) {
- if (cancelRequestTargetList[i].ordCanChgQty > 0) {
- // 반품신청값설정
- ordDtlNoArr.push(cancelRequestTargetList[i].ordDtlNo);
- cnclRtnReqQtyArr.push(cancelRequestTargetList[i].ordCanChgQty);
- }
- }
-
- // 2. 추가정보설정
- var chgerNm = orderInfoList[0].ordNm;
- var chgerEmail = orderInfoList[0].ordEmail;
- var chgerPhnno = orderInfoList[0].ordPhnno;
- var chgerTelno = orderInfoList[0].ordTelno;
- var custNo = orderInfoList[0].custNo;
- var delvFeeCd = orderInfoList[0].delvFeeCd;
-
- // 환불금액계산호출
- var jsonObj = {
- "ordNo" : ordNo
- ,"ordDtlNoArr" : ordDtlNoArr
- ,"cnclRtnReqQtyArr" : cnclRtnReqQtyArr
- ,"isCustomer" : isCustomer
- ,"chgerNm" : chgerNm
- ,"chgerEmail" : chgerEmail
- ,"chgerPhnno" : chgerPhnno
- ,"custNo" : custNo
- ,"ordNm" : chgerNm
- ,"ordPhnno" : chgerPhnno
- ,"delvFeeCd" : delvFeeCd
- }
-
- var jsonData = JSON.stringify(jsonObj);
-
- gagajf.ajaxJsonSubmit(
- '/orderChange/cancel/refundAmt'
- , jsonData
- , function(result) {
- gridOptionsCancelReqToBeList.api.setRowData(result.cancelOrderRefundList);
- gridOptionsDelvCdList.api.setRowData(result.cancelDelvRefundList);
-
- // 2021.12.01 취소금액설정
- if (result.cancelOrderRefundList != null && result.cancelOrderRefundList.length > 0) {
- for (i=0 ; i<result.cancelOrderRefundList.length ; i++) {
- for (j=0 ; j<cancelRequestTargetList.length ; j++) {
- if (result.cancelOrderRefundList[i].ordDtlNo == cancelRequestTargetList[j].ordDtlNo) {
- cancelRequestTargetList[j].cnclRtnAmt = result.cancelOrderRefundList[i].cnclRtnAmt; // 취소금액
- cancelRequestTargetList[j].cpn1DcAmt = result.cancelOrderRefundList[i].cpn1DcAmt; // 즉시할인쿠폰금액
- cancelRequestTargetList[j].tmtb1DcAmt = result.cancelOrderRefundList[i].tmtb1DcAmt; // 수량할인다다익선금액
- cancelRequestTargetList[j].tmtb2DcAmt = result.cancelOrderRefundList[i].tmtb2DcAmt; // 금액할인다다익선금액
- cancelRequestTargetList[j].goodsCpnDcAmt = result.cancelOrderRefundList[i].goodsCpnDcAmt; // 상품쿠폰금액
- cancelRequestTargetList[j].cartCpnDcAmt = result.cancelOrderRefundList[i].cartCpnDcAmt; // 장바구니쿠폰금액
- cancelRequestTargetList[j].pntDcAmt = result.cancelOrderRefundList[i].pntDcAmt; // 포인트금액
- cancelRequestTargetList[j].prePntDcAmt = result.cancelOrderRefundList[i].prePntDcAmt; // 선포인트금액
- cancelRequestTargetList[j].gfcdUseAmt = result.cancelOrderRefundList[i].gfcdUseAmt; // 상품권적용금액
- cancelRequestTargetList[j].realOrdAmt = result.cancelOrderRefundList[i].realOrdAmt; // 실결제금액
- }
- }
- }
- // 주문변경대상정보 재설정
- gridOptionsCancelReqList.api.setRowData(cancelRequestTargetList);
- }
- let spanPntDcAmt = Number(result.spanPntDcAmt); // 환불 포인트 금액
- let spanSavePntAmt = Number(result.spanSavePntAmt); // 적립 예정 포인트 환수 금액
- let spanGfcdUseAmt = Number(result.spanGfcdUseAmt); // 환불 상품권 금액
- let spanDelvGfcdUseAmt = Number(result.spanDelvGfcdUseAmt); // 환불 배송비 상품권 금액
- let spanCnclRtnAmt = Number(result.spanCnclRtnAmt); // 환불 상품 금액
- let spanCpn1DcAmt = Number(result.spanCpn1DcAmt); // 즉시할인 쿠폰 차감 금액
- let spanGoodsCpnDcAmt = Number(result.spanGoodsCpnDcAmt); // 상품 쿠폰 차감 금액
- let spanCartCpnDcAmt = Number(result.spanCartCpnDcAmt); // 장바구니 쿠폰 차감 금액
- let spanDelvCpnDcAmt = Number(result.spanDelvCpnDcAmt); // 배송비 쿠폰 차감 금액
- let spanTmtbDcAmt = Number(result.spanTmtbDcAmt); // 다다익선 할인 차감 금액
- let spanPrePntDcAmt = Number(result.spanPrePntDcAmt); // 선포인트 할인 차감 금액
- let sumDeliveryFee = Number(result.sumDeliveryFee); // 원주문배송비
- let spanTotDeliveryFee = Number(result.spanTotDeliveryFee); // 추가배송비 (무료배송비 허들 깨져서 발생한 배송비)
- let spanRealCnclRtnAmt = Number(result.spanRealCnclRtnAmt); // 환불 상품 실결제 금액 (환불상품금액 - 할인차감금액)
- let goodsCancelAmt = spanCnclRtnAmt + spanCpn1DcAmt; // 상품취소금액
- let spanRefundAmt = spanRealCnclRtnAmt + sumDeliveryFee; // 환불예정금액 (환불상품실결제금액 + 원주문배송비)
- let goodsDcSumAmt = spanPrePntDcAmt + spanTmtbDcAmt; // 상품 할인 차감 금액
- let spanCpnDcAmt = spanCpn1DcAmt + spanGoodsCpnDcAmt + spanCartCpnDcAmt; // 쿠폰 할인 차감 금액
- // 결제방식
- let pgGbNm = "";
- let cardGbNm = "";
-
- if (pgGb == 'KCP') {
- pgGbNm = payMeansNm;
-
- // 2021.12.23 휴대전화일때 공백처리
- if (payMeans !== "G014_60") {
- cardGbNm = "(" + cardNm + ")";
- }
- } else if (pgGb == 'NAVER') {
- pgGbNm = "네이버페이";
- } else if (pgGb == 'NAVER_ORDER') {
- pgGbNm = "네이버페이주문형";
- } else if (pgGb == 'KAKAO') {
- pgGbNm = "카카오페이";
- } else if (pgGb == 'PAYCO') {
- pgGbNm = "페이코";
- } else if (pgGb == 'ISTYLE') {
- pgGbNm = "상품권";
- } else {
- pgGbNm = "외부몰입금";
- }
- // 2021.08.10 card007 상품권100% 결제 로직 수정
- // 회사사유 시 추가배송비 0
- if (!isCustomer) {
- spanTotDeliveryFee = 0;
- }
- let refundAmt = spanRefundAmt + spanGfcdUseAmt;
- let leftAddDelvFee = spanTotDeliveryFee;
- if (refundAmt < spanTotDeliveryFee) {
- addDelvFee = spanTotDeliveryFee;
- } else {
- if (leftAddDelvFee > spanRefundAmt) {
- leftAddDelvFee -= spanRefundAmt;
- spanRefundAmt = 0;
- } else {
- spanRefundAmt -= leftAddDelvFee;
- leftAddDelvFee = 0;
- }
-
- if (leftAddDelvFee > 0) {
- spanGfcdUseAmt -= leftAddDelvFee;
- leftAddDelvFee = 0;
- }
-
- addDelvFee = 0;
- }
- let refundPayAmt = spanRefundAmt - spanDelvGfcdUseAmt - leftAddDelvFee; // 결제금액 환불 (환불예정금액 - 환불 배송비 상품권 금액 - 추가배송비)
- let deliveryFee = sumDeliveryFee - spanTotDeliveryFee; // 배송비 (마지막 취소 시 돌려줘야할 원주문 배송비 - 추가배송비)
- let spanTotGfcdUseAmt = spanGfcdUseAmt + spanDelvGfcdUseAmt; // 환불 상품권 금액 합계
- let totalRefundAmt = spanRefundAmt + spanTotGfcdUseAmt + spanPntDcAmt; // 총 환불 금액
- // 상품금액
- $(".spanCnclRtnAmt").text(goodsCancelAmt.addComma()+"원"); // 취소상품금액
- // 할인금액차감
- $(".spanCpnDcAmt").text(spanCpnDcAmt.addComma()+"원"); // 쿠폰할인차감 > 합계
- $(".spanCpn1DcAmt").text(spanCpn1DcAmt.addComma()+"원"); // 쿠폰할인차감 > 즉시할인쿠폰
- $(".spanGoodsCpnDcAmt").text(spanGoodsCpnDcAmt.addComma()+"원"); // 쿠폰할인차감 > 주문서상품쿠폰
- $(".spanCartCpnDcAmt").text(spanCartCpnDcAmt.addComma()+"원"); // 쿠폰할인차감 > 장바구니쿠폰
- $(".goodsDcSumAmt").text(goodsDcSumAmt.addComma()+"원"); // 상품할인차감 > 합계
- $(".spanPrePntDcAmt").text(spanPrePntDcAmt.addComma()+"원"); // 상품할인차감 > 선포인트할인
- $(".spanTmtbDcAmt").text(spanTmtbDcAmt.addComma()+"원"); // 상품할인차감 > 다다익선할인
- // 배송비
- $(".spanRealDelvAmt").text(deliveryFee.addComma()+"원"); // 환불배송비 > 합계
- $(".addDelvFee").text(addDelvFee.addComma()+"원"); // 환불배송비 > 추가금결제
- $(".delvCpnAmt").text(spanDelvCpnDcAmt.addComma()+"원"); // 환불배송비 > 배송비쿠폰
- // 환불금액
- $(".totalRefundAmt").text(totalRefundAmt.addComma()+"원"); // 총환불금액
- $(".spanRefundAmt").text(refundPayAmt.addComma()+"원"); // 결제수단환불
- $(".pgGbNm").text(pgGbNm); // 결제수단환불 > 결제수단
- $(".cardNm").text(cardGbNm); // 결제수단환불 > 카드명
- $(".spanGfcdUseAmt").text(spanTotGfcdUseAmt.addComma()+"원"); // 상품권환불
- $(".spanPntDcAmt").text(spanPntDcAmt.addComma()+"원"); // 포인트환불
- $(".spanSavePntAmt").text(spanSavePntAmt.addComma()+"P"); // 포인트환불 > 적립예정포인트환수
- }
- );
- }
- // 사유
- var fnChangeChgReason = function(reasonCd){
- var customerReasonArr = ['G686_10'];
- isCustomer = false;
-
- // 귀책사유체크(취소,반품,교환)
- for (i=0 ; i<customerReasonArr.length ; i++) {
- if (customerReasonArr[i] == reasonCd) {
- isCustomer = true;
- }
- }
-
- // 귀책사유설정
- if (isCustomer) {
- $("#imputeReason").text("고객");
- } else {
- $("#imputeReason").text("회사");
- }
- $('#cancelRequestFrm input[name=chgReason]').val(reasonCd);
-
- // 환불예상금액계산
- fnCalculateRefundAmt();
- }
- // 취소신청/완료
- var fnCnclReq = function (reqGbn) {
- var temp = false;
- var custNo = cancelRequestTargetList[0].custNo;
- var ordDtlStat = cancelRequestTargetList[0].ordDtlStat;
- var allCanYn = "N";
- var allCanYnBeforePayment = "N";
-
- var accountNo = "";
- var accountNm = "";
- var bankCd = "";
-
- // 취소신청 버튼 클릭 여부 체크
- if (cnclChk) {
- return false;
- }
-
- // 취소완료, 취소승인
- let chk = false;
- if (reqGbn == "cnclReq" || reqGbn == "cnclReqComplete" || reqGbn == "cnclComplete") {
-
- // 2021.05.25 수정
- var ordDtlNoArr = [];
- var cnclRtnReqQtyArr = [];
-
- // 1. 취소신청수량 체크
- for (i=0 ; i<cancelRequestTargetList.length ; i++) {
- if (cancelRequestTargetList[i].ordCanChgQty > 0) {
- // 취소신청값설정
- ordDtlNoArr.push(cancelRequestTargetList[i].ordDtlNo);
- cnclRtnReqQtyArr.push(cancelRequestTargetList[i].ordCanChgQty);
- temp = true;
- }
- }
-
- if (temp == false) {
- mcxDialog.alert('취소신청수량을 입력하세요.');
- return false;
- }
-
- // 2. 입금대기건 & 전체취소 체크
- if (ordDtlStat == "G013_10" && $("#spanPayAmt").text() != $("#spanRefundAmt").text()) {
- alert("입금대기건은 전체 취소만 가능합니다.");
- return false;
- }
-
- // 2.1 전체취소 여부 적용
- if (ordDtlStat == "G013_10" && $("#spanPayAmt").text() == $("#spanRefundAmt").text()) {
- if (ordDtlStat == "G013_10") {
- allCanYnBeforePayment = "Y";
- } else {
- allCanYn = "Y";
- }
- }
-
- // 3. 취소사유 체크
- var chgReason = $("#cancelRequestFrm select[name=selectChgReason]").val();
- if (gagajf.isNull(chgReason)) {
- mcxDialog.alert("취소사유를 입력하세요.");
- return false;
- }
-
- // 3. 환불계좌체크 (결제타입이 무통장 입금일때 사용)
- if (payMeans == 'G014_20' && payStat == 'G016_30') {
- if ($("#cancelRequestFrm .refundAccount .bankNm").eq(0).text() == null || $("#cancelRequestFrm .refundAccount .bankNm").eq(0).text() == '') {
- mcxDialog.alert('환불계좌가 미등록 되어 있습니다.');
- return false;
- } else {
- chk = true;
- }
- accountNo = $("#cancelRequestFrm .refundAccount .accountNo").eq(0).text();
- accountNm = $("#cancelRequestFrm .refundAccountt .accountNm").eq(0).text();
- bankCd = $("#cancelRequestFrm .refundAccount .bankCd").eq(0).text();
- }
- }
-
- // 5. 추가정보설정
- var chgerNm = orderInfoList[0].ordNm;
- var chgerEmail = orderInfoList[0].ordEmail;
- var chgerPhnno = orderInfoList[0].ordPhnno;
- var chgerTelno = orderInfoList[0].ordTelno;
- var custNo = orderInfoList[0].custNo;
- // 2021.01.26 화면통합
- // 6. 취소신청, 취소완료 여부 체크
- // 취소신청
- if (reqGbn == "cnclReq") {
- confirmStr = "취소신청하시겠습니까?";
- cnclUrl = '/orderChange/cnclComplete/';
- }
- // 취소완료
- else if (reqGbn == "cnclComplete") {
- confirmStr = "취소완료하시겠습니까?";
- cnclUrl = '/orderChange/cnclComplete/';
- // 2021.11.30 card007 교환배송비 취소 불가 시 PG점프 처리
- if (wdGb == 'W' && delvPayMeans == 'G014_60') {
- confirmStr = '교환배송비 [' + (addPayCost / 2).addComma() + '원] 취소불가로 PG점프 처리 됩니다. <br /> 요청번호 [' + ordChgSq + '] 에 대한 취소승인 처리를 하시겠습니까?';
- } else if (wdGb == 'D' && canDeliveryCancelYn == 'N') {
- confirmStr = '교환배송비 [' + addPayCost.addComma() + '원] 취소불가로 PG점프 처리 됩니다. <br /> 요청번호 [' + ordChgSq + '] 에 대한 취소승인 처리를 하시겠습니까?';
- }
- }
- // 취소신청승인
- else if (reqGbn == "cnclReqComplete") {
- confirmStr = "요청번호 [" + ordChgSq + "] 에 대한 취소승인 처리를 하시겠습니까?";
- cnclUrl = '/orderChange/cnclComplete/';
- }
- // 취소신청철회
- else if (reqGbn == "cnclReqCancel") {
- confirmStr = "요청번호 [" + ordChgSq + "] 에 대한 요청철회 처리를 하시겠습니까?";
- cnclUrl = '/orderChange/cnclReqCancel/';
- }
-
- // 7. 추가정보설정
- var ordNm = orderInfoList[0].ordNm;
- var ordPhnno = orderInfoList[0].ordPhnno;
- var custNo = orderInfoList[0].custNo;
- var delvFeeCd = orderInfoList[0].delvFeeCd;
- var chgReason = $('#cancelRequestFrm input[name=chgReason]').val();
- var depositAmt = $('#depositAmt').val();
-
- // 2021.07.22 교환미출고대상은 품절만 있음
- if (ordChgSq > 0 && chgStat == 'G685_40') {
- chgReason = "G686_30";
- }
-
- if (!$('#pgStat').is(':checked')) {
- depositAmt = 0;
- }
- var jsonObj = {
- "ordNo" : $('#cancelRequestFrm input[name=ordNo]').val()
- ,"chgReason" : chgReason
- ,"chgMemo" : $('#chgMemo').val()
- ,"ordDtlNoArr" : ordDtlNoArr
- ,"cnclRtnReqQtyArr" : cnclRtnReqQtyArr
- ,"accountNo" : accountNo
- ,"accountNm" : accountNm
- ,"bankCd" : bankCd
- ,"allCanYn" : allCanYn
- ,"allCanYnBeforePayment" : allCanYnBeforePayment
- ,"isCustomer" : isCustomer
- ,"chgerNm" : chgerNm
- ,"chgerEmail" : chgerEmail
- ,"chgerZipcode" : ""
- ,"chgerBaseAddr" : ""
- ,"chgerDtlAddr" : ""
- ,"chgerPhnno" : chgerPhnno
- ,"chgerTelno" : chgerTelno
- ,"chgerRtnMemo" : ""
- ,"reqGbn" : reqGbn
- ,"ordChgSq" : ordChgSq
- ,"custNo" : custNo
- ,"ordNm" : ordNm
- ,"ordPhnno" : ordPhnno
- ,"delvFeeCd" : delvFeeCd
- ,"chgStat" : chgStat
- ,"wdGb" : wdGb
- ,"addPayCost" : addPayCost
- ,"pgStat" : $('#pgStat').is(':checked') ? 'Y' : 'N'
- ,"msgStat" : $('#msgStat').is(':checked') ? 'Y' : 'N'
- ,"depositAmt" : depositAmt
- }
- // 주문번호, 취소사유, 취소메모, (취소, 반품, 교환 신청 정보 목록), 환불계좌
- var jsonData = JSON.stringify(jsonObj);
- // 취소버튼 클릭 여부 확인
- mcxDialog.confirm(confirmStr, {
- cancelBtnText: "취소",
- sureBtnText: "확인",
- sureBtnClick: function () {
- if (chk && jsonObj.pgStat == 'N') {
- // 환불계좌 유효성 체크
- gagajf.ajaxJsonSubmit('/business/account/check', jsonData, function (result) {
- if (result.isValid) { // 유효하면 true
- // 취소버튼 클릭 여부 설정
- cnclChk = true;
-
- gagajf.ajaxJsonSubmit(
- cnclUrl
- , jsonData
- , function () {
- // 2021.06.21 교환품절취소가 아닐때 주문상세화면 다시 로딩하지 않음
- if (chgStat == 'G685_40') {
- // 교환배송 취소대상목록 조회 실행
- $('#btnSearch').trigger("click");
- } else {
- uifnPopupClose('popupOrderDetail');
- fnReOpenOrderDetailPopup();
- }
- uifnPopupClose('popupCancelRequestForm');
- }
- , function () {
- cnclChk = false;
- }
- );
- } else {
- mcxDialog.alert('환불계좌가 유효하지 않습니다.');
- return false;
- }
- });
- } else {
- // 취소버튼 클릭 여부 설정
- cnclChk = true;
-
- gagajf.ajaxJsonSubmit(
- cnclUrl
- , jsonData
- , function () {
- // 2021.06.21 교환품절취소가 아닐때 주문상세화면 다시 로딩하지 않음
- if (chgStat == 'G685_40') {
- // 교환배송 취소대상목록 조회 실행
- $('#btnSearch').trigger("click");
- } else {
- uifnPopupClose('popupOrderDetail');
- fnReOpenOrderDetailPopup();
- }
- uifnPopupClose('popupCancelRequestForm');
- }
- , function () {
- cnclChk = false;
- }
- );
- }
- }
- });
- }
- // 환불계좌 등록
- var fnCreateOrderRfAccount = function () {
- var actionUrl = "/orderChange/refund/account/create/form?ordNo=" + ordNo + "&ordChgSq=" + ordChgSq ;
- cfnOpenModalPopup(actionUrl, 'popupCreateRefundAccount');
- };
- // 환불계좌 정보
- var fnBindOrderRfAccountInfo = function () {
- var jsonObj = {
- "ordNo" : ordNo
- , "ordChgSq" : ordChgSq
- }
-
- var jsonData = JSON.stringify(jsonObj);
-
- gagajf.ajaxJsonSubmit(
- '/orderChange/refund/account/info/list'
- , jsonData
- , function (result) {
- if (result.orderRfAccountInfo[0].bankNm != null && result.orderRfAccountInfo[0].bankNm != '') {
- $("#cancelRequestFrm .refundAccount .bankNm").text(result.orderRfAccountInfo[0].bankNm);
- $("#cancelRequestFrm .refundAccount .bankCd").text(result.orderRfAccountInfo[0].bankCd);
- $("#cancelRequestFrm .refundAccount .accountNo").text(result.orderRfAccountInfo[0].accountNo);
- $("#cancelRequestFrm .refundAccount .accountNm").text(result.orderRfAccountInfo[0].accountNm);
- $("#cancelRequestFrm .refundAccount .defaultYn").text(result.orderRfAccountInfo[0].defaultYn);
- }
- }
- );
- };
- // PG점프 버튼 클릭 이벤트
- var fnChangePgStat = function() {
- if ($('#pgStat').is(':checked')) {
- $('#depositAmt').attr('readonly', false);
- } else {
- $('#depositAmt').val(0);
- $('#depositAmt').attr('readonly', true);
- }
- }
- $(document).ready(function() {
- // 1. 그리드생성
- gagaAgGrid.createGrid('gridOrderCancelRequestList' , gridOptionsCancelReqList); // 주문정보
- gagaAgGrid.createGrid('gridOrderCancelRequestToBeList' , gridOptionsCancelReqToBeList); // 취소정보
- gagaAgGrid.createGrid('gridDelvCdList' , gridOptionsDelvCdList); // 배송비정보
-
- // 2. 그리드 데이타 싱크작업
- gridOptionsCancelReqList.api.setRowData(cancelRequestTargetList); // 주문정보
-
- // 2.1 TOTAL ROWS 없애기
- gagaAgGrid.hideStatusBar('gridOrderCancelRequestList');
- gagaAgGrid.hideStatusBar('gridOrderCancelRequestToBeList');
- gagaAgGrid.hideStatusBar('gridDelvCdList');
-
- // 3. 환불예상금액계산
- fnCalculateRefundAmt(null);
-
- // 4. 무통장입금아닌경우 환불계좌 그리드 숨김처리 (2021.12.23 휴대폰추가)
- if (payMeans !== 'G014_20' && payMeans !== 'G014_60') {
- $('#cancelRequestFrm .refundAccount').addClass("off");
- } else {
- fnBindOrderRfAccountInfo();
- }
- // 네이버페이 주문형일 경우 취소 접수, 완료 버튼 hide
- if (pgGb == "NAVER_ORDER") {
- $("#cnclReqBtn").css("display", "none");
- $("#cnclCompleteBtn").css("display", "none");
- }
-
- // 5. 취소신청, 취소완료, 취소승인, 취소철회 버튼 제어
- if (ordChgSq > 0 && chgStat != 'G685_40') {
- $("#cnclReqBtn").css("display" , "none");
- $("#cnclCompleteBtn").css("display" , "none");
- } else {
- $("#cnclReqCompleteBtn").css("display" , "none");
- $("#cnclReqCancelBtn").css("display" , "none");
-
- // 교환배송미출고대상
- if (chgStat == 'G685_40') {
- $("#cnclReqBtn").css("display", "none");
- $("#cnclCompleteBtn").css("display", "inline-block"); // 교환배송미출고 대상에서 왔을 경우 취소완료버튼 노출(네이버페이도 노출을 위해 추가) - xodud1202 21.07.27
- }
- }
-
- // 6. 취소사유 선택
- if (ordChgSq > 0 && chgStat != 'G685_40') {
- let chgReasonTmp = $('#cancelRequestFrm input[name=chgReason]').val();
- $("select[name='selectChgReason']").val(chgReasonTmp); // 변경사유코드
- $("select[name='selectChgReason']").attr("disabled", "true"); // 변경사유 비활성화
- $("#chgMemo").text(chgMemo); // 변경사유메모
- $("#chgMemo").attr("disabled", "true"); // 변경사유메모 비활성화
- fnChangeChgReason(chgReasonTmp); // 귀책사유
- }
-
- // 2021.06.21 교환배송미출고대상
- if (ordChgSq > 0 && chgStat == 'G685_40') {
- $("select[name='selectChgReason']").val("G686_30");
- $("select[name='selectChgReason']").attr("disabled", "true"); // 변경사유 비활성화
- fnChangeChgReason(chgReason); // 귀책사유
- }
-
- // debug mode 해제
- if (temp3) {
- $("#h4OrderCancelRequestToBeList").css("display", "none");
- $("#gridOrderCancelRequestToBeList").css("display", "none");
- $("#h4DelvCdList").css("display", "none");
- $("#gridDelvCdList").css("display", "none");
- }
-
- // 2021.05.13 높이자동조절
- var cancelRequestTargetHeight = 50 + (40 * cancelRequestTargetCnt);
- $("#gridOrderCancelRequestList").css("height" , cancelRequestTargetHeight+"px");
- });
- // 2021.06.17 구성상품 내역 팝업 호출
- var fnOrderDetailItemForm = function (ordDtlNo) {
- var actionUrl = "/delivery/detail/item/form/" + ordDtlNo;
- cfnOpenModalPopup(actionUrl, 'popupDeliveryDetailItemForm');
- }
- </script>
- </html>
|