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/v1/GoodsController.java | 67 +++++++++++++++++++++++---------- 1 files changed, 46 insertions(+), 21 deletions(-) diff --git a/fanli/src/main/java/com/yeshi/fanli/controller/client/v1/GoodsController.java b/fanli/src/main/java/com/yeshi/fanli/controller/client/v1/GoodsController.java index 1f24bcd..1a861c7 100644 --- a/fanli/src/main/java/com/yeshi/fanli/controller/client/v1/GoodsController.java +++ b/fanli/src/main/java/com/yeshi/fanli/controller/client/v1/GoodsController.java @@ -1,13 +1,18 @@ package com.yeshi.fanli.controller.client.v1; import java.io.PrintWriter; +import java.util.Date; import javax.annotation.Resource; import javax.servlet.http.HttpServletRequest; import com.yeshi.fanli.entity.SystemEnum; import com.yeshi.fanli.entity.SystemFunction; +import com.yeshi.fanli.entity.SystemPIDInfo; import com.yeshi.fanli.exception.taobao.TaoBaoConvertLinkException; +import com.yeshi.fanli.lijin.manager.UserLijinMnager; +import com.yeshi.fanli.service.inter.user.UserFunctionsLimitService; +import com.yeshi.fanli.service.manger.PIDManager; import com.yeshi.fanli.service.manger.goods.TaoBaoLinkManager; import com.yeshi.fanli.util.SystemInfoUtil; import org.springframework.stereotype.Controller; @@ -93,7 +98,16 @@ @Resource private TaoBaoLinkManager taoBaoLinkManager; - private void doTaoLiJinBuy(AcceptData acceptData, Long uid, Long auctionId, PrintWriter out) { + @Resource + private PIDManager pidManager; + + @Resource + private UserLijinMnager userLijinMnager; + + @Resource + private UserFunctionsLimitService userFunctionsLimitService; + + private void doTaoLiJinBuy(AcceptData acceptData, Long uid, String auctionId, PrintWriter out) { JSONObject data = new JSONObject(); TaoBaoLink taoBaoLink = null; try { @@ -131,17 +145,13 @@ } - private void getTaoBaoLinkWithoutFanLi(AcceptData acceptData, Long auctionId, String from, String source, + private void getTaoBaoLinkWithoutFanLi(AcceptData acceptData, String auctionId, String from, String source, HttpServletRequest request, PrintWriter out) { try { - String pid = TaoBaoConstant.TAOBAO_COUPON_PID; + String pid = pidManager.getPidCache(acceptData.getSystem(), Constant.SOURCE_TYPE_TAOBAO, SystemPIDInfo.PidType.coupon); - if (acceptData.getSystem() == SystemEnum.yhqjx) { - pid="mm_124933865_56750082_19510050154"; - } - - TaoBaoLink taoBaoLink = taoBaoLinkManager.getTaoBaoLinkForRecieveCoupon(auctionId, null, pid); + TaoBaoLink taoBaoLink = taoBaoLinkManager.getTaoBaoLinkForRecieveCoupon(acceptData.getSystem(), auctionId, null, pid); JSONObject data = new JSONObject(); JSONObject link = new JSONObject(); link.put("clickUrl", taoBaoLink.getClickUrl()); @@ -165,15 +175,21 @@ * @param out */ @RequestMapping(value = "gettaobaolink") - public void getTaoBaoLink(AcceptData acceptData, Long uid, Long auctionId, String from, String source, + public void getTaoBaoLink(AcceptData acceptData, Long uid, String auctionId, String from, String source, HttpServletRequest request, PrintWriter out) { - if (auctionId == null || auctionId <= 0) { + if (StringUtil.isNullOrEmpty(auctionId)) { out.print(JsonUtil.loadFalseResult(2, "鍟嗗搧ID涓嶈兘涓虹┖")); return; } if (!SystemInfoUtil.hasFunctions(acceptData.getSystem(), SystemFunction.fanli)) { + getTaoBaoLinkWithoutFanLi(acceptData, auctionId, from, source, request, out); + return; + } + + //棰嗗埜 + if (uid == null) { getTaoBaoLinkWithoutFanLi(acceptData, auctionId, from, source, request, out); return; } @@ -189,6 +205,10 @@ out.print(JsonUtil.loadFalseResult(Constant.CODE_FORBIDDEN_USER, Constant.FORBIDDEN_USER_REASON_DESC)); return; } + if (userFunctionsLimitService.isLimit(uid, SystemFunction.fanli, new Date())) { + out.print(JsonUtil.loadFalseResult(1, "璇ュ姛鑳介檺鍒朵娇鐢�")); + return; + } try { // 鏃ュ織璁板綍 @@ -201,7 +221,7 @@ TaoBaoGoodsBrief goods = null; try { - goods = TaoKeApiUtil.getSimpleGoodsInfo(auctionId); + goods = TaoKeApiUtil.getSimpleGoodsInfoForOwnBuy(auctionId); } catch (TaobaoGoodsDownException e) { out.print(JsonUtil.loadFalseResult(3, "鍟嗗搧宸蹭笅鏋�")); return; @@ -222,9 +242,9 @@ String dpid = null; if (TaoBaoUtil.isSpecialGoods(goods.getMaterialLibType())) { - dpid = TaoBaoConstant.TAOBAO_SPECIAL_PID_DEFAULT; + dpid = pidManager.getPid(acceptData.getSystem(), Constant.SOURCE_TYPE_TAOBAO, SystemPIDInfo.PidType.fanli); } else { - dpid = TaoBaoConstant.TAOBAO_RELATION_AS_SPECIAL_PID; + dpid = pidManager.getPid(acceptData.getSystem(), Constant.SOURCE_TYPE_TAOBAO, SystemPIDInfo.PidType.fanliChannel); } String psiteId = dpid.split("_")[2]; String padzoneId = dpid.split("_")[3]; @@ -256,7 +276,7 @@ } else isNative = false; - pid = TaoBaoConstant.TAOBAO_SPECIAL_PID_DEFAULT; + pid = pidManager.getPid(acceptData.getSystem(), Constant.SOURCE_TYPE_TAOBAO, SystemPIDInfo.PidType.fanli); } else {// 灏氭湭缁戝畾 isNative = true; @@ -278,7 +298,7 @@ } if (taoBaoLink == null) { - taoBaoLink = taoBaoLinkManager.getTaoBaoLinkForBuy(uid, auctionId, specialId, null); + taoBaoLink = taoBaoLinkManager.getTaoBaoLinkForBuy(acceptData.getSystem(), uid, auctionId, specialId, null); if (taoBaoLink != null) clientTBPid = null; } @@ -293,7 +313,7 @@ taoBaoLink = shareGoodsService.getTaoBaoLink(uid, auctionId, tbPidService.getIOSDefault().getPid()); } else - taoBaoLink = taoBaoLinkManager.getTaoBaoLinkForBuy(uid, auctionId, specialId, null); + taoBaoLink = taoBaoLinkManager.getTaoBaoLinkForBuy(acceptData.getSystem(), uid, auctionId, specialId, null); LogHelper.test("璐拱杞摼:榛樿PID杞摼-" + uid + "锛�" + auctionId); } } else {// 涓嶆槸杩斿埄搴撶殑鍟嗗搧锛岀敤鐗规畩PID鏇夸唬 @@ -305,10 +325,10 @@ if (!StringUtil.isNullOrEmpty(relationId)) {// if (source != null && "taolijin_free_buy".equals(source)) { taoBaoLink = taoBaoLinkManager.getTaoLiJinLinkForBuy(uid, auctionId, - TaoBaoConstant.TAOBAO_RELATION_AS_SPECIAL_PID); + pidManager.getPid(acceptData.getSystem(), Constant.SOURCE_TYPE_TAOBAO, SystemPIDInfo.PidType.fanliChannel)); } else { - taoBaoLink = taoBaoLinkManager.getTaoBaoLinkForShare(uid, auctionId, relationId, - TaoBaoConstant.TAOBAO_RELATION_AS_SPECIAL_PID); + taoBaoLink = taoBaoLinkManager.getTaoBaoLinkForShare(acceptData.getSystem(), uid, auctionId, relationId, + pidManager.getPid(acceptData.getSystem(), Constant.SOURCE_TYPE_TAOBAO, SystemPIDInfo.PidType.fanliChannel)); } data.put("native", true); @@ -330,6 +350,9 @@ data.put("link", link); if (clientTBPid != null) data.put("tbPidInfo", clientTBPid); + + data.put("userLevel", userLijinMnager.getUserLevelInfo(uid, acceptData.getSystem())); + out.print(JsonUtil.loadTrueResult(data)); TaoKeLogHelper.convertLinkInfo( @@ -393,6 +416,8 @@ data.put("native", true); } + data.put("userLevel", userLijinMnager.getUserLevelInfo(uid, acceptData.getSystem())); + out.print(JsonUtil.loadTrueResult(data)); } else { out.print(JsonUtil.loadFalseResult(1, "璇锋眰澶辫触")); @@ -426,7 +451,7 @@ if ("TB".equalsIgnoreCase(goodsType)) { TaoBaoGoodsBrief goods = null; try { - goods = TaoKeApiUtil.getSimpleGoodsInfo(Long.parseLong(goodsId)); + goods = TaoKeApiUtil.getSimpleGoodsInfo(goodsId); } catch (NumberFormatException e) { e.printStackTrace(); } catch (TaobaoGoodsDownException e) { @@ -458,7 +483,7 @@ * @param out */ @RequestMapping(value = "deleteRecommendGoods") - public void deleteRecommendGoods(AcceptData acceptData, Long goodsId, Integer source, Long uid, String reason, + public void deleteRecommendGoods(AcceptData acceptData, String goodsId, Integer source, Long uid, String reason, PrintWriter out) { if (goodsId == null) { out.print(JsonUtil.loadFalseResult(1, "璇蜂笂浼犲晢鍝�")); -- Gitblit v1.8.0