Skip to content

POST /dm-store/storeInOrderDetail/submitStoreBatch

Content-Type: application/json

触发按钮:submitStoreBatchAjax

入参

出参

传递对象:ResultData

前端校验规则

条件校验
├── 批量提交按钮
│   └── selectionData.length === 0 时 disabled
└── inStore(行内提交按钮)
    └── 仅在 row.storeInStatus == 2 时显示
提交拦截校验
└── submitStoreInaArr
    ├── 仅允许提交 storeInStatus == 2 的选中记录
    └── 命中 item.storeInStatus !== 2 时弹出错误提示并 return

后端逻辑

业务流程:查询待提交入库单 -> 更新入库单为已完成 -> 按物料控制类型更新库存台账与明细 -> 执行借还平账 -> 记录入库交易

├── 查询待提交入库单
│   └── 查询入库明细:StoreInOrderDetailMapper.searchDetail :1042
├── 更新入库单为已完成
│   └── 批量更新入库单状态:StoreInOrdersService.updateBatch :1059
│       └── updateBatchById :241
├── 按物料控制类型更新库存台账与明细
│   └── 更新库存台账与明细:StoreInOrderDetailService.updateStockMain :956
│       ├── 查询现有库存台账:StockMainService.findAllList :1678
│       ├── 校验同库位仅一种物料 :1679-1685
│       ├── 已有台账
│       │   ├── 普通件累计库存
│       │   │   ├── 更新库存台账:updateById :1710
│       │   │   └── 更新或新增库存明细
│       │   │       ├── updateBatchById :1716
│       │   │       └── StockDetailService.saveOrUpdate :1721
│       │   ├── 序列件入账
│       │   │   ├── 新增库存明细:StockDetailService.save :1790
│       │   │   └── 回写库存台账统计:StockMainService.updateBatch :1828
│       │   └── 批次件入账
│       │       ├── 已有箱号累计
│       │       │   ├── 回写库存台账:StockMainService.updateBatchById :1832
│       │       │   └── 回写库存明细:StockDetailService.updateBatchById :1835
│       │       └── 缺失箱号补明细后回写统计
│       │           ├── 新增库存明细:StockDetailService.save :1790
│       │           └── 回写库存台账统计:StockMainService.updateBatch :1828
│       └── 新增台账及明细
│           └── 按控制类型新增库存台账及明细:StockMainService.save :1843
│               ├── 普通件生成台账编号:RedisService.getCommonSeqNo :1296-1297
│               ├── 序列件生成台账编号:RedisService.getCommonSeqNo :1343-1344
│               ├── 批次件生成台账编号:RedisService.getCommonSeqNo :1387-1388
│               ├── 保存库存台账:saveOrUpdateBatch :1324
│               ├── 保存库存台账:saveOrUpdateBatch :1368
│               ├── 保存库存台账:saveOrUpdateBatch :1412
│               ├── 保存库存明细:StockDetailService.save :1327
│               ├── 保存库存明细:StockDetailService.save :1370
│               └── 保存库存明细:StockDetailService.save :1414
├── 执行借还平账
│   └── 平账处理:StockDetailService.clearAccount :1847
│       ├── 查询未平账借还记录:StoreBorrowGiveBackRecordService.list :156-158
│       ├── 查询触发产线库存台账:StockMainMapper.getStockMainList :175
│       ├── 按物料控制类型调账
│       │   ├── 普通件调整明细:saveOrUpdateBatch :231
│       │   ├── 序列件转移明细
│       │   │   ├── removeByIds :250
│       │   │   └── saveBatch :255
│       │   └── 批次件扣减明细:removeById :265
│       ├── 更新转入转出台账:updateBatchById :315
│       ├── 删除空明细:removeByIds :323
│       └── 删除已平账记录:StoreBorrowGiveBackRecordService.removeByIds :328
└── 记录入库交易
    └── 保存交易记录:StoreTransactionRecordService.save :982
        └── saveOrUpdateBatch :133

后端校验规则

数据存在性校验
└── 校验待提交入库单明细是否存在:searchList 为空则拒绝提交:updateStockMain :1666-1668
    └── ExceptionCode.EX100007
占用/冲突/前置条件校验
└── 生效条件:按库位分组处理入库数据;条件表达式:同一库位下去重后的物料编码数量不等于 1 时拒绝提交:updateStockMain :1680-1685
    └── ExceptionCode.EX90210

涉及数据库表