From ecf9f0669734d4397aa1277f9a22f515aa410062 Mon Sep 17 00:00:00 2001 From: yujian <yujian@123.com> Date: 星期四, 20 六月 2019 17:04:11 +0800 Subject: [PATCH] 冲突文件 --- fanli/src/main/java/com/yeshi/fanli/service/impl/goods/ShareGoodsServiceImpl.java | 142 +++++++++++++++++++++++++++++++++++++++++++++++ 1 files changed, 142 insertions(+), 0 deletions(-) diff --git a/fanli/src/main/java/com/yeshi/fanli/service/impl/goods/ShareGoodsServiceImpl.java b/fanli/src/main/java/com/yeshi/fanli/service/impl/goods/ShareGoodsServiceImpl.java index 5796e36..668d961 100644 --- a/fanli/src/main/java/com/yeshi/fanli/service/impl/goods/ShareGoodsServiceImpl.java +++ b/fanli/src/main/java/com/yeshi/fanli/service/impl/goods/ShareGoodsServiceImpl.java @@ -24,7 +24,9 @@ import com.yeshi.fanli.dao.mybatis.UserShareGoodsHistoryMapper; import com.yeshi.fanli.dao.mybatis.share.PidUserMapper; import com.yeshi.fanli.entity.bus.share.UserShareGoodsHistory; +import com.yeshi.fanli.entity.bus.tlj.UserTaoLiJinRecord; import com.yeshi.fanli.entity.bus.user.UserInfo; +import com.yeshi.fanli.entity.bus.user.UserMoneyExtra; import com.yeshi.fanli.entity.taobao.PidUser; import com.yeshi.fanli.entity.taobao.TBPid; import com.yeshi.fanli.entity.taobao.TaoBaoGoodsBrief; @@ -33,14 +35,18 @@ import com.yeshi.fanli.entity.taobao.TaoKeAppInfo; import com.yeshi.fanli.exception.ShareGoodsException; import com.yeshi.fanli.exception.taobao.TaobaoGoodsDownException; +import com.yeshi.fanli.exception.tlj.UserTaoLiJinRecordException; import com.yeshi.fanli.log.LogHelper; import com.yeshi.fanli.service.inter.config.ConfigService; import com.yeshi.fanli.service.inter.goods.CommonGoodsService; import com.yeshi.fanli.service.inter.goods.ShareGoodsService; import com.yeshi.fanli.service.inter.hongbao.HongBaoManageService; import com.yeshi.fanli.service.inter.taobao.TaoBaoUnionConfigService; +import com.yeshi.fanli.service.inter.tlj.GoodsTaoLiJinRateService; +import com.yeshi.fanli.service.inter.tlj.UserTaoLiJinRecordService; import com.yeshi.fanli.service.inter.user.TBPidService; import com.yeshi.fanli.service.inter.user.UserAccountService; +import com.yeshi.fanli.service.inter.user.UserMoneyExtraService; import com.yeshi.fanli.service.inter.user.UserShareGoodsRecordService; import com.yeshi.fanli.util.AESUtil; import com.yeshi.fanli.util.Constant; @@ -91,6 +97,16 @@ @Resource private CommonGoodsService commonGoodsService; + @Resource + private UserMoneyExtraService userMoneyExtraService; + + @Resource + private GoodsTaoLiJinRateService goodsTaoLiJinRateService; + + @Resource + private UserTaoLiJinRecordService userTaoLiJinRecordService; + + @Override public void addShareGoodsHistory(UserShareGoodsHistory history) { UserShareGoodsHistory userShareGoodsHistory = userShareGoodsHistoryMapper @@ -548,6 +564,7 @@ return taoBaoLink; } + @Override public UserShareGoodsHistory getShareGoodsHistory(Long uid, Long auctionId) { return userShareGoodsHistoryMapper.selectByUidAndAuctionId(uid, auctionId); @@ -643,4 +660,129 @@ return tbLink; } + + @Override + public TaoBaoLink getTaoLiJinLinkForBuy(Long uid, String specialId, Long auctionId) throws ShareGoodsException { + if (uid == null || uid <= 0) { + throw new ShareGoodsException(1, "鐢ㄦ埛ID涓嶈兘涓虹┖"); + } + + if (auctionId == null || auctionId <= 0) { + throw new ShareGoodsException(2, "鍟嗗搧ID涓嶈兘涓虹┖"); + } + + // 鐢ㄦ埛鍓╀綑鍙互娣樼ぜ閲戦獙璇� + UserMoneyExtra userMoneyExtra = userMoneyExtraService.selectByPrimaryKey(uid); + if (userMoneyExtra == null || userMoneyExtra.getTlj() == null) { + throw new ShareGoodsException(101, "绾㈠寘浣欓涓嶈冻"); + } + + + TaoKeAppInfo app = new TaoKeAppInfo(); + app.setAppKey(TaoBaoConstant.TAOBAO_AUTH_APPKEY); + app.setAppSecret(TaoBaoConstant.TAOBAO_AUTH_APPSECRET); + app.setPid(TaoBaoConstant.TAOBAO_SPECIAL_PID_DEFAULT); + TaoBaoGoodsBrief goods = TaoKeApiUtil.specialConvertCoupon(auctionId, app); + if (goods == null) { + throw new ShareGoodsException(1, ""); + } + + String taoLiJinLink = null; + try { + UserTaoLiJinRecord createUserTaoLiJin = userTaoLiJinRecordService.createSelfBuyTaoLiJin(uid, 1, goods); + taoLiJinLink = createUserTaoLiJin.getSendUrl(); + } catch (UserTaoLiJinRecordException e) { + throw new ShareGoodsException(e.getCode(), e.getMsg()); + } + + + TaoBaoLink taoBaoLink = new TaoBaoLink(); + taoBaoLink.setAuctionId(auctionId); + taoBaoLink.setClickUrl(goods.getAuctionUrl()); + taoBaoLink.setCouponLink(taoLiJinLink); + taoBaoLink.setGoods(goods); + + return taoBaoLink; + } + + + @Override + public TaoBaoLink getTaoLiJinLinkForShare(Long uid, Long auctionId, String relationId) throws ShareGoodsException { + + if (uid == null || uid <= 0) { + throw new ShareGoodsException(1, "鐢ㄦ埛ID涓嶈兘涓虹┖"); + } + + if (auctionId == null || auctionId <= 0) { + throw new ShareGoodsException(2, "鍟嗗搧ID涓嶈兘涓虹┖"); + } + + TaoKeAppInfo info = new TaoKeAppInfo(); + + if (!StringUtil.isNullOrEmpty(relationId)) { + String pid = TaoBaoConstant.TAOBAO_RELATION_PID_DEFAULT; + String appId = pid.split("_")[2]; + String adzoneId = pid.split("_")[3]; + TaoBaoUnionConfig taoBaoUnionConfig = taoBaoUnionConfigService.getConfigByAppIdCache(appId); + info.setAdzoneId(adzoneId); + info.setAppKey(taoBaoUnionConfig.getAppKey()); + info.setAppSecret(taoBaoUnionConfig.getAppSecret()); + info.setPid(pid); + } else { + TBPid tbPid = tbPidService.getTBPid(uid, PidUser.TYPE_SHARE_GOODS); + if (tbPid == null) { + throw new ShareGoodsException(3, "鑾峰彇鎺ㄥ箍浣嶅け璐�"); + } + String appId = tbPid.getPid().split("_")[2]; + TaoBaoUnionConfig taoBaoUnionConfig = taoBaoUnionConfigService.getConfigByAppIdCache(appId); + String adzoneId = tbPid.getPid().split("_")[3]; + info.setAdzoneId(adzoneId); + info.setAppKey(taoBaoUnionConfig.getAppKey()); + info.setAppSecret(taoBaoUnionConfig.getAppSecret()); + info.setPid(tbPid.getPid()); + } + TaoBaoGoodsBrief goods = null; + try { + goods = TaoKeApiUtil.searchGoodsDetail(auctionId, info); + } catch (TaobaoGoodsDownException e) { + throw new ShareGoodsException(4, "鍟嗗搧宸蹭笅鏋�"); + } finally { + } + if (goods == null) { + throw new ShareGoodsException(5, "鑾峰彇鍟嗗搧璇︽儏澶辫触"); + } + + if (StringUtil.isNullOrEmpty(goods.getCouponLink()) && !goods.getAuctionUrl().contains("s.click.taobao.com")) { + TaoBaoUnionConfig taoBaoUnionConfig = taoBaoUnionConfigService + .getConfigByAppIdCache(info.getPid().split("_")[2]); + TaoBaoGoodsBrief taoBaoLink = TaoKeApiUtil.specialConvertCoupon(auctionId, info); + if (taoBaoLink == null) { + throw new ShareGoodsException(201, "鍟嗗搧杞摼澶辫触"); + } + goods.setCouponLink(taoBaoLink.getCouponLink()); + goods.setAuctionUrl(taoBaoLink.getAuctionUrl()); + } + + if (!StringUtil.isNullOrEmpty(relationId)) { + if (!StringUtil.isNullOrEmpty(goods.getAuctionUrl())) + goods.setAuctionUrl(goods.getAuctionUrl() + "&relationId=" + relationId); + if (!StringUtil.isNullOrEmpty(goods.getCouponLink())) + goods.setCouponLink(goods.getCouponLink() + "&relationId=" + relationId); + } + + // 淇濆瓨鍟嗗搧璇︽儏 + + // 鍒涘缓娣樺彛浠� + TaoBaoLink tbLink = new TaoBaoLink(); + tbLink.setAuctionId(goods.getAuctionId()); + tbLink.setClickUrl(goods.getAuctionUrl()); + tbLink.setCouponLink(goods.getCouponLink()); + tbLink.setGoods(goods); + + // 瀛樺偍鍒嗕韩鍟嗗搧鐨勪俊鎭紝鐢ㄤ簬鍔犲揩鍒嗕韩缃戦〉鎺ュ彛璇锋眰閫熷害 + if (Constant.IS_OUTNET) + redisManager.saveTaoBaoGoodsBriefTemp(goods); + + return tbLink; + } } -- Gitblit v1.8.0