浏览代码

Merge branch 'develop' into bin2107

bin2107 5 年之前
父节点
当前提交
2952bf7d4c

+ 9 - 1
src/main/java/com/style24/admin/biz/dao/TsaPlanDao.java

@@ -615,5 +615,13 @@ public interface TsaPlanDao {
 	 */
 	Collection<Plan> getPlanningCategoryList(Plan param);
 	
-
+	/**
+	 * 출석체크 쿠폰 유효검사
+	 *
+	 * @param plan
+	 * @return
+	 * @author sowon
+	 * @since 2021. 06. 09
+	 */
+	Collection<Plan> getPlanAttendCoupon(Plan param);
 }

+ 12 - 0
src/main/java/com/style24/admin/biz/service/TsaPlanService.java

@@ -1815,5 +1815,17 @@ public class TsaPlanService {
 		return planDao.getPlanningCategoryList(param);
 	}
 	
+	/**
+	 * 출석체크 쿠폰 유효검사
+	 *
+	 * @param plan
+	 * @return
+	 * @author sowon
+	 * @since 2021. 06. 09
+	 */
+	public Collection<Plan> getPlanAttendCoupon(Plan param){
+		return planDao.getPlanAttendCoupon(param);
+	}
+	
 		
 }

+ 14 - 0
src/main/java/com/style24/admin/biz/web/TsaMarketingController.java

@@ -2562,6 +2562,20 @@ public class TsaMarketingController extends TsaBaseController {
 		socialService.deleteSocialGoods(paramList);
 		return super.ok(message.getMessage("SUCC_0003"));
 	}
+	
+	/**
+	 * 출석체크 쿠폰 유효 확인
+	 *
+	 * @param plan 조회 정보
+	 * @return plan 목록
+	 * @author sowon
+	 * @since 2021. 6. 9
+	 */
+	@PostMapping("/planning/attend/coupon")
+	@ResponseBody
+	public Collection<Plan> getPlanAttendCoupon(@RequestBody Plan plan) {
+		return planService.getPlanAttendCoupon(plan);
+	}
 
 	/**
 	 * 상품권 대량 등록 화면

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

@@ -261,9 +261,21 @@ public class TsaOrderController extends TsaBaseController {
 	 */
 	@PostMapping("/seller/unorder/list")
 	@ResponseBody
-	public Collection<Order> getOrderSellerUnorderList(@RequestBody Order order) throws Exception {
+	public GagaMap getOrderSellerUnorderList(@RequestBody Order order) throws Exception {
+		GagaMap result = new GagaMap();
+
+		order.setPageable(new TscPageRequest(0, 10000));
+
+		// 주문전체건수 조회
+		int totalCount = orderService.getOrderSellerUnorderListCount(order);
+		order.getPageable().setTotalCount(totalCount);
+
 		Collection<Order> orderList = orderService.getOrderSellerUnorderList(order);
-		return orderList;
+
+		result.set("pageing"	, order);
+		result.set("orderList"	, orderList);
+
+		return result;
 	}
 
 	/**

+ 14 - 1
src/main/java/com/style24/persistence/mybatis/shop/TsaPlan.xml

@@ -1488,7 +1488,7 @@
 	
 	<!-- 기획전 카테고리 목록 -->
 	<select id="getPlanningCategoryList" parameterType="Plan" resultType="Plan">
-		/* TssPlan.getPlanningCategoryList */
+		/* TsaPlan.getPlanningCategoryList */
 		SELECT C.CATE1_NO AS CATE_NO            /*카테고리번호*/
 		     , C.CATE1_NM AS CATE_NM /*카테고리명*/
 		FROM TB_CATE1 C
@@ -1497,6 +1497,19 @@
 		AND    C.CATE_TYPE = 'G031_10' /*상품카테고리*/
 		AND    C.DISP_YN = 'Y' /*전시하는 카테고리*/
 	</select>
+	
+	<select id="getPlanAttendCoupon" parameterType="Plan" resultType="Plan">
+		/* TsaPlan.getPlanAttendCoupon */
+		SELECT C.CPN_ID 
+		      ,C.CPN_NM 
+		      ,C.CPN_STAT 
+		FROM TB_COUPON C
+		WHERE 1=1
+		AND C.CPN_ID = #{cpnId}
+		AND C.CPN_TYPE IN ('G230_11' ,'G230_12','G230_13','G230_30')
+		AND C.CPN_STAT = 'G232_11'
+		AND NOW() <![CDATA[<=]]> IF (C.PD_GB = 'D', CONCAT(CURRENT_DATE + INTERVAL C.AVAIL_DAYS DAY, ' 23:59:59'), C.AVAIL_EDDT)
+	</select>
 </mapper>
 
 

+ 4 - 1
src/main/java/com/style24/persistence/mybatis/shop/TsaSocial.xml

@@ -205,9 +205,12 @@
 		<if test='frontGb == "P"'> <!-- PC웹 -->
 		    AND A.FRONT_GB IN ('A','P')
 		</if>
-		<if test='frontGb == "A" or frontGb == "M"'> <!-- 모바일 -->
+		<if test='frontGb == "M"'> <!-- 모바일 -->
 		    AND A.FRONT_GB IN ('A','M')
 		</if> 
+		<if test='frontGb == "A"'> <!-- 전체 -->
+		    AND A.FRONT_GB IN ('A','M','P')
+		</if> 
 		AND A.APPLY_GB IN ('A', #{applyGb})
 		<if test="socialSq != null and socialSq != ''">
 		AND A.SOCIAL_SQ != #{socialSq}

+ 3 - 1
src/main/webapp/WEB-INF/views/envset/BasicEnvsetForm.html

@@ -185,7 +185,9 @@
 					<tr>
 						<th>장바구니보관기간(일)</th>
 						<td>
-							장바구니 보관기간은 <input name="g11StrSetVal1" type="text" class="w50 aR" maxlength="3" data-valid-type="integer" data-valid-name="장바구니보관기간"/><span class="cRed">일</span> 입니다. 보관기간 경과 시 자동 삭제됩니다.
+							<!-- 2021-06-08 장바구니 보관 기간 30일 고정 > 지하 1층 회의실B 에서 한수인리더 확인.
+							     장바구니 20일 경과 상품 구매 알림톡 보내기 위해 수정되지 않도록 변경 -xodud1202 -->
+							장바구니 보관기간은 <input name="g11StrSetVal1" type="text" class="w50 aR" maxlength="3" data-valid-type="integer" readonly disabled data-valid-name="장바구니보관기간"/><span class="cRed">일</span> 입니다. 보관기간 경과 시 자동 삭제됩니다. (보관기간 30일 고정)
 							<span class="infoTxt cBlue"><i class="fa fa-info-circle marL20" aria-hidden="true"></i>0으로 설정하면 자동으로 삭제 처리를 하지 않습니다.</span>
 						</td>
 					</tr>

+ 100 - 74
src/main/webapp/WEB-INF/views/marketing/PlanDetailPopupForm.html

@@ -484,7 +484,7 @@
 					<tr>
 						<th>기획전명<em class="required" title="필수"></em></th>
 						<td>
-							<input type="text" name="planNm" id="planNm" maxlength="50" required="required" data-valid-name="기획전명"/>
+							<input type="text" name="planNm" id="planNm" maxlength="50" required="required" />
 						</td>
 						<th>서브제목</th>
 						<td>
@@ -987,7 +987,6 @@
 		$("#append3").css('display','none');
 	} */
 	
-	
 
 	// 기획전 복사
 	var fnPlanCopyPopup = function() {
@@ -1021,9 +1020,97 @@
 	}
 
 	 var fnPlanSave = function(formId) {
-		/* if (!gagajf.validation(formId))
-			return;  */
+		var attendData = gagaAgGrid.getAllRowData(gridOptionsAttendList);
+		if ($('#planRegisterForm select[name=planGb]').val() == "C" || $('#planUpdateForm select[name=planGb]').val() == "C" ) {
+			var arr = []; 
+			$.each(attendData, function(idx, item) {
+				arr[idx] = item.basDays;
+			});
+			
+			for(let i = 0; i < attendData.length; i++) {
 
+				if (attendData[i].benefitGb == 'A') {
+					if (attendData[i].basDays == "") {
+						mcxDialog.alert('혜택(포인트/혜택) 적용 일수를 입력하세요.');
+						return false;
+					}
+					else if (attendData[i].cpnId == "") {
+						mcxDialog.alert('혜택(포인트/혜택) 적용 쿠폰ID를 입력하세요.');
+						return false;
+					}
+					else if (attendData[i].pntAmt == "") {
+						mcxDialog.alert('혜택(포인트/혜택) 적용 포인트를 입력하세요.');
+						return false;
+					}else if (attendData[i].pntUsableDay == "") {
+						mcxDialog.alert('혜택(포인트/혜택) 유효기간 일수를 입력하세요.');
+						return false;
+					}
+				}
+				if (attendData[i].benefitGb == 'P') {
+					if (attendData[i].basDays == "") {
+						mcxDialog.alert('혜택(포인트) 적용 일수를 입력하세요.');
+						return false;
+					}
+					else if (attendData[i].pntAmt == "") {
+						mcxDialog.alert('혜택(포인트) 적용 포인트를 입력하세요.');
+						return false;
+					}else if (attendData[i].pntUsableDay == "") {
+						mcxDialog.alert('혜택(포인트) 유효기간 일수를 입력하세요.');
+						return false;
+					}
+				}
+				if (attendData[i].benefitGb == 'C') {
+					if (attendData[i].basDays == "") {
+						mcxDialog.alert('혜택(쿠폰) 적용 일수를 입력하세요.');
+						return false;
+					}
+					else if (attendData[i].cpnId == "") {
+						mcxDialog.alert('혜택(쿠폰) 적용 쿠폰ID를 입력하세요.');
+						return false;
+					}
+				}
+				
+				if (attendData[i].benefitGb == 'A' || attendData[i].benefitGb == 'C') {
+					data = {cpnId : attendData[i].cpnId};
+					var jsonData = JSON.stringify(data);
+					gagajf.ajaxJsonSubmit('marketing/planning/attend/coupon', jsonData, function(result) {
+						if (result.length < 1) {
+							mcxDialog.alert('입력하신 쿠폰 아이디 ' + attendData[i].cpnId.addComma() + '은 유효하지 않습니다.');
+							flag = false;
+							return;
+						}
+					});
+					
+					if (flag == false) {
+						return;
+					}
+				}
+			};
+		}
+			
+		var dupYn = false;
+		for(let i = 0; i < arr.length; i++) {
+		  const currElem = arr[i];
+		  for(let j = i+1; j < arr.length; j++) {
+		    if(currElem === arr[j]) {
+		      dupYn = true;
+		      break;
+		    }
+		  }
+		}
+		
+		if (dupYn == true) {
+			mcxDialog.alert('혜택적용 일수가 동일합니다.');
+			return;
+		}
+	 
+	 	gagajf.ajaxFormSubmit('/marketing/poll/list', formId, function(result) {
+				if (result.length < 1) {
+					mcxDialog.alert('입력하신 투표 일련번호가 존재 하지않습니다.');
+					return false;
+				}
+		});
+		
 		// 날짜 유효성 체크
 		var stDate = $(formId + ' input[name=startSearchDate]').val().replaceAll("-", "");
 		var edDate = $(formId + ' input[name=endSearchDate]').val().replaceAll("-", "");
@@ -1122,19 +1209,12 @@
 			multiBrand.push(item.brandGroupNo);
 		});
 		
-		//let allCateData = gagaAgGrid.getAllRowData(gridOptionsFGCateList);
-		/* var multiCate = [];
-		$.each(allCateData, function(idx, item) {
-			multiCate.push(item.cateNo);
-		}); */
-		
 		let allChannelData = gagaAgGrid.getAllRowData(gridOptionsAfList);
 		var multiChannel = [];
 		$.each(allChannelData, function(idx, item) {
 			multiChannel.push(item.afLinkCd);
 		});
-		
-		let attendData = gagaAgGrid.getAllRowData(gridOptionsAttendList);
+
 		
 		// poll 관리일련번호 유효성 체크
 		if (!gagajf.isNull($(formId + ' input[name=pollSq]').val())) {
@@ -1152,7 +1232,9 @@
 				cancelBtnText: "취소",
 				sureBtnText: "확인",
 				sureBtnClick: function() {
-					if(!validationPlanDetail()){
+					
+					if( $('#planRegisterForm input[name=planNm]').val() == ''){
+						mcxDialog.alert('기획전명을 입력하세요.');
 						return false;
 					}
 					
@@ -1164,7 +1246,6 @@
 					} 
 					
 					var chkFrontGb = $('#planRegisterForm input:checkbox[name=frontGb]:checked');
-					
 					if(chkFrontGb.length < 1){
 						mcxDialog.alert("프론트구분을 체크해주세요.");
 						return false;
@@ -1247,6 +1328,7 @@
 						}	
 					
 					var jsonData =  JSON.stringify(data);
+					
 					gagajf.ajaxJsonSubmit("/marketing/planning/detail/create", jsonData, fnPlanDetailCallBack); 
 					uifnPopupClose('popupPlanDetail');
 					fnPlanListSearch();
@@ -1259,7 +1341,8 @@
 				cancelBtnText: "취소",
 				sureBtnText: "확인",
 				sureBtnClick: function() {
-					if(!validationPlanDetail()){
+					if( $('#planUpdateForm input[name=planNm]').val() == ''){
+						mcxDialog.alert('기획전명을 입력하세요.');
 						return false;
 					}
 					
@@ -1492,55 +1575,6 @@
 		}
 	};
 	
-	// 카테고리 리스트 설정
-/* 	var columnCateList = [
-		{width: 40, minWidth: 40, cellClass: 'text-center', headerCheckboxSelection: true, checkboxSelection: true, filter: false},
-		{headerName: "사이트", field: "siteCd", width: 120, cellClass: 'text-center'},
-		{headerName: "카테고리 구분", field: "cateGb", width: 110, cellClass: 'text-center'},
-		{headerName: "카테고리 이름", field: "cateNm", width: 120, cellClass: 'text-center'},
-		{headerName: "번호", field: "cateNo", width: 150, cellClass: 'text-center', hide: true},
-	]; */ 
-	
-	// 카테고리 그리드 설정
-	/* var gridOptionsFGCateList = gagaAgGrid.getGridOptions(columnCateList);
-	gridOptionsFGCateList.rowSelection = "multiple";
-	gridOptionsFGCateList.suppressRowClickSelection = true; */
-	
-	// 브랜드 설정 선택삭제 버튼 클릭시
-   /*  $('#btnDeleteCate').on('click', function() {
-    	gridOptionsFGCateList.api.updateRowData({remove:gagaAgGrid.selectedRowData(gridOptionsFGCateList)});
-    });
-	 */
-
-	
-	// 카테고리 추가
-	/* $('#btnAddCate').on('click' , function () {
-		cfnOpenCategoryPopup("fnSetPopupCategoryInfo");
-	}); */
-	
-	// 카테고리 추가 콜백 함수
-	/* var fnSetPopupCategoryInfo = function (result) {
-		// 기존 리스트 데이터 for
-		for(let i = 0 ; i < result.length ; i++) {
-			let addChk = true, gridListValue = gagaAgGrid.getAllRowData(gridOptionsFGCateList);		// 받아온 모든 데이터
-
-			// 받아온 data for
-			for(let j = 0 ; j < gridListValue.length ; j++) {
-				// 동일한 data는 추가하지 않음
-				if(gridListValue[j].cateNo == result[i].cateNo) {	addChk = false;	}		// 중복체크
-			}
-
-			// 중복되지 않은 데이터 리스트에 추가
-			if(addChk) {
-				if(result[i].cate2No!=null)
-				{
-					mcxDialog.alert('카테고리1에서 선택하세요.');
-					return;
-				}
-				gagaAgGrid.addRowData(gridOptionsFGCateList, {"siteCd":result[i].siteCd , "cateGb":result[i].cateGb, "cateNm":result[i].cateNm, "cateNo":result[i].cateNo});
-			}
-		}
-	} */
 	
 	// 제휴채널 추가
 	$('#btnAddAf').on('click' , function () {
@@ -1571,15 +1605,6 @@
     	gridOptionsAfList.api.updateRowData({remove:gagaAgGrid.selectedRowData(gridOptionsAfList)});
     });
 	
-	// validation 체크
-	function validationPlanDetail() {
-		if( $('#planUpdateForm input[name=planNm]').val() == '' || $('#planRegisterForm input[name=planNm]').val() == ''){
-			mcxDialog.alert('기획전명을 입력하세요.');
-			return false;
-		}
-		return true;
-	} 
-	
 	// 신규회원여부 변경시
 	function newCustYnChange(pThis){
 		var selectVal = $(pThis).val();
@@ -1657,7 +1682,7 @@
 			return;
 		} else {
 	
-			var data = { benefit: '포인트',benefitGb: 'P', pntAmt:'', cpnId: ''};
+			var data = { benefit: '포인트',benefitGb: 'P', basDays:'' ,pntAmt:'', cpnId: '', pntUsableDay:''};
 			gagaAgGrid.addRowData(gridOptionsAttendList, data);
 		}
 
@@ -1724,6 +1749,7 @@
 		
 		 if (mode =='U') {
 			 if(planInfo.newCustYn == 'Y'){
+				 $('.custJoinDateTr').show();
 				 $("#planUpdateForm input[name=custJoinStDay]").val(planInfo.custJoinStdt.split(' ')[0]);
 				 $("#planUpdateForm input[name=custJoinEdDay]").val(planInfo.custJoinEddt.split(' ')[0]);
 			 }

+ 0 - 357
src/main/webapp/WEB-INF/views/order/OrderSellerDelvEndListForm.html

@@ -1,357 +0,0 @@
-<!DOCTYPE html>
-<html lang="ko" xmlns:th="http://www.thymeleaf.org">
-<!--
- *******************************************************************************
- * @source  : OrderSellerListForm.html
- * @desc    : 입점업체미발주목록조회 Page
- *============================================================================
- * STYLE24
- * Copyright(C) 2020 TSIT, All rights reserved.
- *============================================================================
- * VER  DATE         AUTHOR      DESCRIPTION
- * ===  ===========  ==========  =============================================
- * 1.0  2020.11.16   jsh77b       최초 작성
- *******************************************************************************
- -->
-
-<div id="main">
-	<!-- 메인타이틀 영역 -->
-	<div class="main-title">
-	</div>
-	<!-- //메인타이틀 영역 -->
-
-	<!-- 메뉴 설명 -->
-	<div class="infoBox menu-desc">
-	</div>
-
-	<form id="searchForm" name="searchForm" action="#" th:action="@{'/order/seller/order/list'}">
-		<input type="hidden" id="searchGb" name="searchGb" />
-		<input type="hidden" id="imageViewYn" name="imageViewYn" />
-
-		<!-- 패널 영역1 -->
-		<div class="panelStyle" >
-			<!-- 검색조건 영역 -->
-			<!-- TITLE -->
-			<div class="panelTitle">
-				<h3>
-					<i class="fa fa-info-circle"></i>아래 검색조건 중 <font color="red">주문번호</font> 또는 <font color="red">검색조건</font> 하나를 꼭 입력해 주세요.
-				</h3>
-				<span class="panelControl">
-					<i class="fa fa-chevron-up"></i>
-				</span>
-			</div>
-
-			<div class="panelContent">
-				<table class="frmStyle">
-					<colgroup>
-						<col style="width:10%;"/>
-						<col style="width:15%;"/>
-						<col style="width:10%;"/>
-						<col style="width:15%;"/>
-						<col style="width:10%;"/>
-						<col style="width:15%;"/>
-						<col style="width:10%;"/>
-						<col style="width:15%;"/>
-					</colgroup>
-					<tr>
-						<th>업체/브랜드<em class="required" title="필수"></em></th>
-						<td colspan="7">
-							<!-- <label class="rdoBtn"><input type="radio" name="selfYn" id="selfYnY" value="N" />자사</label> -->
-							<label class="rdoBtn"><input type="radio" name="selfYn" id="selfYnN" value="Y" checked/>입점</label>
-							<select name="supplyCompCd" id="supplyCompCd">
-								<option value="" th:if="${sessionInfo.roleCd} != 'G001_B000'">[전체]</option>
-								<option th:if="${supplyCompList}" th:each="oneData, status : ${supplyCompList}" th:value="${oneData.cd}" th:text="${'[' + oneData.cd + '] ' + oneData.cdNm}"></option>
-							</select>
-							<span id="multiBrand"></span>
-						</td>
-					</tr>
-					<tr>
-						<th>주문번호</th>
-						<td>
-							<input type="text" name="ordNo" placeholder="" maxlength="20"/>
-						</td>
-						<th>주문자명</th>
-						<td>
-							<input type="text" name="ordNm" placeholder="" maxlength="20"/>
-						</td>
-						<th>상품코드</th>
-						<td>
-							<input type="text" name="goodsCd" placeholder="" maxlength="20"/>
-						</td>
-						<th>주문상세상태</th>
-						<td>
-							<select name="ordDtlStat" id="ordDtlStat">
-								<option value="G013_20">결제완료</option>
-								<option value="G013_30">상품준비중</option>
-								<option value="G013_40">배송준비중</option>
-								<option value="G013_50" selected>배송중</option>
-								<option value="G013_60">배송완료</option>
-								<option value="G013_70">구매확정</option>
-							</select>
-						</td>
-					</tr>
-					<tr>
-						<th>조회일자</th>
-						<td colspan="7">
-							<select name="searchDateGb">
-								<option value="ordDt">주문일자</option>
-							</select>
-							<span id="terms"></span>
-						</td>
-					</tr>
-				</table>
-
-				<ul class="panelBar">
-					<li class="center">
-						<button type="button" class="btn btn-info btn-lg" id="btnOrderSearch">조회</button>
-						<button type="button" class="btn btn-gray btn-lg" id="btnInit">초기화</button>
-					</li>
-				</ul>
-
-			</div>
-		</div>
-
-		<div class="panelStyle">
-			<!--<ul class="panelBar">
-				<li>
-					<button type="button" class="btn btn-info btn-lg" onclick="cfnDownloadSampleFile('SF020');">입점송장번호등록다운로드</button>
-				</li>
-				<li class="aR">
-					<button type="button" id="btnExcelDown" class="btn btn-info btn-lg">엑셀다운로드</button>
-					<button type="button" id="btnInvoiceExcelUpLoad" class="btn btn-success btn-lg">송장엑셀업로드</button>
-					<button type="button" id="btnSave" class="btn btn-success btn-lg">저장</button>
-				</li>
-			</ul>-->
-
-			<div class="panelContent" style="overflow: hidden;">
-				<div id="gridList" style="width: 100%; height: 600px;" class="ag-theme-balham lh30"></div>
-			</div>
-		</div>
-
-		<!-- //리스트 영역 -->
-		<label class="off">
-			<a href="javascript:void(0);" id="excelList" style="display: none;">엑셀다운로드</a>
-		</label>
-
-	</form>
-</div>
-
-<label class="off">
-	<a href="javascript:void(0);" id="hdOrderExcelList" style="display: none;">엑셀다운로드</a>
-</label>
-
-<script type="text/javascript" src="/ux/plugins/gaga/gaga.paging.js?v=2019072202"></script>
-
-<script th:inline="javascript">
-	/*<![CDATA[*/
-	var sessRoleCd 		= [[${sessionInfo.roleCd}]];
-	var shipCompanyList = gagajf.convertToArray([[${shipCompanyList}]]);
-
-	var columnDefs = [
-		{width: 40, minWidth: 40, cellClass: 'text-right', headerCheckboxSelection: true, checkboxSelection: true, filter: false},
-		{headerName: 'No', width: 60, cellClass: 'text-center', valueGetter: function(params) { return params.node.rowIndex + 1 }},
-		{headerName: "입점업체",			field:"supplyCompNm",		width:100, cellClass: 'text-center'},
-		{headerName: "입점업체코드",		field:"supplyCompCd",		width:100, cellClass: 'text-center', hide: true},
-		{headerName: "브랜드",			field:"brandKnm",			width:100, cellClass: 'text-center'},
-		{headerName: "주문번호",			field:"ordNo",				width:100, cellClass: 'text-center'},
-		{headerName: "주문상세번호",		field:"ordDtlNo",			width:100, cellClass: 'text-center'},
-		{headerName: "주문상세상태",		field:"ordDtlStatNm", 		width:100, cellClass: 'text-center'},
-		{headerName: "주문자명",			field:"ordNm",				width:100, cellClass: 'text-center'},
-		{headerName: "주문일시",			field:"ordDt",				width:100, cellClass: 'text-center',
-			cellRenderer		: function (params) {
-				return !gagajf.isNull(params.value) ? params.value.toDate("YYYYMMDDHHmmss").format("YYYY-MM-DD HH:mm:ss") : '';
-			}
-		},
-		{headerName: "결제수단",			field:"payMeansNm",			width:100, cellClass: 'text-center'},
-		{headerName: "주문자휴대전화",		field:"ordPhnno",			width:100, cellClass: 'text-center'},
-		{headerName: "수령자명",			field:"recipNm",			width:100, cellClass: 'text-center'},
-		{headerName: "수령자휴대전화",		field:"recipPhnno",			width:120, cellClass: 'text-center'},
-		{headerName: "수령자우편번호",		field:"recipZipcode",		width:120, cellClass: 'text-center'},
-		{headerName: "수령자기본주소",		field:"recipBaseAddr",		width:120, cellClass: 'text-center'},
-		{headerName: "수령자상세주소",		field:"recipDtlAddr",		width:120, cellClass: 'text-center'},
-		{headerName: "업체상품코드",		field:"supplyGoodsCd",		width:100, cellClass: 'text-center'},
-		{headerName: "상품코드",			field:"goodsCd",			width:100, cellClass: 'text-center'},
-		{headerName: "상품명",			field:"goodsNm",			width:100, cellClass: 'text-center'},
-		{headerName: "사이즈",			field:"optCd2",				width:100, cellClass: 'text-center'},
-		{headerName: "주문수량",			field:"ordQty",				width:100, cellClass: 'text-center'},
-		{headerName: "취소수량",			field:"cnclRtnQty",			width:100, cellClass: 'text-center'},
-		{headerName: "주문금액",			field:"ordAmt",				width:100, cellClass: 'text-center'},
-		{headerName: "할인금액",			field:"totDcAmt",			width:100, cellClass: 'text-center'},
-		{headerName: "실결제금액",		field:"realOrdAmt",			width:100, cellClass: 'text-center'},
-		{headerName: "배송업체",			field:"shipCompCd",			width:150, cellClass: 'text-center'},
-		{headerName: "송장",				field:"invoiceNo",			width:150, cellClass: 'text-center'}
-	];
-
-	var gridOptions = gagaAgGrid.getGridOptions(columnDefs);
-	gridOptions.suppressRowClickSelection = true;
-	gridOptions.rowSelection = 'multiple';
-	gridOptions.stopEditingWhenGridLosesFocus = true;
-
-	// 조회버튼
-	$('#btnOrderSearch').on('click', function() {
-		fnSearch();
-	});
-
-	// 검색
-	var fnSearch = function() {
-		var formId = '#searchForm';
-		var ordNo = $('#searchForm input[name=ordNo]').val();
-		var stDate = $('#stDate').val();
-		var edDate = $('#edDate').val();
-
-		if (gagajf.isNull(ordNo)) {
-			if (gagajf.isNull(stDate)) {
-				mcxDialog.alert('시작 기간을 입력하세요.');
-				return;
-			}
-
-			if (gagajf.isNull(edDate)) {
-				mcxDialog.alert('종료 기간을 입력하세요.');
-				return;
-			}
-		}
-
-		gagaAgGrid.fetch($(formId).prop('action'), gridOptions, formId);
-	}
-
-	// 엑셀다운로드 시 주문상태 변경
-	$('#btnExcelDown').on('click', function () {
-		var selectedData = gridOptions.api.getSelectedRows();
-
-		if (selectedData.length == 0) {
-			mcxDialog.alert('선택된 행이 없습니다.');
-			return;
-		}
-
-		mcxDialog.confirm('엑셀 다운로드 하시겠습니까?', {
-			cancelBtnText	: "취소",
-			sureBtnText		: "확인",
-			sureBtnClick	: function(){
-				var jsonData = JSON.stringify(selectedData);
-				gagajf.ajaxJsonSubmit('/order/seller/unorder/status/save', jsonData, fnExcelDownCollback);
-			}
-		});
-	});
-
-	// 엑셀다운로드
-	var fnExcelDownCollback = function(flag){
-		$('#excelList').attr({ href : '/order/seller/unorder/excel/list' }).get(0).click();
-	}
-
-	// 송장 엑셀 업로드
-	$('#btnInvoiceExcelUpLoad').on('click', function() {
-		cfnExcelUploadPopup('invoiceExcelUpload', 'invoiceExcelUpload');
-	});
-
-	var invoiceExcelUpload = function(result){
-		mcxDialog.confirm('송장 변경을 진행하시겠습니까?', {
-			cancelBtnText	: "취소"
-			, sureBtnText	: "확인"
-			, sureBtnClick	: function(){
-				var data = {
-					procJob 		: result.procJob
-					, excelFileNm 	: result.excelFileNm
-				};
-
-				var jsonData = JSON.stringify(data);
-				gagajf.ajaxJsonSubmit('/order/seller/unorder/invoice/excelupload/save', jsonData, fnInvoiceSaveCollback);
-			}
-		});
-	}
-
-	// 송장번호 저장후
-	var fnInvoiceSaveCollback = function(result){
-		mcxDialog.alert(result.msg);
-		fnSearch();
-		return;
-	}
-
-	// 송장번호 저장시
-	$('#btnSave').on('click', function () {
-		var selectedData = gridOptions.api.getSelectedRows();
-
-		if (selectedData.length == 0) {
-			mcxDialog.alert('선택된 행이 없습니다.');
-			return;
-		}
-
-		var checkFlag = false;
-		$.each(selectedData, function(idx, item) {
-			if (gagajf.isNull(item.shipCompCd)){
-				checkFlag = true;
-				mcxDialog.alert('배송업체를 선택하세요.');
-				return;
-			}
-
-			if (gagajf.isNull(item.invoiceNo)){
-				checkFlag = true;
-				mcxDialog.alert('송장번호를 입력하세요.');
-				return;
-			}
-		});
-
-		if (checkFlag){
-			return false;
-		}
-
-		mcxDialog.confirm('저장 하시겠습니까?', {
-			cancelBtnText	: "취소",
-			sureBtnText		: "확인",
-			sureBtnClick	: function(){
-				var jsonData = JSON.stringify(selectedData);
-				gagajf.ajaxJsonSubmit('/order/seller/unorder/invoice/save', jsonData, fnInvoiceSaveCollback);
-
-			}
-		});
-
-	});
-
-	// 초기화 클릭시
-	$('#btnInit').on('click', function() {
-		$('#searchForm')[0].reset();
-		$("#multiBrand").empty();
-	});
-
-	// 자사/입점 변경여부
-	$("#searchForm input[name=selfYn]").bind('click change', function () {
-		var radioValue = $(this).val();
-		var selfGb = "S";	// 자사 공급 업체
-
-		if (radioValue == "N"){
-			selfGb = "E";	//입점 공급업체
-		}
-
-		var actionUrl = '/renderer/supply/company/list/'+ selfGb;
-
-		$('#searchForm').find('#multiBrand').empty();
-
-		cfnCreateCombo(actionUrl, $('#searchForm select[name=supplyCompCd]'), "[전체]", "");
-	});
-
-	// 업체변경시
-	$('#searchForm select[name=supplyCompCd]').on('change', function() {
-		var actionUrl = '/renderer/supplyCompany/brand/list/' + $(this).val();
-
-		if (sessRoleCd == "G001_B000") {
-			actionUrl = '/renderer/brand/AuthBrandlist';
-		}
-
-		cfnCreateMultiCombo(actionUrl,"multiBrand",  "[전체]",null, 'Y');
-	});
-
-	//초기설정
-	$(document).ready(function() {
-		// 달력기능 활성화
-		cfnCreateCalendar('#terms', 'stDate', 'edDate', true, '주문');
-		gagaAgGrid.createGrid('gridList', gridOptions);
-		gridOptions.api.hideOverlay();
-	});
-
-</script>
-
-</html>
-
-
-
-
-

+ 0 - 138
src/main/webapp/WEB-INF/views/order/OrderSellerDelvListForm.html

@@ -1,138 +0,0 @@
-<!DOCTYPE html>
-<html lang="ko" xmlns:th="http://www.thymeleaf.org">
-<!--
- *******************************************************************************
- * @source  : OrderSellerDelvListForm.html
- * @desc    : 입점발주최종확인 Page
- *============================================================================
- * SISUN
- * Copyright(C) 2020 TSIT, All rights reserved.
- *============================================================================
- * VER  DATE         AUTHOR      DESCRIPTION
- * ===  ===========  ==========  =============================================
- * 1.0  2021.04.20   xodud1202   최초 작성
- *******************************************************************************
- -->
- 
-<div id="main">
-	<!-- 메인타이틀 영역 -->
-	<div class="main-title">
-	</div>
-	<!-- //메인타이틀 영역 -->
-	
-	<!-- 메뉴 설명 -->
-	<div class="infoBox menu-desc">
-	</div>
-	
-	<form id="searchForm" name="searchForm" action="#" th:action="@{'/order/seller/unorder/list'}">
-		<input type="hidden" name="ordDtlStat" value="G013_40" />
-		<input type="hidden" name="supplyCompCd" th:value="${supplyCompCd}" />
-		<div class="panelStyle">
-			<ul class="panelBar">
-				<li class="aR">
-					<button type="button" id="btnSave" class="btn btn-success btn-lg">저장</button>
-				</li>
-			</ul>
-			
-			<div class="panelContent" style="overflow: hidden;">
-				<div id="gridList" style="width: 100%; height: 700px;" class="ag-theme-balham lh30"></div>
-			</div>
-		</div>
-	</form>
-</div>
-
-<script th:inline="javascript">
-var shipCompanyList = gagajf.convertToArray([[${shipCompanyList}]]);
-var columnDefs = [
-	{width: 40, minWidth: 40, cellClass: 'text-right', headerCheckboxSelection: true, checkboxSelection: true, filter: false},
-	{headerName: 'No', width: 60, cellClass: 'text-center', valueGetter: function(params) { return params.node.rowIndex + 1 }},
-	{headerName: "입점업체",			field:"supplyCompNm",		width:70, cellClass: 'text-center'},
-	{headerName: "입점업체코드",		field:"supplyCompCd",		width:80, cellClass: 'text-center', hide: true},
-	{headerName: "브랜드",			field:"brandKnm",			width:80, cellClass: 'text-center'},
-	{headerName: "주문번호",			field:"ordNo",				width:70, cellClass: 'text-center'},
-	{headerName: "주문상세번호",		field:"ordDtlNo",			width:100, cellClass: 'text-center'},
-	{headerName: "업체상품코드",		field:"supplyGoodsCd",		width:100, cellClass: 'text-center'},
-	{headerName: "상품코드",			field:"goodsCd",			width:100, cellClass: 'text-center'},
-	{headerName: "상품명",			field:"goodsNm",			width:300, cellClass: 'text-center'},
-	{headerName: "옵션1",			field:"optCd1",				width:100, cellClass: 'text-center'},
-	{headerName: "옵션2",			field:"optCd2",				width:100, cellClass: 'text-center'},
-	{headerName: "배송업체",			field:"shipCompCd",			width:120, cellClass: 'text-center'
-		, valueFormatter: function (params) {
-			return gagaAgGrid.lookupValue(shipCompanyList, params.value);
-		}
-		, valueParser: function (params) {
-			return gagaAgGrid.lookupKey(shipCompanyList, params.newValue);
-		}
-	},
-	{headerName: "송장",				field:"invoiceNo",			width:120, cellClass: 'text-center'},
-	{headerName: "주문수량",			field:"ordQty",				width:100, cellClass: 'text-center'},
-	{headerName: "취소수량",			field:"cnclRtnQty",			width:100, cellClass: 'text-center'},
-	{headerName: "결품수량",			field: "cnclRtnQty",		width: 100, cellClass: 'text-center', hide: true},
-	{headerName: "결제PG",			field: "pgGb",				width: 100, cellClass: 'text-center', hide: true},
-	{headerName: "결제수단",			field: "payMeans",			width: 100, cellClass: 'text-center', hide: true},
-	{headerName: "고객번호",			field: "custNo",			width: 100, cellClass: 'text-center', hide: true},
-	{headerName: "주문고객명",		field: "ordNm",				width: 100, cellClass: 'text-center', hide: true},
-	{headerName: "환불계좌은행코드",	field: "bankCd",			width: 100, cellClass: 'text-center', hide: true},
-	{headerName: "환불계좌예금주명",	field: "accountNm",			width: 100, cellClass: 'text-center', hide: true},
-	{headerName: "환불계좌번호",		field: "accountNo",			width: 100, cellClass: 'text-center', hide: true}
-];
-
-var gridOptions = gagaAgGrid.getGridOptions(columnDefs);
-gridOptions.suppressRowClickSelection = true;
-gridOptions.rowSelection = 'multiple';
-gridOptions.stopEditingWhenGridLosesFocus = true;
-
-// 검색
-var fnSearch = function() {
-	var formId = '#searchForm';
-	gagaAgGrid.fetch($(formId).prop('action'), gridOptions, formId);
-}
-
-//초기설정
-$(document).ready(function() {
-	// 달력기능 활성화
-	gagaAgGrid.createGrid('gridList', gridOptions);
-	gridOptions.api.hideOverlay();
-
-	fnSearch();
-});
-
-$("#btnSave").on("click", function(e) {
-	var selectedData = gridOptions.api.getSelectedRows();
-
-	if (selectedData.length == 0) {
-		mcxDialog.alert('선택된 행이 없습니다.');
-		return;
-	}
-
-	for(let i = 0 ; i < selectedData.length ; i++) {
-		let rowData = selectedData[i];
-		if(typeof rowData.cancelQty == "undefined") {
-			mcxDialog.alert('선택된 행의 미출고수량을 입력해주세요.');
-			return;
-		}
-	}
-
-	mcxDialog.confirm('선택된 주문을 배송중으로 변경하시겠습니까?', {
-		cancelBtnText	: "취소",
-		sureBtnText		: "확인",
-		sureBtnClick	: function(){
-			var jsonData = JSON.stringify(selectedData);
-			gagajf.ajaxJsonSubmit('/order/seller/delv/started', jsonData, fnEndFunction);
-		}
-	});
-
-	// 엑셀다운로드
-	var fnEndFunction = function(result){
-		mcxDialog.alert("성공적으로 저장되었습니다.");
-		fnSearch();
-	}
-});
-</script>
-
-</html>
-
-
-
-
-

+ 17 - 4
src/main/webapp/WEB-INF/views/order/OrderSellerListForm.html

@@ -27,6 +27,7 @@
 	<form id="searchForm" name="searchForm" action="#" th:action="@{'/order/seller/unorder/list'}">
 		<input type="hidden" id="searchGb" name="searchGb" />
 		<input type="hidden" id="imageViewYn" name="imageViewYn" />
+		<input type="hidden" name="pageNo" id="pageNo" value ="1"/>
 		
 		<!-- 패널 영역1 -->
 		<div class="panelStyle" >
@@ -136,8 +137,8 @@
 <label class="off">
 	<a href="javascript:void(0);" id="hdOrderExcelList" style="display: none;">엑셀다운로드</a>
 </label>
-	
-<script type="text/javascript" src="/ux/plugins/gaga/gaga.paging.js?v=2019072202"></script>
+
+<script type="text/javascript" src="/ux/plugins/gaga/gaga.paging.js?v=20210114"></script>
 
 <script th:inline="javascript">
 /*<![CDATA[*/
@@ -215,8 +216,20 @@ var fnSearch = function() {
 			return;
 		}
 	}
-	
-	gagaAgGrid.fetch($(formId).prop('action'), gridOptions, formId);
+
+	gagaPaging.init('searchForm', fnSearchCallBack, 'orderListPagination', 100);
+	gagaPaging.load($("#searchForm input[name=pageNo]").val());
+	// gagaAgGrid.fetch($(formId).prop('action'), gridOptions, formId);
+}
+
+var fnSearchCallBack = function(result){
+	$('#searchForm').find('#gridRowTotalCount').html(result.pageing.pageable.totalCount.addComma());
+	$('#searchForm').find('#pageNo').val(result.pageing.pageable.pageNo.addComma());
+	$('#searchForm').find('#pgNo').html(result.pageing.pageable.pageNo.addComma());
+	$('#searchForm').find('#endPgNo').html(result.pageing.pageable.totalPage.addComma());
+
+	gridOptions.api.setRowData(result.orderList);
+	gagaPaging.createPagination(result.pageing.pageable);
 }
 
 // 엑셀다운로드 시 주문상태 변경