|
@@ -4767,6 +4767,27 @@ public class TopOldOrderServiceImpl extends ServiceImpl<TopOldOrderMapper, TopOl
|
|
|
if (ObjectUtils.isNull(orderBySn)){
|
|
|
throw new CustomException("订单号不存在!");
|
|
|
}
|
|
|
+ //已退
|
|
|
+ BigDecimal refunded = new BigDecimal("0.00");
|
|
|
+ if (orderBySn.getOrderFrom() == 1 || orderBySn.getOrderFrom() == 4){
|
|
|
+ //新系统订单
|
|
|
+ List<OrderGoodsRefund> list = orderGoodsRefundService.list(new LambdaQueryWrapper<OrderGoodsRefund>()
|
|
|
+ .eq(OrderGoodsRefund::getOrderSn, orderBySn.getOrderSn())
|
|
|
+ .eq(OrderGoodsRefund::getStatus, 1)
|
|
|
+ .eq(OrderGoodsRefund::getPeriodStatus, 3));
|
|
|
+ if (CollectionUtils.isNotEmpty(list)){
|
|
|
+ refunded = list.stream().map(OrderGoodsRefund::getRefundFee).reduce(BigDecimal.ZERO, BigDecimal::add);
|
|
|
+ }
|
|
|
+ }else {
|
|
|
+ List<TopOldOrderRefund> list = topOldOrderRefundService.list(new LambdaQueryWrapper<TopOldOrderRefund>()
|
|
|
+ .eq(TopOldOrderRefund::getOrderSn, orderBySn.getOrderSn())
|
|
|
+ .eq(TopOldOrderRefund::getStatus, 1)
|
|
|
+ .eq(TopOldOrderRefund::getPeriodStatus, 3));
|
|
|
+ if (CollectionUtils.isNotEmpty(list)){
|
|
|
+ refunded = list.stream().map(TopOldOrderRefund::getRefundFee).reduce(BigDecimal.ZERO, BigDecimal::add);
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
TopOldOrderReplenish replenish = topOldOrderReplenishService
|
|
|
.getOne(new LambdaQueryWrapper<TopOldOrderReplenish>()
|
|
|
.eq(TopOldOrderReplenish::getOrderSn, editBo.getOrderSn())
|
|
@@ -4787,11 +4808,11 @@ public class TopOldOrderServiceImpl extends ServiceImpl<TopOldOrderMapper, TopOl
|
|
|
//总收款
|
|
|
BigDecimal reduce = editBo.getProceedsJson().values().stream().reduce(BigDecimal.ZERO, BigDecimal::add);
|
|
|
//未收
|
|
|
- orderReplenish.setOrderResidue(orderBySn.getOrderPrice().subtract(reduce));
|
|
|
+ orderReplenish.setOrderResidue(orderBySn.getOrderPrice().subtract(reduce).subtract(refunded));
|
|
|
orderReplenish.setProceedsJson(JSON.toJSONString(editBo.getProceedsJson()));
|
|
|
}else {
|
|
|
//未收
|
|
|
- orderReplenish.setOrderResidue(orderBySn.getOrderPrice());
|
|
|
+ orderReplenish.setOrderResidue(orderBySn.getOrderPrice().subtract(refunded));
|
|
|
}
|
|
|
orderReplenish.setStatus(1);
|
|
|
orderReplenish.setCreateTime(DateUtils.getNowTime());
|
|
@@ -4820,13 +4841,13 @@ public class TopOldOrderServiceImpl extends ServiceImpl<TopOldOrderMapper, TopOl
|
|
|
reduce = reduce.add(new BigDecimal(value.toString()));
|
|
|
}
|
|
|
//未收
|
|
|
- replenish.setOrderResidue(orderBySn.getOrderPrice().subtract(reduce));
|
|
|
+ replenish.setOrderResidue(orderBySn.getOrderPrice().subtract(reduce).subtract(refunded));
|
|
|
replenish.setProceedsJson(JSON.toJSONString(map));
|
|
|
}else {
|
|
|
//总收款
|
|
|
BigDecimal reduce = editBo.getProceedsJson().values().stream().reduce(BigDecimal.ZERO, BigDecimal::add);
|
|
|
//未收
|
|
|
- replenish.setOrderResidue(orderBySn.getOrderPrice().subtract(reduce));
|
|
|
+ replenish.setOrderResidue(orderBySn.getOrderPrice().subtract(reduce).subtract(refunded));
|
|
|
replenish.setProceedsJson(JSON.toJSONString(editBo.getProceedsJson()));
|
|
|
}
|
|
|
}
|
|
@@ -4850,17 +4871,17 @@ public class TopOldOrderServiceImpl extends ServiceImpl<TopOldOrderMapper, TopOl
|
|
|
orderGoodsService.update(new LambdaUpdateWrapper<OrderGoods>()
|
|
|
.eq(OrderGoods::getOrderSn,editBo.getOrderSn())
|
|
|
.eq(OrderGoods::getOrderGoodsId,editBo.getOrderGoodsId())
|
|
|
- .set(ObjectUtils.isNotNull(editBo.getFinishTime()),OrderGoods::getFinishTime,editBo.getFinishTime())
|
|
|
- .set(ObjectUtils.isNotNull(editBo.getAcquireTime()),OrderGoods::getAcquireTime,editBo.getAcquireTime())
|
|
|
- .set(ObjectUtils.isNotNull(editBo.getPublicityTime()),OrderGoods::getPublicityTime,editBo.getPublicityTime())
|
|
|
+ .set(OrderGoods::getFinishTime,editBo.getFinishTime())
|
|
|
+ .set(OrderGoods::getAcquireTime,editBo.getAcquireTime())
|
|
|
+ .set(OrderGoods::getPublicityTime,editBo.getPublicityTime())
|
|
|
);
|
|
|
}else {
|
|
|
topOrderGoodsService.update(new LambdaUpdateWrapper<TopOldOrderGoods>()
|
|
|
.eq(TopOldOrderGoods::getOrderSn,editBo.getOrderSn())
|
|
|
.eq(TopOldOrderGoods::getOrderGoodsId,editBo.getOrderGoodsId())
|
|
|
- .set(ObjectUtils.isNotNull(editBo.getFinishTime()),TopOldOrderGoods::getFinishTime,editBo.getFinishTime())
|
|
|
- .set(ObjectUtils.isNotNull(editBo.getAcquireTime()),TopOldOrderGoods::getAcquireTime,editBo.getAcquireTime())
|
|
|
- .set(ObjectUtils.isNotNull(editBo.getPublicityTime()),TopOldOrderGoods::getPublicityTime,editBo.getPublicityTime())
|
|
|
+ .set(TopOldOrderGoods::getFinishTime,editBo.getFinishTime())
|
|
|
+ .set(TopOldOrderGoods::getAcquireTime,editBo.getAcquireTime())
|
|
|
+ .set(TopOldOrderGoods::getPublicityTime,editBo.getPublicityTime())
|
|
|
);
|
|
|
|
|
|
}
|