Appearance
POST /dm-store/uom/delete
Content-Type: application/json
触发按钮:uomdeleteArr
入参
传递对象:Long[]
| 字段 | 类型 | 必填 | 多选 | 校验规则 | 说明 |
|---|---|---|---|---|---|
| ids | Long[] | 否 | 否 | - | 待删除物料主数据 id 集合 |
出参
传递对象:ResultData
无
前端校验规则
权限校验
├── 批量删除按钮
│ └── v-auth: 'information:uom:delet:popup'
├── 行删除按钮
│ └── code: 'information:uom:delet:popup'
按钮权限控制
└── 批量删除按钮
└── selectionData.length === 0 时禁用
提交拦截校验
├── 批量删除
│ └── 需通过 this.$confirm 确认后才继续删除
└── 单条删除
└── 需通过 this.$confirm 确认后才继续删除后端逻辑
业务流程:查询待删计量单位 -> 查询物料占用情况 -> 校验是否可删除 -> 逻辑删除计量单位
├── 查询待删计量单位
│ └── 查询未删除计量单位:list :215
├── 查询物料占用情况
│ ├── 查询物料主数据:PartMainService.findPartMain :216
│ └── 查询未删除物料:list :653
├── 校验是否可删除
│ └── 按计量单位名称匹配物料引用,存在引用则阻止删除 :218-222
└── 逻辑删除计量单位
└── 逻辑删除:update :227-233
├── 条件
│ ├── id in ids
│ └── isDelete=false
└── 状态变更
└── isDelete -> true后端校验规则
占用/冲突/前置条件校验
└── 生效条件: partMainService.findPartMain 返回非空,且存在物料的 uom 与待删除计量单位 uomName 匹配时,禁止删除:delete :216-223
└── ExceptionCode.EX90149涉及数据库表
| 库名.表名 | mapper.statement | 描述 |
|---|---|---|
| store.uom | UomMapper.LambdaUpdateWrapper.update | 更新 is_delete、update_user、update_time |
| store.part_main | partMainService.findPartMain | partMainService |