fix(oms):修改预约确认的单号生成

This commit is contained in:
zhaoqing
2026-07-22 20:14:19 +08:00
parent effa681709
commit e2f5896be2
2 changed files with 15 additions and 0 deletions
@@ -18,6 +18,7 @@ import com.mhd.oms.domain.reservationInMaterialDetail.repository.facade.IReserva
import com.mhd.oms.domain.reservationInMaterialDetail.repository.todo.InventoryAdjustmentRecordPO;
import com.mhd.oms.domain.reservationStockInOrder.entity.ReservationStockInOrder;
import com.mhd.oms.domain.reservationStockInOrder.repository.facade.IReservationStockInOrderService;
import com.mhd.oms.domain.reservationStockInOrder.service.ReservationStockInOrderDomainService;
import com.mhd.oms.domain.reservationStockInOrder.repository.po.MaterialBaseInfoPO;
import com.mhd.oms.domain.reservationStockInOrder.repository.po.MaterialGoodsRulePO;
import com.mhd.oms.domain.reservationStockInOrder.repository.po.MaterialWarehouseControlPO;
@@ -78,6 +79,8 @@ public class ReserveStockInOrderDomainService {
private IReservationStockInOrderService reservationStockInOrderService;
@Autowired
private IReservationInMaterialDetailService reservationInMaterialDetailService;
@Autowired
private ReservationStockInOrderDomainService reservationStockInOrderDomainService;
/**
* 分页查询入库单列表
@@ -488,6 +491,10 @@ public class ReserveStockInOrderDomainService {
}
BigDecimal quantity = materialDetailList.stream().map(ReserveInMaterialDetail::getReserveQuantity).filter(Objects::nonNull).reduce(BigDecimal.ZERO, BigDecimal::add);
reservationStockInOrder.setQuantity(quantity);
// 生成业务单号,防止与已生成的入库业务单号重复
String newOrderNumber = reservationStockInOrderDomainService.generateReserveOrderNumber();
reservationStockInOrder.setInOrderNumber(newOrderNumber);
reservationStockInOrder.setBusinessOrderNo(newOrderNumber);
reservationStockInOrderService.save(reservationStockInOrder);
reservationInMaterialDetailService.saveBatch(inMaterialDetailList);
return update;
@@ -16,6 +16,7 @@ import com.mhd.oms.domain.reservationStockInOrder.entity.ReservationStockInOrder
import com.mhd.oms.domain.reservationStockInOrder.repository.po.MaterialBaseInfoPO;
import com.mhd.oms.domain.reservationStockOutOrder.entity.ReservationStockOutOrder;
import com.mhd.oms.domain.reservationStockOutOrder.repository.facade.IReservationStockOutOrderService;
import com.mhd.oms.domain.reservationStockOutOrder.service.ReservationStockOutOrderDomainService;
import com.mhd.oms.domain.reserveInMaterialDetail.entity.ReserveInMaterialDetail;
import com.mhd.oms.domain.reserveOutMaterialDetail.entity.ReserveOutMaterialDetail;
import com.mhd.oms.domain.reserveOutMaterialDetail.repository.facade.IReserveOutMaterialDetailService;
@@ -75,6 +76,9 @@ public class ReserveStockOutOrderDomainService {
@Autowired
private ReserveStockOutOrderMapper stockOutOrderMapper;
@Autowired
private ReservationStockOutOrderDomainService reservationStockOutOrderDomainService;
/**
* 分页查询出库单列表
*/
@@ -302,6 +306,10 @@ public class ReserveStockOutOrderDomainService {
Long shipperId = reservationStockOutOrder.getShipperId();
String jsbz = reservationStockInOrderMapper.getJsbz(shipperId);
reservationStockOutOrder.setSettlementCurrency(jsbz);
// 生成出库业务单号,防止与已生成的出库业务单号重复
String newOrderNumber = reservationStockOutOrderDomainService.generateReserveOrderNumber();
reservationStockOutOrder.setOutOrderNumber(newOrderNumber);
reservationStockOutOrder.setBusinessOrderNo(newOrderNumber);
reservationStockOutOrderService.save(reservationStockOutOrder);
String outOrderNumber = reservationStockOutOrder.getOutOrderNumber();
List<ReserveOutMaterialDetail> materialDetailList = outMaterialDetailService.list(new QueryWrapper<ReserveOutMaterialDetail>().lambda().eq(ReserveOutMaterialDetail::getOutOrderNumber, outOrderNumber));