admin
2021-09-13 8ce7c720e4e7a604b0ff770349b5556f39d37759
fanli/src/main/java/com/yeshi/fanli/service/manger/ClipboardAnalysisManager.java
@@ -11,6 +11,8 @@
import javax.annotation.Resource;
import com.yeshi.fanli.util.*;
import com.yeshi.fanli.util.taobao.TaoKeApiUtil;
import com.yeshi.goods.facade.utils.taobao.DaTaoKeApiUtil;
import org.springframework.stereotype.Component;
import org.yeshi.utils.HttpUtil;
@@ -29,13 +31,6 @@
import com.yeshi.fanli.service.inter.user.TokenRecordService;
import com.yeshi.fanli.service.manger.goods.jd.JDGoodsLinkParseManager;
import com.yeshi.fanli.service.manger.goods.tb.TaoBaoTokenAuctionIdMapManager;
import com.yeshi.fanli.util.Constant;
import com.yeshi.fanli.util.DouYinUtil;
import com.yeshi.fanli.util.RedisManager;
import com.yeshi.fanli.util.StringUtil;
import com.yeshi.fanli.util.TokenUtil;
import com.yeshi.fanli.util.Utils;
import com.yeshi.fanli.util.VersionUtil;
import com.yeshi.fanli.util.factory.CommonGoodsFactory;
import com.yeshi.fanli.util.jd.JDApiUtil;
import com.yeshi.fanli.util.jd.JDUtil;
@@ -115,7 +110,45 @@
            typeSet.add(ClipboardContentType.text);
        }
        return typeSet;
    }
    /**
     * 特价解析粘贴板
     * 无平台,根据格式判断平台
     *
     * @param text
     */
    public Integer tejiaParseSourceType(String text) {
        if (text == null)
            return null;
        text = text.trim();
        //判断是否有链接
        List<String> linkList = HttpUtil.getUrlListFromText(text);
        if (linkList != null && linkList.size() > 0) {
            String link = linkList.get(0);
            if (TaoBaoUtil.isTaoBaoLink(link)) {
                return Constant.SOURCE_TYPE_TAOBAO;
            } else if (JDUtil.isJDLink(link)) {
                return Constant.SOURCE_TYPE_JD;
            } else if (PinDuoDuoUtil.isPDDLink(link)) {
                return Constant.SOURCE_TYPE_PDD;
            } else if (VipShopUtil.isVIPShopLink(link)) {
                return Constant.SOURCE_TYPE_VIP;
            } else if (SuningUtil.isSuningLink(link)) {
                return Constant.SOURCE_TYPE_SUNING;
            }
            //链接非电商平台链接
            return null;
        }
        //判断是否疑似口令
        if (TaoBaoUtil.isHaveNewVersionTaoBaoToken(text)) {
            return Constant.SOURCE_TYPE_TAOBAO;
        }
        return null;
    }
    /**
@@ -128,6 +161,25 @@
        text = text.trim();
        Set<ClipboardContentType> typeSet = parseContentType(text, platform, version);
        //新版口令
        Long goodsId = null;
        if (text.contains("https://m.tb.cn/")) {
            try {
                TaoKeApiUtil.TokenConvertResult result = TaoKeApiUtil.tokenConvert(text);
                if (result != null) {
                    goodsId = result.getNum_iid();
                }
            } catch (TaoBaoTokenParseException e) {
                e.printStackTrace();
            }
            if (goodsId == null) {
                Long auctionId = DaTaoKeApiUtil.parseTaoBaoToken(text);
                if (auctionId != null) {
                    typeSet.add(ClipboardContentType.taoBaoToken);
                    goodsId = auctionId;
                }
            }
        }
        // 系统口令
        if (typeSet.contains(ClipboardContentType.systemToken)) {
@@ -144,7 +196,6 @@
            return;
        }
        //优先解析淘口令
        Long goodsId = DaTaoKeApiUtil.parseTaoBaoToken(text);
        if (goodsId != null) {
            CommonGoods commonGoods = getTaoBaoGoods(goodsId);
            if (commonGoods != null)
@@ -491,7 +542,6 @@
        return jdId;
    }
    public String parseTBAuctionIdFromLink(String link) {