提交 9ca9fc7b authored 作者: 刘海泉's avatar 刘海泉

Merge remote-tracking branch 'origin/v17.3_youhua_20240615' into test

Former-commit-id: 05d9367d
...@@ -69,8 +69,7 @@ public class OrderGoodsFeignController { ...@@ -69,8 +69,7 @@ public class OrderGoodsFeignController {
@ApiOperation(value = "取消货单", notes = "<br>By:李瑞新") @ApiOperation(value = "取消货单", notes = "<br>By:李瑞新")
@PostMapping({"/cancelOrderGoods"}) @PostMapping({"/cancelOrderGoods"})
Result<BigDecimal> cancelOrderGoods(@RequestBody @Validated CancelOrderGoodsParam param) { Result<BigDecimal> cancelOrderGoods(@RequestBody @Validated CancelOrderGoodsParam param) {
orderGoodsService.cancelOrderGoods(param); return Result.ok(orderGoodsService.cancelOrderGoods(param));
return Result.ok();
} }
......
...@@ -105,5 +105,7 @@ public interface OrderGoodsDao extends BaseDao<OrderGoodsMapper, OrderGoods, Int ...@@ -105,5 +105,7 @@ public interface OrderGoodsDao extends BaseDao<OrderGoodsMapper, OrderGoods, Int
void cancelOrderGoods(String orderNo); void cancelOrderGoods(String orderNo);
void batchCancel(List<Integer> idList);
void batchCancelOrderGoods(List<CancelOrderGoodsWeightDTO> cancelOrderGoodsWeight); void batchCancelOrderGoods(List<CancelOrderGoodsWeightDTO> cancelOrderGoodsWeight);
} }
...@@ -293,6 +293,13 @@ public class OrderGoodsDaoImpl extends BaseDaoImpl<OrderGoodsMapper, OrderGoods, ...@@ -293,6 +293,13 @@ public class OrderGoodsDaoImpl extends BaseDaoImpl<OrderGoodsMapper, OrderGoods,
.set(OrderGoods::getOrderGoodsStatus, OrderGoodsStatusEnum.Status.CANCEL.getCode()) .set(OrderGoods::getOrderGoodsStatus, OrderGoodsStatusEnum.Status.CANCEL.getCode())
); );
} }
@Override
public void batchCancel(List<Integer> idList) {
update(lUdWrapper()
.in(OrderGoods::getId, idList)
.set(OrderGoods::getOrderGoodsStatus, OrderGoodsStatusEnum.Status.CANCEL.getCode())
);
}
@Override @Override
public void batchCancelOrderGoods(List<CancelOrderGoodsWeightDTO> cancelOrderGoodsWeight) { public void batchCancelOrderGoods(List<CancelOrderGoodsWeightDTO> cancelOrderGoodsWeight) {
......
...@@ -1010,18 +1010,28 @@ public class OrderGoodsServiceImpl implements OrderGoodsService, InitializingBea ...@@ -1010,18 +1010,28 @@ public class OrderGoodsServiceImpl implements OrderGoodsService, InitializingBea
@Override @Override
@Transactional(rollbackFor = Exception.class) @Transactional(rollbackFor = Exception.class)
public BigDecimal cancelOrderGoods(CancelOrderGoodsParam param) { public BigDecimal cancelOrderGoods(CancelOrderGoodsParam param) {
log.info("取消货单:{}",param); log.info("取消货单:{}",param);
List<OrderGoods> orderGoodsList = orderGoodsDao.getOrderGoodsListByOrderNo(param.getOrderNo());
// 过滤可取消
List<OrderGoods> orderGoodsUpdateList =
orderGoodsList.stream().filter(item ->
Objects.equals(item.getOrderGoodsStatus(), OrderGoodsStatusEnum.Status.CREATED.getCode())
|| Objects.equals(item.getOrderGoodsStatus(), OrderGoodsStatusEnum.Status.PAYING.getCode())
|| Objects.equals(item.getOrderGoodsStatus(), OrderGoodsStatusEnum.Status.GO_TO_SEND.getCode())
).collect(Collectors.toList());
if (orderGoodsUpdateList.isEmpty()) {return BigDecimal.ZERO;}
//取消货单 //取消货单
orderGoodsDao.cancelOrderGoods(param.getOrderNo()); orderGoodsDao.batchCancel(orderGoodsUpdateList.stream().map(item->item.getId()).collect(Collectors.toList()));
//批量保存货单日志 //批量保存货单日志
List<OrderGoods> orderGoodsListByOrderNo = orderGoodsDao.getOrderGoodsListByOrderNo(param.getOrderNo()); log.info("orderGoodsListByOrderNo:{}",orderGoodsUpdateList);
log.info("orderGoodsListByOrderNo:{}",orderGoodsListByOrderNo);
List<OrderGoodsLog> orderGoodsLogs = new ArrayList<>(); List<OrderGoodsLog> orderGoodsLogs = new ArrayList<>();
OrderGoodsLog orderGoodsLog = null; OrderGoodsLog orderGoodsLog = null;
BigDecimal totalCancelWeight = BigDecimal.ZERO; BigDecimal totalCancelWeight = BigDecimal.ZERO;
for(OrderGoods orderGoods:orderGoodsListByOrderNo){ for(OrderGoods orderGoods:orderGoodsUpdateList){
orderGoodsLog = new OrderGoodsLog(); orderGoodsLog = new OrderGoodsLog();
orderGoodsLog.setOrderGoodsNo(orderGoods.getOrderGoodsNo()); orderGoodsLog.setOrderGoodsNo(orderGoods.getOrderGoodsNo());
orderGoodsLog.setCreateName(param.getCreateName()); orderGoodsLog.setCreateName(param.getCreateName());
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论