资产盘点
这篇解决什么
盘点任务和差异处理单不是同一条流程。读完能对上 asset_stocktake 任务表和 asset_stocktake_adjust 流程 key,不要给盘点任务挂 processDefinitionKey。
示意图:先发任务、派人、实盘。盘盈盘亏再开差异处理审批。
从哪改
| 名称 | 说明 | 仓库路径 |
|---|---|---|
| 盘点任务 | /asset/stocktake,无流程 key | ruoyi-office/yudao-module-asset/.../AssetStocktakeController.java |
| 差异处理 | /asset/stocktake-adjust,key asset_stocktake_adjust(707) | AssetStocktakeAdjustController.java |
| 表 | 任务 / 行 / 执行人 / 差异单 | asset_stocktake、asset_stocktake_item、asset_stocktake_assignee、asset_stocktake_adjust |
| 前端 | 任务、我的盘点、差异 list/info | ruoyi-office-vben/apps/web-antd/src/views/asset/stocktake/、stocktake-adjust/ |
stocktakeMode:1 管理员盘 / 2 全员自助 / 3 混合。范围用 scopeDeptIds / scopeCategoryIds / scopeLocationIds(JSON 列表)。旧字段 scopeIds 只兼容。
行上 checkResult:1 正常 / 2 盘盈 / 3 盘亏 / 4 异常。盘亏实盘状态约定 -1。scanSource:1 手动 / 2 扫码 / 3 RFID;RFID 盘点未做,不要按 3 去找设备接口。
差异单 stocktakeId 回挂任务。审批通过才改卡片(盘亏报废、盘盈建卡等),任务页点完成不会自动改台账。
移动差异处理权限是 asset:stocktake-adjust:query。我的盘点页 stocktake/my-index.vue。
字段
| 名称 | 说明 | 仓库路径 |
|---|---|---|
stocktakeMode | 管理员 / 自助 / 混合 | AssetStocktakeDO |
checkedCount / lossCount / surplusCount | 进度汇总 | 同上 |
checkResult | 行结果 | AssetStocktakeItemDO |
adjustStatus | 行是否已进差异单 | 同上 |
任务没有 Flowable key
asset_stocktake 没有 processInstanceId。要审批的是差异处理 asset_stocktake_adjust。模型绑到任务页会提交失败。
先实盘再开差异
没有 checkResult 为盘盈 / 盘亏的行,差异单明细是空的。不要先提单再补盘。
@RequestMapping("/asset/stocktake")
public class AssetStocktakeController { }
@TableName("asset_stocktake_adjust")
public class AssetStocktakeAdjustDO extends TenantBaseDO { }配置与操作
先在 资产盘点 建任务:选 stocktakeMode、范围(部门 / 分类 / 位置),派人实盘。行上填 checkResult。任务页点完成不会改台账。
盘盈盘亏再开 差异处理 list / info,key 是 asset_stocktake_adjust。没有实盘结果就不要先提单。RFID scanSource=3 未做。

本系统截图:资产 → 资产盘点。任务没有 Flowable key。

本系统截图:差异处理 info。通过后才改卡片。
