Bladeren bron

Merge branch 'develop' into ST24PRJ-617

hss 4 jaren geleden
bovenliggende
commit
5bafa7a149

+ 11 - 1
src/main/java/com/style24/core/biz/dao/TscCommonDao.java

@@ -1,8 +1,9 @@
 package com.style24.core.biz.dao;
 
+import org.springframework.stereotype.Repository;
+
 import com.style24.core.support.annotation.ShopDs;
 import com.style24.persistence.domain.Sequence;
-import org.springframework.stereotype.Repository;
 
 /**
  * 공용 Dao
@@ -32,4 +33,13 @@ public interface TscCommonDao {
 	 */
 	void createNextSequence(Sequence sequence);
 
+	/**
+	 * 영업일여부 조회
+	 * 
+	 * @param String
+	 * @return String
+	 * @author card007
+	 * @since 2021. 12. 14
+	 */
+	String getBizdayYn(String bizday);
 }

+ 9 - 0
src/main/java/com/style24/core/biz/dao/TscOrderDao.java

@@ -43,6 +43,15 @@ public interface TscOrderDao {
 	 * @since 2020. 11. 18
 	 */
 	Collection<Order> getOrderInfoList(Order order);
+	
+	/**
+	 * 원주문 결제내역 정보
+	 * @param Order - 주문 정보
+	 * @return
+	 * @author gagamel
+	 * @since 2021. 12. 6
+	 */
+	Order getOriginalOrderPaymentInfo(Order order);
 
 	/**
 	 * 주문상품정보 목록

+ 12 - 0
src/main/java/com/style24/core/biz/service/TscCommonService.java

@@ -42,4 +42,16 @@ public class TscCommonService {
 
 		return sequence.getNextVal();
 	}
+
+	/**
+	 * 영업일여부 조회
+	 *
+	 * @param String
+	 * @return String
+	 * @author card007
+	 * @since 2021. 12. 14
+	 */
+	public String getBizdayYn(String bizday) {
+		return commonDao.getBizdayYn(bizday);
+	}
 }

+ 16 - 4
src/main/java/com/style24/core/biz/service/TscOrderService.java

@@ -13,10 +13,6 @@ import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;
 
 import com.fasterxml.jackson.databind.ObjectMapper;
-import com.gagaframework.excel.env.GagaExcelConstants;
-import com.gagaframework.excel.xssf.GagaExcelResultHandler;
-import com.gagaframework.web.parameter.GagaMap;
-import com.gagaframework.web.rest.server.GagaResponseStatus;
 import com.style24.core.biz.dao.TscNaverPayDao;
 import com.style24.core.biz.dao.TscOrderChangeDao;
 import com.style24.core.biz.dao.TscOrderDao;
@@ -35,6 +31,11 @@ import com.usafe.guarantee.InsuranceManager;
 
 import lombok.extern.slf4j.Slf4j;
 
+import com.gagaframework.excel.env.GagaExcelConstants;
+import com.gagaframework.excel.xssf.GagaExcelResultHandler;
+import com.gagaframework.web.parameter.GagaMap;
+import com.gagaframework.web.rest.server.GagaResponseStatus;
+
 /**
  * 주문관리 Service
  *
@@ -126,6 +127,17 @@ public class TscOrderService {
 	public Collection<Order> getOrderInfoList(Order order) {
 		return orderDao.getOrderInfoList(order);
 	}
+	
+	/**
+	 * 원주문 결제내역 정보
+	 * @param order - 주문 정보
+	 * @return
+	 * @author gagamel
+	 * @since 2021. 12. 6
+	 */
+	public Order getOriginalOrderPaymentInfo(Order order) {
+		return orderDao.getOriginalOrderPaymentInfo(order);
+	}
 
 	/**
 	 * 주문상품정보 목록

+ 15 - 0
src/main/java/com/style24/persistence/domain/Order.java

@@ -822,4 +822,19 @@ public class Order extends TscBaseDomain {
 	private int stepNo;				// 순서번호
 	private String errMsg;			// 오류메세지
 	
+	private int ordCurrAmt;			/*주문상품금액*/
+	private String delvFeeDesc;		/*배송비설명*/
+	private String delvFeeCpnDesc;	/*배송비쿠폰설명*/
+	private String cpn1CpnDcDesc;	/*즉시할인쿠폰설명*/
+	private String tmtb1Desc;		/*다다익선수량할인설명*/
+	private String tmtb2Desc;		/*다다익선금액할인설명*/
+	private String goodsCpnDcDesc;	/*상품쿠폰할인설명*/
+	private String cartCpnDcDesc;	/*장바구니쿠폰할인설명*/
+	private int totPayAmt;			/*총결제금액*/
+	private String payMeansDesc;	/*결제수단설명*/
+	private String gfcdUseDesc;		/*상품권사용설명*/
+	private String npayPntDesc;		/*네이버포인트(마일리지)설명*/
+	private String cashReceipReqYn;	/*현금영수증신청여부*/
+	private String shotDelvGb;		/*총알배송구분*/
+	
 }

+ 7 - 0
src/main/java/com/style24/persistence/mybatis/shop/TscCommon.xml

@@ -18,4 +18,11 @@
 		ON DUPLICATE KEY UPDATE NEXT_VAL = #{nextVal}
 	</insert>
 
+	<!-- 영업일여부 조회 -->
+	<select id="getBizdayYn" parameterType="String" resultType="String">
+		/* TsaBusiness.getBizdayYn */
+		SELECT BIZDAY_YN
+		  FROM TB_BIZDAY
+		 WHERE BIZDAY = #{bizday}
+	</select>
 </mapper>

+ 267 - 18
src/main/java/com/style24/persistence/mybatis/shop/TscOrder.xml

@@ -1169,12 +1169,12 @@
 		            WHEN O.FRONT_GB = 'M'THEN 'MOB'
 		            WHEN O.FRONT_GB = 'A'THEN 'APP'
 		            ELSE ''
-		       END		                   FRONT_GB_NM
+		       END                                        AS FRONT_GB_NM
 		     , OD.EXTMALL_ID
 		     , (SELECT X.EXTMALL_NM
 		          FROM TB_EXTMALL X
 		         WHERE X.EXTMALL_ID = OD.EXTMALL_ID)      AS EXTMALL_NM
-		     , DATE_FORMAT(O.ORD_DT, '%Y.%m.%d %H:%i')    AS ORD_DT
+		     , DATE_FORMAT(O.ORD_DT, '%Y-%m-%d %H:%i:%S') AS ORD_DT
 		     , O.ORD_NM
 		     , O.CUST_NO
 		     , O.ORD_NO
@@ -1185,55 +1185,57 @@
 		     , CASE WHEN C.CUST_GB IS NULL OR C.CUST_GB IN (10)
 		            THEN '비회원'
 		            ELSE FN_GET_CODE_NM('G100', C.CUST_GB)
-		       END		                    CUST_GB_NM
+		       END                                        AS CUST_GB_NM
 		     , C.MANAGED_RSN
 		     , CASE WHEN C.MANAGED_RSN IS NULL
 		            THEN '부'
 		            ELSE FN_GET_CODE_NM('G103', C.MANAGED_RSN)
-		       END		                    MANAGED_RSN_NM
+		       END                                        AS MANAGED_RSN_NM
 		     , C.CUST_GRADE
 		     , CASE WHEN C.CUST_GRADE IS NULL
 		            THEN '등급없음'
 		            ELSE FN_GET_CODE_NM('G110', C.CUST_GRADE)
-		       END		                    CUST_GRADE_NM
+		       END                                        AS CUST_GRADE_NM
 		     , P.ESCROW_YN
 		     , CASE WHEN O.MALL_GB IN ('G011_20')
 		            THEN ''
 		            ELSE P.PAY_MEANS
-		            END  PAY_MEANS
+		       END                                        AS PAY_MEANS
 		     , CASE WHEN O.MALL_GB IN ('G011_20')
 		            THEN ''
 		            ELSE FN_GET_CODE_NM('G014', P.PAY_MEANS)
-		            END  PAY_MEANS_NM
+		       END                                        AS PAY_MEANS_NM
 		     , CASE WHEN P.PAY_MEANS IN ('G014_20')
 		            THEN P.VA_BANK
 		            ELSE ''
-		            END  VA_BANK
+		       END                                        AS VA_BANK
 		     , P.VA_NO
 		     , P.VA_NM
-		     , CASE WHEN P.PAY_MEANS = 'G014_20' || P.PAY_MEANS = 'G014_10'
+		     , CASE WHEN P.PAY_MEANS = 'G014_20' OR P.PAY_MEANS = 'G014_10'
 		            THEN FN_GET_CODE_NM('G940', P.VA_BANK)
 		            ELSE P.CARD_NM
-		       END		                    CARD_NM
+		       END                                        AS CARD_NM
 		     , P.PG_TRADE_NO
 		     , DATE_FORMAT(P.PAY_DT, '%Y%m%d%H%i%S')      AS PAY_DT
 		     , P.PAY_STAT
 		     , FN_GET_CODE_NM('G016', P.PAY_STAT)         AS PAY_STAT_NM
 		     , P.PAY_AMT
-		     , DATE_FORMAT(P.VA_DEADLINE, '%Y.%m.%d') AS VA_DEADLINE
+		     , DATE_FORMAT(P.VA_DEADLINE, '%Y.%m.%d')     AS VA_DEADLINE
 		     , CASE WHEN NOW() <![CDATA[<]]> DATE_ADD(O.PAY_DT, INTERVAL 3 DAY)
 		            THEN 'N'
 		            ELSE 'Y'
-		            END GIFT_PACK_CLOSE_YN
-		     , DATE_ADD(O.PAY_DT, INTERVAL 3 DAY) AS GIFT_PACK_CLOSE_DT
+		       END                                        AS GIFT_PACK_CLOSE_YN
+		     , DATE_ADD(O.PAY_DT, INTERVAL 3 DAY)         AS GIFT_PACK_CLOSE_DT
 		     , CASE WHEN O.MALL_GB IN ('G011_20')
 		            THEN ''
 		            ELSE P.PG_GB
-		            END  PG_GB
+		       END                                        AS PG_GB
 		     , CASE WHEN C.CUST_ID IS NULL
 		            THEN 'GUEST'
 		            ELSE C.CUST_ID
-		            END  CUST_ID
+		       END                                        AS CUST_ID
+		     , OD.EXTMALL_ORDER_ID
+		     , O.NPAY_ORD_NO
 		  FROM TB_ORDER O
 		 INNER JOIN TB_ORDER_DETAIL OD
 		    ON O.ORD_NO = OD.ORD_NO
@@ -1247,6 +1249,224 @@
 		   AND O.ORD_NO = #{ordNo}
 		 LIMIT 1
 	</select>
+	
+	<!-- 주문상세 > 원주문결제내역정보 -->
+	<select id="getOriginalOrderPaymentInfo" parameterType="Order" resultType="Order">
+		/* TscOrder.getOriginalOrderPaymentInfo */
+		WITH ORIGINAL_ORD AS (
+		    SELECT ODH.ORD_NO           /*주문번호*/
+		         , ODH.ORD_DTL_NO       /*주문상세번호*/
+		         , ODH.ORD_AMT          /*주문금액*/
+		         , ODH.REAL_ORD_AMT     /*실주문금액*/
+		         , (ODH.CURR_PRICE + ODH.OPT_ADD_PRICE) * (ODH.ORD_QTY - ODH.CNCL_RTN_QTY) AS ORD_CURR_AMT /*주문상품금액*/
+		         , ODH.CPN1_CPN_SQ      /*즉시할인쿠폰번호*/
+		         , ODH.CPN1_DC_AMT      /*즉시할인쿠폰금액*/
+		         , ODH.TMTB1_SQ         /*다다익선수량할인번호*/
+		         , ODH.TMTB1_DC_AMT     /*다다익선수량할인금액*/
+		         , ODH.TMTB2_SQ         /*다다익선금액할인번호*/
+		         , ODH.TMTB2_DC_AMT     /*다다익선금액할인금액*/
+		         , ODH.GOODS_CPN_SQ     /*상품쿠폰번호*/
+		         , ODH.GOODS_CPN_DC_AMT /*상품쿠폰할인금액*/
+		         , ODH.CART_CPN_SQ      /*장바구니쿠폰번호*/
+		         , ODH.CART_CPN_DC_AMT  /*장바구니쿠폰할인금액*/
+		         , ODH.PRE_PNT_DC_AMT   /*선포인트할인금액*/
+		         , ODH.GFCD_USE_AMT     /*상품권사용금액*/
+		         , ODH.PNT_DC_AMT       /*포인트할인금액*/
+		         , ODH.SAVE_PNT_AMT     /*적립포인트금액*/
+		    FROM   TB_ORDER_DETAIL_HST ODH
+		    INNER JOIN TB_ORDER O ON ODH.ORD_NO = O.ORD_NO
+		    WHERE  ODH.ORD_NO = #{ordNo}
+		    AND    ODH.ORD_EXCH_GB = 'O' /*원주문*/
+		    AND    (
+		            (ODH.ORD_DTL_STAT = 'G013_00' /*주문접수*/ AND O.MALL_GB = 'G011_10' /*자사몰*/)
+		            OR
+		            (ODH.ORD_DTL_STAT = 'G013_20' /*결제완료*/ AND O.MALL_GB = 'G011_20' /*제휴몰*/)
+		           )
+		)
+		, ORIGINAL_DELV_FEE AS (
+		    SELECT DF.DELV_FEE_CD                                             /*배송비정책코드*/
+		         , DF.SUPPLY_COMP_CD                                          /*공급업체코드*/
+		         , FN_GET_SUPPLY_COMP_NM(DF.SUPPLY_COMP_CD) AS SUPPLY_COMP_NM /*공급업체명*/
+		         , DF.DELV_FEE                                                /*배송비*/
+		         , DF.DELV_CPN_SQ                                             /*배송비쿠폰번호*/
+		         , DF.DELV_CPN_DC_AMT                                         /*배송비쿠폰할인금액*/
+		         , DF.DELV_GFCD_USE_AMT                                       /*배송비상품권사용금액*/
+		         , DF.REAL_DELV_AMT                                           /*실배송비금액*/
+		    FROM   TB_DELIVERY_FEE DF
+		    WHERE  DF.ORD_NO = #{ordNo}
+		    AND    DF.DELV_FEE_GB = 'G018_10' /*원주문배송비*/
+		    AND    DF.ORD_CHG_SQ IS NULL /*취소/교환/반품이 없는 넘*/
+		)
+		, ORIGINAL_PAYMENT AS (
+		    SELECT ORD_NO
+		         , CASE WHEN PG_GB = 'NAVER' THEN
+		                    CASE WHEN PAY_MEANS = 'G014_10' THEN '네이버페이(계좌)'
+		                         WHEN PAY_MEANS = 'G014_30' THEN '네이버페이(신용)'
+		                         ELSE '네이버페이'
+		                    END
+		                WHEN PG_GB = 'NAVER_ORDER' THEN '네이버페이주문형'
+		                WHEN PG_GB = 'KAKAO' THEN
+		                    CASE WHEN PAY_MEANS = 'G014_10' THEN '카카오페이(계좌)'
+		                         WHEN PAY_MEANS = 'G014_30' THEN '카카오페이(신용)'
+		                         WHEN PAY_MEANS = 'G014_83' THEN '카카오페이(머니)'
+		                         ELSE '카카오페이'
+		                    END
+		                WHEN PG_GB = 'PAYCO' THEN
+		                    CASE WHEN PAY_MEANS = 'G014_10' THEN '페이코(계좌)'
+		                         WHEN PAY_MEANS = 'G014_30' THEN '페이코(신용)'
+		                         ELSE '페이코'
+		                    END
+		                ELSE FN_GET_CODE_NM('G014',PAY_MEANS)
+		           END           AS PAY_MEANS_NM  /*결제수단명*/
+		         , CASE WHEN PG_GB = 'KCP' THEN
+		                    CASE WHEN PAY_MEANS = 'G014_10' THEN CONCAT(FN_GET_CODE_NM('G940',VA_BANK),' / ',VA_NO)
+		                         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'),''))
+		                         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)
+		                         ELSE ''
+		                    END
+		                WHEN PG_GB IN ('NAVER','KAKAO','PAYCO') THEN
+		                    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)
+		                         ELSE ''
+		                    END
+		                ELSE ''
+		           END           AS PAY_MEANS_DESC     /*결제수단설명*/
+		         , PG_CPN_AMT                          /*PG쿠폰금액*/
+		         , NPAY_PNT_AMT                        /*포인트금액(마일리지)*/
+		         , CASE WHEN NPAY_PNT_AMT > 0 THEN
+		                    CASE WHEN PG_GB = 'NAVER' THEN '네이버포인트'
+		                         WHEN PG_GB = 'KAKAO' THEN '카카오포인트'
+		                         WHEN PG_GB = 'PAYCO' THEN '페이코포인트'
+		                         ELSE ''
+		                    END
+		                ELSE ''
+		           END           AS NPAY_PNT_DESC      /*포인트(마일리지)설명*/
+		         , CASE WHEN CASH_AUTH_NO IS NOT NULL AND CASH_TRADE_NO IS NOT NULL THEN 'Y'
+		                ELSE 'N'
+		           END           AS CASH_RECEIP_REQ_YN /*현금영수증신청여부*/
+		    FROM   TB_PAYMENT
+		    WHERE  ORD_NO = #{ordNo}
+		    AND    PAY_GB = 'O' /*주문시결제*/
+		    AND    PAY_STAT IN ('G016_30','G016_10') /*결제완료,무통장입금관련*/
+		)
+		SELECT OO.ORD_NO                                                   /*주문번호*/
+		     , SUM(OO.ORD_CURR_AMT)                   AS ORD_CURR_AMT      /*주문상품금액*/
+		     , IFNULL((SELECT SUM(REAL_DELV_AMT)
+		               FROM   ORIGINAL_DELV_FEE
+		              ),0)                            AS REAL_DELV_AMT     /*실배송비금액*/
+		     , (SELECT CONCAT(IFNULL((SELECT CONCAT('자사 : ',FORMAT(SUM(DF.DELV_FEE),0),'원')
+		                              FROM   ORIGINAL_DELV_FEE DF
+		                              WHERE  DF.DELV_FEE_CD = 'WMS' /*자사*/
+		                             ),''),
+		                      CASE WHEN IFNULL((SELECT COUNT(*)
+		                                        FROM   ORIGINAL_DELV_FEE DF
+		                                        WHERE  DF.DELV_FEE_CD = 'WMS' /*자사*/
+		                                       ),0) > 0
+		                                AND
+		                                IFNULL((SELECT COUNT(*)
+		                                        FROM   ORIGINAL_DELV_FEE DF
+		                                        WHERE  DF.DELV_FEE_CD != 'WMS' /*입점업체*/
+		                                       ),0) > 0 THEN ' / '
+		                           ELSE ''
+		                      END,
+		                      IFNULL((SELECT CONCAT('업체 : ',GROUP_CONCAT(DELV_FEE_DESC SEPARATOR ', '))
+		                              FROM   (
+		                                      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
+		                                      FROM   ORIGINAL_DELV_FEE DF
+		                                      WHERE  DF.DELV_FEE_CD != 'WMS' /*입점업체*/
+		                                      GROUP  BY DF.SUPPLY_COMP_CD
+		                                     ) Z
+		                             ),'')) AS DELV_FEE_DESC
+		        FROM   DUAL
+		       )                                      AS DELV_FEE_DESC     /*배송비설명*/
+		     , (SELECT GROUP_CONCAT(DISTINCT CONCAT('쿠폰번호 : ',C.CPN_ID,' / ',C.CPN_NM,' ',FORMAT(DF.DELV_CPN_DC_AMT,0),'원') SEPARATOR ', ') AS DELV_FEE_CPN_DESC
+		        FROM   ORIGINAL_DELV_FEE DF
+		        INNER JOIN TB_CUST_COUPON CC ON DF.DELV_CPN_SQ = CC.CUST_CPN_SQ
+		        INNER JOIN TB_COUPON C ON CC.CPN_ID = C.CPN_ID
+		        WHERE  DF.DELV_CPN_SQ > 0
+		       )                                      AS DELV_FEE_CPN_DESC /*배송비쿠폰설명*/
+		     , SUM(OO.CPN1_DC_AMT +
+		           OO.TMTB1_DC_AMT + OO.TMTB2_DC_AMT +
+		           OO.GOODS_CPN_DC_AMT + OO.CART_CPN_DC_AMT +
+		           OO.PRE_PNT_DC_AMT)                 AS TOT_DC_AMT        /*총할인금액*/
+		     , SUM(OO.CPN1_DC_AMT)                    AS CPN1_DC_AMT       /*즉시할인쿠폰금액*/
+		     , (SELECT GROUP_CONCAT(DISTINCT CONCAT('쿠폰번호 : ',CPN_ID,' / ',CPN_NM) SEPARATOR '!@!') AS CPN_DESC
+		        FROM   TB_COUPON
+		        WHERE  CPN_ID IN (SELECT DISTINCT CPN1_CPN_SQ FROM ORIGINAL_ORD)
+		       )                                      AS CPN1_CPN_DC_DESC  /*즉시할인쿠폰설명*/
+		     , SUM(OO.TMTB1_DC_AMT + OO.TMTB2_DC_AMT) AS TMTB_DC_AMT       /*다다익선인금액*/
+		     , SUM(OO.TMTB1_DC_AMT)                   AS TMTB1_DC_AMT      /*다다익선수량할인금액*/
+		     , (SELECT GROUP_CONCAT(DISTINCT CONCAT('프로모션번호 : ',TMTB_SQ,' / ',TMTB_NM) SEPARATOR '!@!') AS CPN_DESC
+		        FROM   TB_TMTB
+		        WHERE  TMTB_SQ IN (SELECT DISTINCT TMTB1_SQ FROM ORIGINAL_ORD)
+		       )                                      AS TMTB1_DESC        /*다다익선수량할인설명*/
+		     , SUM(OO.TMTB2_DC_AMT)                   AS TMTB2_DC_AMT      /*다다익선금액할인금액*/
+		     , (SELECT GROUP_CONCAT(DISTINCT CONCAT('프로모션번호 : ',TMTB_SQ,' / ',TMTB_NM) SEPARATOR '!@!') AS CPN_DESC
+		        FROM   TB_TMTB
+		        WHERE  TMTB_SQ IN (SELECT DISTINCT TMTB2_SQ FROM ORIGINAL_ORD)
+		       )                                      AS TMTB2_DESC        /*다다익선금액할인설명*/
+		     , SUM(OO.GOODS_CPN_DC_AMT)               AS GOODS_CPN_DC_AMT  /*상품쿠폰할인금액*/
+		     , (SELECT GROUP_CONCAT(DISTINCT CONCAT('쿠폰번호 : ',C.CPN_ID,' / ',C.CPN_NM) SEPARATOR '!@!') AS CPN_DESC
+		        FROM   TB_CUST_COUPON CC
+		        INNER JOIN TB_COUPON C ON CC.CPN_ID = C.CPN_ID
+		        WHERE  CC.CUST_CPN_SQ IN (SELECT DISTINCT GOODS_CPN_SQ FROM ORIGINAL_ORD)
+		       )                                      AS GOODS_CPN_DC_DESC /*상품쿠폰할인설명*/
+		     , SUM(OO.CART_CPN_DC_AMT)                AS CART_CPN_DC_AMT   /*장바구니쿠폰할인금액*/
+		     , (SELECT CONCAT('쿠폰번호 : ',C.CPN_ID,' / ',C.CPN_NM,
+		                      ' / 구매금액 ',
+		                      CASE WHEN C.BUY_LIMIT_AMT = 0 THEN '제한없음'
+		                           ELSE CONCAT(FORMAT(C.BUY_LIMIT_AMT,0),'원 이상')
+		                      END,
+		                      ' / ',
+		                      FORMAT(C.DC_PVAL,0),
+		                      CASE WHEN C.DC_WAY = 'G240_10' THEN '원'
+		                           ELSE '%'
+		                      END,
+		                      ' 할인 / 최대할인 ',
+		                      CASE WHEN C.MAX_DC_AMT = 0 THEN '제한없음'
+		                           ELSE CONCAT(FORMAT(C.MAX_DC_AMT,0),'원')
+		                      END
+		                     ) AS CPN_DESC
+		        FROM   TB_CUST_COUPON CC
+		        INNER JOIN TB_COUPON C ON CC.CPN_ID = C.CPN_ID
+		        WHERE  CC.CUST_CPN_SQ IN (SELECT DISTINCT CART_CPN_SQ FROM ORIGINAL_ORD)
+		       )                                      AS CART_CPN_DC_DESC   /*장바구니쿠폰할인설명*/
+		     , SUM(OO.PRE_PNT_DC_AMT)                 AS PRE_PNT_DC_AMT     /*선포인트할인금액*/
+		     , SUM(OO.ORD_CURR_AMT)
+		       + IFNULL((SELECT SUM(REAL_DELV_AMT)
+		                 FROM   ORIGINAL_DELV_FEE
+		                ),0)
+		       - SUM(OO.CPN1_DC_AMT +
+		             OO.TMTB1_DC_AMT + OO.TMTB2_DC_AMT +
+		             OO.GOODS_CPN_DC_AMT + OO.CART_CPN_DC_AMT +
+		             OO.PRE_PNT_DC_AMT)               AS TOT_PAY_AMT        /*총결제금액*/
+		     , SUM(OO.REAL_ORD_AMT)
+		       + IFNULL((SELECT SUM(REAL_DELV_AMT)
+		                 FROM   ORIGINAL_DELV_FEE
+		                ),0)                          AS REAL_ORD_AMT       /*실결제금액*/
+		     , MAX(P.PAY_MEANS_NM)                    AS PAY_MEANS_NM       /*결제수단명*/
+		     , MAX(P.PAY_MEANS_DESC)                  AS PAY_MEANS_DESC     /*결제수단설명*/
+		     , SUM(OO.GFCD_USE_AMT)                   AS GFCD_USE_AMT       /*상품권사용금액*/
+		     , (SELECT GROUP_CONCAT(GFCD_USE_DESC SEPARATOR '!@!') AS GFCD_USE_DESC
+		        FROM   (
+		                SELECT CONCAT(FORMAT(SUM(CGH.GFCD_AMT),0),'원 / ',CG.GFCD_NO) AS GFCD_USE_DESC
+		                FROM   TB_CUST_GIFTCARD_HST CGH
+		                INNER JOIN TB_CUST_GIFTCARD CG ON CGH.CUST_GFCD_SQ = CG.CUST_GFCD_SQ
+		                WHERE  CGH.ORD_NO = OO.ORD_NO
+		                AND    CGH.OCCUR_GB = 'G074_12' /*상품권사용*/
+		                GROUP  BY CG.GFCD_NO
+		               ) Z
+		       )                                      AS GFCD_USE_DESC      /*상품권사용설명*/
+		     , SUM(OO.PNT_DC_AMT)                     AS PNT_DC_AMT         /*포인트할인금액*/
+		     , MAX(P.PG_CPN_AMT)                      AS PG_CPN_AMT         /*PG쿠폰금액(KCP쿠폰금액)*/
+		     , MAX(P.NPAY_PNT_AMT)                    AS NPAY_PNT_AMT       /*네이버페이포인트금액(마일리지)*/
+		     , MAX(P.NPAY_PNT_DESC)                   AS NPAY_PNT_DESC      /*네이버포인트(마일리지)설명*/
+		     , SUM(OO.SAVE_PNT_AMT)                   AS SAVE_PNT_AMT       /*적립포인트금액*/
+		     , MAX(P.CASH_RECEIP_REQ_YN)              AS CASH_RECEIP_REQ_YN /*현금영수증신청여부*/
+		FROM   ORIGINAL_ORD OO
+		INNER JOIN TB_ORDER O ON OO.ORD_NO = O.ORD_NO
+		INNER JOIN ORIGINAL_PAYMENT P ON OO.ORD_NO = P.ORD_NO
+		GROUP  BY OO.ORD_NO
+	</select>
 
 	<!-- 주문상세 > 주문상품상세 목록 -->
 	<select id="getOrderDetailList" parameterType="Order" resultType="Order">
@@ -1307,6 +1527,8 @@
 		     , A.DELV_LOC_NM
 		     , A.PG_GB
 		     , A.SUPPLY_COMP_NM
+		     , A.ORD_CHG_SQ
+		     , A.SHOT_DELV_GB
 		FROM (
 		    SELECT OD.ORD_NO
 		         , OD.ORD_EXCH_GB
@@ -1399,6 +1621,13 @@
 		         , (SELECT Z.SUPPLY_COMP_NM
 		            FROM   TB_SUPPLY_COMPANY Z
 		            WHERE  Z.SUPPLY_COMP_CD = OD.SUPPLY_COMP_CD) AS SUPPLY_COMP_NM
+		         , OCD2.ORD_CHG_SQ
+		         , CASE WHEN OD.SHOT_DELV_YN = 'Y' THEN '당일'
+		                ELSE
+		                    CASE WHEN OD.DELV_FEE_CD = 'WMS' THEN '일반'
+		                         ELSE '업체'
+		                    END
+		           END AS SHOT_DELV_GB /*총알배송구분*/
 		      FROM TB_ORDER O
 		     INNER JOIN TB_ORDER_DETAIL OD
 		        ON O.ORD_NO = OD.ORD_NO
@@ -1455,6 +1684,9 @@
 		                   GROUP BY OCD.ORD_DTL_NO
 		                      ) OCD
 		        ON OD.ORD_DTL_NO = OCD.ORD_DTL_NO
+		      LEFT OUTER JOIN TB_ORDER_CHANGE_DETAIL OCD2
+		        ON OD.ORD_DTL_NO = OCD2.CHG_ORD_DTL_NO
+		       AND OCD2.DEL_YN = 'N'
 		     WHERE 1 = 1
 		       AND OD.ORD_NO = #{ordNo}
 		       AND OD.ORD_DTL_STAT NOT IN ('G013_00', 'G013_25', 'G013_97')
@@ -1507,6 +1739,8 @@
 		     , A.DELV_LOC_NM
 		     , A.PG_GB
 		     , A.SUPPLY_COMP_NM
+		     , A.ORD_CHG_SQ
+		     , A.SHOT_DELV_GB
 		 ORDER BY A.ORD_NO
 		     , A.ORD_DTL_NO
 	</select>
@@ -1539,7 +1773,10 @@
 	<select id="getDeliveryAddrList" parameterType="Order" resultType="Order">
 		/* order.getDeliveryAddrList */
 		SELECT Z.DELV_ADDR_SQ
+		     , Z.GIFT_PACK_YN
+		     , Z.GIFT_ADDR_INP_YN
 		     , Z.EXCH_GB_NM
+		     , Z.GIFT_LIMIT_DT
 		     , Z.RECIP_NM
 		     , Z.RECIP_PHNNO
 		     , Z.RECIP_TELNO
@@ -1552,10 +1789,15 @@
 		     , Z.ORD_NO
 		  FROM (SELECT OD.DELV_ADDR_SQ
 		             , OD.ORD_EXCH_GB
-		             , CASE WHEN OD.ORD_EXCH_GB = 'O'
-		                    THEN '주문'
+		             , OD.GIFT_PACK_YN
+		             , OD.GIFT_ADDR_INP_YN
+		             , CASE WHEN OD.ORD_EXCH_GB = 'O' AND OD.GIFT_PACK_YN = 'Y' THEN '선물'
+		                    WHEN OD.ORD_EXCH_GB = 'O' AND OD.GIFT_PACK_YN = 'N' THEN '주문'
 		                    ELSE '교환'
 		               END EXCH_GB_NM
+		             , CASE WHEN OD.GIFT_PACK_YN = 'Y' AND OD.GIFT_ADDR_INP_YN = 'N' THEN O.ORD_DT + INTERVAL 3 DAY
+		                    ELSE DA.UPD_DT
+		                END AS GIFT_LIMIT_DT
 		             , DA.RECIP_NM
 		             , DA.RECIP_PHNNO
 		             , DA.RECIP_TELNO
@@ -1576,7 +1818,10 @@
 		           AND OD.ORD_DTL_STAT <![CDATA[<>]]> 'G013_97'			-- 교환철회 상품 제외
 		       ) Z
 		 GROUP BY Z.DELV_ADDR_SQ
+		     , Z.GIFT_PACK_YN
+		     , Z.GIFT_ADDR_INP_YN
 		     , Z.EXCH_GB_NM
+		     , Z.GIFT_LIMIT_DT
 		     , Z.RECIP_NM
 		     , Z.RECIP_PHNNO
 		     , Z.RECIP_TELNO
@@ -1617,6 +1862,7 @@
 		     , P.PG_TRADE_NO
 		     , P.PG_TID
 		     , P.VA_NO
+		     , P.VA_NM
 		     , DATE_FORMAT(P.PAY_DT, '%Y%m%d%H%i%S')      AS PAY_DT
 		     , P.PAY_STAT
 		     , FN_GET_CODE_NM('G016', P.PAY_STAT)         AS PAY_STAT_NM
@@ -2631,7 +2877,10 @@
 		                    ELSE DFP.DELV_FEE_CD
 		                    END AS RES_DELV_FEE_CD
 		             , DATE_FORMAT(GRS.DELV_RES_DT, '%Y.%m.%d') AS DELV_RES_DT
-		             , DFP.MIN_ORD_AMT
+		             , CASE DFP.DELV_FEE_CRITE WHEN 'G078_30' THEN 99999999
+		                                       WHEN 'G078_20' THEN 0
+		                                       ELSE DFP.MIN_ORD_AMT
+		                END AS MIN_ORD_AMT
 		             , DFP.DELV_FEE
 		             , VS.CURR_STOCK_QTY
 		             , FN_GET_APPLY_CPN1_PRICE(CA.GOODS_CD, #{frontGb}) AS CURR_PRICE

+ 18 - 5
src/main/java/com/style24/persistence/mybatis/shop/TscOrderChange.xml

@@ -63,7 +63,11 @@
 		             , ODI.REAL_ORD_AMT
 		             , OD.SUPPLY_COMP_CD
 		             , FN_GET_SUPPLY_COMP_NM(OD.SUPPLY_COMP_CD) AS SUPPLY_COMP_NM
-		             , DFP.MIN_ORD_AMT
+		             , DFP.DELV_FEE_CRITE
+		             , CASE DFP.DELV_FEE_CRITE WHEN 'G078_30' THEN 99999999
+		                                       WHEN 'G078_20' THEN 0
+		                                       ELSE DFP.MIN_ORD_AMT
+		                END                                     AS MIN_ORD_AMT
 		             , DFP.DELV_FEE                             AS ORG_DELV_FEE
 		             , DFP.RTN_DELV_FEE
 		             , DFP.RTN_DELV_FEE + DFP.RTN_DELV_FEE      AS EXC_DELV_FEE
@@ -176,8 +180,8 @@
 		        , Y.ORD_DTL_ITEM_SQ, Y.ITEM_CD, Y.ITEM_NM, Y.OPT_CD, Y.OPT_CD1, Y.OPT_CD2, Y.ITEM_QTY, Y.ORD_QTY, Y.CNCL_RTN_QTY, Y.ORD_REQ_CHG_QTY
 		        , Y.ITEM_PRICE, Y.OPT_ADD_PRICE, Y.ORD_AMT, Y.CNCL_RTN_AMT, Y.CPN1_DC_AMT, Y.TMTB1_DC_AMT, Y.TMTB2_DC_AMT, Y.GOODS_CPN_DC_AMT
 		        , Y.CART_CPN_DC_AMT, Y.PNT_DC_AMT, Y.PRE_PNT_DC_AMT, Y.GFCD_USE_AMT, Y.REAL_ORD_AMT, Y.DELV_FEE, Y.SUPPLY_COMP_CD, Y.SUPPLY_COMP_NM
-		        , Y.DELV_FEE_CD, Y.MIN_ORD_AMT, Y.ORG_DELV_FEE, Y.RTN_DELV_FEE, Y.EXC_DELV_FEE, Y.ORD_CAN_CHG_QTY, Y.ORD_CHG_OPT, Y.OPT_CD2S, Y.CURR_STOCK_QTYS
-		        , Y.SELF_GOODS_YN, Y.CHG_GB
+		        , Y.DELV_FEE_CD, Y.DELV_FEE_CRITE, Y.MIN_ORD_AMT, Y.ORG_DELV_FEE, Y.RTN_DELV_FEE, Y.EXC_DELV_FEE, Y.ORD_CAN_CHG_QTY, Y.ORD_CHG_OPT
+		        , Y.OPT_CD2S, Y.CURR_STOCK_QTYS, Y.SELF_GOODS_YN, Y.CHG_GB
 		 ORDER BY Y.DELV_FEE_CD, Y.ORD_NO, Y.ORD_DTL_NO
 	</select>
 
@@ -222,6 +226,7 @@
 		         , A.REAL_ORD_AMT
 		         , A.SUPPLY_COMP_CD
 		         , A.SUPPLY_COMP_NM
+		         , A.DELV_FEE_CRITE
 		         , A.MIN_ORD_AMT
 		         , A.ORG_DELV_FEE
 		         , A.RTN_DELV_FEE
@@ -273,7 +278,11 @@
 		             , OD.REAL_ORD_AMT
 		             , OD.SUPPLY_COMP_CD
 		             , FN_GET_SUPPLY_COMP_NM(OD.SUPPLY_COMP_CD) AS SUPPLY_COMP_NM
-		             , DFP.MIN_ORD_AMT
+		             , DFP.DELV_FEE_CRITE
+		             , CASE DFP.DELV_FEE_CRITE WHEN 'G078_30' THEN 99999999
+		                                       WHEN 'G078_20' THEN 0
+		                                       ELSE DFP.MIN_ORD_AMT
+		                END AS MIN_ORD_AMT
 		             , DFP.DELV_FEE AS ORG_DELV_FEE
 		             , DFP.RTN_DELV_FEE
 		             , DFP.RTN_DELV_FEE + DFP.RTN_DELV_FEE AS EXC_DELV_FEE
@@ -396,6 +405,7 @@
 		         , A.REAL_ORD_AMT
 		         , A.SUPPLY_COMP_CD
 		         , A.SUPPLY_COMP_NM
+		         , A.DELV_FEE_CRITE
 		         , A.MIN_ORD_AMT
 		         , A.ORG_DELV_FEE
 		         , A.RTN_DELV_FEE
@@ -3068,7 +3078,10 @@
 		         , DF.DELV_FEE
 		         , DF.DELV_CPN_DC_AMT
 		         , DF.DELV_GFCD_USE_AMT
-		         , DFP.MIN_ORD_AMT
+		         , CASE DFP.DELV_FEE_CRITE WHEN 'G078_30' THEN 99999999
+		                                   WHEN 'G078_20' THEN 0
+		                                   ELSE DFP.MIN_ORD_AMT
+		            END                                               AS MIN_ORD_AMT
 		         , DFP.DELV_FEE                                       AS ORG_DELV_FEE
 		         , DFP.RTN_DELV_FEE
 		         , DFP.RTN_DELV_FEE + DFP.RTN_DELV_FEE                AS EXC_DELV_FEE

+ 12 - 0
src/main/java/com/style24/persistence/mybatis/shop/TscScm.xml

@@ -600,6 +600,18 @@
 		             , OCD.WH_MEMO
 		             , O.ORD_NM
 		             , O.ORD_PHNNO
+		             , OD.ORD_AMT
+		             , OD.CNCL_RTN_AMT
+		             , OD.CPN1_DC_AMT
+		             , OD.TMTB1_DC_AMT
+		             , OD.TMTB2_DC_AMT
+		             , OD.GOODS_CPN_DC_AMT
+		             , OD.CART_CPN_DC_AMT
+		             , OD.PRE_PNT_DC_AMT
+		             , OD.PNT_DC_AMT
+		             , OD.REAL_ORD_AMT
+		             , OD.GFCD_USE_AMT
+		             , OD.SAVE_PNT_AMT
 		        FROM   TB_ORDER_CHANGE_DETAIL OCD
 		        INNER  JOIN TB_ORDER_CHANGE OC
 		        ON     OCD.ORD_CHG_SQ = OC.ORD_CHG_SQ