Appearance
POST /dm-device/repairWorkOrders/page
Content-Type: application/json
触发按钮:pageAjax
入参
传递对象:RepairWorkOrdersQueryVo
| 字段 | 类型 | 必填 | 多选 | 校验规则 | 说明 |
|---|---|---|---|---|---|
| field | String | 否 | 否 | - | - |
| order | String | 否 | 否 | - | - |
| factoryNo | String | 否 | 否 | - | - |
| Ids | Set<Long> | 否 | 否 | - | id集合 |
| workOrderNo | String | 否 | 否 | - | 工单单号 |
| deviceCode | String | 否 | 否 | - | 设备识别码 |
| deviceNo | String | 否 | 否 | - | 设备代号 |
| lineNo | String | 否 | 否 | - | 线体代号 |
| urgencyDegree | Integer | 否 | 否 | - | 紧急程度 |
| orderStatus | Integer | 否 | 否 | - | 工单状态 |
| signInTimeStart | Date | 否 | 否 | - | 签到时间-开始 |
| signInTimeEnd | Date | 否 | 否 | - | 签到时间-结束 |
| repairTimeStart | Date | 否 | 否 | - | 维修时间-开始 |
| repairTimeEnd | Date | 否 | 否 | - | 维修时间-结束 |
| deptList | List<String> | 否 | 是 | - | 部门代号 |
| excutorNo | String | 否 | 否 | - | - |
| queryData | String | 否 | 否 | - | app维修工单搜索检索条件 |
| statusSet | Set | 否 | 否 | - | - |
| productLineSet | Set<String> | 否 | 否 | - | 产品线集合 |
| lineVoList | Set<String> | 否 | 否 | - | 线体集合 |
| isStat | Integer | 否 | 否 | - | 是否统计类接口 1、是 其他、否 |
| deviceTypeNames | List<String> | 否 | 是 | - | 设备种类集合 |
| deviceClassifys | List<Integer> | 否 | 是 | - | - |
| deviceTypeNos | List<String> | 否 | 是 | - | - |
| deviceTypeVoList | List<DeviceTypeVo> | 否 | 是 | - | - |
| deviceNos | List<String> | 否 | 是 | - | - |
| secondsDiff | int | 否 | 否 | - | - |
| issueCode | String | 否 | 否 | - | - |
| issueName | String | 否 | 否 | - | - |
| issueClassify | Long | 否 | 否 | - | - |
| deviceClassify | Integer | 否 | 否 | - | - |
| deviceTypeName | String | 否 | 否 | - | - |
| deviceTypeNo | String | 否 | 否 | - | - |
出参
传递对象:ResultData,前端实际消费的是 data 中的 rows / total。<rows + total>
json
{
"id": "",
"partNo": "",
"partCode": "",
"partName": "",
"bigCategory": "",
"...": "..."
}前端校验规则
表单校验
├── workOrderNo
│ └── 输入值自动 trim
├── deviceCode
│ └── 输入值自动 trim
├── productLineSet
│ └── 仅支持多选
├── reportTime
│ ├── 仅支持日期范围
│ └── 值格式:yyyy-MM-dd
├── signInTime
│ ├── 仅支持日期范围
│ └── 值格式:yyyy-MM-dd
└── repairTime
├── 仅支持日期范围
└── 值格式:yyyy-MM-dd后端逻辑
业务流程:按权限限定可见范围 -> 分页查询维修工单 -> 补充设备图片 -> 标记待确认工单 -> 补充问题与措施信息
├── 按权限限定可见范围
│ ├── 统计查询时判断是否具备全量查看权限:UserClient.queryUserReportFlag :117
│ │ ├── UserServiceImpl.queryUserReportFlag :402-407
│ │ └── UserMapper.queryUserReportFlag :275-279
│ └── 无全量权限时按当前用户部门过滤
│ ├── 查询当前用户可见部门:DeptClient.queryDeptByCurrentUser :1114
│ │ └── DepartmentServiceImpl.queryDeptByCurrentUser :288-295
│ └── 部门范围
│ ├── 先取用户归属部门
│ └── 无归属部门时放开到当前工厂全部部门
├── 分页查询维修工单
│ ├── RepairWorkOrdersMapper.selectPage :133
│ └── 查询范围
│ ├── repair_work_orders 关联 device_main、device_type :5-24
│ ├── 仅查询未删除工单 :25-28
│ ├── 按当前工厂、部门范围过滤 :29-33,76-80
│ └── 支持工单号、设备编码、设备代号、线体、紧急程度、工单状态、时间区间、执行人、产品线、ID 集合检索 :34-102
├── 补充设备图片
│ ├── 批量查询设备附件:FileClient.listFile :144
│ │ ├── FileController.listFile :103-105
│ │ └── FileServiceImpl.selectFiles :134-147
│ └── 按 deviceId 关联设备首张图片
├── 标记待确认工单
│ └── 条件
│ ├── 工单状态 = 3
│ └── designatedConfirmNo = 当前用户 :158-166
└── 补充问题与措施信息
├── 查询工单详情:RepairWorkOrdersServiceImpl.getRepairWorkOrdersById :169
│ └── RepairWorkOrdersMapper.selectRepairWorkOrdersById :111-135
└── 回填字段
├── 问题分类 / 问题描述 / 问题代码
└── 最终结论、临时措施、长久措施及责任/完成时间后端校验规则
条件业务约束
└── 分页查询按报表权限限制部门查询范围(生效条件:isStat=1 且 queryUserReportFlag 返回空、空串或非"1";或 isStat≠1。条件表达式:vo.setDeptList(getDeptList())):pages :115-127
└── 部门范围取当前登录人部门及下级部门:getDeptList :1113-1125涉及数据库表
| 库名.表名 | mapper.statement | 描述 |
|---|---|---|
| repair_work_orders | RepairWorkOrdersMapper.selectPage | 按筛选条件分页查询order数据 |
| 远程服务数据 | userClient.queryUserReportFlag | userClient |
| repair_work_orders_mapper | repairWorkOrdersMapper.selectPage | repairWorkOrdersMapper |
| 附件数据 | fileClient.listFile | 批量查询附件并补充图片地址 |