Bladeren bron

Merge branch 'order' into develop

card007 5 jaren geleden
bovenliggende
commit
fd0a2abe3b

+ 20 - 0
src/main/java/com/style24/core/biz/dao/TscOrderChangeDao.java

@@ -256,4 +256,24 @@ public interface TscOrderChangeDao {
 	 */
 	int createSellQtyForExchange(OrderChange orderChange);
 
+	/**
+	 * 교환상품정보 조회
+	 * 
+	 * @param OrderChange - 주문 변경 정보
+	 * @return Collection<OrderChange>
+	 * @author card007
+	 * @since 2021. 02. 01
+	 */
+	Collection<Order> getExchangeInfo(Order order);
+
+	/**
+	 * 추가배송비 결제 여부 조회
+	 *
+	 * @param OrderChange - 주문 변경 정보
+	 * @return OrderChange - 주문 변경 정보
+	 * @author card007
+	 * @since 2021. 02. 01
+	 */
+	Order getAddDeliveryFeePayment(OrderChange orderChange);
+
 }

+ 50 - 0
src/main/java/com/style24/core/biz/service/TscOrderChangeService.java

@@ -652,6 +652,7 @@ public class TscOrderChangeService {
 	
 	/**
 	 * 교환신청
+	 * 
 	 * @param Order
 	 * @return Order
 	 * @author jsh77b
@@ -828,6 +829,7 @@ public class TscOrderChangeService {
 
 	/**
 	 * 교환 추가배송비 조회
+	 * 
 	 * @param Collection<Order>
 	 * @return Collection<DeliveryFee>
 	 * @author card007
@@ -872,6 +874,42 @@ public class TscOrderChangeService {
 		return result;
 	}
 
+	/**
+	 * 교환철회
+	 * 
+	 * @param OrderChange
+	 * @return GagaMap
+	 * @author card007
+	 * @since 2021. 02. 01
+	 */
+	public GagaMap exchangeCancel(OrderChange orderChange) {
+		GagaMap result = new GagaMap();
+
+		int ordNo = orderChange.getOrdNo();
+		int ordChgSq = orderChange.getOrdChgSq();
+
+		// 추가배송비 조회
+		Order payment = orderChangeDao.getAddDeliveryFeePayment(orderChange);
+
+		// 추가배송비 결제취소 처리
+		if (payment != null) {
+			
+		}
+
+		
+		// TB_ORDER_CHANGE.addPayCost > 0
+		// TB_DELIVERY_FEE.paySq <> 0
+		// TB_PAYMENT ORD_NO, ORD_CHG_SQ 조회조건 걸어서 sum(pay_amt > 0) 취소 안한놈임 
+		// PG 취소 떤짐
+		
+		// TB_ORDER_DETAIL 상태값 변경
+		// TB_ORDER_DETAIL_ITEM 상태값 변경
+		// TB_ORDER_CHANGE 상태값 변경
+		// TB_ORDER_CHANGE_DETAIL DEL_YN Y로 업데이트
+		// 
+		return result;
+	}
+
 	/**
 	 * 교환회수
 	 * @param Order
@@ -1150,4 +1188,16 @@ public class TscOrderChangeService {
 
 		return 1;
 	}
+
+	/**
+	 * 교환 정보 조회
+	 * 
+	 * @param OrderChange - 주문 변경 정보
+	 * @return Collection<OrderChange>
+	 * @author card007
+	 * @since 2021. 02. 01
+	 */
+	public Collection<Order> getExchangeInfo(Order order) {
+		return orderChangeDao.getExchangeInfo(order);
+	}
 }

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

@@ -577,6 +577,24 @@ public class TscConstants {
 		}
 	}
 
+	// 장바구니 구분
+	public enum CartGb {
+		CART("G026_BC"),			// 장바구니
+		PC_ORDER("G026_DM"),		// 바로구매(모바일)
+		MOB_ORDER("G026_DP"),		// 바로구매(PC)
+		CREATE_ORDER("G026_PP");	// 주문생성
+
+		private String value;
+
+		private CartGb(String value) {
+			this.value = value;
+		}
+
+		public String value() {
+			return value;
+		}
+	}
+
 	// 회사 정보
 	public enum Style24Infomation {
 		COMPANY_NAME("아이스타일이십사(주)"),

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

@@ -205,9 +205,11 @@ public class Order extends TscBaseDomain {
 	private String chgMemo;
 	private String chgerNm;
 	private String chgerPhnno;
+	private String chgerTelno;
 	private String chgerZipcode;
 	private String chgerBaseAddr;
 	private String chgerDtlAddr;
+	private String chgerRtnMemo;
 	private String wdInvoiceNo;
 	
 	private String supplyCompNm;
@@ -378,4 +380,6 @@ public class Order extends TscBaseDomain {
 	private String rtnLocNm;
 	private int exchangeOrdDtlNo;
 	private int exchangeOrdDtlItemSq;
+	private String wdGb;
+	private int addPayCost;
 }

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

@@ -54,6 +54,7 @@
 				 , DFP.RTN_DELV_FEE
 				 , DFP.DELV_FEE + DFP.RTN_DELV_FEE          AS EXC_DELV_FEE
 				 , X.CHG_QTY                                AS ORD_CAN_CHG_QTY
+			     , X.OPT_CD2                                AS ORD_CHG_OPT
 				 , VS.OPT_CD2S
 				 , VS.CURR_STOCK_QTYS
 				 , DL.RTN_LOC_NM
@@ -120,10 +121,17 @@
 			  ) VS
 				ON ODI.ITEM_CD = VS.GOODS_CD
 			   AND ODI.OPT_CD1 = VS.OPT_CD1
-			  LEFT OUTER JOIN TB_ORDER_CHANGE_DETAIL X
-			    ON OD.ORD_DTL_NO = X.ORD_DTL_NO
-			   AND X.DEL_YN = 'N'
-			   AND X.ORD_CHG_SQ = #{ordChgSq}
+			  LEFT OUTER JOIN (
+			      SELECT OCD.ORD_DTL_NO
+			           , OCD.CHG_QTY
+			           , ODI.OPT_CD2
+			        FROM TB_ORDER_CHANGE_DETAIL OCD
+			       INNER JOIN TB_ORDER_DETAIL_ITEM ODI
+			          ON OCD.ORD_DTL_NO = ODI.ORD_DTL_NO
+			       WHERE OCD.DEL_YN = 'N'
+			         AND OCD.ORD_CHG_SQ = #{ordChgSq}
+			  ) X
+				ON OD.ORD_DTL_NO = X.ORD_DTL_NO
 			 WHERE 1 = 1
 		<if test="ordDtlStatArr != null and ordDtlStatArr != ''">
 			   AND OD. ORD_DTL_STAT IN
@@ -137,7 +145,7 @@
 				, Z.ORD_DTL_ITEM_SQ, Z.ITEM_CD, Z.ITEM_NM, Z.OPT_CD, Z.OPT_CD1, Z.OPT_CD2, Z.ITEM_QTY, Z.ORD_QTY, Z.CNCL_RTN_QTY, Z.ORD_REQ_CHG_QTY
 				, Z.ITEM_PRICE, Z.OPT_ADD_PRICE, Z.ORD_AMT, Z.CNCL_RTN_AMT, Z.CPN1_DC_AMT, Z.TMTB1_DC_AMT, Z.TMTB2_DC_AMT, Z.GOODS_CPN_DC_AMT
 				, Z.CART_CPN_DC_AMT, Z.PNT_DC_AMT, Z.PRE_PNT_DC_AMT, Z.GFCD_USE_AMT, Z.REAL_ORD_AMT, Z.DELV_FEE, Z.SUPPLY_COMP_CD, Z.SUPPLY_COMP_NM
-				, Z.DELV_FEE_CD, Z.MIN_ORD_AMT, Z.ORG_DELV_FEE, Z.RTN_DELV_FEE, Z.EXC_DELV_FEE, Z.ORD_CAN_CHG_QTY, Z.OPT_CD2S, Z.CURR_STOCK_QTYS
+				, Z.DELV_FEE_CD, Z.MIN_ORD_AMT, Z.ORG_DELV_FEE, Z.RTN_DELV_FEE, Z.EXC_DELV_FEE, Z.ORD_CAN_CHG_QTY, Z.ORD_CHG_OPT, Z.OPT_CD2S, Z.CURR_STOCK_QTYS
 				, Z.RTN_LOC_NM, Z.RTN_LOC_ZIPCODE, Z.RTN_LOC_BASE_ADDR, Z.RTN_LOC_DTL_ADDR, Z.RTN_LOC_TELNO, Z.SELF_GOODS_YN
 		 ORDER BY Z.DELV_FEE_CD, Z.ORD_NO, Z.ORD_DTL_NO
 	</select>
@@ -1560,6 +1568,60 @@
 		 WHERE 1 = 1
 		   AND ORD_CHG_SQ = #{ordChgSq}
 	</update>
+	
+	<!-- 교환 정보 조회 -->
+	<select id="getExchangeInfo" parameterType="Order" resultType="Order">
+		/* OrderChange.getExchangeInfo */
+		SELECT OC.ORD_CHG_SQ
+			 , OCD.CHG_QTY
+			 , ODI.ITEM_CD
+			 , ODI.OPT_CD1
+			 , ODI.OPT_CD2
+			 , OC.CHGER_NM
+			 , OC.CHGER_ZIPCODE
+			 , OC.CHGER_BASE_ADDR
+			 , OC.CHGER_DTL_ADDR
+			 , OC.CHGER_TELNO
+			 , OC.CHGER_PHNNO
+			 , OC.CHGER_RTN_MEMO
+			 , DA.RECIP_NM
+			 , DA.RECIP_ZIPCODE
+			 , DA.RECIP_BASE_ADDR
+			 , DA.RECIP_DTL_ADDR
+			 , DA.RECIP_TELNO
+			 , DA.RECIP_PHNNO
+			 , DA.DELV_MEMO
+			 , OC.CHG_REASON
+		     , FN_GET_CODE_NM('G689', OC.CHG_REASON) AS CHG_REASON_NM
+			 , OC.CHG_MEMO
+			 , OC.ADD_PAY_COST
+		  FROM TB_ORDER_CHANGE OC
+		 INNER JOIN TB_ORDER_CHANGE_DETAIL OCD
+		    ON OC.ORD_CHG_SQ = OCD.ORD_CHG_SQ
+		 INNER JOIN TB_ORDER_DETAIL OD
+		    ON OCD.ORD_DTL_NO = OD.ORD_DTL_NO
+		 INNER JOIN TB_ORDER_DETAIL_ITEM ODI
+		    ON OCD.ORD_DTL_NO = ODI.ORD_DTL_NO
+		 INNER JOIN TB_DELIVERY_ADDR DA
+		    ON OD.DELV_ADDR_SQ = DA.DELV_ADDR_SQ
+		 WHERE OC.ORD_CHG_SQ = #{ordChgSq}
+	</select>
+	
+	<!-- 추가배송비 결제 여부 조회 -->
+	<select id="getAddDeliveryFeePayment" parameterType="OrderChange" resultType="Order">
+		/* OrderChange.getAddDeliveryFeePayment */
+		SELECT OC.ORD_CHG_SQ
+			 , SUM(P.PAY_AMT) AS PAY_AMT
+		  FROM TB_ORDER_CHANGE OC
+		 INNER JOIN TB_DELIVERY_FEE DF
+		    ON DF.ORD_CHG_SQ = OC.ORD_CHG_SQ
+		   AND DF.PAY_SQ <![CDATA[<>]]> 0
+		 INNER JOIN TB_PAYMENT P
+		    ON P.ORD_CHG_SQ = OC.ORD_CHG_SQ
+		 WHERE OC.ORD_CHG_SQ = #{ordChgSq}
+		   AND OC.ADD_PAY_COST > 0
+		 GROUP BY OC.ORD_CHG_SQ
+	</select>
 
 </mapper>