Skip to content

POST /dm-store/uom/delete

Content-Type: application/json

触发按钮:uomdeleteArr

入参

传递对象:Long[]

字段类型必填多选校验规则说明
idsLong[]-待删除物料主数据 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.uomUomMapper.LambdaUpdateWrapper.update更新 is_delete、update_user、update_time
store.part_mainpartMainService.findPartMainpartMainService