From 8c04d27e5cebb7e654c208533e9567c4df2c8acc Mon Sep 17 00:00:00 2001 From: yujian <yujian@163.com> Date: 星期四, 12 十二月 2019 14:21:44 +0800 Subject: [PATCH] 券时间限制 --- fanli/src/main/java/com/yeshi/fanli/service/impl/order/InviteOrderSubsidyServiceImpl.java | 26 +++++++++++++++++++++----- 1 files changed, 21 insertions(+), 5 deletions(-) diff --git a/fanli/src/main/java/com/yeshi/fanli/service/impl/order/InviteOrderSubsidyServiceImpl.java b/fanli/src/main/java/com/yeshi/fanli/service/impl/order/InviteOrderSubsidyServiceImpl.java index 2c77ed6..4a05ffa 100644 --- a/fanli/src/main/java/com/yeshi/fanli/service/impl/order/InviteOrderSubsidyServiceImpl.java +++ b/fanli/src/main/java/com/yeshi/fanli/service/impl/order/InviteOrderSubsidyServiceImpl.java @@ -25,8 +25,11 @@ import com.yeshi.fanli.service.inter.order.OrderHongBaoMapService; import com.yeshi.fanli.service.inter.order.OrderService; import com.yeshi.fanli.service.inter.order.config.HongBaoManageService; +import com.yeshi.fanli.service.inter.user.vip.UserVIPInfoService; +import com.yeshi.fanli.util.Constant; import com.yeshi.fanli.util.MoneyBigDecimalUtil; import com.yeshi.fanli.util.StringUtil; +import com.yeshi.fanli.util.TimeUtil; @Service public class InviteOrderSubsidyServiceImpl implements InviteOrderSubsidyService { @@ -49,6 +52,9 @@ @Resource private HongBaoManageService hongBaoManageService; + @Resource + private UserVIPInfoService userVIPInfoService; + @Override public InviteOrderSubsidy getByOrderNoAndType(Long uid, String orderNo, Integer type) { return inviteOrderSubsidyMapper.getByOrderNoAndType(uid, orderNo, type); @@ -60,8 +66,12 @@ } @Transactional - @Override - public void addOrderSubsidy(InviteOrderSubsidy orderSubsidy) throws InviteOrderSubsidyException { + private void addOrderSubsidy(InviteOrderSubsidy orderSubsidy) throws InviteOrderSubsidyException { + // TODO 纭畾鐢熸晥鏃ユ湡 鏈哄埗2020骞寸敓鏁� + if (System.currentTimeMillis() < TimeUtil.convertToTimeTemp("2020-01-01", "yyyy-MM-dd")&&!Constant.IS_TEST) { + return; + } + if (orderSubsidy.getMoney() == null || StringUtil.isNullOrEmpty(orderSubsidy.getOrderNo()) || orderSubsidy.getSourceType() == null || orderSubsidy.getUid() == null) throw new InviteOrderSubsidyException(1, "鏁版嵁涓嶅畬鏁�"); @@ -75,6 +85,9 @@ // 淇敼鐘舵�� InviteOrderSubsidy update = new InviteOrderSubsidy(old.getId()); update.setMoney(orderSubsidy.getMoney()); + if (old.getState() == InviteOrderSubsidy.STATE_UNKNOWN) {// 鐘舵�佹湭纭畾涔嬪墠鎵嶅彲浠ユ洿鏀瑰師濮嬭ˉ璐磋祫閲� + update.setOriginalMoney(orderSubsidy.getOriginalMoney()); + } update.setState(orderSubsidy.getState()); update.setUpdateTime(new Date()); inviteOrderSubsidyMapper.updateByPrimaryKeySelective(update); @@ -92,7 +105,7 @@ if (list != null && list.size() > 0) { // 蹇呴』鏄嚜璐鍗曟墠杩斿埄 HongBaoV2 parent = hongBaoV2Service.selectByPrimaryKey(list.get(0).getHongBaoV2().getId()); - if (parent != null && parent.getType() == HongBaoV2.TYPE_ZIGOU) { + if (parent != null && parent.getType() == HongBaoV2.TYPE_ZIGOU && parent.getUrank() != 100) {// 涓嶆槸浼氬憳鐨勮嚜璐墠琛ヨ创 Order order = orderService.findOrderByOrderIdAndType(orderId, sourceType); List<Long> idList = new ArrayList<>(); for (HongBaoOrder ho : list) @@ -147,15 +160,18 @@ rate = firstRate; else rate = secondRate; - BigDecimal money = MoneyBigDecimalUtil.mul(MoneyBigDecimalUtil.mul(totalMoney, rate), + BigDecimal money = MoneyBigDecimalUtil.div(MoneyBigDecimalUtil.mul(totalMoney, rate), new BigDecimal(100)); InviteOrderSubsidy orderSubsidy = new InviteOrderSubsidy(); orderSubsidy.setMoney(money); + orderSubsidy.setOriginalMoney(money); orderSubsidy.setUid(uid); orderSubsidy.setOrderNo(orderId); orderSubsidy.setSourceType(sourceType); orderSubsidy.setState(state); - addOrderSubsidy(orderSubsidy); + // VIP鐢ㄦ埛鎵嶈兘琛ヨ创 + if (userVIPInfoService.isVIP(uid)) + addOrderSubsidy(orderSubsidy); } } } -- Gitblit v1.8.0