Jelajahi Sumber

Merge remote-tracking branch 'origin/jsh77b' into order

card007 5 tahun lalu
induk
melakukan
c10e1e857e

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

@@ -455,4 +455,58 @@ public interface TscOrderDao {
 	 * @since 2021. 02. 02
 	 */	
 	int getDailyDeliveryZoneInfo(Order order);
+	
+	/**
+	 * 1. 주문기본정보 등록
+	 *
+	 * @param Order - 주문 정보
+	 * @return
+	 * @author jsh77b
+	 * @since 2021. 03. 09
+	 */
+	int createOrder(Order order);
+	
+	/**
+	 * 2. 주문배송지정보 등록
+	 *
+	 * @param Order - 주문 정보
+	 * @return
+	 * @author jsh77b
+	 * @since 2021. 03. 09
+	 */
+	int createDeliveryAddr(Order order);
+	
+	/**
+	 * 3. 주문배송비정보등록 등록
+	 *
+	 * @param Order - 주문 정보
+	 * @return
+	 * @author jsh77b
+	 * @since 2021. 03. 09
+	 */
+	int createDeliveryFee(Order order);
+	
+	/**
+	 * 4. 주문상세정보등록 등록
+	 *
+	 * @param Order - 주문 정보
+	 * @return
+	 * @author jsh77b
+	 * @since 2021. 03. 09
+	 */
+	int createOrderDetail(Order order);
+	
+	/**
+	 * 5. 주문상세단품정보등록 등록
+	 *
+	 * @param Order - 주문 정보
+	 * @return
+	 * @author jsh77b
+	 * @since 2021. 03. 09
+	 */
+	int createOrderDetailItem(Order order);
+	
+	
+	
+
 }

+ 93 - 11
src/main/java/com/style24/core/biz/service/TscOrderService.java

@@ -854,11 +854,11 @@ public class TscOrderService {
 	 */
 	public Collection<Order> getDelvCpnApplyList(Collection<Order> delvFeeCdList, Collection<Order> delvCpnAllList) {
 		
-		// 배송비가 있으면 배업체코드, 배송비 배송비쿠폰에 설정
+		// 배송비가 있으면 배업체코드, 배송비 배송비쿠폰에 설정
 		for (Order delvCpn : delvCpnAllList) {
 			for (Order delvFeeCd : delvFeeCdList) {
 				if (delvFeeCd.getDelvFee() > 0) {
-					delvCpn.setCpnDcAmt(delvFeeCd.getDelvFee());
+					delvCpn.setDelvFee(delvFeeCd.getDelvFee());
 					delvCpn.setDelvFeeCd(delvFeeCd.getDelvFeeCd());
 				}
 			}
@@ -989,10 +989,8 @@ public class TscOrderService {
 		Collection<Order> resCartList 						= (Collection<Order>)new ArrayList();					// 자사 예약배송
 		Collection<Order> delvCartList 						= (Collection<Order>)new ArrayList();					// 입점 일반배송
 		Collection<Collection<Order>> delvAllCartList 		= (Collection<Collection<Order>>)new ArrayList();		// 배송전체목록
-		Collection<Collection<Order>> delvCartGoodsList 	= (Collection<Collection<Order>>)new ArrayList();		// 장바구니상품목록
 		
-		
-		List<Order> delvFeeCdList 		= (ArrayList<Order>)new ArrayList();
+		List<Order> delvFeeCdList 		= (ArrayList<Order>)new ArrayList();										// 배송업체단위목록
 		int ordAmt 						= 0; // 주문금액
 		int sumOrdAmt 					= 0; // 배송단위 주문합계금액
 		int sumDelvFee					= 0; // 전체배송금액
@@ -1141,11 +1139,6 @@ public class TscOrderService {
 		delvAllCartList.add(delvCartList);							// index 4
 		delvAllCartList.add(resCartList);							// index 5
 		
-		delvCartGoodsList.add(shotCartList);
-		delvCartGoodsList.add(wmsCartList);
-		delvCartGoodsList.add(delvCartList);
-		delvCartGoodsList.add(resCartList);
-		
 		resultMap.set("delvFeeCdCnt"		, delvFeeCdCnt);		// 배송타입건수
 		resultMap.set("shotCnt"				, shotCnt);				// 자사몰 총알배송건수
 		resultMap.set("wmsCnt"				, wmsCnt);				// 자사몰 일반배송건수(총알배송불가)
@@ -1155,7 +1148,6 @@ public class TscOrderService {
 		
 		resultMap.set("goodsTotCnt"			, goodsTotCnt);			// 전체상품건수
 		resultMap.set("delvAllCartList"		, delvAllCartList);		// 전체배송단위목록 sort
-		resultMap.set("delvCartGoodsList"	, delvCartGoodsList);	// 장바구니상품목록 sort
 		
 		resultMap.set("sumDelvFee"			, sumDelvFee);			// 배송비합계
 		resultMap.set("delvFeeCdList"		, delvFeeCdList);		// 배송업체목록
@@ -1248,5 +1240,95 @@ public class TscOrderService {
 	 */
 	public Collection<Order> getSerialCpnApplyGoodsList(Order order) {
 		return orderDao.getGoodsCartCpnApplyGoodsList(order);
+	}
+	
+	/**
+	 * 주문정보등록(사전등록)
+	 * @param Order
+	 * @return Order
+	 * @author jsh77b
+	 * @since 2021. 03. 09
+	 */
+	@Transactional("shopTxnManager")
+	public void createPreOrder(Order order) {
+		
+		// 1. 주문기본정보등록
+		orderDao.createOrder(order);
+		
+		// 2. 주문배송정보등록
+		orderDao.createDeliveryAddr(order);
+		
+		// 3. 주문배송비정보등록
+		Collection<Order> delvFeeCdList = order.getDelvFeeCdList();
+		for (Order delvFeeCd : delvFeeCdList) {
+			
+			delvFeeCd.setOrdNo(order.getOrdNo());
+			delvFeeCd.setCustNo(order.getCustNo());
+			delvFeeCd.setDelvFeeGb(TscConstants.DeliveryFeeGb.ORIGIN_DELIVERY_FEE.value());
+			
+			// TODO 보유쿠폰존재여부체크
+			// 배송비쿠폰할인금액이 존재한다면 실결제배송비용에 쿠폰할인금액을 적용
+			if (delvFeeCd.getDelvCpnDcAmt() > 0) {
+				// 배송비 > 쿠폰할인금액
+				if (delvFeeCd.getDelvFee() > delvFeeCd.getDelvCpnDcAmt()) {
+					int realDelvAmt = delvFeeCd.getDelvFee() - delvFeeCd.getDelvCpnDcAmt();
+					delvFeeCd.setRealDelvAmt(realDelvAmt);
+				} else {
+					delvFeeCd.setRealDelvAmt(0);
+				}
+			} else {
+				delvFeeCd.setRealDelvAmt(delvFeeCd.getDelvFee());
+			}
+			
+			orderDao.createDeliveryFee(delvFeeCd); // 주문배송비정보등록
+		}
+		
+		// 4. 주문상세정보등록
+		Collection<Order> orderDetailList = order.getOrderDetailList();
+		for (Order orderDetail : orderDetailList) {
+			orderDetail.setOrdNo(order.getOrdNo());
+			orderDetail.setOrdExchGb("O");
+			orderDetail.setCustNo(order.getCustNo());
+			orderDetail.setOrdDtlStat(TscConstants.OrderDetailStat.ORDER_RECEIPT.value());
+			orderDetail.setDelvAddrSq(order.getDelvAddrSq());
+			orderDetail.setGiftPackYn("N");
+			
+			// TODO 총알배송, 구매대행상품여붗 체크
+			orderDao.createOrderDetail(orderDetail); // 주문상세정보등록
+
+			orderDao.createOrderDetailItem(orderDetail); // 주문상세단품정보등록
+		}
+		
+		
+		
+		
+		
+		
+		
+		
+		
+		
+		
+		
+		
 	}
 }
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+

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

@@ -94,6 +94,7 @@ public class Order extends TscBaseDomain {
 	private String shotDelvYn;						// 총알배송여부
 	private String shotDelvUseYn;					// 총알배송사용여부(장바구니)
 	private String giftPackYn;						// 선물포장여부
+	private String foreignYn;						// 해외구매대행여부
 	
 	private String delvLocCd;						// 출고처코드
 	private String delvAssigngDt;					// 출고처지정일자
@@ -161,6 +162,7 @@ public class Order extends TscBaseDomain {
 	
 	private String foreignBuyYn;					// 해외구매대행가능여부
 	private String orderMadeYn;						// 주문제작상품여부
+	private String entryNo;							// 통관번호
 	
 	/* Multi CheckBox 항목 */
 	@JsonFormat(with = JsonFormat.Feature.ACCEPT_SINGLE_VALUE_AS_ARRAY)
@@ -557,4 +559,12 @@ public class Order extends TscBaseDomain {
 	
 	private String dispYn;
 	
+	// 주묹정보등록
+	@JsonFormat(with = JsonFormat.Feature.ACCEPT_SINGLE_VALUE_AS_ARRAY)
+	private int[] freegiftValArr;			// 다다익선 일련번호
+	private String prePntDcAmtYn; 			// 선포인트사용여부
+	Collection<Order> orderDetailList;		// 주문상세목록
+	Collection<Order> delvFeeCdList;		// 배송정보목록
+	
+	
 }

+ 346 - 3
src/main/java/com/style24/persistence/mybatis/shop/TscOrder.xml

@@ -2098,9 +2098,9 @@
 		     , CP.CPN_NM
 		     , CP.CPN_TYPE
 		     , CP.DC_WAY
-		     , CP.DC_PVAL
-		     , CP.DC_MVAL
-		     , CP.DC_AVAL
+		     , CASE WHEN #{frontGb} = 'P' THEN CP.DC_PVAL
+			        WHEN #{frontGb} = 'M' THEN CP.DC_MVAL
+			        ELSE CP.DC_AVAL END AS DC_VAL
 		     , CP.MAX_DC_AMT
 		     , CP.BUY_LIMIT_AMT
 		     , CCP.CUST_CPN_SQ
@@ -2279,6 +2279,349 @@
 			, NOW()
 		)
 	</insert>
+	
+	<!-- 주문정보등록 -->
+	<!-- 1. 주문기본정보등록 -->
+	<insert id="createOrder" parameterType="Order" keyProperty="ordNo">
+		/* TscOrder.createOrder : 주문기본정보등록 */
+		INSERT INTO TB_ORDER ( 
+		    MALL_GB
+		    , ORD_DT
+		    , PAY_DT
+		    , CUST_NO
+		    , ORD_NM
+		    , ORD_PHNNO
+		    , ORD_TELNO
+		    , ORD_EMAIL
+		    , SITE_CD
+		    , NPAY_ORD_NO
+		    , FRONT_GB
+		    , REG_NO
+		    , REG_DT
+		    , UPD_NO
+		    , UPD_DT
+		) 
+		SELECT 'G011_10'
+		     , NOW()
+		     , NOW()
+		     , CUST_NO
+		     , #{custNm}
+		     , #{recipPhnno}
+		     , #{recipTelno}
+		     , #{email}
+		     , 'G000_10'
+		     , #{npayOrdNo}
+		     , #{frontGb}
+		     , CUST_NO
+		     , NOW()
+		     , CUST_NO
+		     , NOW()
+		FROM   TB_CUSTOMER
+		WHERE  CUST_NO = #{custNo}
+	</insert>
+	
+	<!-- 2. 주문배송주소정보등록-->
+	<insert id="createDeliveryAddr" parameterType="Order" keyProperty="delvAddrSq">
+		/* TscOrder.createDeliveryAddr : 주문배송주소정보등록 */
+		INSERT INTO TB_DELIVERY_ADDR ( 
+		    RECIP_NM
+		    , RECIP_PHNNO
+		    , RECIP_TELNO
+		    , RECIP_ZIPCODE
+		    , RECIP_BASE_ADDR
+		    , RECIP_DTL_ADDR
+		    , DELV_MEMO
+		    , REG_NO
+		    , REG_DT
+		    , UPD_NO
+		    , UPD_DT
+		) VALUES (
+		    #{custNm}
+		    , #{recipPhnno}
+		    , #{recipTelno}
+		    , #{recipZipcode}
+		    , #{recipBaseAddr}
+		    , #{recipDtlAddr}
+		    , #{delvMemo}
+		    , #{custNo}
+		    , NOW()
+		    , #{custNo}
+		    , NOW()
+		)
+	</insert>
+	
+	<!-- 3. 주문배송비정보등록-->
+	<insert id="createDeliveryFee" parameterType="Order">
+		/* TscOrder.createDeliveryFee : 주문배송비정보등록 */
+		INSERT INTO TB_DELIVERY_FEE ( 
+		    PAY_SQ
+		    , ORD_NO
+		    , DELV_FEE_GB
+		    , DELV_FEE_CD
+		    , DELV_FEE
+		    , DELV_CPN_SQ
+		    , DELV_CPN_DC_AMT
+		    , REAL_DELV_AMT
+		    , ORD_CHG_SQ
+		    , SUPPLY_COMP_CD
+		    , DELV_USAC_YN
+		    , DELV_USAC_DT
+		    , REG_NO
+		    , REG_DT
+		    , UPD_NO
+		    , UPD_DT
+		) VALUES (
+		    NULL
+		    , #{ordNo}
+		    , #{delvFeeGb}
+		    , #{delvFeeCd}
+		    , #{delvFee}
+		    , #{delvCpnSq}
+		    , #{delvCpnDcAmt}
+		    , #{realDelvAmt}
+		    , NULL
+		    , #{supplyCompCd}
+		    , 'N'
+		    , NULL
+		    , #{custNo}
+		    , NOW()
+		    , #{custNo}
+		    , NOW()
+		)
+	</insert>
+	
+	<!-- 4. 주문상세정보등록-->
+	<insert id="createOrderDetail" parameterType="Order" keyProperty="ordDtlNo">
+		/* TscOrder.createOrderDetail : 주문상세정보등록 */
+		INSERT INTO TB_ORDER_DETAIL ( 
+		    ORD_NO
+		    , ORD_EXCH_GB
+		    , ORD_DTL_STAT
+		    , ORG_ORD_DTL_NO
+		    , SUPPLY_COMP_CD
+		    , GOODS_CD
+		    , DEAL_GOODS_CD
+		    , FORMAL_GB
+		    , GOODS_TYPE
+		    , LIST_PRICE
+		    , CURR_PRICE
+		    , DC_RATE
+		    , OPT_ADD_PRICE
+		    , ORD_QTY
+		    , ORD_AMT
+		    , CNCL_RTN_QTY
+		    , CNCL_RTN_AMT
+		    , CPN1_CPN_SQ
+		    , CPN1_DC_AMT
+		    , TMTB1_SQ
+		    , TMTB1_DC_AMT
+		    , TMTB2_SQ
+		    , TMTB2_DC_AMT
+		    , GOODS_CPN_SQ
+		    , GOODS_CPN_DC_AMT
+		    , CART_CPN_SQ
+		    , CART_CPN_DC_AMT
+		    , BURDEN_RATE
+		    , PNT_DC_AMT
+		    , PRE_PNT_DC_AMT
+		    , SAVE_PNT_AMT
+		    , REAL_ORD_AMT
+		    , GFCD_USE_AMT
+		    , VENDOR_ID
+		    , EXTMALL_ID
+		    , AGENT_ORDER_ID
+		    , EXTMALL_ORDER_ID
+		    , CHANGABLE_YN
+		    , CHANGE_FEE_FREE_YN
+		    , RETURNABLE_YN
+		    , RETURN_FEE_FREE_YN
+		    , SOLDOUT_YN
+		    , SOLDOUT_MEMO
+		    , SOLDOUT_REG_NO
+		    , SOLDOUT_REG_DT
+		    , DELV_ADDR_SQ
+		    , DELV_FEE_CD
+		    , SHOT_DELV_YN
+		    , GIFT_PACK_YN
+		    , GIFT_ADDR_INP_YN
+		    , MAKE_GOODS_YN
+		    , ENTRY_NO
+		    , DELV_LOC_CD
+		    , DELV_ASSIGN_DT
+		    , DELV_ASSIGN_STAT
+		    , DSTRBT_NOTE
+		    , DELV_STDT
+		    , DELV_EDDT
+		    , SHIP_COMP_CD
+		    , INVOICE_NO
+		    , INVOICE_SEND_YN
+		    , SELL_STORE_CD
+		    , SELL_FEE_RATE
+		    , AF_LINK_CD
+		    , ITHR_CD
+		    , CONTENTS_LOC
+		    , PLAN_DTL_SQ
+		    , SOCIAL_SQ
+		    , REG_NO
+		    , REG_DT
+		    , UPD_NO
+		    , UPD_DT
+		)
+		SELECT #{ordNo}                     AS ORD_NO
+		     , #{ordExchGb}                 AS ORD_EXCH_GB
+		     , #{ordDtlStat}                AS ORD_DTL_STAT
+		     , NULL                         AS ORG_ORD_DTL_NO
+		     , G.SUPPLY_COMP_CD             AS SUPPLY_COMP_CD
+		     , CA.GOODS_CD                  AS GOODS_CD
+		     , CA.DEAL_GOODS_CD             AS DEAL_GOODS_CD
+		     , G.FORMAL_GB                  AS FORMAL_GB
+		     , G.GOODS_TYPE                 AS GOODS_TYPE
+		     , G.LIST_PRICE                 AS LIST_PRICE
+		     , G.CURR_PRICE                 AS CURR_PRICE
+		     , G.DC_RATE                    AS DC_RATE
+		     , #{optAddPrice}               AS OPT_ADD_PRICE
+		     , CA.GOODS_QTY                 AS GOODS_QTY
+		     , #{ordAmt}                    AS ORD_AMT
+		     , 0                            AS CNCL_RTN_QTY
+		     , 0                            AS CNCLRTN_AMT
+		     , #{cpn1CpnSq}                 AS CPN1_CPN_SQ
+		     , #{cpn1DcAmt}                 AS CPN1_DC_AMT
+		     , #{tmtb1Sq}                   AS TMTB1_SQ
+		     , #{tmtb1DcAmt}                AS TMTB1_DC_AMT
+		     , #{tmtb2Sq}                   AS TMTB2_SQ
+		     , #{tmtb2DcAmt}                AS TMTB2_DC_AMT
+		     , #{goodsCpnSq}                AS GOODS_CPN_SQ
+		     , #{goodsCpnDcAmt}             AS GOODS_CPN_DC_AMT
+		     , #{cartCpnSq}                 AS CART_CPN_SQ
+		     , #{cartCpnDcAmt}              AS CART_CPN_DC_AMT
+		     , 0                            AS BURDEN_RATE
+		     , #{pntDcAmt}                  AS PNT_DC_AMT
+		     , #{prePntDcAmt}               AS PRE_PNT_DC_AMT
+		     , #{savePntAmt}                AS SAVE_PNT_AMT
+		     , #{realOrdAmt}                AS REAL_ORD_AMT
+		     , #{gfcdUseAmt}                AS GFCD_USE_AMT
+		     , NULL                         AS VENDOR_ID
+		     , NULL                         AS EXTMALL_ID
+		     , NULL                         AS AGENT_ORDER_ID
+		     , NULL                         AS EXTMALL_ORDER_ID
+		     , G.CHANGEABLE_YN              AS CHANGABLE_YN
+		     , G.CHANGE_FEE_FREE_YN         AS CHANGE_FEE_FREE_YN
+		     , G.RETURNABLE_YN              AS RETURNABLE_YN
+		     , G.RETURN_FEE_FREE_YN         AS RETURN_FEE_FREE_YN
+		     , 'N'                          AS SOLDOUT_YN
+		     , NULL                         AS SOLDOUT_MEMO
+		     , NULL                         AS SOLDOUT_REG_NO
+		     , NULL                         AS SOLDOUT_REG_DT
+		     , #{delvAddrSq}                AS DELV_ADDR_SQ
+		     , #{delvFeeCd}                 AS DELV_FEE_CD
+		     , #{shotDelvYn}                AS SHOT_DELV_YN
+		     , #{giftPackYn}                AS GIFT_PACK_YN
+		     , 'N'                          AS GIFT_ADDR_INP_YN
+		     , G.ORDER_MADE_YN              AS MAKE_GOODS_YN
+		     , #{entryNo}                   AS ENTRY_NO
+		     , NULL                         AS DELV_LOC_CD
+		     , NULL                         AS DELV_ASSIGN_DT
+		     , 'P'                          AS DELV_ASSIGN_STAT
+		     , NULL                         AS DSTRBT_NOTE
+		     , NULL                         AS DELV_STDT
+		     , NULL                         AS DELV_EDDT
+		     , NULL                         AS SHIP_COMP_CD
+		     , NULL                         AS INVOICE_NO
+		     , 'N'                          AS INVOICE_SEND_YN
+		     , NULL                         AS SELL_STORE_CD
+		     , G.SELL_FEE_RATE              AS SELL_FEE_RATE
+		     , CA.AF_LINK_CD                AS AF_LINK_CD
+		     , CA.ITHR_CD                   AS ITHR_CD
+		     , CA.CONTENTS_LOC              AS CONTENTS_LOC
+		     , CA.PLAN_DTL_SQ               AS PLAN_DTL_SQ
+		     , NULL                         AS SOCIAL_SQ
+		     , #{custNo}                    AS REG_NO
+		     , NOW()                        AS REG_DT
+		     , #{custNo}                    AS UPD_NO
+		     , NOW()                        AS UPD_DT
+		FROM  TB_CART CA
+		INNER JOIN TB_GOODS G
+		ON    CA.GOODS_CD = G.GOODS_CD 
+		WHERE 1=1
+		AND   CART_SQ = #{cartSq}
+	</insert>
+	
+	<!-- 5. 주문상세단품정보등록 -->
+	<insert id="createOrderDetailItem" parameterType="Order" keyProperty="ordDtlItemSq">
+		/* TscOrder.createOrderDetailItem : 주문상세단품정보등록 */
+		INSERT INTO TB_ORDER_DETAIL_ITEM ( 
+		    ORD_DTL_NO
+		    , ORD_NO
+		    , ORD_DTL_STAT
+		    , ITEM_CD
+		    , OPT_CD
+		    , OPT_CD1
+		    , OPT_CD2
+		    , SKU_MODEL_NO
+		    , PRODUCT_NO
+		    , PRODUCT_CODE
+		    , ITEM_QTY
+		    , ITEM_PRICE
+		    , OPT_ADD_PRICE
+		    , DISP_ORD
+		    , ORD_AMT
+		    , CNCL_RTN_AMT
+		    , CPN1_DC_AMT
+		    , TMTB1_DC_AMT
+		    , TMTB2_DC_AMT
+		    , GOODS_CPN_DC_AMT
+		    , CART_CPN_DC_AMT
+		    , PNT_DC_AMT
+		    , PRE_PNT_DC_AMT
+		    , SAVE_PNT_AMT
+		    , REAL_ORD_AMT
+		    , GFCD_USE_AMT
+		    , REG_NO
+		    , REG_DT
+		    , UPD_NO
+		    , UPD_DT
+		) 
+		SELECT #{ordDtlNo}                                  AS ORD_DTL_NO
+		     , #{ordNo}                                     AS ORD_NO
+		     , CD.ITEM_CD
+		     , CD.OPT_CD
+		     , CD.OPT_CD1
+		     , CD.OPT_CD2
+		     , CD.SKU_MODEL_NO 
+		     , CD.PRODUCT_NO
+		     , CD.PRODUCT_CODE
+		     , GC.QTY                                       AS ITEM_QTY
+		     , IFNULL(GC.COMPS_CURR_PRICE, G.CURR_PRICE)    AS ITEM_PRICE
+		     , OP.ADD_PRICE 
+		     , CD.DISP_ORD 
+		     , #{ordAmt}                                    AS ORD_AMT
+		     , 0                                            AS CNCL_RTN_AMT
+		     , #{cpn1DcAmt}                                 AS CPN1_DC_AMT
+		     , #{tmtb1DcAmt}                                AS TMTB1_DC_AMT
+		     , #{tmtb1DcAmt}                                AS TMTB1_DC_AMT
+		     , #{goodsCpnDcAmt}                             AS GOODS_CPN_DC_AMT
+		     , #{cartCpnDcAmt}                              AS CART_CPN_DC_AMT
+		     , #{pntDcAmt}                                  AS PNT_DC_AMT
+		     , #{prePntDcAmt}                               AS PRE_PNT_DC_AMT
+		     , #{savePntAmt}                                AS SAVE_PNT_AMT
+		     , #{realOrdAmt}                                AS REAL_ORD_AMT
+		     , #{gfcdUseAmt}                                AS GFCD_USE_AMT
+		     , #{custNo}                                    AS REG_NO
+		     , NOW()                                        AS REG_DT
+		     , #{custNo}                                    AS REG_NO
+		     , NOW()                                        AS REG_DT
+		FROM   TB_CART_DETAIL CD
+		INNER  JOIN TB_OPTION OP
+		ON     CD.ITEM_CD = OP.GOODS_CD
+		INNER  JOIN TB_GOODS G
+		ON     CD.ITEM_CD = G.GOODS_CD
+		LEFT   OUTER JOIN TB_GOODS_COMPOSE GC
+		ON     CD.ITEM_CD = GC.COMPS_GOODS_CD 
+		WHERE 1=1
+		AND    CD.CART_SQ = #{cartSq}
+	</insert>
+	
+	
 </mapper>