瀏覽代碼

주문상세 개발중
주문상세 관련 팝업 개발중

jsh77b 5 年之前
父節點
當前提交
1606924d62

+ 22 - 2
style24.admin/src/main/java/com/style24/admin/biz/dao/TsaOrderDao.java

@@ -290,7 +290,7 @@ public interface TsaOrderDao {
 	Collection<Order> getOrderDetailHistoryList(Order order);
 	
 	/**
-	 * 사용 쿠폰내역 팝업 화면
+	 * 쿠폰사용 내역 팝업 화면
 	 *
 	 * @param Order - 주문 정보
 	 * @return
@@ -300,7 +300,7 @@ public interface TsaOrderDao {
 	Collection<Order> getOrderDiscountCouponList(Order order);
 	
 	/**
-	 * 사용 포인트내역 팝업 화면
+	 * 포인트사용 내역 팝업 화면
 	 *
 	 * @param Order - 주문 정보
 	 * @return
@@ -309,6 +309,26 @@ public interface TsaOrderDao {
 	 */
 	Collection<Order> getOrderDiscountPointList(Order order);
 	
+	/**
+	 * 상품권사용 내역 팝업 화면
+	 *
+	 * @param Order - 주문 정보
+	 * @return
+	 * @author jsh77b
+	 * @since 2020. 12. 16
+	 */
+	Collection<Order> getOrderGiftcardHstList(Order order);
+	
+	/**
+	 * 다다익선적용 내역 팝업 화면
+	 *
+	 * @param Order - 주문 정보
+	 * @return
+	 * @author jsh77b
+	 * @since 2020. 12. 16
+	 */
+	Collection<Order> getOrderTmtbHstList(Order order);
+	
 	
 }
 

+ 24 - 2
style24.admin/src/main/java/com/style24/admin/biz/service/TsaOrderService.java

@@ -507,7 +507,7 @@ public class TsaOrderService {
 	}
 	
 	/**
-	 * 사용 쿠폰내역 팝업 화면
+	 * 쿠폰사용 내역 팝업 화면
 	 * @param Order
 	 * @return Order
 	 * @author jsh77b
@@ -518,7 +518,7 @@ public class TsaOrderService {
 	}
 	
 	/**
-	 * 사용 포인트내역 팝업 화면
+	 * 포인트사용 내역 팝업 화면
 	 * @param Order
 	 * @return Order
 	 * @author jsh77b
@@ -528,6 +528,28 @@ public class TsaOrderService {
 		return orderDao.getOrderDiscountPointList(order);
 	}
 	
+	/**
+	 * 상품권사용 내역 팝업 화면
+	 * @param Order
+	 * @return Order
+	 * @author jsh77b
+	 * @since 2020. 12. 16
+	 */
+	public Collection<Order> getOrderGiftcardHstList(Order order) {
+		return orderDao.getOrderGiftcardHstList(order);
+	}
+	
+	/**
+	 * 다다익선적용 내역 팝업 화면
+	 * @param Order
+	 * @return Order
+	 * @author jsh77b
+	 * @since 2020. 12. 16
+	 */
+	public Collection<Order> getOrderTmtbHstList(Order order) {
+		return orderDao.getOrderTmtbHstList(order);
+	}
+	
 	
 	
 	

+ 48 - 2
style24.admin/src/main/java/com/style24/admin/biz/web/TsaOrderController.java

@@ -502,7 +502,7 @@ public class TsaOrderController extends TsaBaseController {
 	}
 	
 	/**
-	 * 사용 쿠폰내역 팝업 화면
+	 * 쿠폰사용 내역 팝업 화면
 	 * 
 	 * @param ordNo - 주문번호
 	 * @return ModelAndView
@@ -525,7 +525,7 @@ public class TsaOrderController extends TsaBaseController {
 	}
 	
 	/**
-	 * 사용 포인트내역 팝업 화면
+	 * 포인트사용 내역 팝업 화면
 	 * 
 	 * @param ordNo - 주문번호
 	 * @return ModelAndView
@@ -546,6 +546,52 @@ public class TsaOrderController extends TsaBaseController {
 		mav.setViewName("order/OrderDetailPointHst");
 		return mav;
 	}
+	
+	/**
+	 * 상품권사용 내역 팝업 화면
+	 * 
+	 * @param ordNo - 주문번호
+	 * @return ModelAndView
+	 * @author jsh77b
+	 * @since 2020. 12. 16
+	 */
+	@GetMapping("/detail/giftcard/hst/form/{ordNo}")
+	@ResponseBody
+	public ModelAndView detailGiftcardHstFrom(@PathVariable(value = "ordNo") int ordNo) {
+
+		Order order = new Order();
+		ModelAndView mav = new ModelAndView();
+
+		order.setOrdNo(ordNo);
+		Collection<Order> orderGiftcardHstList = orderService.getOrderGiftcardHstList(order);
+
+		mav.addObject("orderGiftcardHstList", orderGiftcardHstList);
+		mav.setViewName("order/OrderDetailGiftcardHst");
+		return mav;
+	}
+	
+	/**
+	 * 다다익선적용 내역 팝업 화면
+	 * 
+	 * @param ordNo - 주문번호
+	 * @return ModelAndView
+	 * @author jsh77b
+	 * @since 2020. 12. 16
+	 */
+	@GetMapping("/detail/tmtb/hst/form/{ordNo}")
+	@ResponseBody
+	public ModelAndView detailTmtbHstFrom(@PathVariable(value = "ordNo") int ordNo) {
+
+		Order order = new Order();
+		ModelAndView mav = new ModelAndView();
+
+		order.setOrdNo(ordNo);
+		Collection<Order> orderTmtbHstList = orderService.getOrderTmtbHstList(order);
+
+		mav.addObject("orderTmtbHstList", orderTmtbHstList);
+		mav.setViewName("order/OrderDetailTmtbHst");
+		return mav;
+	}
 }
 
 

+ 21 - 1
style24.admin/src/main/java/com/style24/persistence/domain/Order.java

@@ -279,7 +279,27 @@ public class Order extends TscBaseDomain {
 	private int dcMval;
 	private int dcAval;
 	
-		
+	// 주문포인트
+	private int pntPrate;
+	private int pntMrate;
+	private int pntAmt;
+	private String occurGb;
+	private String occurGbNm;
+	private String occurDtlDesc;
+	
+	// 주문상품권
+	private String gfcdNm;
+	private String gfcdNo;
+	private int gfcdAmt;
+	private int chgGfcdAmt;
+	private int usGfcdAmt;
+	private int rmGfcdAmt;
+	
+	// 다다익선
+	private int tmtbSq;
+	private String tmtbNm;
+	private int tmtbDcAmt;
+
 }
 
 

+ 135 - 19
style24.admin/src/main/java/com/style24/persistence/mybatis/shop/TsaOrder.xml

@@ -634,22 +634,35 @@
 	<!-- 주문상세 > 배송정보 -->
 	<select id="getDeliveryAddrList" parameterType="Order" resultType="Order">
 		/* order.getDeliveryAddrList */
-		SELECT OD.DELV_ADDR_SQ 
-		     , DA.RECIP_NM 
-		     , DA.RECIP_PHNNO 
-		     , DA.RECIP_TELNO 
-		     , DA.RECIP_ZIP_NO 
-		     , DA.RECIP_BASE_ADDR
-		     , DA.RECIP_DTL_ADDR
-		     , O.ORD_EMAIL
-		     , DA.DELV_MEMO
-		FROM   TB_ORDER_DETAIL OD
-		INNER  JOIN TB_ORDER O
-		ON     OD.ORD_NO = O.ORD_NO
-		INNER  JOIN TB_DELIVERY_ADDR DA
-		ON     OD.DELV_ADDR_SQ  = DA.DELV_ADDR_SQ
-		WHERE  1=1
-		AND    OD.ORD_NO = #{ordNo}
+		SELECT Z.*
+		FROM   (
+			SELECT OD.DELV_ADDR_SQ 
+			     , DA.RECIP_NM 
+			     , DA.RECIP_PHNNO 
+			     , DA.RECIP_TELNO 
+			     , DA.RECIP_ZIP_NO 
+			     , DA.RECIP_BASE_ADDR
+			     , DA.RECIP_DTL_ADDR
+			     , O.ORD_EMAIL
+			     , DA.DELV_MEMO
+			FROM   TB_ORDER_DETAIL OD
+			INNER  JOIN TB_ORDER O
+			ON     OD.ORD_NO = O.ORD_NO
+			INNER  JOIN TB_DELIVERY_ADDR DA
+			ON     OD.DELV_ADDR_SQ  = DA.DELV_ADDR_SQ
+			WHERE  1=1
+			AND    OD.ORD_NO = #{ordNo}
+			GROUP  BY OD.DELV_ADDR_SQ 
+			     , DA.RECIP_NM 
+			     , DA.RECIP_PHNNO 
+			     , DA.RECIP_TELNO 
+			     , DA.RECIP_ZIP_NO 
+			     , DA.RECIP_BASE_ADDR
+			     , DA.RECIP_DTL_ADDR
+			     , O.ORD_EMAIL
+			     , DA.DELV_MEMO
+		) Z
+		ORDER  BY Z.DELV_ADDR_SQ
 	</select>
 	
 	<!-- 주문상세 > 결제정보 -->
@@ -674,6 +687,8 @@
 	<!-- 주문상세 > 배송비정보 -->
 	<select id="getDeliveryFeeList" parameterType="Order" resultType="Order">
 		/* order.getDeliveryFeeList */
+		SELECT Z.*
+		FROM   (
 		SELECT DF.DELV_FEE_GB 
 		     , FN_GET_CODE_NM('G018', DF.DELV_FEE_GB) AS DELV_FEE_GB_NM
 		     , DF.DELV_FEE
@@ -684,6 +699,14 @@
 		FROM   TB_DELIVERY_FEE DF
 		WHERE  1=1
 		AND    DF.ORD_NO = #{ordNo}
+		) Z
+		GROUP  BY Z.DELV_FEE_GB 
+		     , Z.DELV_FEE_GB_NM
+		     , Z.DELV_FEE
+		     , Z.DELV_USAC_YN 
+		     , Z.DELV_USAC_DT 
+		     , Z.SUPPLY_COMP_CD 
+		     , Z.DELV_FEE_SQ
 	</select>
 	
 	<!-- 주문상세 > 취소/반품/교환요청 정보 -->
@@ -759,6 +782,7 @@
 		FROM   TB_COUNSEL CS
 		WHERE  1=1
 		AND    CS.REL_ORD_NO = #{ordNo}
+		ORDER  BY CS.REG_DT DESC
 	</select>
 	
 	<!-- 주문상세 > 관리자메모 -->
@@ -875,6 +899,7 @@
 	<delete id="deleteEntryExcelDownTmp" parameterType="Order">
 		/* TsbOrder.deleteEntryExcelDownTmp */
 		DELETE FROM TB_ENTRY_UPLOAD_EXCEL
+		WHERE  1=1
 	</delete>
 	
 	<!-- 주문상세정보 변경 (입점) -->
@@ -1309,7 +1334,7 @@
 		ORDER  BY ODH.REG_DT DESC
 	</select>
 	
-	<!-- 주문상세 > 사용 쿠폰내역 팝업 화면 -->
+	<!-- 주문상세 > 쿠폰사용내역 팝업 화면 -->
 	<select id="getOrderDiscountCouponList" parameterType="Order" resultType="Order">
 		/* order.getOrderDiscountCouponList */
 		WITH COUPON_DATA AS (
@@ -1389,25 +1414,116 @@
 		ORDER  BY DISP_ORD
 	</select>
 	
-	<!-- 주문상세 > 사용 쿠폰내역 팝업 화면 -->
+	<!-- 주문상세 > 포인트사용내역 -->
 	<select id="getOrderDiscountPointList" parameterType="Order" resultType="Order">
 		/* order.getOrderDiscountPointList */
 		SELECT OD.ORD_NO
 		     , OD.ORD_DTL_NO
 		     , OD.GOODS_CD
+		     , G.PNT_PRATE 
+		     , G.PNT_MRATE 
+		     , OD.CURR_PRICE
+		     , OD.REAL_ORD_AMT 
 		     , CPH.PNT_AMT
 		     , CPH.OCCUR_GB 
 		     , CPH.OCCUR_DTL_DESC 
-		     , CPH.REG_DT
+		     , DATE_FORMAT(CPH.REG_DT,'%Y%m%d%H%i%S') AS REG_DT
 		FROM   TB_ORDER_DETAIL OD
 		INNER  JOIN TB_CUST_POINT_HST CPH
 		ON     OD.ORD_DTL_NO = CPH.ORD_DTL_NO
 		AND    OD.ORD_NO = CPH.ORD_NO
+		INNER  JOIN TB_GOODS G
+		ON     OD.GOODS_CD = G.GOODS_CD
 		WHERE  1=1
 		AND    OD.ORD_NO = #{ordNo}
 		ORDER  BY CPH.REG_DT DESC
 	</select>
 	
+	<!-- 주문상세 > 상품권사용내역 -->
+	<select id="getOrderGiftcardHstList" parameterType="Order" resultType="Order">
+		/* order.getOrderGiftcardHstList */
+		SELECT CG.CUST_GFCD_SQ 
+		     , CG.CHG_GFCD_AMT 
+		     , CG.GFCD_NM 
+		     , CG.GFCD_NO 
+		     , CG.CHG_GFCD_AMT 
+		     , CG.US_GFCD_AMT 
+		     , CG.RM_GFCD_AMT 
+		     , OD.ORD_NO
+		     , OD.ORD_DTL_NO
+		     , OD.GOODS_CD 
+		     , CGH.GFCD_AMT
+		     , CGH.OCCUR_GB 
+		     , CGH.OCCUR_DTL_DESC 
+		     , DATE_FORMAT(CGH.REG_DT,'%Y%m%d%H%i%S') AS REG_DT
+		     , CG.CUST_GFCD_SQ 
+		FROM   TB_ORDER_DETAIL OD
+		INNER  JOIN TB_CUST_GIFTCARD_HST CGH
+		ON     OD.ORD_DTL_NO = CGH.ORD_DTL_NO
+		AND    OD.ORD_NO = CGH.ORD_NO
+		INNER  JOIN TB_CUST_GIFTCARD CG
+		ON     CGH.CUST_GFCD_SQ  = CG.CUST_GFCD_SQ 
+		INNER  JOIN TB_GOODS G
+		ON     OD.GOODS_CD = G.GOODS_CD
+		WHERE  1=1
+		AND    OD.ORD_NO = #{ordNo}
+		ORDER  BY CUST_GFCD_SQ
+		     , OD.ORD_NO
+		     , OD.ORD_DTL_NO
+	</select>
+	
+	
+	<!-- 주문상세 > 다다익선적용내역 -->
+	<select id="getOrderTmtbHstList" parameterType="Order" resultType="Order">
+		/* order.getOrderTmtbHstList */
+		WITH TMTB_DATA AS (
+			SELECT TM1.TMTB_SQ			AS  TMTB1_SQ
+			     , TM1.TMTB_NM			AS  TMTB1_NM
+			     , OD.TMTB1_DC_AMT
+			     , OD.ORD_NO
+			     , OD.ORD_DTL_NO
+			     , OD.REG_NO
+			     , OD.REG_DT
+			     , OD.GOODS_CD
+			     , TM2.TMTB_SQ			AS  TMTB2_SQ
+			     , TM2.TMTB_NM			AS  TMTB2_NM
+			     , OD.TMTB2_DC_AMT
+			FROM   TB_ORDER_DETAIL OD
+			INNER  JOIN TB_TMTB TM1
+			ON     OD.TMTB1_SQ = TM1.TMTB_SQ 
+			INNER  JOIN TB_TMTB TM2
+			ON     OD.TMTB2_SQ = TM2.TMTB_SQ 
+			WHERE  1=1
+			AND    OD.ORD_NO = 9
+		)
+		SELECT Z.*
+		FROM (
+			SELECT 1                    AS DISP_ORD
+			     , TD.TMTB1_SQ        	AS TMTB_SQ
+			     , TD.TMTB1_NM			AS TMTB_NM
+			     , TD.TMTB1_DC_AMT      AS TMTB_DC_AMT
+			     , TD.ORD_NO
+			     , TD.ORD_DTL_NO
+			     , TD.GOODS_CD
+			     , TD.REG_NO
+			     , DATE_FORMAT(TD.REG_DT,'%Y%m%d%H%i%S') AS REG_DT
+			FROM   TMTB_DATA TD
+			UNION  ALL
+			SELECT 2                    AS DISP_ORD
+			     , TD.TMTB2_SQ        	AS TMTB_SQ
+			     , TD.TMTB2_NM			AS TMTB_NM
+			     , TD.TMTB2_DC_AMT      AS TMTB_DC_AMT
+			     , TD.ORD_NO
+			     , TD.ORD_DTL_NO
+			     , TD.GOODS_CD
+			     , TD.REG_NO
+			     , DATE_FORMAT(TD.REG_DT,'%Y%m%d%H%i%S') AS REG_DT
+			FROM   TMTB_DATA TD
+		) Z
+		WHERE  1=1
+		AND    Z.TMTB_SQ IS NOT NULL
+		ORDER  BY Z.DISP_ORD
+	</select>
 	
 	
 </mapper>

+ 7 - 7
style24.admin/src/main/webapp/WEB-INF/views/order/OrderDetailCouponHst.html

@@ -13,7 +13,7 @@
  * 1.0  2020.12.16   jsh77b       최초 작성
  *******************************************************************************
  -->
-<div class="modalPopup" data-width="900">
+<div class="modalPopup" data-width="1000">
 	<div class="panelStyle">
 		<div class="panelTitle">
 			<h2>쿠폰 내역</h2>
@@ -36,14 +36,14 @@ var orderCouponHstList = [[${orderCouponHstList}]];
 //specify the columns
 var columnDefsOrderCouponInfo = [
 	{headerName: "쿠폰구분", 			field: "cpnType", 	width: 100, cellClass: 'text-center'},
-	{headerName: "상품/공급처", 		field: "targetCd1", width: 160, cellClass: 'text-center'},
+	{headerName: "상품코드/공급처코드", 	field: "targetCd1", width: 160, cellClass: 'text-center'},
 	{headerName: "주문상세/배송정책", 	field: "targetCd2", width: 160, cellClass: 'text-center'},
 	{headerName: "쿠폰ID", 			field: "cpnSq", 	width: 100, cellClass: 'text-center'},
-	{headerName: "쿠폰명", 			field: "cpnNm", 	width: 120, cellClass: 'text-center'},
+	{headerName: "쿠폰명", 			field: "cpnNm", 	width: 140, cellClass: 'text-center'},
 	{
 		headerName			: "웹 할인금액/율"
 		, field				: "dcPval"
-		, width				: 140
+		, width				: 120
 		, cellClass			: 'text-center'
 		, valueFormatter	: function(params) {
 			return (params.data.dcWay == '10') ? params.value.addComma() + '원' : params.value.addComma() + '%';}	
@@ -51,7 +51,7 @@ var columnDefsOrderCouponInfo = [
 	{
 		headerName			: "모바일 할인금액/율"
 		, field				: "dcMval"
-		, width				: 150
+		, width				: 120
 		, cellClass			: 'text-center'
 		, valueFormatter	: function(params) {
 			return (params.data.dcWay == '10') ? params.value.addComma() + '원' : params.value.addComma() + '%';
@@ -60,7 +60,7 @@ var columnDefsOrderCouponInfo = [
 	{
 		headerName			: "판매상품가격"
 		, field				: "ordAmt"
-		, width				: 120
+		, width				: 100
 		, cellClass			: 'text-center'
 		, valueFormatter	: function(params) {
 			return params.value.addComma();
@@ -69,7 +69,7 @@ var columnDefsOrderCouponInfo = [
 	{
 		headerName			: "실할인금액"
 		, field				: "cpnDcAmt"
-		, width				: 120
+		, width				: 100
 		, cellClass			: 'text-center'
 		, valueFormatter	: function(params) {
 			return params.value.addComma();

+ 37 - 19
style24.admin/src/main/webapp/WEB-INF/views/order/OrderDetailForm.html

@@ -171,7 +171,7 @@ var columnDefsOrderInfo = [
 		, field				: "siteCd"
 		, width				: 100
 		, cellClass			: 'text-center'
-		, valueFormatter: function (params) {
+		, valueFormatter	: function (params) {
 			return gagaAgGrid.lookupValue(siteCdList, params.value);
 		}
 	},
@@ -183,7 +183,7 @@ var columnDefsOrderInfo = [
 		, field				: "ordDt"
 		, width				: 130
 		, cellClass			: 'text-center' 
-		, cellRenderer: function(params) {
+		, cellRenderer		: function(params) {
 			return !gagajf.isNull(params.value) ? params.value.toDate("YYYYMMDDHHmm").format("YYYY-MM-DD HH:mm") : '';
 		}
 	},
@@ -269,23 +269,29 @@ var columnDefsGoodsInfo = [
 				, cellRenderer	: function (params) {
 					return params.value.addComma();
 				}
-			},
+			}
 		]
 	},
 	{
-		headerName		: "주문상세상태"
-		, field			: "ordDtlStatNm"
-		, width			: 120
-		, cellClass		: 'text-left'
-		, cellRenderer	: function (params) {
-			var retVal = "";
-			retVal += (params.data.cancelRequestQty > 0) ? " 취" + params.data.cancelRequestQty : "";
-			retVal += (params.data.returnRequestQty > 0) ? " 반" + params.data.returnRequestQty : "";
-			retVal += (params.data.exchangeRequestQty > 0) ? " 교" + params.data.exchangeRequestQty : "";
-			
-			if (!gagajf.isNull(retVal)) retVal = "-" + retVal;
-				return "<a href=\"javascript:void(0);\" onclick=\"fnOrderDetailChangeHst('" + params.data.ordDtlNo + "');\">" + params.value + retVal + "</a>";
-		}
+		headerName	: "주문상세",
+		children	: [
+			{headerName: "주문상세번호"	, field: "ordDtlNo"		, width: 120, cellClass: 'text-center'},
+			{
+				headerName		: "주문상세상태"
+				, field			: "ordDtlStatNm"
+				, width			: 120
+				, cellClass		: 'text-left'
+				, cellRenderer	: function (params) {
+					var retVal = "";
+					retVal += (params.data.cancelRequestQty > 0) ? " 취" + params.data.cancelRequestQty : "";
+					retVal += (params.data.returnRequestQty > 0) ? " 반" + params.data.returnRequestQty : "";
+					retVal += (params.data.exchangeRequestQty > 0) ? " 교" + params.data.exchangeRequestQty : "";
+					
+					if (!gagajf.isNull(retVal)) retVal = "-" + retVal;
+						return "<a href=\"javascript:void(0);\" onclick=\"fnOrderDetailChangeHst('" + params.data.ordDtlNo + "');\">" + params.value + retVal + "</a>";
+				}
+			}
+		]
 	},
 	{
 		headerName	: "수량",
@@ -335,7 +341,7 @@ var columnDefsGoodsInfo = [
 				, width			: 70
 				, cellClass		: 'text-right'
 				, cellRenderer	: function (params) {
-					return "<a href=\"javascript:void(0);\" onclick=\"fnOrderPointHst('" + params.data.ordNo + "');\">" + params.value.addComma() + "</a>";
+					return "<a href=\"javascript:void(0);\" onclick=\"fnOrderTmtbHst('" + params.data.ordNo + "');\">" + params.value.addComma() + "</a>";
 				}
 			},
 			{
@@ -344,7 +350,7 @@ var columnDefsGoodsInfo = [
 				, width			: 70
 				, cellClass		: 'text-right'
 				, cellRenderer	: function (params) {
-					return "<a href=\"javascript:void(0);\" onclick=\"fnOrderPointHst('" + params.data.ordNo + "');\">" + params.value.addComma() + "</a>";
+					return "<a href=\"javascript:void(0);\" onclick=\"fnOrderTmtbHst('" + params.data.ordNo + "');\">" + params.value.addComma() + "</a>";
 				}
 			}
 		]
@@ -390,7 +396,7 @@ var columnDefsGoodsInfo = [
 				, width			: 80
 				, cellClass		: 'text-right' //pntDcAmtClass
 				, cellRenderer	: function (params) {
-					return "<a href=\"javascript:void(0);\" onclick=\"fnOrderPointHst('" + params.data.ordNo + "');\">" + params.value.addComma() + "</a>";
+					return "<a href=\"javascript:void(0);\" onclick=\"fnOrderGiftcardHst('" + params.data.ordNo + "');\">" + params.value.addComma() + "</a>";
 				}
 			}
 		]
@@ -976,12 +982,24 @@ $(document).ready(function () {
 		var actionUrl = "/order/detail/coupon/hst/form/" + ordNo;
 		cfnOpenModalPopup(actionUrl, 'popupOrderDetailCouponHstForm');
 	};
+	
+	// 다다익선내역 팝업
+	var fnOrderTmtbHst = function (ordNo) {
+		var actionUrl = "/order/detail/tmtb/hst/form/" + ordNo;
+		cfnOpenModalPopup(actionUrl, 'popupOrderDetailTmtbHstForm');
+	};
 
 	// 포인트내역 팝업
 	var fnOrderPointHst = function (ordNo) {
 		var actionUrl = "/order/detail/point/hst/form/" + ordNo;
 		cfnOpenModalPopup(actionUrl, 'popupOrderDetailPointHstForm');
 	};
+	
+	// 상품권내역 팝업
+	var fnOrderGiftcardHst = function (ordNo) {
+		var actionUrl = "/order/detail/giftcard/hst/form/" + ordNo;
+		cfnOpenModalPopup(actionUrl, 'popupOrderDetailGiftcardHstForm');
+	};
 
 	// 관리자메모 등록
 	var fnCreateOrderMemo = function (ordNo, seq, mode) {

+ 143 - 0
style24.admin/src/main/webapp/WEB-INF/views/order/OrderDetailGiftcardHst.html

@@ -0,0 +1,143 @@
+<!DOCTYPE html>
+<html lang="ko" xmlns:th="http://www.thymeleaf.org">
+<!--
+ *******************************************************************************
+ * @source  : OrderDetailPointHst.html
+ * @desc    : 주문상품 상세 상품권 이력 화면
+ *============================================================================
+ * Pastelmall
+ * Copyright(C) 2019 TSIT, All rights reserved.
+ *============================================================================
+ * VER  DATE         AUTHOR      DESCRIPTION
+ * ===  ===========  ==========  =============================================
+ * 1.0  2020.12.16   jsh77b       최초 작성
+ *******************************************************************************
+ -->
+<div class="modalPopup" data-width="900">
+	<div class="panelStyle">
+		<div class="giftcardTitle">
+			<h2>상품권 사용 내역</h2>
+			<button type="button" class="close" onclick="uifnPopupClose('popupOrderDetailGiftcardHstForm');"><i class="fa fa-times"></i></button>
+		</div>
+			
+		<div class="panelContent" style="overflow-y:auto;">
+			<form id="pointHstFrm">
+				<div id="gridOrderGiftcardInfo" style="width:100%; height:260px;" class="ag-theme-balham"></div>
+			</form>
+		</div>
+	</div>
+</div>
+
+<!-- data -->
+<script th:inline="javascript">
+/*<![CDATA[*/
+var orderGiftcardHstList = [[${orderGiftcardHstList}]];
+
+// specify the columns
+var columnDefsOrderGiftcardInfo = [
+		{headerName: "상품권명", 		field: "gfcdNm", 		width: 180, cellClass: 'text-center'},
+		{headerName: "상품권코드", 		field: "gfcdNo", 		width: 180, cellClass: 'text-center'},
+		{
+			headerName			: "상품권승인금액"
+			, field				: "chgGfcdAmt"
+			, width				: 130
+			, cellClass			: 'text-center'
+			, valueFormatter	: function(params) {
+				return params.value.addComma();
+			}	
+		},
+		{
+			headerName			: "상품권사용금액"
+			, field				: "usGfcdAmt"
+			, width				: 130
+			, cellClass			: 'text-center'
+			, valueFormatter	: function(params) {
+				return params.value.addComma();
+			}	
+		},
+		{
+			headerName			: "상품권남은금액"
+			, field				: "rmGfcdAmt"
+			, width				: 130
+			, cellClass			: 'text-center'
+			, valueFormatter	: function(params) {
+				return params.value.addComma();
+			}	
+		},
+		{headerName: "주문상세", 		field: "ordDtlNo", 		width: 100, cellClass: 'text-center'},
+		{headerName: "상품코드", 		field: "goodsCd", 		width: 100, cellClass: 'text-center'},
+		{
+			headerName			: "상품권사용금액"
+			, field				: "gfcdAmt"
+			, width				: 130
+			, cellClass			: 'text-center'
+			, valueFormatter	: function(params) {
+				return params.value.addComma();
+			}	
+		},
+		{headerName: "사유", 			field: "occurDtlDesc", 	width: 180, cellClass: 'text-center'},
+		{
+			headerName			: "등록일시"	
+			, field				: "regDt"
+			, width				: 130
+			, cellClass			: 'text-center' 
+			, cellRenderer: function(params) {
+				return !gagajf.isNull(params.value) ? params.value.toDate("YYYYMMDDHHmm").format("YYYY-MM-DD HH:mm") : '';
+			}
+		}
+];
+
+var gridOptionsOrderGiftcardInfo = orderAgGrid.getGridOptions(columnDefsOrderGiftcardInfo);
+
+$(document).ready(function() {	
+	// Create a agGrid
+	gagaAgGrid.createGrid('gridOrderGiftcardInfo', gridOptionsOrderGiftcardInfo);
+	gridOptionsOrderGiftcardInfo.api.setRowData(orderGiftcardHstList);
+});
+/*]]>*/
+
+</script>
+
+<!-- AgGrid 컬럼 세팅 -->
+<script>
+// 공통1. 주문상세 그리드 옵션 정보 적용
+var orderAgGrid = {
+	getGridOptions : function(colDefs) {
+		return {
+			columnDefs					: colDefs
+			, detailCellRendererParams	: {
+				detailGridOptions	: {
+					columnDefs				: []
+					, defaultColDef			: {
+						resizable: true
+					}
+					, suppressLoadingOverlay: false
+					, onGridReady			: function (params) {
+						params.api.setDomLayout('autoHeight');
+					}
+					, onFirstDataRendered	: function (params) {
+						params.api.sizeColumnsToFit();
+					}
+				}
+				, getDetailRowData: function (params) {
+					params.successCallback(params.data.orderDetailList);
+				}
+			}
+			, defaultColDef: {
+				resizable: true
+			}
+			, isRowMaster: function (dataItem) {
+				return dataItem ? dataItem.orderDetailList.length > 1 : false;
+			}
+			, suppressRowTransform: true
+			, enableRangeSelection: true
+		};
+	}
+}
+</script>
+</html>
+
+
+
+
+

+ 41 - 11
style24.admin/src/main/webapp/WEB-INF/views/order/OrderDetailPointHst.html

@@ -16,8 +16,8 @@
 <div class="modalPopup" data-width="900">
 	<div class="panelStyle">
 		<div class="panelTitle">
-			<h2>마일리지 내역</h2>
-			<button type="button" class="close" onclick="uifnPopupClose('popupOrderDetailCouponHstForm');"><i class="fa fa-times"></i></button>
+			<h2>포인트 사용 내역</h2>
+			<button type="button" class="close" onclick="uifnPopupClose('popupOrderDetailPointHstForm');"><i class="fa fa-times"></i></button>
 		</div>
 			
 		<div class="panelContent" style="overflow-y:auto;">
@@ -38,21 +38,51 @@ var columnDefsOrderPointInfo = [
 		{headerName: "상품코드", 		field: "goodsCd", 		width: 100, cellClass: 'text-center'},
 		{headerName: "적립율(PC)", 	field: "pntPrate", 		width: 100, cellClass: 'text-center'},
 		{headerName: "적립율(모바일)", 	field: "pntMrate", 		width: 100, cellClass: 'text-center'},
-		{headerName: "판매상품가격", 	field: "currPrice", 	width: 120, cellClass: 'text-center', valueFormatter: function(params) {return params.value.addComma();}	},
-		{headerName: "실결제상품가격", 	field: "realOrdAmt", 	width: 140, cellClass: 'text-center', valueFormatter: function(params) {return params.value.addComma();}	},
-		{headerName: "마일리지금액", 	field: "pntAmt", 		width: 100, cellClass: 'text-center', valueFormatter: function(params) {return params.value.addComma();}	},
-		{headerName: "사유", 			field: "occurDtlDesc", 	width: 120, cellClass: 'text-center'},
-		{headerName: "전환일자", 		field: "pntUploadDt",	width: 160, cellClass: 'text-center'},
-		{headerName: "상태", 			field: "pntUploadStat", width: 100, cellClass: 'text-center'},
-		{headerName: "등록일시", 		field: "regDt",			width: 160, cellClass: 'text-center'}
+		{
+			headerName			: "판매상품가격"
+			, field				: "currPrice"
+			, width				: 120
+			, cellClass			: 'text-center'
+			, valueFormatter	: function(params) {
+				return params.value.addComma();
+			}	
+		},
+		{
+			headerName			: "실결제상품가격"
+			, field				: "realOrdAmt"
+			, width				: 140
+			, cellClass			: 'text-center'
+			, valueFormatter	: function(params) {
+				return params.value.addComma();
+			}	
+		},
+		{
+			headerName			: "사용포인트"
+			, field				: "pntAmt"
+			, width				: 100
+			, cellClass			: 'text-center'
+			, valueFormatter	: function(params) {
+				return params.value.addComma();
+			}	
+		},
+		{headerName: "사유", 			field: "occurDtlDesc", 	width: 180, cellClass: 'text-center'},
+		{
+			headerName			: "등록일시"	
+			, field				: "regDt"
+			, width				: 130
+			, cellClass			: 'text-center' 
+			, cellRenderer: function(params) {
+				return !gagajf.isNull(params.value) ? params.value.toDate("YYYYMMDDHHmm").format("YYYY-MM-DD HH:mm") : '';
+			}
+		}
 ];
 
 var gridOptionsOrderPointInfo = orderAgGrid.getGridOptions(columnDefsOrderPointInfo);
 
 $(document).ready(function() {	
 	// Create a agGrid
-	gagaAgGrid.createGrid('gridOrderCouponInfo', gridOptionsOrderCouponInfo);
-	gridOptionsOrderCouponInfo.api.setRowData(orderCouponHstList);
+	gagaAgGrid.createGrid('gridOrderPointInfo', gridOptionsOrderPointInfo);
+	gridOptionsOrderPointInfo.api.setRowData(orderPointHstList);
 });
 /*]]>*/
 

+ 115 - 0
style24.admin/src/main/webapp/WEB-INF/views/order/OrderDetailTmtbHst.html

@@ -0,0 +1,115 @@
+<!DOCTYPE html>
+<html lang="ko" xmlns:th="http://www.thymeleaf.org">
+<!--
+ *******************************************************************************
+ * @source  : OrderDetailPointHst.html
+ * @desc    : 주문상품 상세 상품권 이력 화면
+ *============================================================================
+ * Pastelmall
+ * Copyright(C) 2019 TSIT, All rights reserved.
+ *============================================================================
+ * VER  DATE         AUTHOR      DESCRIPTION
+ * ===  ===========  ==========  =============================================
+ * 1.0  2020.12.16   jsh77b       최초 작성
+ *******************************************************************************
+ -->
+<div class="modalPopup" data-width="800">
+	<div class="panelStyle">
+		<div class="giftcardTitle">
+			<h2>다다익선 적용 내역</h2>
+			<button type="button" class="close" onclick="uifnPopupClose('popupOrderDetailTmtbHstForm');"><i class="fa fa-times"></i></button>
+		</div>
+			
+		<div class="panelContent" style="overflow-y:auto;">
+			<form id="pointHstFrm">
+				<div id="gridOrderTmtbInfo" style="width:100%; height:260px;" class="ag-theme-balham"></div>
+			</form>
+		</div>
+	</div>
+</div>
+
+<!-- data -->
+<script th:inline="javascript">
+/*<![CDATA[*/
+var orderTmtbHstList = [[${orderTmtbHstList}]];
+
+// specify the columns
+var columnDefsOrderGiftcardInfo = [
+		{headerName: "다다익선번호"	, field: "tmtbSq", 		width: 100, cellClass: 'text-center'},
+		{headerName: "다다익선명"	, field: "tmtbNm", 		width: 180, cellClass: 'text-center'},
+		{
+			headerName			: "할인금액"
+			, field				: "tmtbDcAmt"
+			, width				: 120
+			, cellClass			: 'text-center'
+			, valueFormatter	: function(params) {
+				return params.value.addComma();
+			}	
+		},
+		{headerName: "주문상세", 		field: "ordDtlNo",	width: 120, cellClass: 'text-center'},
+		{headerName: "상품코드", 		field: "goodsCd",	width: 120, cellClass: 'text-center'},
+		{
+			headerName			: "등록일시"	
+			, field				: "regDt"
+			, width				: 130
+			, cellClass			: 'text-center' 
+			, cellRenderer: function(params) {
+				return !gagajf.isNull(params.value) ? params.value.toDate("YYYYMMDDHHmm").format("YYYY-MM-DD HH:mm") : '';
+			}
+		}
+];
+
+var gridOptionsOrderTmtbInfo = orderAgGrid.getGridOptions(columnDefsOrderGiftcardInfo);
+
+$(document).ready(function() {	
+	// Create a agGrid
+	gagaAgGrid.createGrid('gridOrderTmtbInfo', gridOptionsOrderTmtbInfo);
+	gridOptionsOrderTmtbInfo.api.setRowData(orderTmtbHstList);
+});
+/*]]>*/
+
+</script>
+
+<!-- AgGrid 컬럼 세팅 -->
+<script>
+// 공통1. 주문상세 그리드 옵션 정보 적용
+var orderAgGrid = {
+	getGridOptions : function(colDefs) {
+		return {
+			columnDefs					: colDefs
+			, detailCellRendererParams	: {
+				detailGridOptions	: {
+					columnDefs				: []
+					, defaultColDef			: {
+						resizable: true
+					}
+					, suppressLoadingOverlay: false
+					, onGridReady			: function (params) {
+						params.api.setDomLayout('autoHeight');
+					}
+					, onFirstDataRendered	: function (params) {
+						params.api.sizeColumnsToFit();
+					}
+				}
+				, getDetailRowData: function (params) {
+					params.successCallback(params.data.orderDetailList);
+				}
+			}
+			, defaultColDef: {
+				resizable: true
+			}
+			, isRowMaster: function (dataItem) {
+				return dataItem ? dataItem.orderDetailList.length > 1 : false;
+			}
+			, suppressRowTransform: true
+			, enableRangeSelection: true
+		};
+	}
+}
+</script>
+</html>
+
+
+
+
+