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