From 3340ed122e19e3943ce4f93eb52103b623a3fc2c Mon Sep 17 00:00:00 2001 From: admin <weikou2014> Date: 星期三, 27 四月 2022 15:43:58 +0800 Subject: [PATCH] 订单消息bug修改 --- fanli/src/main/java/com/yeshi/fanli/controller/client/v2/GoodsControllerV2.java | 242 +++++++++++++++++++++++++---------------------- 1 files changed, 129 insertions(+), 113 deletions(-) diff --git a/fanli/src/main/java/com/yeshi/fanli/controller/client/v2/GoodsControllerV2.java b/fanli/src/main/java/com/yeshi/fanli/controller/client/v2/GoodsControllerV2.java index c131869..9e566ec 100644 --- a/fanli/src/main/java/com/yeshi/fanli/controller/client/v2/GoodsControllerV2.java +++ b/fanli/src/main/java/com/yeshi/fanli/controller/client/v2/GoodsControllerV2.java @@ -5,10 +5,7 @@ import java.math.BigDecimal; import java.net.URLDecoder; import java.net.URLEncoder; -import java.util.ArrayList; -import java.util.HashMap; -import java.util.List; -import java.util.Map; +import java.util.*; import javax.annotation.Resource; @@ -19,13 +16,16 @@ import com.yeshi.fanli.lijin.manager.GoodsLijinMnager; import com.yeshi.fanli.lijin.manager.UserLijinMnager; import com.yeshi.fanli.service.inter.pdd.PDDAuthService; +import com.yeshi.fanli.service.inter.user.*; import com.yeshi.fanli.service.inter.user.tb.UserExtraTaoBaoInfoService; import com.yeshi.fanli.service.manger.PIDManager; import com.yeshi.fanli.util.*; +import com.yeshi.fanli.util.goods.GoodsJumpUtil; import com.yeshi.fanli.vo.common.WXXCXJumpInfoVO; import com.yeshi.fanli.vo.pdd.PDDConvertLinkResultVO; import com.yeshi.fanli.vo.goods.GoodsJumpLinkVO; import com.yeshi.fanli.vo.suning.SuningConvertLinkResult; +import com.yeshi.goods.facade.dto.taobao.TaoBaoGoodsImportantInfo; import org.json.simple.JSONArray; import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.RequestMapping; @@ -87,10 +87,6 @@ import com.yeshi.fanli.service.inter.taobao.TaoBaoShopService; import com.yeshi.fanli.service.inter.taobao.TaoBaoUnionConfigService; import com.yeshi.goods.facade.service.DaTaoKeGoodsDetailV2Service; -import com.yeshi.fanli.service.inter.user.ShamUserService; -import com.yeshi.fanli.service.inter.user.TBPidService; -import com.yeshi.fanli.service.inter.user.UserGoodsStorageService; -import com.yeshi.fanli.service.inter.user.UserInfoService; import com.yeshi.fanli.service.inter.user.integral.IntegralGetService; import com.yeshi.fanli.service.inter.user.vip.UserVIPInfoService; import com.yeshi.fanli.service.inter.user.vip.UserVipConfigService; @@ -229,6 +225,9 @@ @Resource private UserLijinMnager userLijinMnager; + + @Resource + private UserFunctionsLimitService userFunctionsLimitService; private GoodsMoneyConfigParamsDTO getParamsDTO(String platform, String version, Long uid, SystemEnum system) { UserLevelEnum level = UserLevelEnum.daRen; @@ -631,7 +630,7 @@ } else {// 鏅�氳喘涔� OtherInfo otherInfo = new OtherInfo(); RewardCouponVO rewardCoupon = new RewardCouponVO(); - rewardCoupon.setJumpDetail(jumpDetailV2Service.getByTypeCache("web")); + rewardCoupon.setJumpDetail(jumpDetailV2Service.getByTypeCache("web",acceptData.getSystem())); JSONObject params1 = new JSONObject(); if (!VersionUtil.greaterThan_2_0_5(acceptData.getPlatform(), acceptData.getVersion())) params1.put("url", configService.getValue(ConfigKeyEnum.specialGuideRewardCouponLink.getKey(), acceptData.getSystem())); @@ -788,7 +787,7 @@ // 濂栧姳鍒歌繑鍒� RewardCouponVO rewardCoupon = new RewardCouponVO(); rewardCoupon.setMaxMoneyPlus(maxMoneyPlus); - rewardCoupon.setJumpDetail(jumpDetailV2Service.getByTypeCache("web")); + rewardCoupon.setJumpDetail(jumpDetailV2Service.getByTypeCache("web",acceptData.getSystem())); JSONObject params1 = new JSONObject(); if (!VersionUtil.greaterThan_2_0_5(acceptData.getPlatform(), acceptData.getVersion())) params1.put("url", configService.getValue(ConfigKeyEnum.specialGuideRewardCouponLink.getKey(), acceptData.getSystem())); @@ -985,7 +984,7 @@ // 闄勫姞淇℃伅 OtherInfo otherInfo = new OtherInfo(); RewardCouponVO rewardCoupon = new RewardCouponVO(); - rewardCoupon.setJumpDetail(jumpDetailV2Service.getByTypeCache("web")); + rewardCoupon.setJumpDetail(jumpDetailV2Service.getByTypeCache("web",acceptData.getSystem())); JSONObject params1 = new JSONObject(); if (!VersionUtil.greaterThan_2_0_5(acceptData.getPlatform(), acceptData.getVersion())) params1.put("url", configService.getValue(ConfigKeyEnum.specialGuideRewardCouponLink.getKey(), acceptData.getSystem())); @@ -1192,7 +1191,7 @@ // 闄勫姞淇℃伅 OtherInfo otherInfo = new OtherInfo(); RewardCouponVO rewardCoupon = new RewardCouponVO(); - rewardCoupon.setJumpDetail(jumpDetailV2Service.getByTypeCache("web")); + rewardCoupon.setJumpDetail(jumpDetailV2Service.getByTypeCache("web",acceptData.getSystem())); JSONObject params1 = new JSONObject(); if (!VersionUtil.greaterThan_2_0_5(acceptData.getPlatform(), acceptData.getVersion())) params1.put("url", configService.getValue(ConfigKeyEnum.specialGuideRewardCouponLink.getKey(), acceptData.getSystem())); @@ -1332,7 +1331,7 @@ // 闄勫姞淇℃伅 OtherInfo otherInfo = new OtherInfo(); RewardCouponVO rewardCoupon = new RewardCouponVO(); - rewardCoupon.setJumpDetail(jumpDetailV2Service.getByTypeCache("web")); + rewardCoupon.setJumpDetail(jumpDetailV2Service.getByTypeCache("web",acceptData.getSystem())); JSONObject params1 = new JSONObject(); params1.put("url", userVipConfigService.getValueByKey("vip_link")); @@ -1624,7 +1623,7 @@ List<GoodsDetailVO> listExtra = new ArrayList<GoodsDetailVO>(); GoodsMoneyConfigParamsDTO paramsDTO = getParamsDTO(acceptData.getPlatform(), acceptData.getVersion(), null, acceptData.getSystem()); - listExtra = goodsLijinMnager.loadTBMoneyInfo(acceptData.getSystem(), uid, goodsList, paramsDTO); + listExtra = goodsLijinMnager.loadTBMoneyInfo(acceptData.getSystem(), uid, goodsList, paramsDTO,false); List<GoodsDetailVO> listQuality = new ArrayList<GoodsDetailVO>(); // 鍙栧伓鏁颁釜鏁版嵁 @@ -1689,7 +1688,7 @@ } } - GoodsJumpLinkVO vo = new GoodsJumpLinkVO(); + GoodsJumpLinkVO vo = GoodsJumpUtil.getJDJumpInfo(jumpLink); vo.set_native(true); vo.setJumpLink(jumpLink); vo.setNativeJumpLink(jumpLink); @@ -1730,6 +1729,11 @@ getJDLinkWithoutFanLi(acceptData, id, couponUrl, source, out); return; } + //鏈櫥褰曢鍒� + if (uid == null) { + getJDLinkWithoutFanLi(acceptData, id, couponUrl, source, out); + return; + } if (uid == null || uid <= 0) { out.print(JsonUtil.loadFalseResult(1, "鐢ㄦ埛ID涓嶈兘涓虹┖")); @@ -1740,6 +1744,11 @@ UserInfo user = userInfoService.getUserByIdWithMybatis(uid); if (user != null && user.getState() != UserInfo.STATE_NORMAL) { 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; } @@ -1773,23 +1782,11 @@ } } - - GoodsJumpLinkVO vo = new GoodsJumpLinkVO(); - vo.set_native(true); - vo.setJumpLink(jumpLink); - vo.setNativeJumpLink(jumpLink); - try { - String wxPage = "pages/union/proxy/proxy?spreadUrl=" + URLEncoder.encode(jumpLink, "UTF-8"); - WXXCXJumpInfoVO wxxcxJumpInfoVO = new WXXCXJumpInfoVO(); - wxxcxJumpInfoVO.setUserName("gh_45b306365c3d"); - wxxcxJumpInfoVO.setPath(wxPage); - vo.setWxxcxJumpInfo(wxxcxJumpInfoVO); - } catch (UnsupportedEncodingException e) { - e.printStackTrace(); - } + GoodsJumpLinkVO vo = GoodsJumpUtil.getJDJumpInfo(jumpLink); JSONObject data = JSONObject.fromObject(new Gson().toJson(vo)); data.put("native", vo.is_native()); - data.put("userLevel", userLijinMnager.getUserLevelInfo(uid, acceptData.getSystem())); + if (uid != null) + data.put("userLevel", userLijinMnager.getUserLevelInfo(uid, acceptData.getSystem())); out.print(JsonUtil.loadTrueResult(data)); // 鑾峰緱閲戝竵 @@ -1844,15 +1841,26 @@ pid = pidManager.getPidCache(acceptData.getSystem(), Constant.SOURCE_TYPE_PDD, SystemPIDInfo.PidType.coupon); uid = null; } else { - if (uid == null || uid <= 0) { - out.print(JsonUtil.loadFalseResult(1, "鐢ㄦ埛ID涓嶈兘涓虹┖")); - return; - } - UserInfo user = userInfoService.getUserByIdWithMybatis(uid); - if (user != null && user.getState() != UserInfo.STATE_NORMAL) { - out.print(JsonUtil.loadFalseResult(Constant.CODE_FORBIDDEN_USER, Constant.FORBIDDEN_USER_REASON_DESC)); - return; + if (uid == null) { + pid = pidManager.getPidCache(acceptData.getSystem(), Constant.SOURCE_TYPE_PDD, SystemPIDInfo.PidType.coupon); + uid = null; + } else { + if (uid == null || uid <= 0) { + out.print(JsonUtil.loadFalseResult(1, "鐢ㄦ埛ID涓嶈兘涓虹┖")); + return; + } + + UserInfo user = userInfoService.getUserByIdWithMybatis(uid); + if (user != null && user.getState() != UserInfo.STATE_NORMAL) { + 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; + } } } @@ -1864,7 +1872,7 @@ return; } - String customParams = pddAuthService.getFanliCustomParams(uid); + String customParams = uid == null ? Constant.PDD_SEARCH_CUSTOMER_PARAMS : pddAuthService.getFanliCustomParams(uid); boolean auth = PinDuoDuoApiUtil.isAuth(pid, customParams); JSONObject data = new JSONObject(); PDDConvertLinkResultVO convertUrl = null; @@ -1875,19 +1883,11 @@ LogHelper.test(String.format("鎷煎澶氳浆閾�:uid:%s data:%s", uid + "", data.toString())); } - GoodsJumpLinkVO vo = new GoodsJumpLinkVO(); - vo.set_native(true); - vo.setNativeJumpLink(PinDuoDuoUtil.getAndroidNativeURI(convertUrl.getUrl())); - vo.setJumpLink(convertUrl.getUrl()); - if (convertUrl.getWe_app_info() != null) { - WXXCXJumpInfoVO wxxcxJumpInfoVO = new WXXCXJumpInfoVO(); - wxxcxJumpInfoVO.setPath(convertUrl.getWe_app_info().getPage_path()); - wxxcxJumpInfoVO.setUserName(convertUrl.getWe_app_info().getUser_name()); - vo.setWxxcxJumpInfo(wxxcxJumpInfoVO); - } + GoodsJumpLinkVO vo = GoodsJumpUtil.getPDDJumpInfo(convertUrl); data = JSONObject.fromObject(new Gson().toJson(vo)); data.put("native", vo.is_native()); - data.put("userLevel", userLijinMnager.getUserLevelInfo(uid, acceptData.getSystem())); + if (uid != null) + data.put("userLevel", userLijinMnager.getUserLevelInfo(uid, acceptData.getSystem())); out.print(JsonUtil.loadTrueResult(data)); // 鑾峰緱閲戝竵 @@ -1915,18 +1915,28 @@ if (!SystemInfoUtil.hasFunctions(acceptData.getSystem(), SystemFunction.fanli)) { tag = VipShopUtil.getCouponChanTag(); } else { - if (uid == null || uid <= 0) { - out.print(JsonUtil.loadFalseResult(1, "鐢ㄦ埛ID涓嶈兘涓虹┖")); - return; - } + //鍙槸棰嗗埜 + if (uid == null) { + tag = VipShopUtil.getCouponChanTag(); + } else { + if (uid == null || uid <= 0) { + out.print(JsonUtil.loadFalseResult(1, "鐢ㄦ埛ID涓嶈兘涓虹┖")); + return; + } - UserInfo user = userInfoService.getUserByIdWithMybatis(uid); - if (user != null && user.getState() != UserInfo.STATE_NORMAL) { - out.print(JsonUtil.loadFalseResult(Constant.CODE_FORBIDDEN_USER, Constant.FORBIDDEN_USER_REASON_DESC)); - return; - } + UserInfo user = userInfoService.getUserByIdWithMybatis(uid); + if (user != null && user.getState() != UserInfo.STATE_NORMAL) { + out.print(JsonUtil.loadFalseResult(Constant.CODE_FORBIDDEN_USER, Constant.FORBIDDEN_USER_REASON_DESC)); + return; + } - tag = VipShopUtil.getBuyChanTag(uid); + if (userFunctionsLimitService.isLimit(uid, SystemFunction.fanli, new Date())) { + out.print(JsonUtil.loadFalseResult(1, "璇ュ姛鑳介檺鍒朵娇鐢�")); + return; + } + + tag = VipShopUtil.getBuyChanTag(uid); + } } VIPGoodsInfo goods = VipShopApiUtil.getGoodsDetail(id + ""); @@ -1936,21 +1946,12 @@ } VIPConvertResultDTO convertUrl = VipShopApiUtil.convertLink(id + "", tag); - - GoodsJumpLinkVO vo = new GoodsJumpLinkVO(); - vo.set_native(true); - vo.setJumpLink(convertUrl.getUrl()); - vo.setNativeJumpLink(convertUrl.getDeeplinkUrl()); - if (!StringUtil.isNullOrEmpty(convertUrl.getVipWxUrl())) { - WXXCXJumpInfoVO wxxcxJumpInfoVO = new WXXCXJumpInfoVO(); - wxxcxJumpInfoVO.setUserName("gh_8ed2afad9972"); - wxxcxJumpInfoVO.setPath(convertUrl.getVipWxUrl()); - vo.setWxxcxJumpInfo(wxxcxJumpInfoVO); - } + GoodsJumpLinkVO vo = GoodsJumpUtil.getVIPShopJumpInfo(convertUrl); JSONObject data = JSONObject.fromObject(new Gson().toJson(vo)); data.put("native", vo.is_native()); - data.put("userLevel", userLijinMnager.getUserLevelInfo(uid, acceptData.getSystem())); + if (uid != null) + data.put("userLevel", userLijinMnager.getUserLevelInfo(uid, acceptData.getSystem())); out.print(JsonUtil.loadTrueResult(data)); // 鑾峰緱閲戝竵 integralGetService.addCouponRebate(uid); @@ -1968,14 +1969,24 @@ pid = pidManager.getPidCache(acceptData.getSystem(), Constant.SOURCE_TYPE_SUNING, SystemPIDInfo.PidType.coupon); uid = null; } else { - if (uid == null || uid <= 0) { - out.print(JsonUtil.loadFalseResult(1, "鐢ㄦ埛ID涓嶈兘涓虹┖")); - return; - } - UserInfo user = userInfoService.getUserByIdWithMybatis(uid); - if (user != null && user.getState() != UserInfo.STATE_NORMAL) { - out.print(JsonUtil.loadFalseResult(Constant.CODE_FORBIDDEN_USER, Constant.FORBIDDEN_USER_REASON_DESC)); - return; + if (uid == null) { + pid = pidManager.getPidCache(acceptData.getSystem(), Constant.SOURCE_TYPE_SUNING, SystemPIDInfo.PidType.coupon); + uid = null; + } else { + if (uid == null || uid <= 0) { + out.print(JsonUtil.loadFalseResult(1, "鐢ㄦ埛ID涓嶈兘涓虹┖")); + return; + } + UserInfo user = userInfoService.getUserByIdWithMybatis(uid); + if (user != null && user.getState() != UserInfo.STATE_NORMAL) { + 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; + } } } @@ -1996,27 +2007,12 @@ SuningConvertLinkResult link = SuningApiUtil.convertLinkNew(goodsCode, supplierCode, pid, uid + ""); - GoodsJumpLinkVO vo = new GoodsJumpLinkVO(); - vo.set_native(false); - try { - vo.setJumpLink(URLDecoder.decode(link.getWapExtendUrl(), "UTF-8")); - } catch (UnsupportedEncodingException e) { - e.printStackTrace(); - } - if (!StringUtil.isNullOrEmpty(link.getSpPageUrl())) { - WXXCXJumpInfoVO wxxcxJumpInfoVO = new WXXCXJumpInfoVO(); - wxxcxJumpInfoVO.setUserName("gh_1d1e15e90afc"); - try { - wxxcxJumpInfoVO.setPath(URLDecoder.decode(link.getSpPageUrl(), "UTF-8")); - } catch (UnsupportedEncodingException e) { - e.printStackTrace(); - } - vo.setWxxcxJumpInfo(wxxcxJumpInfoVO); - } + GoodsJumpLinkVO vo = GoodsJumpUtil.getSuningJumpInfo(link); JSONObject data = JSONObject.fromObject(new Gson().toJson(vo)); data.put("native", vo.is_native()); - data.put("userLevel", userLijinMnager.getUserLevelInfo(uid, acceptData.getSystem())); + if (uid != null) + data.put("userLevel", userLijinMnager.getUserLevelInfo(uid, acceptData.getSystem())); out.print(JsonUtil.loadTrueResult(data)); @@ -2205,24 +2201,44 @@ link = JDApiUtil.convertLinkWithSubUnionId(link, null, null, pidManager.getPidCache(acceptData.getSystem(), Constant.SOURCE_TYPE_JD, SystemPIDInfo.PidType.fanli), uid + ""); - GoodsJumpLinkVO vo = new GoodsJumpLinkVO(); - vo.set_native(true); - vo.setJumpLink(link); - vo.setNativeJumpLink(link); - try { - String wxPage = "pages/union/proxy/proxy?spreadUrl=" + URLEncoder.encode(link, "UTF-8"); - WXXCXJumpInfoVO wxxcxJumpInfoVO = new WXXCXJumpInfoVO(); - wxxcxJumpInfoVO.setUserName("gh_45b306365c3d"); - wxxcxJumpInfoVO.setPath(wxPage); - vo.setWxxcxJumpInfo(wxxcxJumpInfoVO); - } catch (UnsupportedEncodingException e) { - e.printStackTrace(); - } - - + GoodsJumpLinkVO vo = GoodsJumpUtil.getJDJumpInfo(link); JSONObject data = JSONObject.fromObject(new Gson().toJson(vo)); data.put("native", vo.is_native()); JsonUtil.printMode(out, callback, JsonUtil.loadTrueResult(data)); } + @RequestMapping(value = "convertPDDLink") + public void convertPDDLink(AcceptData acceptData, String resourceType, String channelType, Long uid, PrintWriter out) { + if (StringUtil.isNullOrEmpty(resourceType)&&StringUtil.isNullOrEmpty(channelType)) { + out.print(JsonUtil.loadFalseResult(1, "resourceType|channelType涓虹┖")); + return; + } + String customParams = null; + if (uid != null) + customParams = pddAuthService.getFanliCustomParams(uid); + String pid = pidManager.getPidCache(acceptData.getSystem(), Constant.SOURCE_TYPE_PDD, SystemPIDInfo.PidType.fanli); + PDDConvertLinkResultVO pddConvertLinkResultVO = null; + if (!StringUtil.isNullOrEmpty(resourceType)) { + pddConvertLinkResultVO = PinDuoDuoApiUtil.convertActivity(resourceType, null, pid, customParams); + } else if (!StringUtil.isNullOrEmpty(channelType)) { + pddConvertLinkResultVO = PinDuoDuoApiUtil.convertChannel(channelType, pid, customParams); + } + + + GoodsJumpLinkVO vo = GoodsJumpUtil.getPDDJumpInfo(pddConvertLinkResultVO); + JSONObject data = JSONObject.fromObject(new Gson().toJson(vo)); + data.put("native", vo.is_native()); + out.print(JsonUtil.loadTrueResult(data)); + } + + @RequestMapping(value = "getTaoBaoGoodsDetailImgs") + public void getTaoBaoGoodsDetailImgs(AcceptData acceptData, Long id, PrintWriter out) { + TaoBaoGoodsImportantInfo info = DaTaoKeApiUtil.getGoodsImportantInfo(id); + if (info == null || info.getDetailImages() == null) { + out.print(JsonUtil.loadFalseResult("")); + return; + } + out.print(JsonUtil.loadTrueResult(new Gson().toJson(info.getDetailImages()))); + } + } -- Gitblit v1.8.0