# 我的工单功能模块描述和接口说明 ## 1. 我创建的工单 (listMyCreate) ### 功能描述 该功能模块用于展示当前登录用户创建的所有工单,包括维修工单和维保工单。系统会根据用户的创建人信息进行过滤,只显示由该用户创建的工单。 ### 接口说明 - **接口地址**: `/gxt/orderMine/listMyCreate` - **请求方法**: GET - **接口描述**: 查询我创建的工单列表(合并维修工单和维保工单) - **请求参数**: - `workOrderProjectNo` (String, 可选): 工单编码,用于模糊查询 - `workOrderStatus` (String, 可选): 工单状态 - `gxtCenter` (String, 可选): 维保中心 - `pcsStationName` (String, 可选): 场站名称 - `pcsDeviceName` (String, 可选): 风机编号 - `pageNum` (Integer, 可选): 页码 - `pageSize` (Integer, 可选): 每页大小 - **响应数据**: - `code` (Integer): 状态码 - `msg` (String): 返回消息 - `total` (Long): 总记录数 - `rows` (Array): 工单列表数据 - `orderType` (Integer): 工单类型(1-维修工单,2-维保工单) - `id` (Long): 工单ID - `workOrderProjectNo` (String): 工单编码 - `workOrderStatus` (String): 工单状态 - `gxtCenter` (String): 维保中心 - `pcsStationName` (String): 场站名称 - `pcsDeviceName` (String): 风机编号 - `brand` (String): 风机品牌 - `model` (String): 风机型号 - `createTime` (Date): 创建时间 ### 业务逻辑 1. 系统根据当前登录用户的用户名设置查询条件中的创建人字段 2. 对于非管理员用户,过滤掉状态为"invalid"(作废)的工单 3. 支持多条件组合查询 4. 返回合并后的维修工单和维保工单列表,按创建时间倒序排列 ## 2. 我处理的工单 (listMyDone) ### 功能描述 该功能模块用于展示当前登录用户处理过的所有工单。系统通过查询工单流转记录表来确定处理人员,只要工单流转记录中有当前用户的操作记录,就会被展示在此列表中。 ### 接口说明 - **接口地址**: `/gxt/orderMine/listMyDone` - **请求方法**: GET - **接口描述**: 查询我处理的工单列表(合并维修工单和维保工单) - **请求参数**: - `workOrderProjectNo` (String, 可选): 工单编码,用于模糊查询 - `workOrderStatus` (String, 可选): 工单状态 - `gxtCenter` (String, 可选): 维保中心 - `pcsStationName` (String, 可选): 场站名称 - `pcsDeviceName` (String, 可选): 风机编号 - `pageNum` (Integer, 可选): 页码 - `pageSize` (Integer, 可选): 每页大小 - **响应数据**: - `code` (Integer): 状态码 - `msg` (String): 返回消息 - `total` (Long): 总记录数 - `rows` (Array): 工单列表数据 - `orderType` (Integer): 工单类型(1-维修工单,2-维保工单) - `id` (Long): 工单ID - `workOrderProjectNo` (String): 工单编码 - `workOrderStatus` (String): 工单状态 - `gxtCenter` (String): 维保中心 - `pcsStationName` (String): 场站名称 - `pcsDeviceName` (String): 风机编号 - `brand` (String): 风机品牌 - `model` (String): 风机型号 - `acceptTime` (Date): 接单时间 - `acceptUserName` (String): 接单人姓名 - `realStartTime` (Date): 实际开始时间 - `realEndTime` (Date): 实际结束时间 - `teamLeaderName` (String): 工作负责人姓名 ### 业务逻辑 1. 系统根据当前登录用户的用户ID查询工单流转记录表 2. 对于维修工单,查询`gxt_repair_order_flow`表中`operator_id`等于当前用户ID的记录 3. 对于维保工单,查询`gxt_work_order_flow`表中`operator_id`等于当前用户ID的记录 4. 对于非管理员用户,过滤掉状态为"invalid"(作废)的工单 5. 返回合并后的维修工单和维保工单列表,按创建时间倒序排列 ## 3. 我相关的工单 (listMyRelate) ### 功能描述 该功能模块用于展示当前登录用户相关的所有工单。系统通过查询工单人员关联表来确定相关人员,只要工单人员关联表中有当前用户的记录,就会被展示在此列表中。 ### 接口说明 - **接口地址**: `/gxt/orderMine/listMyRelate` - **请求方法**: GET - **接口描述**: 查询我相关的工单列表(合并维修工单和维保工单) - **请求参数**: - `workOrderProjectNo` (String, 可选): 工单编码,用于模糊查询 - `workOrderStatus` (String, 可选): 工单状态 - `gxtCenter` (String, 可选): 维保中心 - `pcsStationName` (String, 可选): 场站名称 - `pcsDeviceName` (String, 可选): 风机编号 - `pageNum` (Integer, 可选): 页码 - `pageSize` (Integer, 可选): 每页大小 - **响应数据**: - `code` (Integer): 状态码 - `msg` (String): 返回消息 - `total` (Long): 总记录数 - `rows` (Array): 工单列表数据 - `orderType` (Integer): 工单类型(1-维修工单,2-维保工单) - `id` (Long): 工单ID - `workOrderProjectNo` (String): 工单编码 - `workOrderStatus` (String): 工单状态 - `gxtCenter` (String): 维保中心 - `pcsStationName` (String): 场站名称 - `pcsDeviceName` (String): 风机编号 - `brand` (String): 风机品牌 - `model` (String): 风机型号 - `teamLeaderName` (String): 工作负责人姓名 - `workGroupMemberName` (String): 工作组成员姓名 ### 业务逻辑 1. 系统根据当前登录用户的用户ID查询工单人员关联表 2. 对于维修工单,查询`gxt_repair_order_person`表中`user_id`等于当前用户ID的记录 3. 对于维保工单,查询`gxt_work_order_person`表中`user_id`等于当前用户ID的记录 4. 对于非管理员用户,过滤掉状态为"invalid"(作废)的工单 5. 返回合并后的维修工单和维保工单列表,按创建时间倒序排列 ## 4. 我的待办工单 (listMyTodo) ### 功能描述 该功能模块用于展示当前登录用户的待办工单列表。系统根据用户的权限和工单状态进行双重过滤,只展示用户有权限处理且状态符合要求的工单。 ### 接口说明 - **接口地址**: `/gxt/orderMine/listMyTodo` - **请求方法**: GET - **接口描述**: 查询我的待办工单列表(合并维修工单和维保工单) - **请求参数**: - `workOrderProjectNo` (String, 可选): 工单编码,用于模糊查询 - `workOrderStatus` (String, 可选): 工单状态 - `gxtCenter` (String, 可选): 维保中心 - `pcsStationName` (String, 可选): 场站名称 - `pcsDeviceName` (String, 可选): 风机编号 - `pageNum` (Integer, 可选): 页码 - `pageSize` (Integer, 可选): 每页大小 - **响应数据**: - `code` (Integer): 状态码 - `msg` (String): 返回消息 - `total` (Long): 总记录数 - `rows` (Array): 工单列表数据 - `orderType` (Integer): 工单类型(1-维修工单,2-维保工单) - `id` (Long): 工单ID - `workOrderProjectNo` (String): 工单编码 - `workOrderStatus` (String): 工单状态 - `gxtCenter` (String): 维保中心 - `pcsStationName` (String): 场站名称 - `pcsDeviceName` (String): 风机编号 - `brand` (String): 风机品牌 - `model` (String): 风机型号 - `assignTime` (Date): 派单时间 - `assignUserName` (String): 派单人姓名 - `acceptTime` (Date): 接单时间 - `acceptUserName` (String): 接单人姓名 - `teamLeaderName` (String): 工作负责人姓名 ### 业务逻辑 1. 系统根据当前登录用户的权限进行数据权限过滤 2. 对于维修工单,根据用户权限和工单状态进行过滤: - `assigned`状态且有接单权限 - `to_finish`状态且有结单权限且是工作负责人 - `to_approve`状态且有审批权限 - `completed`状态且有复运权限 - `to_issue`、`accept_return`状态且有编辑权限,且当前用户是创建人本部门的人 3. 对于维保工单,根据用户权限和工单状态进行过滤: - `assigned`状态且有接单权限 - `processing`或`to_finish`状态且有结单权限且是工作负责人 - `to_approve`状态且有审批权限 - `completed`状态且有复运权限 - `to_issue`状态且有编辑权限 4. 对于非管理员用户,过滤掉状态为"invalid"(作废)的工单 5. 返回合并后的维修工单和维保工单列表,按创建时间倒序排列