From d88c167fc5973a2c15ff1539e4cdab36e4a7842c Mon Sep 17 00:00:00 2001 From: yujian <yujian@123.com> Date: 星期三, 28 八月 2019 14:47:15 +0800 Subject: [PATCH] 奖励券使用区分订单下单三方日期 --- fanli/src/main/java/com/yeshi/fanli/service/impl/integral/IntegralGetServiceImpl.java | 46 ++++++++++++++++++++++++++++++++++++---------- 1 files changed, 36 insertions(+), 10 deletions(-) diff --git a/fanli/src/main/java/com/yeshi/fanli/service/impl/integral/IntegralGetServiceImpl.java b/fanli/src/main/java/com/yeshi/fanli/service/impl/integral/IntegralGetServiceImpl.java index 692abf9..e41be32 100644 --- a/fanli/src/main/java/com/yeshi/fanli/service/impl/integral/IntegralGetServiceImpl.java +++ b/fanli/src/main/java/com/yeshi/fanli/service/impl/integral/IntegralGetServiceImpl.java @@ -10,7 +10,10 @@ import com.yeshi.fanli.dao.mybatis.ThreeSaleMapper; import com.yeshi.fanli.entity.bus.user.UserInfo; +import com.yeshi.fanli.entity.bus.user.UserInfoExtra; +import com.yeshi.fanli.entity.bus.user.UserRank; import com.yeshi.fanli.entity.integral.IntegralTask; +import com.yeshi.fanli.entity.integral.IntegralTaskRank; import com.yeshi.fanli.entity.integral.IntegralTask.FrequencyEnum; import com.yeshi.fanli.entity.integral.IntegralTask.TaskUniqueKeyEnum; import com.yeshi.fanli.entity.integral.IntegralTaskRecord; @@ -18,8 +21,10 @@ import com.yeshi.fanli.exception.integral.IntegralTaskRecordException; import com.yeshi.fanli.log.LogHelper; import com.yeshi.fanli.service.inter.integral.IntegralGetService; +import com.yeshi.fanli.service.inter.integral.IntegralTaskRankService; import com.yeshi.fanli.service.inter.integral.IntegralTaskRecordService; import com.yeshi.fanli.service.inter.integral.IntegralTaskService; +import com.yeshi.fanli.service.inter.user.UserInfoExtraService; import com.yeshi.fanli.util.RedisManager; import com.yeshi.fanli.util.annotation.integral.IntegralGetFrequencyLimit; import com.yeshi.fanli.util.annotation.integral.IntegralGetVersionLimit; @@ -39,6 +44,12 @@ @Resource private RedisManager redisManager; + + @Resource + private UserInfoExtraService userInfoExtraService; + + @Resource + private IntegralTaskRankService integralTaskRankService; // TODO 鏈塨ug private UserInfo getBossByUid(Long uid) { @@ -68,10 +79,31 @@ if (count > 0) throw new IntegralGetException(2, "浜嬩欢瑙﹀彂杈惧埌涓婇檺"); } + + UserInfoExtra userInfoExtra = userInfoExtraService.getUserInfoExtra(uid); + if (userInfoExtra == null) + throw new IntegralGetException(2, "棰濆淇℃伅涓嶅瓨鍦�"); + + UserRank userRank = userInfoExtra.getUserRank(); + if (userRank == null) + throw new IntegralGetException(2,"绛夌骇淇℃伅涓嶅瓨鍦�"); int goldCoin = task.getGoldCoin(); if (task.getDoubleNum() != null && task.getDoubleNum() > 0) goldCoin = task.getDoubleNum() * goldCoin; + + Long taskId = task.getId(); + IntegralTaskRank traskRank = integralTaskRankService.getByTsakIdAndRankId(taskId, userRank.getId()); + if (traskRank != null) { + Integer addCoin = traskRank.getAddCoin(); + if (addCoin != null && addCoin > 0) + goldCoin += addCoin; + + Integer doubleNum = traskRank.getDoubleNum(); + if (doubleNum != null && doubleNum > 0) { + goldCoin = goldCoin * doubleNum; + } + } IntegralTaskRecord record = new IntegralTaskRecord(); record.setCid(task.getTaskClass().getId()); @@ -385,10 +417,6 @@ @Override public void addRebateOrder(Long uid) { try { - UserInfo boss = getBossByUid(uid); - if (boss != null) - addInviteOrderLevelOne(boss.getId()); - addEventStatistic(uid, TaskUniqueKeyEnum.rebateOrder.name()); } catch (Exception e) { LogHelper.errorDetailInfo(e); @@ -402,12 +430,9 @@ */ @IntegralGetVersionLimit(uid = "#uid") @Async() - private void addInviteOrderLevelOne(Long uid) { + @Override + public void addInviteOrderLevelOne(Long uid) { try { - UserInfo boss = getBossByUid(uid); - if (boss != null) - addInviteOrderLevelTwo(boss.getId()); - addEventStatistic(uid, TaskUniqueKeyEnum.inviteOrderLevelOne.name()); } catch (Exception e) { LogHelper.errorDetailInfo(e); @@ -421,7 +446,8 @@ */ @IntegralGetVersionLimit(uid = "#uid") @Async() - private void addInviteOrderLevelTwo(Long uid) { + @Override + public void addInviteOrderLevelTwo(Long uid) { try { addEventStatistic(uid, TaskUniqueKeyEnum.inviteOrderLevelTwo.name()); } catch (Exception e) { -- Gitblit v1.8.0