|
|
@@ -624,6 +624,17 @@ public class TscOrderService {
|
|
|
public int getGiftcardInfo(Order order) {
|
|
|
return orderDao.getGiftcardInfo(order);
|
|
|
}
|
|
|
+
|
|
|
+ /**
|
|
|
+ * 쿠폰정보 조회
|
|
|
+ *
|
|
|
+ * @param Order
|
|
|
+ * @author card007
|
|
|
+ * @since 2021. 02. 09
|
|
|
+ */
|
|
|
+ public int getCouponInfo(Order order) {
|
|
|
+ return orderDao.getCouponInfo(order);
|
|
|
+ }
|
|
|
|
|
|
/**
|
|
|
* 상품쿠폰, 장바구니쿠폰 적용 상품 조회
|
|
|
@@ -754,26 +765,31 @@ public class TscOrderService {
|
|
|
String selfGoodsYn = "";
|
|
|
String shipCompNm = "";
|
|
|
String invoiceNo = "";
|
|
|
+ String giftPackYn = "";
|
|
|
int reviewSq = 0;
|
|
|
int index = 0;
|
|
|
int ordDtlStatCnt = 0;
|
|
|
+ int rowspan = 0;
|
|
|
|
|
|
for (Order tmpOrder : orderDao.getOrderListForMypage(order)) {
|
|
|
+ // 주문번호, 배송구분(총알배송, 일반배송, 업체직배송), 배송정책 변경
|
|
|
if (ordNo != tmpOrder.getOrdNo() || !selfGoodsYn.equals(tmpOrder.getSelfGoodsYn()) || ("N".equals(tmpOrder.getSelfGoodsYn()) && !delvFeeCd.equals(tmpOrder.getDelvFeeCd())) || !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);
|
|
|
- orderList.get(orderList.size() - 1).setOrdDtlStatBanner("Y");
|
|
|
- map.set("orderList", orderList);
|
|
|
+ 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("giftPackYn", giftPackYn); // 선물하기여부
|
|
|
+ map.set("reviewSq", reviewSq); // 리뷰일련번호
|
|
|
+ map.set("orderList", setOrderListParameter(orderList, rowspan, ordDtlStatCnt, "Y")); // 주문내역
|
|
|
mapList.add(map);
|
|
|
}
|
|
|
|
|
|
+ // 데이터 설정 후 초기화 진행
|
|
|
ordNo = tmpOrder.getOrdNo();
|
|
|
ordDt = tmpOrder.getOrdDt();
|
|
|
delvFeeCd = tmpOrder.getDelvFeeCd();
|
|
|
@@ -783,18 +799,29 @@ public class TscOrderService {
|
|
|
shipCompNm = tmpOrder.getShipCompNm();
|
|
|
invoiceNo = tmpOrder.getInvoiceNo();
|
|
|
reviewSq = tmpOrder.getReviewSq();
|
|
|
+ giftPackYn = tmpOrder.getGiftPackYn();
|
|
|
orderList = new ArrayList<>();
|
|
|
ordDtlStatCnt = 0;
|
|
|
+ rowspan = 0;
|
|
|
} else if (index > 0 && !ordDtlStat.equals(tmpOrder.getOrdDtlStat())) {
|
|
|
- orderList.get(ordDtlStatCnt).setOrdDtlStatBanner("Y");
|
|
|
+ // 주문내역 데이터 추가
|
|
|
+ orderList = setOrderListParameter(orderList, rowspan, ordDtlStatCnt, "N");
|
|
|
+
|
|
|
+ // 상태 별 배너 설정 후 초기화 진행
|
|
|
+ ordDtlStat = tmpOrder.getOrdDtlStat();
|
|
|
+ rowspan = 0;
|
|
|
}
|
|
|
|
|
|
+ // 주문내역 설정
|
|
|
orderList.add(tmpOrder);
|
|
|
|
|
|
+ // 인덱스 처리
|
|
|
index++;
|
|
|
ordDtlStatCnt++;
|
|
|
+ rowspan++;
|
|
|
}
|
|
|
|
|
|
+ // 마지막 데이터 설정
|
|
|
GagaMap map = new GagaMap();
|
|
|
map.set("ordDt", ordDt);
|
|
|
map.set("shotDelvYn", shotDelvYn);
|
|
|
@@ -802,14 +829,44 @@ public class TscOrderService {
|
|
|
map.set("ordDtlStat", ordDtlStat);
|
|
|
map.set("shipCompNm", shipCompNm);
|
|
|
map.set("invoiceNo", invoiceNo);
|
|
|
+ map.set("giftPackYn", giftPackYn);
|
|
|
map.set("reviewSq", reviewSq);
|
|
|
- orderList.get(orderList.size() - 1).setOrdDtlStatBanner("Y");
|
|
|
- map.set("orderList", orderList);
|
|
|
+ map.set("orderList", setOrderListParameter(orderList, rowspan, ordDtlStatCnt, "Y"));
|
|
|
mapList.add(map);
|
|
|
|
|
|
return mapList;
|
|
|
}
|
|
|
|
|
|
+ /**
|
|
|
+ * 마이페이지 주문내역 데이터 추가
|
|
|
+ *
|
|
|
+ * @param List<Order>
|
|
|
+ * @return List<Order>
|
|
|
+ * @author card007
|
|
|
+ * @since 2021. 02. 08
|
|
|
+ */
|
|
|
+ private List<Order> setOrderListParameter(List<Order> orderList, int rowspan, int ordDtlStatCnt, String setLastBanner) {
|
|
|
+ // rowspan 설정
|
|
|
+ for (int i = 0;i <= rowspan;i++) {
|
|
|
+ if (i == rowspan) {
|
|
|
+ orderList.get(ordDtlStatCnt - rowspan).setRowspan(rowspan);
|
|
|
+ } else if (rowspan == 1){
|
|
|
+ orderList.get(ordDtlStatCnt - rowspan).setRowspan(1);
|
|
|
+ } else {
|
|
|
+ orderList.get(ordDtlStatCnt - rowspan).setRowspan(0);
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ // 주문상세상태값 별 배너 설정
|
|
|
+ if ("Y".equals(setLastBanner)) {
|
|
|
+ orderList.get(orderList.size() - 1).setOrdDtlStatBanner("Y");
|
|
|
+ } else {
|
|
|
+ orderList.get(ordDtlStatCnt - 1).setOrdDtlStatBanner("Y");
|
|
|
+ }
|
|
|
+
|
|
|
+ return orderList;
|
|
|
+ }
|
|
|
+
|
|
|
/**
|
|
|
* 마이페이지 주문상태 별 주문수량 조회
|
|
|
*
|