| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300130113021303130413051306130713081309131013111312131313141315131613171318131913201321132213231324132513261327132813291330133113321333133413351336133713381339134013411342134313441345134613471348134913501351135213531354135513561357135813591360136113621363136413651366136713681369137013711372137313741375137613771378137913801381138213831384138513861387138813891390139113921393139413951396139713981399140014011402140314041405140614071408140914101411141214131414141514161417141814191420142114221423142414251426142714281429143014311432143314341435143614371438143914401441144214431444144514461447144814491450145114521453145414551456145714581459146014611462146314641465146614671468146914701471147214731474147514761477147814791480148114821483148414851486148714881489149014911492149314941495149614971498149915001501150215031504150515061507150815091510151115121513151415151516151715181519152015211522152315241525152615271528152915301531153215331534153515361537153815391540154115421543154415451546154715481549155015511552155315541555155615571558155915601561156215631564156515661567156815691570157115721573157415751576157715781579158015811582158315841585158615871588158915901591159215931594159515961597159815991600160116021603160416051606160716081609161016111612161316141615161616171618161916201621162216231624162516261627162816291630163116321633163416351636163716381639164016411642164316441645164616471648164916501651165216531654165516561657165816591660166116621663166416651666166716681669167016711672167316741675167616771678167916801681168216831684168516861687168816891690169116921693169416951696169716981699170017011702170317041705170617071708170917101711171217131714171517161717171817191720172117221723172417251726172717281729173017311732173317341735173617371738173917401741174217431744174517461747174817491750175117521753175417551756175717581759176017611762176317641765176617671768176917701771177217731774177517761777177817791780178117821783178417851786178717881789179017911792179317941795179617971798179918001801180218031804180518061807180818091810181118121813181418151816181718181819182018211822182318241825182618271828182918301831183218331834183518361837183818391840184118421843184418451846184718481849185018511852185318541855185618571858185918601861186218631864186518661867186818691870187118721873187418751876187718781879188018811882188318841885188618871888188918901891189218931894189518961897189818991900190119021903190419051906190719081909191019111912191319141915191619171918191919201921192219231924192519261927192819291930193119321933193419351936193719381939194019411942194319441945194619471948194919501951195219531954195519561957195819591960 |
- <!DOCTYPE html>
- <html lang="ko" xmlns:th="http://www.thymeleaf.org">
- <!--
- *******************************************************************************
- * @source : RtnReqForm.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('popupReturnRequestForm');"><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/return" 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="delvFeeCdGrp" th:value="${delvFeeCdGrp}"/>
- <input type="hidden" name="chgReason" value=""/>
- <input type="hidden" name="chgReasonDesc" value=""/>
-
- <h4>주문정보</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>
- <div id="delvCdList">
- <h4>배송정보</h4>
- <div id="gridDelvCdList" style="width:100%; height: 140px;" class="ag-theme-balham"></div>
- </div>
- <h4 id="h4DelvInfoList">배송비정보</h4>
- <div id="gridDelvInfoList" 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="rtnReqBtn" onclick="fnCnclReq('rtnReq');">반품신청</button>
- <button type="button" class="btn btn-success" id="rtnReqCancelBtn" onclick="fnCnclReq('rtnReqCancel');">반품철회</button>
- <button type="button" class="btn btn-success" id="rtnToRtnBtn" onclick="fnCnclReq('rtnReq');">반품변경</button>
- <button type="button" class="btn btn-success" id="rtnToExcBtn" onclick="fnRtnToExc();">교환변경</button>
- <button type="button" class="btn btn-success" id="returnHold" npayChangeHoldYn="N" onclick="fnNpayReturnHold(this)">반품보류</button>
- <button type="button" class="btn btn-success" id="releaseReturnHold" npayChangeHoldYn="Y" onclick="fnNpayReturnHold(this)">반품보류해제</button>
- </div>
-
- <table class="frmStyle">
- <colgroup>
- <col style="width:160px;" />
- <col style="width:320px;" />
- <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}|" th:text="|${oneData.cdNm}|"></option>
- </select>
- </td>
- <th>회수방법</th>
- <td>
- <label class="rdoBtn"><input type="radio" name="wdGb" th:id="wdGb" value="W" onclick="fnChangeWdGb(this)"/>회수요청<span></span></label>
- <label class="rdoBtn"><input type="radio" name="wdGb" th:id="wdGb" value="D" onclick="fnChangeWdGb(this)"/>직접발송<span></span></label>
- </td>
- <th>귀책사유</th>
- <td><span id="imputeReason"></span></td>
- </tr>
- <tr>
- <th>알림톡미전송여부</th>
- <td colspan="5">
- <label class="chkBox">
- <input type="checkbox" name="msgStat" id="msgStat" checked/>
- </label>
- </td>
- </tr>
- <tr>
- <th>요청메모<br/><span id="chgMemoCount">0</span>/1,000Byte</th>
- <td colspan="5">
- <textarea id="chgMemo" name="chgMemo" style="height:80px;" onkeyup="cfnGetTextLength(this, 1000, $('#chgMemoCount'));"></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">0P</td>
- <td></td>
- </tr>
- <tr>
- <td style="height:25px;">포인트환불</td>
- <td class="spanPntDcAmt">0원</td>
- <td>
- <span>적립예정포인트환수 : </span><span class="spanSavePntAmt">0P</span>
- </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>원 + 배송비쿠폰 : <span id="spanDelvCpnDcAmt"></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="spanRealDelvAmt"></span>원</td>
- </tr>
- <tr>
- <th>환불 금액 합계</th>
- <td colspan="3"><span id="spanRefundAmt"></span>원</td>
- </tr>
- </tbody>
- </table>
- -->
-
- <!-- 회수지정보 -->
- <div id="chgerAddress">
- <h4>회수지 정보</h4>
- <button style="float: right" type="button" class="btn btn-success" th:if="${ordChgSq > 0 and (chgStat == 'G685_50' or chgStat == 'G685_51')}" onclick="fnChangeChgerInfo();">회수지 수정</button>
- <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 colspan="3"><input type="text" name ="chgerNm" class=""/></td>
- </tr>
- <tr>
- <th>회수지주소 <i class="star"></i></th>
- <td colspan="3">
- <input type="text" name ="chgerZipcode" class="w100" readonly="readonly"/>
- <button type="button" class="btn btn-info" th:if="${ordChgSq == 0 or chgStat == 'G685_50' or chgStat == 'G685_51'}" onclick="fnOpenDaumAddr('delvLoc');">우편번호찾기</button>
- <input type="text" name ="chgerBaseAddr" class="w300" readonly="readonly"/>
- <input type="text" name ="chgerDtlAddr" class="w300"/>
- </td>
- </tr>
- <tr>
- <th>일반전화</th>
- <td>
- <select name="chgerTelno1" class="w100">
- <option value="">[선택하세요]</option>
- <option th:if="${TelExcNoList}" th:each="oneData, status : ${TelExcNoList}" th:value="${oneData.cd}" th:text="${oneData.cd}"></option>
- </select>
- - <input type="text" name ="chgerTelno2" class="w60"/>
- - <input type="text" name ="chgerTelno3" class="w60"/>
- </td>
- <th>휴대전화 <i class="star"></i></th>
- <td>
- <select name="chgerPhnno1" class="w100">
- <option value="">[선택하세요]</option>
- <option th:if="${PhnExcNoList}" th:each="oneData, status : ${PhnExcNoList}" th:value="${oneData.cd}" th:text="${oneData.cd}"></option>
- </select>
- - <input type="text" name ="chgerPhnno2" class="w60"/>
- - <input type="text" name ="chgerPhnno3" class="w60"/>
- </td>
- </tr>
- <tr>
- <th>반품메모<br/><span id="chgerRtnMemoCount">0</span>/1,000Byte</th>
- <td colspan="3">
- <textarea id="chgerRtnMemo" name="chgerRtnMemo" style="height:80px;" onkeyup="cfnGetTextLength(this, 1000, $('#chgerRtnMemoCount'));"></textarea>
- </td>
- </tr>
- </tbody>
- </table>
- </div>
- <!-- //회수지정보 -->
-
- <div id="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 orderDelvRtnAddrInfo = [[${orderDelvRtnAddrInfo}]]; // 회수지정보
- var orderChangeDetailList = [[${orderChangeDetailList}]]; // 취소/반품/교환요청 정보
- var chgStat = [[${chgStat}]]; // 변경상태
- var recallExceptionInfo = [[${recallExceptionInfo}]]; // 회수 예외 정보
- var rtnLocInfo = [[${rtnLocInfo}]]; // 반송지주소정보
- var payGb = orderInfoList[0].payGb; // 결제수단
- var payMeans = orderInfoList[0].payMeans; // 결제방법
- var payMeansNm = orderInfoList[0].payMeansNm; // 결제방법명
- var cardNm = orderInfoList[0].cardNm; // 결제카드명
- var pgGb = orderInfoList[0].pgGb; // PG구분
- var payStat = orderInfoList[0].payStat; // 결제상태
- var selfGoodsYn = cancelRequestTargetList[0].selfGoodsYn; // 자사,입점여부
- var chgReason = ""; // 변경사유코드
- var chgMemo = ""; // 변경사유메모
- var wdGb = ""; // 회수방법
- var ordChgGb = [[${ordChgGb}]]; // 주문변경요쳥변경구분
- var canRequestCancelYn = ""; // 반품철회가능여부
- var npayChangeHoldYn = ''; // 네이버페이 주문형 반품/교환 보류 여부
- // 변경요청정보
- if (ordChgSq > 0) {
- chgReason = orderChangeDetailList[0].chgReason; // 변경사유코드
- chgMemo = orderChangeDetailList[0].chgMemo; // 변경사유메모
- wdGb = orderChangeDetailList[0].wdGb; // 회수방법
- canRequestCancelYn = orderChangeDetailList[0].canRequestCancelYn; // 반품철회가능여부
- npayChangeHoldYn = orderChangeDetailList[0].npayChangeHoldYn; // 네이버페이 주문형 반품/교환 보류 여부
- }
- if (gagajf.isNull(ordChgGb)) {
- ordChgGb == '1';
- }
- 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: 110 , cellClass: 'text-left' , hide: temp2},
- {headerName: "상품명" , field: "goodsNm" , width: 200 , cellClass: 'text-left' , hide: temp2},
- {headerName: "상품타입" , field: "goodsTypeNm" , width: 80 , cellClass: 'text-center' , hide: temp2},
- {headerName: "옵션1" , field: "colorNm" , width: 60 , cellClass: 'text-center' , hide: temp2},
- {headerName: "옵션2" , field: "optCd2" , width: 60 , 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;
- }
- },
- {
- 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 = "";
- // 취소신청가능수량있으면 수량만 표시 (취소,반품,교환 신청정보 처리)
- // 2021.06.22 반품TO반품 수량 처리
- if (ordChgSq > 0) {
- if (ordChgGb == 'G681_30') {
- ordCanChgQty = params.data.chgQty;
- }
-
- rtnStr = ordCanChgQty;
- }
- // 2021.08.03 확정후품절 수량 처리
- else if (ordChgGb == 'G681_60') {
- rtnStr = params.data.chgQty;
- } else {
- ordCanChgQty = ordQty - (cnclRtnQty + ordReqChgQty);
- if (ordCanChgQty == 0) {
- rtnStr += "<select class='ordCanChgQty' name='ordCanChgQty' ordDtlNo='" + params.data.ordDtlNo + "' onChange='fnCalculateRefundAmt(this);' disabled='disabled'>";
- } else {
- 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) {
- 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) {
- 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 columnDelvInfoList = [
- {
- 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 : "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 gridOptionsDelvInfoList = gagaAgGrid.getGridOptions(columnDelvInfoList);
- // 3. 배송정보(환불정보)
- var columnDelvCdList = [
- {headerName: "업체" , field: "supplyCompNm" , width: 150 , cellClass: 'text-center'},
- {headerName: "배송비코드" , field: "delvFeeCd" , width: 100 , cellClass: 'text-center'},
- {
- headerName : "추가배송비"
- , field : "addDelvFee"
- , width : 100
- , cellClass : 'text-right'
- , cellRenderer : function (params) {
- return params.value.addComma();
- }
- , hide : true
- },
- {headerName: "반품지명" , field: "rtnLocNm" , width: 100 , cellClass: 'text-center'},
- {headerName: "반품지전화번호" , field: "rtnLocTelno" , width: 100 , cellClass: 'text-center'},
- {headerName: "반품지우편번호" , field: "rtnLocZipcode" , width: 100 , cellClass: 'text-center'},
- {headerName: "반품지기본주소" , field: "rtnLocBaseAddr" , width: 300 , cellClass: 'text-center'},
- {headerName: "반품지상세주소" , field: "rtnLocDtlAddr" , width: 300 , cellClass: 'text-center'},
- ];
- var gridOptionsDelvCdList = gagaAgGrid.getGridOptions(columnDelvCdList);
- </script>
- <script>
- // 현재 사유는 고객 입니다.
- var isCustomer = false;
- // 환불예상금액계산
- 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('popupReturnRequestForm');
- return false;
- }
-
- // 2021.05.25 수정
- var ordDtlNoArr = [];
- var cnclRtnReqQtyArr = [];
- var chgQtyArr = [];
-
- // 1. 반품신청수량 체크
- var chk = 0;
- for (i=0 ; i<cancelRequestTargetList.length ; i++) {
- if (cancelRequestTargetList[i].ordCanChgQty > 0) {
- // 반품신청값설정
- ordDtlNoArr.push(cancelRequestTargetList[i].ordDtlNo);
- cnclRtnReqQtyArr.push(cancelRequestTargetList[i].ordCanChgQty);
- chgQtyArr.push(cancelRequestTargetList[i].chgQty);
- chk++;
- }
- }
- // 신청수량이 없거나 반품사유 선택 안했을 시 계산 안함
- if (chk == 0 || $('#cancelRequestFrm input[name=chgReason]').val() == '') {
- return false;
- }
- // 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 delvFeeCdGrp = $('#cancelRequestFrm input[name=delvFeeCdGrp]').val();
-
- // 환불금액계산호출
- var jsonObj = {
- "ordNo" : ordNo
- ,"ordDtlNoArr" : ordDtlNoArr
- ,"cnclRtnReqQtyArr" : cnclRtnReqQtyArr
- ,"isCustomer" : isCustomer
- ,"chgerNm" : chgerNm
- ,"chgerEmail" : chgerEmail
- ,"chgerPhnno" : chgerPhnno
- ,"custNo" : custNo
- ,"ordNm" : chgerNm
- ,"ordPhnno" : chgerPhnno
- ,"delvFeeCdGrp" : delvFeeCdGrp
- }
-
- var jsonData = JSON.stringify(jsonObj);
-
- gagajf.ajaxJsonSubmit(
- '/orderChange/cancel/refundAmt'
- , jsonData
- , function(result) {
-
- $.each(result.cancelOrderRefundList, function(idx, item) {
- let index = ordDtlNoArr.indexOf(item.ordDtlNo);
- if (index >= 0) {
- item.chgQty = chgQtyArr[index];
- }
- });
-
- gridOptionsCancelReqToBeList.api.setRowData(result.cancelOrderRefundList);
- gridOptionsDelvInfoList.api.setRowData(result.cancelDelvRefundList);
-
- 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 spanTotRtnDelvFee = Number(result.spanTotRtnDelvFee); // 반품배송비
- let spanRealCnclRtnAmt = Number(result.spanRealCnclRtnAmt); // 환불 상품 실결제 금액 (환불상품금액 - 할인차감금액)
- let goodsCancelAmt = spanCnclRtnAmt + spanCpn1DcAmt; // 상품취소금액
- let spanRefundAmt = spanRealCnclRtnAmt; // 환불예정금액 (환불상품실결제금액)
- let goodsDcSumAmt = spanPrePntDcAmt + spanTmtbDcAmt; // 상품 할인 차감 금액
- let spanCpnDcAmt = spanCpn1DcAmt + spanGoodsCpnDcAmt + spanCartCpnDcAmt; // 쿠폰 할인 차감 금액
-
- // 결제방식
- let pgGbNm = "";
- let cardGbNm = "";
-
- if (pgGb == 'KCP') {
- pgGbNm = payMeansNm;
- 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 = "외부몰입금";
- }
- // 회사사유거나 고객사유(직접발송) 시 반품배송비 0
- if (!isCustomer || $('#wdGb:checked').val() == 'D') {
- spanTotRtnDelvFee = 0;
- }
- // 2021.08.10 card007 상품권100% 결제 로직 수정
- let refundAmt = spanRefundAmt + spanGfcdUseAmt;
- let leftAddDelvFee = spanTotRtnDelvFee;
- if (refundAmt < spanTotRtnDelvFee) {
- addDelvFee = spanTotRtnDelvFee;
- } 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 - leftAddDelvFee; // 결제금액 환불 (환불예정금액 - 환불 배송비 상품권 금액 - 추가배송비)
- let deliveryFee = 0 - spanTotRtnDelvFee; // 환불배송비
- let spanTotGfcdUseAmt = spanGfcdUseAmt; // 환불 상품권 금액 합계
- 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"); // 포인트환불 > 적립예정포인트환수
- /*
- // 2021.08.10 card007 상품권100% 결제 로직 수정 기존 소스 백업
- let spanSumDeliveryFee = result.spanSumDeliveryFee - result.spanDelvCpnDcAmt;
- let sumDeliveryFee = result.sumDeliveryFee - result.spanRefundDelvCpnAmt;
-
- // 2021.08.04 취소금액수정
- var spanRealDelvAmt = 0;
- var addDelvFee = 0;
-
- if (result.spanRealCnclRtnAmt > 0) {
- // 고객사유 : 환불금액계산 = (취소금액 + 배송비) - 추가배송비
- if (isCustomer) {
- result.spanRefundAmt = (result.spanRealCnclRtnAmt + sumDeliveryFee) - result.spanTotDeliveryFee;
-
- // 2021.07.01
- // @ 마이너스금액이면 허들깨지면서 배송비 발생
- // @ 플러스금액이면 마지막취소시 배송금액 환불
- spanRealDelvAmt = sumDeliveryFee - result.spanTotDeliveryFee;
- addDelvFee = result.spanTotDeliveryFee;
- }
- // 회사사유 : 환불금액계산 = (취소금액 + 배송비)
- else {
- result.spanRefundAmt = (result.spanRealCnclRtnAmt + sumDeliveryFee);
- }
- }
-
- $("#spanRefundAmt").text(result.spanRefundAmt.addComma()+"원"); //환불 금액 합계
-
- $(".spanCnclRtnAmt").text(result.spanCnclRtnAmt.addComma()+"원");
- $(".spanCpn1DcAmt").text(result.spanCpn1DcAmt.addComma()+"원");
- $(".spanGoodsCpnDcAmt").text(result.spanGoodsCpnDcAmt.addComma()+"원");
- $(".spanCartCpnDcAmt").text(result.spanCartCpnDcAmt.addComma()+"원");
-
- var spanCpnDcAmt = result.spanCpn1DcAmt + result.spanGoodsCpnDcAmt + result.spanGoodsCpnDcAmt;
- $(".spanCpnDcAmt").text(spanCpnDcAmt.addComma()+"원");
-
- $(".spanPrePntDcAmt").text(result.spanPrePntDcAmt.addComma()+"원");
- $(".spanTmtbDcAmt").text(result.spanTmtbDcAmt.addComma()+"원");
-
- var goodsDcSumAmt = result.spanPrePntDcAmt + result.spanTmtbDcAmt;
- $(".goodsDcSumAmt").text(goodsDcSumAmt.addComma()+"원");
-
- $(".delvCpnAmt").text(result.spanDelvCpnDcAmt.addComma()+"원");
- $(".addDelvFee").text(addDelvFee.addComma()+"원");
- $(".spanRealDelvAmt").text(spanSumDeliveryFee.addComma()+"원");
-
- var totalRefundAmt = result.spanRefundAmt + result.spanGfcdUseAmt + result.spanPntDcAmt;
-
- $(".totalRefundAmt").text(totalRefundAmt.addComma()+"원");
- $(".spanRefundAmt").text(result.spanRefundAmt.addComma()+"원");
- $(".spanGfcdUseAmt").text(result.spanGfcdUseAmt.addComma()+"원");
- $(".spanPntDcAmt").text(result.spanPntDcAmt.addComma()+"원");
- $(".spanSavePntAmt").text(result.spanSavePntAmt.addComma()+"P");
-
- var pgGbNm = "";
- var cardGbNm = "";
-
- if (pgGb == 'KCP') {
- pgGbNm = payMeansNm;
- 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 = "외부몰입금";
- }
-
- $(".pgGbNm").text(pgGbNm);
- $(".cardNm").text(cardGbNm);
- */
- /*
- $("#spanPayAmt").text(result.spanPayAmt.addComma()); //총 결제 금액
- $("#spanSumRealOrdAmt").text(result.spanSumRealOrdAmt.addComma()); //상품 실결제 금액
- $("#spanSumDeliveryFee").text(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()); //장바구니쿠폰
- $("#spanDelvCpnDcAmt").text(result.spanDelvCpnDcAmt.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()); //취소 환불 배송 금액
- //$("#spanRealDelvAmt").text(result.spanTotDeliveryFee.addComma()); //취소 환불 배송 금액
-
- //$("#spanTotRtnDelvFee").text(result.spanTotRtnDelvFee.addComma()); //반품 환불 배송 금액
- //$("#spanTotExcDelvFee").text(result.spanTotExcDelvFee.addComma()); //교환 환불 배송 금액
- if (result.spanRealCnclRtnAmt > 0) {
- let wdGb = $('#wdGb:checked').val();
- // 고객사유(회수요청) : 환불금액게산 = (취소금액 + 배송비) - 추가배송비 - 반품배송비
- if (isCustomer && wdGb == 'W') {
- result.spanRefundAmt = result.spanRealCnclRtnAmt - result.spanTotRtnDelvFee;
-
- // 2021.07.01
- // @ 마이너스금액이면 허들깨지면서 배송비 발생
- // @ 플러스금액이면 마지막취소시 배송금액 환불
- var spanRealDelvAmt = result.spanTotRtnDelvFee;
- if (spanRealDelvAmt > 0) {
- spanRealDelvAmt * -1;
- }
-
- // 20212.07.07 환불배송비 -로 표시 (반품비용)
- result.spanTotRtnDelvFee = result.spanTotRtnDelvFee * -1;
- $("#spanRealDelvAmt").text(result.spanTotRtnDelvFee.addComma()); //환불배송비금액
- }
- // 고객사유(직접발송) : 환불금액계산 = (취소금액 + 배송비) - 추가배송비
- else if (isCustomer && wdGb == 'D') {
- result.spanRefundAmt = result.spanRealCnclRtnAmt;
- $("#spanRealDelvAmt").text(0); //환불배송비금액
- }
- // 회사사유 : 환불금액게산 = (취소금액 + 배송비)
- else {
- result.spanRefundAmt = result.spanRealCnclRtnAmt;
- $("#spanRealDelvAmt").text(0); //취소 환불 배송 금액
- }
- }
-
- $("#spanRefundAmt").text(result.spanRefundAmt.addComma()); //환불 금액 합계
- */
- }
- );
- }
- // 귀책사유설정
- var fnChangeChgReason = function(reasonCd){
- var customerReasonArr = ['G688_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 accountNo = "";
- var accountNm = "";
- var bankCd = "";
-
- var chgerNm = "";
- var chgerZipcode = "";
- var chgerBaseAddr = "";
- var chgerDtlAddr = "";
-
- var chgerPhnno1 = "";
- var chgerPhnno2 = "";
- var chgerPhnno3 = "";
-
- var chgerTelno1 = "";
- var chgerTelno2 = "";
- var chgerTelno3 = "";
-
- var chgerPhnno = "";
- var chgerTelno = "";
- var chgerEmail = "";
- var chgerRtnMemo = "";
-
- // 반품신청
- let chk = false;
- if (reqGbn == "rtnReq") {
- // 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. 반품사유 체크
- var chgReason = $("#cancelRequestFrm select[name=selectChgReason]").val();
- if (gagajf.isNull(chgReason)) {
- mcxDialog.alert("반품사유를 선택하세요.");
- return false;
- }
-
- // 3. 환불계좌체크 (결제타입이 무통장 입금일때 사용)
- if (payMeans == 'G014_20' && payStat == 'G016_30') {
- if ($("#refundAccount .bankNm").eq(0).text() == null || $("#refundAccount .bankNm").eq(0).text() == '') {
- mcxDialog.alert('환불계좌가 미등록 되어 있습니다.');
- return false;
- } else {
- chk = true
- }
-
- accountNo = $("#refundAccount .accountNo").eq(0).text();
- accountNm = $("#refundAccount .accountNm").eq(0).text();
- bankCd = $("#refundAccount .bankCd").eq(0).text();
- }
-
- // 4. 회수지정보설정 (회수요청일때실행)
- if ($('#wdGb:checked').val() == "W") {
- chgerNm = $("#cancelRequestFrm input[name=chgerNm]").val();
- chgerZipcode = $("#cancelRequestFrm input[name=chgerZipcode]").val();
- chgerBaseAddr = $("#cancelRequestFrm input[name=chgerBaseAddr]").val();
- chgerDtlAddr = $("#cancelRequestFrm input[name=chgerDtlAddr]").val();
-
- chgerPhnno1 = $("#cancelRequestFrm select[name=chgerPhnno1]").val();
- chgerPhnno2 = $("#cancelRequestFrm input[name=chgerPhnno2]").val();
- chgerPhnno3 = $("#cancelRequestFrm input[name=chgerPhnno3]").val();
-
- chgerTelno1 = $("#cancelRequestFrm select[name=chgerTelno1]").val();
- chgerTelno2 = $("#cancelRequestFrm input[name=chgerTelno2]").val();
- chgerTelno3 = $("#cancelRequestFrm input[name=chgerTelno3]").val();
-
- if (gagajf.isNull(chgerZipcode)) {
- mcxDialog.alert("회수지주소를 입력하세요."); return;
- }
- if (gagajf.isNull(chgerBaseAddr)) {
- mcxDialog.alert("회수지주소를 입력하세요."); return;
- }
- if (gagajf.isNull(chgerDtlAddr)) {
- mcxDialog.alert("회수지주소를 입력하세요."); return;
- }
-
- if (gagajf.isNull(chgerPhnno1)) {
- mcxDialog.alert("휴대전화를 입력하세요."); return;
- }
- if (gagajf.isNull(chgerPhnno2)) {
- mcxDialog.alert("휴대전화를 입력하세요."); return;
- }
- if (gagajf.isNull(chgerPhnno3)) {
- mcxDialog.alert("휴대전화를 입력하세요."); return;
- }
-
- chgerPhnno = chgerPhnno1 + '-' + chgerPhnno2 + '-' + chgerPhnno3;
- chgerEmail = orderInfoList[0].ordEmail;
- chgerRtnMemo = $("#cancelRequestFrm textarea[name=chgerRtnMemo]").val();
-
- if (gagajf.isNull(chgerTelno1) && gagajf.isNull(chgerTelno2) && gagajf.isNull(chgerTelno3)) {
- chgerTelno = '';
- } else {
- chgerTelno = chgerTelno1 + '-' + chgerTelno2 + '-' + chgerTelno3;
- }
-
- // 2021.11.09 card007 휴대폰번호 유효성검증 추가
- if (!gagajf.checkPhnno(chgerPhnno)) {
- mcxDialog.alert("회수지 휴대폰 번호가 유효하지 않습니다.");
-
- return false;
- }
- }
- }
-
- // 2021.01.26 화면통합
- // 5. 반품신청, 반품철회
- // 반품신청
- if (reqGbn == "rtnReq" && ordChgGb != 'G681_30') {
- confirmStr = "반품신청하시겠습니까?";
- cnclUrl = '/orderChange/rtnReq/';
- }
- // 반품신청철회
- else if (reqGbn == "rtnReqCancel") {
- confirmStr = "요청번호 [" + ordChgSq + "] 에 대한 요청철회 처리를 하시겠습니까?";
- cnclUrl = '/orderChange/rtnReqCancel/';
- }
- // 반품TO반품 신청
- else if (ordChgGb == 'G681_30') {
- confirmStr = "반품변경하시겠습니까?";
- cnclUrl = '/orderChange/return/to/return/';
- }
-
- // 7. 추가정보설정
- var ordNm = orderInfoList[0].ordNm;
- var ordPhnno = orderInfoList[0].ordPhnno;
- var custNo = orderInfoList[0].custNo;
- var delvFeeCd = orderInfoList[0].delvFeeCd;
- var delvFeeCdGrp = $('#cancelRequestFrm input[name=delvFeeCdGrp]').val();
- var jsonObj = {
- "ordNo" : $('#cancelRequestFrm input[name=ordNo]').val()
- ,"chgReason" : $('#cancelRequestFrm input[name=chgReason]').val()
- ,"chgMemo" : $('#chgMemo').val()
- ,"ordDtlNoArr" : ordDtlNoArr
- ,"cnclRtnReqQtyArr" : cnclRtnReqQtyArr
- ,"accountNo" : accountNo
- ,"accountNm" : accountNm
- ,"bankCd" : bankCd
- ,"allCanYn" : allCanYn
- ,"allCanYnBeforePayment" : "N"
- ,"isCustomer" : isCustomer
- ,"chgerNm" : chgerNm
- ,"chgerEmail" : chgerEmail
- ,"chgerZipcode" : chgerZipcode
- ,"chgerBaseAddr" : chgerBaseAddr
- ,"chgerDtlAddr" : chgerDtlAddr
- ,"chgerPhnno" : chgerPhnno
- ,"chgerTelno" : chgerTelno
- ,"chgerRtnMemo" : chgerRtnMemo
- ,"ordChgSq" : ordChgSq
- ,"wdGb" : $('#wdGb:checked').val()
- ,"delvFeeCdGrp" : delvFeeCdGrp
- ,"custNo" : custNo
- ,"ordNm" : ordNm
- ,"ordPhnno" : ordPhnno
- ,"msgStat" : $('#msgStat').is(':checked') ? 'Y' : 'N'
- }
- // 주문번호, 취소사유, 취소메모, (취소, 반품, 교환 신청 정보 목록), 환불계좌
- var jsonData = JSON.stringify(jsonObj);
-
- mcxDialog.confirm(confirmStr, {
- cancelBtnText : "취소",
- sureBtnText : "확인",
- sureBtnClick : function(){
- if (chk) {
- // 환불계좌 유효성 체크
- gagajf.ajaxJsonSubmit('/business/account/check', jsonData, function(result) {
- if (result.isValid) { // 유효하면 true
- // 취소 실행
- gagajf.ajaxJsonSubmit(
- cnclUrl
- , jsonData
- , function () {
- uifnPopupClose('popupOrderDetail');
- fnReOpenOrderDetailPopup();
- uifnPopupClose('popupReturnRequestForm');
- }
- );
- } else {
- mcxDialog.alert('환불계좌가 유효하지 않습니다.');
- return false;
- }
- });
- } else {
- // 취소 실행
- gagajf.ajaxJsonSubmit(
- cnclUrl
- , jsonData
- , function () {
- uifnPopupClose('popupOrderDetail');
- fnReOpenOrderDetailPopup();
- uifnPopupClose('popupReturnRequestForm');
- }
- );
- }
- }
- });
- }
- // 환불계좌 등록
- var fnCreateOrderRfAccount = function () {
- var actionUrl = "/orderChange/refund/account/create/form?ordNo=" + ordNo ;
- cfnOpenModalPopup(actionUrl, 'popupCreateRefundAccount');
- };
- //환불계좌 정보
- var fnBindOrderRfAccountInfo = function () {
- var jsonObj = {
- "ordNo" : ordNo
- }
-
- 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 != '') {
- $("#refundAccount .bankNm").text(result.orderRfAccountInfo[0].bankNm);
- $("#refundAccount .bankCd").text(result.orderRfAccountInfo[0].bankCd);
- $("#refundAccount .accountNo").text(result.orderRfAccountInfo[0].accountNo);
- $("#refundAccount .accountNm").text(result.orderRfAccountInfo[0].accountNm);
- $("#refundAccount .defaultYn").text(result.orderRfAccountInfo[0].defaultYn);
- }
- }
- );
- };
- // 우편번호 DAUM을 이용한 우편번호 팝업 레이어
- var fnOpenDaumAddr = function() {
- let daumZip = new daum.Postcode({
- oncomplete: function(data) {
- // 우편번호와 주소 정보를 해당 필드에 넣는다.
- $('#cancelRequestFrm input[name=chgerZipcode]').val(data.zonecode);
- $('#cancelRequestFrm input[name=chgerBaseAddr]').val(cfnGetDaumRoadAddr(data));
- $('#cancelRequestFrm input[name=chgerDtlAddr]').focus();
-
- cfnCloseDaumAddr();
- },
- width: '100%'
- });
-
- cfnOpenDaumAddr(daumZip);
- }
- // 회수지정보 설정
- var fnSetChger = function(){
- var data = orderDelvRtnAddrInfo[0];
- var spRecipPhnno = (data.recipPhnno != null) ? data.recipPhnno.split('-') : null;
- var spRecipTelno = (data.recipTelno != null) ? data.recipTelno.split('-') : null;
-
- // 반품상세화면일때적용
- if (ordChgSq > 0) {
- data = orderChangeDetailList[0];
- spRecipPhnno = (data.chgerPhnno != null) ? data.chgerPhnno.split('-') : null;
- spRecipTelno = (data.chgerTelno != null) ? data.chgerTelno.split('-') : null;
-
- // 회수지정보 히든 처리
- if (wdGb == 'D') {
- $('#chgerAddress').css('display', 'none');
- } else {
- $("#cancelRequestFrm input[name=chgerNm]").val(data.chgerNm);
- $("#cancelRequestFrm input[name=chgerZipcode]").val(data.chgerZipcode);
- $("#cancelRequestFrm input[name=chgerBaseAddr]").val(data.chgerBaseAddr);
- $("#cancelRequestFrm input[name=chgerDtlAddr]").val(data.chgerDtlAddr);
- $("#cancelRequestFrm textarea[name=chgerRtnMemo]").val(data.chgerRtnMemo);
- }
- } else {
- $("#cancelRequestFrm input[name=chgerNm]").val(data.recipNm);
- $("#cancelRequestFrm input[name=chgerZipcode]").val(data.recipZipcode);
- $("#cancelRequestFrm input[name=chgerBaseAddr]").val(data.recipBaseAddr);
- $("#cancelRequestFrm input[name=chgerDtlAddr]").val(data.recipDtlAddr);
- $("#cancelRequestFrm textarea[name=chgerRtnMemo]").val(data.chgerRtnMemo);
- }
-
- if (spRecipPhnno) {
- $("#cancelRequestFrm select[name=chgerPhnno1]").val(spRecipPhnno[0]);
- $("#cancelRequestFrm input[name=chgerPhnno2]").val(spRecipPhnno[1]);
- $("#cancelRequestFrm input[name=chgerPhnno3]").val(spRecipPhnno[2]);
- }
-
- if (spRecipTelno) {
- $("#cancelRequestFrm select[name=chgerTelno1]").val(spRecipTelno[0]);
- $("#cancelRequestFrm input[name=chgerTelno2]").val(spRecipTelno[1]);
- $("#cancelRequestFrm input[name=chgerTelno3]").val(spRecipTelno[2]);
- }
-
- if (ordChgSq > 0 && chgStat != 'G685_50' && chgStat != 'G685_51') {
- $('input[name=chgerNm]').attr('readOnly', true); // 회수지정보 > 보내는사람 비활성화
- $('input[name=chgerBaseAddr]').attr('readOnly', true); // 회수지정보 > 기본주소 비활성화
- $('input[name=chgerDtlAddr]').attr('readOnly', true); // 회수지정보 > 상세주소 비활성화
- $('select[name=chgerTelno1]').attr('disabled', true); // 회수지정보 > 일반전화 비활성화
- $('input[name=chgerTelno2]').attr('readOnly', true); // 회수지정보 > 일반전화 비활성화
- $('input[name=chgerTelno3]').attr('readOnly', true); // 회수지정보 > 일반전화 비활성화
- $('select[name=chgerPhnno1]').attr('disabled', true); // 회수지정보 > 휴대전화 비활성화
- $('input[name=chgerPhnno2]').attr('readOnly', true); // 회수지정보 > 휴대전화 비활성화
- $('input[name=chgerPhnno3]').attr('readOnly', true); // 회수지정보 > 휴대전화 비활성화
- $('#chgerRtnMemo').attr('readOnly', true); // 회수지정보 > 반품메모 비활성화
- }
- }
- // 회수방법설정이벤트
- var fnChangeWdGb = function(param) {
- let wdGb = $(param).val();
-
- // 회수지정보 히든 처리
- if (wdGb == 'D') {
- $('#chgerAddress').css('display', 'none');
- $('#delvCdList').css('display', '');
- } else {
- $('#chgerAddress').css('display', '');
- $('#delvCdList').css('display', 'none');
- }
-
- // 환불예정금액 계산
- fnCalculateRefundAmt();
- }
- // 반품TO교환 버튼 클릭 이벤트
- var fnRtnToExc = function() {
- let ordNo = $('#cancelRequestFrm input[name=ordNo]').val();
- let ordChgSq = $('#cancelRequestFrm input[name=ordChgSq]').val();
- let delvFeeCd = $('#cancelRequestFrm input[name=delvFeeCd]').val();
- let delvFeeCdGrp = $('#cancelRequestFrm input[name=delvFeeCdGrp]').val();
-
- // 취소요청 구분 (orChgSq null 이면 취소요청화면 있으면 취소요청정보화면)
- if (ordChgSq == null) {
- ordChgSq = 0;
- }
-
- var param = "";
- param += "&ordNo=" + ordNo;
- param += "&delvFeeCd=" + delvFeeCd;
- param += "&delvFeeCdGrp=" + delvFeeCdGrp;
- param += "&ordChgSq=" + ordChgSq;
- param += "&ordChgGb=G681_40";
-
- // 반품상세 팝업 닫기
- uifnPopupClose('popupReturnRequestForm');
-
- var actionUrl = "/orderChange/exchange/request/form?" + param;
- cfnOpenModalPopup(actionUrl, 'popupExchangeRequestForm');
- }
- // 회수지 정보 수정
- var fnChangeChgerInfo = function() {
- let url = '/orderChange/change/chger/addr';
- let chgerNm = $("#cancelRequestFrm input[name=chgerNm]").val();
- let chgerZipcode = $("#cancelRequestFrm input[name=chgerZipcode]").val();
- let chgerBaseAddr = $("#cancelRequestFrm input[name=chgerBaseAddr]").val();
- let chgerDtlAddr = $("#cancelRequestFrm input[name=chgerDtlAddr]").val();
- let chgerPhnno1 = $("#cancelRequestFrm select[name=chgerPhnno1]").val();
- let chgerPhnno2 = $("#cancelRequestFrm input[name=chgerPhnno2]").val();
- let chgerPhnno3 = $("#cancelRequestFrm input[name=chgerPhnno3]").val();
- let chgerTelno1 = $("#cancelRequestFrm select[name=chgerTelno1]").val();
- let chgerTelno2 = $("#cancelRequestFrm input[name=chgerTelno2]").val();
- let chgerTelno3 = $("#cancelRequestFrm input[name=chgerTelno3]").val();
-
- if (gagajf.isNull(chgerZipcode)) {
- mcxDialog.alert("회수지주소를 입력하세요."); return;
- }
- if (gagajf.isNull(chgerBaseAddr)) {
- mcxDialog.alert("회수지주소를 입력하세요."); return;
- }
- if (gagajf.isNull(chgerDtlAddr)) {
- mcxDialog.alert("회수지주소를 입력하세요."); return;
- }
-
- if (gagajf.isNull(chgerPhnno1)) {
- mcxDialog.alert("휴대전화를 입력하세요."); return;
- }
- if (gagajf.isNull(chgerPhnno2)) {
- mcxDialog.alert("휴대전화를 입력하세요."); return;
- }
- if (gagajf.isNull(chgerPhnno3)) {
- mcxDialog.alert("휴대전화를 입력하세요."); return;
- }
-
- let chgerPhnno = chgerPhnno1 + '-' + chgerPhnno2 + '-' + chgerPhnno3;
- let chgerRtnMemo = $("#cancelRequestFrm textarea[name=chgerRtnMemo]").val();
- let chgerTelno = '';
-
- if (!gagajf.isNull(chgerTelno1) && !gagajf.isNull(chgerTelno2) && !gagajf.isNull(chgerTelno3)) {
- chgerTelno = chgerTelno1 + '-' + chgerTelno2 + '-' + chgerTelno3;
- }
-
- // 2021.11.09 card007 휴대폰번호 유효성검증 추가
- if (!gagajf.checkPhnno(chgerPhnno)) {
- mcxDialog.alert("회수지 휴대폰 번호가 유효하지 않습니다.");
-
- return false;
- }
-
- let data = {};
- data.ordNo = ordNo;
- data.ordChgSq = ordChgSq;
- data.chgerNm = chgerNm;
- data.chgerPhnno = chgerPhnno;
- data.chgerZipcode = chgerZipcode;
- data.chgerBaseAddr = chgerBaseAddr;
- data.chgerDtlAddr = chgerDtlAddr;
- data.chgerRtnMemo = chgerRtnMemo;
-
- let jsonData = JSON.stringify(data);
-
- gagajf.ajaxJsonSubmit(url, jsonData, function(result){
-
- });
- }
- // 네이버페이 주문형 반품보류 버튼 클릭 이벤트
- var fnNpayReturnHold = function(param) {
- let url = '/orderChange/nPay/order/return/hold';
- let npayChangeHoldYn = $(param).attr('npayChangeHoldYn');
-
- let data = {};
- data.cancelReqList = cancelRequestTargetList;
- data.npayChangeHoldYn = npayChangeHoldYn;
- data.ordChgSq = ordChgSq;
-
- let jsonData = JSON.stringify(data);
-
- gagajf.ajaxJsonSubmit(url, jsonData, function(result) {
- uifnPopupClose('popupOrderDetail');
- fnReOpenOrderDetailPopup();
- uifnPopupClose('popupReturnRequestForm');
- });
- }
- $(document).ready(function() {
- // 1. 그리드생성
- gagaAgGrid.createGrid('gridOrderCancelRequestList' , gridOptionsCancelReqList); // 주문정보
- gagaAgGrid.createGrid('gridOrderCancelRequestToBeList' , gridOptionsCancelReqToBeList); // 취소정보
- gagaAgGrid.createGrid('gridDelvInfoList' , gridOptionsDelvInfoList); // 배송비정보
- gagaAgGrid.createGrid('gridDelvCdList' , gridOptionsDelvCdList); // 배송정보
-
- gridOptionsCancelReqList.api.setRowData(cancelRequestTargetList);
- gridOptionsDelvCdList.api.setRowData(rtnLocInfo);
-
- // 1.1 TOTAL ROWS 없애기
- gagaAgGrid.hideStatusBar('gridOrderCancelRequestList');
- gagaAgGrid.hideStatusBar('gridOrderCancelRequestToBeList');
- gagaAgGrid.hideStatusBar('gridDelvCdList');
-
- // 2. 회수구분처리
- if (wdGb == 'D') {
- $('input:radio[name="wdGb"]:radio[value="D"]').prop('checked', true);
- } else {
- $('input:radio[name="wdGb"]:radio[value="W"]').prop('checked', true);
- $('#delvCdList').css('display', 'none');
- }
-
- // 3. 무통장입금아닐때 환불계좌 목록 숨김처리
- if (payMeans !== 'G014_20') {
- $('#refundAccount').addClass("off");
- } else {
- fnBindOrderRfAccountInfo();
- }
- // 4. 회수지정보설정
- fnSetChger();
- // 네이버페이 주문형 보류 버튼 처리
- $('#returnHold').css('display', 'none');
- $('#releaseReturnHold').css('display', 'none');
- // 5. 반품신청, 반품철회 버튼 제어
- if (ordChgSq > 0) {
- $("#rtnReqBtn").css("display", "none");
- $("#rtnReqCancelBtn").css("display", "none");
-
- // 2021.05.25 반품접수, 반품대기 상태에서만 철회가능
- // 2021.07.13 회수예외정보가 있고 회수요청, 상품검수중 상태에서 철회 가능 처리
- // 2021.07.22 택배사 회수 불가 시 회수요청상태에서 반품철회 처리
- //if (chgStat != "G685_50" && chgStat != "G685_51" && (recallExceptionInfo == null || (chgStat != "G685_30" && chgStat != 'G685_31'))) {
-
- // 2021.09.07 반품철회 전체 상태 오픈 현업(정지혜 과장 요청)
- //if (chgStat != "G685_50" && chgStat != "G685_51") {
- //$("#rtnReqCancelBtn").css("display", "none");
- //}
-
- // 회수요청 상태에서 택배사 회수 불가 or 회수예외정보 존재 시 반품철회 가능
- //if (chgStat == 'G685_30' && (recallExceptionInfo != null || canRequestCancelYn == 'Y')) {
- // $("#rtnReqCancelBtn").css("display", "");
- //}
-
- // 상품검수중 상태에서 회수예외정보 존재 시 반품철회 가능
- //if (chgStat == 'G685_31' && recallExceptionInfo != null) {
- // $("#rtnReqCancelBtn").css("display", "");
- //}
-
- // 2021.10.01 card007 CS요청으로 반품접수, 반품대기, 회수요청, 상품검수중 상태에서 반품철회 가능
- if (chgStat == 'G685_50' || chgStat == 'G685_51' || chgStat == 'G685_30' || chgStat == 'G685_31') {
- $("#rtnReqCancelBtn").css("display", "");
- }
-
- // 반품TO교환 버튼
- if ((chgStat != "G685_50" && chgStat != "G685_51" && chgStat != "G685_30") || pgGb == 'NAVER_ORDER') {
- $("#rtnToExcBtn").css("display", "none");
- }
-
- // 반품TO반품 버튼
- if (ordChgGb != 'G681_30') {
- $("#rtnToRtnBtn").css("display", "none");
- } else {
- $("#rtnReqCancelBtn").css("display", "none");
- $("#rtnToExcBtn").css("display", "none");
- }
-
- // 직접발송일때 회수지정보 숨김처리
- if (wdGb == "D") {
- $("#chgerAddress").css("display", "none");
- } else {
- $('#delvCdList').css('display', 'none');
- }
-
- // 네이버페이 주문형 보류 버튼 처리
- if (!gagajf.isNull(npayChangeHoldYn)) {
- if (npayChangeHoldYn == 'Y') {
- $('#releaseReturnHold').css('display', '');
- } else {
- $('#returnHold').css('display', '');
- }
- }
- } else {
- $("#rtnReqCompleteBtn").css("display", "none");
- $("#rtnReqCancelBtn").css("display", "none");
- $("#rtnToExcBtn").css("display", "none");
- $("#rtnToRtnBtn").css("display", "none");
- }
-
- // 6. 취소사유 선택
- if (ordChgSq > 0) {
- $("select[name='selectChgReason']").val(chgReason); // 변경사유코드
- $("select[name='selectChgReason']").attr('disabled', true); // 변경사유 비활성화
- $("#chgMemo").text(chgMemo); // 변경사유메모
- $("#chgMemo").attr('readOnly', true); // 변경사유메모 비활성화
- $('input:radio[name=wdGb]').attr('disabled', true); // 회수방법 비활성화
- fnChangeChgReason(chgReason); // 귀책사유
- }
-
- // debug mode 해제
- if (temp3) {
- $("#h4OrderCancelRequestToBeList").css("display" , "none");
- $("#gridOrderCancelRequestToBeList").css("display" , "none");
- $("#h4DelvInfoList").css("display" , "none");
- $("#gridDelvInfoList").css("display" , "none");
- }
-
- // 7. 환불예상금액계산
- fnCalculateRefundAmt(null);
-
- // 2021.05.13 높이자동조절
- var cancelRequestTargetHeight = 50 + (40 * cancelRequestTargetCnt);
- $("#gridOrderCancelRequestList").css("height" , cancelRequestTargetHeight+"px");
-
- // 글자수 제한 byte 표기
- cfnGetTextLength($('#chgMemo'), 1000, $('#chgMemoCount'));
- cfnGetTextLength($('#chgerRtnMemo'), 1000, $('#chgerRtnMemoCount'));
- // WMS 미접수, 확정후품절 처리
- if (ordChgGb == 'G681_50' || ordChgGb == 'G681_60') {
- $('input:radio[name="wdGb"]:radio[value="D"]').prop('checked', true);
- $('#chgerAddress').css('display', 'none');
- $('input:radio[name=wdGb]').attr('disabled', true);
- $('#delvCdList').css('display', 'none');
-
- // 확정후품절 반품사유 품절로 처리
- if (ordChgGb == 'G681_60') {
- $("select[name='selectChgReason']").val('G688_17'); // 변경사유코드
- $("select[name='selectChgReason']").attr('disabled', true); // 변경사유 비활성화
- fnChangeChgReason('G688_17'); // 귀책사유
- }
- }
- });
- </script>
- </html>
|