From be67478cae6bf9308f15949a21e7d0a57a3f0ecb Mon Sep 17 00:00:00 2001
From: admin <weikou2014>
Date: 星期四, 16 七月 2020 15:37:31 +0800
Subject: [PATCH] dubbo集成修改

---
 fanli/src/main/java/com/yeshi/fanli/util/taobao/TaoKeApiUtil.java |  108 +++++++++++++++++++++++++++++++++++------------------
 1 files changed, 71 insertions(+), 37 deletions(-)

diff --git a/fanli/src/main/java/com/yeshi/fanli/util/taobao/TaoKeApiUtil.java b/fanli/src/main/java/com/yeshi/fanli/util/taobao/TaoKeApiUtil.java
index f5e9fa4..56900eb 100644
--- a/fanli/src/main/java/com/yeshi/fanli/util/taobao/TaoKeApiUtil.java
+++ b/fanli/src/main/java/com/yeshi/fanli/util/taobao/TaoKeApiUtil.java
@@ -10,19 +10,19 @@
 import org.yeshi.utils.JsonUtil;
 import org.yeshi.utils.taobao.TbImgUtil;
 
-import com.yeshi.fanli.dto.taobao.TaoBaoShopInfoDTO;
+import com.yeshi.goods.facade.dto.taobao.TaoBaoShopInfoDTO;
 import com.yeshi.fanli.dto.taobao.TaoLiJinDTO;
 import com.yeshi.fanli.dto.taobao.api.TaoKeOfficialActivityConvertResultDTO;
 import com.yeshi.fanli.entity.bus.tlj.UserTaoLiJinReport;
 import com.yeshi.fanli.entity.taobao.SearchFilter;
 import com.yeshi.fanli.entity.taobao.SearchShopFilter;
-import com.yeshi.fanli.entity.taobao.TaoBaoGoodsBrief;
-import com.yeshi.fanli.entity.taobao.TaoBaoHead;
+import com.yeshi.goods.facade.entity.taobao.TaoBaoGoodsBrief;
+import com.yeshi.goods.facade.entity.taobao.TaoBaoHead;
 import com.yeshi.fanli.entity.taobao.TaoBaoProvince;
 import com.yeshi.fanli.entity.taobao.TaoBaoSearchNav;
 import com.yeshi.fanli.entity.taobao.TaoBaoSearchResult;
-import com.yeshi.fanli.entity.taobao.TaoBaoShopInfo;
-import com.yeshi.fanli.entity.taobao.TaoKeAppInfo;
+import com.yeshi.common.entity.taobao.TaoBaoShopInfo;
+import com.yeshi.common.entity.taobao.TaoKeAppInfo;
 import com.yeshi.fanli.exception.taobao.TaoBaoAuthException;
 import com.yeshi.fanli.exception.taobao.TaoBaoTokenParseException;
 import com.yeshi.fanli.exception.taobao.TaoKeApiException;
@@ -31,11 +31,11 @@
 import com.yeshi.fanli.log.LogHelper;
 import com.yeshi.fanli.log.TLJLogHelper;
 import com.yeshi.fanli.log.TaoKeLogHelper;
-import com.yeshi.fanli.tag.PageEntity;
-import com.yeshi.fanli.util.MoneyBigDecimalUtil;
+import com.yeshi.common.entity.PageEntity;
+import org.yeshi.utils.MoneyBigDecimalUtil;
 import com.yeshi.fanli.util.StringUtil;
 import com.yeshi.fanli.util.TaoBaoConstant;
-import com.yeshi.fanli.util.TimeUtil;
+import org.yeshi.utils.TimeUtil;
 
 import net.sf.json.JSONArray;
 import net.sf.json.JSONObject;
@@ -260,8 +260,9 @@
     /**
      * 鑾峰彇鍟嗗搧璇︽儏锛岀畝鐗�
      *
-     * @param id
+     * @param ids
      * @return
+     * @throws TaobaoGoodsDownException
      */
     public static List<TaoBaoGoodsBrief> getBatchGoodsInfos(String ids) throws TaobaoGoodsDownException {
         List<TaoBaoGoodsBrief> goodsList = new ArrayList<>();
@@ -314,8 +315,10 @@
     /**
      * 鑾峰彇鍟嗗搧璇︽儏锛岀畝鐗�
      *
-     * @param id
+     * @param ids
+     * @param ip
      * @return
+     * @throws TaobaoGoodsDownException
      */
     public static List<TaoBaoGoodsBrief> getBatchGoodsInfos(String ids, String ip) throws TaobaoGoodsDownException {
         Map<String, String> map = new HashMap<>();
@@ -365,7 +368,7 @@
         filter.setPage(1);
         filter.setPageSize(50);
         TaoBaoSearchResult result = searchWuLiaoForDetail(goods.getTitle(), goods.getZkPrice(), goods.getProvcity(),
-                goods.getUserType());
+                goods.getUserType(), null, null);
         if (result != null && result.getTaoBaoGoodsBriefs() != null)
             for (TaoBaoGoodsBrief g : result.getTaoBaoGoodsBriefs()) {
                 System.out.println(goods.getAuctionId() + ":" + g.getAuctionId());
@@ -381,7 +384,7 @@
         // 浠庤浆閾炬悳绱�
         TaoBaoGoodsBrief newGoods = specialConvertCoupon(goods.getAuctionId(),
                 new TaoKeAppInfo(TaoBaoConstant.TAOBAO_AUTH_APPKEY, TaoBaoConstant.TAOBAO_AUTH_APPSECRET,
-                        TaoBaoConstant.TAOBAO_SPECIAL_PID_DEFAULT));
+                        TaoBaoConstant.TAOBAO_SPECIAL_PID_DEFAULT),null,null);
 
         if (newGoods != null) {
             goods.setTkRate(newGoods.getTkRate());
@@ -427,7 +430,7 @@
         filter.setPage(1);
         filter.setPageSize(50);
         TaoBaoSearchResult result = searchWuLiaoForDetail(goods.getTitle(), goods.getZkPrice(), goods.getProvcity(),
-                goods.getUserType(), app);
+                goods.getUserType(), app, null, null);
         if (result != null && result.getTaoBaoGoodsBriefs() != null)
             for (TaoBaoGoodsBrief g : result.getTaoBaoGoodsBriefs()) {
                 if (goods.getAuctionId().longValue() == g.getAuctionId()) {
@@ -458,7 +461,7 @@
         // 浠庤浆閾炬悳绱�
         TaoBaoGoodsBrief newGoods = specialConvertCoupon(goods.getAuctionId(),
                 new TaoKeAppInfo(TaoBaoConstant.TAOBAO_AUTH_APPKEY, TaoBaoConstant.TAOBAO_AUTH_APPSECRET,
-                        TaoBaoConstant.TAOBAO_SPECIAL_PID_DEFAULT));
+                        TaoBaoConstant.TAOBAO_SPECIAL_PID_DEFAULT),null,null);
 
         if (newGoods != null) {
             goods.setTkRate(newGoods.getTkRate());
@@ -495,7 +498,7 @@
      * @return
      * @throws TaobaoGoodsDownException
      */
-    public static TaoBaoGoodsBrief searchGoodsDetailForConvert(Long id, TaoKeAppInfo app)
+    public static TaoBaoGoodsBrief searchGoodsDetailForConvert(Long id, TaoKeAppInfo app, String specialId, String relationId)
             throws TaobaoGoodsDownException {
         TaoBaoGoodsBrief goods = getSimpleGoodsInfo(id);
         if (goods == null)
@@ -505,7 +508,7 @@
         filter.setPage(1);
         filter.setPageSize(50);
         TaoBaoSearchResult result = searchWuLiaoForDetail(goods.getTitle(), goods.getZkPrice(), goods.getProvcity(),
-                goods.getUserType(), app);
+                goods.getUserType(), app, specialId, relationId);
         if (result != null && result.getTaoBaoGoodsBriefs() != null)
             for (TaoBaoGoodsBrief g : result.getTaoBaoGoodsBriefs()) {
                 if (goods.getAuctionId().longValue() == g.getAuctionId()) {
@@ -546,7 +549,7 @@
             filter.setPage(1);
             filter.setPageSize(50);
             TaoBaoSearchResult result = searchWuLiaoForDetail(goods.getTitle(), goods.getZkPrice(), goods.getProvcity(),
-                    goods.getUserType());
+                    goods.getUserType(), null, null);
             if (result != null && result.getTaoBaoGoodsBriefs() != null)
                 for (TaoBaoGoodsBrief g : result.getTaoBaoGoodsBriefs()) {
                     if (goods.getAuctionId().longValue() == g.getAuctionId()) {
@@ -622,9 +625,11 @@
      * 鍟嗗搧鐗╂枡鎼滅储
      *
      * @param filter
+     * @param specialId
+     * @param relationId
      * @return
      */
-    public static TaoBaoSearchResult searchWuLiao(SearchFilter filter) {
+    public static TaoBaoSearchResult searchWuLiao(SearchFilter filter, String specialId, String relationId) {
 
         if (filter.getKey() != null && filter.getKey().trim().equalsIgnoreCase(""))
             return null;
@@ -638,6 +643,14 @@
         map.put("method", "taobao.tbk.dg.material.optional");
         map.put("page_size", filter.getPageSize() == 0 ? "20" : filter.getPageSize() + "");
         map.put("page_no", (filter.getPage() <= 0 ? 1 : filter.getPage()) + "");
+        if (!StringUtil.isNullOrEmpty(specialId) && !StringUtil.isNullOrEmpty(relationId)) {
+            map.put("special_id", specialId);
+        } else if (!StringUtil.isNullOrEmpty(specialId)) {
+            map.put("special_id", specialId);
+        } else if (!StringUtil.isNullOrEmpty(relationId)) {
+            map.put("relation_id", relationId);
+        }
+
         // map.put("material_id", "3756");
 
         pageEntity.setPageIndex(filter.getPage());
@@ -807,11 +820,16 @@
     /**
      * 鍟嗗搧鐗╂枡鎼滅储
      *
-     * @param filter
+     * @param title
+     * @param zkPrice
+     * @param provcity
+     * @param userType
+     * @param specialId
+     * @param relationId
      * @return
      */
     public static TaoBaoSearchResult searchWuLiaoForDetail(String title, BigDecimal zkPrice, String provcity,
-                                                           int userType) {
+                                                           int userType, String specialId, String relationId) {
         if (provcity.trim().contains(" "))
             provcity = provcity.split(" ")[provcity.split(" ").length - 1];
         TaoBaoSearchResult taoBaoSearchResult = new TaoBaoSearchResult();
@@ -824,6 +842,14 @@
         map.put("is_tmall", (userType == 1) + "");
         map.put("q", title);
         map.put("itemloc", provcity);
+
+        if (!StringUtil.isNullOrEmpty(specialId) && !StringUtil.isNullOrEmpty(relationId)) {
+            map.put("special_id", specialId);
+        } else if (!StringUtil.isNullOrEmpty(specialId)) {
+            map.put("special_id", specialId);
+        } else if (!StringUtil.isNullOrEmpty(relationId)) {
+            map.put("relation_id", relationId);
+        }
 
         String resultStr = TaoKeBaseUtil.baseRequestForThreeTimes(map, true);
         System.out.println(resultStr);
@@ -858,11 +884,17 @@
     /**
      * 鍟嗗搧鐗╂枡鎼滅储
      *
-     * @param filter
+     * @param title
+     * @param zkPrice
+     * @param provcity
+     * @param userType
+     * @param app
+     * @param specialId
+     * @param relationId
      * @return
      */
     public static TaoBaoSearchResult searchWuLiaoForDetail(String title, BigDecimal zkPrice, String provcity,
-                                                           int userType, TaoKeAppInfo app) {
+                                                           int userType, TaoKeAppInfo app, String specialId, String relationId) {
         if (provcity.trim().contains(" "))
             provcity = provcity.split(" ")[provcity.split(" ").length - 1];
         TaoBaoSearchResult taoBaoSearchResult = new TaoBaoSearchResult();
@@ -875,6 +907,13 @@
         map.put("is_tmall", (userType == 1) + "");
         map.put("q", title);
         map.put("itemloc", provcity);
+        if (!StringUtil.isNullOrEmpty(specialId) && !StringUtil.isNullOrEmpty(relationId)) {
+            map.put("special_id", specialId);
+        } else if (!StringUtil.isNullOrEmpty(specialId)) {
+            map.put("special_id", specialId);
+        } else if (!StringUtil.isNullOrEmpty(relationId)) {
+            map.put("relation_id", relationId);
+        }
 
         String resultStr = TaoKeBaseUtil.baseRequestForThreeTimes(map, app);
         JSONObject data = JSONObject.fromObject(resultStr);
@@ -1234,10 +1273,7 @@
     }
 
     /**
-     * 搴楅摵鎼滅储
-     *
-     * @param key  -搴楅摵鍚嶇О
-     * @param page -椤电爜
+     * @param filter
      * @return
      */
     public static List<TaoBaoShopInfo> searchShop(SearchShopFilter filter) {
@@ -1678,23 +1714,23 @@
         }
     }
 
-    public static TaoBaoGoodsBrief specialConvertCoupon(Long auctionId, String specialId,String relationId, TaoKeAppInfo app) {
+    public static TaoBaoGoodsBrief specialConvertCoupon(Long auctionId,  TaoKeAppInfo app,String specialId, String relationId) {
         String pid = app.getPid();
         String[] sts = pid.split("_");
         Map<String, String> map = new HashMap<>();
         map.put("method", "taobao.tbk.coupon.convert");
         map.put("item_id", auctionId + "");
         map.put("adzone_id", sts[3]);
-        if (!StringUtil.isNullOrEmpty(specialId)) {
+        if (!StringUtil.isNullOrEmpty(specialId) && !StringUtil.isNullOrEmpty(relationId)) {
             map.put("special_id", specialId);
-        }
-        if (!StringUtil.isNullOrEmpty(relationId)) {
+        } else if (!StringUtil.isNullOrEmpty(specialId)) {
+            map.put("special_id", specialId);
+        } else if (!StringUtil.isNullOrEmpty(relationId)) {
             map.put("relation_id", specialId);
         }
 
         try {
             String result = TaoKeBaseUtil.baseRequestForThreeTimes(map, app);
-            System.out.println(result);
             JSONObject json = JSONObject.fromObject(result);
             JSONObject resultJSON = json.optJSONObject("tbk_coupon_convert_response").optJSONObject("result")
                     .optJSONObject("results");
@@ -1718,6 +1754,10 @@
 
             }
             String tkRate = resultJSON.optString("max_commission_rate");
+            if (StringUtil.isNullOrEmpty(tkRate)) {
+                tkRate = resultJSON.optString("min_commission_rate");
+            }
+
             if (!StringUtil.isNullOrEmpty(tkRate)) {
                 goods.setTkRate(new BigDecimal(tkRate));
             }
@@ -1726,13 +1766,7 @@
         } catch (Exception e) {
             e.printStackTrace();
         }
-
         return null;
-    }
-
-
-    public static TaoBaoGoodsBrief specialConvertCoupon(Long auctionId, TaoKeAppInfo app) {
-        return specialConvertCoupon(auctionId, null,null, app);
     }
 
     public static void juHuaSuan() {

--
Gitblit v1.8.0