| | |
| | | throw new FebsException("请选择自提点"); |
| | | } |
| | | |
| | | MallTeamLeader mallTeamLeader = mallTeamLeaderMapper.selectLeaderByUniqueCode(takeUniqueCode); |
| | | if(ObjectUtil.isEmpty(mallTeamLeader)){ |
| | | throw new FebsException("请重新选择团长"); |
| | | } |
| | | |
| | | String orderNo = MallUtils.getOrderNum(); |
| | | MallOrderInfo orderInfo = new MallOrderInfo(); |
| | | orderInfo.setOrderNo(orderNo); |
| | |
| | | orderInfo.setStatus(OrderStatusEnum.CANCEL.getValue()); |
| | | orderInfo.setCancelType(MallOrderInfo.CANCEL_BY_SELF); |
| | | this.baseMapper.updateById(orderInfo); |
| | | List<MallOrderItem> mallOrderItemList = mallOrderItemMapper.selectListByOrderId(id); |
| | | if(CollUtil.isNotEmpty(mallOrderItemList)){ |
| | | for(MallOrderItem mallOrderItem : mallOrderItemList){ |
| | | Long goodsId = mallOrderItem.getGoodsId(); |
| | | Long skuId = mallOrderItem.getSkuId(); |
| | | Integer cnt = mallOrderItem.getCnt(); |
| | | MallGoods mallGoods = mallGoodsMapper.selectById(goodsId); |
| | | mallGoods.setVolume(mallGoods.getVolume() - cnt); |
| | | mallGoods.setStock(mallGoods.getStock() + cnt); |
| | | mallGoodsMapper.updateById(mallGoods); |
| | | |
| | | MallGoodsSku mallGoodsSku = mallGoodsSkuMapper.selectById(skuId); |
| | | mallGoodsSku.setSkuVolume(mallGoodsSku.getSkuVolume() - cnt); |
| | | mallGoodsSku.setStock(mallGoodsSku.getStock() + cnt); |
| | | mallGoodsSkuMapper.updateById(mallGoodsSku); |
| | | } |
| | | } |
| | | } |
| | | |
| | | /** |
| | |
| | | } |
| | | |
| | | OrderDetailVo orderDetailVo = MallOrderInfoConversion.INSTANCE.entityToDetailVo(orderInfo); |
| | | orderDetailVo.setLeaderLatitude(orderInfo.getLeaderLatitude()); |
| | | orderDetailVo.setLeaderLongitude(orderInfo.getLeaderLongitude()); |
| | | |
| | | // if (orderInfo.getStatus() == OrderStatusEnum.WAIT_FINISH.getValue()) { |
| | | // MallExpressInfo expressInfo = expressInfoMapper.selectByOrderId(orderInfo.getId()); |
| | | // orderDetailVo.setExpressNo(expressInfo.getExpressNo()); |
| | |
| | | this.baseMapper.updateById(orderInfo); |
| | | |
| | | //生成一条团长提成记录 |
| | | MallLeaderAchieve mallLeaderAchieve = new MallLeaderAchieve(); |
| | | mallLeaderAchieve.setMemberId(orderInfo.getMemberId()); |
| | | mallLeaderAchieve.setOrderNo(orderInfo.getOrderNo()); |
| | | mallLeaderAchieve.setAmount(orderInfo.getAmount()); |
| | | mallLeaderAchieve.setUniqueCode(orderInfo.getTakeUniqueCode()); |
| | | mallLeaderAchieve.setState(MallLeaderAchieve.STATE_ONE); |
| | | mallLeaderAchieveMapper.insert(mallLeaderAchieve); |
| | | Long orderInfoId = orderInfo.getId(); |
| | | List<MallOrderItem> mallOrderItemList = mallOrderItemMapper.selectListByOrderId(orderInfoId); |
| | | if(CollUtil.isNotEmpty(mallOrderItemList)){ |
| | | DataDictionaryCustom dicBonusPercent = dataDictionaryCustomMapper.selectDicDataByTypeAndCode(DataDictionaryEnum.BONUS_PERCENT.getType(), DataDictionaryEnum.BONUS_PERCENT.getCode()); |
| | | BigDecimal bonusPercent = new BigDecimal(dicBonusPercent.getValue()).setScale(2,BigDecimal.ROUND_DOWN); |
| | | for(MallOrderItem mallOrderItem : mallOrderItemList){ |
| | | Integer state = mallOrderItem.getState() == null ? 1 : mallOrderItem.getState(); |
| | | if(1 == state){ |
| | | MallLeaderAchieve mallLeaderAchieve = new MallLeaderAchieve(); |
| | | mallLeaderAchieve.setMemberId(orderInfo.getMemberId()); |
| | | mallLeaderAchieve.setOrderNo(orderInfo.getOrderNo()); |
| | | mallLeaderAchieve.setOrderItemId(mallOrderItem.getId()); |
| | | BigDecimal itemAmount = mallOrderItem.getAmount(); |
| | | mallLeaderAchieve.setAmount(itemAmount); |
| | | BigDecimal bigDecimal = bonusPercent.multiply(itemAmount).setScale(2, BigDecimal.ROUND_DOWN); |
| | | mallLeaderAchieve.setProfitAmount(bigDecimal); |
| | | mallLeaderAchieve.setUniqueCode(orderInfo.getTakeUniqueCode()); |
| | | mallLeaderAchieve.setState(MallLeaderAchieve.STATE_ONE); |
| | | mallLeaderAchieveMapper.insert(mallLeaderAchieve); |
| | | } |
| | | } |
| | | } |
| | | } |
| | | |
| | | @Override |