| | |
| | | import cn.iocoder.yudao.module.mes.controller.admin.wm.materialstock.vo.MesWmMaterialStockAdjustReqVO; |
| | | import cn.iocoder.yudao.module.mes.controller.admin.wm.materialstock.vo.MesWmMaterialStockFreezeReqVO; |
| | | import cn.iocoder.yudao.module.mes.controller.admin.wm.materialstock.vo.MesWmMaterialStockListReqVO; |
| | | import cn.iocoder.yudao.module.mes.controller.admin.wm.materialstock.vo.MesWmMaterialStockMoveReqVO; |
| | | import cn.iocoder.yudao.module.mes.controller.admin.wm.materialstock.vo.MesWmMaterialStockPageReqVO; |
| | | import cn.iocoder.yudao.module.mes.controller.admin.wm.materialstock.vo.MesWmStockSummaryRespVO; |
| | | import cn.iocoder.yudao.module.mes.dal.dataobject.wm.materialstock.MesWmMaterialStockDO; |
| | | import jakarta.validation.Valid; |
| | | |
| | |
| | | Long batchId, String batchCode, Long vendorId, LocalDateTime receiptTime); |
| | | |
| | | /** |
| | | * 按组合键查找库存记录(只查不创建) |
| | | * |
| | | * @param itemId 物料编号 |
| | | * @param warehouseId 仓库编号 |
| | | * @param locationId 库区编号 |
| | | * @param areaId 库位编号 |
| | | * @param batchId 批次编号 |
| | | * @param vendorId 供应商编号 |
| | | * @return 库存记录(不存在返回 null) |
| | | */ |
| | | MesWmMaterialStockDO getMaterialStockByCompositeKey(Long itemId, Long warehouseId, Long locationId, Long areaId, |
| | | Long batchId, Long vendorId); |
| | | |
| | | List<MesWmMaterialStockDO> getMaterialStockListByItemAndBatch(Long itemId, Long batchId); |
| | | |
| | | /** |
| | | * 更新库存数量 |
| | | * |
| | | * @param id 库存记录编号 |
| | |
| | | * @param checkFlag 是否校验库存充足(为 true 且扣减后为负则报错) |
| | | */ |
| | | void updateMaterialStockQuantity(Long id, BigDecimal quantity, boolean checkFlag); |
| | | |
| | | void updateMaterialStockState(Long id, Integer stockState); |
| | | |
| | | /** |
| | | * 按品种维度汇总库存数量(内存聚合,支持 stockState 等过滤条件) |
| | | * |
| | | * @param reqVO 过滤条件 |
| | | * @return 品种汇总列表 |
| | | */ |
| | | List<MesWmStockSummaryRespVO> getStockSummaryByItem(MesWmMaterialStockListReqVO reqVO); |
| | | |
| | | /** |
| | | * 按批次维度汇总库存数量(内存聚合,支持 stockState 等过滤条件) |
| | | * |
| | | * @param reqVO 过滤条件 |
| | | * @return 批次汇总列表 |
| | | */ |
| | | List<MesWmStockSummaryRespVO> getStockSummaryByBatch(MesWmMaterialStockListReqVO reqVO); |
| | | |
| | | /** |
| | | * 按仓库维度汇总库存数量(内存聚合,支持 stockState 等过滤条件) |
| | | * |
| | | * @param reqVO 过滤条件 |
| | | * @return 仓库汇总列表 |
| | | */ |
| | | List<MesWmStockSummaryRespVO> getStockSummaryByWarehouse(MesWmMaterialStockListReqVO reqVO); |
| | | |
| | | /** |
| | | * 按仓库批次更新库存状态(用于种子质检合格后,将暂存库整批转为合格库) |
| | | * |
| | | * @param batchId 仓库批次ID |
| | | * @param toState 目标库存状态 |
| | | * @param fromState 原库存状态(限定只更新该状态的记录) |
| | | * @return 影响行数 |
| | | */ |
| | | int updateStockStateByBatchId(Long batchId, Integer toState, Integer fromState); |
| | | |
| | | /** |
| | | * 库位混放规则校验 |
| | |
| | | */ |
| | | Long adjustMaterialStockOut(@Valid MesWmMaterialStockAdjustReqVO reqVO); |
| | | |
| | | /** |
| | | * 库存移库 |
| | | * |
| | | * @param reqVO 移库请求 |
| | | */ |
| | | void moveMaterialStock(@Valid MesWmMaterialStockMoveReqVO reqVO); |
| | | |
| | | } |