From e4a74cbbb4f34b9e88dfa6edb8296a7e5b9e127c Mon Sep 17 00:00:00 2001 From: hexiaohui <hexiaohui@LAPTOP-03V48RSB> Date: 星期日, 27 一月 2019 21:28:16 +0800 Subject: [PATCH] 增加分享活动订单及相关服务 --- fanli/src/main/java/com/yeshi/fanli/controller/client/GoodsController.java | 53 +++++++++++++++++++++++++++++++++++++++++++++++------ 1 files changed, 47 insertions(+), 6 deletions(-) diff --git a/fanli/src/main/java/com/yeshi/fanli/controller/client/GoodsController.java b/fanli/src/main/java/com/yeshi/fanli/controller/client/GoodsController.java index 9062543..9666c7a 100644 --- a/fanli/src/main/java/com/yeshi/fanli/controller/client/GoodsController.java +++ b/fanli/src/main/java/com/yeshi/fanli/controller/client/GoodsController.java @@ -7,20 +7,26 @@ import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.RequestMapping; +import org.yeshi.utils.JsonUtil; import com.yeshi.fanli.entity.accept.AcceptData; +import com.yeshi.fanli.entity.bus.user.UserExtraTaoBaoInfo; import com.yeshi.fanli.entity.taobao.ClientTBPid; import com.yeshi.fanli.entity.taobao.PidUser; import com.yeshi.fanli.entity.taobao.TBPid; +import com.yeshi.fanli.entity.taobao.TaoBaoGoodsBrief; import com.yeshi.fanli.entity.taobao.TaoBaoLink; import com.yeshi.fanli.entity.taobao.TaoBaoUnionConfig; +import com.yeshi.fanli.exception.taobao.TaobaoGoodsDownException; import com.yeshi.fanli.service.inter.goods.ShareGoodsService; import com.yeshi.fanli.service.inter.monitor.MonitorService; import com.yeshi.fanli.service.inter.taobao.TaoBaoUnionConfigService; import com.yeshi.fanli.service.inter.user.TBPidService; +import com.yeshi.fanli.service.inter.user.UserExtraTaoBaoInfoService; +import com.yeshi.fanli.util.Constant; +import com.yeshi.fanli.util.StringUtil; import com.yeshi.fanli.util.factory.MonitorFactory; - -import org.yeshi.utils.JsonUtil; +import com.yeshi.fanli.util.taobao.TaoKeApiUtil; import net.sf.json.JSONObject; @@ -39,6 +45,9 @@ @Resource private MonitorService monitorService; + + @Resource + private UserExtraTaoBaoInfoService userExtraTaoBaoInfoService; /** * 鑾峰彇娣樺疂鐨勫垎浜摼鎺� @@ -63,22 +72,54 @@ } JSONObject data = new JSONObject(); - data.put("native", true); + boolean isNative = false; + String pid = null; + + String specialId = null; + // 鏌ヨ鐢ㄦ埛ID鏄惁缁戝畾浜嗕細鍛樿繍钀D + UserExtraTaoBaoInfo userInfo = userExtraTaoBaoInfoService.getByUid(uid); + if (userInfo != null && !StringUtil.isNullOrEmpty(userInfo.getSpecialId()) && userInfo.getSpecialValid() != null + && userInfo.getSpecialValid() == true) { + specialId = userInfo.getSpecialId(); + // 宸茬粡缁戝畾 + try { + TaoBaoGoodsBrief goods = TaoKeApiUtil.getSimpleGoodsInfo(auctionId); + if (goods.getMaterialLibType() != null && goods.getMaterialLibType() == 1) { + isNative = true; + } else + isNative = false; + } catch (TaobaoGoodsDownException e) { + out.print(JsonUtil.loadFalseResult(3, "鍟嗗搧宸蹭笅鏋�")); + return; + } + + pid = Constant.TAOBAO_SPECIAL_PID_DEFAULT; + + } else {// 灏氭湭缁戝畾 + isNative = true; + } try { int pidType = PidUser.TYPE_FANLI_ANDROID; if (acceptData.getPlatform().equalsIgnoreCase("ios")) pidType = PidUser.TYPE_FANLI_IOS; - TaoBaoLink taoBaoLink = shareGoodsService.getTaoBaoLinkForBuy(uid, auctionId, pidType); + + TaoBaoLink taoBaoLink = null; + if (!StringUtil.isNullOrEmpty(specialId)) { + taoBaoLink = shareGoodsService.getTaoBaoLinkForBuyWithSpecial(uid, specialId, auctionId); + } else { + taoBaoLink = shareGoodsService.getTaoBaoLinkForBuy(uid, auctionId, pidType); + } + JSONObject link = new JSONObject(); link.put("clickUrl", taoBaoLink.getClickUrl()); link.put("couponUrl", taoBaoLink.getCouponLink()); data.put("type", 1); data.put("link", link); - // TODO 娣诲姞jumpType锛坔5,native,auto锛� out.print(JsonUtil.loadTrueResult(data)); } catch (Exception e) { + isNative = false; try { monitorService.addClientAPIMonitor(MonitorFactory.createClientAPI(request, 0, 0, "璐拱娣樺疂鍟嗗搧杞摼鍑洪敊")); } catch (Exception e1) { @@ -99,12 +140,12 @@ ClientTBPid clientTBPid = new ClientTBPid(config.getAppKey(), tbPid.getPid(), siteId, adzoneId); data.put("type", 2); data.put("tbPidInfo", clientTBPid); - // TODO 娣诲姞jumpType锛坔5,native,auto锛� out.print(JsonUtil.loadTrueResult(data)); } else { out.print(JsonUtil.loadFalseResult(1, "璇锋眰澶辫触")); } } + data.put("native", isNative); } -- Gitblit v1.8.0