|
|
@@ -521,7 +521,10 @@ public class OrderService extends BaseService<Order> {
|
|
|
for (OrderItemVO orderItemVO : insertOrderItemVOList) {
|
|
|
OrderItem orderItem = orderItemConvert.convertToPo(orderItemVO);
|
|
|
orderItem.setOrderId(order.getOrderId()).setCpId(order.getCpId()).setOutStatus(Constant.OutStatus.DAICHUKU.getName());
|
|
|
+ orderItem.setItemId(UUID.randomUUID().toString());
|
|
|
orderItemMapper.insert(orderItem);
|
|
|
+ orderItemVO.setItemId(orderItem.getItemId());
|
|
|
+ orderItemVO.setOrderId(orderVO.getOrderId());
|
|
|
}
|
|
|
// 编辑的
|
|
|
List<OrderItemVO> editOrderItemVOList = orderVO.getItemList().stream().filter(it -> it.getItemId() != null).collect(Collectors.toList());
|
|
|
@@ -535,9 +538,11 @@ public class OrderService extends BaseService<Order> {
|
|
|
}
|
|
|
// 如果出库数量不是0,则不能改仓库
|
|
|
if (outintOrOutQty.compareTo(BigDecimal.ZERO) != 0) {
|
|
|
- if (!orderItemForUpdate.getWhId().equals(orderItemVO.getWhId())) {
|
|
|
- throw new BaseBusinessException(ResponseCodeEnum.OPERATE_FAIL.getCode(), ErrorCodeEnum.ORDER_ISOUT.getMessage());
|
|
|
- }
|
|
|
+ if(orderItemForUpdate.getSkuId()!=null){ //过滤外协品
|
|
|
+ if (!orderItemForUpdate.getWhId().equals(orderItemVO.getWhId())) {
|
|
|
+ throw new BaseBusinessException(ResponseCodeEnum.OPERATE_FAIL.getCode(), ErrorCodeEnum.ORDER_ISOUT.getMessage());
|
|
|
+ }
|
|
|
+ }
|
|
|
}
|
|
|
OrderItem orderItem = orderItemConvert.convertToPo(orderItemVO);
|
|
|
orderItemService.updateByUuid(orderItem);
|
|
|
@@ -758,7 +763,36 @@ public class OrderService extends BaseService<Order> {
|
|
|
accountService.updateMac(macId);
|
|
|
}
|
|
|
/**************************************** 客户收款end ********************************/
|
|
|
+ if(insertOrderItemVOList.size()>0){ //编辑生产出库单
|
|
|
+
|
|
|
+ //开单并出库办理
|
|
|
+ if (orderVO.getOutboundProcessingFlag() != null && orderVO.getOutboundProcessingFlag()) {
|
|
|
+ for (OrderItemVO orderItemVO : insertOrderItemVOList) {
|
|
|
+ orderItemVO.setOutingQty(orderItemVO.getItemQty());
|
|
|
+ orderItemVO.setOutingAmt(orderItemVO.getItemAmt());
|
|
|
+ orderItemVO.setPriceOut(orderItemVO.getFactPrice());
|
|
|
+ orderItemVO.setFromId(orderVO.getOrderId());
|
|
|
+ orderItemVO.setFromItemId(orderItemVO.getItemId());
|
|
|
+ }
|
|
|
+ orderVO.setItemList(insertOrderItemVOList);
|
|
|
+ OutboundVO outboundVO = outBoundDtoConvert.convertToPo(orderVO);
|
|
|
+ outboundVO.setOutDate(LocalDate.now());
|
|
|
+ outboundVO.setOutingQty(orderVO.getSumQuantity());
|
|
|
+ outboundVO.setOutingAmt(orderVO.getFactAmt());
|
|
|
+ outboundVO.setFlgAutoHandle(orderVO.getFlgAutoHandle());
|
|
|
+ outboundVO.setFlgHandleSetting(orderVO.getFlgHandleSetting());
|
|
|
+ outboundVO.setFromId(order.getOrderId());
|
|
|
+ outboundVO.setFromNo(order.getOrderNo());
|
|
|
+ outboundVO.setOutDate(orderVO.getDeliveryDate());
|
|
|
+ outboundVO.setFactAmt(orderVO.getFactAmt());
|
|
|
+ outboundVO.setDiscount(orderVO.getDiscount());
|
|
|
+ outboundVO.setDiscAmt(orderVO.getDiscAmt());
|
|
|
+ outboundVO.setSumAmount(orderVO.getSumAmount());
|
|
|
+
|
|
|
+ outboundSaleOrderService.inventoryOUtBond(outboundVO);
|
|
|
+ }
|
|
|
|
|
|
+ }
|
|
|
return ResponseResultUtil.success();
|
|
|
}
|
|
|
|