From aeae4b32ba980c7701b6870611462a4095453e72 Mon Sep 17 00:00:00 2001
From: admin <weikou2014>
Date: 星期五, 21 五月 2021 18:35:33 +0800
Subject: [PATCH] PID管理

---
 fanli/src/main/java/com/yeshi/fanli/service/manger/goods/ConvertLinkManager.java |   40 ++++++++++++++++++++++++++--------------
 1 files changed, 26 insertions(+), 14 deletions(-)

diff --git a/fanli/src/main/java/com/yeshi/fanli/service/manger/goods/ConvertLinkManager.java b/fanli/src/main/java/com/yeshi/fanli/service/manger/goods/ConvertLinkManager.java
index 719850d..44dc05a 100644
--- a/fanli/src/main/java/com/yeshi/fanli/service/manger/goods/ConvertLinkManager.java
+++ b/fanli/src/main/java/com/yeshi/fanli/service/manger/goods/ConvertLinkManager.java
@@ -12,7 +12,11 @@
 import javax.annotation.Resource;
 
 import com.yeshi.fanli.dto.pdd.PDDGoodsDetail;
+import com.yeshi.fanli.entity.SystemEnum;
+import com.yeshi.fanli.entity.SystemPIDInfo;
 import com.yeshi.fanli.service.inter.pdd.PDDAuthService;
+import com.yeshi.fanli.service.manger.PIDManager;
+import com.yeshi.fanli.util.Constant;
 import com.yeshi.fanli.vo.pdd.PDDConvertLinkResultVO;
 import org.springframework.stereotype.Component;
 import org.yeshi.utils.StringUtil;
@@ -60,12 +64,15 @@
     @Resource
     private PDDAuthService pddAuthService;
 
+    @Resource
+    private PIDManager pidManager;
+
     /**
      * @Title: convertJDLinkFromText @Description:杞摼鏂囨湰涓殑浜笢鐭摼 @param text @param
      * uid @param share @return @throws Exception String 杩斿洖绫诲瀷 @throws
      */
 
-    public String convertJDLinkFromText(String text, Long uid, boolean share, boolean simpleTKToken) throws Exception {
+    public String convertJDLinkFromText(SystemEnum system, String text, Long uid, boolean share, boolean simpleTKToken) throws Exception {
 
         StringBuilder builder = new StringBuilder(text);
         String newText = builder.toString();
@@ -79,10 +86,10 @@
             for (String shortLink : linkSet) {
                 String link = null;
                 if (share)
-                    link = JDApiUtil.convertLinkWithSubUnionId(shortLink, null, null, JDApiUtil.POSITION_SHARE + "",
+                    link = JDApiUtil.convertLinkWithSubUnionId(shortLink, null, null, pidManager.getPidCache(system, Constant.SOURCE_TYPE_JD, SystemPIDInfo.PidType.share),
                             uid + "");
                 else
-                    link = JDApiUtil.convertLinkWithSubUnionId(shortLink, null, null, JDApiUtil.POSITION_FANLI + "",
+                    link = JDApiUtil.convertLinkWithSubUnionId(shortLink, null, null, pidManager.getPidCache(system, Constant.SOURCE_TYPE_JD, SystemPIDInfo.PidType.fanli),
                             uid + "");
                 if (!StringUtil.isNullOrEmpty(link)) {
                     linkMap.put(shortLink, link);
@@ -99,7 +106,7 @@
         return newText;
     }
 
-    public String convertPDDLinkFromText(String text, Long uid, boolean share) throws Exception {
+    public String convertPDDLinkFromText(SystemEnum system, String text, Long uid, boolean share) throws Exception {
 
         StringBuilder builder = new StringBuilder(text);
         String newText = builder.toString();
@@ -118,7 +125,7 @@
                     if (goodsDetail == null)
                         throw new Exception("鎷煎澶氳浆閾惧け璐�");
                     PDDConvertLinkResultVO pddUrl = PinDuoDuoApiUtil.convert(goodsDetail.getGoodsSign(),
-                            share ? PinDuoDuoApiUtil.PID_SHARE : PinDuoDuoApiUtil.PID_FANLI, pddAuthService.getFanliCustomParams(uid), false);
+                            share ? pidManager.getPidCache(system, Constant.SOURCE_TYPE_PDD, SystemPIDInfo.PidType.share) : pidManager.getPidCache(system, Constant.SOURCE_TYPE_PDD, SystemPIDInfo.PidType.fanli), pddAuthService.getFanliCustomParams(uid), false);
                     if (pddUrl != null) {
                         linkMap.put(shortLink, pddUrl.getShort_url());
                     }
@@ -165,7 +172,12 @@
      * @return
      * @throws Exception
      */
-    private String convertTBLinkFromText(String text, Long uid, boolean share, boolean simpleToken) throws Exception {
+    private String convertTBLinkFromText(SystemEnum system, String text, Long uid, boolean share, boolean simpleToken) throws Exception {
+
+
+        String specialPid = pidManager.getPid(system, Constant.SOURCE_TYPE_TAOBAO, SystemPIDInfo.PidType.fanli);
+        String relationPid = pidManager.getPid(system, Constant.SOURCE_TYPE_TAOBAO, SystemPIDInfo.PidType.share);
+        String specialRelationPid = pidManager.getPid(system, Constant.SOURCE_TYPE_TAOBAO, SystemPIDInfo.PidType.fanliChannel);
 
         StringBuilder builder = new StringBuilder(text);
         String newText = builder.toString();
@@ -194,7 +206,7 @@
                 String link = null;
                 if (share) {
                     //鏆傛椂璋冪敤濂藉崟搴揂PI
-                    link = HaoDanKuApiUtil.getInstance().convertLink(auctionId, TaoBaoConstant.TAOBAO_RELATION_PID_DEFAULT, null, null, relationId);
+                    link = HaoDanKuApiUtil.getInstance().convertLink(auctionId, relationPid, null, null, relationId);
 //					TaoBaoGoodsBrief goods =  TaoKeApiUtil.specialConvertCoupon(auctionId,
 //							new TaoKeAppInfo(TaoBaoConstant.TAOBAO_AUTH_APPKEY, TaoBaoConstant.TAOBAO_AUTH_APPSECRET,
 //									TaoBaoConstant.TAOBAO_RELATION_PID_DEFAULT));
@@ -216,7 +228,7 @@
                         TaoBaoGoodsBrief goods = TaoKeApiUtil.specialConvertCoupon(auctionId,
                                 new TaoKeAppInfo(TaoBaoConstant.TAOBAO_AUTH_APPKEY,
                                         TaoBaoConstant.TAOBAO_AUTH_APPSECRET,
-                                        TaoBaoConstant.TAOBAO_SPECIAL_PID_DEFAULT), specialId, null);
+                                        specialPid), specialId, null);
                         if (goods == null)
                             throw new Exception("鍟嗗搧杞摼澶辫触");
 
@@ -230,7 +242,7 @@
                         TaoBaoGoodsBrief goods = TaoKeApiUtil.specialConvertCoupon(auctionId,
                                 new TaoKeAppInfo(TaoBaoConstant.TAOBAO_AUTH_APPKEY,
                                         TaoBaoConstant.TAOBAO_AUTH_APPSECRET,
-                                        TaoBaoConstant.TAOBAO_RELATION_AS_SPECIAL_PID), specialId, null);
+                                        specialRelationPid), specialId, null);
                         if (goods == null)
                             throw new Exception("鍟嗗搧杞摼澶辫触");
 
@@ -274,7 +286,7 @@
             for (String st : list) {
                 String activityid = st.replace("{娣樺疂娲诲姩:", "").replace("}", "");
                 if (!StringUtil.isNullOrEmpty(activityid)) {
-                    String adzoneId = TaoBaoConstant.TAOBAO_RELATION_PID_DEFAULT.split("_")[3];
+                    String adzoneId = relationPid.split("_")[3];
                     TaoKeOfficialActivityConvertResultDTO dto = TaoKeApiUtil.officialActivityConvert(adzoneId,
                             activityid, relationId);
                     String link = dto.getShort_click_url();
@@ -295,11 +307,11 @@
      * @Title: convertLinkFromText @Description: 浠庢枃鏈浆閾� @param text @return
      * String 杩斿洖绫诲瀷 @throws
      */
-    public String convertLinkFromText(String text, Long uid, boolean share, boolean simpleToken)
+    public String convertLinkFromText(SystemEnum system, String text, Long uid, boolean share, boolean simpleToken)
             throws ConvertLinkExceptionException, Exception {
-        String newText = convertJDLinkFromText(text, uid, share, simpleToken);
-        newText = convertPDDLinkFromText(newText, uid, share);
-        newText = convertTBLinkFromText(newText, uid, share, simpleToken);
+        String newText = convertJDLinkFromText(system, text, uid, share, simpleToken);
+        newText = convertPDDLinkFromText(system, newText, uid, share);
+        newText = convertTBLinkFromText(system, newText, uid, share, simpleToken);
 
         List<String> urls = UrlUtils.parseUrlsFromText(text);
         if (urls != null)

--
Gitblit v1.8.0