Просмотр исходного кода

Merge remote-tracking branch 'origin/style' into jsh77b

jsh77b 4 лет назад
Родитель
Сommit
fef662cbc3

+ 30 - 16
src/main/java/com/style24/core/biz/service/TscShoplinkerService.java

@@ -67,6 +67,7 @@ public class TscShoplinkerService {
 	private ObjectMapper mapper;
 
 	private String fileAddNm; // 유저번호_년월일시분초
+	private String chkPermission = "";	// 임시 권한체크용
 
 
 	/**
@@ -142,6 +143,7 @@ public class TscShoplinkerService {
 
 		// 파일명 뒤에 붙일 시간
 		fileAddNm = GagaDateUtil.getTodayDateTime();
+		chkPermission = "";
 
 		int totalPage = 0;
 		int totalCount = 0;
@@ -160,7 +162,7 @@ public class TscShoplinkerService {
 			currListCount = map.getInt("currListCount");
 
 			DecimalFormat formatter = new DecimalFormat("###,###");
-			slkSearch.setTxt(fileAddNm+" ["+shoplinkerOrder.getInfoStr()+"]"+ " 총페이지: "+totalPage+ "("+formatter.format(totalCount)+"건) || "+currentlyPage);
+			slkSearch.setTxt(chkPermission+" ["+shoplinkerOrder.getInfoStr()+"]"+ " 총페이지: "+totalPage+ "("+formatter.format(totalCount)+"건) || "+currentlyPage);
 			updateCallApiRunable(slkSearch);
 
 			if( currentlyPage < 1 ) currentlyPage = 1;
@@ -181,8 +183,7 @@ public class TscShoplinkerService {
 
 		}else {
 			// 수집건없음, 수집실패, 오류
-			log.info("\n################### SHOPLINKER_CHECK 4 : "+ map);
-			String txt = fileAddNm+" ["+shoplinkerOrder.getInfoStr()+"] "+ map.getString("RESULT_MSG");
+			String txt = chkPermission+" ["+shoplinkerOrder.getInfoStr()+"] "+ map.getString("RESULT_MSG");
 			slkSearch.setTxt(StringUtils.abbreviate(txt, 0 , 200));
 			updateCallApiRunable(slkSearch);
 		}
@@ -253,24 +254,38 @@ public class TscShoplinkerService {
 			log.info("\n################### SHOPLINKER_CHECK 0-2 : "+shoplinkerOrder.getXmlPath());
 			// 파일 권한확인 --------------------------------------------------
 		    File dir = new File(shoplinkerOrder.getXmlPath());
-		    log.info("\n################### SHOPLINKER_CHECK 0-3  "+dir);
-		    if (dir.canRead()){
-		    	log.info("\n################### SHOPLINKER_CHECK 1-1 읽기 가능 ");
-		    }
-		    // 쓰기 가능한 파일인지 확인
-		    if (dir.canWrite()){
-		    	log.info("\n################### SHOPLINKER_CHECK 1-2 쓰기 가능 ");
+		    if( null != dir) {
+		    	log.info("\n################### SHOPLINKER_CHECK 0-3  "+dir);
+		    	log.info("\n################### SHOPLINKER_CHECK 0-4  "+dir.canRead()+" / "+dir.canWrite());
+		    	if( !dir.canRead()) {
+		    		dir.setReadable(true);
+		    		chkPermission = "P";
+				}
+				if( !dir.canWrite()) {
+					dir.setWritable(true);
+					chkPermission = "P";
+				}
+				log.info("\n################### SHOPLINKER_CHECK 0-5  "+dir.canRead()+" / "+dir.canWrite());
 		    }
-			
 		    // 파일 권한확인 끝 ------------------------------------------------
-		    log.info("\n################### SHOPLINKER_CHECK 0-4  ");
+		    log.info("\n################### SHOPLINKER_CHECK 1 ");
 		    
 		    try {
 		    	shoplinkerUtil.makeRequestXmlFile(sbRequest.toString(), xmlPath);
 		    	
 			} catch (Exception e) {
-				
-				log.info("### 샵링커 파일생성 오류- 파일 직접생성 시작 !"+ e);
+				File xmlFile = new File(xmlPath);
+				if( null != xmlFile) {
+					if( !xmlFile.canRead()) {
+						xmlFile.setReadable(true);
+					}
+					if( !xmlFile.canWrite()) {
+						xmlFile.setWritable(true);
+					}
+				}
+				chkPermission = "P";
+				log.info("### 샵링커 파일생성 오류- 파일 직접생성 시작 err !"+ e);
+				log.info("### 샵링커 파일생성 오류- 파일 :"+ xmlFile);
 				FileOutputStream fileOutputStream = new FileOutputStream(xmlPath, false);
 				log.info("### SHOPLINKER_NEW_FILE 1 ");
 				OutputStreamWriter outputStreamWriter = new OutputStreamWriter(fileOutputStream, Charset.forName("MS949"));
@@ -287,7 +302,7 @@ public class TscShoplinkerService {
 		    
 			log.info("\n################### SHOPLINKER_CHECK 2-1 : ");
 			String xmlUrl = GagaFileUtil.getConcatenationPath(shoplinkerOrder.getDomainUrl(), xmlFileName.toString());
-			log.info("\n################### SHOPLINKER_CHECK 2-2 : "+xmlUrl);
+			
 			if (!"locd".equals(shoplinkerOrder.getProfiles())) { // 로컬이 아닐때
 				try {
 					// API 호출
@@ -401,7 +416,6 @@ public class TscShoplinkerService {
 			log.error("xml 생성오류 ", e);
 			returnMap.setString("RESULT_TYPE", TscConstants.ShoplinkerApiStat.ERROR.value());
 			returnMap.setString("RESULT_MSG", "xml 생성오류");
-			log.info("\n################### SHOPLINKER_CHECK 3 : xml 생성오류 :"+returnMap);
 		}
 
 		returnMap.setInt("currListCount", currListCount);

+ 63 - 32
src/main/java/com/style24/persistence/mybatis/shop/TscOrder.xml

@@ -1610,11 +1610,7 @@
 		 WHERE 1 = 1
 		   AND P.ORD_NO = #{ordNo}
 		   AND P.PAY_STAT IN ('G016_30', 'G016_10')
-		   AND NOT EXISTS (SELECT 1
-		                     FROM TB_ORDER_CHANGE_DETAIL OCD
-		                    WHERE P.ORD_CHG_SQ = OCD.ORD_CHG_SQ
-		                      AND OCD.CHG_STAT = 'G685_49')
-		 ORDER BY P.REG_DT DESC
+		 ORDER BY P.REG_DT
 	</select>
 
 	<!-- 주문상세 > 배송비정보 -->
@@ -1734,33 +1730,68 @@
 	<!-- 주문상세 > 환불정보 -->
 	<select id="getOrderRefundInfo" parameterType="Order" resultType="Order">
 		/* order.getOrderRefundInfo */
-		SELECT R.ORD_CHG_SQ
-		     , P.PAY_MEANS
-		     , FN_GET_CODE_NM('G014', P.PAY_MEANS)   AS PAY_MEANS_NM
-		     , R.RA_BANK
-		     , CASE WHEN PAY_MEANS = 'G014_20' || PAY_MEANS = 'G014_10'
-		                THEN FN_GET_CODE_NM('G940', R.RA_BANK)
-		            ELSE P.CARD_NM
-		       END		                 AS CARD_NM
-		     , R.RA_NO
-		     , R.RA_NM
-		     , R.REFUND_AMT
-		     , DATE_FORMAT(P.UPD_DT, '%Y%m%d%H%i%S') AS UPD_DT
-		     , (SELECT USER_ID
-		          FROM TB_USER X
-		         WHERE X.USER_NO = P.UPD_NO
-		       )		                   AS USER_ID
-		     , (SELECT CUST_ID
-		          FROM TB_CUSTOMER X
-		         WHERE X.CUST_NO = P.UPD_NO
-		       )		                   AS CUST_ID
-		  FROM TB_REFUND R
-		 INNER JOIN TB_PAYMENT P
-		    ON R.PAY_SQ = P.PAY_SQ
-		 WHERE 1 = 1
-		   AND R.ORD_NO = #{ordNo}
-		   AND P.PAY_STAT IN ('G016_98', 'G016_99')
-		 ORDER BY R.REG_DT DESC
+		SELECT A.ORD_CHG_SQ
+		     , A.PAY_MEANS
+		     , A.PAY_MEANS_NM
+		     , A.RA_BANK
+		     , A.CARD_NM
+		     , A.RA_NO
+		     , A.RA_NM
+		     , A.REFUND_AMT
+		     , A.UPD_DT
+		     , A.USER_ID
+		     , A.CUST_ID
+		     , A.REG_DT
+		  FROM (SELECT R.ORD_CHG_SQ
+		             , P.PAY_MEANS
+		             , FN_GET_CODE_NM('G014', P.PAY_MEANS)      AS PAY_MEANS_NM
+		             , R.RA_BANK
+		             , CASE WHEN PAY_MEANS = 'G014_20' || PAY_MEANS = 'G014_10'
+		                        THEN FN_GET_CODE_NM('G940', R.RA_BANK)
+		                    ELSE P.CARD_NM
+		               END                                      AS CARD_NM
+		             , R.RA_NO
+		             , R.RA_NM
+		             , R.REFUND_AMT
+		             , DATE_FORMAT(P.UPD_DT, '%Y%m%d%H%i%S')    AS UPD_DT
+		             , (SELECT USER_ID
+		                  FROM TB_USER X
+		                 WHERE X.USER_NO = P.UPD_NO
+		               )		                                AS USER_ID
+		             , (SELECT CUST_ID
+		                  FROM TB_CUSTOMER X
+		                 WHERE X.CUST_NO = P.UPD_NO
+		               )		                                AS CUST_ID
+		             , P.REG_DT
+		          FROM TB_REFUND R
+		         INNER JOIN TB_PAYMENT P
+		            ON R.PAY_SQ = P.PAY_SQ
+		         WHERE 1 = 1
+		           AND R.ORD_NO = #{ordNo}
+		           AND P.PAY_STAT IN ('G016_98', 'G016_99')
+		         UNION ALL
+		        SELECT P2.ORD_CHG_SQ
+		             , P2.PAY_MEANS
+		             , FN_GET_CODE_NM('G014', P2.PAY_MEANS)     AS PAY_MEANS_NM
+		             , NULL
+		             , P2.CARD_NM
+		             , NULL
+		             , NULL
+		             , P2.PAY_AMT * -1                          AS PAY_AMT
+		             , DATE_FORMAT(P2.UPD_DT, '%Y%m%d%H%i%S')   AS UPD_DT
+		             , (SELECT USER_ID
+		                  FROM TB_USER X
+		                 WHERE X.USER_NO = P2.UPD_NO)           AS USER_ID
+		             , (SELECT CUST_ID
+		                  FROM TB_CUSTOMER X
+		                 WHERE X.CUST_NO = P2.UPD_NO)           AS CUST_ID
+		             , P2.REG_DT
+		          FROM TB_PAYMENT P2
+		         WHERE P2.PAY_GB = 'D'
+		           AND P2.PAY_STAT = 'G016_99'
+		           AND P2.ORD_NO = #{ordNo}
+		       ) A
+		 ORDER BY A.REG_DT
 	</select>
 
 	<!-- 주문상세 > 상담내역 -->