| | |
| | | orderInfo.setStatus(OrderStatusEnum.WAIT_SHIPPING.getValue()); |
| | | orderInfo.setPayTime(new Date()); |
| | | orderInfo.setPayResult("1"); |
| | | this.baseMapper.updateById(orderInfo); |
| | | //新增业绩,第一次购买套餐则升级用户为普通会员 |
| | | |
| | | boolean hasTc = false; |
| | | BigDecimal achieveAmount = BigDecimal.ZERO; |
| | | List<MallOrderItem> orderItems = this.baseMapper.getMallOrderItemByOrderId(orderInfo.getId()); |
| | | if (CollUtil.isNotEmpty(orderItems)) { |
| | | for (MallOrderItem orderItem : orderItems) { |
| | | MallGoods mallGoods = mallGoodsMapper.selectById(orderItem.getGoodsId()); |
| | | MallGoodsSku sku = mallGoodsSkuMapper.selectById(orderItem.getSkuId()); |
| | | if (mallGoods.getIsNormal() == 2) { |
| | | hasTc = true; |
| | | achieveAmount = achieveAmount.add(sku.getPresentPrice().multiply(new BigDecimal(orderItem.getCnt()))); |
| | | } |
| | | } |
| | | } |
| | | |
| | | |
| | | if (hasTc){ |
| | | if(achieveAmount.compareTo(BigDecimal.ZERO) > 0) { |
| | | // 添加业绩 |
| | | MallAchieveRecord mallAchieveRecord = new MallAchieveRecord(); |
| | | mallAchieveRecord.setMemberId(member.getId()); |
| | | mallAchieveRecord.setAmount(achieveAmount); |
| | | mallAchieveRecord.setAchieveTime(orderInfo.getPayTime()); |
| | | mallAchieveRecord.setOrderId(orderInfo.getId()); |
| | | mallAchieveRecord.setIsNormal(2); |
| | | mallAchieveRecord.setPayTime(orderInfo.getPayTime()); |
| | | mallAchieveRecordMapper.insert(mallAchieveRecord); |
| | | } |
| | | } |
| | | addAchieveAndUpdateLevel(orderInfo.getId(),member.getId()); |
| | | |
| | | mallMoneyFlowService.addMoneyFlow(member.getId(), orderInfo.getAmount().negate(), MoneyFlowTypeEnum.PAY.getValue(), orderInfo.getOrderNo(), FlowTypeEnum.BALANCE.getValue()); |
| | | agentProducer.sendAutoLevelUpMsg(member.getId()); |
| | |
| | | return map; |
| | | } |
| | | |
| | | /** |
| | | * 新增业绩,第一次购买套餐则升级用户为普通会员 |
| | | * @param orderId |
| | | * @param memberId |
| | | */ |
| | | private void addAchieveAndUpdateLevel(Long orderId,Long memberId){ |
| | | MallOrderInfo orderInfo = this.baseMapper.selectById(orderId); |
| | | MallMember member = memberMapper.selectById(memberId); |
| | | |
| | | boolean hasTc = false; |
| | | BigDecimal achieveAmount = BigDecimal.ZERO; |
| | | List<MallOrderItem> orderItems = this.baseMapper.getMallOrderItemByOrderId(orderId); |
| | | if (CollUtil.isNotEmpty(orderItems)) { |
| | | for (MallOrderItem orderItem : orderItems) { |
| | | MallGoods mallGoods = mallGoodsMapper.selectById(orderItem.getGoodsId()); |
| | | MallGoodsSku sku = mallGoodsSkuMapper.selectById(orderItem.getSkuId()); |
| | | if (mallGoods.getIsNormal() == 2) { |
| | | hasTc = true; |
| | | achieveAmount = achieveAmount.add(sku.getPresentPrice().multiply(new BigDecimal(orderItem.getCnt()))); |
| | | } |
| | | } |
| | | } |
| | | |
| | | if (hasTc){ |
| | | if(achieveAmount.compareTo(BigDecimal.ZERO) > 0) { |
| | | // 添加业绩 |
| | | MallAchieveRecord mallAchieveRecord = new MallAchieveRecord(); |
| | | mallAchieveRecord.setMemberId(memberId); |
| | | mallAchieveRecord.setAmount(achieveAmount); |
| | | mallAchieveRecord.setAchieveTime(orderInfo.getPayTime()); |
| | | mallAchieveRecord.setOrderId(orderInfo.getId()); |
| | | mallAchieveRecord.setIsNormal(2); |
| | | mallAchieveRecord.setPayTime(orderInfo.getPayTime()); |
| | | mallAchieveRecordMapper.insert(mallAchieveRecord); |
| | | } |
| | | if(member.getLevel().equals(MemberLevelEnum.FANS.getType())){ |
| | | member.setLevel(MemberLevelEnum.NORMAL.getType()); |
| | | memberMapper.updateById(member); |
| | | } |
| | | } |
| | | } |
| | | |
| | | public static void main(String[] args) { |
| | | String str = "{\"biz_code\":\"JS000000\",\"biz_msg\":\"成功\",\"data\":\"{\\\"order_status\\\":\\\"P2000\\\",\\\"jp_order_no\\\":\\\"100120220826446740396081496064\\\",\\\"err_msg\\\":\\\"短信验证码不符\\\",\\\"err_code\\\":\\\"CP110026\\\",\\\"sign_no\\\":\\\"\\\",\\\"mch_order_no\\\":\\\"NO_2022082618263952399\\\"}\",\"mch_no\":\"888118000001971\",\"rand_str\":\"an2w7ulf5ru6upkk5bdg441kdi3gnpvu\",\"resp_code\":\"SUCCESS\",\"sec_key\":\"\",\"sign\":\"NiJXRTSIZ9xZMUOwEHiEHdZXmgL2cHUU5WUa1NbMRRzui0DIiuZSW4e31LjnBxwVwmy3uuPMP+tqhY8VLyC8uCFOdGdZI7e72VuRvyvaiW7/sqCrsfgPOBEjiGE/CmSMRoEXv9HmqCyNBF6iHSEhQJql5Yge30dQdyB6xFfqjk0=\",\"sign_type\":\"2\"}"; |
| | | |