MypageOrderDetailFormMob.html 46 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072
  1. <!DOCTYPE html>
  2. <html lang="ko" xmlns:th="http://www.thymeleaf.org" xmlns:layout="http://www.ultraq.net.nz/thymeleaf/layout" layout:decorator="mob/common/layout/MypageLayoutMob">
  3. <!--
  4. *******************************************************************************
  5. * @source : MypageOrderDetailFormMob.html
  6. * @desc : 마이페이지 > 주문상세 Page
  7. *============================================================================
  8. * STYLE24
  9. * Copyright(C) 2021 TSIT, All rights reserved.
  10. *============================================================================
  11. * VER DATE AUTHOR DESCRIPTION
  12. * === =========== ========== =============================================
  13. * 1.0 2021.04.22 jsh77b 최초 작성
  14. *******************************************************************************
  15. -->
  16. <body>
  17. <th:block layout:fragment="content">
  18. <main role="" id="mypageOrderDetailForm" class="container my">
  19. <section class="content my_order my_gift">
  20. <div class="inner wide bg_beige">
  21. <div class="order_number">
  22. <dl class="clear">
  23. <dt>주문번호</dt>
  24. <dd th:text="${ordNo}"></dd>
  25. </dl>
  26. <a href="javascript:void(0);" class="delete" onclick="fnDeleteOrder()">주문 내역 삭제</a>
  27. </div>
  28. </div>
  29. <div class="inner">
  30. <th:block th:if="${orderList}" th:each="order, status : ${orderList}">
  31. <div class="part_goods">
  32. <div class="goods_top">
  33. <th:block th:unless="${order.giftPackYn == 'Y'}">
  34. <div class="goods_date">주문일<span class="date" th:text="${order.ordDt}"></span></div>
  35. </th:block>
  36. <th:block th:if="${order.giftPackYn == 'Y'}">
  37. <div class="goods_date">선물일<span class="date" th:text="${order.ordDt}"></span></div>
  38. </th:block>
  39. <th:block th:if="${order.allCanYn == 'Y' and order.ordReqChgQty == 0}">
  40. <a href="javascript:void(0);" id="btn_all_delete" class="delete_btn" onclick="fnAllCancel();">주문 전체 취소</a> <!-- 210409_추가 : btn_all_delete id 추가 -->
  41. </th:block>
  42. <th:block th:if="${allDecideYn == 'Y' and order.ordReqChgQty == 0}">
  43. <a href="javascript:void(0)" id="btn_all_confirm" class="purchase_btn" th:attr="ordNo=${ordNo}" onclick="fnAllDecideOrder(this);">전체구매확정</a></li>
  44. </th:block>
  45. <!--<a href="javascript:;" id="btn_all_confirm" class="purchase_btn">전체 구매 확정</a> 전체 구매확정 버튼. --> <!-- 210409_추가 : btn_all_confirm id 추가 -->
  46. </div>
  47. <th:block th:if="${order.ordDtlList}" th:each="ordDtl, status : ${order.ordDtlList}" th:with="imageUrl=${@environment.getProperty('upload.goods.view')}">
  48. <div class="goods_section">
  49. <div class="goods_status">
  50. <!-- 선물주문 -->
  51. <th:block th:if="${order.giftPackYn == 'Y'}">
  52. <p class="dlvr_staus" th:if="${ordDtl.giftAddrInpYn == 'N' and ordDtl.giftLimitDay >= 0}">주소 입력 대기중</p>
  53. <p class="dlvr_staus" th:if="${ordDtl.giftAddrInpYn == 'Y' and ordDtl.ordDtlStat != 'G013_98' and ordDtl.ordDtlStat != 'G013_99'}">선물 완료</p>
  54. <p class="dlvr_staus" th:if="${ordDtl.ordDtlStat == 'G013_98' or ordDtl.ordDtlStat == 'G013_99'}">선물 취소</p>
  55. </th:block>
  56. <!-- //선물주문 -->
  57. <!-- 일반주문 -->
  58. <th:block th:unless="${order.giftPackYn == 'Y'}">
  59. <p class="dlvr_staus" th:if="${ordDtl.ordDtlStat == 'G013_10'}">주문접수</p>
  60. <p class="dlvr_staus" th:if="${ordDtl.ordDtlStat == 'G013_35'}">상품준비중</p>
  61. <p class="dlvr_staus" th:unless="${ordDtl.ordDtlStat == 'G013_10' or ordDtl.ordDtlStat == 'G013_35'}" th:text="${ordDtl.ordDtlStatNm}"></p>
  62. </th:block>
  63. <!-- //일반주문 -->
  64. </div>
  65. <div class="goods_detail">
  66. <input type="hidden" name="ordDtlNoArr" th:value="${ordDtl.ordDtlNo}"/>
  67. <input type="hidden" name="cnclRtnReqQtyArr" th:value="${ordDtl.ordQty - ordDtl.cnclRtnQty}"/>
  68. <a href="javascript:void(0)" th:attr="goodsCd=${ordDtl.goodsCd}, optCd1=${ordDtl.goodsType == 'G056_N' ? ordDtl.optCd1 : ''}, ithrCd='IN20_02'" onclick="fnGoToGoodsDetail(this)">
  69. <div class="thumb_box">
  70. <img th:src="${imageUrl + '/' + ordDtl.sysImgNm + '?RS=90'}" width="100%" alt="">
  71. </div>
  72. <div class="info_box">
  73. <div class="od_name">
  74. <div class="brand">
  75. <span th:text="${ordDtl.brandNm}"></span>
  76. <div class="badge_wrap">
  77. <em class="order_badge order_bullet_badge" th:if="${ordDtl.shotDelvYn == 'Y'}">총알배송</em>
  78. <em class="order_badge" th:if="${ordDtl.shotDelvYn == 'N' and ordDtl.selfGoodsYn == 'Y'}">STYLE24 일반배송</em>
  79. <em class="order_badge" th:if="${ordDtl.selfGoodsYn == 'N'}">업체직배송</em>
  80. </div>
  81. </div>
  82. <div class="name" th:text="${ordDtl.goodsNm}"></div>
  83. </div>
  84. <div class="od_opt">
  85. <!-- 세트상품 -->
  86. <th:block th:if="${ordDtl.goodsType == 'G056_S'}">
  87. <th:block th:each="option, status : ${ordDtl.colorNmArr}">
  88. <div class="option">
  89. <em th:text="${ordDtl.itemNmArr[status.index]}"></em>
  90. <em th:text="${option}"></em>
  91. <em th:text="${ordDtl.optCd2Arr[status.index]}"></em>
  92. </div>
  93. </th:block>
  94. </th:block>
  95. <!-- //세트상품 -->
  96. <!-- 일반상품 -->
  97. <th:block th:unless="${ordDtl.goodsType == 'G056_S'}">
  98. <th:block th:each="option, status : ${ordDtl.colorNmArr}">
  99. <div class="option">
  100. <em th:text="${ordDtl.colorNm}"></em>
  101. <em th:text="${ordDtl.optCd2}"></em>
  102. </div>
  103. </th:block>
  104. </th:block>
  105. <!-- //일반상품 -->
  106. </div>
  107. <div class="od_calc">
  108. <p class="point"><span th:text="${#numbers.formatInteger(ordDtl.savePntAmt, 1, 'COMMA')}"></span>P 적립예정</p>
  109. <p class="sale_price" th:if="${(ordDtl.ordAmt - ordDtl.cnclRtnAmt) > (ordDtl.realOrdAmt + ordDtl.pntDcAmt + ordDtl.gfcdUseAmt)}">
  110. <del>
  111. <em th:text="${#numbers.formatInteger(ordDtl.ordAmt - ordDtl.cnclRtnAmt, 1, 'COMMA')}"></em>원
  112. </del>
  113. </p>
  114. <p class="price">
  115. <span class="selling_price">
  116. <em th:text="${#numbers.formatInteger(ordDtl.realOrdAmt + ordDtl.pntDcAmt + ordDtl.gfcdUseAmt, 1, 'COMMA')}"></em>원
  117. </span>
  118. <span class="count">
  119. <em th:text="${ordDtl.ordQty - ordDtl.cnclRtnQty}"></em>개
  120. </span>
  121. </p>
  122. </div>
  123. </div>
  124. </a>
  125. </div>
  126. <!-- 주문상태별 버튼기능 정의 -->
  127. <!-- 일반주문 -->
  128. <th:block th:unless="${ordDtl.giftPackYn} == 'Y'">
  129. <!-- 입금대기 (1:1문의, 쇼핑백 담기) -->
  130. <th:block th:if="${ordDtl.ordDtlStat == 'G013_10'}">
  131. <div class="goods_btn_wrap btn_group_flex">
  132. <div><button type="button" class="btn btn_default btn_cncl_complete" onclick="cfnGoToPage(_PAGE_ONETOONE_QNA);"><span>1:1 문의</span></button></div>
  133. <div><button type="button" class="btn btn_default btn_cart_save" th:ordNo="${ordDtl.ordNo}" th:ordDtlNo="${ordDtl.ordDtlNo}" onclick="fnCreateCart(this);"><span>쇼핑백 담기</span></button></div>
  134. </div>
  135. </th:block>
  136. <!-- //입금대기 (1:1문의, 쇼핑백 담기) -->
  137. <!-- 결제완료, 상품준비중, 출고처지정 (주문취소) -->
  138. <th:block th:if="${ordDtl.ordDtlStat} == 'G013_20' or ${ordDtl.ordDtlStat} == 'G013_30' or ${ordDtl.ordDtlStat} == 'G013_35'">
  139. <th:block th:if="${ordDtl.ordExchGb == 'O'}">
  140. <div class="goods_btn_wrap btn_group_flex">
  141. <div><button type="button" class="btn btn_default btn_cncl_complete" th:attr="ordNo=${ordDtl.ordNo}, ordDtlNo=${ordDtl.ordDtlNo}, delvFeeCd=${ordDtl.delvFeeCd}, ordCanChgQty=${ordDtl.ordCanChgQty}" onclick="fnCreateChange(this, 'cancel');"><span>주문 취소</span></button></div>
  142. </div>
  143. </th:block>
  144. <th:block th:unless="${ordDtl.ordExchGb == 'O'}">
  145. <div class="goods_btn_wrap btn_group_flex">
  146. <div><button type="button" class="btn btn_default btn_cncl_complete" onclick="cfnGoToPage(_PAGE_ONETOONE_QNA);"><span>1:1 문의</span></button></div>
  147. <div><button type="button" class="btn btn_default btn_cart_save" th:ordNo="${ordDtl.ordNo}" th:ordDtlNo="${ordDtl.ordDtlNo}" onclick="fnCreateCart(this);"><span>쇼핑백 담기</span></button></div>
  148. </div>
  149. </th:block>
  150. </th:block>
  151. <!-- //결제완료, 상품준비중, 출고처지정 (주문취소) -->
  152. <!-- 배송준비중-->
  153. <th:block th:if="${ordDtl.ordDtlStat} == 'G013_40'">
  154. <div class="goods_btn_wrap btn_group_flex">
  155. <div>
  156. <button type="button" class="btn btn_default btn_cncl_complete" onclick="cfnGoToPage(_PAGE_ONETOONE_QNA);">
  157. <span>1:1 문의</span>
  158. </button>
  159. </div>
  160. <div>
  161. <button type="button" class="btn btn_default btn_cart_save" th:ordNo="${ordDtl.ordNo}" th:ordDtlNo="${ordDtl.ordDtlNo}" onclick="fnCreateCart(this);">
  162. <span>쇼핑백 담기</span>
  163. </button>
  164. </div>
  165. </div>
  166. </th:block>
  167. <!-- //배송준비중-->
  168. <!-- 배송중 (교환가능, 반품가능) -->
  169. <th:block th:if="${ordDtl.ordDtlStat} == 'G013_50' or ${ordDtl.ordDtlStat} == 'G013_55'">
  170. <div class="goods_btn_wrap btn_group_flex btn_count">
  171. <!-- 교환불가 -->
  172. <th:block th:if="${ordDtl.changeableYn} == 'N' and ${ordDtl.returnableYn} == 'Y'">
  173. <div>
  174. <button type="button" class="btn btn_default btn_qna_write" onclick="cfnGoToPage(_PAGE_ONETOONE_QNA);">
  175. <span>1:1 문의</span>
  176. </button>
  177. </div>
  178. </th:block>
  179. <!-- //교환불가 -->
  180. <!-- 교환가능 -->
  181. <th:block th:if="${ordDtl.changeableYn} == 'Y'">
  182. <div>
  183. <button type="button" class="btn btn_default btn_exch_req" th:ordNo="${ordDtl.ordNo}" th:ordDtlNo="${ordDtl.ordDtlNo}" th:ordCanChgQty="${ordDtl.ordCanChgQty}" th:delvFeeCd="${ordDtl.delvFeeCd}" onclick="fnCreateChange(this, 'exchange');">
  184. <span>교환 신청</span>
  185. </button>
  186. </div>
  187. </th:block>
  188. <!-- //교환가능 -->
  189. <!-- 반품가능 -->
  190. <th:block th:if="${ordDtl.returnableYn} == 'Y'">
  191. <div>
  192. <button type="button" class="btn btn_default btn_rtn_req" th:ordNo="${ordDtl.ordNo}" th:ordDtlNo="${ordDtl.ordDtlNo}" th:ordCanChgQty="${ordDtl.ordCanChgQty}" th:delvFeeCd="${ordDtl.delvFeeCd}" onclick="fnCreateChange(this, 'return');">
  193. <span>반품 신청</span>
  194. </button>
  195. </div>
  196. </th:block>
  197. <!-- 반품가능 -->
  198. <!-- 반품불가 -->
  199. <th:block th:if="${ordDtl.changeableYn} == 'Y' and ${ordDtl.returnableYn} == 'N'">
  200. <div>
  201. <button type="button" class="btn btn_default btn_qna_write" onclick="cfnGoToPage(_PAGE_ONETOONE_QNA);">
  202. <span>1:1 문의</span>
  203. </button>
  204. </div>
  205. </th:block>
  206. <!-- //반품불가 -->
  207. <!-- 교환불가, 반품불가 -->
  208. <th:block th:if="${ordDtl.returnableYn} == 'N' and ${ordDtl.changeableYn} == 'N'">
  209. <div>
  210. <button type="button" class="btn btn_default btn_qna_write" onclick="cfnGoToPage(_PAGE_ONETOONE_QNA);">
  211. <span>1:1 문의</span>
  212. </button>
  213. </div>
  214. </th:block>
  215. <!-- //교환불가, 반품불가 -->
  216. <!-- 배송조회 -->
  217. <div>
  218. <button type="button" class="btn btn_default btn_delv_sch" th:attr="ordNo=${ordDtl.ordNo}, ordDtlNo=${ordDtl.ordDtlNo}, shipCompCd=${ordDtl.shipCompCd}, invoiceNo=${ordDtl.invoiceNo}" onclick="fnGoToDelivery(this);">
  219. <span>배송 조회</span>
  220. </button>
  221. </div>
  222. <!-- //배송조회 -->
  223. </div>
  224. </th:block>
  225. <!-- //배송중 (교환가능, 반품가능) -->
  226. <!-- 배송완료 (교환가능, 반품가능) -->
  227. <th:block th:if="${ordDtl.ordDtlStat} == 'G013_60'">
  228. <div class="goods_btn_wrap btn_group_flex btn_count">
  229. <!-- 교환가능 -->
  230. <th:block th:if="${ordDtl.changeableYn} == 'Y'">
  231. <div>
  232. <button type="button" class="btn btn_default btn_exch_req" th:ordNo="${ordDtl.ordNo}" th:ordDtlNo="${ordDtl.ordDtlNo}" th:ordCanChgQty="${ordDtl.ordCanChgQty}" th:delvFeeCd="${ordDtl.delvFeeCd}" onclick="fnCreateChange(this, 'exchange');">
  233. <span>교환 신청</span>
  234. </button>
  235. </div>
  236. </th:block>
  237. <!-- //교환가능 -->
  238. <!-- 반품가능 -->
  239. <th:block th:if="${ordDtl.returnableYn} == 'Y'">
  240. <div>
  241. <button type="button" class="btn btn_default btn_rtn_req" th:ordNo="${ordDtl.ordNo}" th:ordDtlNo="${ordDtl.ordDtlNo}" th:ordCanChgQty="${ordDtl.ordCanChgQty}" th:delvFeeCd="${ordDtl.delvFeeCd}" onclick="fnCreateChange(this, 'return');">
  242. <span>반품 신청</span>
  243. </button>
  244. </div>
  245. </th:block>
  246. <!-- //반품가능 -->
  247. <!-- 배송조회 -->
  248. <div>
  249. <button type="button" class="btn btn_default btn_delv_sch" th:attr="ordNo=${ordDtl.ordNo}, ordDtlNo=${ordDtl.ordDtlNo}, shipCompCd=${ordDtl.shipCompCd}, invoiceNo=${ordDtl.invoiceNo}" onclick="fnGoToDelivery(this);">
  250. <span>배송 조회</span>
  251. </button>
  252. </div>
  253. <!-- //배송조회 -->
  254. <!-- 교환불가 -->
  255. <th:block th:if="${ordDtl.changeableYn} == 'N' and ${ordDtl.returnableYn} == 'Y'">
  256. <div>
  257. <button type="button" class="btn btn_default btn_qna_write" onclick="cfnGoToPage(_PAGE_ONETOONE_QNA);">
  258. <span>1:1 문의</span>
  259. </button>
  260. </div>
  261. </th:block>
  262. <!-- //교환불가 -->
  263. <!-- 반품불가 -->
  264. <th:block th:if="${ordDtl.changeableYn} == 'Y' and ${ordDtl.returnableYn} == 'N'">
  265. <div>
  266. <button type="button" class="btn btn_default btn_qna_write" onclick="cfnGoToPage(_PAGE_ONETOONE_QNA);">
  267. <span>1:1 문의</span>
  268. </button>
  269. </div>
  270. </th:block>
  271. <!-- //반품불가 -->
  272. <!-- 교환불가, 반품불가 -->
  273. <th:block th:if="${ordDtl.returnableYn} == 'N' and ${ordDtl.changeableYn} == 'N'">
  274. <div>
  275. <button type="button" class="btn btn_default btn_qna_write" onclick="cfnGoToPage(_PAGE_ONETOONE_QNA);">
  276. <span>1:1 문의</span>
  277. </button>
  278. </div>
  279. </th:block>
  280. <!-- //교환불가, 반품불가 -->
  281. <!-- 구매확정 -->
  282. <th:block th:if="${ordDtl.ordReqChgQty == 0}">
  283. <div>
  284. <button type="button" th:id="btn_purchase_confirm" class="btn btn_primary" th:ordNo="${ordDtl.ordNo}" th:ordDtlNo="${ordDtl.ordDtlNo}" onclick="fnDecideOrder(this);">
  285. <span>구매 확정</span>
  286. </button>
  287. </div>
  288. </th:block>
  289. <!-- //구매확정 -->
  290. </div>
  291. </th:block>
  292. <!-- //배송완료 (교환가능, 반품가능) -->
  293. <!-- 구매확정 -->
  294. <th:block th:if="${ordDtl.ordDtlStat} == 'G013_70'">
  295. <div class="goods_btn_wrap btn_group_flex">
  296. <!-- 리뷰사용불가능, 리뷰등록후일때 -->
  297. <th:block th:unless="${ordDtl.reviewableYn} == 'Y' and ${ordDtl.reviewSq} == null">
  298. <div><button type="button" class="btn btn_default btn_qna_write" onclick="cfnGoToPage(_PAGE_ONETOONE_QNA);"><span>1:1 문의</span></button></div>
  299. </th:block>
  300. <!-- //리뷰사용불가능, 리뷰등록후일때 -->
  301. <div><button type="button" class="btn btn_default btn_cart_save" th:attr="ordNo=${ordDtl.ordNo}, ordDtlNo=${ordDtl.ordDtlNo}" onclick="fnCreateCart(this);"><span>쇼핑백 담기</span></button></div>
  302. <!-- 리뷰사용가능, 리뷰등록전일때 -->
  303. <th:block th:if="${ordDtl.reviewableYn} == 'Y' and ${ordDtl.reviewSq} == null">
  304. <div><button type="button" class="btn btn_primary btn_review_write" th:attr="ordNo=${ordDtl.ordNo}, ordDtlNo=${ordDtl.ordDtlNo}, goodsCd=${ordDtl.goodsCd}" onclick="fnCreateReview(this);"><span>리뷰 쓰기</span></button></div>
  305. </th:block>
  306. <!-- //리뷰사용가능, 리뷰등록전일때 -->
  307. </div>
  308. </th:block>
  309. <!-- //구매확정 -->
  310. </th:block>
  311. <!-- //일반주문 -->
  312. <!-- 선물주문 -->
  313. <th:block th:if="${ordDtl.giftPackYn} == 'Y'">
  314. <div class="goods_btn_wrap btn_group_flex">
  315. <!-- 배송지등록전 -->
  316. <th:block th:if="${ordDtl.giftAddrInpYn == 'N'} and ${ordDtl.giftLimitDay} >= 0">
  317. <div><button type="button" class="btn btn_default btn_sms_send" th:attr="ordNo=${ordDtl.ordNo}" onclick="fnReSendSms(this);"><span>SMS 재발송</span></button></div>
  318. </th:block>
  319. <!-- //배송지등록전 -->
  320. <!-- 배송지등록후 (입금대기, 결제완료, 상품준비중, 출고처지정, 배송준비중) -->
  321. <th:block th:if="${ordDtl.ordDtlStat} == 'G013_10' or ${ordDtl.ordDtlStat} == 'G013_20' or ${ordDtl.ordDtlStat} == 'G013_30' or ${ordDtl.ordDtlStat} == 'G013_35'">
  322. <div><button type="button" class="btn btn_default btn_cncl_complete" th:attr="ordNo=${ordDtl.ordNo}, ordDtlNo=${ordDtl.ordDtlNo}, delvFeeCd=${ordDtl.delvFeeCd}, ordCanChgQty=${ordDtl.ordCanChgQty}" onclick="fnCreateChange(this, 'cancel');"><span>주문 취소</span></button></div>
  323. </th:block>
  324. <!-- //배송지등록후 (입금대기, 결제완료, 상품준비중, 출고처지정, 배송준비중) -->
  325. <!-- 배송지등록완료, 결제전취소, 결제후취소 아닐경우 -->
  326. <th:block th:if="${ordDtl.ordDtlStat} == 'G013_50' or ${ordDtl.ordDtlStat} == 'G013_55' or ${ordDtl.ordDtlStat} == 'G013_60' or ${ordDtl.ordDtlStat} == 'G013_70'">
  327. <th:block th:if="${ordDtl.giftAddrInpYn == 'Y'} and ${ordDtl.ordDtlStat} != 'G013_98' and ${ordDtl.ordDtlStat} != 'G013_99'">
  328. <div><button type="button" class="btn btn_default btn_cart_save" th:attr="ordNo=${ordDtl.ordNo}, ordDtlNo=${ordDtl.ordDtlNo}" onclick="fnCreateCart(this);"><span>쇼핑백 담기</span></button></div>
  329. <!-- 리뷰사용가능, 리뷰등록전일때 -->
  330. <th:block th:if="${ordDtl.reviewableYn} == 'Y' and ${ordDtl.reviewSq} == null and ${ordDtl.ordDtlStat} == 'G013_70'">
  331. <div><button type="button" class="btn btn_primary btn_review_write" th:attr="ordNo=${ordDtl.ordNo}, ordDtlNo=${ordDtl.ordDtlNo}, goodsCd=${ordDtl.goodsCd}" onclick="fnCreateReview(this);"><span>리뷰 쓰기</span></button></div>
  332. </th:block>
  333. <!-- //리뷰사용가능, 리뷰등록전일때 -->
  334. </th:block>
  335. </th:block>
  336. <!-- //배송지등록완료, 결제전취소, 결제후취소 아닐경우 -->
  337. </div>
  338. </th:block>
  339. <!-- //선물주문 -->
  340. <!-- //주문상태별 버튼기능 정의 -->
  341. <!-- 주문상태별 문구정보 정의 -->
  342. <th:block th:unless="${ordDtl.giftPackYn} == 'Y'">
  343. <div class="goods_alert">
  344. <!-- 배송중, 배송완료 상태 교환, 반품 가능 상태 체크 -->
  345. <th:block th:if="${ordDtl.ordDtlStat} == 'G013_50' or ${ordDtl.ordDtlStat} == 'G013_55' or ${ordDtl.ordDtlStat} == 'G013_60'">
  346. <!-- 교환불가능, 반품불가능 -->
  347. <th:block th:if="${ordDtl.changeableYn} == 'N' and ${ordDtl.returnableYn} == 'N'">
  348. <p class="cf_txt cf_desc">해당 상품은 교환/반품이 불가능한 상품입니다.<br>문의사항은 1:1 문의를 이용해 주세요.</p>
  349. </th:block>
  350. <!-- //교환불가능, 반품불가능 -->
  351. <!-- 교환불가능 -->
  352. <th:block th:if="${ordDtl.changeableYn} == 'N' and ${ordDtl.returnableYn} == 'Y'">
  353. <p class="cf_txt cf_desc">해당 상품은 교환이 불가능한 상품입니다.<br>문의사항은 1:1 문의를 이용해 주세요.</p>
  354. </th:block>
  355. <!-- //교환불가능 -->
  356. <!-- 반품불가능 -->
  357. <th:block th:if="${ordDtl.changeableYn} == 'Y' and ${ordDtl.returnableYn} == 'N'">
  358. <p class="cf_txt cf_desc">해당 상품은 반품이 불가능한 상품입니다.<br>문의사항은 1:1 문의를 이용해 주세요.</p>
  359. </th:block>
  360. <!-- //반품불가능 -->
  361. </th:block>
  362. <!-- //배송중, 배송완료 상태 -->
  363. </div>
  364. <!-- 주문접수 -->
  365. <th:block th:if="${ordDtl.ordDtlStat} == 'G013_10'">
  366. <div class="goods_txt">
  367. <p class="cf_txt cf_desc">주문 완료 / 결제를 기다리고 있습니다.</p>
  368. <th:block th:if="${ordDtl.delvResDt} != null">
  369. <p class="cf_txt cf_desc" th:text="|예약판매 상품으로 ${ordDtl.delvResDt} 출고 예정입니다.|"></p>
  370. </th:block>
  371. </div>
  372. </th:block>
  373. <!-- //주문접수 -->
  374. <!-- 결제완료, 예약배송상품 -->
  375. <th:block th:if="${ordDtl.ordDtlStat} == 'G013_20'">
  376. <th:block th:if="${ordDtl.delvResDt} != null">
  377. <div class="goods_txt">
  378. <p class="cf_txt cf_desc" th:text="|예약판매 상품으로 ${ordDtl.delvResDt} 출고 예정입니다.|"></p>
  379. </div>
  380. </th:block>
  381. </th:block>
  382. <!-- //결제완료, 예약배송상품 -->
  383. <!-- 상품준비중 -->
  384. <th:block th:if="${ordDtl.ordDtlStat} == 'G013_30' or ${ordDtl.ordDtlStat} == 'G013_35'">
  385. <div class="goods_txt">
  386. <p class="cf_txt cf_desc">배송할 상품을 준비 중입니다.</p>
  387. <th:block th:if="${ordDtl.delvResDt} != null">
  388. <p class="cf_txt cf_desc" th:text="|예약판매 상품으로 ${ordDtl.delvResDt} 출고 예정입니다.|"></p>
  389. </th:block>
  390. </div>
  391. </th:block>
  392. <!-- //상품준비중 -->
  393. <!-- 배송준비중 -->
  394. <th:block th:if="${ordDtl.ordDtlStat} == 'G013_40'">
  395. <div class="goods_txt">
  396. <p class="cf_txt cf_desc">상품 준비가 완료되어 곧 배송될 예정입니다.</p>
  397. <th:block th:if="${ordDtl.delvResDt} != null">
  398. <p class="cf_txt cf_desc" th:text="|예약판매 상품으로 ${ordDtl.delvResDt} 출고 예정입니다.|"></p>
  399. </th:block>
  400. </div>
  401. </th:block>
  402. <!-- //배송준비중 -->
  403. <!-- 배송완료 -->
  404. <th:block th:if="${ordDtl.ordDtlStat} == 'G013_60'">
  405. <div class="goods_txt">
  406. <p class="cf_txt cf_desc" th:text="|${ordDtl.autoDecideLeftDay}일 후 자동으로 구매확정됩니다.|"></p>
  407. </div>
  408. </th:block>
  409. <!-- //배송완료 -->
  410. <!-- 구매확정 -->
  411. <th:block th:if="${ordDtl.ordDtlStat} == 'G013_70'">
  412. <!-- 리뷰사용가능, 리뷰등록전일때 -->
  413. <th:block th:if="${ordDtl.reviewableYn} == 'Y' and ${ordDtl.reviewSq} == null">
  414. <div class="goods_txt">
  415. <p class="cf_txt cf_desc">리뷰를 작성하면 다른 구매자에게 도움이 될 수 있습니다</p>
  416. </div>
  417. </th:block>
  418. <!-- //리뷰사용가능, 리뷰등록전일때 -->
  419. </th:block>
  420. <!-- //구매확정 -->
  421. </th:block>
  422. <!-- 선물배송일때 -->
  423. <th:block th:if="${ordDtl.giftPackYn} == 'Y'">
  424. <!-- 배송지등록전 -->
  425. <th:block th:if="${ordDtl.giftAddrInpYn == 'N'} and ${ordDtl.giftLimitDay} >= 0">
  426. <div class="goods_txt">
  427. <p class="cf_txt cf_desc"><span th:text="|‘${deliveryAddrInfo.recipNm}’|"></span>님 주소를 입력하기 전입니다.</p>
  428. <p class="period">입력기한 <span th:text="${ordDtl.giftLimitDt}"></span></p>
  429. </div>
  430. </th:block>
  431. <!-- //배송지등록전 -->
  432. <!-- 배송지등록완료, 결제전취소, 결제후취소 아닐경우 -->
  433. <th:block th:if="${ordDtl.ordDtlStat} == 'G013_50' or ${ordDtl.ordDtlStat} == 'G013_55' or ${ordDtl.ordDtlStat} == 'G013_60' or ${ordDtl.ordDtlStat} == 'G013_70'">
  434. <th:block th:if="${ordDtl.giftAddrInpYn == 'Y'} and ${ordDtl.ordDtlStat} != 'G013_98' and ${ordDtl.ordDtlStat} != 'G013_99'">
  435. <div class="goods_txt">
  436. <p class="cf_txt cf_desc"><span th:text="|‘${deliveryAddrInfo.recipNm}’|"></span>님께 선물이 발송되었습니다.</p>
  437. </div>
  438. </th:block>
  439. </th:block>
  440. <!-- //배송지등록완료, 결제전취소, 결제후취소 아닐경우 -->
  441. <!-- 선물 취소 -->
  442. <th:block th:if="${ordDtl.ordDtlStat} == 'G013_98' and ${ordDtl.ordDtlStat} == 'G013_99'">
  443. <div class="goods_txt">
  444. <p class="cf_txt cf_desc">주소 입력 기한이 경과되어 선물이 취소 되었습니다.</p>
  445. </div>
  446. </th:block>
  447. <!-- //선물 취소 -->
  448. </th:block>
  449. <!-- //선물배송일때 -->
  450. <!-- //주문상태별 문구정보 정의 -->
  451. <!-- 사은품 영역 -->
  452. <th:block th:if="${#lists.size(order.ordDtlList) == status.count}">
  453. <th:block th:if="${order.freeGiftList != null and #lists.size(order.freeGiftList) > 0}">
  454. <div class="goods_gift">
  455. <div class="gift_wrap">
  456. <div class="title">사은품</div>
  457. <div class="li_gift">
  458. <ul>
  459. <th:block th:each="freeGift , j : ${order.freeGiftList}">
  460. <li>
  461. <span class="gift_name" th:text="${freeGift.goodsNm}"></span>
  462. <th:block th:if="${freeGift.usePoint} > 0">
  463. <span class="deduct_p" th:text="|(-${#numbers.formatInteger(freeGift.usePoint, 1, 'COMMA')}P)|"></span>
  464. </th:block>
  465. </li>
  466. </th:block>
  467. </ul>
  468. </div>
  469. </div>
  470. </div>
  471. </th:block>
  472. </th:block>
  473. <!-- //사은품 영역 -->
  474. </div>
  475. </th:block>
  476. </div>
  477. <input type="hidden" name="accountNo" th:value="${order.oneData.accountNo}"/>
  478. <input type="hidden" name="accountNm" th:value="${order.oneData.accountNm}"/>
  479. <input type="hidden" name="bankCd" th:value="${order.oneData.bankCd}"/>
  480. <input type="hidden" name="delvMemo" th:value="${deliveryAddrInfo.delvMemo}"/>
  481. </th:block>
  482. </div>
  483. <!-- 무통장입금정보 -->
  484. <th:block th:if="${paymentInfo.payMeans == 'G014_20'}">
  485. <div class="inner">
  486. <div class="tbl_wrap">
  487. <div class="tbl_tit">
  488. <h3>무통장 입금 정보</h3>
  489. </div>
  490. <div class="tbl type1">
  491. <table>
  492. <colgroup>
  493. <col width="107">
  494. <col width="*">
  495. </colgroup>
  496. <tr>
  497. <th>은행명/명의자</th>
  498. <td><div><span th:text="${paymentInfo.vaBank}"></span>/<span th:text="|(${paymentInfo.vaNm})|"></span></div></td>
  499. </tr>
  500. <tr>
  501. <th>계좌번호</th>
  502. <td><div><span th:text="${paymentInfo.vaNo}"></span></div></td>
  503. </tr>
  504. <tr>
  505. <th>입금기한</th>
  506. <td><div><span th:text="${paymentInfo.vaDeadlineYmd}"></span>&nbsp;<span th:text="${paymentInfo.vaDeadlineHms}"></span> 까지</div></td>
  507. </tr>
  508. </table>
  509. </div>
  510. </div>
  511. </div>
  512. </th:block>
  513. <!-- //무통장입금정보 -->
  514. <div class="inner wide">
  515. <!-- 폴딩리스트 -->
  516. <div class="ui_row">
  517. <div class="foldGroup customerfold">
  518. <ul>
  519. <li>
  520. <div class="fold_head">
  521. <a href="javascript:void(0)">
  522. <div>
  523. <div class="fold_tit">
  524. <div class="lap2"><span >주문고객</span></div>
  525. <span class="fold_txt" th:text="${orderInfo.ordNm}"></span>
  526. </div>
  527. </div>
  528. </a>
  529. </div>
  530. <div class="fold_cont">
  531. <div class="customer_info">
  532. <dl>
  533. <div>
  534. <dt><span class="sr-only">주문자명</span></dt>
  535. <dd th:text="${orderInfo.ordNm}"></dd>
  536. </div>
  537. <div>
  538. <dt><span class="sr-only">이메일</span></dt>
  539. <dd th:text="${orderInfo.ordEmail}"></dd>
  540. </div>
  541. <div>
  542. <dt><span class="sr-only">휴대폰 번호</span></dt>
  543. <dd th:text="${orderInfo.ordPhnno}"></dd>
  544. </div>
  545. </dl>
  546. </div>
  547. </div>
  548. </li>
  549. </ul>
  550. </div>
  551. </div>
  552. <!-- 폴딩리스트 -->
  553. </div>
  554. <div class="inner wide" th:if="${oneData.giftPackYn == 'N'}">
  555. <!-- 폴딩리스트 -->
  556. <div class="ui_row">
  557. <div class="foldGroup shipfold">
  558. <ul>
  559. <li>
  560. <div class="fold_head">
  561. <a href="javascript:void(0)">
  562. <div>
  563. <div class="fold_tit">
  564. <div class="lap2"><span>배송지 정보</span></div>
  565. <span class="fold_txt recipNm" th:text="${deliveryAddrInfo.recipNm}"></span>
  566. </div>
  567. </div>
  568. </a>
  569. </div>
  570. <div class="fold_cont">
  571. <div class="ship_info ship_edit">
  572. <!-- 배송비정보변경가능 -->
  573. <th:block th:if="${canChgAddr == 'Y'}">
  574. <button type="button" id="btn_adrsChange_pop" class="btn_popup" onclick="fnChangeDeliveryAddr();">
  575. <span>배송지 변경</span>
  576. </button>
  577. </th:block>
  578. <!-- //배송비정보변경가능 -->
  579. <dl>
  580. <div class="company">
  581. <dt><span class="sr-only">배송지명</span></dt>
  582. <dd>
  583. <span th:text="${deliveryAddrInfo.recipNm}" id="recipNm"></span>
  584. <div class="badge_wrap">
  585. <th:block th:if="${deliveryAddrInfo.defaultYn} == 'Y'">
  586. <em class="order_badge defaultYn">기본 배송지</em>
  587. </th:block>
  588. <em class="order_badge order_bullet_badge" style="display:none">총알배송</em>
  589. </div>
  590. </dd>
  591. </div>
  592. <div class="addr">
  593. <dt><span class="sr-only">배송주소</span></dt>
  594. <dd th:text="|${deliveryAddrInfo.recipBaseAddr} ${deliveryAddrInfo.recipDtlAddr}|" id="recipAddr"></dd>
  595. </div>
  596. <div class="phone">
  597. <dt><span class="sr-only">휴대폰 번호</span></dt>
  598. <dd th:text="${deliveryAddrInfo.recipPhnno}" id="recipPhnno"></dd>
  599. </div>
  600. <div class="ship_request">
  601. <dt>배송요청 사항</dt>
  602. <dd th:text="${deliveryAddrInfo.delvMemo}" id="delvMemo"></dd>
  603. </div>
  604. </dl>
  605. </div>
  606. </div>
  607. </li>
  608. </ul>
  609. </div>
  610. </div>
  611. <!-- 폴딩리스트 -->
  612. </div>
  613. <th:block th:if="${oneData.giftPackYn} == 'Y'">
  614. <div class="inner">
  615. <div class="gift_wrap">
  616. <h3>선물 받으실 분</h3>
  617. <div class="gift_con">
  618. <div class="gift_info">
  619. <span th:text="${deliveryAddrInfo.recipNm}"></span> / <span th:text="${deliveryAddrInfo.recipPhnno}"></span>
  620. </div>
  621. <div class="message">
  622. <p class="gift_tit">선물 메세지</p>
  623. <div class="content">
  624. <p th:text="${deliveryAddrInfo.giftMsg}" id="giftMsg"></p>
  625. </div>
  626. </div>
  627. </div>
  628. </div>
  629. </div>
  630. </th:block>
  631. <div class="inner">
  632. <div class="tbl_wrap pay_wrap">
  633. <div class="tbl_tit">
  634. <h3>결제 정보</h3>
  635. <!-- <strong class="pay"><span th:text="${#numbers.formatInteger(orderAmtInfo.ordAmt - orderAmtInfo.cnclRtnAmt + orderAmtInfo.realDelvAmt, 1, 'COMMA')}"></span>원</strong>-->
  636. <strong class="pay"><span th:text="${#numbers.formatInteger(orderAmtInfo.payAmt - orderAmtInfo.npayPntAmt - orderAmtInfo.pgCpnAmt, 1, 'COMMA')}"></span>원</strong>
  637. </div>
  638. <div class="tbl type1">
  639. <table>
  640. <colgroup>
  641. <col width="227">
  642. <col width="*">
  643. </colgroup>
  644. <tr>
  645. <td>
  646. <dl>
  647. <div>
  648. <dt>총주문금액(상품금액+배송비)</dt>
  649. <dd><div><span th:text="${#numbers.formatInteger((orderAmtInfo.ordAmt + orderAmtInfo.cpn1DcAmt) - orderAmtInfo.cnclRtnAmt + orderAmtInfo.realDelvAmt, 1, 'COMMA')}"></span>원</div></dd>
  650. </div>
  651. <th:block th:if="${orderAmtInfo.cpn1DcAmt} > 0">
  652. <div>
  653. <dt>즉시할인</dt>
  654. <dd><div><span th:text="|- ${#numbers.formatInteger(orderAmtInfo.cpn1DcAmt, 1, 'COMMA')}|"></span>원</div></dd>
  655. </div>
  656. </th:block>
  657. <th:block th:if="${orderAmtInfo.tmtb1DcAmt} + ${orderAmtInfo.tmtb2DcAmt} > 0">
  658. <div>
  659. <dt>다다익선 할인</dt>
  660. <dd><div><span th:text="|- ${#numbers.formatInteger(orderAmtInfo.tmtb1DcAmt + orderAmtInfo.tmtb2DcAmt, 1, 'COMMA')}|"></span>원</div></dd>
  661. </div>
  662. </th:block>
  663. <th:block th:if="${orderAmtInfo.cartCpnDcAmt} + ${orderAmtInfo.goodsCpnDcAmt} > 0">
  664. <div>
  665. <dt>쿠폰할인</dt>
  666. <dd><div><span th:text="|- ${#numbers.formatInteger(orderAmtInfo.cartCpnDcAmt + orderAmtInfo.goodsCpnDcAmt, 1, 'COMMA')}|"></span>원</div></dd>
  667. </div>
  668. </th:block>
  669. <th:block th:if="${orderAmtInfo.prePntDcAmt} > 0">
  670. <div>
  671. <dt>선 포인트 사용</dt>
  672. <dd><div><span th:text="|- ${#numbers.formatInteger(orderAmtInfo.prePntDcAmt, 1, 'COMMA')}|"></span>P</div></dd>
  673. </div>
  674. </th:block>
  675. <th:block th:if="${orderAmtInfo.pntDcAmt} > 0">
  676. <div>
  677. <dt>포인트 사용</dt>
  678. <dd><div><span th:text="|- ${#numbers.formatInteger(orderAmtInfo.pntDcAmt, 1, 'COMMA')}|"></span>P</div></dd>
  679. </div>
  680. </th:block>
  681. <th:block th:if="${orderAmtInfo.gfcdUseAmt} > 0">
  682. <div>
  683. <dt>상품권 사용</dt>
  684. <dd><div><span th:text="|- ${#numbers.formatInteger(orderAmtInfo.gfcdUseAmt + orderAmtInfo.delvGfcdUseAmt, 1, 'COMMA')}|"></span>원</div></dd>
  685. </div>
  686. </th:block>
  687. <th:block th:if="${orderAmtInfo.npayPntAmt} > 0">
  688. <div>
  689. <dt>마일리지 사용</dt>
  690. <dd><div><span th:text="|- ${#numbers.formatInteger(orderAmtInfo.npayPntAmt, 1, 'COMMA')}|"></span>원</div></dd>
  691. </div>
  692. </th:block>
  693. <th:block th:if="${orderAmtInfo.pgCpnAmt} > 0">
  694. <div>
  695. <dt>제휴 할인</dt>
  696. <dd><div><span th:text="|- ${#numbers.formatInteger(orderAmtInfo.pgCpnAmt, 1, 'COMMA')}|"></span>원</div></dd>
  697. </div>
  698. </th:block>
  699. <th:block th:if="${orderAmtInfo.savePntAmt} > 0">
  700. <div>
  701. <dt>적립예정 포인트</dt>
  702. <dd><div><span th:text="|${#numbers.formatInteger(orderAmtInfo.savePntAmt, 1, 'COMMA')}|"></span>P</div></dd>
  703. </div>
  704. </th:block>
  705. <div>
  706. <dt>결제수단</dt>
  707. <dd>
  708. <div>
  709. <span th:if="${paymentInfo.pgGb == 'NAVER'}">네이버 페이</span>
  710. <span th:if="${paymentInfo.pgGb == 'KAKAO'}">카카오 페이</span>
  711. <span th:if="${paymentInfo.pgGb == 'PAYCO'}">PAYCO</span>
  712. <span th:if="${paymentInfo.pgGb == 'KCP' and paymentInfo.payMeans == 'G014_10'}">실시간계좌이체</span>
  713. <span th:if="${paymentInfo.pgGb == 'KCP' and paymentInfo.payMeans == 'G014_20'}">무통장입금</span>
  714. <span th:if="${paymentInfo.pgGb == 'KCP' and paymentInfo.payMeans == 'G014_30'}" th:text="|${paymentInfo.cardNm}/${paymentInfo.cardMips}|"></span>
  715. <span th:if="${paymentInfo.pgGb == 'KCP' and paymentInfo.payMeans == 'G014_60'}">휴대폰결제</span>
  716. </div>
  717. </dd>
  718. </div>
  719. </dl>
  720. </td>
  721. </tr>
  722. </table>
  723. <button type="button" class="btn btn_default btn_sm" th:if="${paymentInfo.pgGb == 'KCP' and paymentInfo.payMeans == 'G014_30'}" onclick="fnReceipt('card')"><span>신용카드 전표</span></button>
  724. <button type="button" class="btn btn_default btn_sm" th:if="${paymentInfo.pgGb == 'KCP' and not #strings.isEmpty(paymentInfo.cashAuthNo) and (paymentInfo.payMeans == 'G014_10' or paymentInfo.payMeans == 'G014_20')}" onclick="fnReceipt('cash')"><span>현금 영수증</span></button>
  725. <button type="button" class="btn btn_default btn_sm" th:if="${orderAmtInfo.gfcdUseAmt > 0 and (cashReceiptsInfo == null or #strings.isEmpty(cashReceiptsInfo.authNo))}" th:attr="ordNo=${ordNo}" onclick="fnRequestCashReceipt(this);"><span>상품권 현금 영수증 신청</span></button>
  726. <!--
  727. <button type="button" class="btn btn_default btn_sm" th:if="${orderAmtInfo.gfcdUseAmt > 0 and #strings.isEmpty(paymentInfo.cashAuthNo)}" th:attr="ordNo=${ordNo}" onclick="fnRequestCashReceipt(this);"><span>상품권 현금 영수증 신청</span></button>
  728. -->
  729. </div>
  730. <!-- 210415_ 추가 : 결제정보 안내 텍스트 추가 -->
  731. <p class="txt_ref">NPAY등의 대체결제수단으로 결제 시 해당 결제 플랫폼에서 영수증 확인이 가능합니다.</p>
  732. </div>
  733. <div class="btn_group btn_group_flex">
  734. <div>
  735. <button type="button" class="btn btn_dark" onclick="cfnGoToPage(_PAGE_MYPAGE_ORDER_LIST);"><span>확인</span></button>
  736. </div>
  737. </div>
  738. </div>
  739. </section>
  740. </main>
  741. <script src="/ux/plugins/gaga/gaga.paging.js"></script>
  742. <script th:inline="javascript">
  743. let giftMsg = [[${deliveryAddrInfo.giftMsg}]]; // 선물메세지
  744. let ordNo = [[${ordNo}]];
  745. var isLogin = [[${isLogin}]];
  746. let orderList = [[${orderList}]];
  747. let oneData = [[${oneData}]];
  748. let paymentInfo = [[${paymentInfo}]];
  749. let orderAmtInfo = [[${orderAmtInfo}]];
  750. let deliveryAddrInfo = [[${deliveryAddrInfo}]];
  751. //let kcpReceiptUrl = [[${@environment.getProperty('pg.kcp.receipt.url')}]];
  752. let kcpReceiptUrl = [[${kcpReceiptUrl}]];
  753. let jsonObj = {};
  754. //let delvMemo = [[${deliveryAddrInfo.delvMemo}]];
  755. $(document).ready(function() {
  756. // 타이틀명
  757. $('#htopTitle').text('주문상세');
  758. // 선물메시지
  759. if ($("#giftMsg").html() != null) {
  760. $("#giftMsg").html(giftMsg.replaceAll("\n", "</br>"));
  761. }
  762. // 2021.04.22 배송지정보수정
  763. /*
  764. var delvMemoArr = ["문 앞", "직접 받고 부재 시 문 앞", "경비실", "택배함"];
  765. var tempMemo = true;
  766. $(".ship_request .ship_option .delivery_list ul li").removeClass("selected");
  767. // 배송요청사항설정
  768. for (i=0 ; i<delvMemoArr.length ; i++) {
  769. if (delvMemoArr[i] == delvMemo) {
  770. tempMemo = false;
  771. }
  772. }
  773. // 배송메모설정
  774. $(".ship_request .ship_option .delivery_list ul li").each(function(){
  775. if (delvMemo == $(this).text()) {
  776. $(this).addClass("selected");
  777. }
  778. });
  779. if (tempMemo) {
  780. $(".ship_request .ship_option .delivery_list .select").text("기타사항");
  781. $("input[name=delvMemoText]").attr("disabled", false);
  782. $("input[name=delvMemoText]").val(delvMemo);
  783. $(".ship_request .ship_option .delivery_list ul li").eq(4).addClass("selected");
  784. }
  785. // 콤보박스
  786. var od_delivery_list = new sCombo('.ship_request .ship_option .delivery_list');
  787. // 210405_배송요청 사항 기타사항 selected시 기타사항 input 구현
  788. $(".ship_request .ship_option .delivery_list ul li").on("click", function(){
  789. if ($(".ship_request .ship_option .delivery_list ul .select_etc").hasClass("selected")){
  790. $(".ship_etc").show();
  791. } else {
  792. $(".ship_etc").hide();
  793. }
  794. });
  795. */
  796. // 버튼 클래스 설정
  797. $.each($('.btn_count'), function(idx, item) {
  798. if ($(item).children().length > 3 && !$(item).hasClass('col2')) {
  799. $(item).addClass('col2');
  800. }
  801. });
  802. });
  803. // 2.1 회원 배송지변경 팝업열기
  804. $('#btn_adrsChange_pop').on("click", function(){
  805. // 회원인경우
  806. if (isLogin == true) {
  807. $.ajax( {
  808. type : "POST",
  809. url : '/common/delvAddrChangePop',
  810. data : JSON.stringify(jsonObj),
  811. dataType : 'html',
  812. beforeSend : function(xhr, settings) {
  813. xhr.setRequestHeader("AJAX" , "true");
  814. xhr.setRequestHeader('Accept' , 'application/json');
  815. xhr.setRequestHeader('Content-Type' , 'application/json');
  816. },
  817. success : function(result) {
  818. $("#adrsChangePop .modal-dialog .modal-content").html(result);
  819. $("#adrsChangePop").modal("show");
  820. }
  821. });
  822. }
  823. // 비회원인경우
  824. else {
  825. $.ajax( {
  826. type : "POST",
  827. url : '/common/delvAddrAddPop',
  828. data : JSON.stringify(jsonObj),
  829. dataType : 'html',
  830. beforeSend : function(xhr, settings) {
  831. xhr.setRequestHeader("AJAX" , "true");
  832. xhr.setRequestHeader('Accept' , 'application/json');
  833. xhr.setRequestHeader('Content-Type' , 'application/json');
  834. },
  835. success : function(result) {
  836. $("#adrsAddPop .modal-dialog .modal-content").html(result);
  837. $("#adrsAddPop").modal("show");
  838. }
  839. });
  840. }
  841. });
  842. // 전체취소 버튼 클릭 이벤트
  843. var fnAllCancel = function() {
  844. // 환불계좌 체크
  845. let accountNo = $('#mypageOrderDetailForm input[name=accountNo]').val();
  846. let accountNm = $('#mypageOrderDetailForm input[name=accountNm]').val();
  847. let bankCd = $('#mypageOrderDetailForm input[name=bankCd]').val();
  848. if (paymentInfo.payMeans == 'G014_20' && paymentInfo.payStat == 'G016_30' && (gagajf.isNull(accountNo) || gagajf.isNull(accountNm) || gagajf.isNull(bankCd))) {
  849. let data = {};
  850. data.ordNo = oneData.ordNo;
  851. data.accountNm = oneData.accountNm;
  852. let jsonData = JSON.stringify(data);
  853. $.ajax( {
  854. type : "POST",
  855. url : '/mypage/refund/account/register/popup/form',
  856. data : jsonData,
  857. dataType : 'html',
  858. beforeSend : function(xhr, settings) {
  859. xhr.setRequestHeader("AJAX" , "true");
  860. xhr.setRequestHeader('Accept' , 'application/json');
  861. xhr.setRequestHeader('Content-Type' , 'application/json');
  862. },
  863. success : function(result) {
  864. $("#refundPop .modal-dialog .modal-content").html(result);
  865. $("#refundPop").modal("show");
  866. }
  867. });
  868. return false;
  869. }
  870. mcxDialog.confirm('전체취소 처리하시겠습니까?', {
  871. cancelBtnText: "취소",
  872. sureBtnText: "확인",
  873. sureBtnClick: function(){
  874. // 취소요청 데이터 설정
  875. let url = '/mypage/cancel';
  876. // 주문상세번호 설정
  877. let ordDtlNoArr = [];
  878. $.each($('#mypageOrderDetailForm input[name=ordDtlNoArr]'), function(idx, item) {
  879. ordDtlNoArr.push($(item).val());
  880. });
  881. // 취소 수량 설정
  882. let cnclRtnReqQtyArr = [];
  883. $.each($('#mypageOrderDetailForm input[name=cnclRtnReqQtyArr]'), function(idx, item) {
  884. cnclRtnReqQtyArr.push($(item).val());
  885. });
  886. // 전체 취소 처리
  887. let data = {};
  888. data.ordNo = ordNo;
  889. data.chgReason = 'G686_10';
  890. data.chgReasonNm = '고객변심';
  891. data.accountNo = accountNo;
  892. data.accountNm = accountNm;
  893. data.bankCd = bankCd;
  894. data.isCustomer = true;
  895. data.reqGbn = 'cnclComplete';
  896. data.ordDtlNoArr = ordDtlNoArr;
  897. data.cnclRtnReqQtyArr = cnclRtnReqQtyArr;
  898. let jsonData = JSON.stringify(data);
  899. // 취소 처리 가능 여부 조회
  900. gagajf.ajaxJsonSubmit('/mypage/wms/cancel/available', jsonData, function(result) {
  901. let cancelYn = result.cancelYn;
  902. if (cancelYn == 'Y') {
  903. // 전체취소 처리
  904. gagajf.ajaxJsonSubmit(url, jsonData, function(result) {
  905. cfnGoToPage(_PAGE_MYPAGE_CRE_LIST);
  906. }, true);
  907. } else {
  908. mcxDialog.alert('이미 배송처리 되어 전체취소 처리에 실패 하였습니다.');
  909. }
  910. });
  911. }
  912. });
  913. }
  914. // 배송지 정보 설정
  915. var delvAddrSet = function(delvObj) {
  916. let delvAddrSq = deliveryAddrInfo.delvAddrSq;
  917. let recipNm = delvObj.recipNm;
  918. let recipPhnno = delvObj.recipPhnno;
  919. let recipZipcode = delvObj.recipZipcode;
  920. let recipBaseAddr = delvObj.recipBaseAddr;
  921. let recipDtlAddr = delvObj.recipDtlAddr;
  922. let delvMemo = delvObj.delvMemo;
  923. $('#recipNm').text(recipNm);
  924. $('#recipPhnno').text(recipPhnno);
  925. $('#recipAddr').text(recipBaseAddr + ' ' + recipDtlAddr);
  926. $('#delvMemo').text(delvMemo);
  927. $('#mypageOrderDetailForm .recipNm').text(recipNm);
  928. let url = '/mypage/change/delvery/addr';
  929. let data = {};
  930. data.delvAddrSq = delvAddrSq;
  931. data.recipNm = recipNm;
  932. data.recipPhnno = recipPhnno;
  933. data.recipZipcode = recipZipcode;
  934. data.recipBaseAddr = recipBaseAddr;
  935. data.recipDtlAddr = recipDtlAddr;
  936. data.delvMemo = delvMemo;
  937. let jsonData = JSON.stringify(data);
  938. gagajf.ajaxJsonSubmit(url, jsonData, function(result) {
  939. })
  940. }
  941. // 환불계좌 등록 콜백 처리
  942. var fnRegisterAccountCallback = function(result) {
  943. // 환불계좌 정보 설정
  944. $('#mypageOrderDetailForm input[name=accountNo]').val(result.accountNo);
  945. $('#mypageOrderDetailForm input[name=accountNm]').val(result.accountNm);
  946. $('#mypageOrderDetailForm input[name=bankCd]').val(result.bankCd);
  947. // 전체취소 처리
  948. fnAllCancel();
  949. }
  950. // 상품권 현금영수증 신청 처리
  951. var fnRequestCashReceipt = function(param) {
  952. let url = '/mypage/cash/receipts/request';
  953. let ordNo = $(param).attr('ordNo');
  954. let data = {};
  955. data.ordNo = ordNo;
  956. let jsonData = JSON.stringify(data);
  957. gagajf.ajaxJsonSubmit(url, jsonData, function(result) {
  958. cfnGoToPage(_PAGE_MYPAGE_ORDER_DETAIL + ordNo);
  959. }, true);
  960. }
  961. // 전체구매확정 버튼 클릭 이벤트
  962. var fnAllDecideOrder = function(param) {
  963. let orderDecisionArr = [];
  964. let ordNo = $(param).attr('ordNo');
  965. // 주문상세번호 설정
  966. $.each($('#mypageOrderDetailForm input[name=ordDtlNoArr]'), function(idx, item) {
  967. orderDecisionArr.push($(item).val());
  968. });
  969. if (orderDecisionArr.length == 0) {
  970. mcxDialog.alert('구매확정 가능한 상품이 없습니다.');
  971. return false;
  972. }
  973. mcxDialog.confirm('구매확정 후에는 반품/교환이 불가합니다. 구매확정하시겠습니까?', {
  974. cancelBtnText: "취소",
  975. sureBtnText: "확인",
  976. sureBtnClick: function(){
  977. let data = {};
  978. data.ordNo = ordNo;
  979. data.ordDtlNoArr = orderDecisionArr;
  980. var jsonData = JSON.stringify(data);
  981. gagajf.ajaxJsonSubmit('/mypage/order/decision'
  982. , jsonData
  983. , function() {
  984. if (typeof(fnReloadStatusCount) == 'function') {
  985. fnReloadStatusCount();
  986. } else {
  987. cfnGoToPage(_PAGE_MYPAGE_ORDER_DETAIL + ordNo);
  988. }
  989. });
  990. }
  991. });
  992. }
  993. </script>
  994. </th:block>
  995. </body>
  996. </html>