Explorar o código

주문상세 개발중

jsh77b %!s(int64=5) %!d(string=hai) anos
pai
achega
74e19e5fb0

+ 3 - 0
style24.admin/src/main/java/com/style24/admin/biz/web/TsaOrderController.java

@@ -184,12 +184,15 @@ public class TsaOrderController extends TsaBaseController {
 		Order order = new Order();
 		order.setOrdNo(ordNo);
 		
+		// 1. 주문기본정보
 		mav.addObject("ordNo"					, ordNo);												// 주문번호
 		mav.addObject("orderInfo"				, orderService.getOrderInfoList(order));				// 주문기본정보
 		mav.addObject("orderGoodsInfo"			, orderService.getOrderDetailList(order));				// 주문상품정보
 		mav.addObject("orderDeliveryAddrInfo"	, orderService.getDeliveryAddrList(order));				// 배송정보
 		mav.addObject("orderPaymentInfo"		, orderService.getOrderPaymentBasicInfoList(order));	// 결제정보
 		mav.addObject("orderDeliveryFeeInfo"	, orderService.getDeliveryFeeList(order));				// 배송비정보
+		
+		// 2. 클레임정보
 		mav.addObject("orderChangeInfo"			, orderService.getOrderChangeList(order));				// 취소/반품/교환요청 정보
 		mav.addObject("orderRefundInfo"			, orderService.orderRefundInfo(order));					// 환불정보
 		mav.addObject("orderCounselInfo"		, orderService.orderCounselInfo(order));				// 상담내역

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

@@ -180,6 +180,7 @@ public class Order extends TscBaseDomain {
 	
 	private String delvFeeGb;
 	private String delvFeeGbNm;
+	private int delvFee;
 	private String delvUsacYn;
 	private String delvUsacDt;
 	private int delvFeeSq;

+ 1 - 0
style24.admin/src/main/java/com/style24/persistence/mybatis/shop/TsaOrder.xml

@@ -590,6 +590,7 @@
 		/* order.getDeliveryFeeList */
 		SELECT DF.DELV_FEE_GB 
 		     , FN_GET_CODE_NM('G018', DF.DELV_FEE_GB) AS DELV_FEE_GB_NM
+		     , DF.DELV_FEE
 		     , DF.DELV_USAC_YN 
 		     , DATE_FORMAT(DF.DELV_USAC_DT,'%Y%m%d%H%i%S') AS DELV_USAC_DT 
 		     , DF.SUPPLY_COMP_CD 

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

@@ -28,9 +28,35 @@
 					
 					<h4>기본정보</h4>
 					<div id="gridOrderInfo" style="width:100%; height:100px;" class="ag-theme-balham"></div>
-					
+										
 					<h4>주문상품정보</h4>
+					<button type="button" style="margin-left:10px;" class="btn btnRight btn-base btn-sm" id="btnExchange">교환요청</button>
+					<button type="button" class="btn btnRight btn-base btn-sm" id="btnReturn">반품요청</button>
+					<button type="button" class="btn btnRight btn-base btn-sm" id="btnCancel">취소요청</button>
 					<div id="gridOrderGoodsInfo" style="width:100%; height:200px;" class="ag-theme-balham"></div>
+					
+					<h4>배송정보</h4>
+					<button type="button" style="margin-left:10px;" class="btn btnRight btn-base btn-sm" id="btnUpdateOrderAddr">수정</button>
+					<div id="gridDeliveryAddrInfo" style="width:100%; height:100px;" class="ag-theme-balham"></div>
+					
+					<table style="width:100%;">
+						<colgroup>
+							<col style="width:65%;"/>
+							<col/>
+						</colgroup>
+						<tbody>
+							<tr>
+								<td style="">
+									<h4>결제정보</h4>
+									<div id="gridPaymentInfo" style="width:100%; height: 100px;" class="ag-theme-balham"></div>
+								</td>
+								<td style="">
+									<h4>배송비정보</h4>
+									<div id="gridDeliveryFeeInfo" style="width:100%; height: 100px;" class="ag-theme-balham"></div>
+								</td>
+							<tr>
+						</tbody>
+					</table>
 				</form>
 			</div>
 		</div>
@@ -42,9 +68,10 @@
 var ordNo 					= [[${ordNo}]];						// 주문번호
 var orderInfo 				= [[${orderInfo}]];					// 기본정보
 var orderGoodsInfo 			= [[${orderGoodsInfo}]];			// 주문상세정보
+var orderDeliveryAddrInfo	= [[${orderDeliveryAddrInfo}]];		// 배송정보
+var orderPaymentInfo 		= [[${orderPaymentInfo}]];			// 결제정보
+var orderDeliveryFeeInfo 	= [[${orderDeliveryFeeInfo}]];		// 배송비정보
 
-//var orderPaymentInfo 		= [[${orderPaymentInfo}]];			// 결제정보
-//var orderDeliveryFeeInfo = [[${orderDeliveryFeeInfo}]];		// 배송비정보
 //var orderChangeInfo = [[${orderChangeInfo}]];				// 취소/반품/교환요청 정보
 //var orderRefundInfo = [[${orderRefundInfo}]];				// 환불정보
 //var orderCounselInfo = [[${orderCounselInfo}]];				// 상담내역
@@ -142,7 +169,7 @@ var columnDefsOrderInfo = [
 		, width				: 240
 		, cellClass			: 'text-center'
 		, cellRenderer		: function (params) {
-			return params.value ? params.value + '&nbsp&nbsp<button type="button" class="btn btn-success" onclick="fnOpenEmailForm(\'' + params.data.orderEmail + '\',\'' + params.data.orderNm + '\',\'' + params.data.custNo + '\');"> 메일발송 </button>' : '';
+			return params.value ? params.value + '&nbsp&nbsp<button type="button" class="btn btn-base btn-sm" onclick="fnOpenEmailForm(\'' + params.data.orderEmail + '\',\'' + params.data.orderNm + '\',\'' + params.data.custNo + '\');"> 메일발송 </button>' : '';
 		}
 	},
 	{
@@ -151,14 +178,13 @@ var columnDefsOrderInfo = [
 		, width				: 220
 		, cellClass			: 'text-center'
 		, cellRenderer		: function (params) {
-			return params.value + '&nbsp&nbsp<button type="button" class="btn btn-success" onclick="fnOpenLmsForm(\'' + params.data.orderPhnno + '\',\'' + params.data.custNo + '\');"> LMS발송 </button>';
+			return params.value + '&nbsp&nbsp<button type="button" class="btn btn-base btn-sm" onclick="fnOpenLmsForm(\'' + params.data.orderPhnno + '\',\'' + params.data.custNo + '\');"> LMS발송 </button>';
 		}
 	},
 	{headerName: "회원구분"	, field: "custGbNm"		, width: 80		, cellClass: 'text-center'},
 	{headerName: "관리대상"	, field: "managedRsnNm"	, width: 80		, cellClass: 'text-center'},
 	{headerName: "등급"		, field: "custGradeNm"	, width: 80		, cellClass: 'text-center'}
 ];
-//var gridOptionsOrderInfo = gagaAgGrid.getGridOptions(columnDefsOrderInfo);
 var gridOptionsOrderInfo = orderAgGrid.getGridOptions(columnDefsOrderInfo);
 
 // 2.상품별 상세정보
@@ -380,8 +406,125 @@ var columnDefsGoodsInfo = [
 		]
 	}
 ];
-//var gridOptionsGoodsInfo = gagaAgGrid.getGridOptions(columnDefsGoodsInfo);
 var gridOptionsGoodsInfo = orderAgGrid.getGridOptions(columnDefsGoodsInfo);
+
+// 3.배송정보
+var columnDefsDeliveryInfo = [
+	{headerName: "배송지번호"		, field: "delvAddrSq"	, width: 100, cellClass: 'text-center'},
+	{headerName: "받는분"			, field: "recipNm"		, width: 80, cellClass: 'text-left', editable: true},
+	{headerName: "핸드폰번호"		, field: "recipPhnno"	, width: 120, cellClass: 'text-left', editable: true},
+	{headerName: "전화번호"		, field: "recipTelno"	, width: 120, cellClass: 'text-left', editable: true},
+	{
+		headerName		: "우편번호"		
+		, field			: "recipZipNo"
+		, width			: 200
+		, cellClass		: 'text-left'
+		, cellRenderer	: function (params) {
+			return params.value + "<button type=\"button\" style=\"margin-left:10px\" class=\"btn btn-info\" onclick=\"cfnOpenPostFindPopup('grid');\">우편번호찾기</button>";
+		}
+	},
+	{headerName: "주소(기본)"		, field: "recipBaseAddr"	, width: 350, cellClass: 'text-left'},
+	{headerName: "주소(상세)"		, field: "recipDtlAddr"		, width: 200, cellClass: 'text-left', editable: true},
+	{headerName: "배송메모"		, field: "delvMemo"			, width: 280, cellClass: 'text-left', editable: true}
+];
+var gridOptionsDeliveryInfo = orderAgGrid.getGridOptions(columnDefsDeliveryInfo);
+
+// 4.결제정보
+var columnDefsPaymentInfo = [
+	{headerName: "에스크로여부"		, field: "escrowYn"		, width: 80		, cellClass: 'text-center'},
+	{headerName: "결제수단"		, field: "payMeansNm"	, width: 100	, cellClass: 'text-center'},
+	{
+		headerName		: "카드(은행)"
+		, field			: "cardNm"
+		, width			: 100
+		, cellClass		: 'text-center'
+		, cellRenderer	: function (params) {
+			if (params.data.payMeans == '20') {
+				return params.data.vaNm;
+			} else if (params.data.payMeans == '10' || params.data.payMeans == '30') {
+				return params.data.cardNm;
+			}
+		}
+	},
+	{
+		headerName		: "할부(입금계좌)"
+		, field			: "cardMips"
+		, width			: 120
+		, cellClass		: 'text-center'
+		, cellRenderer	: function (params) {
+			if (params.data.payMeans == '20') {
+				return params.data.vaNo;
+			} else if (params.data.payMeans == '10') {
+				return params.value;
+			}
+		}
+	},
+	{
+		headerName		: "승인번호"
+		, field			: "pgTradeNo"
+		, width			: 80
+		, cellClass		: 'text-center'
+		, cellRenderer	: function (params) {
+			var retStr = '';
+
+			if (!gagajf.isNull(params.value)) {
+				retStr = '<a href="javascript:void(0);" onclick="fnReceiptPage(\'' + params.data.pgTid + '\');">' + params.value + '</a>';
+			}
+
+			if (gagajf.isNull(params.value) && !gagajf.isNull(params.data.pgTid)) {
+				retStr = '<a href="javascript:void(0);" onclick="fnReceiptPage(\'' + params.data.pgTid + '\');">' + '거래내역' + '</a>';
+			}
+
+			return retStr;
+		}
+	},
+	{
+		headerName			: "결제일시"	
+		, field				: "payDt"
+		, width				: 130
+		, cellClass			: 'text-center' 
+		, cellRenderer: function(params) {
+			return !gagajf.isNull(params.value) ? params.value.toDate("YYYYMMDDHHmm").format("YYYY-MM-DD HH:mm") : '';
+		}
+	},
+	{headerName: "결제상태"	, field: "payStatNm"	, width: 80		, cellClass: 'text-center'},
+	{
+		headerName			: "결제금액"
+		, field				: "payAmt"
+		, width				: 80
+		, cellClass			: 'text-right'
+		, valueFormatter	: function (params) {
+			return params.value.addComma();
+		}
+	},
+	{headerName: "계좌만료일"	, field: "vaDeadline"	, width: 150	, cellClass: 'text-center'}
+];
+var gridOptionsPaymentInfo = orderAgGrid.getGridOptions(columnDefsPaymentInfo);
+
+// 5.배송비
+var columnDefsDeliveryFeeInfo = [
+	{headerName: "배송비종류"		, field: "delvFeeGbNm", width: 120, cellClass: 'text-center'},
+	{
+		headerName			: "배송비"
+		, field				: "delvFee"
+		, width				: 100
+		, cellClass			: 'text-right'
+		, valueFormatter	: function (params) {
+			return params.value.addComma();
+		}
+	},
+	{headerName: "배송비정산여부"	, field: "delvUsacYn", width: 120, cellClass: 'text-center'},
+	{
+		headerName			: "배송비정산일시"	
+		, field				: "delvUsacDt"
+		, width				: 180
+		, cellClass			: 'text-center' 
+		, cellRenderer: function(params) {
+			return !gagajf.isNull(params.value) ? params.value.toDate("YYYYMMDDHHmm").format("YYYY-MM-DD HH:mm") : '';
+		}
+	}
+];
+var gridOptionsDeliveryFeeInfo = orderAgGrid.getGridOptions(columnDefsDeliveryFeeInfo);
 </script>
 
 <script>
@@ -396,7 +539,6 @@ var fnSetGridHeightInit = function () {
 	
 	//$('#gridOrderInfo').css('height', _girdRowH1 + _girdRowH);					//기본정보
 	//$('#gridDeliveryInfo').css('height', _girdRowH1 + _girdRowH);					//배송정보
-	
 	//if (orderGoodsInfo != null && orderGoodsInfo.length > 0) $('#gridOrderGoodsInfo').css('height', _girdRowH2 + _girdRowH * orderGoodsInfo.length);
 	//if (orderPaymentInfo != null && orderPaymentInfo.length > 0) $('#gridPaymentInfo').css('height', _girdRowH1 + _girdRowH * orderPaymentInfo.length);
 	//if (orderDeliveryFeeInfo != null && orderDeliveryFeeInfo.length > 0) $('#gridDeliveryFeeInfo').css('height', _girdRowH1 + _girdRowH * orderDeliveryFeeInfo.length);
@@ -410,11 +552,11 @@ var fnSetGridHeightInit = function () {
 
 <!-- 버튼 이벤트 바인딩 -->
 <script>
-var _windowWidth = $(window).width();		/* 위도우창 넓이 */
-var _girdRowH = 33;							/* 그리드 Row 줄 높이 */
-var _girdRowH1 = 33;						/* 그리드 타이틀 1줄 짜리 높이*/
-var _girdRowH2 = 62;						/* 그리드 타이틀 2줄 짜리 높이*/
-var _scrollH = 27;							/* 가로스크롤bar 높이 */
+var _windowWidth 	= $(window).width();		/* 위도우창 넓이 */
+var _girdRowH 		= 33;						/* 그리드 Row 줄 높이 */
+var _girdRowH1 		= 33;						/* 그리드 타이틀 1줄 짜리 높이*/
+var _girdRowH2 		= 62;						/* 그리드 타이틀 2줄 짜리 높이*/
+var _scrollH 		= 27;						/* 가로스크롤bar 높이 */
 
 $(window).resize(function () {
 	_windowWidth = $(window).width();
@@ -430,14 +572,20 @@ var fnOrderDetailClose = function(){
 }
 
 $(document).ready(function () {
-	gagaAgGrid.createGrid('gridOrderInfo'			, gridOptionsOrderInfo);
-	gagaAgGrid.createGrid('gridOrderGoodsInfo'		, gridOptionsGoodsInfo);
+	// 그리드 그리기
+	gagaAgGrid.createGrid('gridOrderInfo'			, gridOptionsOrderInfo);		// 기본정보
+	gagaAgGrid.createGrid('gridOrderGoodsInfo'		, gridOptionsGoodsInfo);		// 상품정보
+	gagaAgGrid.createGrid('gridDeliveryAddrInfo'	, gridOptionsDeliveryInfo);		// 배송정보
+	gagaAgGrid.createGrid('gridPaymentInfo'			, gridOptionsPaymentInfo);		// 결제정보
+	gagaAgGrid.createGrid('gridDeliveryFeeInfo'		, gridOptionsDeliveryFeeInfo);	// 배송비정보
 	
 	// 그리드 데이터 바인딩
-	gridOptionsOrderInfo.api.setRowData(orderInfo);							// 기본정보
-	gridOptionsGoodsInfo.api.setRowData(orderGoodsInfo);					// 상품정보
-	//gridOptionsPaymentInfo.api.setRowData(orderPaymentInfo);				// 결제정보
-	//gridOptionsDeliveryFeeInfo.api.setRowData(orderDeliveryFeeInfo);		// 배송비정보
+	gridOptionsOrderInfo.api.setRowData(orderInfo);									// 기본정보
+	gridOptionsGoodsInfo.api.setRowData(orderGoodsInfo);							// 상품정보
+	gridOptionsDeliveryInfo.api.setRowData(orderDeliveryAddrInfo);					// 배송정보
+	gridOptionsPaymentInfo.api.setRowData(orderPaymentInfo);						// 결제정보
+	gridOptionsDeliveryFeeInfo.api.setRowData(orderDeliveryFeeInfo);				// 배송비정보
+	
 	//gridOptionsOrderChangeInfo.api.setRowData(orderChangeInfo);				// 취소/반품/교환요청 정보
 	//gridOptionsRefundInfo.api.setRowData(orderRefundInfo);					// 환불정보
 	//gridOptionsOrderCounselInfo.api.setRowData(orderCounselInfo);			// 상담내역