库存调拨、库存盘点
这篇解决什么
仓库之间怎么搬货、账面和实盘对不上怎么调。读完能对上 erp_stock_move_item 的调出 / 调入仓,以及盘点行 count = actualCount - stockCount。
默认端口 48080。先开模块见 ERP 功能设计。结存见 产品库存。
示意图:调拨一次审核写调出 + 调入两条流水。盘点只在盈亏不为 0 时写。
从哪改
| 名称 | 说明 | 仓库路径 |
|---|---|---|
| 调拨 | @RequestMapping("/erp/stock-move") | ruoyi-office/yudao-module-erp/.../controller/admin/stock/ErpStockMoveController.java |
| 调拨表 | erp_stock_move / erp_stock_move_item | ErpStockMoveDO |
| 盘点 | @RequestMapping("/erp/stock-check") | ErpStockCheckController |
| 盘点表 | erp_stock_check / erp_stock_check_item | ErpStockCheckDO |
| 管理端 | 调拨 / 盘点两页 | ruoyi-office-vben/apps/web-antd/src/views/erp/stock/move/、.../check/ |
官方菜单:库存调拨 2624(/erp/stock/move),库存盘点 2631(/erp/stock/check)。单号前缀调拨 QCDB,盘点 QCPD。
审核同样是 PUT /update-status,10 / 20,不是流程待办。
调拨行
表头没有仓库。仓库在明细:fromWarehouseId 调出,toWarehouseId 调入。审核时 ErpStockMoveServiceImpl 写两条记录。
| 名称 | 说明 | 仓库路径 |
|---|---|---|
fromWarehouseId | 调出仓 | ErpStockMoveItemDO |
toWarehouseId | 调入仓 | 同上 |
count | 调拨数量 | 同上 |
| 调出类型 | MOVE_OUT = 32,作废 33 | ErpStockRecordBizTypeEnum |
| 调入类型 | MOVE_IN = 30,作废 31 | 同上 |
两个仓必须先在仓库页建好。调出仓结存不够,审核会按库存服务报错,不要自己改 erp_stock。
盘点行
页面选仓库、产品后先拉账面 stockCount,再填实盘 actualCount。盈亏 count = actualCount - stockCount。
| 名称 | 说明 | 仓库路径 |
|---|---|---|
stockCount | 账面,来自当前 erp_stock | ErpStockCheckItemDO |
actualCount | 实盘 | 同上 |
count | 盈亏,前端按实盘 − 账面 | 同上 |
| 盘盈 | count > 0 → 类型 40 | CHECK_MORE_IN |
| 盘亏 | count < 0 → 类型 42 | CHECK_LESS_OUT |
count == 0 不写流水。反审核用 41 / 43 把符号反过来。
盈亏符号看页面
管理端 item-form.vue 用 actualCount - stockCount。count 大于 0 加库存(盘盈),小于 0 减库存(盘亏)。
示意图:按 ErpStockCheckServiceImpl#updateStockCheckStatus。
配置与操作
菜单:ERP → 库存 → 库存调拨(2624,/erp/stock/move),库存盘点 2631(/erp/stock/check)。
调拨在明细选 fromWarehouseId / toWarehouseId。盘点先拉账面 stockCount,再填实盘 actualCount。审核同样 PUT /update-status,ErpAuditStatus 的 10 / 20,不是 Flowable。
调出仓结存不够不要手改 erp_stock。盘点盈亏为 0 不写流水。
