|
|
@@ -175,72 +175,79 @@ public class TsaShoplinkerService {
|
|
|
// 상품기본정보
|
|
|
ShoplinkerGoods goodsMap = admShoplinkerDao.getGoods(shoplinkerGoods);
|
|
|
|
|
|
- // 상품상세(퍼블) 세팅
|
|
|
- String detailDesc = this.setDetailDesc(shoplinkerGoods, goodsMap);
|
|
|
-
|
|
|
- // xml 데이터 세팅
|
|
|
- StringBuilder sbRequest = new StringBuilder();
|
|
|
- sbRequest.append("<?xml version=\"1.0\" encoding=\"euc-kr\"?>\n");
|
|
|
- sbRequest.append("<shoplinker>\n");
|
|
|
- sbRequest.append(" <productInfo>\n");
|
|
|
- sbRequest.append(" <product>\n");
|
|
|
-
|
|
|
- sbRequest.append(" <customer_id>").append(shoplinkerGoods.getCustomerId()).append("</customer_id>\n");
|
|
|
- sbRequest.append(" <partner_product_id>").append(goodsMap.getGoodsCd()).append("</partner_product_id>\n");
|
|
|
- sbRequest.append(" <attribute_title_code>").append("999999999").append("</attribute_title_code>\n");
|
|
|
- sbRequest.append(" <attribute_partner_product_id>").append(goodsMap.getAttributePartnerProductId()).append("</attribute_partner_product_id>\n");
|
|
|
- sbRequest.append(" <product_name>").append(goodsMap.getProductName()).append("</product_name>\n");
|
|
|
- sbRequest.append(" <detail_desc>").append(detailDesc).append("</detail_desc>\n");
|
|
|
-
|
|
|
- // 가격연계
|
|
|
- if( "Y".equals(goodsMap.getSyncYn())) {
|
|
|
- //sbRequest.append(" <new_desc_top>").append(goodsMap.getNewDescTop()).append("</new_desc_top>\n");
|
|
|
- //sbRequest.append(" <market_price>").append(goodsMap.getMarketPrice()).append("</market_price>\n");
|
|
|
- sbRequest.append(" <sale_price>").append(goodsMap.getSalePrice()).append("</sale_price>\n");
|
|
|
- sbRequest.append(" <supply_price>").append(goodsMap.getSupplyPrice()).append("</supply_price>\n");
|
|
|
- //sbRequest.append(" <market_price_p>").append(goodsMap.getMarketPriceP()).append("</market_price_p>\n");
|
|
|
- //sbRequest.append(" <sale_price_p>").append(goodsMap.getSalePriceP()).append("</sale_price_p>\n");
|
|
|
- //sbRequest.append(" <supply_price_p>").append(goodsMap.getSupplyPriceP()).append("</supply_price_p>\n");
|
|
|
- }else{
|
|
|
- //sbRequest.append(" <new_desc_top>").append(goodsMap.getNewDescTop()).append("</new_desc_top>\n");
|
|
|
- //sbRequest.append(" <market_price>").append(goodsMap.getMarketPrice()).append("</market_price>\n");
|
|
|
- sbRequest.append(" <sale_price>").append(0).append("</sale_price>\n");
|
|
|
- sbRequest.append(" <supply_price>").append(0).append("</supply_price>\n");
|
|
|
- //sbRequest.append(" <market_price_p>").append(goodsMap.getMarketPriceP()).append("</market_price_p>\n");
|
|
|
- //sbRequest.append(" <sale_price_p>").append(goodsMap.getSalePriceP()).append("</sale_price_p>\n");
|
|
|
- //sbRequest.append(" <supply_price_p>").append(goodsMap.getSupplyPriceP()).append("</supply_price_p>\n");
|
|
|
- }
|
|
|
+ if( null != goodsMap) {
|
|
|
|
|
|
- sbRequest.append(" <sale_status>").append("001").append("</sale_status>\n"); // 판매중
|
|
|
- sbRequest.append(" <tax_yn>").append("001").append("</tax_yn>\n"); // 과세
|
|
|
- sbRequest.append(" <salearea>전국</salearea>\n");
|
|
|
- sbRequest.append(" <sex>").append(goodsMap.getSex()).append("</sex>\n");
|
|
|
- sbRequest.append(" <model>").append(goodsMap.getModel()).append("</model>\n");
|
|
|
- sbRequest.append(" <model_no>").append(goodsMap.getModelNo()).append("</model_no>\n");
|
|
|
- sbRequest.append(" <brand>").append(goodsMap.getBrand()).append("</brand>\n");
|
|
|
- sbRequest.append(" <auth_no>").append(goodsMap.getAuthNo()).append("</auth_no>\n");
|
|
|
- sbRequest.append(" <expirydate>20991231</expirydate>\n");
|
|
|
- sbRequest.append(" <maker>").append(goodsMap.getMaker()).append("</maker>\n");
|
|
|
- sbRequest.append(" <origin>").append(goodsMap.getOrigin()).append("</origin>\n");
|
|
|
- sbRequest.append(" <adult_info>").append(goodsMap.getAdultInfo()).append("</adult_info>\n");
|
|
|
- sbRequest.append(" <ccategory_l>").append(goodsMap.getCcategoryL()).append("</ccategory_l>\n");
|
|
|
- sbRequest.append(" <ccategory_m>").append(goodsMap.getCcategoryM()).append("</ccategory_m>\n");
|
|
|
- sbRequest.append(" <ccategory_s>").append(goodsMap.getCcategoryS()).append("</ccategory_s>\n");
|
|
|
- sbRequest.append(" <ccategory_d>").append(goodsMap.getCcategoryD()).append("</ccategory_d>\n");
|
|
|
-
|
|
|
- sbRequest.append(" </product>\n");
|
|
|
- sbRequest.append(" </productInfo>\n");
|
|
|
- sbRequest.append("</shoplinker>\n");
|
|
|
-
|
|
|
- if( null != goodsMap.getShoplinkerItemkindNm()) {
|
|
|
- // api 호출 및 결과 history 저장
|
|
|
- callGoodsRegApi(regMap , sbRequest, "product");
|
|
|
+ // 상품상세(퍼블) 세팅
|
|
|
+ String detailDesc = this.setDetailDesc(shoplinkerGoods, goodsMap);
|
|
|
|
|
|
+ // xml 데이터 세팅
|
|
|
+ StringBuilder sbRequest = new StringBuilder();
|
|
|
+ sbRequest.append("<?xml version=\"1.0\" encoding=\"euc-kr\"?>\n");
|
|
|
+ sbRequest.append("<shoplinker>\n");
|
|
|
+ sbRequest.append(" <productInfo>\n");
|
|
|
+ sbRequest.append(" <product>\n");
|
|
|
+
|
|
|
+ sbRequest.append(" <customer_id>").append(shoplinkerGoods.getCustomerId()).append("</customer_id>\n");
|
|
|
+ sbRequest.append(" <partner_product_id>").append(goodsMap.getGoodsCd()).append("</partner_product_id>\n");
|
|
|
+ sbRequest.append(" <attribute_title_code>").append("999999999").append("</attribute_title_code>\n");
|
|
|
+ sbRequest.append(" <attribute_partner_product_id>").append(goodsMap.getAttributePartnerProductId()).append("</attribute_partner_product_id>\n");
|
|
|
+ sbRequest.append(" <product_name>").append(goodsMap.getProductName()).append("</product_name>\n");
|
|
|
+ sbRequest.append(" <detail_desc>").append(detailDesc).append("</detail_desc>\n");
|
|
|
+
|
|
|
+ // 가격연계
|
|
|
+ if( "Y".equals(goodsMap.getSyncYn())) {
|
|
|
+ //sbRequest.append(" <new_desc_top>").append(goodsMap.getNewDescTop()).append("</new_desc_top>\n");
|
|
|
+ //sbRequest.append(" <market_price>").append(goodsMap.getMarketPrice()).append("</market_price>\n");
|
|
|
+ sbRequest.append(" <sale_price>").append(goodsMap.getSalePrice()).append("</sale_price>\n");
|
|
|
+ sbRequest.append(" <supply_price>").append(goodsMap.getSupplyPrice()).append("</supply_price>\n");
|
|
|
+ //sbRequest.append(" <market_price_p>").append(goodsMap.getMarketPriceP()).append("</market_price_p>\n");
|
|
|
+ //sbRequest.append(" <sale_price_p>").append(goodsMap.getSalePriceP()).append("</sale_price_p>\n");
|
|
|
+ //sbRequest.append(" <supply_price_p>").append(goodsMap.getSupplyPriceP()).append("</supply_price_p>\n");
|
|
|
+ }else{
|
|
|
+ //sbRequest.append(" <new_desc_top>").append(goodsMap.getNewDescTop()).append("</new_desc_top>\n");
|
|
|
+ //sbRequest.append(" <market_price>").append(goodsMap.getMarketPrice()).append("</market_price>\n");
|
|
|
+ sbRequest.append(" <sale_price>").append(0).append("</sale_price>\n");
|
|
|
+ sbRequest.append(" <supply_price>").append(0).append("</supply_price>\n");
|
|
|
+ //sbRequest.append(" <market_price_p>").append(goodsMap.getMarketPriceP()).append("</market_price_p>\n");
|
|
|
+ //sbRequest.append(" <sale_price_p>").append(goodsMap.getSalePriceP()).append("</sale_price_p>\n");
|
|
|
+ //sbRequest.append(" <supply_price_p>").append(goodsMap.getSupplyPriceP()).append("</supply_price_p>\n");
|
|
|
+ }
|
|
|
+
|
|
|
+ sbRequest.append(" <sale_status>").append("001").append("</sale_status>\n"); // 판매중
|
|
|
+ sbRequest.append(" <tax_yn>").append("001").append("</tax_yn>\n"); // 과세
|
|
|
+ sbRequest.append(" <salearea>전국</salearea>\n");
|
|
|
+ sbRequest.append(" <sex>").append(goodsMap.getSex()).append("</sex>\n");
|
|
|
+ sbRequest.append(" <model>").append(goodsMap.getModel()).append("</model>\n");
|
|
|
+ sbRequest.append(" <model_no>").append(goodsMap.getModelNo()).append("</model_no>\n");
|
|
|
+ sbRequest.append(" <brand>").append(goodsMap.getBrand()).append("</brand>\n");
|
|
|
+ sbRequest.append(" <auth_no>").append(goodsMap.getAuthNo()).append("</auth_no>\n");
|
|
|
+ sbRequest.append(" <expirydate>20991231</expirydate>\n");
|
|
|
+ sbRequest.append(" <maker>").append(goodsMap.getMaker()).append("</maker>\n");
|
|
|
+ sbRequest.append(" <origin>").append(goodsMap.getOrigin()).append("</origin>\n");
|
|
|
+ sbRequest.append(" <adult_info>").append(goodsMap.getAdultInfo()).append("</adult_info>\n");
|
|
|
+ sbRequest.append(" <ccategory_l>").append(goodsMap.getCcategoryL()).append("</ccategory_l>\n");
|
|
|
+ sbRequest.append(" <ccategory_m>").append(goodsMap.getCcategoryM()).append("</ccategory_m>\n");
|
|
|
+ sbRequest.append(" <ccategory_s>").append(goodsMap.getCcategoryS()).append("</ccategory_s>\n");
|
|
|
+ sbRequest.append(" <ccategory_d>").append(goodsMap.getCcategoryD()).append("</ccategory_d>\n");
|
|
|
+
|
|
|
+ sbRequest.append(" </product>\n");
|
|
|
+ sbRequest.append(" </productInfo>\n");
|
|
|
+ sbRequest.append("</shoplinker>\n");
|
|
|
+
|
|
|
+ if( null != goodsMap.getShoplinkerItemkindNm()) {
|
|
|
+ // api 호출 및 결과 history 저장
|
|
|
+ callGoodsRegApi(regMap , sbRequest, "product");
|
|
|
+
|
|
|
+ }else {
|
|
|
+ // 품목매핑정보 없음. 전송 안함
|
|
|
+ regMap.setXmlTxt(sbRequest.toString());
|
|
|
+ regMap.setApiResult("error");
|
|
|
+ regMap.setApiMessage("API 전송안함 : 샵링커 품목매핑정보가 없습니다. (자사품목코드: "+goodsMap.getItemkindCd()+")");
|
|
|
+ tscShoplinkerDao.insertShoplinerApiHst(regMap);
|
|
|
+ }
|
|
|
}else {
|
|
|
- // 품목매핑정보 없음. 전송 안함
|
|
|
- regMap.setXmlTxt(sbRequest.toString());
|
|
|
regMap.setApiResult("error");
|
|
|
- regMap.setApiMessage("API 전송안함 : 샵링커 품목매핑정보가 없습니다. (자사품목코드: "+goodsMap.getItemkindCd()+")");
|
|
|
+ regMap.setApiMessage("상품정보가 없습니다. (자사상품만 등록가능)");
|
|
|
tscShoplinkerDao.insertShoplinerApiHst(regMap);
|
|
|
}
|
|
|
|
|
|
@@ -635,40 +642,36 @@ public class TsaShoplinkerService {
|
|
|
|
|
|
ShoplinkerGoods map = admShoplinkerDao.getCert(shoplinkerGoods);
|
|
|
|
|
|
- if(null == map ) {
|
|
|
- map = new ShoplinkerGoods();
|
|
|
- map.setPartnerProductId(shoplinkerGoods.getGoodsCd());
|
|
|
- map.setCertNo("");
|
|
|
- map.setCertOrgan(".");
|
|
|
- }
|
|
|
-
|
|
|
- // xml 데이터 세팅
|
|
|
- StringBuilder sbRequest = new StringBuilder();
|
|
|
- sbRequest.append("<?xml version=\"1.0\" encoding=\"euc-kr\"?>\n");
|
|
|
- sbRequest.append("<shoplinker>\n");
|
|
|
- sbRequest.append(" <product>\n");
|
|
|
+ if(null != map ) {
|
|
|
|
|
|
- sbRequest.append(" <customer_id>").append(shoplinkerGoods.getCustomerId()).append("</customer_id>\n");
|
|
|
- sbRequest.append(" <partner_product_id>").append(map.getPartnerProductId()).append("</partner_product_id>\n");
|
|
|
- sbRequest.append(" <certinfo>\n");
|
|
|
- sbRequest.append(" <cert>\n");
|
|
|
+ // xml 데이터 세팅
|
|
|
+ StringBuilder sbRequest = new StringBuilder();
|
|
|
+ sbRequest.append("<?xml version=\"1.0\" encoding=\"euc-kr\"?>\n");
|
|
|
+ sbRequest.append("<shoplinker>\n");
|
|
|
+ sbRequest.append(" <product>\n");
|
|
|
|
|
|
- //cert_item 의 경우 인증코드 값이 있으면 'C011', 없으면 'C010'
|
|
|
- if("".equals(map.getCertNo())){
|
|
|
- sbRequest.append(" <cert_item>").append("C010").append("</cert_item>\n");
|
|
|
- }else {
|
|
|
- sbRequest.append(" <cert_item>").append("C011").append("</cert_item>\n");
|
|
|
- }
|
|
|
+ sbRequest.append(" <customer_id>").append(shoplinkerGoods.getCustomerId()).append("</customer_id>\n");
|
|
|
+ sbRequest.append(" <partner_product_id>").append(map.getPartnerProductId()).append("</partner_product_id>\n");
|
|
|
+ sbRequest.append(" <certinfo>\n");
|
|
|
+ sbRequest.append(" <cert>\n");
|
|
|
+
|
|
|
+ //cert_item 의 경우 인증코드 값이 있으면 'C011', 없으면 'C010'
|
|
|
+ if("".equals(map.getCertNo())){
|
|
|
+ sbRequest.append(" <cert_item>").append("C010").append("</cert_item>\n");
|
|
|
+ }else {
|
|
|
+ sbRequest.append(" <cert_item>").append("C011").append("</cert_item>\n");
|
|
|
+ }
|
|
|
|
|
|
- sbRequest.append(" <cert_organ><![CDATA[").append(map.getCertOrgan()).append("]]></cert_organ>\n");
|
|
|
- sbRequest.append(" <cert_no><![CDATA[").append(map.getCertNo()).append("]]></cert_no>\n");
|
|
|
- sbRequest.append(" </cert>\n");
|
|
|
- sbRequest.append(" </certinfo>\n");
|
|
|
- sbRequest.append(" </product>\n");
|
|
|
- sbRequest.append("</shoplinker>\n");
|
|
|
+ sbRequest.append(" <cert_organ><![CDATA[").append(map.getCertOrgan()).append("]]></cert_organ>\n");
|
|
|
+ sbRequest.append(" <cert_no><![CDATA[").append(map.getCertNo()).append("]]></cert_no>\n");
|
|
|
+ sbRequest.append(" </cert>\n");
|
|
|
+ sbRequest.append(" </certinfo>\n");
|
|
|
+ sbRequest.append(" </product>\n");
|
|
|
+ sbRequest.append("</shoplinker>\n");
|
|
|
|
|
|
- // api 호출 및 결과 history 저장
|
|
|
- callGoodsRegApi(regMap , sbRequest, "cert");
|
|
|
+ // api 호출 및 결과 history 저장
|
|
|
+ callGoodsRegApi(regMap , sbRequest, "cert");
|
|
|
+ }
|
|
|
|
|
|
}catch(Exception e) {
|
|
|
log.error("xml 생성오류 ", e);
|
|
|
@@ -702,7 +705,7 @@ public class TsaShoplinkerService {
|
|
|
shoplinkerGoods.setExtmallImgYn("Y");
|
|
|
Collection<ShoplinkerGoods> list = admShoplinkerDao.getGoodsImageList(shoplinkerGoods);
|
|
|
|
|
|
- if(null != list) {
|
|
|
+ if(null != list && !list.isEmpty()) {
|
|
|
|
|
|
String imgUrl = "";
|
|
|
for (ShoplinkerGoods map : list) {
|