From fb2faf11c5607cffc34480228e346609d7bb5b42 Mon Sep 17 00:00:00 2001 From: yujian <yujian@163.com> Date: 星期六, 07 十二月 2019 18:14:23 +0800 Subject: [PATCH] 会员奖励 --- fanli/src/main/java/com/yeshi/fanli/service/impl/user/vip/UserVIPInfoServiceImpl.java | 40 ++++++++++++++++++++++++++++++++++++---- 1 files changed, 36 insertions(+), 4 deletions(-) diff --git a/fanli/src/main/java/com/yeshi/fanli/service/impl/user/vip/UserVIPInfoServiceImpl.java b/fanli/src/main/java/com/yeshi/fanli/service/impl/user/vip/UserVIPInfoServiceImpl.java index 0d36fe6..86ef0a1 100644 --- a/fanli/src/main/java/com/yeshi/fanli/service/impl/user/vip/UserVIPInfoServiceImpl.java +++ b/fanli/src/main/java/com/yeshi/fanli/service/impl/user/vip/UserVIPInfoServiceImpl.java @@ -21,8 +21,10 @@ import com.yeshi.fanli.entity.bus.user.UserInfo; import com.yeshi.fanli.entity.bus.user.UserInfoExtra; import com.yeshi.fanli.entity.bus.user.UserInviteSeparate; +import com.yeshi.fanli.entity.bus.user.UserSystemCoupon; import com.yeshi.fanli.entity.bus.user.vip.UserVIPInfo; import com.yeshi.fanli.entity.shop.BanLiShopOrder; +import com.yeshi.fanli.entity.system.SystemCoupon.CouponTypeEnum; import com.yeshi.fanli.exception.user.vip.UserVIPInfoException; import com.yeshi.fanli.service.inter.config.ConfigService; import com.yeshi.fanli.service.inter.count.HongBaoV2CountService; @@ -31,10 +33,12 @@ import com.yeshi.fanli.service.inter.user.UserInfoExtraService; import com.yeshi.fanli.service.inter.user.UserInfoService; import com.yeshi.fanli.service.inter.user.UserInviteSeparateService; +import com.yeshi.fanli.service.inter.user.UserSystemCouponService; import com.yeshi.fanli.service.inter.user.integral.IntegralDetailService; import com.yeshi.fanli.service.inter.user.invite.ThreeSaleSerivce; import com.yeshi.fanli.service.inter.user.vip.UserVIPInfoService; import com.yeshi.fanli.service.inter.user.vip.UserVipConfigService; +import com.yeshi.fanli.util.Constant; import com.yeshi.fanli.util.TimeUtil; @Service @@ -72,6 +76,9 @@ @Resource private ConfigService configService; + + @Resource + private UserSystemCouponService userSystemCouponService; @@ -90,7 +97,7 @@ userVIPInfoMapper.insert(info); } - @Transactional + @Transactional(rollbackFor = Exception.class) @Override public void passVIPApply(Long uid) throws UserVIPInfoException { UserVIPInfo userVIPInfo = userVIPInfoMapper.selectByPrimaryKeyForUpdate(uid); @@ -114,13 +121,39 @@ // 涓嬬骇鐨勮秴绾т細鍛� 涓嶈劚绂� userInviteSeparateService.updateInvalidByBossId(uid); + // 璧犻�佸埜 + try { + BigDecimal percent = new BigDecimal(configService.get("exchange_rebate_percent")); + for (int i = 0; i < Constant.VIP_COUPON_REWARD_NUM; i++) { + userSystemCouponService.insertUserCoupon(uid, CouponTypeEnum.rebatePercentCoupon.name(), + UserSystemCoupon.SOURCE_SYSTEM_PUSH, percent, false); + } + + for (int i = 0; i < Constant.VIP_COUPON_GIVEFREE_NUM; i++) { + userSystemCouponService.insertUserCoupon(uid, CouponTypeEnum.freeCouponGive.name(), + UserSystemCoupon.SOURCE_SYSTEM_PUSH, null, false); + } + } catch (Exception e) { + throw new UserVIPInfoException(1, "鍒歌禒閫佸け璐�"); + } + // 娑堟伅 MsgOtherVIPDTO msgOther = new MsgOtherVIPDTO(); msgOther.setContent1("鎭枩浣狅紝宸叉垚涓鸿秴绾т細鍛�"); msgOther.setContent2("婊¤冻鍗囩骇鏉′欢"); msgOther.setContent3(TimeUtil.formatDateDot(new Date())); - userOtherMsgNotificationService.passVIPApplyMsg(uid, "濡傛湁鐤戦棶璇疯仈绯绘垜鐨�-浜哄伐瀹㈡湇", msgOther); + userOtherMsgNotificationService.passVIPApplyMsg(uid, "杩斿埄濂栧姳鍒稿拰璧犻�佸厤鍗曞埜璇峰埌鎴戠殑-绂忓埄涓績涓煡鐪�", msgOther); + // 閫氱煡涓婄骇 + callBoss(uid); + } + + /** + * 閫氱煡涓婄骇鑴辩鍏崇郴 + * @param uid + */ + @Transactional + private void callBoss(Long uid) { // 鏄惁瀛樺湪涓婄骇 ThreeSale threeSale = threeSaleSerivce.getMyBoss(uid); if (threeSale == null) @@ -145,7 +178,6 @@ inviteSeparate.setUpdateTime(new Date()); userInviteSeparateService.insertSelective(inviteSeparate); - UserInfo userInfo = userInfoService.selectByPKey(uid); // 娑堟伅 MsgOtherVIPDTO msgboss = new MsgOtherVIPDTO(); @@ -154,7 +186,7 @@ msgboss.setContent3("浠婃棩璧�"+limitDays+"澶╁唴锛屼綘鏈兘鎴愪负瓒呯骇浼氬憳灏嗕細涓庡叾浠ュ強鍏剁洿鎺ョ矇涓濊劚绂婚個璇峰叧绯� "); userOtherMsgNotificationService.teamVIPCallBoss(bossId, "濡傛湁鐤戦棶璇疯仈绯绘垜鐨�-浜哄伐瀹㈡湇", msgboss); } - + @Transactional @Override public void rejectVIPApply(Long uid, String reason) throws UserVIPInfoException { -- Gitblit v1.8.0