Explorar el Código

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

card007 hace 5 años
padre
commit
ad543e309b

+ 0 - 1
src/main/java/META-INF/MANIFEST.MF

@@ -1,5 +1,4 @@
 Manifest-Version: 1.0
 Manifest-Version: 1.0
-Main-Class: 
 Class-Path: spring-data-redis-2.3.3.RELEASE.jar spring-boot-autoconfigur
 Class-Path: spring-data-redis-2.3.3.RELEASE.jar spring-boot-autoconfigur
  e-2.3.3.RELEASE.jar spring-boot-starter-web-services-2.3.3.RELEASE.jar 
  e-2.3.3.RELEASE.jar spring-boot-starter-web-services-2.3.3.RELEASE.jar 
  xmlbeans-2.6.0.jar logback-classic-1.2.3.jar stax-ex-1.8.3.jar spring-a
  xmlbeans-2.6.0.jar logback-classic-1.2.3.jar stax-ex-1.8.3.jar spring-a

+ 44 - 36
src/main/java/com/style24/core/biz/service/TscFreegiftService.java

@@ -41,51 +41,59 @@ public class TscFreegiftService {
 	 */
 	 */
 	public Collection<Order> getOrderFreegift(Order order) {
 	public Collection<Order> getOrderFreegift(Order order) {
 		
 		
+		Collection<Order> freegiftGoodsApplyValList = null;
+		
 		// 1. 장바구니 담긴 상품으로 적용된 사은품 프로모션 정보 조회 (with 상품금액)
 		// 1. 장바구니 담긴 상품으로 적용된 사은품 프로모션 정보 조회 (with 상품금액)
 		Collection<Order> fregiftGoodsApplyAmtList = freegiftDao.getFreeGiftGoodsApplyAmt(order);
 		Collection<Order> fregiftGoodsApplyAmtList = freegiftDao.getFreeGiftGoodsApplyAmt(order);
 		
 		
-		int[] freegiftSqArr = new int[fregiftGoodsApplyAmtList.size()];
-		
-		int i = 0;
-		
-		// 사은품시퀀스(FREEGIFT_SQ), 사은품시퀀스합계금액(FREEGIFT_AMT)
-		for (Order fregiftGoodsApplyAmt : fregiftGoodsApplyAmtList) {
-			freegiftSqArr[i] = fregiftGoodsApplyAmt.getFreegiftSq();
-			i++;
-		}
-		
-		order.setFreegiftSqArr(freegiftSqArr);
-		
-		// 2. 사은품 적용구간 정보 조회
-		Collection<Order> freegiftGoodsApplySectionList = freegiftDao.getFreeGiftGoodsApplySection(order);
-		
-		int[] freegiftSectionSqArr = new int[fregiftGoodsApplyAmtList.size()];
-		
-		int tempFreegiftSectionSq = 0;
-		int k = 0;
-		
-		// 사은품시퀀스(FREEGIFT_SQ), 사은품시퀀스합계금액(FREEGIFT_AMT)
-		for (Order fregiftGoodsApplyAmt : fregiftGoodsApplyAmtList) {
-			int freegiftAmt 	= fregiftGoodsApplyAmt.getFreegiftAmt();
+		// 1.1 장바구니 상품으로 적용된 사은품 여부 판단
+		if (fregiftGoodsApplyAmtList.size() > 0) {
+			int[] freegiftSqArr = new int[fregiftGoodsApplyAmtList.size()];
 			
 			
-			// 사은풐구간시퀀스(FREEGIFT_SECTION_SQ, 사은품시퀀스(FREEGIFT_SQ), 사은풐구간금액(SECTION_VAL)
-			for (Order freegiftGoodsApplySection : freegiftGoodsApplySectionList) {
-				int freegiftSectionSq 	= freegiftGoodsApplySection.getFreegiftSectionSq();
-				int sectionVal 			= freegiftGoodsApplySection.getSectionVal();
+			int i = 0;
+			
+			// 사은품시퀀스(FREEGIFT_SQ), 사은품시퀀스합계금액(FREEGIFT_AMT)
+			for (Order fregiftGoodsApplyAmt : fregiftGoodsApplyAmtList) {
+				freegiftSqArr[i] = fregiftGoodsApplyAmt.getFreegiftSq();
+				i++;
+			}
+			
+			order.setFreegiftSqArr(freegiftSqArr);
+			
+			// 2. 사은품 적용구간 정보 조회
+			Collection<Order> freegiftGoodsApplySectionList = freegiftDao.getFreeGiftGoodsApplySection(order);
+			
+			// 2.1 사은품 적용구간이 있는지 판단
+			if (fregiftGoodsApplyAmtList.size() > 0) {
+				int[] freegiftSectionSqArr = new int[fregiftGoodsApplyAmtList.size()];
+				
+				int tempFreegiftSectionSq = 0;
+				int k = 0;
 				
 				
-				if (freegiftAmt > sectionVal) {
-					tempFreegiftSectionSq = freegiftSectionSq;
-				} else {
-					freegiftSectionSqArr[k] = tempFreegiftSectionSq;
-					k++;
+				// 사은품시퀀스(FREEGIFT_SQ), 사은품시퀀스합계금액(FREEGIFT_AMT)
+				for (Order fregiftGoodsApplyAmt : fregiftGoodsApplyAmtList) {
+					int freegiftAmt 	= fregiftGoodsApplyAmt.getFreegiftAmt();
+					
+					// 사은풐구간시퀀스(FREEGIFT_SECTION_SQ, 사은품시퀀스(FREEGIFT_SQ), 사은풐구간금액(SECTION_VAL)
+					for (Order freegiftGoodsApplySection : freegiftGoodsApplySectionList) {
+						int freegiftSectionSq 	= freegiftGoodsApplySection.getFreegiftSectionSq();
+						int sectionVal 			= freegiftGoodsApplySection.getSectionVal();
+						
+						if (freegiftAmt > sectionVal) {
+							tempFreegiftSectionSq = freegiftSectionSq;
+						} else {
+							freegiftSectionSqArr[k] = tempFreegiftSectionSq;
+							k++;
+						}
+					}
 				}
 				}
+				
+				// 3. 사은품 적용구간 의 적용 사은품정보조회
+				order.setFreegiftSectionSqArr(freegiftSectionSqArr);
+				freegiftGoodsApplyValList = freegiftDao.getFreeGiftGoodsApplyVal(order);
 			}
 			}
 		}
 		}
 		
 		
-		// 3. 사은품 적용구간 의 적용 사은품정보조회
-		order.setFreegiftSectionSqArr(freegiftSectionSqArr);
-		Collection<Order> freegiftGoodsApplyValList = freegiftDao.getFreeGiftGoodsApplyVal(order);
-		
 		return freegiftGoodsApplyValList;
 		return freegiftGoodsApplyValList;
 	}
 	}
 	
 	

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

@@ -683,7 +683,22 @@ public class TscOrderService {
 		
 		
 		for (Order order : cartGoodsList) {
 		for (Order order : cartGoodsList) {
 			
 			
-			// 1.1 배송정책별 상품 구분
+			// 1.1 세트상품 옵션별 배열로 담기
+			if (order.getItemNm().contains("!@!")) {
+				order.setItemNmArr(order.getItemNm().split("!@!"));
+				order.setOptCdArr(order.getOptCd().split(","));
+				order.setItemQtyArr(order.getItemQtyr().split(","));
+			} else {
+				String[] arr = {order.getItemNm()}, arr2 = {order.getOptCd()},arr3 = {order.getItemQtyr()};
+				order.setItemNmArr(arr);
+				order.setOptCdArr(arr2);
+				order.setItemQtyArr(arr3);
+			}
+			
+			// 1.2 즉시할인 적용가 * 주문수량(장바구니수량)
+			order.setCurrPrice(order.getCurrPrice() * order.getGoodsQty());
+			
+			// 1.3 배송정책별 상품 구분
 			if (order.getDelvFeeCd().equals("WMS")) {
 			if (order.getDelvFeeCd().equals("WMS")) {
 				wmsCartList.add(order);
 				wmsCartList.add(order);
 				wmsCnt++;
 				wmsCnt++;

+ 14 - 1
src/main/java/com/style24/persistence/domain/Order.java

@@ -33,6 +33,10 @@ public class Order extends TscBaseDomain {
 	private String frontGb;
 	private String frontGb;
 	private String frontGbNm;
 	private String frontGbNm;
 	private String extmallNm;
 	private String extmallNm;
+	private String custNm;
+	private String cellPhnno;
+	private String email;
+	private String delvAddrNm;
 
 
 	// 주문상세
 	// 주문상세
 	private int ordDtlNo;
 	private int ordDtlNo;
@@ -147,6 +151,7 @@ public class Order extends TscBaseDomain {
 	private String dateGbn;
 	private String dateGbn;
 	private String mallCd;
 	private String mallCd;
 	private String search;
 	private String search;
+	private int productNo;
 	
 	
 	/* Multi CheckBox 항목*/
 	/* Multi CheckBox 항목*/
 	@JsonFormat(with = JsonFormat.Feature.ACCEPT_SINGLE_VALUE_AS_ARRAY)
 	@JsonFormat(with = JsonFormat.Feature.ACCEPT_SINGLE_VALUE_AS_ARRAY)
@@ -403,7 +408,10 @@ public class Order extends TscBaseDomain {
 	Collection<Order> resCartList;
 	Collection<Order> resCartList;
 	Collection<Order> delvCartList;
 	Collection<Order> delvCartList;
 	
 	
+	@JsonFormat(with = JsonFormat.Feature.ACCEPT_SINGLE_VALUE_AS_ARRAY)
 	private int[] freegiftSqArr;
 	private int[] freegiftSqArr;
+	
+	@JsonFormat(with = JsonFormat.Feature.ACCEPT_SINGLE_VALUE_AS_ARRAY)
 	private int[] freegiftSectionSqArr;
 	private int[] freegiftSectionSqArr;
 	int freegiftAmt;
 	int freegiftAmt;
 	int freegiftSectionSq;
 	int freegiftSectionSq;
@@ -412,11 +420,16 @@ public class Order extends TscBaseDomain {
 	@JsonFormat(with = JsonFormat.Feature.ACCEPT_SINGLE_VALUE_AS_ARRAY)
 	@JsonFormat(with = JsonFormat.Feature.ACCEPT_SINGLE_VALUE_AS_ARRAY)
 	private int[] cartSqArr;		// 장바구니 일련번호 배열 (일시품절제외 조회)
 	private int[] cartSqArr;		// 장바구니 일련번호 배열 (일시품절제외 조회)
 	@JsonFormat(with = JsonFormat.Feature.ACCEPT_SINGLE_VALUE_AS_ARRAY)
 	@JsonFormat(with = JsonFormat.Feature.ACCEPT_SINGLE_VALUE_AS_ARRAY)
-	private int[] cartSqs;			// 장바구니 일련번호 배열 (일시품절포함 조회)
+	private String[] itemNmArr;		// 옵션코드
+	@JsonFormat(with = JsonFormat.Feature.ACCEPT_SINGLE_VALUE_AS_ARRAY)
+	private String[] optCdArr;		// 옵션코드
+	@JsonFormat(with = JsonFormat.Feature.ACCEPT_SINGLE_VALUE_AS_ARRAY)
+	private String[] itemQtyArr;	// 구성상품번호
 	private int cartSq;				// 장바구니 일련번호
 	private int cartSq;				// 장바구니 일련번호
 	private int pcCurrPrice;		// PC 즉시할인 적용가
 	private int pcCurrPrice;		// PC 즉시할인 적용가
 	private int goodsQty;			// 장바구니 등록 수량
 	private int goodsQty;			// 장바구니 등록 수량
 	private String jsessionId;		// SessionId
 	private String jsessionId;		// SessionId
+	private String itemQtyr;		// itemQty GROUP_CONCAT
 	private List<Integer> applyMoreBetterAmtList;	// 다다익선 금액 적용상품 리스트
 	private List<Integer> applyMoreBetterAmtList;	// 다다익선 금액 적용상품 리스트
 	private List<Integer> applyMoreBetterQtyList;	// 다다익선 수량 적용상품 리스트
 	private List<Integer> applyMoreBetterQtyList;	// 다다익선 수량 적용상품 리스트
 
 

+ 21 - 20
src/main/java/com/style24/persistence/mybatis/shop/TscFreegift.xml

@@ -22,12 +22,17 @@
 			ON     G.GOODS_CD = OP.GOODS_CD
 			ON     G.GOODS_CD = OP.GOODS_CD
 			AND    CD.OPT_CD = OP.OPT_CD
 			AND    CD.OPT_CD = OP.OPT_CD
 			WHERE  1=1
 			WHERE  1=1
-			<if test="cartSqArr != null and cartSqArr ==''">
-			AND    CA.CART_SQ IN 
-				<foreach collection="cartSqArr" item="item" index="index"  open="(" close=")" separator=",">
-					#{item}
-				</foreach>
+			<if test="custNo == 0">
+			AND    CA.CUST_NO = 0
+			AND    CA.JSESSION_ID = #{jsessionId}
 			</if>
 			</if>
+			<if test="custNo != 0">
+			AND    CA.CUST_NO = #{custNo}
+			</if>
+			AND    CA.CART_SQ IN
+			<foreach collection="cartSqArr" item="item" index="index"  open="(" close=")" separator=",">
+				#{item}
+			</foreach>
 		)
 		)
 		SELECT FGG.FREEGIFT_SQ
 		SELECT FGG.FREEGIFT_SQ
 		     , SUM(IFNULL((FGG.CURR_PRICE + FGG.ADD_PRICE) * FGG.GOODS_QTY, 0)) FREEGIFT_AMT
 		     , SUM(IFNULL((FGG.CURR_PRICE + FGG.ADD_PRICE) * FGG.GOODS_QTY, 0)) FREEGIFT_AMT
@@ -55,12 +60,12 @@
 			INNER  JOIN TB_FREEGIFT_GOODS FGG1
 			INNER  JOIN TB_FREEGIFT_GOODS FGG1
 			ON     GD.SUPPLY_COMP_CD = FGG1.TARGET_VAL
 			ON     GD.SUPPLY_COMP_CD = FGG1.TARGET_VAL
 			AND    FGG1.GOODS_GB = 'G800_20' -- 적용상품
 			AND    FGG1.GOODS_GB = 'G800_20' -- 적용상품
-			AND    FGG1.TARGET_GB= 'G260_12' -- 공급처
+			AND    FGG1.TARGET_GB= 'G260_13' -- 공급처
 			AND    FGG1.DEL_YN = 'N'
 			AND    FGG1.DEL_YN = 'N'
 			INNER  JOIN TB_FREEGIFT_GOODS FGG2
 			INNER  JOIN TB_FREEGIFT_GOODS FGG2
 			ON     GD.BRAND_CD = FGG2.TARGET_VAL
 			ON     GD.BRAND_CD = FGG2.TARGET_VAL
 			AND    FGG2.GOODS_GB = 'G800_20' -- 적용상품
 			AND    FGG2.GOODS_GB = 'G800_20' -- 적용상품
-			AND    FGG2.TARGET_GB= 'G260_11' -- 브랜드
+			AND    FGG2.TARGET_GB= 'G260_12' -- 브랜드
 			AND    FGG2.DEL_YN = 'N'
 			AND    FGG2.DEL_YN = 'N'
 		) FGG
 		) FGG
 		ON     FG.FREEGIFT_SQ = FGG.FREEGIFT_SQ 
 		ON     FG.FREEGIFT_SQ = FGG.FREEGIFT_SQ 
@@ -87,13 +92,11 @@
 		FROM   TB_FREEGIFT_SECTION FGS
 		FROM   TB_FREEGIFT_SECTION FGS
 		WHERE  1=1
 		WHERE  1=1
 		AND    FGS.DEL_YN = 'N'
 		AND    FGS.DEL_YN = 'N'
-		AND    FGS.SECTION_GB = 'G810_10' -- 금액만 처리
-		<if test="freegiftSqArr != null and freegiftSqArr ==''">
+		AND    FGS.SECTION_GB = 'G810_11' -- 금액만 처리
 		AND    FGS.FREEGIFT_SQ IN
 		AND    FGS.FREEGIFT_SQ IN
-			<foreach collection="freegiftSqArr" item="item" index="index"  open="(" close=")" separator=",">
-				#{item}
-			</foreach>
-		</if>
+		<foreach collection="freegiftSqArr" item="item" index="index"  open="(" close=")" separator=",">
+			#{item}
+		</foreach>
 		ORDER  BY FGS.FREEGIFT_SQ
 		ORDER  BY FGS.FREEGIFT_SQ
 		     , FGS.SECTION_VAL
 		     , FGS.SECTION_VAL
 	</select>
 	</select>
@@ -105,16 +108,14 @@
 		     , FGV.FREEGIFT_SQ 
 		     , FGV.FREEGIFT_SQ 
 		     , FGV.USE_POINT
 		     , FGV.USE_POINT
 		     , FGV.ITEM_QTY
 		     , FGV.ITEM_QTY
-		     , FGV.ITEM_CD
+		     , FGV.PRODUCT_NO
 		FROM   TB_FREEGIFT_VAL FGV
 		FROM   TB_FREEGIFT_VAL FGV
 		WHERE  1=1
 		WHERE  1=1
 		AND    FGV.DEL_YN = 'N'
 		AND    FGV.DEL_YN = 'N'
-		<if test="freegiftSectionSqArr != null and freegiftSectionSqArr ==''">
-		AND    FGV.FREEGIFT_SECTION_SQ IN (
-			<foreach collection="freegiftSectionSqArr" item="item" index="index"  open="(" close=")" separator=",">
-				#{item}
-			</foreach>
-		</if>
+		AND    FGV.FREEGIFT_SECTION_SQ IN
+		<foreach collection="freegiftSectionSqArr" item="item" index="index"  open="(" close=")" separator=",">
+			#{item}
+		</foreach>
 	</select>
 	</select>
 	
 	
 	
 	

+ 148 - 100
src/main/java/com/style24/persistence/mybatis/shop/TscOrder.xml

@@ -1600,96 +1600,141 @@
 	
 	
 	<!-- 장바구니 상품 목록 조회 (업체별 배송단위) -->
 	<!-- 장바구니 상품 목록 조회 (업체별 배송단위) -->
 	<select id="getCartGoodsList" parameterType="Order" resultType="Order">
 	<select id="getCartGoodsList" parameterType="Order" resultType="Order">
-		/* order.getCartGoodsList */
-		SELECT Z.*
-		  FROM (
-			SELECT CA.CART_SQ
-				 , CD.CART_DTL_SQ
-				 , BR.BRAND_ENM
-				 , G.GOODS_NM
-				 , CA.GOODS_CD
-				 , CD.ITEM_CD
-				 , OP.OPT_CD
-				 , OP.OPT_CD1
-				 , OP.OPT_CD2
-				 , CA.GOODS_QTY
-				 , G.GOODS_TYPE
-				 , G.LIST_PRICE
-				 , G.GOODS_GB
-			     , G.GOODS_STAT
-				 , G.PRE_PPNT_USABLE_YN
-				 , G.PRE_MPNT_USABLE_YN
-				 , G.MAX_ORD_QTY
-				 , G.DAY_MAX_ORD_QTY
-				 , G.GIFT_PACK_YN
-				 , G.NEW_CUST_ORD_YN
-				 , DFP.SUPPLY_COMP_CD
-				 , CASE WHEN G.SELF_GOODS_YN = 'Y' THEN 'WMS'
-						ELSE DFP.DELV_FEE_CD END AS DELV_FEE_CD
-	  			 , CASE WHEN GRS.DELV_RES_DT IS NOT NULL THEN 'RES'
-		                WHEN G.SELF_GOODS_YN = 'Y' THEN 'WMS'
-	  			        ELSE DFP.DELV_FEE_CD END AS RES_DELV_FEE_CD
-				 , GRS.DELV_RES_DT
-				 , DFP.MIN_ORD_AMT
-				 , DFP.DELV_FEE
-				 , VS.CURR_STOCK_QTY
-				 , FN_GET_APPLY_CPN1_PRICE(CA.GOODS_CD, #{frontGb}) AS CURR_PRICE
-				 , IFNULL(OP.ADD_PRICE, 0) AS OPT_ADD_PRICE
-			  FROM TB_CART CA
-			 INNER JOIN TB_CART_DETAIL CD
-				ON CA.CART_SQ = CD.CART_SQ
-			 INNER JOIN TB_GOODS G
-				ON CA.GOODS_CD = G.GOODS_CD
-			 INNER JOIN TB_OPTION OP
-				ON CD.ITEM_CD = OP.GOODS_CD
-			   AND CD.OPT_CD1 = OP.OPT_CD1
-			   AND CD.OPT_CD2 = OP.OPT_CD2
-			 INNER JOIN TB_DELV_FEE_POLICY DFP
-				ON G.DELV_FEE_CD = DFP.DELV_FEE_CD
-			 INNER JOIN TB_BRAND BR
-				ON G.BRAND_CD = BR.BRAND_CD
-			  LEFT OUTER JOIN VW_STOCK VS
-				ON CD.ITEM_CD = VS.GOODS_CD
-			   AND CD.OPT_CD = VS.OPT_CD
-			  LEFT OUTER JOIN TB_GOODS_RES_SELL GRS
-				ON CA.GOODS_CD = GRS.GOODS_CD
-			 WHERE 1 = 1
-			<if test="custNo == 0">
-			   AND CA.CUST_NO = 0
-			   AND CA.JSESSION_ID = #{jsessionId}
-			</if>
-			<if test="custNo != 0">
-			   AND CA.CUST_NO = #{custNo}
-			</if>
-			<choose>
-				<when test="cartSqArr != null and cartSqArr.length > 0">		<!-- 주문서 -->
-			   AND G.GOODS_STAT = 'G008_90'
-			   AND CA.CART_SQ IN
-					<foreach collection="cartSqArr" item="item" index="index"  open="(" close=")" separator=",">
-						#{item}
-					</foreach>
-				</when>
-				<when test="cartSqs != null and cartSqs.length > 0">			<!-- 장바구니 cartSq 존재할 경우 -->
-			   AND G.GOODS_STAT IN ('G008_90', 'G008_70')
-			   AND CA.CART_SQ IN
-					<foreach collection="cartSqs" item="item" index="index"  open="(" close=")" separator=",">
-						#{item}
-					</foreach>
-				</when>
-				<otherwise>														<!-- 장바구니 cartSq 없는 경우 -->
-			   AND G.GOODS_STAT IN ('G008_90', 'G008_70')
-				</otherwise>
-			</choose>
-		) Z
-		 ORDER BY Z.SUPPLY_COMP_CD
+		/* TscOrder.getCartGoodsList */
+		SELECT Z.CART_SQ
+			 , Z.BRAND_ENM
+			 , Z.GOODS_NM
+			 , Z.GOODS_CD
+			 , GROUP_CONCAT(Z.ITEM_NM ORDER BY Z.CART_DTL_SQ SEPARATOR '!@!') AS ITEM_NM
+			 , GROUP_CONCAT(Z.ITEM_CD ORDER BY Z.CART_DTL_SQ) AS ITEM_CD
+			 , GROUP_CONCAT(Z.OPT_CD ORDER BY Z.CART_DTL_SQ) AS OPT_CD
+			 , GROUP_CONCAT(Z.OPT_CD1 ORDER BY Z.CART_DTL_SQ) AS OPT_CD1
+			 , GROUP_CONCAT(Z.OPT_CD2 ORDER BY Z.CART_DTL_SQ) AS OPT_CD2
+			 , GROUP_CONCAT(Z.ITEM_QTY ORDER BY Z.CART_DTL_SQ) AS ITEM_QTYR
+			 , Z.GOODS_QTY
+			 , Z.GOODS_TYPE
+			 , Z.LIST_PRICE
+			 , Z.GOODS_GB
+			 , Z.GOODS_STAT
+			 , Z.PRE_PPNT_USABLE_YN
+			 , Z.PRE_MPNT_USABLE_YN
+			 , Z.MAX_ORD_QTY
+			 , Z.DAY_MAX_ORD_QTY
+			 , Z.GIFT_PACK_YN
+			 , Z.NEW_CUST_ORD_YN
+			 , Z.SUPPLY_COMP_CD
+			 , Z.DELV_FEE_CD
+			 , Z.RES_DELV_FEE_CD
+			 , Z.DELV_RES_DT
+			 , Z.MIN_ORD_AMT
+			 , Z.DELV_FEE
+			 , Z.CURR_PRICE
+			 , Z.OPT_ADD_PRICE
+			 , GI.SYS_IMG_NM
+		FROM  ( SELECT CA.CART_SQ
+					 , CD.CART_DTL_SQ
+					 , BR.BRAND_ENM
+					 , G.GOODS_NM
+					 , CA.GOODS_CD
+					 , (SELECT GOODS_NM FROM TB_GOODS WHERE GOODS_CD = CD.ITEM_CD) AS ITEM_NM
+					 , CD.ITEM_CD
+					 , OP.OPT_CD
+					 , OP.OPT_CD1
+					 , OP.OPT_CD2
+					 , CA.GOODS_QTY
+					 , CD.ITEM_QTY
+					 , G.GOODS_TYPE
+					 , G.LIST_PRICE
+					 , G.GOODS_GB
+					 , G.GOODS_STAT
+					 , G.PRE_PPNT_USABLE_YN
+					 , G.PRE_MPNT_USABLE_YN
+					 , G.MAX_ORD_QTY
+					 , G.DAY_MAX_ORD_QTY
+					 , G.GIFT_PACK_YN
+					 , G.NEW_CUST_ORD_YN
+					 , DFP.SUPPLY_COMP_CD
+					 , CASE WHEN G.SELF_GOODS_YN = 'Y' THEN 'WMS'
+							ELSE DFP.DELV_FEE_CD END AS DELV_FEE_CD
+					 , CASE WHEN GRS.DELV_RES_DT IS NOT NULL THEN 'RES'
+							WHEN G.SELF_GOODS_YN = 'Y' THEN 'WMS'
+							ELSE DFP.DELV_FEE_CD END AS RES_DELV_FEE_CD
+					 , GRS.DELV_RES_DT
+					 , DFP.MIN_ORD_AMT
+					 , DFP.DELV_FEE
+					 , VS.CURR_STOCK_QTY
+					 , FN_GET_APPLY_CPN1_PRICE(CA.GOODS_CD, #{frontGb}) AS CURR_PRICE
+					 , IFNULL(OP.ADD_PRICE, 0) AS OPT_ADD_PRICE
+					 , CASE WHEN G.SELF_GOODS_YN = 'Y' AND G.GOODS_TYPE != 'G056_S' THEN CD.OPT_CD1
+							ELSE '00' END AS COLOR_CD
+				  FROM TB_CART CA
+				 INNER JOIN TB_CART_DETAIL CD
+					ON CA.CART_SQ = CD.CART_SQ
+				 INNER JOIN TB_GOODS G
+					ON CA.GOODS_CD = G.GOODS_CD
+				 INNER JOIN TB_DELV_FEE_POLICY DFP
+					ON G.DELV_FEE_CD = DFP.DELV_FEE_CD
+				 INNER JOIN TB_BRAND BR
+					ON G.BRAND_CD = BR.BRAND_CD
+				  LEFT JOIN TB_OPTION OP
+				    ON CD.ITEM_CD = OP.GOODS_CD
+				   AND CD.OPT_CD1 = OP.OPT_CD1
+				   AND CD.OPT_CD2 = OP.OPT_CD2
+				  LEFT OUTER JOIN VW_STOCK VS
+					ON CD.ITEM_CD = VS.GOODS_CD
+				   AND CD.OPT_CD = VS.OPT_CD
+				  LEFT OUTER JOIN TB_GOODS_RES_SELL GRS
+					ON CA.GOODS_CD = GRS.GOODS_CD
+				 WHERE 1 = 1
+				   AND G.GOODS_STAT = 'G008_90'
+				<if test="custNo == 0">
+				   AND CA.CUST_NO = 0
+				   AND CA.JSESSION_ID = #{jsessionId}
+				</if>
+				<if test="custNo != 0">
+				   AND CA.CUST_NO = #{custNo}
+				</if>
+				   AND CA.CART_SQ IN
+				<foreach collection="cartSqArr" item="item" index="index"  open="(" close=")" separator=",">
+					#{item}
+				</foreach>
+			) Z
+		LEFT   OUTER JOIN TB_GOODS_IMG GI
+		ON	   Z.GOODS_CD = GI.GOODS_CD
+		AND	   Z.OPT_CD1 = GI.COLOR_CD
+		AND    GI.DEFAULT_IMG_YN = 'Y'
+		GROUP  BY Z.CART_SQ
+			 , Z.BRAND_ENM
+			 , Z.GOODS_NM
+			 , Z.GOODS_CD
+			 , Z.GOODS_QTY
+			 , Z.GOODS_TYPE
+			 , Z.LIST_PRICE
+			 , Z.GOODS_GB
+			 , Z.GOODS_STAT
+			 , Z.PRE_PPNT_USABLE_YN
+			 , Z.PRE_MPNT_USABLE_YN
+			 , Z.MAX_ORD_QTY
+			 , Z.DAY_MAX_ORD_QTY
+			 , Z.GIFT_PACK_YN
+			 , Z.NEW_CUST_ORD_YN
+			 , Z.SUPPLY_COMP_CD
+			 , Z.DELV_FEE_CD
+			 , Z.RES_DELV_FEE_CD
+			 , Z.DELV_RES_DT
+			 , Z.MIN_ORD_AMT
+			 , Z.DELV_FEE
+			 , Z.CURR_PRICE
+			 , Z.OPT_ADD_PRICE
+			 , GI.SYS_IMG_NM
+		ORDER  BY Z.SUPPLY_COMP_CD
 				, Z.DELV_FEE_CD
 				, Z.DELV_FEE_CD
 				, Z.CART_SQ
 				, Z.CART_SQ
-				, Z.CART_DTL_SQ
 	</select>
 	</select>
 	
 	
 	<!-- 고객정보 조회 -->
 	<!-- 고객정보 조회 -->
 	<select id="getCustemerInfo" parameterType="Order" resultType="Order">
 	<select id="getCustemerInfo" parameterType="Order" resultType="Order">
-		/* order.getCustemerInfo */
+		/* TscOrder.getCustemerInfo */
 		SELECT CU.CUST_NM
 		SELECT CU.CUST_NM
 		     , CU.EMAIL
 		     , CU.EMAIL
 		     , CU.CELL_PHNNO
 		     , CU.CELL_PHNNO
@@ -1701,7 +1746,7 @@
 	
 	
 	<!-- 배송지정보 조회 -->
 	<!-- 배송지정보 조회 -->
 	<select id="getDeliveryAddrInfo" parameterType="Order" resultType="Order">
 	<select id="getDeliveryAddrInfo" parameterType="Order" resultType="Order">
-		/* order.getDeliveryAddrInfo */
+		/* TscOrder.getDeliveryAddrInfo */
 		SELECT CDA.DELV_ADDR_NM
 		SELECT CDA.DELV_ADDR_NM
 		     , CDA.RECIP_ZIPCODE
 		     , CDA.RECIP_ZIPCODE
 		     , CDA.RECIP_BASE_ADDR
 		     , CDA.RECIP_BASE_ADDR
@@ -1718,7 +1763,7 @@
 	
 	
 	<!-- 포인트정보 조회 -->
 	<!-- 포인트정보 조회 -->
 	<select id="getCustPointInfo" parameterType="Order" resultType="int">
 	<select id="getCustPointInfo" parameterType="Order" resultType="int">
-		/* order.getCustPointInfo */
+		/* TscOrder.getCustPointInfo */
 		SELECT IFNULL(SUM(CP.RM_PNT_AMT), 0) AS RM_PNT_AMT
 		SELECT IFNULL(SUM(CP.RM_PNT_AMT), 0) AS RM_PNT_AMT
 		  FROM TB_CUST_POINT CP
 		  FROM TB_CUST_POINT CP
 		 WHERE 1=1
 		 WHERE 1=1
@@ -1728,7 +1773,7 @@
 	
 	
 	<!-- 상품권정보 조회 -->
 	<!-- 상품권정보 조회 -->
 	<select id="getGiftcardInfo" parameterType="Order" resultType="int">
 	<select id="getGiftcardInfo" parameterType="Order" resultType="int">
-		/* order.getGiftcardInfo */
+		/* TscOrder.getGiftcardInfo */
 		SELECT IFNULL(SUM(CG.RM_GFCD_AMT), 0) AS RM_GFCD_AMT
 		SELECT IFNULL(SUM(CG.RM_GFCD_AMT), 0) AS RM_GFCD_AMT
 		  FROM TB_CUST_GIFTCARD CG
 		  FROM TB_CUST_GIFTCARD CG
 		 WHERE 1=1
 		 WHERE 1=1
@@ -1747,31 +1792,29 @@
 		   AND TIMESTAMPDIFF(SECOND, CURRENT_DATE, AVAIL_EDDT) BETWEEN 0 AND 604800
 		   AND TIMESTAMPDIFF(SECOND, CURRENT_DATE, AVAIL_EDDT) BETWEEN 0 AND 604800
 		</if>
 		</if>
 	</select>
 	</select>
-
-	<!-- 총알배송 가능시간 조회 -->
+	
+		<!-- 총알배송 가능시간 조회 -->
 	<select id="getDailyDeliveryTimeInfo" resultType="int">
 	<select id="getDailyDeliveryTimeInfo" resultType="int">
 		/* order.getDailyDeliveryTimeInfo */
 		/* order.getDailyDeliveryTimeInfo */
-		SELECT CASE WHEN TIME_FORMAT(NOW(), '%H%i%S') > 10300
+		SELECT CASE WHEN TIME_FORMAT(NOW(), '%H%i%S') > 10000
 		            THEN 0
 		            THEN 0
 		            ELSE 1
 		            ELSE 1
 		            END  SHOT_DELV_ABLE_YN
 		            END  SHOT_DELV_ABLE_YN
 		FROM   DUAL
 		FROM   DUAL
 	</select>
 	</select>
-		
+	
 	<!-- 총알배송 가능지역 조회 -->
 	<!-- 총알배송 가능지역 조회 -->
 	<select id="getDailyDeliveryZoneInfo" parameterType="Order" resultType="int">
 	<select id="getDailyDeliveryZoneInfo" parameterType="Order" resultType="int">
-		/* order.getDailyDeliveryZoneInfo */
+		/* TscOrder.getDailyDeliveryZoneInfo */
 		SELECT COUNT(1)
 		SELECT COUNT(1)
 		  FROM TB_DAILY_DELIVERY_ZONE DC
 		  FROM TB_DAILY_DELIVERY_ZONE DC
 	 	 WHERE 1=1
 	 	 WHERE 1=1
 		   AND ZIP_NO = #{zipNo}
 		   AND ZIP_NO = #{zipNo}
 	</select>
 	</select>
 	
 	
-
-	
 	<!-- 상품쿠폰, 장바구니쿠폰 적용 상품 조회 -->
 	<!-- 상품쿠폰, 장바구니쿠폰 적용 상품 조회 -->
 	<select id="getGoodsCartCpnApplyGoodsList" parameterType="Order" resultType="Order">
 	<select id="getGoodsCartCpnApplyGoodsList" parameterType="Order" resultType="Order">
-		/* order.getGoodsCartCpnApplyGoodsList */
+		/* TscOrder.getGoodsCartCpnApplyGoodsList */
 		WITH GOODS_DATA AS (
 		WITH GOODS_DATA AS (
 			SELECT CA.GOODS_CD
 			SELECT CA.GOODS_CD
 			     , G.SUPPLY_COMP_CD
 			     , G.SUPPLY_COMP_CD
@@ -1782,12 +1825,17 @@
 			INNER  JOIN TB_GOODS G
 			INNER  JOIN TB_GOODS G
 			ON     CA.GOODS_CD = G.GOODS_CD
 			ON     CA.GOODS_CD = G.GOODS_CD
 			WHERE  1=1
 			WHERE  1=1
-			<if test="cartSqArr != null and cartSqArr ==''">
-			AND    CA.CART_SQ IN 
-				<foreach collection="cartSqArr" item="item" index="index"  open="(" close=")" separator=",">
-					#{item}
-				</foreach>
+			<if test="custNo == 0">
+			AND    CA.CUST_NO = 0
+			AND    CA.JSESSION_ID = #{jsessionId}
 			</if>
 			</if>
+			<if test="custNo != 0">
+			AND    CA.CUST_NO = #{custNo}
+			</if>
+			AND    CA.CART_SQ IN
+			<foreach collection="cartSqArr" item="item" index="index"  open="(" close=")" separator=",">
+				#{item}
+			</foreach>
 		)
 		)
 		SELECT Z.GOODS_CD
 		SELECT Z.GOODS_CD
 		     , CP.CPN_ID
 		     , CP.CPN_ID