From 3824cbcaec6e6c67418d5280a53e9c2fedeef6f9 Mon Sep 17 00:00:00 2001 From: admin <weikou2014> Date: 星期四, 11 七月 2019 16:34:13 +0800 Subject: [PATCH] 订单bug,分享爆款自购修改 --- fanli/src/main/java/com/yeshi/fanli/controller/h5/H5RecommendController.java | 112 +++++++++++++++++++++++++++++++++++++++++++++++++++++--- 1 files changed, 106 insertions(+), 6 deletions(-) diff --git a/fanli/src/main/java/com/yeshi/fanli/controller/h5/H5RecommendController.java b/fanli/src/main/java/com/yeshi/fanli/controller/h5/H5RecommendController.java index a825b29..ea63ae3 100644 --- a/fanli/src/main/java/com/yeshi/fanli/controller/h5/H5RecommendController.java +++ b/fanli/src/main/java/com/yeshi/fanli/controller/h5/H5RecommendController.java @@ -18,9 +18,10 @@ import com.yeshi.fanli.entity.bus.recommend.RecommendBanner; import com.yeshi.fanli.entity.bus.share.UserShareGoodsHistory; import com.yeshi.fanli.entity.bus.su.recommend.SuperRecommendBanner; +import com.yeshi.fanli.entity.bus.tlj.UserTaoLiJinRecord; import com.yeshi.fanli.entity.system.BusinessSystem; +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; @@ -36,10 +37,12 @@ import com.yeshi.fanli.service.inter.goods.TaoBaoGoodsBriefService; import com.yeshi.fanli.service.inter.hongbao.HongBaoManageService; import com.yeshi.fanli.service.inter.taobao.TaoBaoUnionConfigService; +import com.yeshi.fanli.service.inter.tlj.UserTaoLiJinRecordService; import com.yeshi.fanli.service.inter.user.TBPidService; import com.yeshi.fanli.service.inter.user.UserShareGoodsGroupService; import com.yeshi.fanli.util.AESUtil; import com.yeshi.fanli.util.Constant; +import com.yeshi.fanli.util.MoneyBigDecimalUtil; import com.yeshi.fanli.util.RedisManager; import com.yeshi.fanli.util.StringUtil; import com.yeshi.fanli.util.ThreadUtil; @@ -87,6 +90,10 @@ @Resource private UserShareGoodsGroupService userShareGoodsGroupService; + + @Resource + private UserTaoLiJinRecordService userTaoLiJinRecordService; + /** * @@ -99,7 +106,8 @@ @RequestMapping(value = "getRecommenBanner", method = RequestMethod.GET) public void getRecommendBanner(AcceptData acceptData, String callback, PrintWriter out) { - BusinessSystem system = businessSystemService.getBusinessSystem("WEB", Constant.systemCommonConfig.getH5PackageName()); + BusinessSystem system = businessSystemService.getBusinessSystem("WEB", + Constant.systemCommonConfig.getH5PackageName()); JSONObject json = new JSONObject(); if (system == null) { out.print(JsonUtil.loadFalseResult(1, H5ControllerUtil.NOSYSTEM)); @@ -140,6 +148,71 @@ return; } + /** + * 澶勭悊鏉′欢 + * + * @param uid + * @param tid + * @param out + */ + private void doTaoLiJin(String callback, Long uid, Long tid, PrintWriter out) { + // 鏌ヨ鍟嗗搧娣樼ぜ閲� + UserTaoLiJinRecord record = userTaoLiJinRecordService.selectByPrimaryKey(tid); + if (record == null) { + out.print(JsonUtil.loadJSONP(callback, JsonUtil.loadFalseResult("鍟嗗搧淇℃伅鑾峰彇澶辫触"))); + return; + } + + Long auctionId = record.getGoodsId(); + String tljLink = record.getSendUrl(); + BigDecimal tljMoney= record.getPerFace(); + + TaoBaoGoodsBrief goods = null; + try { + goods = redisManager.getTaoBaoGoodsBrief(auctionId); + } catch (TaobaoGoodsDownException e) { + } + + if (goods == null) {// 宸茬粡涓嬬嚎 + out.print(JsonUtil.loadJSONP(callback, JsonUtil.loadFalseResult("鍟嗗搧淇℃伅鑾峰彇澶辫触"))); + return; + } + + String token = redisManager.getTLJToken(tljLink); + if (StringUtil.isNullOrEmpty(token)) { + token = TaoKeApiUtil.getTKToken(goods.getPictUrl(), goods.getTitle(), tljLink); + } + + // 鍒稿悗浠� + BigDecimal afterCouponPrice = TaoBaoUtil.getAfterUseCouplePrice(goods); + TaoBaoLink link = new TaoBaoLink(); + link.setTaoToken(token); + + JSONObject data = new JSONObject(); + data.put("title", goods.getTitle()); + if (goods.getImgList() == null) + goods.setImgList(new ArrayList<>()); + goods.getImgList().add(0, TbImgUtil.getTBSizeImg(goods.getPictUrl(), 300)); + data.put("imgs", goods.getImgList()); + data.put("couponPrice", afterCouponPrice); + // 鑰佺増鏈吋瀹� + data.put("quanPrice", afterCouponPrice); + data.put("zkPrice", goods.getZkPrice()); + data.put("shareContent", "闀挎寜澶嶅埗鏈鏂囧瓧锛屾墦寮�銆愭墜鏈烘窐瀹濄�戝嵆鍙鍙栥�愮壒鍒紭鎯犲埜銆戣喘涔颁笅鍗曪紝"); + data.put("token", link.getTaoToken()); + data.put("reservePrice", goods.getReservePrice()); + data.put("shopType", goods.getUserType() == 1 ? 2 : 1); + if (!StringUtil.isNullOrEmpty(goods.getCouponInfo()) && !"鏃�".equalsIgnoreCase(goods.getCouponInfo())) { + data.put("couponAmount", MoneyBigDecimalUtil.getWithNoZera(goods.getCouponAmount())); + data.put("coupon", true); + } else { + data.put("coupon", false); + } + + data.put("tljMoney", tljMoney); + + out.print(JsonUtil.loadJSONP(callback, JsonUtil.loadTrueResult(data))); + } /** * @@ -154,15 +227,23 @@ @SuppressWarnings("unused") @RequestMapping(value = "getGoodsDetail", method = RequestMethod.GET) - public void getGoodsDetail(final AcceptData acceptData, final String id, String uid, String callback, + public void getGoodsDetail(final AcceptData acceptData, final String id, String tid, String uid, String callback, PrintWriter out) { long begin = java.lang.System.currentTimeMillis(); if (StringUtil.isNullOrEmpty(id)) { out.print(JsonUtil.loadFalseResult(1, "璇蜂笂浼爄d")); return; } + if (!StringUtil.isNullOrEmpty(uid)) { uid = AESUtil.decrypt(uid, Constant.UIDAESKEY); + } + + if (!StringUtil.isNullOrEmpty(tid)) { + tid = AESUtil.decrypt(tid, Constant.UIDAESKEY); + doTaoLiJin(callback, StringUtil.isNullOrEmpty(uid) || Long.parseLong(uid) == 0 ? null : Long.parseLong(uid), + Long.parseLong(tid), out); + return; } TaoBaoGoodsBrief goods = null; @@ -194,7 +275,7 @@ List<TaoBaoUnionConfig> configList = taoBaoUnionConfigService .getConfigByTypeCache(PidUser.TYPE_SHARE_GOODS); String pid = null; - TBPid tbPid = tbPidService.getTBPid(Long.parseLong(uid), PidUser.TYPE_SHARE_GOODS); + ClientTBPid tbPid = tbPidService.getSharePid(); if (tbPid != null) pid = tbPid.getPid(); else { @@ -226,7 +307,7 @@ } else { List<TaoBaoUnionConfig> configList = taoBaoUnionConfigService .getConfigByTypeCache(PidUser.TYPE_SHARE_GOODS); - String pid = configList.get(0).getDefaultPid(); + String pid = tbPidService.getSharePid().getPid(); TaoKeAppInfo app = new TaoKeAppInfo(); app.setAdzoneId(pid.split("_")[3]); app.setAppKey(configList.get(0).getAppKey()); @@ -244,6 +325,13 @@ if (!StringUtil.isNullOrEmpty(goods.getCouponLink())) { url = goods.getCouponLink(); } + if (!url.contains("uland.taobao.com") && !url.contains("s.click.taobao.com")) { + TaoBaoGoodsBrief linkInfo = TaoKeApiUtil.specialConvertCoupon(Long.parseLong(id), app); + url = linkInfo.getCouponLink(); + if (StringUtil.isNullOrEmpty(url)) + url = linkInfo.getAuctionUrl(); + } + token = TaoKeApiUtil.getTKToken(goods.getPictUrl(), goods.getTitle(), url); } } @@ -269,13 +357,25 @@ goods.setImgList(new ArrayList<>()); goods.getImgList().add(0, TbImgUtil.getTBSizeImg(goods.getPictUrl(), 300)); data.put("imgs", goods.getImgList()); + data.put("couponPrice", afterCouponPrice); + // 鑰佺増鏈吋瀹� data.put("quanPrice", afterCouponPrice); data.put("zkPrice", goods.getZkPrice()); data.put("shareContent", "闀挎寜澶嶅埗鏈鏂囧瓧锛屾墦寮�銆愭墜鏈烘窐瀹濄�戝嵆鍙鍙栥�愮壒鍒紭鎯犲埜銆戣喘涔颁笅鍗曪紝"); data.put("token", link.getTaoToken()); - data.put("quan", !StringUtil.isNullOrEmpty(goods.getCouponInfo())); data.put("reservePrice", goods.getReservePrice()); data.put("shopType", goods.getUserType() == 1 ? 2 : 1); + if (!StringUtil.isNullOrEmpty(goods.getCouponInfo()) && !"鏃�".equalsIgnoreCase(goods.getCouponInfo())) { + data.put("couponAmount", MoneyBigDecimalUtil.getWithNoZera(goods.getCouponAmount())); + data.put("coupon", true); + // 鑰佺増鏈吋瀹� + data.put("quan", true); + } else { + data.put("coupon", false); + // 鑰佺増鏈吋瀹� + data.put("quan", true); + } + out.print(JsonUtil.loadJSONP(callback, JsonUtil.loadTrueResult(data))); final String tempUid = uid; -- Gitblit v1.8.0