From 30d8e227e8d823b6c38c3b9c90ac2df03b63befe Mon Sep 17 00:00:00 2001
From: admin <weikou2014>
Date: 星期二, 25 二月 2025 16:41:22 +0800
Subject: [PATCH] 淘宝转链接口更新

---
 fanli/src/main/java/com/yeshi/fanli/controller/client/lijin/GoodsControllerLijin.java |   63 ++++++++++++++++++++++---------
 1 files changed, 44 insertions(+), 19 deletions(-)

diff --git a/fanli/src/main/java/com/yeshi/fanli/controller/client/lijin/GoodsControllerLijin.java b/fanli/src/main/java/com/yeshi/fanli/controller/client/lijin/GoodsControllerLijin.java
index 5b7a39d..47979c0 100644
--- a/fanli/src/main/java/com/yeshi/fanli/controller/client/lijin/GoodsControllerLijin.java
+++ b/fanli/src/main/java/com/yeshi/fanli/controller/client/lijin/GoodsControllerLijin.java
@@ -61,6 +61,7 @@
 import org.springframework.web.bind.annotation.RequestMapping;
 import org.yeshi.utils.JsonUtil;
 import org.yeshi.utils.MoneyBigDecimalUtil;
+import org.yeshi.utils.NumberUtil;
 
 import javax.annotation.Resource;
 import java.io.PrintWriter;
@@ -73,6 +74,7 @@
 @RequestMapping("api/lijin/goods")
 public class GoodsControllerLijin {
     Logger userGoodsScanLogger = LoggerFactory.getLogger("userGoodsScanLog");
+
 
     @Resource
     private TaoBaoGoodsCacheUtil taoBaoGoodsCacheUtil;
@@ -150,7 +152,7 @@
 
                 }
 
-                TaoBaoGoodsBrief goods = getTaoBaoGoods(Long.parseLong(goodsId));
+                TaoBaoGoodsBrief goods = getTaoBaoGoods(goodsId);
 
                 //鍔犺浇璧勯噾淇℃伅
                 com.yeshi.fanli.vo.goods.GoodsDetailVO goodsDetailVO1 = GoodsDetailVOFactory.convertTaoBao(goods, paramsDTO);
@@ -164,7 +166,7 @@
                 GoodsDetailVOLijinFactory.fillRights(goodsDetailVO.getGoods());
 
                 // 搴楅摵淇℃伅
-                TaoBaoShop shop = taoBaoShopService.getTaoBaoShop(goods.getId(), goods.getSellerId());
+                TaoBaoShop shop = taoBaoShopService.getTaoBaoShop(goods.getAuctionId(), goods.getSellerId());
                 if (shop != null) {
                     String shopLink = shop.getShopLink();
                     if (StringUtil.isNullOrEmpty(shopLink)) {
@@ -190,7 +192,7 @@
 
             case Constant
                     .SOURCE_TYPE_JD:
-                JDGoods jdGoods = getJDGoods(Long.parseLong(goodsId));
+                JDGoods jdGoods = getJDGoods(goodsId);
                 goodsDetailVO.setGoods(GoodsDetailVOLijinFactory.convertJDGoods(jdGoods, paramsDTO));
                 extraVO.setDetailUrl("https://in.m.jd.com/product/jieshao/video/" + goodsId + ".html");
                 ThreadUtil.run(new Runnable() {
@@ -209,7 +211,7 @@
 
             case Constant
                     .SOURCE_TYPE_PDD:
-                PDDGoodsDetail pddGoodsDetail = getPDDGoods(acceptData.getSystem(), Long.parseLong(goodsId), uid);
+                PDDGoodsDetail pddGoodsDetail = getPDDGoods(acceptData.getSystem(), goodsId, uid);
                 goodsDetailVO.setGoods(GoodsDetailVOLijinFactory.convertPDDGoods(pddGoodsDetail, paramsDTO));
                 extraVO.setDetailUrl("http://apph5.banliapp.com/apppage/goods_img_pdd.html?id=" + goodsId);
                 ThreadUtil.run(new Runnable() {
@@ -271,13 +273,24 @@
                 break;
         }
 
-        userGoodsScanLogger.info("{}", new Gson().toJson(UserGoodsScanLog.UserGoodsScanLogFactory.create(goodsDetailVO.getGoods(), uid, acceptData.getUtdid(), acceptData.getDevice())));
+        ThreadUtil.run(new Runnable() {
+
+
+            @Override
+            public void run() {
+                try {
+                    userGoodsScanLogger.info("{}", new Gson().toJson(UserGoodsScanLog.UserGoodsScanLogFactory.create(goodsDetailVO.getGoods(), uid, acceptData.getUtdid(), acceptData.getDevice())));
+                } catch (Exception e) {
+
+                }
+            }
+        });
 
 
         //鏄惁鏀惰棌
         extraVO.setCollected(false);
         if (uid != null) {
-            CollectionGoodsV2 collectionGoodsV2 = collectionGoodsV2Service.findByUidAndAuctionId(uid, goodsType == Constant.SOURCE_TYPE_SUNING ? goodsIdSuning : Long.parseLong(goodsDetailVO.getGoods().getGoodsId()), goodsType);
+            CollectionGoodsV2 collectionGoodsV2 = collectionGoodsV2Service.findByUidAndAuctionId(uid, goodsType == Constant.SOURCE_TYPE_SUNING ? goodsIdSuning + "" : goodsDetailVO.getGoods().getGoodsId(), goodsType);
             if (collectionGoodsV2 != null) {
                 extraVO.setCollected(true);
             }
@@ -291,7 +304,13 @@
         extraVO.setBuyValid(true);
         extraVO.setListCouponUser(listCouponUser);
         goodsDetailVO.setExtra(extraVO);
-        loadLijinInfo(uid, goodsDetailVO);
+        try {
+            loadLijinInfo(uid, acceptData.getSystem(), goodsDetailVO);
+        } catch (Exception e) {
+            if (goodsDetailVO.getGoods().getMoneyInfo() != null) {
+                goodsDetailVO.getGoods().getMoneyInfo().setHongBaoMoney("0.00");
+            }
+        }
         //娓呴櫎涓存椂淇℃伅
         goodsDetailVO.getGoods().setTempCoupon(null);
         if (goodsDetailVO.getGoods().getLabels() == null)
@@ -321,7 +340,7 @@
 
 
             try {
-                LiJinExpendRecord record = goodsLijinMnager.createTBLijin(Long.parseLong(goodsId), uid, new Date(user.getCreatetime()));
+                LiJinExpendRecord record = goodsLijinMnager.createTBLijin(goodsId, uid, new Date(user.getCreatetime()));
                 String sendUrl = record.getSendUrl();
                 if (StringUtil.isNullOrEmpty(sendUrl)) {
                     out.print(JsonUtil.loadFalseResult("绀奸噾鍒涘缓澶辫触"));
@@ -366,29 +385,35 @@
      *
      * @param goodsDetailVO
      */
-    private void loadLijinInfo(Long uid, GoodsDetailVO goodsDetailVO) {
+    private void loadLijinInfo(Long uid, SystemEnum system, GoodsDetailVO goodsDetailVO) {
         VIPEnum vipRank = userLijinMnager.getVIPRank(uid);
-        GoodsDetailVO.GoodsHongBaoListVO.UserLevelVO userLevelVO = goodsLijinMnager.getUserLevel(vipRank, true);
+        GoodsDetailVO.GoodsHongBaoListVO.UserLevelVO userLevelVO = goodsLijinMnager.getUserLevel(system, vipRank, true);
         //杩斿埄UserLevel
         if (goodsDetailVO.getGoods().getPriceList() != null && goodsDetailVO.getGoods().getPriceList().size() > 0)
             goodsDetailVO.getGoods().getPriceList().get(0).setUserLevel(userLevelVO);
         //绀奸噾UserLevel
-        userLevelVO = goodsLijinMnager.getUserLevel(vipRank, false);
+        userLevelVO = goodsLijinMnager.getUserLevel(system, vipRank, false);
         goodsLijinMnager.loadLijinInfo(vipRank, goodsDetailVO, userLevelVO);
     }
 
 
-    private TaoBaoGoodsBrief getTaoBaoGoods(Long id) {
+    private TaoBaoGoodsBrief getTaoBaoGoods(String id) {
         try {
             TaoBaoGoodsBrief goods = taoBaoGoodsCacheUtil.getCommonTaoBaoGoodsInfo(id);
             if (goods != null) {
                 return goods;
             }
             TaoKeAppInfo app = new TaoKeAppInfo();
-            app.setAppKey(TaoBaoConstant.TAOBAO_COMMON_APPKEY);
-            app.setAppSecret(TaoBaoConstant.TAOBAO_COMMON_APPSECRET);
-            app.setPid(TaoBaoConstant.TAOBAO_COMMON_PID);
-            app.setAdzoneId(TaoBaoConstant.TAOBAO_COMMON_PID.split("_")[3]);
+            if (NumberUtil.isNumeric(id)) {
+                app.setAppKey(TaoBaoConstant.TAOBAO_AUTH_APPKEY);
+                app.setAppSecret(TaoBaoConstant.TAOBAO_AUTH_APPSECRET);
+                app.setPid(TaoBaoConstant.TAOBAO_PID_DEFAULT);
+            } else {
+                app.setAppKey(TaoBaoConstant.TAOBAO_COMMON_APPKEY);
+                app.setAppSecret(TaoBaoConstant.TAOBAO_COMMON_APPSECRET);
+                app.setPid(TaoBaoConstant.TAOBAO_COMMON_PID);
+            }
+            app.setAdzoneId(app.getPid().split("_")[3]);
             goods = TaoKeApiUtil.searchGoodsDetail(id, app);
 
             final TaoBaoGoodsBrief finalGoods = goods;
@@ -413,16 +438,16 @@
         return null;
     }
 
-    private JDGoods getJDGoods(Long id) {
+    private JDGoods getJDGoods(String id) {
         JDGoods jdGoods = JDApiUtil.queryGoodsDetail(id); // 楂樼骇鎺ュ彛
         if (jdGoods == null) {
-            jdGoods = JDUtil.getGoodsDetail(id); // 鐖彇缃戦〉
+//            jdGoods = JDUtil.getGoodsDetail(id); // 鐖彇缃戦〉
             // jdGoods = JDApiUtil.getGoodsDetail(id); // 鏅�氭帴鍙�
         }
         return jdGoods;
     }
 
-    private PDDGoodsDetail getPDDGoods(SystemEnum system, Long id, Long uid) {
+    private PDDGoodsDetail getPDDGoods(SystemEnum system, String id, Long uid) {
         String pid = pidManager.getPidCache(system, Constant.SOURCE_TYPE_PDD, SystemPIDInfo.PidType.fanli);
         PDDGoodsDetail pddGoods = null;
         try {

--
Gitblit v1.8.0