From a5bc9c4e52f98032b287a42fd243c2ffcb7d58f6 Mon Sep 17 00:00:00 2001 From: yujian <yujian@163.com> Date: 星期一, 13 四月 2020 09:52:16 +0800 Subject: [PATCH] 消息 --- fanli/src/main/java/com/yeshi/fanli/service/manger/order/HongBaoV2AddManager.java | 52 ++++++++++++++++++++++++++++++++++------------------ 1 files changed, 34 insertions(+), 18 deletions(-) diff --git a/fanli/src/main/java/com/yeshi/fanli/service/manger/order/HongBaoV2AddManager.java b/fanli/src/main/java/com/yeshi/fanli/service/manger/order/HongBaoV2AddManager.java index cc875e0..6fbed48 100644 --- a/fanli/src/main/java/com/yeshi/fanli/service/manger/order/HongBaoV2AddManager.java +++ b/fanli/src/main/java/com/yeshi/fanli/service/manger/order/HongBaoV2AddManager.java @@ -23,6 +23,7 @@ import com.yeshi.fanli.entity.bus.user.HongBaoV2; import com.yeshi.fanli.entity.bus.user.ThreeSale; import com.yeshi.fanli.entity.bus.user.UserInfo; +import com.yeshi.fanli.entity.bus.user.vip.UserLevelEnum; import com.yeshi.fanli.entity.order.CommonOrder; import com.yeshi.fanli.entity.order.CommonOrderGoods; import com.yeshi.fanli.entity.order.HongBaoOrder; @@ -36,6 +37,7 @@ import com.yeshi.fanli.service.inter.user.UserSystemCouponService; import com.yeshi.fanli.service.inter.user.invite.ThreeSaleSerivce; import com.yeshi.fanli.service.inter.user.vip.UserVIPInfoService; +import com.yeshi.fanli.service.manger.user.UserLevelManager; import com.yeshi.fanli.util.Constant; import com.yeshi.fanli.util.MoneyBigDecimalUtil; import com.yeshi.fanli.util.TaoBaoConstant; @@ -76,6 +78,9 @@ @Resource private UserVIPInfoService userVIPInfoService; + + @Resource + private UserLevelManager userLevelManager; /** * 娣诲姞绾㈠寘淇℃伅 @@ -129,20 +134,30 @@ switch (t) { case HongBaoV2.TYPE_ZIGOU: userOrderMsgNotificationService.orderFanLiStatistic(uid, orderId, orderType, - commonOrder.getPayment(), money, goodsCount, state); + commonOrder.getPayment(), money, goodsCount, commonOrder.getState(), + commonOrder.getThirdCreateTime()); + break; case HongBaoV2.TYPE_SHARE_GOODS: + userOrderMsgNotificationService.orderShareStatistic(uid, orderId, orderType, - commonOrder.getPayment(), money, goodsCount, state); + commonOrder.getPayment(), money, goodsCount, commonOrder.getState(), + commonOrder.getThirdCreateTime()); + break; case HongBaoV2.TYPE_YIJI: userOrderMsgNotificationService.orderInviteStatistic(uid, orderId, orderType, - commonOrder.getPayment(), money, goodsCount, state); + commonOrder.getPayment(), money, goodsCount, commonOrder.getState(), + commonOrder.getThirdCreateTime()); + break; case HongBaoV2.TYPE_ERJI: - userOrderMsgNotificationService.orderInviteStatistic(uid, orderId, orderType, - commonOrder.getPayment(), money, goodsCount, state); + + userOrderMsgNotificationService.orderInviteStatistic(uid, orderId, orderType, commonOrder.getPayment(), money, + goodsCount, commonOrder.getState(), commonOrder.getThirdCreateTime()); + break; + case HongBaoV2.TYPE_SHARE_YIJI: userOrderMsgNotificationService.orderShareFirstLevelStatistic(uid, orderId, orderType, commonOrder.getPayment(), money, goodsCount, state, notify.getBeizhu()); @@ -471,7 +486,7 @@ } } - HongBaoV2 hongBao = createFanLiHongBao(commonOrder, fanliRate, mianDanMoney, vip); + HongBaoV2 hongBao = createFanLiHongBao(commonOrder, fanliRate, mianDanMoney); if (hongBao == null) return; addFanLiOrShareHongBao(hongBao, commonOrder, notificationMap); @@ -630,7 +645,8 @@ UserInfo user = userInfoService.selectAvailableByPrimaryKey(uid); if (user == null) return null; - boolean isVIP = userVIPInfoService.isVIP(uid); + + UserLevelEnum level = userLevelManager.getUserLevel(uid); HongBaoV2 child = new HongBaoV2(); child.setParent(parent); @@ -649,13 +665,11 @@ } child.setUserInfo(user); - child.setUrank(user.getRank()); + child.setUrank(level.getOrderRank()); child.setVersion(2); child.setCreateTime(new Date()); child.setOrderType(commonOrder.getSourceType()); if (child.getMoney() == null) - return null; - if (child.getMoney().compareTo(new BigDecimal(0)) <= 0 && !isVIP) return null; return child; } @@ -668,13 +682,11 @@ * -杩斿埄姣斾緥 * @param mianDanMoney * 鍏嶅崟閲戦 - * @param isVIP-鏄惁涓篤IP璁㈠崟 * @return * @throws HongBaoException * @throws UserAccountException */ - private HongBaoV2 createFanLiHongBao(CommonOrder commonOrder, BigDecimal fanliRate, BigDecimal mianDanMoney, - boolean isVIP) throws HongBaoException, UserAccountException { + private HongBaoV2 createFanLiHongBao(CommonOrder commonOrder, BigDecimal fanliRate, BigDecimal mianDanMoney) throws HongBaoException, UserAccountException { HongBaoV2 hongBao = new HongBaoV2(); hongBao.setUserInfo(commonOrder.getUserInfo()); hongBao.setCreateTime(new Date()); @@ -704,9 +716,11 @@ UserInfo user = userInfoService.getUserById(commonOrder.getUserInfo().getId()); if (user == null) throw new UserAccountException(1001, "鐢ㄦ埛涓嶅瓨鍦�/琚皝绂�"); - if (isVIP) { - hongBao.setUrank(100);// VIP鐨勭瓑绾ц缃负100 - } else { + UserLevelEnum userLevel = userLevelManager.getUserLevel(commonOrder.getUserInfo().getId(), + commonOrder.getThirdCreateTime()); + if (userLevel != null) + hongBao.setUrank(userLevel.getOrderRank()); + else { hongBao.setUrank(user.getRank()); } hongBao.setOrderType(commonOrder.getSourceType()); @@ -850,8 +864,10 @@ UserInfo user = userInfoService.getUserById(commonOrder.getUserInfo().getId()); if (user == null) throw new UserAccountException(1001, "鐢ㄦ埛涓嶅瓨鍦�/琚皝绂�"); - if (isVip) - hongBao.setUrank(100); + UserLevelEnum userLevel = userLevelManager.getUserLevel(commonOrder.getUserInfo().getId(), + commonOrder.getThirdCreateTime()); + if (userLevel != null) + hongBao.setUrank(userLevel.getOrderRank()); else hongBao.setUrank(user.getRank()); hongBao.setUserInfo(user); -- Gitblit v1.8.0