30 KiB
安全责任清单 - 前端联调接口文档
基础路径:
/{gateway}(gateway 配置值为safetyDutyList,即实际前缀为/safetyDutyList)通用响应结构(COLA框架):
PageResponse<T>:分页响应,包含data(列表)、totalCount(总数)、pageSize、pageIndexSingleResponse<T>:单对象响应,包含dataMultiResponse<T>:列表响应,包含dataResponse:无数据响应,仅包含success、errCode、errMessage
一、安全责任清单(TaskListController)
1.1 获取任务清单列表
- URL:
POST /safetyDutyList/taskList/list - Content-Type:
application/json
请求参数:
| 字段 | 类型 | 必填 | 说明 |
|---|---|---|---|
| pageIndex | Integer | 否 | 页码(默认1) |
| pageSize | Integer | 否 | 每页条数(默认10) |
| createCorpId | Long | 否 | 创建公司ID |
| executeCorpId | Long | 否 | 执行公司ID |
| executeUserId | Long | 否 | 执行人员ID |
| taskListName | String | 否 | 清单名称(模糊查询) |
| taskLevel | Integer | 否 | 任务级别:1-企业级 2-部门级 3-班组级 |
| feedbackStatus | Integer | 否 | 反馈状态:1-正常 2-异常 |
| switchFlag | Integer | 否 | 开启/关闭:0-关 1-开 |
| menuPath | String | 否 | 菜单路径 |
请求示例:
{
"pageIndex": 1,
"pageSize": 10,
"taskListName": "安全",
"taskLevel": 1
}
响应数据:PageResponse<TaskListCO>
| 字段 | 类型 | 说明 |
|---|---|---|
| id | Long | 主键 |
| taskListId | String | 清单UUID(业务主键) |
| taskListName | String | 清单名称 |
| taskLevel | Integer | 任务级别:1-企业级 2-部门级 3-班组级 |
| responsibilityPost | String | 责任岗位 |
| switchFlag | Integer | 开启/关闭:0-关 1-开 |
| status | Integer | 状态:1-进行中 2-已完成 3-已关闭 |
| periodStartTime | String | 执行周期开始时间(yyyy-MM-dd HH:mm:ss) |
| periodEndTime | String | 执行周期结束时间(yyyy-MM-dd HH:mm:ss) |
| ratingScore | BigDecimal | 清单分数 |
| ratingUserId | Long | 评分人ID |
| ratingUserName | String | 评分人姓名 |
| ratingDepartmentId | Long | 评分部门ID |
| ratingDepartmentName | String | 评分部门名称 |
| issueStatus | Integer | 下发状态:0-未下发 1-已下发 |
| issueTime | String | 下发时间(yyyy-MM-dd HH:mm:ss) |
| executeCorpId | Long | 执行公司ID |
| executeCorpName | String | 执行公司名称 |
| executeDepartmentId | Long | 执行部门ID |
| executeDepartmentName | String | 执行部门名称 |
| executeUserId | Long | 执行人员ID |
| executeUserName | String | 执行人员名称 |
| taskCount | Integer | 任务数 |
| feedbackStatus | Integer | 反馈状态:1-正常 2-异常 |
1.2 新增任务清单
- URL:
POST /safetyDutyList/taskList/save - Content-Type:
application/json
请求参数:
| 字段 | 类型 | 必填 | 说明 |
|---|---|---|---|
| taskListName | String | 是 | 清单名称 |
| taskLevel | Integer | 是 | 任务级别:1-企业级 2-部门级 3-班组级 |
| responsibilityPost | String | 是 | 责任岗位 |
| switchFlag | Integer | 是 | 是否启用:1-启用 0-不启用 |
请求示例:
{
"taskListName": "2025年安全责任清单",
"taskLevel": 1,
"responsibilityPost": "安全管理岗",
"switchFlag": 1
}
响应数据:SingleResponse<TaskListCO>
| 字段 | 类型 | 说明 |
|---|---|---|
| id | Long | 主键 |
| taskListId | String | 清单UUID(业务主键) |
| taskListName | String | 清单名称 |
| taskLevel | Integer | 任务级别:1-企业级 2-部门级 3-班组级 |
| responsibilityPost | String | 责任岗位 |
| switchFlag | Integer | 开启/关闭:0-关 1-开 |
| status | Integer | 状态:1-进行中 2-已完成 3-已关闭 |
| periodStartTime | String | 执行周期开始时间 |
| periodEndTime | String | 执行周期结束时间 |
| ratingScore | BigDecimal | 清单分数 |
| ratingUserId | Long | 评分人ID |
| ratingUserName | String | 评分人姓名 |
| ratingDepartmentId | Long | 评分部门ID |
| ratingDepartmentName | String | 评分部门名称 |
| issueStatus | Integer | 下发状态:0-未下发 1-已下发 |
| issueTime | String | 下发时间 |
| executeCorpId | Long | 执行公司ID |
| executeCorpName | String | 执行公司名称 |
| executeDepartmentId | Long | 执行部门ID |
| executeDepartmentName | String | 执行部门名称 |
| executeUserId | Long | 执行人员ID |
| executeUserName | String | 执行人员名称 |
| taskCount | Integer | 任务数 |
| feedbackStatus | Integer | 反馈状态:1-正常 2-异常 |
1.3 修改任务清单
- URL:
POST /safetyDutyList/taskList/edit - Content-Type:
application/json
请求参数:
| 字段 | 类型 | 必填 | 说明 |
|---|---|---|---|
| taskListId | String | 是 | 清单UUID(业务主键) |
| taskListName | String | 是 | 清单名称 |
| taskLevel | Integer | 是 | 任务级别:1-企业级 2-部门级 3-班组级 |
| responsibilityPost | String | 是 | 责任岗位 |
| switchFlag | Integer | 是 | 是否启用:1-启用 0-不启用 |
请求示例:
{
"taskListId": "uuid-xxx",
"taskListName": "2025年安全责任清单(修改)",
"taskLevel": 1,
"responsibilityPost": "安全管理岗",
"switchFlag": 1
}
响应数据:SingleResponse
1.4 删除任务清单
- URL:
POST /safetyDutyList/taskList/delete/{id}
路径参数:
| 字段 | 类型 | 必填 | 说明 |
|---|---|---|---|
| id | Long | 是 | 清单主键ID |
请求示例:
POST /safetyDutyList/taskList/delete/1
响应数据:Response
1.5 开启/关闭任务清单
- URL:
POST /safetyDutyList/taskList/switchFlag - Content-Type:
application/json
注意:调用此接口即表示要关闭任务清单
请求参数:
| 字段 | 类型 | 必填 | 说明 |
|---|---|---|---|
| taskListId | String | 是 | 清单UUID |
| switchFlag | Integer | 是 | 开启/关闭:0-关 1-开 |
请求示例:
{
"taskListId": "uuid-xxx",
"switchFlag": 0
}
响应数据:SingleResponse
1.6 关闭清单
- URL:
POST /safetyDutyList/taskList/close - Content-Type:
application/json
请求参数:
| 字段 | 类型 | 必填 | 说明 |
|---|---|---|---|
| taskListId | String | 是 | 清单UUID |
请求示例:
{
"taskListId": "uuid-xxx"
}
响应数据:SingleResponse
1.7 任务下发
- URL:
POST /safetyDutyList/taskList/issue - Content-Type:
application/json
请求参数:
| 字段 | 类型 | 必填 | 说明 |
|---|---|---|---|
| taskListId | String | 是 | 清单UUID |
| executeCorpId | Long | 是 | 执行公司ID |
| executeDepartmentId | Long | 是 | 执行部门ID |
| executeUserId | Long | 是 | 执行人员ID |
| periodStartTime | String | 是 | 执行周期开始时间(yyyy-MM-dd HH:mm:ss) |
| periodEndTime | String | 是 | 执行周期结束时间(yyyy-MM-dd HH:mm:ss) |
请求示例:
{
"taskListId": "uuid-xxx",
"executeCorpId": 100,
"executeDepartmentId": 200,
"executeUserId": 300,
"periodStartTime": "2025-01-01 00:00:00",
"periodEndTime": "2025-12-31 23:59:59"
}
响应数据:SingleResponse
二、任务详情(TaskDetailController)
2.1 获取任务列表
- URL:
POST /safetyDutyList/taskDetail/list - Content-Type:
application/json
请求参数:
| 字段 | 类型 | 必填 | 说明 |
|---|---|---|---|
| pageIndex | Integer | 否 | 页码(默认1) |
| pageSize | Integer | 否 | 每页条数(默认10) |
| taskListId | String | 否 | 清单表主键ID |
| taskContent | String | 否 | 执行内容 |
| taskPeriodStart | String | 否 | 任务周期开始时间 |
| taskPeriodEnd | String | 否 | 任务周期结束时间 |
| feedbackCycleType | Integer | 否 | 反馈周期类型:1-每月 2-季度 3-半年 4-年 |
| feedbackStatus | Integer | 否 | 反馈状态:1-正常 2-异常 |
| taskStatus | Integer | 否 | 任务状态:1-进行中 2-已完成 3-已关闭 |
请求示例:
{
"pageIndex": 1,
"pageSize": 10,
"taskListId": "uuid-xxx",
"taskStatus": 1
}
响应数据:PageResponse<TaskDetailFullCO>
| 字段 | 类型 | 说明 |
|---|---|---|
| id | Long | 主键ID |
| taskDetailId | String | 任务详情UUID |
| taskListId | String | 任务清单UUID |
| executeContent | String | 执行内容 |
| feedbackCycleType | Integer | 反馈周期类型:1-每月 2-季度 3-半年 4-年 |
| taskScore | BigDecimal | 任务分值 |
| taskRating | BigDecimal | 当前得分(任务评分) |
| taskStatus | Integer | 任务状态:1-进行中 2-已完成 3-已关闭 |
| feedbackCount | Integer | 反馈次数 |
| feedbackStatus | Integer | 反馈状态:1-正常 2-异常 |
| currentPeriodFeedback | Boolean | 当前节点是否反馈 |
| exceptionList | Array | 异常列表(见FeedbackExceptionCO) |
exceptionList 子对象(FeedbackExceptionCO):
| 字段 | 类型 | 说明 |
|---|---|---|
| id | Long | 主键 |
| feedbackExceptionId | String | 反馈异常UUID |
| taskDetailId | String | 任务详情UUID |
| taskListId | String | 任务清单UUID |
| exceptionPeriodFlag | String | 异常周期标识 |
| exceptionPeriodStartTime | String | 异常周期开始时间 |
| exceptionPeriodEndTime | String | 异常周期结束时间 |
| exceptionType | Integer | 异常类型:1-未按时反馈 2-反馈内容异常 3-其他 |
| exceptionContent | String | 反馈异常信息 |
| exceptionTime | String | 异常时间 |
| createTime | String | 创建时间 |
| taskListName | String | 清单名称 |
| executeContent | String | 执行内容 |
2.2 新增任务
- URL:
POST /safetyDutyList/taskDetail/save - Content-Type:
application/json
请求参数:
| 字段 | 类型 | 必填 | 说明 |
|---|---|---|---|
| taskListId | String | 是 | 清单表主键ID |
| executeContent | String | 否 | 执行内容 |
| feedbackCycleType | Integer | 是 | 反馈周期类型:1-每月 2-季度 3-半年 4-年 |
| taskScore | BigDecimal | 否 | 任务分值 |
请求示例:
{
"taskListId": "uuid-xxx",
"executeContent": "每月检查消防设施",
"feedbackCycleType": 1,
"taskScore": 10.0
}
响应数据:SingleResponse<TaskDetailCO>
| 字段 | 类型 | 说明 |
|---|---|---|
| id | Long | 主键 |
| taskDetailId | String | 明细UUID(业务主键) |
| taskListId | String | 任务清单ID |
| executeContent | String | 执行内容 |
| feedbackCycleType | Integer | 反馈周期类型:1-每月 2-季度 3-半年 4-年 |
| feedbackCycleName | String | 反馈周期名称 |
| taskStatus | Integer | 任务状态:1-进行中 2-已完成 3-已关闭 |
| feedbackStatus | Integer | 反馈状态:1-正常 2-存在异常 |
| taskScore | BigDecimal | 任务分值 |
| taskRating | BigDecimal | 任务评分 |
| ratingTime | String | 评分时间(yyyy-MM-dd HH:mm:ss) |
| ratingDepartmentId | Long | 评分部门ID |
| ratingUserId | Long | 评分人ID |
2.3 批量保存任务
- URL:
POST /safetyDutyList/taskDetail/saveBatch - Content-Type:
application/json
保存逻辑:以传参列表为准,id为空时新增,id非空时更新,数据库中有但传参中没有的则删除。 校验规则:保存后该清单下所有任务分值之和不能超过100
请求参数:List<TaskDetailSaveBatchCmd>(JSON数组)
| 字段 | 类型 | 必填 | 说明 |
|---|---|---|---|
| id | Long | 否 | 主键ID(为空时新增,非空时更新) |
| taskListId | String | 是 | 清单表主键ID |
| executeContent | String | 否 | 执行内容 |
| feedbackCycleType | Integer | 是 | 反馈周期类型:1-每月 2-季度 3-半年 4-年 |
| taskScore | BigDecimal | 否 | 任务分值 |
请求示例:
[
{
"id": null,
"taskListId": "uuid-xxx",
"executeContent": "新增任务内容",
"feedbackCycleType": 1,
"taskScore": 20.0
},
{
"id": 5,
"taskListId": "uuid-xxx",
"executeContent": "更新任务内容",
"feedbackCycleType": 2,
"taskScore": 30.0
}
]
响应数据:MultiResponse<TaskDetailCO>
| 字段 | 类型 | 说明 |
|---|---|---|
| id | Long | 主键 |
| taskDetailId | String | 明细UUID(业务主键) |
| taskListId | String | 任务清单ID |
| executeContent | String | 执行内容 |
| feedbackCycleType | Integer | 反馈周期类型:1-每月 2-季度 3-半年 4-年 |
| feedbackCycleName | String | 反馈周期名称 |
| taskStatus | Integer | 任务状态:1-进行中 2-已完成 3-已关闭 |
| feedbackStatus | Integer | 反馈状态:1-正常 2-存在异常 |
| taskScore | BigDecimal | 任务分值 |
| taskRating | BigDecimal | 任务评分 |
| ratingTime | String | 评分时间(yyyy-MM-dd HH:mm:ss) |
| ratingDepartmentId | Long | 评分部门ID |
| ratingUserId | Long | 评分人ID |
2.4 编辑任务
- URL:
POST /safetyDutyList/taskDetail/edit - Content-Type:
application/json
校验规则:编辑后该清单下所有任务分值之和不能超过100
请求参数:
| 字段 | 类型 | 必填 | 说明 |
|---|---|---|---|
| taskDetailId | String | 是 | 任务详情UUID |
| taskListId | String | 是 | 清单表主键ID |
| executeContent | String | 否 | 执行内容 |
| feedbackCycleType | Integer | 是 | 反馈周期类型:1-每月 2-季度 3-半年 4-年 |
| taskScore | BigDecimal | 否 | 任务分值 |
请求示例:
{
"taskDetailId": "uuid-detail-xxx",
"taskListId": "uuid-xxx",
"executeContent": "每月检查消防设施(修改)",
"feedbackCycleType": 1,
"taskScore": 15.0
}
响应数据:SingleResponse<TaskDetailCO>
| 字段 | 类型 | 说明 |
|---|---|---|
| id | Long | 主键 |
| taskDetailId | String | 明细UUID(业务主键) |
| taskListId | String | 任务清单ID |
| executeContent | String | 执行内容 |
| feedbackCycleType | Integer | 反馈周期类型:1-每月 2-季度 3-半年 4-年 |
| feedbackCycleName | String | 反馈周期名称 |
| taskStatus | Integer | 任务状态:1-进行中 2-已完成 3-已关闭 |
| feedbackStatus | Integer | 反馈状态:1-正常 2-存在异常 |
| taskScore | BigDecimal | 任务分值 |
| taskRating | BigDecimal | 任务评分 |
| ratingTime | String | 评分时间(yyyy-MM-dd HH:mm:ss) |
| ratingDepartmentId | Long | 评分部门ID |
| ratingUserId | Long | 评分人ID |
2.5 获取任务详情
- URL:
GET /safetyDutyList/taskDetail/{detailId}
路径参数:
| 字段 | 类型 | 必填 | 说明 |
|---|---|---|---|
| detailId | String | 是 | 任务详情UUID |
请求示例:
GET /safetyDutyList/taskDetail/uuid-detail-xxx
响应数据:SingleResponse<TaskDetailInfoCO>
| 字段 | 类型 | 说明 |
|---|---|---|
| id | Long | 主键ID |
| taskDetailId | String | 任务详情UUID |
| taskListId | String | 清单表主键ID |
| taskListName | String | 清单名称 |
| taskLevel | Integer | 任务级别 |
| responsibilityPost | String | 责任岗位 |
| feedbackCycleType | Integer | 反馈周期类型 |
| taskScore | BigDecimal | 任务分值 |
| executeContent | String | 执行内容 |
2.6 关闭任务
- URL:
POST /safetyDutyList/taskDetail/close - Content-Type:
application/json
请求参数:
| 字段 | 类型 | 必填 | 说明 |
|---|---|---|---|
| taskDetailId | String | 是 | 任务UUID |
请求示例:
{
"taskDetailId": "uuid-detail-xxx"
}
响应数据:Response
2.7 更新任务评分
- URL:
POST /safetyDutyList/taskDetail/updateScore - Content-Type:
application/json
请求参数:
| 字段 | 类型 | 必填 | 说明 |
|---|---|---|---|
| taskDetailId | String | 是 | 任务UUID |
| taskRating | BigDecimal | 是 | 分数(不能超过任务分值) |
| ratingDeptId | Long | 是 | 评分部门ID |
| ratingUserId | Long | 是 | 评分人员ID |
请求示例:
{
"taskDetailId": "uuid-detail-xxx",
"taskRating": 8.5,
"ratingDeptId": 200,
"ratingUserId": 300
}
响应数据:Response
三、执行反馈(FeedbackController)
3.1 提交反馈
- URL:
POST /safetyDutyList/feedback/save - Content-Type:
application/json
请求参数:
| 字段 | 类型 | 必填 | 说明 |
|---|---|---|---|
| taskListId | String | 是 | 任务清单ID |
| taskDetailId | String | 是 | 清单明细ID |
| feedbackContent | String | 是 | 反馈内容 |
| feedbackCorpId | Long | 否 | 反馈人公司ID |
| feedbackDepartmentId | Long | 否 | 反馈人部门ID |
| feedbackUserId | Long | 否 | 反馈人ID |
请求示例:
{
"taskListId": "uuid-xxx",
"taskDetailId": "uuid-detail-xxx",
"feedbackContent": "本月已按计划完成消防设施检查",
"feedbackUserId": 300
}
响应数据:SingleResponse<FeedbackCO>
| 字段 | 类型 | 说明 |
|---|---|---|
| id | Long | 主键 |
| feedbackId | String | 反馈UUID(业务主键) |
| taskDetailId | String | 任务详情UUID |
| taskListId | String | 任务清单UUID |
| feedbackTime | String | 反馈时间(yyyy-MM-dd HH:mm:ss) |
| feedbackPeriodFlag | String | 反馈周期标识 |
| feedbackPeriodStartTime | String | 反馈周期开始时间(yyyy-MM-dd HH:mm:ss) |
| feedbackPeriodEndTime | String | 反馈周期结束时间(yyyy-MM-dd HH:mm:ss) |
| feedbackContent | String | 反馈内容 |
| feedbackUserId | Long | 反馈人ID |
| feedbackUserName | String | 反馈人姓名 |
| feedbackCorpId | Long | 反馈人公司ID |
| feedbackCorpName | String | 反馈人公司名称 |
| feedbackDepartmentId | Long | 反馈人部门ID |
| feedbackDepartmentName | String | 反馈人部门名称 |
| executeContent | String | 执行内容 |
| taskListName | String | 清单名称 |
| createTime | String | 创建时间(yyyy-MM-dd HH:mm:ss) |
3.2 删除反馈
- URL:
POST /safetyDutyList/feedback/delete/{id}
路径参数:
| 字段 | 类型 | 必填 | 说明 |
|---|---|---|---|
| id | Long | 是 | 反馈记录主键ID |
请求示例:
POST /safetyDutyList/feedback/delete/1
响应数据:Response
3.3 编辑反馈
- URL:
POST /safetyDutyList/feedback/edit - Content-Type:
application/json
请求参数:
| 字段 | 类型 | 必填 | 说明 |
|---|---|---|---|
| feedbackId | String | 是 | 反馈UUID |
| feedbackContent | String | 是 | 反馈内容 |
请求示例:
{
"feedbackId": "uuid-feedback-xxx",
"feedbackContent": "修改后的反馈内容"
}
响应数据:SingleResponse<FeedbackCO>
| 字段 | 类型 | 说明 |
|---|---|---|
| id | Long | 主键 |
| feedbackId | String | 反馈UUID(业务主键) |
| taskDetailId | String | 任务详情UUID |
| taskListId | String | 任务清单UUID |
| feedbackTime | String | 反馈时间(yyyy-MM-dd HH:mm:ss) |
| feedbackPeriodFlag | String | 反馈周期标识 |
| feedbackPeriodStartTime | String | 反馈周期开始时间(yyyy-MM-dd HH:mm:ss) |
| feedbackPeriodEndTime | String | 反馈周期结束时间(yyyy-MM-dd HH:mm:ss) |
| feedbackContent | String | 反馈内容 |
| feedbackUserId | Long | 反馈人ID |
| feedbackUserName | String | 反馈人姓名 |
| feedbackCorpId | Long | 反馈人公司ID |
| feedbackCorpName | String | 反馈人公司名称 |
| feedbackDepartmentId | Long | 反馈人部门ID |
| feedbackDepartmentName | String | 反馈人部门名称 |
| executeContent | String | 执行内容 |
| taskListName | String | 清单名称 |
| createTime | String | 创建时间(yyyy-MM-dd HH:mm:ss) |
3.4 获取反馈周期分组列表
- URL:
POST /safetyDutyList/feedback/periodGroupList - Content-Type:
application/json
请求参数:
| 字段 | 类型 | 必填 | 说明 |
|---|---|---|---|
| taskDetailId | String | 是 | 任务ID |
| feedbackTimeStart | String | 否 | 反馈时间开始(格式:yyyy-MM-dd) |
| feedbackTimeEnd | String | 否 | 反馈时间结束(格式:yyyy-MM-dd) |
请求示例:
{
"taskDetailId": "uuid-detail-xxx",
"feedbackTimeStart": "2025-01-01",
"feedbackTimeEnd": "2025-06-30"
}
响应数据:MultiResponse<FeedbackPeriodGroupCO>
| 字段 | 类型 | 说明 |
|---|---|---|
| taskDetailId | String | 任务ID |
| feedbackPeriodStartTime | String | 反馈周期开始时间(yyyy-MM-dd HH:mm:ss) |
| feedbackPeriodEndTime | String | 反馈周期结束时间(yyyy-MM-dd HH:mm:ss) |
| feedbackCount | Integer | 反馈次数 |
| feedbackUserName | String | 反馈人姓名 |
| feedbackPeriodFlag | String | 周期标识 |
3.5 获取反馈列表
- URL:
POST /safetyDutyList/feedback/list - Content-Type:
application/json
请求参数:
| 字段 | 类型 | 必填 | 说明 |
|---|---|---|---|
| pageIndex | Integer | 否 | 页码(默认1) |
| pageSize | Integer | 否 | 每页条数(默认10) |
| taskDetailId | String | 否 | 任务详情ID |
| taskListId | String | 否 | 任务清单ID |
| feedbackPeriodFlag | String | 否 | 周期标识 |
| feedbackCorpId | Long | 否 | 反馈人公司ID |
请求示例:
{
"pageIndex": 1,
"pageSize": 10,
"taskDetailId": "uuid-detail-xxx",
"feedbackPeriodFlag": "2025-Q1"
}
响应数据:PageResponse<FeedbackCO>
| 字段 | 类型 | 说明 |
|---|---|---|
| id | Long | 主键 |
| feedbackId | String | 反馈UUID |
| taskDetailId | String | 任务详情UUID |
| taskListId | String | 任务清单UUID |
| feedbackTime | String | 反馈时间(yyyy-MM-dd HH:mm:ss) |
| feedbackPeriodStartTime | String | 反馈周期开始时间 |
| feedbackPeriodEndTime | String | 反馈周期结束时间 |
| feedbackPeriodFlag | String | 反馈周期标识 |
| feedbackContent | String | 反馈内容 |
| feedbackUserId | Long | 反馈人ID |
| feedbackUserName | String | 反馈人姓名 |
| feedbackCorpId | Long | 反馈人公司ID |
| feedbackCorpName | String | 反馈人公司名称 |
| feedbackDepartmentId | Long | 反馈人部门ID |
| feedbackDepartmentName | String | 反馈人部门名称 |
| executeContent | String | 执行内容 |
| taskListName | String | 清单名称 |
| createTime | String | 创建时间 |
3.6 获取反馈详情
- URL:
GET /safetyDutyList/feedback/{feedbackId}
路径参数:
| 字段 | 类型 | 必填 | 说明 |
|---|---|---|---|
| feedbackId | String | 是 | 反馈UUID |
请求示例:
GET /safetyDutyList/feedback/uuid-feedback-xxx
响应数据:SingleResponse<FeedbackInfoCO>
| 字段 | 类型 | 说明 |
|---|---|---|
| id | Long | 主键ID |
| feedbackId | String | 反馈UUID |
| taskDetailId | String | 任务详情ID |
| executeContent | String | 执行内容 |
| feedbackCycleType | Integer | 反馈周期类型 |
| feedbackContent | String | 反馈内容 |
| feedbackTime | String | 反馈时间(yyyy-MM-dd HH:mm:ss) |
| feedbackPeriodStartTime | String | 反馈周期开始时间 |
| feedbackPeriodEndTime | String | 反馈周期结束时间 |
3.7 获取异常记录列表
- URL:
POST /safetyDutyList/feedback/exception/list - Content-Type:
application/json
注意:此接口暂未开放
请求参数:
| 字段 | 类型 | 必填 | 说明 |
|---|---|---|---|
| pageIndex | Integer | 否 | 页码(默认1) |
| pageSize | Integer | 否 | 每页条数(默认10) |
| taskListId | String | 否 | 任务清单ID |
| exceptionType | Integer | 否 | 异常类型:1-未按时反馈 2-反馈内容异常 3-其他 |
| exceptionPeriodFlag | String | 否 | 异常周期标识 |
请求示例:
{
"pageIndex": 1,
"pageSize": 10,
"taskListId": "uuid-xxx",
"exceptionType": 1
}
响应数据:PageResponse<FeedbackExceptionCO>
| 字段 | 类型 | 说明 |
|---|---|---|
| id | Long | 主键 |
| feedbackExceptionId | String | 反馈异常UUID |
| taskDetailId | String | 任务详情UUID |
| taskListId | String | 任务清单UUID |
| exceptionPeriodFlag | String | 异常周期标识 |
| exceptionPeriodStartTime | String | 异常周期开始时间 |
| exceptionPeriodEndTime | String | 异常周期结束时间 |
| exceptionType | Integer | 异常类型:1-未按时反馈 2-反馈内容异常 3-其他 |
| exceptionContent | String | 反馈异常信息 |
| exceptionTime | String | 异常时间 |
| createTime | String | 创建时间 |
| taskListName | String | 清单名称 |
| executeContent | String | 执行内容 |
四、统计分析(StatisticsController)
4.1 获取企业统计(股份端)
- URL:
POST /safetyDutyList/statistics/corpStatistics - Content-Type:
application/json
请求参数:
| 字段 | 类型 | 必填 | 说明 |
|---|---|---|---|
| pageIndex | Integer | 否 | 页码(默认1) |
| pageSize | Integer | 否 | 每页条数(默认10) |
| corpName | String | 否 | 企业名称(模糊查询) |
请求示例:
{
"pageIndex": 1,
"pageSize": 10,
"corpName": "XX公司"
}
响应数据:PageResponse<CorpStatisticsCO>
| 字段 | 类型 | 说明 |
|---|---|---|
| corpId | Long | 公司ID |
| corpName | String | 公司名称 |
| completedTaskCount | Integer | 已完成任务数 |
| closedTaskCount | Integer | 已关闭任务数 |
| totalTaskCount | Integer | 年度执行任务总数 |
4.2 获取企业评价列表
- URL:
POST /safetyDutyList/statistics/evaluationList - Content-Type:
application/json
请求参数:
| 字段 | 类型 | 必填 | 说明 |
|---|---|---|---|
| pageIndex | Integer | 否 | 页码(默认1) |
| pageSize | Integer | 否 | 每页条数(默认10) |
| corpName | String | 否 | 企业名称(模糊查询) |
| scoreStatus | Integer | 否 | 评分状态:0-未评分 1-已评分 |
请求示例:
{
"pageIndex": 1,
"pageSize": 10,
"corpName": "XX公司",
"scoreStatus": 0
}
响应数据:PageResponse<EvaluationListCO>
| 字段 | 类型 | 说明 |
|---|---|---|
| corpId | Long | 公司ID |
| corpName | String | 公司名称 |
| listCount | Integer | 清单数量 |
4.3 获取企业任务下发统计数
- URL:
POST /safetyDutyList/statistics/issueStatistics - Content-Type:
application/json
请求参数:
| 字段 | 类型 | 必填 | 说明 |
|---|---|---|---|
| pageIndex | Integer | 否 | 页码(默认1) |
| pageSize | Integer | 否 | 每页条数(默认10) |
| corpName | String | 否 | 企业名称(模糊查询) |
请求示例:
{
"pageIndex": 1,
"pageSize": 10,
"corpName": "XX公司"
}
响应数据:PageResponse<IssueStatisticsCO>
| 字段 | 类型 | 说明 |
|---|---|---|
| corpId | Long | 公司ID |
| corpName | String | 公司名称 |
| issueCount | Integer | 任务清单下发数 |
附录:枚举值速查
| 枚举 | 值 | 说明 |
|---|---|---|
| 任务级别(taskLevel) | 1 | 企业级 |
| 2 | 部门级 | |
| 3 | 班组级 | |
| 开关标识(switchFlag) | 0 | 关闭 |
| 1 | 开启 | |
| 清单状态(status) | 1 | 进行中 |
| 2 | 已完成 | |
| 3 | 已关闭 | |
| 下发状态(issueStatus) | 0 | 未下发 |
| 1 | 已下发 | |
| 反馈周期类型(feedbackCycleType) | 1 | 每月 |
| 2 | 每季度 | |
| 3 | 每半年 | |
| 4 | 每年 | |
| 反馈状态(feedbackStatus) | 1 | 正常 |
| 2 | 异常 | |
| 异常类型(exceptionType) | 1 | 未按时反馈 |
| 2 | 反馈内容异常 | |
| 3 | 其他 | |
| 评分状态(scoreStatus) | 0 | 未评分 |
| 1 | 已评分 |
周期标识格式说明:
| 反馈周期类型 | 格式 | 示例 |
|---|---|---|
| 1-每月 | yyyy-MM | 2026-05 |
| 2-每季度 | yyyy-Qn | 2026-Q1 |
| 3-每半年 | yyyy-Hn | 2026-H1 |
| 4-每年 | yyyy-Y | 2026-Y |
反馈异常检测定时任务说明:
定时任务于每月1日00:00:00执行,检测逻辑如下:
- 查询所有已下发且周期时间完整的清单(issue_status=1,period_start_time和period_end_time不为空,且period_end_time不超过当前时间1个月)
- 遍历每个清单下的所有任务,以清单的周期起始时间判断是否仍处于首个反馈周期内
- 若仍处于首周期(首周期尚未结束),跳过检测,不判定异常
- 若已过首周期,检查上一阶段是否有反馈记录,无反馈则判定为异常
首周期判断规则:将清单的periodStartTime和当前时间分别生成周期标识,若相同则仍在首周期内。
| 清单起始时间 | 当前时间 | 周期类型 | 首周期标识 | 当前周期标识 | 是否跳过 |
|---|---|---|---|---|---|
| 2026-07-01 | 2026-07-12 | 1-每月 | 2026-07 | 2026-07 | 跳过 |
| 2026-07-01 | 2026-08-01 | 1-每月 | 2026-07 | 2026-08 | 检查2026-07 |
| 2026-07-01 | 2026-07-12 | 2-每季度 | 2026-Q3 | 2026-Q3 | 跳过 |
| 2026-07-01 | 2026-10-01 | 2-每季度 | 2026-Q3 | 2026-Q4 | 检查2026-Q3 |
| 2026-07-01 | 2026-07-12 | 3-每半年 | 2026-H2 | 2026-H2 | 跳过 |
| 2026-07-01 | 2027-01-01 | 3-每半年 | 2026-H2 | 2027-H1 | 检查2026-H2 |
| 2026-07-01 | 2026-07-12 | 4-每年 | 2026-Y | 2026-Y | 跳过 |
| 2026-07-01 | 2027-01-01 | 4-每年 | 2026-Y | 2027-Y | 检查2026-Y |