فهرست منبع

사이즈별 재고 현황 엑셀다운로드 화면 단위

eskim 5 سال پیش
والد
کامیت
608e030b1d

+ 26 - 4
src/main/java/com/style24/persistence/mybatis/shop/TssStock.xml

@@ -11,6 +11,13 @@
 		              <foreach collection="conditionList" item="item" index="index" separator="or">
 		               UPPER(G.GOODS_CD) LIKE CONCAT('%',UPPER(#{item}),'%') 
 		              </foreach>
+		             )
+		              </when>
+		              <when test='search != null and search == "searchGoodsNm"'>
+		        AND (
+		              <foreach collection="conditionList" item="item" index="index" separator="or">
+		               UPPER(G.GOODS_NM) LIKE CONCAT('%',UPPER(#{item}),'%')
+		              </foreach>
 		             )
 		              </when>
 		              <when test='search != null and search == "searchGoodsNum"'>
@@ -224,6 +231,21 @@
 		</choose>
 	</sql>
 	
+	<!-- 목록 페이징 정보 LIMIT 용 -->
+	<sql id="getListLimitPagingCondition_sql">
+		<choose>
+		<when test="pageable != null">
+		    ) A
+		)Z 
+		LIMIT #{pageable.limitStartRow} ,  #{pageable.pageSize}
+		</when>
+		<otherwise>
+		    ) A
+		)Z
+		</otherwise>
+		</choose>
+	</sql>
+	
 	<!-- 상품 사이즈별 재고 현황 목록 건수 -->
 	<select id="getGoodsSizeStockCount" parameterType="GoodsSearch" resultType="int">
 		/* TsaStock.getGoodsSizeStockCount */
@@ -344,7 +366,7 @@
 		    , (SELECT ITEMKIND_NM FROM TB_ITEMKIND WHERE ITEMKIND_CD = Z.ITEMKIND_CD) AS ITEMKIND_NM
 		    , FN_GET_CODE_NM('G008', Z.GOODS_STAT) AS GOODS_STAT_NM
 		FROM (
-		    SELECT A.*, @rownum := @rownum + 1  RNUM 
+		    SELECT A.* -- , @rownum := @rownum + 1  RNUM 
 		    FROM (
 		        SELECT  X.GOODS_CD
 		              , X.BRAND_ENM
@@ -390,10 +412,10 @@
 		                    INNER JOIN TB_SUPPLY_COMPANY S ON G.SUPPLY_COMP_CD = S.SUPPLY_COMP_CD
 		                    INNER JOIN TB_OPTION ST ON G.GOODS_CD = ST.GOODS_CD
 		                    <if test="searchGb == null or searchGb =='BASIC'">
-		                                            <if test="optCd1 == null or optCd1 != ''">
+		                                            <if test="optCd1 != null and optCd1 != ''">
 		                                            AND ST.OPT_CD1 = #{optCd1}
 		                                            </if>
-		                                            <if test="optCd2 == null or optCd2 != ''">
+		                                            <if test="optCd2 != null and optCd2 != ''">
 		                                            AND ST.OPT_CD2 = #{optCd2}
 		                                            </if>
 		                    </if>
@@ -474,7 +496,7 @@
 		            </if>
 		        ORDER BY X.GOODS_CD, X.OPT_CD, X.REG_DT DESC
 		        </if>
-		<include refid="getListPagingCondition_sql"/>
+		<include refid="getListLimitPagingCondition_sql"/>
 	</sql>
 	
 	<!-- 상품 사이즈별 품절여부 변경 -->

+ 7 - 5
src/main/java/com/style24/scm/biz/web/TssStockController.java

@@ -124,10 +124,10 @@ public class TssStockController extends TssBaseController {
 		//입점업체담당자는 업체코드 설정
 		if ("G001_B000".equals(TssSession.getInfo().getRoleCd())) {
 			goodsSearch.setSupplyCompCd(TssSession.getInfo().getSupplyCompCd());
-			goodsSearch.setMdNo(TssSession.getInfo().getUserNo().toString());
+//			goodsSearch.setMdNo(TssSession.getInfo().getUserNo().toString());
 		}
 		if (!StringUtils.isBlank(goodsSearch.getCondition())) {
-			goodsSearch.setConditionList(goodsSearch.getCondition().replaceAll("\r", "").split("\n"));
+			goodsSearch.setConditionList(goodsSearch.getCondition().replaceAll("\r", "").trim().split("\n"));
 		}
 
 		goodsSearch.setRegNo(TssSession.getInfo().getUserNo());	//엑셀조회시 로그인 사용자의 엑셀 상품조회시 사용
@@ -158,13 +158,15 @@ public class TssStockController extends TssBaseController {
 		//입점업체담당자는 업체코드 설정
 		if ("G001_B000".equals(TssSession.getInfo().getRoleCd())) {
 			goodsSearch.setSupplyCompCd(TssSession.getInfo().getSupplyCompCd());
-			goodsSearch.setMdNo(TssSession.getInfo().getUserNo().toString());
+//			goodsSearch.setMdNo(TssSession.getInfo().getUserNo().toString());
 		}
 		if (!StringUtils.isBlank(goodsSearch.getCondition())) {
-			goodsSearch.setConditionList(goodsSearch.getCondition().replaceAll("\r", "").split("\n"));
+			goodsSearch.setConditionList(goodsSearch.getCondition().replaceAll("\r", "").trim().split("\n"));
 		}
 		goodsSearch.setRegNo(TssSession.getInfo().getUserNo());	//엑셀조회시 로그인 사용자의 엑셀 상품조회시 사용
-
+		goodsSearch.setPageable(new TscPageRequest(goodsSearch.getPageNo() - 1, goodsSearch.getPageSize()));
+		goodsSearch.getPageable().setTotalCount(stockService.getGoodsSizeStockCount(goodsSearch));
+		
 		// 대용량엑셀파일다운로드는 이런 식으로 ...
 		stockService.getGoodsSizeStockExcelList(goodsSearch, excelFilenameWithPath);
 

+ 1 - 0
src/main/webapp/WEB-INF/views/stock/GoodsSizeStockForm.html

@@ -484,6 +484,7 @@
 	}
 	
 	var fnGoodsSizeStockExcelSearchCallBack = function(result){
+		$("#goodsSizeStockForm input[name=pageNo]").val('1');
 		fnGoodsListSearch("EXCEL");
 	}