Appearance
POST /dm-store/supplier/delete
Content-Type: application/json
触发按钮:supplierdeleteArr
入参
传递对象:Long[]
| 字段 | 类型 | 必填 | 多选 | 校验规则 | 说明 |
|---|---|---|---|---|---|
| ids | Long[] | 否 | 否 | - | 待删除物料主数据 id 集合 |
出参
传递对象:ResultData
无
前端校验规则
前端校验
├── 权限校验
│ ├── 批量删除按钮权限
│ │ └── v-auth: 'information:supplier:delet:popup'
│ └── 行内删除按钮权限
│ └── v-auth: 'information:supplier:delet:popup'
└── 提交拦截校验
├── 批量删除
│ ├── selectionData.length === 0 时按钮禁用
│ └── 需二次确认;取消确认后不提交
└── 单条删除
└── 需二次确认;取消确认后不提交后端逻辑
业务流程:校验待删供应商未被物料首选供应商占用后,将供应商记录批量标记为删除。
├── 查询待删供应商
│ └── SupplierServiceImpl.list :283
│ └── 条件:
│ ├── id in ids
│ └── isDelete=0
├── 查询物料引用关系
│ └── 查询物料主数据:PartMainService.findPartMain :284
│ ├── 查询未删除物料:list :653
│ │ └── 条件:
│ │ └── isDelete=0
│ └── 查询未删除供应商:SupplierService.findAllSupplier :655
│ └── list :373
│ └── 条件:
│ └── isDelete=0
├── 校验供应商未被首选供应商引用 :285-290
│ └── 条件:
│ └── preferredSupplier = supplierName
└── 逻辑删除供应商 :295-301
└── 更新供应商:update :295-301
└── 状态变更:
└── isDelete: 0 -> 1后端校验规则
后端校验
└── 占用校验
└── 校验待删除供应商是否已被物料首选供应商引用 :285-290
└── 异常码: ExceptionCode.EX90150涉及数据库表
| 库名.表名 | mapper.statement | 描述 |
|---|---|---|
| store.supplier | SupplierMapper.LambdaUpdateWrapper.update | 更新 is_delete、update_user、update_time |
| store.part_main | partMainService.findPartMain | partMainService |