Przeglądaj źródła

이태영 - 20210205 장바구니 화면 로직 수정 중

xodud1202 5 lat temu
rodzic
commit
b230384e2c

+ 47 - 0
src/main/java/com/style24/core/support/env/TscConstants.java

@@ -561,6 +561,38 @@ public class TscConstants {
 		}
 	}
 
+	// 상품 상태
+	public enum GoodsStat {
+		SOLDOUT("G008_70"),	// 일시 품절
+		APPR("G008_90");		// 승인완료
+
+		private String value;
+		private GoodsStat(String value) {
+			this.value = value;
+		}
+
+		public String value() {
+			return value;
+		}
+	}
+
+	// 상품 구분
+	public enum GoodsGb {
+		BASE("G800_10"),		// 기본상품
+		APPLY("G800_20"),		// 적용상품
+		NONE("G800_30"),		// 제외상품
+		ALL("G800_40");			// ALL
+
+		private String value;
+		private GoodsGb(String value) {
+			this.value = value;
+		}
+
+		public String value() {
+			return value;
+		}
+	}
+
 	// 할인 적용 구분
 	public enum ApplyGb {
 		QTY("G810_10"),				// 수량
@@ -576,6 +608,21 @@ public class TscConstants {
 		}
 	}
 
+	// 할인 방식 구분
+	public enum DcWay {
+		AMT("G240_10"),				// 할인금액
+		RATE("G240_11");				// 할인율
+
+		private String value;
+		private DcWay(String value) {
+			this.value = value;
+		}
+
+		public String value() {
+			return value;
+		}
+	}
+
 	// 쿠폰유형
 	public enum CpnType {
 		NOW_DC_CPN("G230_10"),		// 즉시 할인 쿠폰

+ 6 - 3
src/main/java/com/style24/persistence/domain/Order.java

@@ -404,12 +404,15 @@ public class Order extends TscBaseDomain {
 	private List<Integer> applyMoreBetterQtyList;	// 다다익선 수량 적용상품 리스트
 
 	// 다다익선
-	private String applyGb;							// 다다익선 할인 기준
-	private String applyQtySectionYn;				// 다다익선 적용 여부
-	private String applyAmtSectionYn;				// 다다익선 적용 여부
+	@JsonFormat(with = JsonFormat.Feature.ACCEPT_SINGLE_VALUE_AS_ARRAY)
+	private int[] tmtbSqs;			// 다다익선 일련번호
 	private int applyAmtSectionVal;					// 적용 조건
 	private int applyQtySectionVal;					// 적용 조건
 	private int sectionVal;							// 다다익선 조건
 	private int tmtbSumQty;							// 장바구니 수량 다다익선 총계
 	private int tmtbSumAmt;							// 장바구니 금액 다다익선 총계
+	private String goodsGb;
+	private String applyGb;							// 다다익선 할인 기준
+	private String applyQtySectionYn;				// 다다익선 적용 여부
+	private String applyAmtSectionYn;				// 다다익선 적용 여부
 }

+ 12 - 5
src/main/java/com/style24/persistence/mybatis/shop/TscOrder.xml

@@ -1615,7 +1615,6 @@
 				 , CA.GOODS_QTY
 				 , G.GOODS_TYPE
 				 , G.LIST_PRICE
-				 , G.CURR_PRICE
 				 , G.GOODS_GB
 			     , G.GOODS_STAT
 				 , G.PRE_PPNT_USABLE_YN
@@ -1634,7 +1633,8 @@
 				 , DFP.MIN_ORD_AMT
 				 , DFP.DELV_FEE
 				 , VS.CURR_STOCK_QTY
-				 , FN_GET_APPLY_CPN1_PRICE(CA.GOODS_CD, 'P') AS PC_CURR_PRICE
+				 , FN_GET_APPLY_CPN1_PRICE(CA.GOODS_CD, #{frontGb}) AS CURR_PRICE
+				 , OP.ADD_PRICE AS OPT_ADD_PRICE
 			  FROM TB_CART CA
 			 INNER JOIN TB_CART_DETAIL CD
 				ON CA.CART_SQ = CD.CART_SQ
@@ -1647,7 +1647,7 @@
 				ON G.DELV_FEE_CD = DFP.DELV_FEE_CD
 			 INNER JOIN TB_BRAND BR
 				ON G.BRAND_CD = BR.BRAND_CD
-			 INNER JOIN VW_STOCK VS
+			  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
@@ -1661,14 +1661,21 @@
 			   AND CA.CUST_NO = #{custNo}
 			</if>
 			<choose>
-				<when test="cartSqArr != null and cartSqArr.length > 0">
+				<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>
-				<otherwise>
+				<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>