From 98b1a0affd69bbe63223c21fdd2c404e8bedfccb Mon Sep 17 00:00:00 2001
From: admin <weikou2014>
Date: 星期三, 20 五月 2020 17:25:08 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/div' into 2.1.2

---
 fanli/src/main/java/com/yeshi/fanli/service/impl/user/integral/IntegralGetServiceImpl.java |  151 ++++++++++++++++++++++++++++++++++----------------
 1 files changed, 102 insertions(+), 49 deletions(-)

diff --git a/fanli/src/main/java/com/yeshi/fanli/service/impl/user/integral/IntegralGetServiceImpl.java b/fanli/src/main/java/com/yeshi/fanli/service/impl/user/integral/IntegralGetServiceImpl.java
index c776427..840a024 100644
--- a/fanli/src/main/java/com/yeshi/fanli/service/impl/user/integral/IntegralGetServiceImpl.java
+++ b/fanli/src/main/java/com/yeshi/fanli/service/impl/user/integral/IntegralGetServiceImpl.java
@@ -7,6 +7,7 @@
 import org.springframework.context.annotation.Lazy;
 import org.springframework.scheduling.annotation.Async;
 import org.springframework.stereotype.Service;
+import org.springframework.transaction.annotation.Transactional;
 
 import com.yeshi.fanli.dao.mybatis.ThreeSaleMapper;
 import com.yeshi.fanli.entity.bus.user.UserInfo;
@@ -17,17 +18,20 @@
 import com.yeshi.fanli.entity.integral.IntegralTask.TaskUniqueKeyEnum;
 import com.yeshi.fanli.entity.integral.IntegralTaskRank;
 import com.yeshi.fanli.entity.integral.IntegralTaskRecord;
+import com.yeshi.fanli.entity.integral.UserGetIntegralFromOrderRecord;
 import com.yeshi.fanli.exception.integral.IntegralGetException;
 import com.yeshi.fanli.exception.integral.IntegralTaskRecordException;
-import com.yeshi.fanli.log.LogHelper;
 import com.yeshi.fanli.service.inter.user.UserInfoExtraService;
 import com.yeshi.fanli.service.inter.user.integral.IntegralGetService;
 import com.yeshi.fanli.service.inter.user.integral.IntegralTaskRankService;
 import com.yeshi.fanli.service.inter.user.integral.IntegralTaskRecordService;
 import com.yeshi.fanli.service.inter.user.integral.IntegralTaskService;
+import com.yeshi.fanli.service.inter.user.integral.UserGetIntegralFromOrderRecordService;
 import com.yeshi.fanli.util.RedisManager;
+import com.yeshi.fanli.util.annotation.RequestSerializableByKeyService;
 import com.yeshi.fanli.util.annotation.integral.IntegralGetFrequencyLimit;
 import com.yeshi.fanli.util.annotation.integral.IntegralGetVersionLimit;
+import com.yeshi.fanli.util.factory.integral.UserGetIntegralFromOrderRecordFactory;
 
 @Lazy
 @Service
@@ -51,12 +55,15 @@
 	@Resource
 	private IntegralTaskRankService integralTaskRankService;
 
-	// TODO 鏈塨ug
+	@Resource
+	private UserGetIntegralFromOrderRecordService userGetIntegralFromOrderRecordService;
+
 	private UserInfo getBossByUid(Long uid) {
 		return threeSaleMapper.selectBoss(uid);
 	}
 
 	@IntegralGetVersionLimit(uid = "#uid")
+	@RequestSerializableByKeyService(key = "#uid + '-' + #event")
 	@Override
 	public IntegralTaskRecord addEventStatistic(Long uid, String event) throws IntegralGetException {
 		Date nowDate = new Date();
@@ -64,11 +71,11 @@
 		if (task == null)
 			throw new IntegralGetException(1, "浜嬩欢绫诲瀷涓嶅瓨鍦�");
 
-		if (TaskUniqueKeyEnum.inShop == TaskUniqueKeyEnum.valueOf(event)) {
-			UserInfo boss = getBossByUid(uid);
-			if (boss != null)
-				addInShopLevelOne(boss.getId()); // 涓嬬骇娴忚搴楅摵
-		}
+//		if (TaskUniqueKeyEnum.inShop == TaskUniqueKeyEnum.valueOf(event)) {
+//			UserInfo boss = getBossByUid(uid);
+//			if (boss != null)
+//				addInShopLevelOne(boss.getId()); // 涓嬬骇娴忚搴楅摵
+//		}
 
 		if (task.getFrequency() == FrequencyEnum.everyday) {
 			int count = integralTaskRecordService.countGetCountByTaskIdAndDay(task.getId(), uid, nowDate);
@@ -142,7 +149,7 @@
 
 		return null;
 	}
-	
+
 	@IntegralGetFrequencyLimit(key = "'addShareInvite-'+#uid", time = 30)
 	@Override
 	public IntegralTaskRecord addShareInvite(Long uid) {
@@ -175,7 +182,7 @@
 
 			addEventStatistic(uid, TaskUniqueKeyEnum.inShopLevelOne.name());
 		} catch (Exception e) {
-			LogHelper.errorDetailInfo(e);
+			// LogHelper.errorDetailInfo(e);
 		}
 	}
 
@@ -185,7 +192,7 @@
 		try {
 			addEventStatistic(uid, TaskUniqueKeyEnum.inShopLevelTwo.name());
 		} catch (Exception e) {
-			LogHelper.errorDetailInfo(e);
+			// LogHelper.errorDetailInfo(e);
 		}
 	}
 
@@ -253,11 +260,12 @@
 		try {
 			addEventStatistic(uid, TaskUniqueKeyEnum.taoLiJinBuy.name());
 		} catch (Exception e) {
-			LogHelper.errorDetailInfo(e);
+			// LogHelper.errorDetailInfo(e);
 		}
 	}
 
 	@IntegralGetVersionLimit(uid = "#uid")
+	@RequestSerializableByKeyService(key = "#uid")
 	@Async()
 	@Override
 	public void addInviteLevelOne(Long uid, Long workerId) {
@@ -268,7 +276,7 @@
 
 			addEventStatistic(uid, TaskUniqueKeyEnum.inviteLevelOne.name());
 		} catch (Exception e) {
-			LogHelper.errorDetailInfo(e);
+			 //LogHelper.errorDetailInfo(e);
 		}
 	}
 
@@ -278,12 +286,13 @@
 	 * @param uid
 	 */
 	@IntegralGetVersionLimit(uid = "#uid")
+	@RequestSerializableByKeyService(key = "#uid")
 	@Async()
 	private void addInviteLevelTwo(Long uid) {
 		try {
 			addEventStatistic(uid, TaskUniqueKeyEnum.inviteLevelTwo.name());
 		} catch (Exception e) {
-			LogHelper.errorDetailInfo(e);
+			 //LogHelper.errorDetailInfo(e);
 		}
 	}
 
@@ -295,7 +304,7 @@
 		try {
 			addEventStatistic(uid, TaskUniqueKeyEnum.shareSingleGoods.name());
 		} catch (Exception e) {
-			LogHelper.errorDetailInfo(e);
+			// LogHelper.errorDetailInfo(e);
 		}
 	}
 
@@ -307,7 +316,7 @@
 		try {
 			addEventStatistic(uid, TaskUniqueKeyEnum.shareMultipleGoods.name());
 		} catch (Exception e) {
-			LogHelper.errorDetailInfo(e);
+			// LogHelper.errorDetailInfo(e);
 		}
 	}
 
@@ -319,40 +328,43 @@
 		try {
 			addEventStatistic(uid, TaskUniqueKeyEnum.shareTLJGoods.name());
 		} catch (Exception e) {
-			LogHelper.errorDetailInfo(e);
+			// LogHelper.errorDetailInfo(e);
 		}
 	}
 
 	@IntegralGetVersionLimit(uid = "#uid")
+	@RequestSerializableByKeyService(key = "#uid")
 	@Async()
 	@Override
 	public void addGiveRebateCoupon(Long uid) {
 		try {
 			addEventStatistic(uid, TaskUniqueKeyEnum.giveRebateCoupon.name());
 		} catch (Exception e) {
-			LogHelper.errorDetailInfo(e);
+			// LogHelper.errorDetailInfo(e);
 		}
 	}
 
 	@IntegralGetVersionLimit(uid = "#uid")
+	@RequestSerializableByKeyService(key = "#uid")
 	@Async()
 	@Override
 	public void addGiveFreeCoupon(Long uid) {
 		try {
 			addEventStatistic(uid, TaskUniqueKeyEnum.giveFreeCoupon.name());
 		} catch (Exception e) {
-			LogHelper.errorDetailInfo(e);
+			// LogHelper.errorDetailInfo(e);
 		}
 	}
 
 	@IntegralGetVersionLimit(uid = "#uid")
+	@RequestSerializableByKeyService(key = "#uid")
 	@Async()
 	@Override
 	public void addGiveTaoLiJin(Long uid) {
 		try {
 			addEventStatistic(uid, TaskUniqueKeyEnum.giveTaoLiJin.name());
 		} catch (Exception e) {
-			LogHelper.errorDetailInfo(e);
+			// LogHelper.errorDetailInfo(e);
 		}
 	}
 
@@ -364,7 +376,7 @@
 		try {
 			addEventStatistic(uid, TaskUniqueKeyEnum.closeRecommendGoods.name());
 		} catch (Exception e) {
-			LogHelper.errorDetailInfo(e);
+			// LogHelper.errorDetailInfo(e);
 		}
 	}
 
@@ -374,13 +386,13 @@
 	@Override
 	public void addCouponRebate(Long uid) {
 		try {
-			UserInfo boss = getBossByUid(uid);
-			if (boss != null)
-				addCouponRebateLevelOne(boss.getId());
+//			UserInfo boss = getBossByUid(uid);
+//			if (boss != null)
+//				addCouponRebateLevelOne(boss.getId());
 
 			addEventStatistic(uid, TaskUniqueKeyEnum.couponRebate.name());
 		} catch (Exception e) {
-			LogHelper.errorDetailInfo(e);
+			// LogHelper.errorDetailInfo(e);
 		}
 	}
 
@@ -390,6 +402,7 @@
 	 * @param uid
 	 */
 	@IntegralGetVersionLimit(uid = "#uid")
+	@RequestSerializableByKeyService(key = "#uid")
 	@Async()
 	private void addCouponRebateLevelOne(Long uid) {
 		try {
@@ -399,7 +412,7 @@
 
 			addEventStatistic(uid, TaskUniqueKeyEnum.couponRebateLevelOne.name());
 		} catch (Exception e) {
-			LogHelper.errorDetailInfo(e);
+			// LogHelper.errorDetailInfo(e);
 		}
 	}
 
@@ -409,23 +422,31 @@
 	 * @param uid
 	 */
 	@IntegralGetVersionLimit(uid = "#uid")
+	@RequestSerializableByKeyService(key = "#uid")
 	@Async()
 	private void addCouponRebateLevelTwo(Long uid) {
 		try {
 			addEventStatistic(uid, TaskUniqueKeyEnum.couponRebateLevelTwo.name());
 		} catch (Exception e) {
-			LogHelper.errorDetailInfo(e);
+			// LogHelper.errorDetailInfo(e);
 		}
 	}
 
 	@IntegralGetVersionLimit(uid = "#uid")
+	@RequestSerializableByKeyService(key = "#uid")
 	@Async()
+	@Transactional
 	@Override
-	public void addRebateOrder(Long uid) {
+	public void addRebateOrder(Long uid, String orderNo, int sourceType) {
 		try {
-			addEventStatistic(uid, TaskUniqueKeyEnum.rebateOrder.name());
+			IntegralTaskRecord record = addEventStatistic(uid, TaskUniqueKeyEnum.rebateOrder.name());
+			if (record != null) {
+				userGetIntegralFromOrderRecordService.addRecord(
+						UserGetIntegralFromOrderRecordFactory.create(UserGetIntegralFromOrderRecord.TYPE_RECIEVE_MONEY,
+								uid, orderNo, sourceType, record.getGoldCoin()));
+			}
 		} catch (Exception e) {
-			LogHelper.errorDetailInfo(e);
+			// LogHelper.errorDetailInfo(e);
 		}
 	}
 
@@ -434,14 +455,22 @@
 	 * 
 	 * @param uid
 	 */
-	@IntegralGetVersionLimit(uid = "#uid")
+	//@IntegralGetVersionLimit(uid = "#uid")
+	//@RequestSerializableByKeyService(key = "#uid")
 	@Async()
+	@Transactional
 	@Override
-	public void addInviteOrderLevelOne(Long uid) {
+	public void addInviteOrderLevelOne(Long uid, String orderNo, int sourceType) {
 		try {
-			addEventStatistic(uid, TaskUniqueKeyEnum.inviteOrderLevelOne.name());
+//			IntegralTaskRecord record = addEventStatistic(uid, TaskUniqueKeyEnum.inviteOrderLevelOne.name());
+//			if (record != null) {
+//				userGetIntegralFromOrderRecordService.addRecord(
+//						UserGetIntegralFromOrderRecordFactory.create(UserGetIntegralFromOrderRecord.TYPE_RECIEVE_MONEY,
+//								uid, orderNo, sourceType, record.getGoldCoin()));
+//			}
+
 		} catch (Exception e) {
-			LogHelper.errorDetailInfo(e);
+			// LogHelper.errorDetailInfo(e);
 		}
 	}
 
@@ -450,124 +479,148 @@
 	 * 
 	 * @param uid
 	 */
-	@IntegralGetVersionLimit(uid = "#uid")
+	//@IntegralGetVersionLimit(uid = "#uid")
+	//@RequestSerializableByKeyService(key = "#uid")
 	@Async()
+	@Transactional
 	@Override
-	public void addInviteOrderLevelTwo(Long uid) {
+	public void addInviteOrderLevelTwo(Long uid, String orderNo, int sourceType) {
 		try {
-			addEventStatistic(uid, TaskUniqueKeyEnum.inviteOrderLevelTwo.name());
+//			IntegralTaskRecord record = addEventStatistic(uid, TaskUniqueKeyEnum.inviteOrderLevelTwo.name());
+//			if (record != null) {
+//				userGetIntegralFromOrderRecordService.addRecord(
+//						UserGetIntegralFromOrderRecordFactory.create(UserGetIntegralFromOrderRecord.TYPE_RECIEVE_MONEY,
+//								uid, orderNo, sourceType, record.getGoldCoin()));
+//			}
+
 		} catch (Exception e) {
-			LogHelper.errorDetailInfo(e);
+			// LogHelper.errorDetailInfo(e);
 		}
 	}
 
 	@IntegralGetVersionLimit(uid = "#uid")
+	@RequestSerializableByKeyService(key = "#uid")
 	@Async()
+	@Transactional
 	@Override
-	public void addShareOrder(Long uid) {
+	public void addShareOrder(Long uid, String orderNo, int sourceType) {
 		try {
-			addEventStatistic(uid, TaskUniqueKeyEnum.shareOrder.name());
+			IntegralTaskRecord record = addEventStatistic(uid, TaskUniqueKeyEnum.shareOrder.name());
+			if (record != null) {
+				userGetIntegralFromOrderRecordService.addRecord(
+						UserGetIntegralFromOrderRecordFactory.create(UserGetIntegralFromOrderRecord.TYPE_RECIEVE_MONEY,
+								uid, orderNo, sourceType, record.getGoldCoin()));
+			}
 		} catch (Exception e) {
-			LogHelper.errorDetailInfo(e);
+			// LogHelper.errorDetailInfo(e);
 		}
 	}
 
 	@IntegralGetVersionLimit(uid = "#uid")
+	@RequestSerializableByKeyService(key = "#uid")
 	@Async()
 	@Override
 	public void addBindWeiXin(Long uid) {
 		try {
 			addEventStatistic(uid, TaskUniqueKeyEnum.bindWeiXin.name());
 		} catch (Exception e) {
-			LogHelper.errorDetailInfo(e);
+			// LogHelper.errorDetailInfo(e);
 		}
 	}
 
 	@IntegralGetVersionLimit(uid = "#uid")
+	@RequestSerializableByKeyService(key = "#uid")
 	@Async()
 	@Override
 	public void addBindPhone(Long uid) {
 		try {
 			addEventStatistic(uid, TaskUniqueKeyEnum.bindPhone.name());
 		} catch (Exception e) {
-			LogHelper.errorDetailInfo(e);
+			// LogHelper.errorDetailInfo(e);
 		}
 	}
 
 	@IntegralGetVersionLimit(uid = "#uid")
+	@RequestSerializableByKeyService(key = "#uid")
 	@Async()
 	@Override
 	public void addBindTaoBao(Long uid) {
 		try {
 			addEventStatistic(uid, TaskUniqueKeyEnum.bindTaoBao.name());
 		} catch (Exception e) {
-			LogHelper.errorDetailInfo(e);
+			// LogHelper.errorDetailInfo(e);
 		}
 	}
 
 	@IntegralGetVersionLimit(uid = "#uid")
+	@RequestSerializableByKeyService(key = "#uid")
 	@Async()
 	@Override
 	public void addSetWeiXinNum(Long uid) {
 		try {
 			addEventStatistic(uid, TaskUniqueKeyEnum.setWeiXinNum.name());
 		} catch (Exception e) {
-			LogHelper.errorDetailInfo(e);
+			// LogHelper.errorDetailInfo(e);
 		}
 	}
 
 	@IntegralGetVersionLimit(uid = "#uid")
+	@RequestSerializableByKeyService(key = "#uid")
 	@Async()
 	@Override
 	public void addSetGender(Long uid) {
 		try {
 			addEventStatistic(uid, TaskUniqueKeyEnum.setGender.name());
 		} catch (Exception e) {
-			LogHelper.errorDetailInfo(e);
+			// LogHelper.errorDetailInfo(e);
 		}
 	}
 
 	@IntegralGetVersionLimit(uid = "#uid")
+	@RequestSerializableByKeyService(key = "#uid")
 	@Async()
 	@Override
 	public void addSetPortrait(Long uid) {
 		try {
 			addEventStatistic(uid, TaskUniqueKeyEnum.setPortrait.name());
 		} catch (Exception e) {
-			LogHelper.errorDetailInfo(e);
+			// LogHelper.errorDetailInfo(e);
 		}
 	}
 
 	@IntegralGetVersionLimit(uid = "#uid")
+	@RequestSerializableByKeyService(key = "#uid")
 	@Async()
 	@Override
 	public void addSetNickname(Long uid) {
 		try {
 			addEventStatistic(uid, TaskUniqueKeyEnum.setNickName.name());
 		} catch (Exception e) {
-			LogHelper.errorDetailInfo(e);
+			// LogHelper.errorDetailInfo(e);
 		}
 	}
 
 	@IntegralGetVersionLimit(uid = "#uid")
+	@RequestSerializableByKeyService(key = "#uid")
 	@Async()
 	@Override
 	public void addBindAlipay(Long uid) {
 		try {
 			addEventStatistic(uid, TaskUniqueKeyEnum.bindAlipay.name());
 		} catch (Exception e) {
-			LogHelper.errorDetailInfo(e);
+			// LogHelper.errorDetailInfo(e);
 		}
 	}
 
 	@IntegralGetVersionLimit(uid = "#uid")
+	@RequestSerializableByKeyService(key = "#uid")
 	@Async()
 	@Override
 	public void addInviteActivate(Long uid) {
 		try {
 			addEventStatistic(uid, TaskUniqueKeyEnum.inviteActivate.name());
 		} catch (Exception e) {
-			LogHelper.errorDetailInfo(e);
+			// LogHelper.errorDetailInfo(e);
 		}
 	}
 

--
Gitblit v1.8.0