From 8d84ca36593e33de7e0b604824c471db3587fdb4 Mon Sep 17 00:00:00 2001
From: yujian <yujian@163.com>
Date: 星期五, 17 一月 2020 16:53:46 +0800
Subject: [PATCH] Merge branch 'div' of ssh://193.112.35.168:29418/fanli-server into div

---
 fanli/src/main/java/com/yeshi/fanli/service/impl/user/TokenRecordServiceImpl.java |  139 ++++++++++++++++++++++-----------------------
 1 files changed, 68 insertions(+), 71 deletions(-)

diff --git a/fanli/src/main/java/com/yeshi/fanli/service/impl/user/TokenRecordServiceImpl.java b/fanli/src/main/java/com/yeshi/fanli/service/impl/user/TokenRecordServiceImpl.java
index e9573ec..0f6faa1 100644
--- a/fanli/src/main/java/com/yeshi/fanli/service/impl/user/TokenRecordServiceImpl.java
+++ b/fanli/src/main/java/com/yeshi/fanli/service/impl/user/TokenRecordServiceImpl.java
@@ -82,23 +82,22 @@
 
 	@Resource
 	private UserOtherMsgNotificationService userOtherMsgNotificationService;
-	
+
 	@Lazy
 	@Resource
-	private IntegralGetService  integralGetService;
-	
+	private IntegralGetService integralGetService;
+
 	@Resource
 	private SystemCouponService systemCouponService;
-	
+
 	@Resource
 	private UserInviteMsgNotificationService userInviteMsgNotificationService;
-	
+
 	@Resource
 	private RedPackGiveRecordService redPackGiveRecordService;
-	
+
 	@Resource
 	private UserMoneyMsgNotificationService userMoneyMsgNotificationService;
-	
 
 	@Override
 	public void insertSelective(TokenRecord record) {
@@ -107,29 +106,28 @@
 		tokenRecordMapper.insertSelective(record);
 	}
 
-	
 	@Override
 	public void updateByPrimaryKeySelective(TokenRecord record) {
 		tokenRecordMapper.updateByPrimaryKeySelective(record);
 	}
-	
+
 	@Override
 	public TokenRecord getNearByTypeAndIdentify(String type, String identify) {
 		return tokenRecordMapper.getNearByTypeAndIdentify(type, identify);
 	}
-	
+
 	@Override
 	public TokenRecord getByTypeAndIdentify(String type, String identify) {
 		return tokenRecordMapper.getByTypeAndIdentify(type, identify);
 	}
 
 	@Override
-	public TokenVO discernToken(String token, Long uid, AcceptData acceptData) throws TokenRecordException {
+	public TokenVO discernToken(String token, Long uid, String platform, String version) throws TokenRecordException {
 		// 瑙f瀽鍙d护
 		String parseToken = TokenUtil.parseToken(token);
-		if (StringUtil.isNullOrEmpty(parseToken)) 
+		if (StringUtil.isNullOrEmpty(parseToken))
 			throw new TokenRecordException(1, "鏈彂鐜板彛浠�");
-		
+
 		TokenRecord rokenRecord = tokenRecordMapper.getByToken(parseToken);
 		if (rokenRecord == null)
 			throw new TokenRecordException(1, "鍙d护涓嶅瓨鍦�");
@@ -137,22 +135,21 @@
 		Long uidToken = rokenRecord.getUid();
 		if (uid != null && uidToken != null && uid.longValue() == uidToken.longValue())
 			throw new TokenRecordException(1, "涓嶈兘鑷繁璧犻�佺粰鑷繁");
-		
+
 		Date now = new Date();
 		Date endTimeToken = rokenRecord.getEndTime();
 		Integer stateTtoken = rokenRecord.getState();
-		if (endTimeToken != null && endTimeToken.getTime() < now.getTime()
-				|| (stateTtoken != null && stateTtoken == 1) || StringUtil.isNullOrEmpty(rokenRecord.getIdentify())) 
+		if (endTimeToken != null && endTimeToken.getTime() < now.getTime() || (stateTtoken != null && stateTtoken == 1)
+				|| StringUtil.isNullOrEmpty(rokenRecord.getIdentify()))
 			throw new TokenRecordException(1, "鍙d护宸插け鏁�");
 
-		
 		Integer num = 0;
 		Integer type = 0;
 		String money = null;
 		boolean state = false;
 		List<String> tips = new ArrayList<String>();
 		String identify = rokenRecord.getIdentify();
-		
+
 		TokenTypeEnum tokenType = rokenRecord.getType();
 		if (tokenType == TokenTypeEnum.freeCoupon) {
 			type = 10;
@@ -160,21 +157,22 @@
 					.selectByPrimaryKey(Long.parseLong(identify));
 			if (giveRecord == null)
 				throw new TokenRecordException(1, "璧犻�佽褰曚笉瀛樺湪");
-			
+
 			Date endTime = giveRecord.getEndTime();
 			// 鐢ㄦ埛鍒镐俊鎭�
 			UserSystemCoupon userCoupon = userSystemCouponService.selectByPrimaryKey(giveRecord.getCouponId());
 			if (userCoupon == null || userCoupon.getGive() == null || !userCoupon.getGive())
 				throw new TokenRecordException(1, "鍒镐笉瀛樺湪鎴栭潪璧犻�佺姸鎬�");
-			
-			if (userCoupon.getState() == UserSystemCoupon.STATE_OVERDUE || (endTime != null && endTime.getTime() < now.getTime())) {
+
+			if (userCoupon.getState() == UserSystemCoupon.STATE_OVERDUE
+					|| (endTime != null && endTime.getTime() < now.getTime())) {
 				tips.add("鍝庡憖锛岃繖寮犲厤鍗曞埜宸插け鏁堜簡锛�");
 			} else if (userCoupon.getState() == UserSystemCoupon.STATE_END_USE) {
 				tips.add("鍝庡憖锛岃繖寮犲厤鍗曞埜宸茶棰嗗彇浜嗭紒");
 			} else if (userCoupon.getState() == UserSystemCoupon.STATE_IN_USE) {
 				if (uid == null || uid <= 0)
 					throw new TokenRecordException(1001, "娓╅Θ鎻愮ず锛孾鍏嶅崟鍒竇闇�瑕佺櫥褰曞悗棰嗗彇");
-				
+
 				state = true;
 				UserInfoExtra userInfoExtra = userInfoExtraService.getUserInfoExtra(uid);
 				if (userInfoExtra == null || StringUtil.isNullOrEmpty(userInfoExtra.getInviteCode())) {
@@ -196,14 +194,14 @@
 					.selectByPrimaryKey(Long.parseLong(identify));
 			if (giveRecord == null)
 				throw new TokenRecordException(1, "璧犻�佽褰曚笉瀛樺湪");
-			
+
 			Date endTime = giveRecord.getEndTime();
 			UserSystemCoupon userCoupon = userSystemCouponService.selectByPrimaryKey(giveRecord.getCouponId());
 			if (userCoupon == null || userCoupon.getGive() == null || !userCoupon.getGive())
 				throw new TokenRecordException(1, "鍒镐笉瀛樺湪鎴栭潪璧犻�佺姸鎬�");
-			
-			
-			if (userCoupon.getState() == UserSystemCoupon.STATE_OVERDUE|| (endTime != null && endTime.getTime() < now.getTime())) {
+
+			if (userCoupon.getState() == UserSystemCoupon.STATE_OVERDUE
+					|| (endTime != null && endTime.getTime() < now.getTime())) {
 				tips.add("鍝庡憖锛岃繖寮犺繑鍒╁鍔卞埜宸插け鏁堜簡锛�");
 			} else if (userCoupon.getState() == UserSystemCoupon.STATE_END_USE) {
 				tips.add("鍝庡憖锛岃繖寮犺繑鍒╁鍔卞埜宸茶棰嗗彇浜嗭紒");
@@ -225,20 +223,19 @@
 				throw new TokenRecordException(1, "鍙d护宸插け鏁�");
 			}
 		} else if (tokenType == TokenTypeEnum.redPack) {
-			if(!VersionUtil.greaterThan_2_0_5(acceptData.getPlatform(), acceptData.getVersion()))
+			if (!VersionUtil.greaterThan_2_0_5(platform, version))
 				throw new TokenRecordException(1, "璇峰崌绾у埌鏈�鏂扮増");
-			
-			
+
 			type = 13;
 			RedPackGiveRecord giveRecord = redPackGiveRecordService.selectByPrimaryKey(Long.parseLong(identify));
 			if (giveRecord == null)
 				throw new TokenRecordException(1, "鍙d护宸插け鏁�");
-			
+
 			Date endTime = giveRecord.getEndTime();
 			// 璧犻�侀潰棰�
 			money = giveRecord.getAmount().setScale(2).toString();
 
-			if(giveRecord.getState() == UserTaoLiJinGiveRecord.STATE_OVERDUE 
+			if (giveRecord.getState() == UserTaoLiJinGiveRecord.STATE_OVERDUE
 					|| (endTime != null && endTime.getTime() < now.getTime())) {
 				tips.add("鍝庡憖锛岃繖涓孩鍖呭凡澶辨晥浜嗭紒");
 			} else if (giveRecord.getState() == UserTaoLiJinGiveRecord.STATE_RECEIVE) {
@@ -283,7 +280,7 @@
 		if (nickName.length() > 6) {
 			nickName = nickName.substring(0, 6) + "...";
 		}
-		
+
 		TokenVO tokenVO = new TokenVO();
 		tokenVO.setAmount(num);
 		tokenVO.setMoney(money);
@@ -295,8 +292,6 @@
 		tokenVO.setType(type);
 		return tokenVO;
 	}
-	
-	
 
 	@Override
 	public String receiveToken(String token, Long uid, AcceptData acceptData) throws TokenRecordException {
@@ -309,11 +304,11 @@
 		TokenRecord rokenRecord = tokenRecordMapper.getByToken(token);
 		if (rokenRecord == null)
 			throw new TokenRecordException(1, "鍙d护宸插け鏁�");
-		
+
 		Long uidToken = rokenRecord.getUid();
 		if (uidToken != null && uid.longValue() == uidToken.longValue())
 			throw new TokenRecordException(1, "涓嶈兘鑷繁璧犻�佺粰鑷繁");
-		
+
 		Date now = new Date();
 		Date endTimeToken = rokenRecord.getEndTime();
 		if (endTimeToken != null && endTimeToken.getTime() < now.getTime())
@@ -349,11 +344,11 @@
 			if (userCoupon == null || userCoupon.getGive() == null || !userCoupon.getGive()
 					|| userCoupon.getState() != UserSystemCoupon.STATE_IN_USE)
 				throw new TokenRecordException(1, "璇ュ埜涓嶅瓨鍦ㄦ垨闈炶禒閫�");
-			
-			UserSystemCoupon userSystemCoupon= null;
+
+			UserSystemCoupon userSystemCoupon = null;
 			try {
 				userSystemCoupon = userSystemCouponService.insertUserCoupon(uid, CouponTypeEnum.freeCoupon.name(),
-						UserSystemCoupon.SOURCE_GIVE, null,true);
+						UserSystemCoupon.SOURCE_GIVE, null, true);
 			} catch (Exception e) {
 				LogHelper.errorDetailInfo(e);
 				throw new TokenRecordException(1, "棰嗗彇澶辫触");
@@ -389,7 +384,7 @@
 			userSystemCouponGiveRecordService.updateByPrimaryKeySelective(updateGiveRecord);
 
 			integralGetService.addGiveFreeCoupon(giveUid);
-			
+
 			msg = "棰嗗彇鎴愬姛[鍏嶅崟鍒竇鎴愬姛锛岃鍒癧鎴戠殑-绂忓埄涓績]涓煡鐪�";
 			// 娑堟伅 + 闃熷憳
 			executor.execute(new Runnable() {
@@ -414,10 +409,10 @@
 					msgOther.setGiveTime(sd.format(giveRecord.getGiveTime()));
 					msgOther.setReceiveTime(sd.format(new Date()));
 					userOtherMsgNotificationService.tokenGiveMsg(giveUid, beiZhu, msgOther);
-					
+
 					// 婵�娲婚個璇蜂俊鎭�
 					if (addTeam)
-					    addInviteMsg(uid, giveUid, "鍏嶅崟鍒�");
+						addInviteMsg(uid, giveUid, "鍏嶅崟鍒�");
 				}
 			});
 		} else if (tokenType == TokenTypeEnum.rebatePercentCoupon) {
@@ -439,15 +434,16 @@
 			SystemCoupon systemCoupon = userCoupon.getSystemCoupon();
 			if (systemCoupon == null)
 				throw new TokenRecordException(1, "璇ュ埜涓嶅瓨鍦�");
-			
+
 			systemCoupon = systemCouponService.selectByPrimaryKey(systemCoupon.getId());
 			if (systemCoupon == null)
 				throw new TokenRecordException(1, "璇ュ埜涓嶅瓨鍦�");
-			
-			UserSystemCoupon userSystemCoupon= null;
+
+			UserSystemCoupon userSystemCoupon = null;
 			try {
-				userSystemCoupon = userSystemCouponService.insertUserCoupon(uid, CouponTypeEnum.rebatePercentCoupon.name(),
-						UserSystemCoupon.SOURCE_GIVE, systemCoupon.getPercent(),true);
+				userSystemCoupon = userSystemCouponService.insertUserCoupon(uid,
+						CouponTypeEnum.rebatePercentCoupon.name(), UserSystemCoupon.SOURCE_GIVE,
+						systemCoupon.getPercent(), true);
 			} catch (Exception e) {
 				LogHelper.errorDetailInfo(e);
 				throw new TokenRecordException(1, "棰嗗彇澶辫触");
@@ -483,10 +479,11 @@
 			userSystemCouponGiveRecordService.updateByPrimaryKeySelective(updateGiveRecord);
 
 			integralGetService.addGiveRebateCoupon(giveUid);
-			
+
 			msg = "棰嗗彇鎴愬姛[杩斿埄濂栧姳鍒竇鎴愬姛锛岃鍒癧鎴戠殑-绂忓埄涓績]涓煡鐪�";
 			// 娑堟伅 + 闃熷憳
 			executor.execute(new Runnable() {
+
 				@Override
 				public void run() {
 					SimpleDateFormat sd = new SimpleDateFormat("yyyy.MM.dd HH:mm");
@@ -508,27 +505,28 @@
 					msgOther.setGiveTime(sd.format(giveRecord.getGiveTime()));
 					msgOther.setReceiveTime(sd.format(new Date()));
 					userOtherMsgNotificationService.tokenGiveMsg(giveUid, beiZhu, msgOther);
-					
+
 					// 婵�娲婚個璇蜂俊鎭�
 					if (addTeam)
-					    addInviteMsg(uid, giveUid, "杩斿埄濂栧姳鍒�");
+						addInviteMsg(uid, giveUid, "杩斿埄濂栧姳鍒�");
 				}
 			});
 		} else if (tokenType == TokenTypeEnum.redPack) {
-			if(!VersionUtil.greaterThan_2_0_5(acceptData.getPlatform(), acceptData.getVersion()))
+			if (!VersionUtil.greaterThan_2_0_5(acceptData.getPlatform(), acceptData.getVersion()))
 				throw new TokenRecordException(1, "璇峰崌绾у埌鏈�鏂扮増");
-			
+
 			try {
 				msg = "棰嗗彇绾㈠寘鎴愬姛锛岃鍒癧鎴戠殑-绾㈠寘]涓煡鐪�";
 				// 棰嗗彇绾㈠寘銆佹洿鏂拌褰�
-				RedPackGiveRecord giveRecord = redPackGiveRecordService.receiveFriendsGive(uid, Long.parseLong(identify));
+				RedPackGiveRecord giveRecord = redPackGiveRecordService.receiveFriendsGive(uid,
+						Long.parseLong(identify));
 				// 娑堟伅 + 闃熷憳
 				executor.execute(new Runnable() {
 					@Override
 					public void run() {
 						SimpleDateFormat sd = new SimpleDateFormat("yyyy.MM.dd HH:mm");
 						boolean addTeam = addInviteTeam(uid, giveUid, userInfoExtra);
-						
+
 						String beiZhu = "鏃�";
 						String giveBeiZhu = "鏃�";
 						if (addTeam) {
@@ -537,7 +535,7 @@
 							// 婵�娲婚個璇蜂俊鎭�
 							addInviteMsg(uid, giveUid, giveRecord.getAmount().setScale(2) + "鍏冪孩鍖�");
 						}
-						
+
 						// 棰嗗彇浜烘秷鎭�
 						String giveUserName = "鏃�";
 						UserInfo giveuser = userInfoService.selectByPKey(giveUid);
@@ -548,8 +546,9 @@
 						dto.setUserInfo("鏄电О锛�" + giveUserName + " ID锛�" + giveUid);
 						dto.setTime(sd.format(giveRecord.getGiveTime()));
 						dto.setMoney("楼" + giveRecord.getAmount().setScale(2));
-						userMoneyMsgNotificationService.redPackMsg(uid, MsgTypeMoneyTypeEnum.redPackReceiveOff, new Gson().toJson(dto), beiZhu);
-						
+						userMoneyMsgNotificationService.redPackMsg(uid, MsgTypeMoneyTypeEnum.redPackReceiveOff,
+								new Gson().toJson(dto), beiZhu);
+
 						// 璧犻�佷汉娑堟伅
 						String userName = "鏃�";
 						UserInfo user = userInfoService.selectByPKey(uid);
@@ -560,7 +559,8 @@
 						givedto.setUserInfo("鏄电О锛�" + userName + " ID锛�" + uid);
 						givedto.setTime(sd.format(new Date()));
 						givedto.setMoney("楼" + giveRecord.getAmount().setScale(2));
-						userMoneyMsgNotificationService.redPackMsg(giveUid, MsgTypeMoneyTypeEnum.redPackGiveOff, new Gson().toJson(givedto), giveBeiZhu);
+						userMoneyMsgNotificationService.redPackMsg(giveUid, MsgTypeMoneyTypeEnum.redPackGiveOff,
+								new Gson().toJson(givedto), giveBeiZhu);
 					}
 				});
 			} catch (RedPackGiveRecordException e) {
@@ -601,66 +601,63 @@
 		}
 		return invite;
 	}
-	
-	
+
 	private void addInviteMsg(Long uid, Long giveUid, String giftName) {
 		try {
 			UserInfo user = userInfoService.selectByPKey(giveUid);
 			UserInfoExtra userInfoExtra = userInfoExtraService.getUserInfoExtra(uid);
-			
+
 			String inviteCode = null;
 			if (!StringUtil.isNullOrEmpty(userInfoExtra.getInviteCodeVip())) {
 				inviteCode = userInfoExtra.getInviteCodeVip();
 			} else {
 				inviteCode = userInfoExtra.getInviteCode();
 			}
-			
+
 			MsgInviteContentDTO msgInvite = new MsgInviteContentDTO();
 			msgInvite.setTitle("閭�璇锋秷鎭�");
 			msgInvite.setState("鎴愬姛婵�娲婚個璇�");
 			msgInvite.setCode("浣犵殑閭�璇风爜锛�" + inviteCode);
-			msgInvite.setInviter("鏄电О锛�"+user.getNickName());
+			msgInvite.setInviter("鏄电О锛�" + user.getNickName());
 			msgInvite.setMode("鎴愬姛棰嗗彇閭�璇蜂汉鐨�" + giftName);
 			userInviteMsgNotificationService.receiveGift(uid, "閭�璇峰叧绯讳竴鏃︾‘绔嬫棤娉曟洿鏀� ", msgInvite);
 		} catch (Exception e) {
 			LogHelper.errorDetailInfo(e);
 		}
 	}
-	
+
 	@Override
 	public List<TokenRecord> overdueList(int count) {
 		return tokenRecordMapper.overdueList(count);
 	}
 
-	
 	@Override
 	public void overdue(List<TokenRecord> list) {
 		if (list == null || list.size() == 0)
 			return;
 		Date date = new Date();
-		for (TokenRecord tokenRecord: list) {
+		for (TokenRecord tokenRecord : list) {
 			tokenRecord.setState(1);
 			tokenRecord.setUpdateTime(date);
 			tokenRecordMapper.updateByPrimaryKeySelective(tokenRecord);
 		}
 	}
-	
-	
+
 	@Override
 	public void invalidByRedPack(Long id) {
 		if (id == null)
 			return;
-		
+
 		List<String> list = new ArrayList<String>();
 		list.add(TokenTypeEnum.redPack.name());
 		tokenRecordMapper.invalidByTypeAndIdentify(list, id.toString());
 	}
-	
+
 	@Override
 	public void invalidByCoupon(Long id) {
 		if (id == null)
 			return;
-		
+
 		List<String> list = new ArrayList<String>();
 		list.add(TokenTypeEnum.freeCoupon.name());
 		list.add(TokenTypeEnum.rebatePercentCoupon.name());

--
Gitblit v1.8.0