BOS_주문상세_주문결제내역.sql 44 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067
  1. SELECT ORD_NO
  2. , CASE WHEN PG_GB = 'KCP' THEN FN_GET_CODE_NM('G014',PAY_MEANS)
  3. WHEN PG_GB = 'NAVER' THEN
  4. CASE WHEN PAY_MEANS = 'G014_10' THEN '네이버페이(계좌)'
  5. WHEN PAY_MEANS = 'G014_30' THEN '네이버페이(신용)'
  6. ELSE '네이버페이'
  7. END
  8. WHEN PG_GB = 'NAVER_ORDER' THEN '네이버페이주문형'
  9. WHEN PG_GB = 'KAKAO' THEN
  10. CASE WHEN PAY_MEANS = 'G014_10' THEN '카카오페이(계좌)'
  11. WHEN PAY_MEANS = 'G014_30' THEN '카카오페이(신용)'
  12. ELSE '카카오페이'
  13. END
  14. WHEN PG_GB = 'PAYCO' THEN
  15. CASE WHEN PAY_MEANS = 'G014_10' THEN '페이코(계좌)'
  16. WHEN PAY_MEANS = 'G014_30' THEN '페이코(신용)'
  17. ELSE '페이코'
  18. END
  19. ELSE ''
  20. END AS PAY_MEANS_NM /*결제수단명*/
  21. , CASE WHEN PG_GB = 'KCP' THEN
  22. CASE WHEN PAY_MEANS = 'G014_10' THEN CONCAT(FN_GET_CODE_NM('G940',VA_BANK),' / ',VA_NO)
  23. WHEN PAY_MEANS = 'G014_20' THEN CONCAT(FN_GET_CODE_NM('G940',VA_BANK),' / ',VA_NO,' / ',VA_NM,' / ',IFNULL(DATE_FORMAT(PAY_DT,'%Y-%m-%d %H:%i:%S'),''))
  24. WHEN PAY_MEANS = 'G014_30' THEN CONCAT(CARD_NM,' / ',CASE WHEN CAST(CARD_MIPS AS UNSIGNED) = 0 THEN '일시불' ELSE CONCAT(CAST(CARD_MIPS AS UNSIGNED),'개월') END)
  25. ELSE ''
  26. END
  27. WHEN PG_GB IN ('NAVER','KAKAO','PAYCO') THEN
  28. CASE WHEN PAY_MEANS = 'G014_30' THEN CONCAT(CARD_NM,' / ',CASE WHEN CAST(CARD_MIPS AS UNSIGNED) = 0 THEN '일시불' ELSE CONCAT(CAST(CARD_MIPS AS UNSIGNED),'개월') END)
  29. ELSE ''
  30. END
  31. ELSE ''
  32. END AS PAY_MEANS_DESC /*결제수단설명*/
  33. , PG_CPN_AMT /*PG쿠폰금액*/
  34. , NPAY_PNT_AMT /*포인트금액(마일리지)*/
  35. , CASE WHEN NPAY_PNT_AMT > 0 AND PAY_MEANS IN ('G014_80','G014_81','G014_82','G014_83') THEN FN_GET_CODE_NM('G014',PAY_MEANS)
  36. ELSE ''
  37. END AS NPAY_PNT_DESC /*포인트(마일리지)설명*/
  38. , CASE WHEN CASH_AUTH_NO IS NOT NULL AND CASH_TRADE_NO IS NOT NULL THEN 'Y'
  39. ELSE 'N'
  40. END AS CASH_RECEIP_REQ_YN /*현금영수증신청여부*/
  41. FROM TB_PAYMENT
  42. WHERE ORD_NO = 5791 /**P*/
  43. AND PAY_GB = 'O' /*주문시결제*/
  44. AND PAY_STAT IN ('G016_30','G016_10') /*결제완료,무통장입금관련*/
  45. ;
  46. SELECT *
  47. FROM TB_PAYMENT
  48. WHERE ORD_NO = 5791 /**P*/
  49. ;
  50. WITH ORIGINAL_ORD AS (
  51. SELECT ODH.ORD_NO /*주문번호*/
  52. , ODH.ORD_DTL_NO /*주문상세번호*/
  53. -- , ODH.ORD_AMT /*주문금액*/
  54. , ODH.REAL_ORD_AMT /*실주문금액*/
  55. -- , (ODH.LIST_PRICE + ODH.OPT_ADD_PRICE) * (ODH.ORD_QTY - ODH.CNCL_RTN_QTY) AS ORD_LIST_AMT /*주문정상금액*/
  56. , (ODH.CURR_PRICE + ODH.OPT_ADD_PRICE) * (ODH.ORD_QTY - ODH.CNCL_RTN_QTY) AS ORD_CURR_AMT /*주문상품금액*/
  57. , ODH.CPN1_CPN_SQ /*즉시할인쿠폰번호*/
  58. , ODH.CPN1_DC_AMT /*즉시할인쿠폰금액*/
  59. , ODH.TMTB1_SQ /*다다익선수량할인번호*/
  60. , ODH.TMTB1_DC_AMT /*다다익선수량할인금액*/
  61. , ODH.TMTB2_SQ /*다다익선금액할인번호*/
  62. , ODH.TMTB2_DC_AMT /*다다익선금액할인금액*/
  63. , ODH.GOODS_CPN_SQ /*상품쿠폰번호*/
  64. , ODH.GOODS_CPN_DC_AMT /*상품쿠폰할인금액*/
  65. , ODH.CART_CPN_SQ /*장바구니쿠폰번호*/
  66. , ODH.CART_CPN_DC_AMT /*장바구니쿠폰할인금액*/
  67. , ODH.PRE_PNT_DC_AMT /*선포인트할인금액*/
  68. , ODH.GFCD_USE_AMT /*상품권사용금액*/
  69. , ODH.PNT_DC_AMT /*포인트할인금액*/
  70. , ODH.SAVE_PNT_AMT /*적립포인트금액*/
  71. FROM TB_ORDER_DETAIL_HST ODH
  72. WHERE ODH.ORD_NO = 6005
  73. AND ODH.ORD_EXCH_GB = 'O' /*원주문*/
  74. AND ODH.ORD_DTL_STAT = 'G013_00' /*주문접수*/
  75. )
  76. , ORIGINAL_DELV_FEE AS (
  77. SELECT DF.DELV_FEE_CD /*배송비정책코드*/
  78. , DF.SUPPLY_COMP_CD /*공급업체코드*/
  79. , FN_GET_SUPPLY_COMP_NM(DF.SUPPLY_COMP_CD) AS SUPPLY_COMP_NM /*공급업체명*/
  80. , DF.DELV_FEE /*배송비*/
  81. , DF.DELV_CPN_SQ /*배송비쿠폰번호*/
  82. , DF.DELV_CPN_DC_AMT /*배송비쿠폰할인금액*/
  83. , DF.DELV_GFCD_USE_AMT /*배송비상품권사용금액*/
  84. , DF.REAL_DELV_AMT /*실배송비금액*/
  85. FROM TB_DELIVERY_FEE DF
  86. WHERE DF.ORD_NO = 6005
  87. AND DF.DELV_FEE_GB = 'G018_10' /*원주문배송비*/
  88. )
  89. , ORIGINAL_PAYMENT AS (
  90. SELECT ORD_NO
  91. , CASE WHEN PG_GB = 'KCP' THEN FN_GET_CODE_NM('G014', PAY_MEANS)
  92. WHEN PG_GB = 'NAVER' THEN '네이버페이'
  93. WHEN PG_GB = 'NAVER_ORDER' THEN '네이버페이주문형'
  94. WHEN PG_GB = 'KAKAO' THEN '카카오페이'
  95. ELSE ''
  96. END AS PAY_MEANS_NM /*결제수단명*/
  97. , CASE WHEN PG_GB = 'KCP' THEN
  98. CASE WHEN PAY_MEANS = 'G014_10' THEN CONCAT(FN_GET_CODE_NM('G940',VA_BANK),' / ',VA_NO)
  99. WHEN PAY_MEANS = 'G014_20' THEN CONCAT(FN_GET_CODE_NM('G940',VA_BANK),' / ',VA_NO,' / ',VA_NM,' / ',DATE_FORMAT(VA_DEADLINE,'%Y-%m-%d %H:%i:%S'))
  100. WHEN PAY_MEANS = 'G014_30' THEN CONCAT(CARD_NM,' / ',CASE WHEN CAST(CARD_MIPS AS UNSIGNED) = 0 THEN '일시불' ELSE CONCAT(CAST(CARD_MIPS AS UNSIGNED),'개월') END)
  101. ELSE ''
  102. END
  103. WHEN PG_GB IN ('NAVER','KAKAO') THEN
  104. CASE WHEN PAY_MEANS = 'G014_10' THEN CONCAT(FN_GET_CODE_NM('G940',VA_BANK),' / ',VA_NO)
  105. WHEN PAY_MEANS = 'G014_30' THEN CONCAT(CARD_NM,' / ',CASE WHEN CAST(CARD_MIPS AS UNSIGNED) = 0 THEN '일시불' ELSE CONCAT(CAST(CARD_MIPS AS UNSIGNED),'개월') END)
  106. ELSE ''
  107. END
  108. END AS PAY_MEANS_DESC /*결제수단설명*/
  109. , PG_CPN_AMT /*PG쿠폰금액*/
  110. , NPAY_PNT_AMT /*네이버페이포인트금액(마일리지)*/
  111. , CASE WHEN CASH_AUTH_NO IS NOT NULL AND CASH_TRADE_NO IS NOT NULL THEN 'Y'
  112. ELSE 'N'
  113. END AS CASH_RECEIP_REQ_YN /*현금영수증신청여부*/
  114. FROM TB_PAYMENT
  115. WHERE ORD_NO = 6005
  116. AND PAY_GB = 'O' /*주문시결제*/
  117. AND PAY_STAT IN ('G016_30','G016_10') /*결제완료,무통장입금관련*/
  118. )
  119. SELECT OO.ORD_NO /*주문번호*/
  120. , SUM(OO.ORD_CURR_AMT) AS ORD_CURR_AMT /*주문상품금액*/
  121. , IFNULL((SELECT SUM(REAL_DELV_AMT)
  122. FROM ORIGINAL_DELV_FEE
  123. ),0) AS REAL_DELV_AMT /*실배송비금액*/
  124. , (SELECT CONCAT((SELECT CONCAT('자사 : ',FORMAT(SUM(DF.DELV_FEE),0),'원')
  125. FROM ORIGINAL_DELV_FEE DF
  126. WHERE DF.DELV_FEE_CD = 'WMS' /*자사*/
  127. ),
  128. (SELECT CONCAT(' / 업체 : ',GROUP_CONCAT(DELV_FEE_DESC SEPARATOR ', '))
  129. FROM (
  130. SELECT CONCAT(DF.SUPPLY_COMP_CD,'/',FN_GET_SUPPLY_COMP_NM(DF.SUPPLY_COMP_CD),' ',FORMAT(SUM(DF.DELV_FEE),0),'원') AS DELV_FEE_DESC
  131. FROM ORIGINAL_DELV_FEE DF
  132. WHERE DF.DELV_FEE_CD != 'WMS' /*입점업체*/
  133. GROUP BY DF.SUPPLY_COMP_CD
  134. ) Z
  135. )) AS DELV_FEE_DESC
  136. FROM DUAL
  137. ) AS DELV_FEE_DESC /*배송비설명*/
  138. , (SELECT GROUP_CONCAT(DISTINCT CONCAT('쿠폰번호 : ',C.CPN_ID,' / ',C.CPN_NM,' ',FORMAT(DF.DELV_CPN_DC_AMT,0),'원') SEPARATOR ', ') AS DELV_FEE_CPN_DESC
  139. FROM ORIGINAL_DELV_FEE DF
  140. INNER JOIN TB_CUST_COUPON CC ON DF.DELV_CPN_SQ = CC.CUST_CPN_SQ
  141. INNER JOIN TB_COUPON C ON CC.CPN_ID = C.CPN_ID
  142. WHERE DF.DELV_CPN_SQ > 0
  143. ) AS DELV_FEE_CPN_DESC /*배송비쿠폰설명*/
  144. , SUM(OO.CPN1_DC_AMT +
  145. OO.TMTB1_DC_AMT + OO.TMTB2_DC_AMT +
  146. OO.GOODS_CPN_DC_AMT + OO.CART_CPN_DC_AMT +
  147. OO.PRE_PNT_DC_AMT) AS TOT_DC_AMT /*총할인금액*/
  148. , SUM(OO.CPN1_DC_AMT) AS CPN1_DC_AMT /*즉시할인쿠폰금액*/
  149. , (SELECT GROUP_CONCAT(DISTINCT CONCAT('쿠폰번호 : ',CPN_ID,' / ',CPN_NM) SEPARATOR '!@!') AS CPN_DESC
  150. FROM TB_COUPON
  151. WHERE CPN_ID IN (SELECT DISTINCT CPN1_CPN_SQ FROM ORIGINAL_ORD)
  152. ) AS CPN1_CPN_DC_DESC /*즉시할인쿠폰설명*/
  153. , SUM(OO.TMTB1_DC_AMT + OO.TMTB2_DC_AMT) AS TMTB_DC_AMT /*다다익선인금액*/
  154. , SUM(OO.TMTB1_DC_AMT) AS TMTB1_DC_AMT /*다다익선수량할인금액*/
  155. , (SELECT GROUP_CONCAT(DISTINCT CONCAT('프로모션번호 : ',TMTB_SQ,' / ',TMTB_NM) SEPARATOR '!@!') AS CPN_DESC
  156. FROM TB_TMTB
  157. WHERE TMTB_SQ IN (SELECT DISTINCT TMTB1_SQ FROM ORIGINAL_ORD)
  158. ) AS TMTB1_DESC /*다다익선수량할인설명*/
  159. , SUM(OO.TMTB2_DC_AMT) AS TMTB2_DC_AMT /*다다익선금액할인금액*/
  160. , (SELECT GROUP_CONCAT(DISTINCT CONCAT('프로모션번호 : ',TMTB_SQ,' / ',TMTB_NM) SEPARATOR '!@!') AS CPN_DESC
  161. FROM TB_TMTB
  162. WHERE TMTB_SQ IN (SELECT DISTINCT TMTB2_SQ FROM ORIGINAL_ORD)
  163. ) AS TMTB2_DESC /*다다익선금액할인설명*/
  164. , SUM(OO.GOODS_CPN_DC_AMT) AS GOODS_CPN_DC_AMT /*상품쿠폰할인금액*/
  165. , (SELECT GROUP_CONCAT(DISTINCT CONCAT('쿠폰번호 : ',C.CPN_ID,' / ',C.CPN_NM) SEPARATOR '!@!') AS CPN_DESC
  166. FROM TB_CUST_COUPON CC
  167. INNER JOIN TB_COUPON C ON CC.CPN_ID = C.CPN_ID
  168. WHERE CC.CUST_CPN_SQ IN (SELECT DISTINCT GOODS_CPN_SQ FROM ORIGINAL_ORD)
  169. ) AS GOODS_CPN_DC_DESC /*상품쿠폰할인설명*/
  170. , SUM(OO.CART_CPN_DC_AMT) AS CART_CPN_DC_AMT /*장바구니쿠폰할인금액*/
  171. , (SELECT CONCAT('쿠폰번호 : ',C.CPN_ID,' / ',C.CPN_NM,
  172. ' / 구매금액 ',
  173. CASE WHEN C.BUY_LIMIT_AMT = 0 THEN '제한없음'
  174. ELSE CONCAT(FORMAT(C.BUY_LIMIT_AMT,0),'원 이상')
  175. END,
  176. ' / ',
  177. FORMAT(C.DC_PVAL,0),
  178. CASE WHEN C.DC_WAY = 'G240_10' THEN '원'
  179. ELSE '%'
  180. END,
  181. ' 할인 / 최대할인 ',
  182. CASE WHEN C.MAX_DC_AMT = 0 THEN '제한없음'
  183. ELSE CONCAT(FORMAT(C.MAX_DC_AMT,0),'원')
  184. END
  185. ) AS CPN_DESC
  186. FROM TB_CUST_COUPON CC
  187. INNER JOIN TB_COUPON C ON CC.CPN_ID = C.CPN_ID
  188. WHERE CC.CUST_CPN_SQ = (SELECT DISTINCT CART_CPN_SQ FROM ORIGINAL_ORD)
  189. ) AS CART_CPN_DC_DESC /*장바구니쿠폰할인설명*/
  190. , SUM(OO.PRE_PNT_DC_AMT) AS PRE_PNT_DC_AMT /*선포인트할인금액*/
  191. , SUM(OO.ORD_CURR_AMT)
  192. + IFNULL((SELECT SUM(REAL_DELV_AMT)
  193. FROM ORIGINAL_DELV_FEE
  194. ),0)
  195. - SUM(OO.CPN1_DC_AMT +
  196. OO.TMTB1_DC_AMT + OO.TMTB2_DC_AMT +
  197. OO.GOODS_CPN_DC_AMT + OO.CART_CPN_DC_AMT +
  198. OO.PRE_PNT_DC_AMT) AS TOT_PAY_AMT /*총결제금액*/
  199. , SUM(OO.REAL_ORD_AMT)
  200. + IFNULL((SELECT SUM(REAL_DELV_AMT)
  201. FROM ORIGINAL_DELV_FEE
  202. ),0) AS REAL_ORD_AMT /*실결제금액*/
  203. , MAX(P.PAY_MEANS_NM) AS PAY_MEANS_NM /*결제수단명*/
  204. , MAX(P.PAY_MEANS_DESC) AS PAY_MEANS_DESC /*결제수단설명*/
  205. , SUM(OO.GFCD_USE_AMT) AS GFCD_USE_AMT /*상품권사용금액*/
  206. , (SELECT GROUP_CONCAT(GFCD_USE_DESC SEPARATOR '!@!') AS GFCD_USE_DESC
  207. FROM (
  208. SELECT CONCAT(FORMAT(SUM(CGH.GFCD_AMT),0),'원 / ',CG.GFCD_NO) AS GFCD_USE_DESC
  209. FROM TB_CUST_GIFTCARD_HST CGH
  210. INNER JOIN TB_CUST_GIFTCARD CG ON CGH.CUST_GFCD_SQ = CG.CUST_GFCD_SQ
  211. WHERE CGH.ORD_NO = OO.ORD_NO
  212. AND CGH.OCCUR_GB = 'G074_12' /*상품권사용*/
  213. GROUP BY CG.GFCD_NO
  214. ) Z
  215. ) AS GFCD_USE_DESC /*상품권사용설명*/
  216. , SUM(OO.PNT_DC_AMT) AS PNT_DC_AMT /*포인트할인금액*/
  217. , MAX(P.PG_CPN_AMT) AS PG_CPN_AMT /*PG쿠폰금액(KCP쿠폰금액)*/
  218. , MAX(P.NPAY_PNT_AMT) AS NPAY_PNT_AMT /*네이버페이포인트금액(마일리지)*/
  219. , SUM(OO.SAVE_PNT_AMT) AS SAVE_PNT_AMT /*적립포인트금액*/
  220. , MAX(P.CASH_RECEIP_REQ_YN) AS CASH_RECEIP_REQ_YN /*현금영수증신청여부*/
  221. FROM ORIGINAL_ORD OO
  222. INNER JOIN TB_ORDER O ON OO.ORD_NO = O.ORD_NO
  223. INNER JOIN ORIGINAL_PAYMENT P ON OO.ORD_NO = P.ORD_NO
  224. GROUP BY OO.ORD_NO
  225. ;
  226. -- 상품쿠폰내역 목록 가져오기
  227. SELECT GROUP_CONCAT(DISTINCT CONCAT('쿠폰번호 : ',C.CPN_ID,' / ',C.CPN_NM) SEPARATOR '!@!') AS CPN_DESC
  228. FROM TB_CUST_COUPON CC
  229. INNER JOIN TB_COUPON C ON CC.CPN_ID = C.CPN_ID
  230. WHERE CC.CUST_CPN_SQ IN (3465,3575,3298,3456,10,3581)
  231. ;
  232. -- 장바구니쿠폰내역 가져오기
  233. SELECT CONCAT('쿠폰번호 : ',C.CPN_ID,' / ',C.CPN_NM,
  234. ' / 구매금액 ',
  235. CASE WHEN C.BUY_LIMIT_AMT = 0 THEN '제한없음'
  236. ELSE CONCAT(FORMAT(C.BUY_LIMIT_AMT,0),'원 이상')
  237. END,
  238. ' / ',
  239. FORMAT(C.DC_PVAL,0),
  240. CASE WHEN C.DC_WAY = 'G240_10' THEN '원'
  241. ELSE '%'
  242. END,
  243. ' 할인 / 최대할인 ',
  244. CASE WHEN C.MAX_DC_AMT = 0 THEN '제한없음'
  245. ELSE CONCAT(FORMAT(C.MAX_DC_AMT,0),'원')
  246. END
  247. )
  248. FROM TB_CUST_COUPON CC
  249. INNER JOIN TB_COUPON C ON CC.CPN_ID = C.CPN_ID
  250. WHERE CC.CUST_CPN_SQ IN (3473)
  251. ;
  252. -- 상품권사용내역 목록
  253. SELECT GROUP_CONCAT(GFCD_USE_DESC SEPARATOR '!@!') AS GFCD_USE_DESC
  254. FROM (
  255. SELECT CONCAT(FORMAT(SUM(CGH.GFCD_AMT),0),'원 / ',CG.GFCD_NO) AS GFCD_USE_DESC
  256. FROM TB_CUST_GIFTCARD_HST CGH
  257. , TB_CUST_GIFTCARD CG
  258. WHERE CGH.CUST_GFCD_SQ = CG.CUST_GFCD_SQ
  259. AND CGH.ORD_NO = 6005
  260. AND CGH.OCCUR_GB = 'G074_12' /*상품권사용*/
  261. GROUP BY CG.GFCD_NO
  262. ) Z
  263. ;
  264. SELECT DF.DELV_FEE_CD /*배송정책코드*/
  265. , DF.DELV_FEE /*배송비*/
  266. , DF.DELV_CPN_SQ /*배송비쿠폰번호*/
  267. , DF.DELV_CPN_DC_AMT /*배송비쿠폰할인금액*/
  268. , DF.DELV_GFCD_USE_AMT /*배송비상품권사용금액*/
  269. , DF.SUPPLY_COMP_CD /*공급업체코드*/
  270. FROM TB_DELIVERY_FEE DF
  271. WHERE DF.ORD_NO = 6005 /**P*/
  272. AND DF.DELV_FEE_GB = 'G018_10' /*원주문배송비*/
  273. -- GROUP BY DF.DELV_FEE_CD
  274. ;
  275. WITH ORIGINAL_DELV_FEE AS (
  276. SELECT DF.DELV_FEE_CD /*배송비정책코드*/
  277. , DF.SUPPLY_COMP_CD /*공급업체코드*/
  278. , FN_GET_SUPPLY_COMP_NM(DF.SUPPLY_COMP_CD) AS SUPPLY_COMP_NM /*공급업체명*/
  279. , DF.DELV_FEE /*배송비*/
  280. , DF.DELV_CPN_SQ /*배송비쿠폰번호*/
  281. , DF.DELV_CPN_DC_AMT /*배송비쿠폰할인금액*/
  282. , DF.DELV_GFCD_USE_AMT /*배송비상품권사용금액*/
  283. FROM TB_DELIVERY_FEE DF
  284. WHERE DF.ORD_NO = 6005
  285. AND DF.DELV_FEE_GB = 'G018_10' /*원주문배송비*/
  286. )
  287. SELECT CONCAT((SELECT CONCAT('자사 : ',FORMAT(SUM(DF.DELV_FEE),0),'원') AS DELV_FEE_DESC
  288. FROM ORIGINAL_DELV_FEE DF
  289. WHERE DF.DELV_FEE_CD = 'WMS' /*자사*/
  290. ),
  291. (SELECT CONCAT(' / 업체 : ',GROUP_CONCAT(DELV_FEE_DESC SEPARATOR ', ')) AS DELV_FEE_DESC
  292. FROM (
  293. SELECT CONCAT(DF.SUPPLY_COMP_CD,'/',FN_GET_SUPPLY_COMP_NM(DF.SUPPLY_COMP_CD),' ',FORMAT(SUM(DF.DELV_FEE),0),'원') AS DELV_FEE_DESC
  294. FROM ORIGINAL_DELV_FEE DF
  295. WHERE DF.DELV_FEE_CD != 'WMS' /*입점업체*/
  296. GROUP BY DF.SUPPLY_COMP_CD
  297. ) Z
  298. )) AS DELV_FEE_DESC
  299. FROM DUAL
  300. ;
  301. SELECT CONCAT('업체 : ',GROUP_CONCAT(CONCAT(DF.SUPPLY_COMP_CD,'/',FN_GET_SUPPLY_COMP_NM(DF.SUPPLY_COMP_CD),' ',FORMAT(DF.DELV_FEE,0),'원') SEPARATOR ', ')) AS DELV_FEE_DESC
  302. -- , DF.DELV_CPN_SQ /*배송비쿠폰번호*/
  303. -- , DF.DELV_CPN_DC_AMT /*배송비쿠폰할인금액*/
  304. -- , DF.DELV_GFCD_USE_AMT /*배송비상품권사용금액*/
  305. FROM ORIGINAL_DELV_FEE DF
  306. WHERE DF.DELV_FEE_CD != 'WMS' /*입점업체*/
  307. ;
  308. -- 배송비쿠폰내역 가져오기
  309. SELECT GROUP_CONCAT(DISTINCT CONCAT('쿠폰번호 : ',C.CPN_ID,' / ',C.CPN_NM) SEPARATOR ', ') AS CPN_DESC
  310. FROM TB_CUST_COUPON CC
  311. INNER JOIN TB_COUPON C ON CC.CPN_ID = C.CPN_ID
  312. WHERE CC.CUST_CPN_SQ IN (13)
  313. ;
  314. SELECT *
  315. FROM TB_CUST_GIFTCARD_HST CGH
  316. WHERE CGH.ORD_NO = 6005
  317. AND CGH.OCCUR_GB = 'G074_12' /*상품권사용*/
  318. ;
  319. SELECT *
  320. FROM TB_COMMON_CODE
  321. WHERE CD_GB = 'G720'
  322. ;
  323. -- G720_10 판매-결제완료
  324. -- G720_20 판매-배송중
  325. -- G720_30 환입-취소완료
  326. -- G720_40 환입-품절취소
  327. -- G720_50 환입_반품완료
  328. -- G720_60 환입-교환완료
  329. -- G014_10 실시간계좌이체(KCP)
  330. -- G014_20 무통장입금(KCP)
  331. -- G014_30 신용카드(KCP)
  332. -- G014_40 포인트
  333. -- G014_50 쿠폰
  334. -- G014_60 휴대전화(KCP)
  335. -- G014_70 상품권
  336. -- G014_80 네이버포인트
  337. -- G014_81 카카오포인트
  338. -- G014_82 PAYCO포인트
  339. -- G014_83 카카오머니
  340. -- G014_90 외부몰입금
  341. SELECT *
  342. FROM TB_PAYMENT
  343. WHERE 1 = 1
  344. AND PG_GB = 'KCP'
  345. AND PAY_MEANS = 'G014_20'
  346. AND PAY_GB = 'O'
  347. AND PAY_STAT IN ('G016_30','G016_10') /*결제완료,무통장입금관련*/
  348. ;
  349. SELECT *
  350. FROM TB_ORDER
  351. WHERE ORD_NO = 3357
  352. ;
  353. -- 5791 2021-09-03 20:10:11
  354. /* order.getOrderDetailList */
  355. SELECT A.ORD_NO
  356. , A.ORD_EXCH_GB
  357. , A.EXCH_GB_NM
  358. , A.ORD_DTL_NO
  359. , A.GOODS_CD
  360. , A.GOODS_NM
  361. , A.GOODS_TYPE
  362. , A.GOODS_TYPE_NM
  363. , A.SYS_IMG_NM
  364. , A.BRAND_ENM
  365. , GROUP_CONCAT(A.ITEM_NM ORDER BY A.ORD_DTL_ITEM_SQ SEPARATOR '!@!') AS ITEM_NM
  366. , GROUP_CONCAT(A.ITEM_CD ORDER BY A.ORD_DTL_ITEM_SQ) AS ITEM_CD
  367. , GROUP_CONCAT(A.OPT_CD ORDER BY A.ORD_DTL_ITEM_SQ) AS OPT_CD
  368. , GROUP_CONCAT(A.OPT_CD1 ORDER BY A.ORD_DTL_ITEM_SQ) AS OPT_CD1
  369. , GROUP_CONCAT(A.OPT_CD2 ORDER BY A.ORD_DTL_ITEM_SQ) AS OPT_CD2
  370. , GROUP_CONCAT(A.ITEM_QTY ORDER BY A.ORD_DTL_ITEM_SQ) AS ITEM_QTYR
  371. , GROUP_CONCAT(A.COLOR_NM ORDER BY A.ORD_DTL_ITEM_SQ) AS COLOR_NM
  372. , A.LIST_PRICE
  373. , A.CURR_PRICE
  374. , A.ORD_QTY
  375. , A.CNCL_RTN_QTY
  376. , A.ORD_REQ_CHG_QTY
  377. , A.CANCEL_REQUEST_QTY
  378. , A.EXCHANGE_REQUEST_QTY
  379. , A.RETURN_REQUEST_QTY
  380. , SUM(A.OPT_ADD_PRICE) AS OPT_ADD_PRICE
  381. , (SELECT CONCAT('쿠폰번호 : ',CPN_ID,' / ',CPN_NM)
  382. FROM TB_COUPON
  383. WHERE CPN_ID = A.CPN1_CPN_SQ) AS CPN1_CPN_DC_DESC
  384. , A.CPN1_DC_AMT
  385. , (SELECT CONCAT('쿠폰번호 : ',C.CPN_ID,' / ',C.CPN_NM)
  386. FROM TB_CUST_COUPON CC
  387. , TB_COUPON C
  388. WHERE CC.CPN_ID = C.CPN_ID
  389. AND CC.CUST_NO = A.CUST_NO
  390. AND CC.CUST_CPN_SQ = A.GOODS_CPN_SQ) AS GOODS_CPN_DC_DESC
  391. , A.GOODS_CPN_DC_AMT
  392. , (SELECT CONCAT('쿠폰번호 : ',C.CPN_ID,' / ',C.CPN_NM,
  393. ' / 구매금액 ',
  394. CASE WHEN C.BUY_LIMIT_AMT = 0 THEN '제한없음'
  395. ELSE CONCAT(FORMAT(C.BUY_LIMIT_AMT,0),'원 이상')
  396. END,
  397. ' / ',
  398. FORMAT(C.DC_PVAL,0),
  399. CASE WHEN C.DC_WAY = 'G240_10' THEN '원'
  400. ELSE '%'
  401. END,
  402. ' 할인 / 최대할인 ',
  403. CASE WHEN C.MAX_DC_AMT = 0 THEN '제한없음'
  404. ELSE CONCAT(FORMAT(C.MAX_DC_AMT,0),'원')
  405. END
  406. )
  407. FROM TB_CUST_COUPON CC
  408. , TB_COUPON C
  409. WHERE CC.CPN_ID = C.CPN_ID
  410. AND CC.CUST_NO = A.CUST_NO
  411. AND CC.CUST_CPN_SQ = A.CART_CPN_SQ) AS CART_CPN_DC_DESC
  412. , A.CART_CPN_DC_AMT
  413. , (SELECT CONCAT('프로모션번호 : ',TMTB_SQ,' / ',TMTB_NM) FROM TB_TMTB WHERE TMTB_SQ = A.TMTB1_SQ) AS TMTB1_DESC
  414. , A.TMTB1_DC_AMT
  415. , (SELECT CONCAT('프로모션번호 : ',TMTB_SQ,' / ',TMTB_NM) FROM TB_TMTB WHERE TMTB_SQ = A.TMTB2_SQ) AS TMTB2_DESC
  416. , A.TMTB2_DC_AMT
  417. , A.PNT_DC_AMT
  418. , A.PRE_PNT_DC_AMT
  419. , A.SAVE_PNT_AMT
  420. , A.GFCD_USE_AMT
  421. , (SELECT GROUP_CONCAT(GFCD_USE_DESC SEPARATOR '!@!') AS GFCD_USE_DESC
  422. FROM (
  423. SELECT CONCAT(FORMAT(SUM(CGH.GFCD_AMT),0),'원 / ',CG.GFCD_NO) AS GFCD_USE_DESC
  424. FROM TB_CUST_GIFTCARD_HST CGH
  425. , TB_CUST_GIFTCARD CG
  426. WHERE CGH.CUST_GFCD_SQ = CG.CUST_GFCD_SQ
  427. AND CGH.ORD_NO = A.ORD_NO
  428. GROUP BY CG.GFCD_NO
  429. ) Z
  430. ) AS GFCD_USE_DESC
  431. , A.ORD_AMT
  432. , A.REAL_ORD_AMT
  433. , A.CNCL_RTN_AMT
  434. , A.ORD_DTL_STAT
  435. , A.ORD_DTL_STAT_NM
  436. , A.SOLDOUT_YN
  437. , A.SOLDOUT_REG_NO
  438. , A.SOLDOUT_MEMO
  439. , A.INVOICE_NO
  440. , A.DELV_LOC_CD
  441. , A.DELV_ADDR_SQ
  442. , A.RETURNABLE_YN
  443. , A.CHANGEABLE_YN
  444. , A.DELV_FEE_CD
  445. , A.DELV_FEE_CD_GRP
  446. , A.BRAND_GROUP_NM
  447. , A.SHIP_COMP_CD
  448. , A.SHIP_COMP_NM
  449. , A.DELV_LOC_NM
  450. , A.PG_GB
  451. , A.SUPPLY_COMP_NM
  452. , CASE WHEN IFNULL((SELECT COUNT(*)
  453. FROM TB_GIFTCARD_RECEIPT
  454. WHERE ORD_NO = A.ORD_NO
  455. AND TRADE_NO IS NOT NULL
  456. AND AUTH_NO IS NOT NULL
  457. AND AMT > 0
  458. ),0) = 0 THEN 'N' ELSE 'Y' END AS GCCR_REQ_YN /*상품권현금영수증신청여부*/
  459. FROM (
  460. SELECT O.CUST_NO
  461. , OD.ORD_NO
  462. , OD.ORD_EXCH_GB
  463. , CASE WHEN OD.ORD_EXCH_GB = 'O' THEN '주문' ELSE '교환' END AS EXCH_GB_NM
  464. , OD.ORD_DTL_NO
  465. , ODI.ORD_DTL_ITEM_SQ
  466. , G1.GOODS_CD
  467. , FN_GET_GOODS_NM(G1.GOODS_NM, G1.GOODS_GB, G1.FOREIGN_BUY_YN, G1.PARALLEL_IMPORT_YN, G1.ORDER_MADE_YN) AS GOODS_NM
  468. , G1.GOODS_TYPE
  469. , FN_GET_CODE_NM('G056', G1.GOODS_TYPE) AS GOODS_TYPE_NM
  470. , CASE WHEN G1.GOODS_TYPE != 'G056_S' AND G1.SELF_GOODS_YN = 'Y' THEN (SELECT MAX(SYS_IMG_NM) FROM TB_GOODS_IMG WHERE GOODS_CD = G1.GOODS_CD AND COLOR_CD = ODI.OPT_CD1 AND DEFAULT_IMG_YN = 'Y')
  471. ELSE (SELECT MAX(SYS_IMG_NM) FROM TB_GOODS_IMG WHERE GOODS_CD = G1.GOODS_CD AND COLOR_CD = IFNULL(G1.MAIN_COLOR_CD,'XX') AND DEFAULT_IMG_YN = 'Y')
  472. END AS SYS_IMG_NM
  473. , G1.BRAND_CD
  474. , (SELECT Z.BRAND_ENM
  475. FROM TB_BRAND Z
  476. WHERE Z.BRAND_CD = G1.BRAND_CD) AS BRAND_ENM
  477. , G2.GOODS_CD AS ITEM_CD
  478. , G2.GOODS_NM AS ITEM_NM
  479. , IFNULL((SELECT COLOR_KNM
  480. FROM TB_COLOR
  481. WHERE COLOR_CD = IFNULL(NULLIF(ODI.OPT_CD1,''), G1.MAIN_COLOR_CD)
  482. AND USE_YN = 'Y'), ODI.OPT_CD1) AS COLOR_NM
  483. , ODI.OPT_CD
  484. , ODI.OPT_CD1
  485. , ODI.OPT_CD2
  486. , ODI.ITEM_QTY
  487. , ODI.ITEM_PRICE
  488. , OD.LIST_PRICE
  489. , OD.CURR_PRICE
  490. , OD.ORD_QTY
  491. , OD.CNCL_RTN_QTY
  492. , CASE WHEN OCD.ORD_REQ_CHG_QTY IS NULL THEN 0
  493. ELSE OCD.ORD_REQ_CHG_QTY
  494. END AS ORD_REQ_CHG_QTY
  495. , CASE WHEN OCD.CANCEL_REQUEST_QTY IS NULL THEN 0
  496. ELSE OCD.CANCEL_REQUEST_QTY
  497. END AS CANCEL_REQUEST_QTY
  498. , CASE WHEN OCD.EXCHANGE_REQUEST_QTY IS NULL THEN 0
  499. ELSE OCD.EXCHANGE_REQUEST_QTY
  500. END AS EXCHANGE_REQUEST_QTY
  501. , CASE WHEN OCD.RETURN_REQUEST_QTY IS NULL THEN 0
  502. ELSE OCD.RETURN_REQUEST_QTY
  503. END AS RETURN_REQUEST_QTY
  504. , ODI.OPT_ADD_PRICE
  505. , OD.CPN1_CPN_SQ
  506. , OD.CPN1_DC_AMT
  507. , OD.GOODS_CPN_SQ
  508. , OD.GOODS_CPN_DC_AMT
  509. , OD.CART_CPN_SQ
  510. , OD.CART_CPN_DC_AMT
  511. , OD.TMTB1_SQ
  512. , OD.TMTB1_DC_AMT
  513. , OD.TMTB2_SQ
  514. , OD.TMTB2_DC_AMT
  515. , OD.PNT_DC_AMT
  516. , OD.PRE_PNT_DC_AMT
  517. , OD.SAVE_PNT_AMT
  518. , OD.GFCD_USE_AMT
  519. , OD.ORD_AMT
  520. , OD.REAL_ORD_AMT
  521. , OD.CNCL_RTN_AMT
  522. , OD.ORD_DTL_STAT
  523. , FN_GET_CODE_NM('G013', OD.ORD_DTL_STAT) AS ORD_DTL_STAT_NM
  524. , OD.SOLDOUT_YN
  525. , OD.SOLDOUT_REG_NO
  526. , OD.SOLDOUT_MEMO
  527. , OD.INVOICE_NO
  528. , OD.DELV_LOC_CD
  529. , OD.DELV_ADDR_SQ
  530. , OD.RETURNABLE_YN
  531. , OD.CHANGEABLE_YN
  532. , OD.DELV_FEE_CD
  533. , CASE WHEN G1.SELF_GOODS_YN = 'Y' THEN 'WMS'
  534. ELSE OD.DELV_FEE_CD
  535. END AS DELV_FEE_CD_GRP
  536. , CASE WHEN BG.DISP_NM_LANG = 'EN' THEN BG.BRAND_GROUP_ENM
  537. ELSE BG.BRAND_GROUP_KNM
  538. END AS BRAND_GROUP_NM
  539. , OD.SHIP_COMP_CD
  540. , (SELECT SHIP_COMP_NM
  541. FROM TB_SHIP_COMPANY SC
  542. WHERE SC.SHIP_COMP_CD = OD.SHIP_COMP_CD) AS SHIP_COMP_NM
  543. , (SELECT DL.DELV_LOC_NM
  544. FROM TB_DELIVERY_LOC DL
  545. WHERE DL.DELV_LOC_CD = OD.DELV_LOC_CD
  546. AND DL.USE_YN = 'Y'
  547. LIMIT 1) AS DELV_LOC_NM
  548. , P.PG_GB
  549. , (SELECT Z.SUPPLY_COMP_NM
  550. FROM TB_SUPPLY_COMPANY Z
  551. WHERE Z.SUPPLY_COMP_CD = OD.SUPPLY_COMP_CD) AS SUPPLY_COMP_NM
  552. FROM TB_ORDER O
  553. INNER JOIN TB_ORDER_DETAIL OD
  554. ON O.ORD_NO = OD.ORD_NO
  555. INNER JOIN TB_GOODS G1
  556. ON OD.GOODS_CD = G1.GOODS_CD
  557. INNER JOIN TB_BRAND B
  558. ON B.BRAND_CD = G1.BRAND_CD
  559. INNER JOIN TB_BRAND_GROUP BG
  560. ON B.BRAND_GROUP_NO = BG.BRAND_GROUP_NO
  561. AND BG.USE_YN = 'Y'
  562. INNER JOIN TB_ORDER_DETAIL_ITEM ODI
  563. ON OD.ORD_NO = ODI.ORD_NO
  564. AND OD.ORD_DTL_NO = ODI.ORD_DTL_NO
  565. INNER JOIN TB_GOODS G2
  566. ON ODI.ITEM_CD = G2.GOODS_CD
  567. INNER JOIN TB_PAYMENT P
  568. ON O.ORD_NO = P.ORD_NO
  569. AND P.PAY_GB = 'O'
  570. AND P.PAY_STAT IN ('G016_10', 'G016_30')
  571. INNER JOIN TB_DELIVERY_ADDR DA
  572. ON OD.DELV_ADDR_SQ = DA.DELV_ADDR_SQ
  573. LEFT OUTER JOIN (SELECT OD.ORD_DTL_NO
  574. , SUM(CASE OC.WD_BF_SEND_YN
  575. WHEN 'Y' THEN 0
  576. ELSE OCD.CHG_QTY
  577. END) AS ORD_REQ_CHG_QTY
  578. , SUM(CASE OCD.CHG_STAT
  579. WHEN 'G685_10' THEN OCD.CHG_QTY
  580. WHEN 'G685_11' THEN OCD.CHG_QTY
  581. ELSE 0
  582. END) AS CANCEL_REQUEST_QTY
  583. , SUM(CASE WHEN OCD.CHG_STAT = 'G685_20' THEN OCD.CHG_QTY
  584. WHEN OCD.CHG_STAT = 'G685_21' THEN OCD.CHG_QTY
  585. WHEN OCD.CHG_STAT = 'G685_30' AND OC.CHG_GB = 'G680_40' THEN OCD.CHG_QTY
  586. WHEN OCD.CHG_STAT = 'G685_31' AND OC.CHG_GB = 'G680_40' THEN OCD.CHG_QTY
  587. WHEN OCD.CHG_STAT = 'G685_32' AND OC.CHG_GB = 'G680_40' THEN OCD.CHG_QTY
  588. ELSE 0
  589. END) AS EXCHANGE_REQUEST_QTY
  590. , SUM(CASE WHEN OCD.CHG_STAT = 'G685_50' THEN OCD.CHG_QTY
  591. WHEN OCD.CHG_STAT = 'G685_51' THEN OCD.CHG_QTY
  592. WHEN OCD.CHG_STAT = 'G685_33' THEN OCD.CHG_QTY
  593. WHEN OCD.CHG_STAT = 'G685_30' AND OC.CHG_GB = 'G680_30' THEN OCD.CHG_QTY
  594. WHEN OCD.CHG_STAT = 'G685_31' AND OC.CHG_GB = 'G680_30' THEN OCD.CHG_QTY
  595. WHEN OCD.CHG_STAT = 'G685_32' AND OC.CHG_GB = 'G680_30' THEN OCD.CHG_QTY
  596. ELSE 0
  597. END) AS RETURN_REQUEST_QTY
  598. FROM TB_ORDER_CHANGE_DETAIL OCD
  599. INNER JOIN TB_ORDER_CHANGE OC
  600. ON OC.ORD_CHG_SQ = OCD.ORD_CHG_SQ
  601. INNER JOIN TB_ORDER_DETAIL OD
  602. ON OCD.ORD_DTL_NO = OD.ORD_DTL_NO
  603. WHERE 1 = 1
  604. AND OD.ORD_NO = 6005 /**P*/
  605. AND OCD.CHG_STAT IN ('G685_10', 'G685_11', 'G685_20', 'G685_21', 'G685_30', 'G685_31', 'G685_32', 'G685_33', 'G685_50', 'G685_51')
  606. AND OCD.DEL_YN = 'N'
  607. GROUP BY OCD.ORD_DTL_NO
  608. ) OCD
  609. ON OD.ORD_DTL_NO = OCD.ORD_DTL_NO
  610. WHERE 1 = 1
  611. AND OD.ORD_NO = 6005 /**P*/
  612. AND OD.ORD_DTL_STAT NOT IN ('G013_00', 'G013_25', 'G013_97')
  613. ) A
  614. GROUP BY A.ORD_NO
  615. , A.ORD_EXCH_GB
  616. , A.EXCH_GB_NM
  617. , A.ORD_DTL_NO
  618. , A.GOODS_CD
  619. , A.GOODS_NM
  620. , A.GOODS_TYPE
  621. , A.GOODS_TYPE_NM
  622. , A.SYS_IMG_NM
  623. , A.BRAND_ENM
  624. , A.LIST_PRICE
  625. , A.CURR_PRICE
  626. , A.ORD_QTY
  627. , A.CNCL_RTN_QTY
  628. , A.ORD_REQ_CHG_QTY
  629. , A.CANCEL_REQUEST_QTY
  630. , A.EXCHANGE_REQUEST_QTY
  631. , A.RETURN_REQUEST_QTY
  632. , A.CPN1_DC_AMT
  633. , A.GOODS_CPN_DC_AMT
  634. , A.CART_CPN_DC_AMT
  635. , A.TMTB1_DC_AMT
  636. , A.TMTB2_DC_AMT
  637. , A.PNT_DC_AMT
  638. , A.PRE_PNT_DC_AMT
  639. , A.SAVE_PNT_AMT
  640. , A.GFCD_USE_AMT
  641. , A.ORD_AMT
  642. , A.REAL_ORD_AMT
  643. , A.CNCL_RTN_AMT
  644. , A.ORD_DTL_STAT
  645. , A.ORD_DTL_STAT_NM
  646. , A.SOLDOUT_YN
  647. , A.SOLDOUT_REG_NO
  648. , A.SOLDOUT_MEMO
  649. , A.INVOICE_NO
  650. , A.DELV_LOC_CD
  651. , A.DELV_ADDR_SQ
  652. , A.RETURNABLE_YN
  653. , A.CHANGEABLE_YN
  654. , A.DELV_FEE_CD
  655. , A.DELV_FEE_CD_GRP
  656. , A.BRAND_GROUP_NM
  657. , A.SHIP_COMP_CD
  658. , A.SHIP_COMP_NM
  659. , A.DELV_LOC_NM
  660. , A.PG_GB
  661. , A.SUPPLY_COMP_NM
  662. ORDER BY A.ORD_NO
  663. , A.ORD_DTL_NO
  664. ;
  665. SELECT OD.*
  666. FROM TB_ORDER O
  667. -- WHERE ORD_NO = 353 2223
  668. INNER JOIN TB_ORDER_DETAIL OD
  669. ON O.ORD_NO = OD.ORD_NO
  670. INNER JOIN TB_GOODS G1
  671. ON OD.GOODS_CD = G1.GOODS_CD
  672. INNER JOIN TB_BRAND B
  673. ON B.BRAND_CD = G1.BRAND_CD
  674. INNER JOIN TB_BRAND_GROUP BG
  675. ON B.BRAND_GROUP_NO = BG.BRAND_GROUP_NO
  676. AND BG.USE_YN = 'Y'
  677. INNER JOIN TB_ORDER_DETAIL_ITEM ODI
  678. ON OD.ORD_NO = ODI.ORD_NO
  679. AND OD.ORD_DTL_NO = ODI.ORD_DTL_NO
  680. INNER JOIN TB_GOODS G2
  681. ON ODI.ITEM_CD = G2.GOODS_CD
  682. INNER JOIN TB_PAYMENT P
  683. ON O.ORD_NO = P.ORD_NO
  684. AND P.PAY_GB = 'O'
  685. AND P.PAY_STAT IN ('G016_10', 'G016_30')
  686. INNER JOIN TB_DELIVERY_ADDR DA
  687. ON OD.DELV_ADDR_SQ = DA.DELV_ADDR_SQ
  688. WHERE 1 = 1
  689. AND OD.GOODS_CPN_SQ IS NOT NULL
  690. AND OD.GOODS_CPN_SQ > 0
  691. AND OD.CART_CPN_SQ IS NOT NULL
  692. AND OD.CART_CPN_SQ > 0
  693. -- AND TMTB1_SQ > 0
  694. AND OD.ORD_DTL_STAT = 'G013_20'
  695. -- AND OD.GOODS_CPN_SQ IN (SELECT CPN_ID FROM TB_COUPON WHERE CPN_TYPE = 'G230_11')
  696. -- AND OD.CART_CPN_SQ IN (SELECT CPN_ID FROM TB_COUPON WHERE CPN_TYPE = 'G230_20')
  697. ;
  698. SELECT *
  699. FROM TB_COMMON_CODE
  700. WHERE CD_GB = 'G230'
  701. ;
  702. SELECT *
  703. FROM TB_COUPON
  704. WHERE CPN_TYPE IN ('G230_11','G230_20')
  705. ;
  706. SELECT *
  707. FROM TB_CUST_COUPON
  708. ;
  709. SELECT *
  710. FROM TB_ORDER
  711. ;
  712. -- G230_10 즉시할인쿠폰
  713. -- G230_11 상품쿠폰
  714. -- G230_12 브랜드쿠폰
  715. -- G230_13 카테고리쿠폰
  716. -- G230_14 공급처쿠폰
  717. -- G230_20 주문서쿠폰
  718. -- G230_30 배송비쿠폰
  719. /* order.getOrderGiftcardHstList */
  720. SELECT GROUP_CONCAT(GFCD_USE_DESC SEPARATOR '!@!')
  721. FROM (
  722. SELECT CONCAT(FORMAT(SUM(CGH.GFCD_AMT),0),'원 / ',CG.GFCD_NO) AS GFCD_USE_DESC
  723. FROM TB_ORDER_DETAIL OD
  724. INNER JOIN TB_CUST_GIFTCARD_HST CGH
  725. ON OD.ORD_DTL_NO = CGH.ORD_DTL_NO
  726. AND OD.ORD_NO = CGH.ORD_NO
  727. INNER JOIN TB_CUST_GIFTCARD CG
  728. ON CGH.CUST_GFCD_SQ = CG.CUST_GFCD_SQ
  729. WHERE OD.ORD_NO = 1433 /**P*/
  730. GROUP BY CG.GFCD_NO
  731. ) Z
  732. ;
  733. SELECT ORD_NO, ORD_DTL_NO, COUNT(DISTINCT CUST_GFCD_SQ) AS CNT
  734. FROM TB_CUST_GIFTCARD_HST
  735. GROUP BY ORD_NO, ORD_DTL_NO
  736. HAVING COUNT(DISTINCT CUST_GFCD_SQ) > 1
  737. ;
  738. SELECT *
  739. FROM TB_COMMON_CODE
  740. WHERE CD_GB = 'G016'
  741. ;
  742. /* order.getDeliveryFeeList */
  743. SELECT Z.*
  744. FROM (
  745. SELECT DF.DELV_FEE_GB
  746. , FN_GET_CODE_NM('G018', DF.DELV_FEE_GB) AS DELV_FEE_GB_NM
  747. , DF.DELV_FEE
  748. , DF.REAL_DELV_AMT
  749. , DF.DELV_USAC_YN
  750. , DATE_FORMAT(DF.DELV_USAC_DT, '%Y%m%d%H%i%S') AS DELV_USAC_DT
  751. , DF.SUPPLY_COMP_CD
  752. , DF.DELV_FEE_SQ
  753. , DF.DELV_CPN_SQ
  754. , DF.DELV_CPN_DC_AMT
  755. , DF.DELV_GFCD_USE_AMT
  756. , DF.DELV_FEE_CD
  757. , CASE WHEN DF.DELV_FEE_CD IN ('WMS')
  758. THEN '자사'
  759. ELSE (SELECT SUPPLY_COMP_NM FROM TB_SUPPLY_COMPANY X WHERE X.SUPPLY_COMP_CD = DF.SUPPLY_COMP_CD)
  760. END SUPPLY_COMP_NM
  761. FROM TB_DELIVERY_FEE DF
  762. WHERE 1 = 1
  763. AND DF.ORD_NO = 6005 /**P*/
  764. AND DF.DELV_FEE_GB = 'G018_10' /*원주문배송비*/
  765. UNION ALL
  766. SELECT DF.DELV_FEE_GB
  767. , FN_GET_CODE_NM('G018', DF.DELV_FEE_GB) AS DELV_FEE_GB_NM
  768. , DF.DELV_FEE
  769. , DF.REAL_DELV_AMT
  770. , DF.DELV_USAC_YN
  771. , DATE_FORMAT(DF.DELV_USAC_DT, '%Y%m%d%H%i%S') AS DELV_USAC_DT
  772. , DF.SUPPLY_COMP_CD
  773. , DF.DELV_FEE_SQ
  774. , DF.DELV_CPN_SQ
  775. , DF.DELV_CPN_DC_AMT
  776. , DF.DELV_GFCD_USE_AMT
  777. , DF.DELV_FEE_CD
  778. , CASE WHEN DF.DELV_FEE_CD IN ('WMS')
  779. THEN '자사'
  780. ELSE (SELECT SUPPLY_COMP_NM FROM TB_SUPPLY_COMPANY X WHERE X.SUPPLY_COMP_CD = DF.SUPPLY_COMP_CD)
  781. END SUPPLY_COMP_NM
  782. FROM TB_DELIVERY_FEE DF
  783. WHERE 1 = 1
  784. AND DF.ORD_NO = 6005 /**P*/
  785. AND EXISTS (SELECT 1
  786. FROM TB_ORDER_CHANGE_DETAIL OCD
  787. WHERE DF.ORD_CHG_SQ = OCD.ORD_CHG_SQ
  788. AND OCD.CHG_STAT IN ('G685_40', 'G685_60'))
  789. ) Z
  790. GROUP BY Z.DELV_FEE_GB
  791. , Z.DELV_FEE_GB_NM
  792. , Z.DELV_FEE
  793. , Z.REAL_DELV_AMT
  794. , Z.DELV_USAC_YN
  795. , Z.DELV_USAC_DT
  796. , Z.SUPPLY_COMP_CD
  797. , Z.SUPPLY_COMP_NM
  798. , Z.DELV_FEE_SQ
  799. , Z.DELV_CPN_SQ
  800. , Z.DELV_CPN_DC_AMT
  801. , Z.DELV_GFCD_USE_AMT
  802. , Z.DELV_FEE_CD
  803. ;
  804. /* order.getOrderPaymentBasicInfoList */
  805. SELECT P.ESCROW_YN
  806. , CASE WHEN O.MALL_GB IN ('G011_20')
  807. THEN ''
  808. ELSE P.PG_GB
  809. END PG_GB
  810. , CASE WHEN O.MALL_GB IN ('G011_20')
  811. THEN ''
  812. ELSE P.PAY_MEANS
  813. END PAY_MEANS
  814. , CASE WHEN O.MALL_GB IN ('G011_20')
  815. THEN ''
  816. ELSE FN_GET_CODE_NM('G014', P.PAY_MEANS)
  817. END PAY_MEANS_NM
  818. , CASE WHEN P.PAY_MEANS IN ('G014_20')
  819. THEN P.VA_BANK
  820. ELSE ''
  821. END VA_BANK
  822. , CASE WHEN P.PAY_MEANS = 'G014_20' THEN FN_GET_CODE_NM('G940', P.VA_BANK)
  823. WHEN P.PAY_MEANS = 'G014_10' THEN ''
  824. ELSE P.CARD_NM
  825. END CARD_NM
  826. , P.PG_TRADE_NO
  827. , P.PG_TID
  828. , P.VA_NO
  829. , DATE_FORMAT(P.PAY_DT, '%Y%m%d%H%i%S') AS PAY_DT
  830. , P.PAY_STAT
  831. , FN_GET_CODE_NM('G016', P.PAY_STAT) AS PAY_STAT_NM
  832. , P.PAY_AMT
  833. , P.PG_CPN_AMT
  834. , P.NPAY_PNT_AMT
  835. , DATE_FORMAT(P.VA_DEADLINE, '%Y-%m-%d') AS VA_DEADLINE
  836. , CARD_MIPS
  837. , CARD_TYPE
  838. , CASH_AUTH_NO
  839. , CASH_TRADE_NO
  840. FROM TB_PAYMENT P
  841. INNER JOIN TB_ORDER O
  842. ON P.ORD_NO = O.ORD_NO
  843. WHERE 1 = 1
  844. AND P.ORD_NO = 169 /**P*/
  845. AND P.PAY_STAT IN ('G016_30', 'G016_10') /*결제완료,무통장입금관련*/
  846. ORDER BY P.REG_DT
  847. ;
  848. -- G016_00 결제대기
  849. -- G016_10 무통장입금전
  850. -- G016_30 결제완료
  851. -- G016_97 결제성공후DB실패
  852. -- G016_98 결제전취소
  853. -- G016_99 결제취소
  854. SELECT *
  855. FROM TB_PAYMENT
  856. WHERE ORD_NO = 169
  857. ;
  858. SELECT ORD_NO, COUNT(*) AS CNT
  859. FROM TB_PAYMENT
  860. GROUP BY ORD_NO
  861. HAVING COUNT(*) > 1
  862. ;
  863. SELECT CASE WHEN P.PG_GB = 'KCP' THEN FN_GET_CODE_NM('G014', P.PAY_MEANS)
  864. WHEN P.PG_GB = 'NAVER' THEN '네이버페이'
  865. WHEN P.PG_GB = 'NAVER_ORDER' THEN '네이버페이주문형'
  866. WHEN P.PG_GB = 'KAKAO' THEN '카카오페이'
  867. ELSE ''
  868. END AS PAY_MEANS_NM /*결제수단명*/
  869. , CASE WHEN P.PG_GB = 'KCP' THEN
  870. CASE WHEN P.PAY_MEANS = 'G014_10' THEN CONCAT(FN_GET_CODE_NM('G940',P.VA_BANK),' / ',P.VA_NO)
  871. WHEN P.PAY_MEANS = 'G014_20' THEN CONCAT(FN_GET_CODE_NM('G940',P.VA_BANK),' / ',P.VA_NO,' / ',P.VA_NM,' / ',DATE_FORMAT(P.VA_DEADLINE,'%Y-%m-%d %H:%i:%S'))
  872. WHEN P.PAY_MEANS = 'G014_30' THEN CONCAT(P.CARD_NM,' / ',CASE WHEN CAST(P.CARD_MIPS AS UNSIGNED) = 0 THEN '일시불' ELSE CONCAT(CAST(P.CARD_MIPS AS UNSIGNED),'개월') END)
  873. ELSE ''
  874. END
  875. WHEN P.PG_GB IN ('NAVER','KAKAO') THEN
  876. CASE WHEN P.PAY_MEANS = 'G014_10' THEN CONCAT(FN_GET_CODE_NM('G940',P.VA_BANK),' / ',P.VA_NO)
  877. WHEN P.PAY_MEANS = 'G014_30' THEN CONCAT(P.CARD_NM,' / ',CASE WHEN CAST(P.CARD_MIPS AS UNSIGNED) = 0 THEN '일시불' ELSE CONCAT(CAST(P.CARD_MIPS AS UNSIGNED),'개월') END)
  878. ELSE ''
  879. END
  880. END AS PAY_MEANS_DESC /*결제수단설명*/
  881. , PG_CPN_AMT /*PG쿠폰금액*/
  882. , NPAY_PNT_AMT /*네이버페이포인트금액(마일리지)*/
  883. , CASE WHEN CASH_AUTH_NO IS NOT NULL AND CASH_TRADE_NO IS NOT NULL THEN 'Y'
  884. ELSE 'N'
  885. END AS CASH_RECEIP_REQ_YN /*현금영수증신청여부*/
  886. FROM TB_PAYMENT P
  887. WHERE P.ORD_NO = 6005
  888. AND P.PAY_GB = 'O' /*주문시결제*/
  889. AND P.PAY_STAT IN ('G016_30','G016_10') /*결제완료,무통장입금관련*/
  890. ;
  891. style24-core Order.java
  892. private Integer ordNo;
  893. private int ordCurrAmt; /*주문상품금액*/
  894. private int realDelvAmt; /*실배송비금액*/
  895. private String delvFeeDesc; /*배송비설명*/
  896. private String delvFeeCpnDesc; /*배송비쿠폰설명*/
  897. private int totDcAmt; /*총할인금액*/
  898. private int cpn1DcAmt; /*즉시할인쿠폰금액*/
  899. private String cpn1CpnDcDesc; /*즉시할인쿠폰설명*/
  900. private int tmtbDcAmt; /*다다익선인금액*/
  901. private int tmtb1DcAmt; /*다다익선수량할인금액*/
  902. private String tmtb1Desc; /*다다익선수량할인설명*/
  903. private int tmtb2DcAmt; /*다다익선금액할인금액*/
  904. private String tmtb2Desc; /*다다익선금액할인설명*/
  905. private int goodsCpnDcAmt; /*상품쿠폰할인금액*/
  906. private String goodsCpnDcDesc; /*상품쿠폰할인설명*/
  907. private int cartCpnDcAmt; /*장바구니쿠폰할인금액*/
  908. private String cartCpnDcDesc; /*장바구니쿠폰할인설명*/
  909. private int prePntDcAmt; /*선포인트할인금액*/
  910. private int totPayAmt; /*총결제금액*/
  911. private int realOrdAmt; /*실결제금액*/
  912. private String payMeansNm; /*결제수단명*/
  913. private String payMeansDesc; /*결제수단설명*/
  914. private int gfcdUseAmt; /*상품권사용금액*/
  915. private String gfcdUseDesc; /*상품권사용설명*/
  916. private int pntDcAmt; /*포인트할인금액*/
  917. private int pgCpnAmt; /*PG쿠폰금액(KCP쿠폰금액)*/
  918. private int npayPntAmt; /*네이버페이포인트금액(마일리지)*/
  919. private int savePntAmt; /*적립포인트금액*/
  920. private String cashReceipReqYn; /*현금영수증신청여부*/
  921. <h4>주문결제내역</h4>
  922. <table class="frmStyle">
  923. <colgroup>
  924. <col width="10%"/>
  925. <col width="10%"/>
  926. <col width="20%"/>
  927. <col width="10%"/>
  928. <col width="10%"/>
  929. <col/>
  930. </colgroup>
  931. <thead>
  932. <tr>
  933. <th>구분</th>
  934. <th>합계</th>
  935. <th>내역</th>
  936. <th>구분</th>
  937. <th>합계</th>
  938. <th>내역</th>
  939. </tr>
  940. </thead>
  941. <tbody>
  942. <tr>
  943. <th>총결제금액(A+B+C)</th>
  944. <td class="totalPayAmt"></td>
  945. <td></td>
  946. <th>주문금액(A)</th>
  947. <td class="currSumAmt"></td>
  948. <td></td>
  949. </tr>
  950. <tr>
  951. <th class="pgGbNm"></th>
  952. <td class="realOrdSumAmt"></td>
  953. <td class="payMeansDesc"></td>
  954. <th>배송비 합산(B)</th>
  955. <td class="realDelvSumAmt"></td>
  956. <td>
  957. <ul class="notice">
  958. <li>배송비 : <span class="delvSumAmt"></span></li>
  959. <li>배송비 쿠폰 : <span class="delvCpnDcAmt"></span></li>
  960. </ul>
  961. </td>
  962. </tr>
  963. <tr>
  964. <th>상품권</th>
  965. <td class="gfcdUseSumAmt"></td>
  966. <td>
  967. <ul class="notice gfcdUseDesc">
  968. </ul>
  969. </td>
  970. <th>할인금액 총합(C)</th>
  971. <td class="cRed totDcAmt"></td>
  972. <td></td>
  973. </tr>
  974. <tr>
  975. <th>포인트</th>
  976. <td class="pntDcSumAmt"></td>
  977. <td></td>
  978. <th><i class="fa fa-level-up fa-rotate-90" aria-hidden="true"></i>&nbsp;즉시할인쿠폰</th>
  979. <td class="cRed cpn1DcSumAmt"></td>
  980. <td>
  981. <ul class="notice cpn1CpnDcDesc">
  982. </ul>
  983. </td>
  984. </tr>
  985. <tr>
  986. <th>KCP쿠폰</th>
  987. <td class="allianceDcAmt"></td>
  988. <td></td>
  989. <th><i class="fa fa-level-up fa-rotate-90" aria-hidden="true"></i>&nbsp;다다익선할인</th>
  990. <td class="tmtbDcSumAmt"></td>
  991. <td>
  992. <ul class="notice tmtbDcDesc">
  993. </ul>
  994. </td>
  995. </tr>
  996. <tr>
  997. <th>마일리지</th>
  998. <td class="mileageDcAmt"></td>
  999. <td></td>
  1000. <th><i class="fa fa-level-up fa-rotate-90" aria-hidden="true"></i>&nbsp;상품쿠폰&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</th>
  1001. <td class="cRed goodsCpnDcSumAmt"></td>
  1002. <td>
  1003. <ul class="notice goodsCpnDcDesc">
  1004. </ul>
  1005. </td>
  1006. </tr>
  1007. <tr>
  1008. <th>적립포인트</th>
  1009. <td class="savePntSumAmt"></td>
  1010. <td></td>
  1011. <th><i class="fa fa-level-up fa-rotate-90" aria-hidden="true"></i>&nbsp;장바구니쿠폰</th>
  1012. <td class="cRed cartCpnDcSumAmt"></td>
  1013. <td>
  1014. <ul class="notice cartCpnDcDesc">
  1015. </ul>
  1016. </td>
  1017. </tr>
  1018. <tr>
  1019. <th>현금영수증신청여부</th>
  1020. <td class="gccrReqYn"></td>
  1021. <td></td>
  1022. <th><i class="fa fa-level-up fa-rotate-90" aria-hidden="true"></i>&nbsp;선포인트할인</th>
  1023. <td class="cRed prePntDcSumAmt"></td>
  1024. <td></td>
  1025. </tr>
  1026. </tbody>
  1027. </table>