Skip to content

POST /dm-store/process/delete

Content-Type: application/json

触发按钮:processdeleteArr

入参

传递对象:Long[]

字段类型必填多选校验规则说明
idsLong[]-待删除物料主数据 id 集合

出参

传递对象:ResultData

前端校验规则

权限校验
├── 批量删除按钮
│   └── v-auth: 'information:process:delet:popup'
└── 行删除按钮
    └── code: 'information:process:delet:popup'
提交拦截校验
├── 批量删除
│   ├── selectionData.length === 0 时按钮禁用
│   ├── 需先通过确认弹窗
│   └── 取消确认后中断删除
└── 单条删除
    ├── 需先通过确认弹窗
    └── 取消确认后中断删除

后端逻辑

业务流程:校验制程是否被线体引用 -> 拦截已被引用的数据删除 -> 批量标记制程为已删除

├── 校验制程引用关系
│   ├── 查询关联线体:LineMapper.searchList :247
│   └── 条件
│       ├── line.is_delete = 0
│       └── process.id in processIds
├── 判断是否允许删除
│   └── 已存在线体引用时终止删除 :249
└── 批量逻辑删除制程
    └── 更新删除状态:ProcessServiceImpl.update :253-259
        ├── 条件
        │   ├── id in ids
        │   └── isDelete = 0
        └── 状态变化
            └── isDelete -> 1

后端校验规则

占用/冲突/前置条件校验
└── 生效条件: 删除制程时,lineMapper.searchList 非空;校验制程是否已被线别数据引用,命中则禁止删除:delete :245-250
    └── ExceptionCode.EX90151

涉及数据库表

库名.表名mapper.statement描述
store.processProcessMapper.LambdaUpdateWrapper.update更新 is_delete、update_user、update_time