xlcp/docs/assessment-report-requirements.md
tangweijie bcc7756f90 chore: 更新前后端子模块到最新版本
- backend: 集成评估报告、快捷评语、预警风险等模块
- frontend: 新增评估报告编辑、快捷评语管理等工作台页面

Co-Authored-By: Claude <noreply@anthropic.com>
2026-01-16 20:16:25 +08:00

349 lines
14 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# 评估报告模块需求文档
## 1. 项目背景
XL监狱综合管理平台需要新增**评估报告模块**利用AI大语言模型自动填写风险评估报告提高评估工作效率。
## 2. 需求概述
### 2.1 功能目标
使用AI大语言模型自动填写风险评估报告支持人机协作模式AI生成初稿 + 人工审核修改)。
### 2.2 核心特性
- 独立的评估报告模板配置(与问卷模板分离)
- 绑定多种数据源(消费、计分、狱情、亲属信息等)
- AI生成初稿管教民警可逐项修改确认
- 报告导出PDF/Word
- 审核工作流
### 2.3 评估类型
| 类型 | 说明 |
|------|------|
| 入监评估 | 新犯入狱后的综合评估 |
| 定期评估 | 服刑期间定期的改造情况评估 |
| 专项评估 | 针对特定事件的专项评估 |
| 出监评估 | 假释/刑满前的释放前评估 |
## 3. 功能需求
### 3.1 评估报告模板管理
#### 3.1.1 功能描述
管理员可配置评估报告模板包含多个评估维度和对应的AI提示词。
#### 3.1.2 功能点
| 功能 | 说明 |
|------|------|
| 模板增删改查 | 模板的基本信息管理 |
| 版本管理 | 模板版本控制 |
| 评估维度配置 | 支持拖拽排序的维度配置 |
| AI提示词配置 | 每个维度配置AI提示词 |
| 数据源绑定 | 配置维度需要使用的数据源 |
#### 3.1.3 评估维度配置
| 字段 | 类型 | 说明 |
|------|------|------|
| 维度名称 | 文本 | 如:犯罪情况分析、服刑表现评估等 |
| AI提示词 | 多行文本 | AI生成的指令模板 |
| 数据源绑定 | 多选 | 选择需要聚合的数据源 |
| 输出格式 | 下拉 | 文本/段落/列表 |
| 是否AI生成 | 开关 | 该维度是否需要AI生成 |
| 编辑器类型 | 下拉 | 文本框/富文本/下拉选择 |
| 排序 | 数字 | 维度排序 |
### 3.2 数据源类型
| 数据源类型 | 标识 | 说明 |
|-----------|------|------|
| 罪犯档案 | prisoner | 基本信息、犯罪情况、刑期等 |
| 消费记录 | consumption | 消费金额、消费类型分布 |
| 计分考核 | score | 月度得分、年度汇总、等级分布 |
| 问卷答题 | questionnaire_record | 心理测评结果、问卷得分 |
| 违规记录 | violation | 违规次数、违规类型 |
| 奖励记录 | reward | 表扬次数、立功情况 |
| 会见记录 | visit | 会见频次、会见人关系 |
| 劳动数据 | labor | 劳动效率、产量质量 |
### 3.3 评估报告管理
#### 3.3.1 工作流程
```
选择服刑人员 → 选择评估模板 → 创建报告 → AI生成初稿 → 人工修改 → 提交审核 → 审核通过 → 导出报告
数据源自动聚合
```
#### 3.3.2 报告状态
| 状态 | 说明 |
|------|------|
| 草稿 | 报告刚创建,未提交审核 |
| 待审核 | 已提交,等待领导审核 |
| 已通过 | 审核通过 |
| 已驳回 | 审核被驳回,需修改后重新提交 |
#### 3.3.3 人机协作模式
- AI生成各维度初稿显示"AI生成"标识
- 管教民警可逐维度编辑修改
- 修改后显示"人工修改"标识和修改时间
- 记录修改历史(版本管理)
### 3.4 报告导出
#### 3.4.1 导出格式
| 格式 | 用途 |
|------|------|
| PDF | 正式存档、打印 |
| Word | 修改编辑 |
| HTML | 系统内预览 |
#### 3.4.2 导出内容选项
- [x] 维度分析
- [x] 综合结论
- [x] 改造建议
- [x] 审核信息
## 4. 页面设计
### 4.1 报告编辑页面(左右分栏布局)
```
┌─────────────────────────────────────────────────────────────────────────┐
│ 评估报告编辑 │
├────────────────────────────┬────────────────────────────────────────────┤
│ 【服刑人员列表】 │ 【报告编辑区】 │
│ ┌────────────────────┐ │ ┌────────────────────────────────────────┐ │
│ │ [搜索框] 姓名/编号 │ │ │ 服刑人员:张三 (2024001) │ │
│ │ [搜索按钮] │ │ │ 监区:三分监区 风险等级:高风险 │ │
│ ├────────────────────┤ │ ├────────────────────────────────────────┤ │
│ │ [卡片列表] │ │ │ │ │
│ │ ┌────────────────┐│ │ │ [基本信息] │ │
│ │ │ 三分监区 ││ │ │ ┌────────────────────────────────────┐ │ │
│ │ │ 张三 2024001 ││ │ │ │ 评估模板:入监风险评估 v │ │ │
│ │ │ [高风险] ││ │ │ │ 评估日期2026-01-16 │ │ │
│ │ └────────────────┘│ │ │ │ 评估类型:入监评估 v │ │ │
│ │ │ │ │ └────────────────────────────────────┘ │ │
│ │ ┌────────────────┐│ │ │ │ │
│ │ │ 二分监区 ││ │ │ [维度分析 - 折叠面板] │ │
│ │ │ 李四 2024002 ││ │ │ ┌────────────────────────────────────┐ │ │
│ │ │ [中风险] ││ │ │ │ ▼ 犯罪情况分析 [重新生成] │ │ │
│ │ └────────────────┘│ │ │ │ 该犯因盗窃罪... │ │ │
│ │ │ │ │ │ [AI生成] [已修改] │ │ │
│ │ ... │ │ │ └────────────────────────────────────┘ │ │
│ ├────────────────────┤ │ ├────────────────────────────────────────┤ │
│ │ [分页组件] 1/5 │ │ │ [综合结论与建议] │ │
│ └────────────────────┘ │ │ ┌────────────────────────────────────┐ │ │
│ │ │ │ 风险等级:高风险 v │ │ │
│ │ │ │ 综合结论: │ │ │
│ │ │ │ 改造建议: │ │ │
│ │ │ └────────────────────────────────────┘ │ │
│ │ ├────────────────────────────────────────┤ │
│ │ │ [操作按钮] │ │
│ │ │ [AI生成全部内容] [保存草稿] [提交审核] │ │
│ │ │ [导出PDF] [导出Word] │ │
│ │ └────────────────────────────────────────┘ │
│ │ │
└────────────────────────────┴────────────────────────────────────────────┘
```
### 4.2 模板配置页面
- 模板列表页:展示所有模板,支持增删改查
- 模板配置表单:配置模板名称、描述、评估类型、评估维度列表
### 4.3 报告列表页面
- 分页查询报告
- 批量操作(批量创建、批量导出)
- 操作按钮(预览、编辑、重新生成、审核、导出、删除)
## 5. 数据库设计
### 5.1 评估报告模板表 (prison_assessment_report_template)
| 字段 | 类型 | 说明 |
|------|------|------|
| id | bigint | 模板ID主键 |
| name | varchar(100) | 模板名称 |
| description | varchar(500) | 模板说明 |
| assessment_type | tinyint | 评估类型 |
| version | varchar(20) | 模板版本 |
| status | tinyint | 状态1-启用 2-禁用 |
| creator | varchar(64) | 创建者 |
| create_time | datetime | 创建时间 |
| updater | varchar(64) | 更新者 |
| update_time | datetime | 更新时间 |
| deleted | bit(1) | 是否删除 |
| tenant_id | bigint | 租户ID |
### 5.2 评估维度表 (prison_assessment_dimension)
| 字段 | 类型 | 说明 |
|------|------|------|
| id | bigint | 维度ID主键 |
| template_id | bigint | 所属模板ID |
| name | varchar(100) | 维度名称 |
| description | varchar(500) | 维度说明 |
| sort | int | 排序 |
| ai_prompt | text | AI提示词模板 |
| data_source_config | text | 数据源配置JSON |
| output_format | varchar(50) | 输出格式 |
| require_ai_generate | tinyint | 是否需要AI生成 |
| editor_type | tinyint | 编辑器类型 |
| options | text | 选项JSON |
| creator | varchar(64) | 创建者 |
| create_time | datetime | 创建时间 |
| updater | varchar(64) | 更新者 |
| update_time | datetime | 更新时间 |
| deleted | bit(1) | 是否删除 |
| tenant_id | bigint | 租户ID |
### 5.3 评估报告表 (prison_assessment_report)
| 字段 | 类型 | 说明 |
|------|------|------|
| id | bigint | 报告ID主键 |
| template_id | bigint | 使用的模板ID |
| template_name | varchar(100) | 模板名称 |
| prisoner_id | bigint | 罪犯ID |
| prisoner_no | varchar(50) | 罪犯编号 |
| prisoner_name | varchar(50) | 罪犯姓名 |
| assessment_date | date | 评估日期 |
| assessment_type | tinyint | 评估类型 |
| dimension_data | text | 维度数据JSON |
| overall_score | decimal(5,2) | 综合评分 |
| risk_level | tinyint | 风险等级 |
| conclusion | text | 综合结论 |
| suggestions | text | 改造建议 |
| ai_generate_status | tinyint | AI生成状态 |
| ai_generate_time | datetime | AI生成时间 |
| audit_status | tinyint | 审核状态 |
| auditor_id | bigint | 审核人ID |
| auditor_name | varchar(50) | 审核人姓名 |
| audit_time | datetime | 审核时间 |
| audit_remark | varchar(500) | 审核备注 |
| report_status | tinyint | 报告状态 |
| creator | varchar(64) | 创建者 |
| create_time | datetime | 创建时间 |
| updater | varchar(64) | 更新者 |
| update_time | datetime | 更新时间 |
| deleted | bit(1) | 是否删除 |
| tenant_id | bigint | 租户ID |
## 6. AI服务设计
### 6.1 AI提示词示例
```
你是一位有20年工作经验的监狱管教民警根据以下服刑人员数据
生成一份专业的{维度名称}分析报告。
服刑人员基本信息:
{罪犯档案数据}
服刑期间表现数据:
{计分考核数据}
消费记录分析:
{消费记录数据}
请分析该服刑人员在{维度名称}方面的表现,要求:
1. 语言专业、客观,符合监狱管理规范
2. 数据分析要具体,有理有据
3. 字数控制在200-500字
```
### 6.2 AI服务接口
```java
public interface AiService {
/**
* 生成评估报告
* @param dimension 评估维度配置
* @param dataSources 所有数据源数据
* @return AI生成的内容
*/
String generateContent(DimensionConfig dimension, Map<String, Object> dataSources);
/**
* 批量生成报告(定时任务用)
*/
void batchGenerateReports(Long templateId, List<Long> prisonerIds);
}
```
## 7. 权限设计
| 角色 | 权限 |
|------|------|
| 管教民警 | 创建报告、编辑、导出、AI生成 |
| 分监区领导 | 审核报告 |
| 监狱领导 | 查看全监区评估统计报表 |
| 管理员 | 模板管理、系统配置 |
## 8. 外部系统对接
### 8.1 数据同步
- 外部系统数据导入到系统内部
- 同步工具定期从其他系统拉取数据
### 8.2 AI模型接入
- 调试阶段使用第三方APIOpenAI/Claude等
- 生产部署:单位私有部署的模型
## 9. 验收标准
### 9.1 功能验收
- [ ] 模板创建:添加模板,配置多个评估维度
- [ ] 报告创建选择模板和服刑人员触发AI生成
- [ ] 内容修改编辑AI生成的初稿内容
- [ ] 提交审核:报告状态流转测试
- [ ] 导出测试验证PDF/Word导出格式
### 9.2 AI生成验收
- [ ] 使用真实服刑人员数据测试AI生成
- [ ] 验证数据源绑定是否正确
- [ ] 验证提示词是否有效
- [ ] 评估生成内容的质量
### 9.3 权限验收
- [ ] 民警角色:创建报告、编辑、导出
- [ ] 领导角色:审核报告、查看统计
- [ ] 管理员角色:模板管理
## 10. 风险与注意事项
1. **数据安全**AI生成内容需人工审核后才能存档
2. **敏感数据**:家庭背景等敏感信息需要脱敏处理
3. **生成日志**AI生成日志要可追溯
4. **版本管理**:报告修改历史需要保留
## 11. 后续扩展
- [ ] 评估报告模板导入导出JSON格式
- [ ] 批量生成(定时任务批量生成报告)
- [ ] 评估报告模板版本对比
- [ ] 与司法部报表系统对接
- [ ] 评估报告统计分析大屏
---
**文档版本**: v1.0
**创建日期**: 2026-01-16
**作者**: AI助手