jsh77b 5 лет назад
Родитель
Сommit
210ae353be

+ 15 - 13
src/main/java/com/style24/core/biz/service/TscOrderService.java

@@ -695,8 +695,6 @@ public class TscOrderService {
 			}
 		}
 		
-		log.info("goodsCpnList.size() ---> {}", goodsCpnList.size());
-		
 		resultMap.set("goodsCpnList"	, goodsCpnList);
 		resultMap.set("cartCpnList"		, cartCpnList);
 		
@@ -714,32 +712,36 @@ public class TscOrderService {
 		return orderDao.getDelvCpnList(order);
 	}
 	
-	public Collection<Order> getGoodsCpnApplyList(Collection<Order> tmtbGoodsApplyList, Collection<Order> goodsCartCpnApplyGoodsList) {
-		
+	public Collection<Order> getGoodsCpnApplyList(Collection<Order> tmtbGoodsApplyList, Collection<Order> goodsCpnAllList) {
 		Collection<Order> goodsCpnApplyList = new ArrayList<Order>();
 		
+		Boolean temp = true;
+		
 		// 쿠폰대상이 있는 상품만 정리
 		for (Order tmtbGoods : tmtbGoodsApplyList) {
-			for (Order goodsCartCpn : goodsCartCpnApplyGoodsList) {
-				
+			Collection<Order> goodsCpnList = new ArrayList<Order>();
+			
+			for (Order goodsCpn : goodsCpnAllList) {
 				// 상품코드비교후 담기
-				if (tmtbGoods.getGoodsCd().equals(goodsCartCpn.getGoodsCd())) {
+				if (("A".equals(goodsCpn.getApplyScope()) || tmtbGoods.getGoodsCd().equals(goodsCpn.getGoodsCd()))) {
 					
-					Boolean temp = false;
+					temp = true;
 					
 					// 이미 담긴 상풐은 제외
-					for (Order goodsCpnApply : goodsCpnApplyList) {
+					for (Order goodsCpnApply : goodsCpnList) {
 						if (tmtbGoods.getGoodsCd().equals(goodsCpnApply.getGoodsCd())) {
-							temp = true;
+							temp = false;
 						}
 					}
 					
-					if (temp == false) {
-						goodsCpnApplyList.add(tmtbGoods);
+					if (temp) {
+						goodsCpnList.add(goodsCpn);
 					}
 				}
-				
 			}
+			
+			tmtbGoods.setGoodsCpnList(goodsCpnList);
+			goodsCpnApplyList.add(tmtbGoods);
 		}
 		
 		return goodsCpnApplyList;

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

@@ -298,6 +298,7 @@ public class Order extends TscBaseDomain {
 	private int dcPval;
 	private int dcMval;
 	private int dcAval;
+	private String applyScope;
 	
 	// 주문포인트
 	private int pntPrate;
@@ -410,6 +411,7 @@ public class Order extends TscBaseDomain {
 	Collection<Order> wmsCartList;
 	Collection<Order> resCartList;
 	Collection<Order> delvCartList;
+	Collection<Order> goodsCpnList;
 	
 	@JsonFormat(with = JsonFormat.Feature.ACCEPT_SINGLE_VALUE_AS_ARRAY)
 	private int[] freegiftSqArr;

+ 2 - 1
src/main/java/com/style24/persistence/mybatis/shop/TscOrder.xml

@@ -1890,6 +1890,7 @@
 		            ELSE CP.DC_AVAL END AS DC_VAL
 		     , CP.MAX_DC_AMT
 		     , CP.BUY_LIMIT_AMT
+		     , CP.APPLY_SCOPE
 		FROM   TB_COUPON CP
 		INNER  JOIN TB_COUPON_CUST_GRADE CGR
 		ON     CP.CPN_ID = CGR.CPN_ID
@@ -1901,7 +1902,7 @@
 		INNER  JOIN TB_COUPON_CUST_GBN CGB
 		ON     CP.CPN_ID = CGB.CPN_ID
 		AND    CGB.USABLE_CUST_GB = CT.CUST_GB
-		INNER  JOIN (
+		LEFT   OUTER JOIN (
 				SELECT X.*
 				FROM (
 					SELECT CR.CPN_ID