Преглед изворни кода

자사/점별 공급업체 조회

eskim пре 5 година
родитељ
комит
e63f994325

+ 9 - 3
style24.admin/src/main/java/com/style24/admin/biz/web/TsaGoodsController.java

@@ -434,7 +434,9 @@ public class TsaGoodsController extends TsaBaseController {
 
 		mav.addObject("siteList", rendererService.getAvailCommonCodeList("G000"));
 		// 공급업체
-		mav.addObject("supplyCompList", rendererService.getSupplyCompanyList());
+		String supplyCompCd = "";
+		mav.addObject("supplyCompList", rendererService.getSupplyCompanyList(supplyCompCd, "Y"));
+		//mav.addObject("supplyCompList", rendererService.getSupplyCompanyList());
 		// 상품상태
 		String[] exceptCds = {"G008_00"};
 		mav.addObject("goodsStatList", rendererService.getCommonCodeList("G008", "Y", exceptCds));
@@ -1070,6 +1072,9 @@ public class TsaGoodsController extends TsaBaseController {
 	public ModelAndView wmsInstockForm() {
 		ModelAndView mav = new ModelAndView();
 
+		// 공급업체
+		String supplyCompCd = "";
+		mav.addObject("supplyCompList", rendererService.getSupplyCompanyList(supplyCompCd, "Y"));
 		// 상품상태
 		String[] exceptCds = {"G008_00"};
 		mav.addObject("goodsStatList", rendererService.getCommonCodeList("G008", "Y", exceptCds));
@@ -1482,7 +1487,6 @@ public class TsaGoodsController extends TsaBaseController {
 		return super.ok(message.getMessage("SUCC_0003"));
 	}
 
-
 	/**
 	 * 상품 재입고알림관리 화면
 	 *
@@ -1719,7 +1723,9 @@ public class TsaGoodsController extends TsaBaseController {
 
 		mav.addObject("siteList", rendererService.getAvailCommonCodeList("G000"));
 		// 공급업체
-		mav.addObject("supplyCompList", rendererService.getSupplyCompanyList());
+		String supplyCompCd = "";
+		mav.addObject("supplyCompList", rendererService.getSupplyCompanyList(supplyCompCd, "Y"));
+		//mav.addObject("supplyCompList", rendererService.getSupplyCompanyList());
 		// 상품상태
 		String[] exceptCds = {"G008_00"};
 		mav.addObject("goodsStatList", rendererService.getCommonCodeList("G008", "Y", exceptCds));

+ 1 - 3
style24.admin/src/main/java/com/style24/admin/biz/web/TsaStockController.java

@@ -72,15 +72,13 @@ public class TsaStockController extends TsaBaseController {
 	public ModelAndView goodsSizeStockListForm() {
 
 		ModelAndView mav = new ModelAndView();
-		//사이트
-		mav.addObject("siteList", rendererService.getAvailCommonCodeList("G000"));
 
 		String supplyCompCd = "";
 		if ("G001_B000".equals(TsaSession.getInfo().getRoleCd())) {
 			supplyCompCd = TsaSession.getInfo().getSupplyCompCd();
 		}
 		// 공급업체
-		mav.addObject("supplyCompList", rendererService.getSupplyCompanyList(supplyCompCd));
+		mav.addObject("supplyCompList", rendererService.getSupplyCompanyList(supplyCompCd, "Y"));
 		// 상품상태
 		String[] exceptCds = {"G008_00"};
 		mav.addObject("goodsStatList", rendererService.getCommonCodeList("G008", "Y", exceptCds));

+ 4 - 3
style24.admin/src/main/java/com/style24/persistence/mybatis/shop/TsaGoods.xml

@@ -397,9 +397,9 @@
 	<select id="getGoodsList" parameterType="GoodsSearch" resultType="Goods">
 		/* TsaGoods.getGoodsList */
 		SELECT Z.*
-		    /*, (CASE WHEN Z.GOODS_TYPE = 'N' THEN (SELECT NVL(SUM(CURR_STOCK_QTY - BASE_STOCK_QTY),0) FROM VW_STOCK WHERE GOODS_CD = Z.GOODS_CD) 
-		            ELSE (SELECT NVL(SUM(CURR_STOCK_QTY - BASE_STOCK_QTY),0) FROM VW_STOCK_EXTEND WHERE GOODS_CD = Z.GOODS_CD) 
-		            END) AS STOCK_QTY_SUM */
+		    , (CASE WHEN Z.GOODS_TYPE = 'G056_N' THEN (SELECT NVL(SUM(CURR_STOCK_QTY - BASE_STOCK_QTY),0) FROM VW_STOCK WHERE GOODS_CD = Z.GOODS_CD) 
+		            ELSE (SELECT NVL(SUM(CURR_STOCK_QTY - BASE_STOCK_QTY),0) FROM VW_STOCK_COMPOSE WHERE GOODS_CD = Z.GOODS_CD) 
+		            END) AS STOCK_QTY_SUM
 		    , 0 AS STOCK_QTY_SUM
 		    , (SELECT ITEMKIND_NM FROM TB_ITEMKIND WHERE ITEMKIND_CD = Z.ITEMKIND_CD ) AS ITEMKIND_NM
 		    , FN_GET_USER_NM(REG_NO) AS REG_NM
@@ -430,6 +430,7 @@
 		              , G.ERP_PRICE_LINK_YN
 		              , G.CHANGEABLE_YN
 		              , G.RETURNABLE_YN
+		              , G.GIFT_PACK_YN
 		              , DATE_FORMAT(G.FRST_CFRM_DT, '%Y%m%d%H%i%S') AS FRST_CFRM_DT
 		              , G.SELL_FEE_RATE
 		              , DATE_FORMAT(G.PRICE_UPD_DT,'%Y%m%d%H%i%S') AS PRICE_UPD_DT

+ 21 - 3
style24.admin/src/main/webapp/WEB-INF/views/goods/GoodsDetailForm.html

@@ -199,8 +199,14 @@
 											</select>
 											<input type="hidden" id="ageGrpCdOrg" name="ageGrpCdOrg"/>
 										</td>
+										<th>선물 주문가능여부<em class="required" title="필수"></em></th>
+										<td>
+											<label class="rdoBtn"><input type="radio" name="giftPackYn" id="giftPackYnY" value="Y" />Y</label>
+											<label class="rdoBtn"><input type="radio" name="giftPackYn" id="giftPackYnN" value="N"/>N</label>
+											<input type="hidden" id="giftPackYnOrg" name="giftPackYnOrg"/>
+										</td>
 										<th>가격변경일</th>
-										<td colspan="3"><span id="priceUpdDtTxt"></span></td>
+										<td><span id="priceUpdDtTxt"></span></td>
 									</tr>
 									<tr>
 										<th>정상가</th>
@@ -223,8 +229,8 @@
 										</td>
 										<th>자사몰 노출여부<em class="required" title="필수"></em></th>
 										<td>
-											<label class="rdoBtn"><input type="radio" name="selfMallYn" id="selfMallYnY" value="Y"  checked/>Y</label>
-											<label class="rdoBtn"><input type="radio" name="selfMallYn" id="selfMallYnn" value="N"/>N</label>
+											<label class="rdoBtn"><input type="radio" name="selfMallYn" id="selfMallYnY" value="Y" />Y</label>
+											<label class="rdoBtn"><input type="radio" name="selfMallYn" id="selfMallYnN" value="N"/>N</label>
 											<input type="hidden" id="selfMallYnOrg" name="selfMallYnOrg"/>
 										</td>
 									</tr>
@@ -504,6 +510,7 @@
 		},
 		{headerName: "재고연동여부", field: "erpStockLinkYn" , width: 100, cellClass: 'text-center'},
 		{headerName: "자사몰노출여부", field: "selfMallYn" , width: 120, cellClass: 'text-center'},
+		{headerName: "선물주문여부", field: "giftPackYn" , width: 120, cellClass: 'text-center'},
 		{headerName: "판매수수료율", field: "sellFeeRate" , width: 120, cellClass: 'text-right'},
 		{headerName: "사용자검색어", field: "goodsSnm1" , width: 150, cellClass: 'text-left'},
 		{headerName: "검색어", field: "goodsSnm" , width: 450, cellClass: 'text-left', tooltipField: "goodsSnm"}
@@ -695,6 +702,12 @@
 			}else{
 				$("#goodsDetailForm input:radio[name=selfMallYn]:input[value='N']").trigger('click');
 			}
+			if (result.giftPackYn == "Y"){
+				$("#goodsDetailForm input:radio[name=giftPackYn]:input[value='Y']").trigger('click');
+			}else{
+				$("#goodsDetailForm input:radio[name=giftPackYn]:input[value='N']").trigger('click');
+			}
+			
 			
 			$('#goodsDetailForm input[name=sellFeeRate]').val(result.sellFeeRate);
 			$("#goodsDetailForm input[name=sellFeeRateOrg]").val(result.sellFeeRate);
@@ -718,6 +731,7 @@
 			$("#goodsDetailForm input[name=formalGbOrg]").val(result.formalGb);
 			$("#goodsDetailForm input[name=erpPriceLinkYnOrg]").val(result.erpPriceLinkYn);
 			$("#goodsDetailForm input[name=selfMallYnOrg]").val(result.selfMallYn);
+			$("#goodsDetailForm input[name=giftPackYnOrg]").val(result.giftPackYn);
 			$("#goodsDetailForm input[name=prePpntUsableYnOrg]").val(result.prePpntUsableYn);
 			$("#goodsDetailForm input[name=preMpntUsableYnOrg]").val(result.preMpntUsableYn);
 			$("#goodsDetailForm input[name=changeableYnOrg]").val(result.changeableYn);
@@ -1728,6 +1742,10 @@
 		if ($("#goodsDetailForm input[name=selfMallYnOrg]").val() != $("input[name=selfMallYn]:checked").val()){
 			return true;
 		}
+		//선물주문여부
+		if ($("#goodsDetailForm input[name=giftPackYnOrg]").val() != $("input[name=giftPackYn]:checked").val()){
+			return true;
+		}
 		//PC포인트 
 		if ($("#goodsDetailForm input[name=pntPrateOrg]").val() != $("#goodsDetailForm input[name=pntPrate]").val()){
 			return true;

+ 5 - 5
style24.admin/src/main/webapp/WEB-INF/views/goods/GoodsDetailSizeStockForm.html

@@ -33,7 +33,7 @@
 		</tr>
 		<tr>
 			<td class="aC">1</td>
-			<td class="aC"><label class="rdoBtn"><input type="radio" name="selfMallYn" id="selfMallYnY" value="Y"  checked/></label></td>
+			<td class="aC"><label class="rdoBtn"><input type="radio" name="A" id="A" value="Y"  checked/></label></td>
 			<td class="aC"><img alt="" src="http://image.istyle24.com/Upload/ProductImage/0000004766/20200826/14505664_L.jpg?RS=560" width="60px"></td>
 			<td class="aC">BK</td>
 			<td class="aC">BLACK</td>
@@ -41,7 +41,7 @@
 		</tr>
 		<tr>
 			<td class="aC">2</td>
-			<td class="aC"><label class="rdoBtn"><input type="radio" name="selfMallYn" id="selfMallYnY" value="Y"  /></label></td>
+			<td class="aC"><label class="rdoBtn"><input type="radio" name="A" id="A" value="Y"  /></label></td>
 			<td class="aC"><img alt="" src="http://image.istyle24.com/Upload/ProductImage/0000004766/20200826/14505664_L.jpg?RS=560" width="60px"></td>
 			<td class="aC">BK</td>
 			<td class="aC">BLACK</td>
@@ -49,7 +49,7 @@
 		</tr>
 		<tr>
 			<td class="aC">3</td>
-			<td class="aC"><label class="rdoBtn"><input type="radio" name="selfMallYn" id="selfMallYnY" value="Y"  /></label></td>
+			<td class="aC"><label class="rdoBtn"><input type="radio" name="A" id="A" value="Y"  /></label></td>
 			<td class="aC"><img alt="" src="http://image.istyle24.com/Upload/ProductImage/0000004766/20200826/14505664_L.jpg?RS=560" width="60px"></td>
 			<td class="aC">BK</td>
 			<td class="aC">BLACK</td>
@@ -86,8 +86,8 @@
 		</th:block>
 		<tr>
 			<th>상품코드</th>
-			<th>옵션1</th>
-			<th>옵션2</th>
+			<th>옵션1(색상)</th>
+			<th>옵션2(사이즈)</th>
 			<th>추가가격</th>
 			<th>노출순서</th>
 			<th>노출여부</th>

+ 21 - 2
style24.admin/src/main/webapp/WEB-INF/views/goods/GoodsListForm.html

@@ -52,6 +52,8 @@
 					<tr>
 						<th>업체/브랜드<em class="required" title="필수"></em></th>
 						<td colspan="3">
+							<label class="rdoBtn"><input type="radio" name="selfYn" id="selfYnY" value="Y"  checked/>자사</label>
+							<label class="rdoBtn"><input type="radio" name="selfYn" id="selfYnN" value="N"/>입점</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>
@@ -410,7 +412,7 @@
 			}
 		},
 		{headerName: "품목", field: "itemkindNm", width: 150, cellClass: 'text-center'},
-		/*{headerName: "판매가능재고", field: "stockQtySum", width: 120, cellClass: 'text-right',
+		{headerName: "판매가능재고", field: "stockQtySum", width: 120, cellClass: 'text-right',
 			valueFormatter: function(params) {	return params.value.addComma();},
 			cellStyle : function(params){
 				if ("00" == params.data.goodsStat  || "10" == params.data.goodsStat || "20" == params.data.goodsStat || "30" == params.data.goodsStat) {
@@ -422,7 +424,7 @@
 				}
 				return { 'background-color': color};
 			} 
-		},*/
+		},
 		{headerName: "상품상태", field: "goodsStat" , width: 100, cellClass: 'text-center',
 			cellEditorParams: { values: gagaAgGrid.extractValues(goodsStatList) },
 			valueFormatter: function (params) { return gagaAgGrid.lookupValue(goodsStatList, params.value); },
@@ -950,6 +952,23 @@
 		cfnOpenGoodsDealPopup();
 	});
 
+	// 자사/입점 변경여부
+	$("#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();
+		//$("#searchForm select[name=brandCd] option:gt(0)").remove();
+
+		cfnCreateCombo(actionUrl, $('#searchForm select[name=supplyCompCd]'), "[전체]", "");
+		
+	});
+	
 	$(document).ready(function() {
 
 		cfnCreateCalendar('#sellTerms', 'stDate', 'edDate', true, '등록일', 'X');

+ 19 - 0
style24.admin/src/main/webapp/WEB-INF/views/goods/GoodsPopupListForm.html

@@ -41,6 +41,8 @@
 				<tr>
 					<th>업체/브랜드<em class="required" title="필수"></em></th>
 					<td colspan="3">
+						<label class="rdoBtn"><input type="radio" name="selfYn" id="selfYnY" value="Y"  checked/>자사</label>
+						<label class="rdoBtn"><input type="radio" name="selfYn" id="selfYnN" value="N"/>입점</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>
@@ -501,6 +503,23 @@
 		
 		cfnCreateMultiCombo(actionUrl,"multiBrand",  "[전체]",null, 'Y', null, null, 'goodsPopupForm');
 	});
+	
+	// 자사/입점 변경여부
+	$("#goodsPopupForm 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;
+
+		$('#goodsPopupForm').find('#multiBrand').empty();
+		//$("#searchForm select[name=brandCd] option:gt(0)").remove();
+
+		cfnCreateCombo(actionUrl, $('#goodsPopupForm select[name=supplyCompCd]'), "[전체]", "");
+		
+	});
 
 	$(document).ready(function() {
 		cfnCreateCalendar('#sellTermsP', 'stDate', 'edDate', true, '등록일', 'X');

+ 25 - 5
style24.admin/src/main/webapp/WEB-INF/views/stock/GoodsSizeStockForm.html

@@ -49,6 +49,8 @@
 					<tr>
 						<th>업체/브랜드<em class="required" title="필수"></em></th>
 						<td colspan="3">
+							<label class="rdoBtn"><input type="radio" name="selfYn" id="selfYnY" value="Y"  checked/>자사</label>
+							<label class="rdoBtn"><input type="radio" name="selfYn" id="selfYnN" value="N"/>입점</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>
@@ -205,7 +207,6 @@
 	var sessRoleCd = [[${sessionInfo.roleCd}]];
 	var goodsStatList = gagajf.convertToArray([[${goodsStatList}]]);
 	var formalGbList = gagajf.convertToArray([[${formalGbList}]]);
-	var siteList = gagajf.convertToArray([[${siteList}]]);
 	var columnDefs = [];
 	
 	columnDefs = [
@@ -293,16 +294,17 @@
 		fnInit();
 	});
 	
-	var fnInit = function(){
-		$("#goodsSizeStockForm input[name=siteCd]").prop("disabled", true);
-		$("#goodsSizeStockForm input[name=siteCd]").addClass("formControl");
+	var fnInit = function(){debugger;
 		
 		$('#goodsSizeStockForm')[0].reset();
 		//$("#goodsSizeStockForm input[type=radio]").removeClass("checked");
 		$("#goodsSizeStockForm input[type=checkbox]").removeClass("checked");
 		//$("#goodsSizeStockForm input[type=radio]").parent("label").removeClass("checked");
 		$("#goodsSizeStockForm input[type=checkbox]").parent("label").removeClass("checked");
-		$("#goodsSizeStockForm input[type=radio][checked]").parent("label").addClass("checked");
+		//$("#goodsSizeStockForm input[type=radio][checked]").parent("label").addClass("checked");
+		
+		$("#goodsSizeStockForm input[name=selfYn]:input[value='Y']").trigger('click');
+		
 	}
 	
 	// 조회클릭시
@@ -523,6 +525,24 @@
 		fnGoodsListSearch("EXCELRESULT");
 	}
 	
+	// 자사/입점 변경여부
+	$("#goodsSizeStockForm input[name=selfYn]").bind('click change', function () {
+	//$('#goodsSizeStockForm input[name=selfYn]').on('change', function() {debugger;
+		var radioValue = $(this).val();
+		var selfGb = "S";	// 자사 공급 업체
+		if (radioValue == "N"){
+			selfGb = "E";	//입점 공급업체
+		}
+		
+		var actionUrl = '/renderer/supply/company/list/'+ selfGb;	
+
+		$("#goodsSizeStockForm select[name=brandCd] option:gt(0)").remove();
+
+		cfnCreateCombo(actionUrl, $('#goodsSizeStockForm select[name=supplyCompCd]'), "[전체]", "");
+
+		
+	});
+	
 	$(document).ready(function() {
 		
 		// Create a agGrid

+ 3 - 3
style24.admin/src/main/webapp/ux/plugins/gaga/gaga.validation.js

@@ -485,12 +485,12 @@ var gagajf = {
 	},
 
 	/**
-	 * formId의 input의 data-valid-type이 integer, real인 경우에 값에 comma(,)를 자동으로 제거한다.
+	 * formId의 input의 data-valid-type이 integer, real, numeric 인 경우에 값에 comma(,)를 자동으로 제거한다.
 	 * 사용) gagajf.removeCommaAtNumberFormattedInput('#registerForm');
 	 */
 	removeCommaAtNumberFormattedInput : function(formId) {
 		$(formId).find('input').each(function(idx, el) {
-			if ($(el).data('validType') == 'integer' || $(el).data('validType') == 'real') {
+			if ($(el).data('validType') == 'integer' || $(el).data('validType') == 'real' || $(el).data('validType') == 'numeric') {
 				$(el).val($(el).val().removeComma());
 			}
 		});
@@ -533,7 +533,7 @@ var gagajf = {
 		gagajf.removeCommaAtNumberFormattedInput(formId);
 
 		var jsonData = JSON.stringify($(formId).serializeObject());
-
+		
 		$.ajax({
 			type : 'POST',
 			url : actionUrl,