Skip to content

GET /dm-store/personalPartReturnOrders/cancel

触发按钮:无

入参

出参

传递对象:ResultData

前端校验规则

权限校验
└── 取消按钮权限
    └── v-auth: 'personalInventory:giveBack:cancel:popup'
按钮权限控制
└── cancel
    └── disabled: row.orderStatus != 1
提交拦截校验
└── cancel
    └── 二次确认弹窗通过后才允许取消;取消确认时中断提交

后端逻辑

业务流程:查询退库单与关联入库单 -> 校验单据处于可撤销状态 -> 同步作废退库单和入库单

├── 查询退库单
│   ├── 查询退库单:getOne :387-388
│   └── 条件
│       ├── returnOrderNo
│       └── isDelete=0
├── 查询关联入库单
│   ├── 查询入库单:getOne :395-396
│   └── 条件
│       ├── returnOrderNo
│       └── isDelete=0
├── 校验可撤销状态
│   ├── 退库单状态必须为 1 :392-394
│   └── 入库单状态必须为 1 :400-401
└── 同步作废单据
    ├── 更新退库单状态为 99
    │   └── updateById :403-407
    └── 更新入库单状态为 99
        └── StoreInOrdersService.updateById :404-408

后端校验规则

数据存在性校验
├── 校验归还单是否存在:按 returnOrderNo=orderNo 且 isDelete=false 查询为空则拦截 :387-391
│   └── ExceptionCode.EX100007
└── 校验关联入库单是否存在:按 returnOrderNo=orderNo 且 isDelete=false 查询为空则拦截 :395-399
    └── ExceptionCode.EX100007
状态类校验
├── 校验归还单可取消状态:当 one.orderStatus != 1 时不允许取消 :392-394
│   └── ExceptionCode.EX500028
└── 校验关联入库单可取消状态:当 inOrder.storeInStatus != 1 时不允许取消 :400-402
    └── ExceptionCode.EX500028

涉及数据库表

库名.表名mapper.statement描述
store.store_in_ordersstoreInOrdersService.updateByIdstoreInOrdersService