Browse Source

샵링커 수정(주문-티몬목록안나옴등,송장 생성 폴더 날짜)

jmh 4 years ago
parent
commit
db9c336c17

+ 3 - 2
src/main/java/com/style24/admin/biz/web/TsaShoplinkerController.java

@@ -700,10 +700,11 @@ log.info(" #### SHOPLINKER CHKE 1 - "+runMap.getRunCnt()+" | "+runMap.getSidOver
 				shoplinkerInvoice.setStDate(stDate);
 				shoplinkerInvoice.setEdDate(edDate);
 
+				String toDt = GagaDateUtil.getToday("yyyyMMdd");
 				// xml 생성경로
-				shoplinkerInvoice.setXmlPath(env.getProperty("shoplinker.xml.path")+"/invoice");
+				shoplinkerInvoice.setXmlPath(env.getProperty("shoplinker.xml.path")+"/invoice/"+toDt);
 				// xml 확인domain url
-				shoplinkerInvoice.setDomainUrl(env.getProperty("shoplinker.xml.view")+"/invoice");
+				shoplinkerInvoice.setDomainUrl(env.getProperty("shoplinker.xml.view")+"/invoice/"+toDt);
 
 				// 샵링커 기본폴더 존재여부 확인
 				String slFolder = GagaFileUtil.getConcatenationPath(env.getProperty("shoplinker.xml.path"));

+ 219 - 25
src/main/java/com/style24/persistence/mybatis/shop/TsaShoplinker.xml

@@ -429,7 +429,30 @@
 		select count(1) from (
 			SELECT
 				ROW_NUMBER() OVER(PARTITION BY B.VENDOR_ID, B.EXTMALL_ID, B.AGENT_ORDER_ID, B.EXTMALL_ORDER_ID ORDER by B.UPLOAD_GB desc, B.UPLOAD_STAT) AS RANKING
-				, A.*
+				, IFNULL(A.SHOPLINKER_ORDER_ID, B.AGENT_ORDER_ID) AS SHOPLINKER_ORDER_ID
+				, IFNULL(A.MALL_ORDER_ID, B.EXTMALL_ORDER_ID) AS MALL_ORDER_ID
+				, CASE 
+					WHEN A.MALL_NAME IS NULL THEN 
+						(SELECT S.EXTMALL_NM FROM TB_EXTMALL S WHERE S.EXTMALL_ID = IFNULL(A.MALL_ID, B.EXTMALL_ID))
+					ELSE A.MALL_NAME 
+				  END MALL_NAME /*몰명*/
+				, IFNULL(A.ORDER_NAME, B.ORD_NM) AS ORDER_NAME /*주문자명*/
+				, IFNULL(A.RECEIVE, B.RECIP_NM) AS RECEIVE
+				, IFNULL(A.PARTNER_PRODUCT_ID, B.GOODS_CD) AS PARTNER_PRODUCT_ID /*상품코드*/
+				, IFNULL(A.PRODUCT_NAME, B.EXTMALL_PROD_NM) AS PRODUCT_NAME /*상품명*/
+				, IFNULL(A.QUANTITY, ORD_QTY) AS QUANTITY /*주문수량*/
+				, IFNULL(A.ORDER_PRICE , B.ORD_AMT) AS ORDER_PRICE /*주문금액*/
+				, IFNULL(A.SALE_PRICE, B.CURR_PRICE) AS SALE_PRICE /*판매단가*/
+				, A.SUPPLY_PRICE
+				, IFNULL(A.SKU_MATCH_CODE, B.OPT_CD) AS SKU_MATCH_CODE	
+				, IFNULL(A.SKU, B.SKU) AS SKU
+				, A.ORDERDATE
+				, A.ORDER_REG_DATE
+				, A.BAESONG_STATUS /*배송상태*/
+				, A.ORDER_PRODUCT_ID /*주문상품번호*/
+				, IFNULL(A.REG_DT, B.REG_DT) AS REG_DT
+				
+				
 				, B.VENDOR_ID
 				, B.EXTMALL_ID
 				, B.EXTMALL_NM
@@ -440,11 +463,57 @@
 				, B.UPLOAD_FAIL_REASON
 				, IFNULL(B.ORD_NO, '') AS ORD_NO
 				, B.DELV_ADDR_SQ
+				, B.REG_DT AS EXTMALL_REG_DT
 			FROM SHOPLINKER_ORDER A
 				LEFT OUTER JOIN TB_EXTMALL_ORDER_UPLOAD B
 					ON A.SHOPLINKER_ORDER_ID = B.AGENT_ORDER_ID
-
-			WHERE 1=1
+			WHERE A.ORDER_REG_DATE >= DATE_FORMAT(replace(#{stDate}, '-', ''), '%Y%m%d%H%i%S')
+            AND A.ORDER_REG_DATE <![CDATA[<]]> DATE_FORMAT(DATE_ADD(replace(#{edDate}, '-', ''), INTERVAL 1 DAY), '%Y%m%d%H%i%S')
+            <include refid="getSlkOrderListCondition_sql"/>
+            
+			UNION ALL 
+			
+			SELECT 
+				1 AS RANKING
+				, IFNULL(A.SHOPLINKER_ORDER_ID, B.AGENT_ORDER_ID) AS SHOPLINKER_ORDER_ID
+				, IFNULL(A.MALL_ORDER_ID, B.EXTMALL_ORDER_ID) AS MALL_ORDER_ID
+				, CASE 
+					WHEN A.MALL_NAME IS NULL THEN 
+						(SELECT S.EXTMALL_NM FROM TB_EXTMALL S WHERE S.EXTMALL_ID = IFNULL(A.MALL_ID, B.EXTMALL_ID))
+					ELSE A.MALL_NAME 
+				  END MALL_NAME /*몰명*/
+				, IFNULL(A.ORDER_NAME, B.ORD_NM) AS ORDER_NAME /*주문자명*/
+				, IFNULL(A.RECEIVE, B.RECIP_NM) AS RECEIVE
+				, IFNULL(A.PARTNER_PRODUCT_ID, B.GOODS_CD) AS PARTNER_PRODUCT_ID /*상품코드*/
+				, IFNULL(A.PRODUCT_NAME, B.EXTMALL_PROD_NM) AS PRODUCT_NAME /*상품명*/
+				, IFNULL(A.QUANTITY, ORD_QTY) AS QUANTITY /*주문수량*/
+				, IFNULL(A.ORDER_PRICE , B.ORD_AMT) AS ORDER_PRICE /*주문금액*/
+				, IFNULL(A.SALE_PRICE, B.CURR_PRICE) AS SALE_PRICE /*판매단가*/
+				, A.SUPPLY_PRICE
+				, IFNULL(A.SKU_MATCH_CODE, B.OPT_CD) AS SKU_MATCH_CODE	
+				, IFNULL(A.SKU, B.SKU) AS SKU
+				, A.ORDERDATE
+				, A.ORDER_REG_DATE
+				, A.BAESONG_STATUS /*배송상태*/
+				, A.ORDER_PRODUCT_ID /*주문상품번호*/
+				, IFNULL(A.REG_DT, B.REG_DT) AS REG_DT
+				
+				, B.VENDOR_ID
+				, B.EXTMALL_ID
+				, B.EXTMALL_NM
+				, B.AGENT_ORDER_ID
+				, B.EXTMALL_ORDER_ID
+				, IFNULL(B.UPLOAD_STAT, 'G021_50') AS UPLOAD_STAT
+				, B.UPLOAD_FAIL_CD
+				, B.UPLOAD_FAIL_REASON
+				, IFNULL(B.ORD_NO, '') AS ORD_NO
+				, B.DELV_ADDR_SQ
+				, B.REG_DT AS EXTMALL_REG_DT
+			FROM 
+				TB_EXTMALL_ORDER_UPLOAD B LEFT OUTER JOIN SHOPLINKER_ORDER A ON A.SHOPLINKER_ORDER_ID = B.AGENT_ORDER_ID 
+			WHERE A.SHOPLINKER_ORDER_ID IS NULL
+			AND B.REG_DT >= DATE_FORMAT(replace(#{stDate}, '-', ''), '%Y%m%d%H%i%S')
+            AND B.REG_DT <![CDATA[<]]> DATE_FORMAT(DATE_ADD(replace(#{edDate}, '-', ''), INTERVAL 1 DAY), '%Y%m%d%H%i%S')
 			<include refid="getSlkOrderListCondition_sql"/>
 		) A
 		WHERE RANKING = 1
@@ -457,7 +526,29 @@
 		(
 			SELECT
 				ROW_NUMBER() OVER(PARTITION BY B.VENDOR_ID, B.EXTMALL_ID, B.AGENT_ORDER_ID, B.EXTMALL_ORDER_ID ORDER by B.UPLOAD_GB desc, B.UPLOAD_STAT) AS RANKING
-				, A.*
+				, IFNULL(A.SHOPLINKER_ORDER_ID, B.AGENT_ORDER_ID) AS SHOPLINKER_ORDER_ID
+				, IFNULL(A.MALL_ORDER_ID, B.EXTMALL_ORDER_ID) AS MALL_ORDER_ID
+				, CASE 
+					WHEN A.MALL_NAME IS NULL THEN 
+						(SELECT S.EXTMALL_NM FROM TB_EXTMALL S WHERE S.EXTMALL_ID = IFNULL(A.MALL_ID, B.EXTMALL_ID))
+					ELSE A.MALL_NAME 
+				  END MALL_NAME /*몰명*/
+				, IFNULL(A.ORDER_NAME, B.ORD_NM) AS ORDER_NAME /*주문자명*/
+				, IFNULL(A.RECEIVE, B.RECIP_NM) AS RECEIVE
+				, IFNULL(A.PARTNER_PRODUCT_ID, B.GOODS_CD) AS PARTNER_PRODUCT_ID /*상품코드*/
+				, IFNULL(A.PRODUCT_NAME, B.EXTMALL_PROD_NM) AS PRODUCT_NAME /*상품명*/
+				, IFNULL(A.QUANTITY, ORD_QTY) AS QUANTITY /*주문수량*/
+				, IFNULL(A.ORDER_PRICE , B.ORD_AMT) AS ORDER_PRICE /*주문금액*/
+				, IFNULL(A.SALE_PRICE, B.CURR_PRICE) AS SALE_PRICE /*판매단가*/
+				, A.SUPPLY_PRICE
+				, IFNULL(A.SKU_MATCH_CODE, B.OPT_CD) AS SKU_MATCH_CODE	
+				, IFNULL(A.SKU, B.SKU) AS SKU
+				, A.ORDERDATE
+				, A.ORDER_REG_DATE
+				, A.BAESONG_STATUS /*배송상태*/
+				, A.ORDER_PRODUCT_ID /*주문상품번호*/
+				, IFNULL(A.REG_DT, B.REG_DT) AS REG_DT
+				
 				, B.VENDOR_ID
 				, B.EXTMALL_ID
 				, B.EXTMALL_NM
@@ -472,8 +563,53 @@
 			FROM SHOPLINKER_ORDER A
 				LEFT OUTER JOIN TB_EXTMALL_ORDER_UPLOAD B
 					ON A.SHOPLINKER_ORDER_ID = B.AGENT_ORDER_ID
-			WHERE 1=1
-
+			WHERE A.ORDER_REG_DATE >= DATE_FORMAT(replace(#{stDate}, '-', ''), '%Y%m%d%H%i%S')
+            AND A.ORDER_REG_DATE <![CDATA[<]]> DATE_FORMAT(DATE_ADD(replace(#{edDate}, '-', ''), INTERVAL 1 DAY), '%Y%m%d%H%i%S')
+            <include refid="getSlkOrderListCondition_sql"/>
+            
+			UNION ALL 
+			
+			SELECT 
+				1 AS RANKING
+				, IFNULL(A.SHOPLINKER_ORDER_ID, B.AGENT_ORDER_ID) AS SHOPLINKER_ORDER_ID
+				, IFNULL(A.MALL_ORDER_ID, B.EXTMALL_ORDER_ID) AS MALL_ORDER_ID
+				, CASE 
+					WHEN A.MALL_NAME IS NULL THEN 
+						(SELECT S.EXTMALL_NM FROM TB_EXTMALL S WHERE S.EXTMALL_ID = IFNULL(A.MALL_ID, B.EXTMALL_ID))
+					ELSE A.MALL_NAME 
+				  END MALL_NAME /*몰명*/
+				, IFNULL(A.ORDER_NAME, B.ORD_NM) AS ORDER_NAME /*주문자명*/
+				, IFNULL(A.RECEIVE, B.RECIP_NM) AS RECEIVE
+				, IFNULL(A.PARTNER_PRODUCT_ID, B.GOODS_CD) AS PARTNER_PRODUCT_ID /*상품코드*/
+				, IFNULL(A.PRODUCT_NAME, B.EXTMALL_PROD_NM) AS PRODUCT_NAME /*상품명*/
+				, IFNULL(A.QUANTITY, ORD_QTY) AS QUANTITY /*주문수량*/
+				, IFNULL(A.ORDER_PRICE , B.ORD_AMT) AS ORDER_PRICE /*주문금액*/
+				, IFNULL(A.SALE_PRICE, B.CURR_PRICE) AS SALE_PRICE /*판매단가*/
+				, A.SUPPLY_PRICE
+				, IFNULL(A.SKU_MATCH_CODE, B.OPT_CD) AS SKU_MATCH_CODE	
+				, IFNULL(A.SKU, B.SKU) AS SKU
+				, A.ORDERDATE
+				, A.ORDER_REG_DATE
+				, A.BAESONG_STATUS /*배송상태*/
+				, A.ORDER_PRODUCT_ID /*주문상품번호*/
+				, IFNULL(A.REG_DT, B.REG_DT) AS REG_DT
+				
+				, B.VENDOR_ID
+				, B.EXTMALL_ID
+				, B.EXTMALL_NM
+				, B.AGENT_ORDER_ID
+				, B.EXTMALL_ORDER_ID
+				, IFNULL(B.UPLOAD_STAT, 'G021_50') AS UPLOAD_STAT
+				, B.UPLOAD_FAIL_CD
+				, B.UPLOAD_FAIL_REASON
+				, IFNULL(B.ORD_NO, '') AS ORD_NO
+				, B.DELV_ADDR_SQ
+				, B.REG_DT AS EXTMALL_REG_DT
+			FROM 
+				TB_EXTMALL_ORDER_UPLOAD B LEFT OUTER JOIN SHOPLINKER_ORDER A ON A.SHOPLINKER_ORDER_ID = B.AGENT_ORDER_ID 
+			WHERE A.SHOPLINKER_ORDER_ID IS NULL
+			AND B.REG_DT >= DATE_FORMAT(replace(#{stDate}, '-', ''), '%Y%m%d%H%i%S')
+            AND B.REG_DT <![CDATA[<]]> DATE_FORMAT(DATE_ADD(replace(#{edDate}, '-', ''), INTERVAL 1 DAY), '%Y%m%d%H%i%S')
 			<include refid="getSlkOrderListCondition_sql"/>
 		) A
 		WHERE RANKING = 1
@@ -574,14 +710,36 @@
 		(
 			SELECT
 				ROW_NUMBER() OVER(PARTITION BY B.VENDOR_ID, B.EXTMALL_ID, B.AGENT_ORDER_ID, B.EXTMALL_ORDER_ID ORDER by B.UPLOAD_GB desc, B.UPLOAD_STAT) AS RANKING
-				, A.*
+				, IFNULL(A.SHOPLINKER_ORDER_ID, B.AGENT_ORDER_ID) AS SHOPLINKER_ORDER_ID
+				, IFNULL(A.MALL_ORDER_ID, B.EXTMALL_ORDER_ID) AS MALL_ORDER_ID
+				, CASE 
+					WHEN A.MALL_NAME IS NULL THEN 
+						(SELECT S.EXTMALL_NM FROM TB_EXTMALL S WHERE S.EXTMALL_ID = IFNULL(A.MALL_ID, B.EXTMALL_ID))
+					ELSE A.MALL_NAME 
+				  END MALL_NAME /*몰명*/
+				, IFNULL(A.ORDER_NAME, B.ORD_NM) AS ORDER_NAME /*주문자명*/
+				, IFNULL(A.RECEIVE, B.RECIP_NM) AS RECEIVE
+				, IFNULL(A.PARTNER_PRODUCT_ID, B.GOODS_CD) AS PARTNER_PRODUCT_ID /*상품코드*/
+				, IFNULL(A.PRODUCT_NAME, B.EXTMALL_PROD_NM) AS PRODUCT_NAME /*상품명*/
+				, IFNULL(A.QUANTITY, ORD_QTY) AS QUANTITY /*주문수량*/
+				, IFNULL(A.ORDER_PRICE , B.ORD_AMT) AS ORDER_PRICE /*주문금액*/
+				, IFNULL(A.SALE_PRICE, B.CURR_PRICE) AS SALE_PRICE /*판매단가*/
+				, A.SUPPLY_PRICE
+				, IFNULL(A.SKU_MATCH_CODE, B.OPT_CD) AS SKU_MATCH_CODE	
+				, IFNULL(A.SKU, B.SKU) AS SKU
+				, A.ORDERDATE
+				, A.ORDER_REG_DATE
+				, A.BAESONG_STATUS /*배송상태*/
+				, A.ORDER_PRODUCT_ID /*주문상품번호*/
+				, IFNULL(A.REG_DT, B.REG_DT) AS REG_DT
+				
 				, B.VENDOR_ID
 				, B.EXTMALL_ID
 				, B.EXTMALL_NM
 				, B.AGENT_ORDER_ID
 				, B.EXTMALL_ORDER_ID
-				, FN_GET_CODE_NM('G021', IFNULL(B.UPLOAD_STAT, 'G021_50')) AS UPLOAD_STAT
-				, FN_GET_CODE_NM('G022', B.UPLOAD_FAIL_CD) AS UPLOAD_FAIL_CD
+				, IFNULL(B.UPLOAD_STAT, 'G021_50') AS UPLOAD_STAT
+				, B.UPLOAD_FAIL_CD
 				, B.UPLOAD_FAIL_REASON
 				, IFNULL(B.ORD_NO, '') AS ORD_NO
 				, B.DELV_ADDR_SQ
@@ -589,8 +747,53 @@
 			FROM SHOPLINKER_ORDER A
 				LEFT OUTER JOIN TB_EXTMALL_ORDER_UPLOAD B
 					ON A.SHOPLINKER_ORDER_ID = B.AGENT_ORDER_ID
-			WHERE 1=1
-
+			WHERE A.ORDER_REG_DATE >= DATE_FORMAT(replace(#{stDate}, '-', ''), '%Y%m%d%H%i%S')
+            AND A.ORDER_REG_DATE <![CDATA[<]]> DATE_FORMAT(DATE_ADD(replace(#{edDate}, '-', ''), INTERVAL 1 DAY), '%Y%m%d%H%i%S')
+            <include refid="getSlkOrderListCondition_sql"/>
+            
+			UNION ALL 
+			
+			SELECT 
+				1 as RANKING
+				, IFNULL(A.SHOPLINKER_ORDER_ID, B.AGENT_ORDER_ID) AS SHOPLINKER_ORDER_ID
+				, IFNULL(A.MALL_ORDER_ID, B.EXTMALL_ORDER_ID) AS MALL_ORDER_ID
+				, CASE 
+					WHEN A.MALL_NAME IS NULL THEN 
+						(SELECT S.EXTMALL_NM FROM TB_EXTMALL S WHERE S.EXTMALL_ID = IFNULL(A.MALL_ID, B.EXTMALL_ID))
+					ELSE A.MALL_NAME 
+				  END MALL_NAME /*몰명*/
+				, IFNULL(A.ORDER_NAME, B.ORD_NM) AS ORDER_NAME /*주문자명*/
+				, IFNULL(A.RECEIVE, B.RECIP_NM) AS RECEIVE
+				, IFNULL(A.PARTNER_PRODUCT_ID, B.GOODS_CD) AS PARTNER_PRODUCT_ID /*상품코드*/
+				, IFNULL(A.PRODUCT_NAME, B.EXTMALL_PROD_NM) AS PRODUCT_NAME /*상품명*/
+				, IFNULL(A.QUANTITY, ORD_QTY) AS QUANTITY /*주문수량*/
+				, IFNULL(A.ORDER_PRICE , B.ORD_AMT) AS ORDER_PRICE /*주문금액*/
+				, IFNULL(A.SALE_PRICE, B.CURR_PRICE) AS SALE_PRICE /*판매단가*/
+				, A.SUPPLY_PRICE
+				, IFNULL(A.SKU_MATCH_CODE, B.OPT_CD) AS SKU_MATCH_CODE	
+				, IFNULL(A.SKU, B.SKU) AS SKU
+				, A.ORDERDATE
+				, A.ORDER_REG_DATE
+				, A.BAESONG_STATUS /*배송상태*/
+				, A.ORDER_PRODUCT_ID /*주문상품번호*/
+				, IFNULL(A.REG_DT, B.REG_DT) AS REG_DT
+				
+				, B.VENDOR_ID
+				, B.EXTMALL_ID
+				, B.EXTMALL_NM
+				, B.AGENT_ORDER_ID
+				, B.EXTMALL_ORDER_ID
+				, IFNULL(B.UPLOAD_STAT, 'G021_50') AS UPLOAD_STAT
+				, B.UPLOAD_FAIL_CD
+				, B.UPLOAD_FAIL_REASON
+				, IFNULL(B.ORD_NO, '') AS ORD_NO
+				, B.DELV_ADDR_SQ
+				, B.REG_DT AS EXTMALL_REG_DT
+			FROM 
+				TB_EXTMALL_ORDER_UPLOAD B LEFT OUTER JOIN SHOPLINKER_ORDER A ON A.SHOPLINKER_ORDER_ID = B.AGENT_ORDER_ID 
+			WHERE A.SHOPLINKER_ORDER_ID IS NULL
+			AND B.REG_DT >= DATE_FORMAT(replace(#{stDate}, '-', ''), '%Y%m%d%H%i%S')
+            AND B.REG_DT <![CDATA[<]]> DATE_FORMAT(DATE_ADD(replace(#{edDate}, '-', ''), INTERVAL 1 DAY), '%Y%m%d%H%i%S')
 			<include refid="getSlkOrderListCondition_sql"/>
 		) A
 		WHERE RANKING = 1
@@ -601,17 +804,8 @@
 	<!-- 샵링커주문수집 조건 정보 -->
 	<sql id="getSlkOrderListCondition_sql">
 
-			<if test="stDate != null and stDate != ''">
-	        AND A.ORDER_REG_DATE >= DATE_FORMAT(replace(#{stDate}, '-', ''), '%Y%m%d%H%i%S')
-            </if>
-            <if test="edDate != null and edDate != ''">
-            <![CDATA[
-	        AND A.ORDER_REG_DATE < DATE_FORMAT(DATE_ADD(replace(#{edDate}, '-', ''), INTERVAL 1 DAY), '%Y%m%d%H%i%S')
-            ]]>
-            </if>
-
 			<if test="extmallId != null and extmallId != ''">
-	        AND A.MALL_ID = #{extmallId}
+	        AND IFNULL(A.MALL_ID, B.EXTMALL_ID) = #{extmallId}
 	        </if>
 
 			<if test="uploadStat != null and uploadStat != ''">
@@ -624,16 +818,16 @@
 	        <if test='conditionList != null and conditionList.length>0'>
 	            <choose>
 	              <when test='search != null and search == "shoplinkerOrderId"'>
-	              	AND UPPER(A.SHOPLINKER_ORDER_ID) IN
+	              	AND IFNULL(A.SHOPLINKER_ORDER_ID, B.AGENT_ORDER_ID) IN
 			            <foreach collection="conditionList" item="item" index="index"  open="(" close=")" separator=",">
-			       		UPPER(#{item})
+			       		#{item}
 			            </foreach>
 	              </when>
 
 	              <when test='search != null and search == "mallOrderId"'>
-	              	AND UPPER(A.MALL_ORDER_ID) IN
+	              	AND IFNULL(A.MALL_ORDER_ID, B.EXTMALL_ORDER_ID) IN
 			            <foreach collection="conditionList" item="item" index="index"  open="(" close=")" separator=",">
-			       		UPPER(#{item})
+			       		#{item}
 			            </foreach>
 	              </when>
 

+ 12 - 2
src/main/webapp/WEB-INF/views/shoplinker/ShoplinkerOrderForm.html

@@ -257,7 +257,11 @@
 			, cellRenderer	: function (params) {
 				var roleCd = [[${sessionInfo.roleCd}]];
 				if (!roleCd.startsWith("C")) {
-					return "<a href=\"javascript:void(0);\" onclick=\"fnReOpenSlkOrderDetailPopup('" + params.value + "');\">" + params.value + "</a>";
+					if( null != params.value && "null" != params.value){
+						return "<a href=\"javascript:void(0);\" onclick=\"fnReOpenSlkOrderDetailPopup('" + params.value + "');\">" + params.value + "</a>";
+					}else {
+						return 0;
+					}
 				} else {
 					return params.value;
 				}
@@ -282,7 +286,13 @@
 			cellEditorParams: { maxlength: 14, validType: 'numeric'}
 		},
 		{headerName: "공급가", 			field: "supplyPrice",				width: 100, cellClass: 'text-center'
-			,valueFormatter: function(params) {return params.value.addComma();},
+			,valueFormatter: function(params) {
+				if( null != params.value && "null" != params.value){
+					return params.value.addComma();	
+				}else{
+					return 0;
+				}				
+			},
 			cellEditor: 'textCellEditor',
 			cellEditorParams: { maxlength: 14, validType: 'numeric'}
 		},