فهرست منبع

1. 마이페이지 임시 커밋

card007 5 سال پیش
والد
کامیت
e4fb3c9013

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

@@ -12,6 +12,7 @@ import org.springframework.transaction.annotation.Transactional;
 import com.fasterxml.jackson.databind.ObjectMapper;
 import com.gagaframework.excel.env.GagaExcelConstants;
 import com.gagaframework.excel.xssf.GagaExcelResultHandler;
+import com.gagaframework.web.parameter.GagaMap;
 import com.style24.core.biz.dao.TscOrderDao;
 import com.style24.core.support.message.TscMessageByLocale;
 import com.style24.persistence.domain.Order;
@@ -700,36 +701,65 @@ public class TscOrderService {
 	 * @author card007
 	 * @since 2021. 02. 04
 	 */
-	public Collection<Order> getOrderListForMypage(Order order) {
+	public Collection<GagaMap> getOrderListForMypage(Order order) {
+		Collection<GagaMap> mapList = new ArrayList<>();
 		Collection<Order> orderList = new ArrayList<>();
 		int ordNo = 0;
+		String ordDt = "";
 		String delvFeeCd = "";
 		String ordDtlStat = "";
-		int itemCnt = 0;
-		int ordDtlStatCnt = 0;
-		
+		String shotDelvYn = "";
+		String selfGoodsYn = "";
+		String shipCompNm = "";
+		String invoiceNo = "";
+		int reviewSq = 0;
+		int index = 0;
+
 		for (Order tmpOrder : orderDao.getOrderListForMypage(order)) {
-			if (ordNo != tmpOrder.getOrdNo() || !delvFeeCd.equals(tmpOrder.getDelvFeeCd())) {
-				itemCnt = 0;
+			
+			if (ordNo != tmpOrder.getOrdNo() || !delvFeeCd.equals(tmpOrder.getDelvFeeCd()) || !ordDtlStat.equals(tmpOrder.getOrdDtlStat()) || !shotDelvYn.equals(tmpOrder.getShotDelvYn())) {
+				if (index > 0) {
+					GagaMap map = new GagaMap();
+					map.set("ordDt", ordDt);
+					map.set("shotDelvYn", shotDelvYn);
+					map.set("selfGoodsYn", selfGoodsYn);
+					map.set("ordDtlStat", ordDtlStat);
+					map.set("shipCompNm", shipCompNm);
+					map.set("invoiceNo", invoiceNo);
+					map.set("reviewSq", reviewSq);
+					map.set("orderList", orderList);
+					mapList.add(map);
+				}
+				
 				ordNo = tmpOrder.getOrdNo();
+				ordDt = tmpOrder.getOrdDt();
 				delvFeeCd = tmpOrder.getDelvFeeCd();
-			}
-			
-			if (!ordDtlStat.equals(tmpOrder.getOrdDtlStat())) {
-				ordDtlStatCnt = 0;
 				ordDtlStat = tmpOrder.getOrdDtlStat();
+				shotDelvYn = tmpOrder.getShotDelvYn();
+				selfGoodsYn = tmpOrder.getSelfGoodsYn();
+				shipCompNm = tmpOrder.getShipCompNm();
+				invoiceNo = tmpOrder.getInvoiceNo();
+				reviewSq = tmpOrder.getReviewSq();
+				orderList = new ArrayList<>();
 			}
-			
-			tmpOrder.setItemCnt(itemCnt);
-			tmpOrder.setOrdDtlStatCnt(ordDtlStatCnt);
 
 			orderList.add(tmpOrder);
 
-			itemCnt++;
-			ordDtlStatCnt++;
+			index++;
 		}
 
-		return orderList; 
+		GagaMap map = new GagaMap();
+		map.set("ordDt", ordDt);
+		map.set("shotDelvYn", shotDelvYn);
+		map.set("selfGoodsYn", selfGoodsYn);
+		map.set("ordDtlStat", ordDtlStat);
+		map.set("shipCompNm", shipCompNm);
+		map.set("invoiceNo", invoiceNo);
+		map.set("reviewSq", reviewSq);
+		map.set("orderList", orderList);
+		mapList.add(map);
+
+		return mapList; 
 	}
 
 	/**

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

@@ -434,4 +434,8 @@ public class Order extends TscBaseDomain {
 	// 마이페이지
 	private int itemCnt;
 	private int ordDtlStatCnt;
+	private String delvDesc;
+	private int reviewSq;
+	private String selfGoodsYn;
+	private String brandNm;
 }

+ 14 - 0
src/main/java/com/style24/persistence/mybatis/shop/TscOrder.xml

@@ -1874,6 +1874,7 @@
 	<select id="getOrderListForMypage" parameterType="Order" resultType="Order">
 		/* TscOrder.getOrderListForMypage */
 		SELECT O.ORD_NO
+			 , DATE_FORMAT(O.ORD_DT, '%Y.%m.%d') AS ORD_DT
 			 , OD.ORD_DTL_NO
 			 , OD.ORD_EXCH_GB
 			 , OD.GOODS_CD
@@ -1888,6 +1889,10 @@
 			 , OD.INVOICE_NO
 			 , OD.SUPPLY_COMP_CD
 			 , OD.DELV_FEE_CD
+			 , G.SELF_GOODS_YN
+			 , CONCAT(B.BRAND_ENM, ' ', B.BRAND_KNM) AS BRAND_NM
+			 , FN_GET_CODE_NM('G013', OD.ORD_DTL_STAT) AS ORD_DTL_STAT_NM
+			 , R.REVIEW_SQ
 		  FROM TB_ORDER O
 		 INNER JOIN TB_ORDER_DETAIL OD
 		    ON O.ORD_NO = OD.ORD_NO
@@ -1895,6 +1900,13 @@
 		 INNER JOIN TB_ORDER_DETAIL_ITEM ODI
 		    ON OD.ORD_NO = ODI.ORD_NO
 		   AND OD.ORD_DTL_NO = ODI.ORD_DTL_NO
+		 INNER JOIN TB_GOODS G
+		    ON OD.GOODS_CD = G.GOODS_CD
+		 INNER JOIN TB_BRAND B
+		    ON B.BRAND_CD = G.BRAND_CD
+		  LEFT OUTER JOIN TB_REVIEW R
+		    ON R.ORD_NO = OD.ORD_NO
+		   AND R.ORD_DTL_NO = OD.ORD_DTL_NO
 		<where>
 			<choose>
 				<when test='custNo != null and custNo != ""'>
@@ -1917,6 +1929,8 @@
 		 ORDER BY OD.SUPPLY_COMP_CD
 				, OD.DELV_FEE_CD
 				, OD.ORD_NO DESC
+				, G.SELF_GOODS_YN DESC
+				, OD.SHOT_DELV_YN DESC
 	</select>
 	
 	<!-- 마이페이지 주문상태 별 주문수량 조회 -->