销售订单完成后,进行发货出库处理
发货处理会扣除库存,同样入库会增加库存
@RequestMapping("/outBound")
@ResponseBody
public ResponseData outBound( @RequestParam("orderNo") String orderNo) {
SaleOrderResult saleOrderResult=saleOrderService.getByOrderNo(orderNo);
if (saleOrderResult==null)
{
return ResponseData.error("查询不到订单详细信息");
}
if (saleOrderResult.getOrderState()!=SaleOrderStatusEnum.AUDIT.getStatusValue())
{
return ResponseData.error("订单状态存在问题!");
}
SaleOrderDetailParam saleOrderDetailParam=new SaleOrderDetailParam();
saleOrderDetailParam.setOrderNo(orderNo);
saleOrderDetailParam.setYn(1);
List<SaleOrderDetailResult> saleOrderDetailResultList=saleOrderDetailService.findListBySpec(saleOrderDetailParam);
if (saleOrderDetailResultList==null|| saleOrderDetailResultList.size()==0)
{
return ResponseData.error("查询不到商品明细!");
}
List<SaleOrderDetailResult> curList=saleOrderDetailResultList.stream().filter(p->p.getDeliveryNum().compareTo(new BigDecimal(0))==1).collect(Collectors.toList());
if (curList==null||curList.size()==0)
{
return ResponseData.error("发货数量不能为0!");
}
saleOrderResult.setUpdateUser(LoginContextHolder.getContext().getUser().getUsername());
saleOrderDetailService.outBound(saleOrderResult);
return ResponseData.success();
}