diff --git a/employee-app/health-consult/doc/PRD.md b/employee-app/health-consult/doc/PRD.md index 790c7f6..24f021e 100644 --- a/employee-app/health-consult/doc/PRD.md +++ b/employee-app/health-consult/doc/PRD.md @@ -8,7 +8,7 @@ ## 一、模块概述 -为油田员工提供在线健康咨询服务,支持 **AI 智能问诊**、**图文咨询**、**视频咨询** 三种形式。员工可按医院、科室、疾病维度查找专家,发起咨询并管理历史记录。 +为油田员工提供在线健康咨询服务,支持 **咨询小助手**、**图文咨询**、**视频咨询** 三种形式。员工可按医院、科室、疾病维度查找专家,发起咨询并管理历史记录。 ### 页面导航结构 diff --git a/md-viewer.html b/md-viewer.html index 683a0ec..e51b9e0 100644 --- a/md-viewer.html +++ b/md-viewer.html @@ -26,7 +26,7 @@ body { font-family: -apple-system, BlinkMacSystemFont, 'PingFang SC', 'Helvetica .topbar__path { font-size: 12px; color: var(--text-placeholder); margin-left: auto; } /* 内容区 */ -.content { max-width: 900px; margin: 0 auto; padding: 32px 40px 60px; background: var(--bg); min-height: calc(100vh - 50px); } +.content { max-width: 900px; margin: 0 auto; padding: 32px 40px 60px; background: var(--bg); min-height: calc(100vh - 50px); font-size: 14px; line-height: 1.8; } .loading { display: flex; align-items: center; justify-content: center; height: 300px; color: var(--text-placeholder); font-size: 14px; } .error { color: #ff4d4f; } @@ -36,7 +36,7 @@ body { font-family: -apple-system, BlinkMacSystemFont, 'PingFang SC', 'Helvetica .content h3 { font-size: 17px; font-weight: 600; margin: 24px 0 8px; } .content h4 { font-size: 15px; font-weight: 600; margin: 20px 0 6px; } .content p { font-size: 14px; line-height: 1.8; margin: 8px 0; } -.content ul, .content ol { padding-left: 20px; margin: 8px 0; } +.content ul, .content ol { padding-left: 20px; margin: 8px 0; font-size: 14px; line-height: 1.8; } .content table { width: 100%; border-collapse: collapse; margin: 12px 0; font-size: 13px; } .content th { background: #fafafa; font-weight: 600; text-align: left; padding: 8px 12px; border: 1px solid var(--border); } .content td { padding: 8px 12px; border: 1px solid var(--border); } @@ -47,7 +47,13 @@ body { font-family: -apple-system, BlinkMacSystemFont, 'PingFang SC', 'Helvetica .content blockquote p { color: var(--text-secondary); margin: 0; } .content strong { color: var(--text-primary); } .content hr { border: none; border-top: 1px solid var(--border); margin: 24px 0; } -.content img { max-width: 280px; height: auto; border-radius: 8px; border: 1px solid var(--border); margin: 8px 0; } +.content img { max-width: 100%; height: auto; border-radius: 8px; border: 1px solid var(--border); margin: 8px 0; cursor: pointer; transition: opacity .15s; } +.content img:hover { opacity: .85; } + +/* Lightbox 图片放大遮罩 */ +.lightbox { display: none; position: fixed; inset: 0; z-index: 9999; background: rgba(0,0,0,.75); align-items: center; justify-content: center; cursor: zoom-out; } +.lightbox.active { display: flex; } +.lightbox img { max-width: 92vw; max-height: 92vh; border-radius: 8px; box-shadow: 0 8px 32px rgba(0,0,0,.4); } @@ -59,6 +65,10 @@ body { font-family: -apple-system, BlinkMacSystemFont, 'PingFang SC', 'Helvetica
加载中...
+ + diff --git a/web-admin/health-consult/assistant/doc/CHANGELOG.md b/web-admin/health-consult/assistant/doc/CHANGELOG.md index f640ea6..122c499 100644 --- a/web-admin/health-consult/assistant/doc/CHANGELOG.md +++ b/web-admin/health-consult/assistant/doc/CHANGELOG.md @@ -1,5 +1,34 @@ # 变更记录 - 专家咨询·小助手角色(后台管理系统) +## [2026-04-17] docs: 重构PRD文档结构,按一级菜单分类组织,补充复杂弹窗截图 + +按用户要求重构 PRD 文档结构,页面清单和逐页说明均按一级菜单业务分类组织,新增9张复杂弹窗截图。 + +**涉及文件:** + +- `doc/PRD.md` — 重构文档结构 + - 页面清单按8个一级菜单分组(当前咨询/对话消息/咨询记录/专家管理/体检标准化/短信发送/常用语/咨询结算) + - 逐页说明按一级菜单分节(一~八),每节罗列该菜单下所有页面和弹窗 + - 新增9张复杂弹窗截图引用(咨询人档案/选择专家/通讯录/对话详情/排班配置/体检项目明细/新建短信/短信详情/结算明细) +- `doc/screenshots/` — 新增9张复杂弹窗截图(1440×900 视口,JPEG 85%) + +## [2026-04-17] docs: 完善PRD文档,覆盖全部23个页面/弹窗,新增页面截图 + +根据全部原型页面重写 PRD 文档,补充缺失页面说明和详细字段定义,新增11张页面截图。 + +**涉及文件:** + +- `doc/PRD.md` — 重写,完善产品需求文档 + - 更新页面导航结构树,新增常用语、结算报表、新增结算、排班配置等页面 + - 页面清单从 19 项扩充至 23 项(新增 config-phrase、consult-settle-add、consult-settle-report、expert-schedule-dialog) + - 补充所有列表页的筛选条件、表格列定义、业务规则和交互说明 + - 补充所有弹窗/表单页的表单字段表(字段名/类型/必填/规则) + - 新增排班配置弹窗说明(4时段排班表格、视频咨询开关) + - 新增结算报表页说明(含咨询详情弹窗表格列定义) + - 新增新增/编辑结算页说明(含完整三区块表单字段表) + - 扩展专家详情页字段表(基本信息+扩展信息两区块) +- `doc/screenshots/` — 新增,11张页面截图(1440×900 视口,JPEG 85%) + ## 2026-04-16 ### feat: 新增常用语管理页面 diff --git a/web-admin/health-consult/assistant/doc/PRD.md b/web-admin/health-consult/assistant/doc/PRD.md index 72b7a36..bc37e93 100644 --- a/web-admin/health-consult/assistant/doc/PRD.md +++ b/web-admin/health-consult/assistant/doc/PRD.md @@ -2,19 +2,34 @@ ## 模块概述 -小助手角色是后台管理系统中面向健康咨询小助手的工作台,用于实时处理员工咨询、管理历史记录、查阅体检标准、发送通知短信及管理专家结算。 +小助手角色是后台管理系统中面向健康咨询小助手的工作台,用于实时处理员工咨询、管理历史记录、内部即时通讯、专家管理与排班、体检标准查阅、通知短信发送、常用语管理及专家结算。 ### 页面导航结构 ``` 小助手工作台 ├── 当前咨询(IM对话) +│ ├── 咨询人档案弹窗 +│ └── 选择专家弹窗 ├── 对话消息(内部IM) -├── 历史咨询(列表) +│ └── 通讯录弹窗 +├── 咨询记录(列表) +│ └── 对话详情弹窗 ├── 专家管理(列表) +│ ├── 新增/编辑专家 → 排班配置弹窗 +│ ├── 批量导入专家弹窗 +│ ├── 导出任务列表弹窗 +│ └── 导入任务列表弹窗 ├── 体检标准化(分类+列表) +│ └── 体检项目明细弹窗 ├── 短信发送(列表) +│ ├── 新建短信弹窗 +│ └── 短信发送详情弹窗 +├── 常用语(列表) └── 咨询结算(列表) + ├── 新增/编辑结算 + ├── 结算报表 + └── 结算明细弹窗 ``` ### 状态流转图 @@ -32,292 +47,675 @@ stateDiagram-v2 ## 页面清单 -| 序号 | 模块 | 页面/弹窗 | 文件 | -|------|------|-----------|------| -| 1 | 当前咨询 | 当前咨询主页面 | current-consult.html | -| 2 | | 咨询人档案弹窗 | employee-profile-dialog.html | -| 3 | | 选择专家弹窗 | select-expert-dialog.html | -| 4 | 对话消息 | 对话消息主页面 | chat-message.html | -| 5 | | 通讯录弹窗 | contacts-dialog.html | -| 6 | 历史咨询 | 历史咨询列表页 | history-consult.html | -| 7 | | 历史对话详情弹窗 | chat-detail-dialog.html | -| 8 | 专家管理 | 专家管理列表页 | expert-manage.html | -| 9 | | 专家详情弹窗 | expert-detail-dialog.html | -| 10 | | 批量导入专家弹窗 | expert-import-dialog.html | -| 11 | | 导出任务列表弹窗 | export-task-dialog.html | -| 12 | | 导入任务列表弹窗 | import-task-dialog.html | -| 13 | 体检标准化 | 体检标准化页面 | checkup-standard.html | -| 14 | | 体检项目明细弹窗 | item-detail-dialog.html | -| 15 | 短信发送 | 短信发送记录列表 | sms-send.html | -| 16 | | 新建短信弹窗 | send-dialog.html | -| 17 | | 短信发送详情弹窗 | sms-detail-dialog.html | -| 18 | 咨询结算 | 咨询结算列表页 | consult-settle.html | -| 19 | | 报表详情弹窗 | report-detail-dialog.html | +### 当前咨询 + +| 序号 | 页面/弹窗 | 文件 | 类型 | +|------|-----------|------|------| +| 1 | 当前咨询主页面 | current-consult.html | 页面 | +| 2 | 咨询人档案弹窗 | employee-profile-dialog.html | 弹窗 | +| 3 | 选择专家弹窗 | select-expert-dialog.html | 弹窗 | + +### 对话消息 + +| 序号 | 页面/弹窗 | 文件 | 类型 | +|------|-----------|------|------| +| 4 | 对话消息主页面 | chat-message.html | 页面 | +| 5 | 通讯录弹窗 | contacts-dialog.html | 弹窗 | + +### 咨询记录 + +| 序号 | 页面/弹窗 | 文件 | 类型 | +|------|-----------|------|------| +| 6 | 咨询记录列表页 | history-consult.html | 页面 | +| 7 | 对话详情弹窗 | chat-detail-dialog.html | 弹窗 | + +### 专家管理 + +| 序号 | 页面/弹窗 | 文件 | 类型 | +|------|-----------|------|------| +| 8 | 专家管理列表页 | expert-manage.html | 页面 | +| 9 | 新增/编辑专家 | expert-detail-dialog.html | 页面 | +| 10 | 排班配置弹窗 | expert-schedule-dialog.html | 弹窗 | +| 11 | 批量导入专家弹窗 | expert-import-dialog.html | 弹窗 | +| 12 | 导出任务列表弹窗 | export-task-dialog.html | 弹窗 | +| 13 | 导入任务列表弹窗 | import-task-dialog.html | 弹窗 | + +### 体检标准化 + +| 序号 | 页面/弹窗 | 文件 | 类型 | +|------|-----------|------|------| +| 14 | 体检标准化页面 | checkup-standard.html | 页面 | +| 15 | 体检项目明细弹窗 | item-detail-dialog.html | 弹窗 | + +### 短信发送 + +| 序号 | 页面/弹窗 | 文件 | 类型 | +|------|-----------|------|------| +| 16 | 短信发送记录列表 | sms-send.html | 页面 | +| 17 | 新建短信弹窗 | send-dialog.html | 弹窗 | +| 18 | 短信发送详情弹窗 | sms-detail-dialog.html | 弹窗 | + +### 常用语 + +| 序号 | 页面/弹窗 | 文件 | 类型 | +|------|-----------|------|------| +| 19 | 常用语管理 | config-phrase.html | 页面 | + +### 咨询结算 + +| 序号 | 页面/弹窗 | 文件 | 类型 | +|------|-----------|------|------| +| 20 | 咨询结算列表页 | consult-settle.html | 页面 | +| 21 | 新增/编辑结算 | consult-settle-add.html | 页面 | +| 22 | 结算报表 | consult-settle-report.html | 页面 | +| 23 | 结算明细弹窗 | report-detail-dialog.html | 弹窗 | --- ## 逐页说明 -### 1. 当前咨询主页面 +--- -**功能说明:** IM风格左右分栏布局,左侧为正在咨询的员工对话列表,右侧为选中对话的聊天详情区。小助手在此页面实时回复员工咨询。 +## 一、当前咨询 + +### 1. 当前咨询主页面(current-consult.html) + +![页面截图](screenshots/current-consult.jpg) + +**功能说明:** IM 风格左右分栏布局,左侧为正在咨询的员工对话列表,右侧为选中对话的聊天详情区。小助手在此页面实时回复员工咨询。 + +**左侧 — 对话列表区:** +- 搜索框:按员工姓名/工号搜索 +- 复选框筛选:咨询专家 / 咨询小助手 / 专家未回复 +- 列表项信息:头像、姓名、咨询类型标签(咨询专家蓝色/咨询小助手绿色)、时间、最新消息预览、未读红色角标 + +**右侧 — 聊天详情区:** +- 头部信息:员工姓名、咨询类型标签、咨询状态标签(咨询中绿色/已结束灰色) +- 员工信息行:姓名·性别·年龄·单位·部门 +- 专家信息行:姓名·职称·科室·医院 +- 操作按钮:「咨询人档案」「结束咨询」(红色) + +**消息类型:** +- 系统消息(居中灰色标签) +- 员工消息(左侧白色气泡) +- 小助手消息(右侧绿色气泡) +- 咨询信息卡片:咨询人头像、基本信息、咨询标题、描述、持续时间、附件图片 +- 专家推荐卡片:头像、姓名、职称、医院、科室、「去咨询」按钮 +- 咨询结束卡片 + +**底部工具栏:** +- 「发送专家」按钮 → 打开选择专家弹窗 +- 「常用语」按钮 → 弹出常用语面板(分类 Tab:全部/问候语/引导语/注意事项/结束语) +- 文本输入框 + 发送按钮 **业务规则:** - 对话列表按最新消息时间倒序排列 - 未读消息显示红色角标 -- 咨询状态为"咨询中"的对话才出现在此列表 +- 仅咨询状态为"咨询中"的对话出现在此列表 **交互说明:** - 点击左侧对话项 → 右侧切换为该员工的聊天内容 -- 点击顶部「查看档案」按钮 → 打开咨询人档案弹窗 -- 点击底部工具栏「发送专家」按钮 → 打开选择专家弹窗 +- 点击「咨询人档案」→ 打开咨询人档案弹窗(680×720) +- 点击「发送专家」→ 打开选择专家弹窗(720×600) - 选中专家确认后 → 专家卡片以消息形式发送到对话中 -- 点击「结束咨询」按钮 → 结束当前咨询会话 -- 底部输入框支持文字输入和发送 +- 点击「结束咨询」→ 结束当前咨询会话 -### 2. 咨询人档案弹窗 +--- -**功能说明:** 展示当前咨询员工的个人信息、健康概况和历史咨询记录,帮助小助手了解员工背景。 +### 2. 咨询人档案弹窗(employee-profile-dialog.html) + +![页面截图](screenshots/employee-profile-dialog.jpg) + +**功能说明:** 展示当前咨询员工的个人信息和健康档案,帮助小助手了解员工背景。以 iframe 弹窗形式打开。 + +**员工信息(两列网格):** 姓名、员工编号、性别、年龄、单位、部门 + +**咨询人信息区(Tab 切换):** 支持多个咨询人(本人/配偶/子女等),默认隐藏 Tab 栏(仅一个咨询人时) +- 基本信息:咨询人姓名、性别、出生日期、与本人关系 +- 生活习惯:是否抽烟、是否饮酒、饮食喜好、睡眠质量 +- 健康档案:既往病史(标签)、过敏史(标签)、家族病史(标签)、体检报告(缩略图卡片)、检查报告(缩略图卡片) **业务规则:** - 健康指标来源于最近一次体检数据 - 指标按正常/偏高/偏低三色标识 -**交互说明:** -- 以新窗口弹窗形式打开 -- 点击右上角关闭按钮 → 关闭弹窗 +--- -### 3. 选择专家弹窗 +### 3. 选择专家弹窗(select-expert-dialog.html) -**功能说明:** 小助手为员工推荐专家时使用,展示平台所有专家列表,支持搜索和筛选。 +![页面截图](screenshots/select-expert-dialog.jpg) -**业务规则:** -- 专家列表显示在线状态、科室、擅长领域、咨询次数 -- 支持按科室和在线状态筛选 +**功能说明:** 小助手为员工推荐专家时使用,展示平台所有专家列表,支持搜索和筛选。以 iframe 弹窗形式打开。 + +**筛选条件:** 搜索框(专家姓名/医院/科室)、科室下拉(全部科室/内分泌科/心血管内科/神经内科/骨科/消化内科)、擅长疾病类型下拉(糖尿病/甲状腺/高血压/冠心病/头痛眩晕/颈椎病腰椎) + +**专家列表项:** 头像、姓名、医院·科室·职称、标签(在线状态/擅长疾病)、当月咨询次数 **交互说明:** -- 点击专家行 → 选中高亮 -- 底部显示已选专家姓名 -- 点击「确认发送」→ 将专家卡片发送到对话框,关闭弹窗 +- 单选模式,点击专家行选中高亮 +- 底部显示已选专家信息 +- 点击「确认选择」→ 将专家卡片发送到对话框,关闭弹窗 -### 4. 对话消息主页面 +--- -**功能说明:** IM风格左右分栏布局,用于小助手与内部人员(咨询专家、操作人员、专业人员、驻场人员、管理员)之间的即时通讯。左侧为消息联系人列表,右侧为选中联系人的聊天对话区。 +## 二、对话消息 + +### 4. 对话消息主页面(chat-message.html) + +![页面截图](screenshots/chat-message.jpg) + +**功能说明:** IM 风格左右分栏布局,用于小助手与内部人员(咨询专家、操作人员、专业人员、驻场人员、健康管理员)之间的即时通讯。 + +**左侧 — 消息列表区:** +- 搜索框:按联系人姓名搜索 +- 「通讯录」按钮 → 打开通讯录弹窗(640×560) +- 列表项信息:头像(按角色着色)、姓名、角色标签、时间、最新消息预览、未读红色角标 + +**角色类型与标签颜色:** + +| 角色 | 标签颜色 | +|------|----------| +| 咨询专家 | 绿色 | +| 操作人员 | 蓝色 | +| 专业人员 | 橙色 | +| 驻场人员 | 紫色 | +| 健康管理员 | 红色 | + +**右侧 — 聊天对话区:** +- 头部:联系人姓名 + 角色标签 + 详细信息 +- 对话气泡:对方消息(左侧白色)、自己消息(右侧绿色) +- 底部输入框 + 发送按钮 **业务规则:** - 消息列表按最新消息时间倒序排列 -- 每个联系人显示头像、昵称、角色标签、最后一条消息预览 -- 角色类型包括:咨询专家、操作人员、专业人员、驻场人员、管理员 - 未读消息显示红色角标 **交互说明:** - 点击左侧联系人 → 右侧切换为该联系人的聊天内容 -- 点击「通讯录」按钮 → 打开通讯录弹窗 - 从通讯录选中人员确认后 → 该人员添加到左侧消息列表顶部 -- 搜索框支持按联系人姓名搜索 -- 底部输入框支持文字输入和发送 -### 5. 通讯录弹窗 +--- + +### 5. 通讯录弹窗(contacts-dialog.html) + +![页面截图](screenshots/contacts-dialog.jpg) **功能说明:** 展示系统内所有可联系的内部人员,支持按角色筛选和姓名搜索,选中后添加到对话消息列表。 +**筛选条件:** 搜索框(搜索姓名)、角色下拉(全部角色/咨询专家/操作人员/专业人员/驻场人员/健康管理员) + +**联系人列表项:** 头像(按角色着色)、姓名、角色标签、详细信息 + +**不同角色显示差异化附加信息:** + +| 角色 | 附加信息 | +|------|----------| +| 咨询专家 | 所在医院、科室、职称 | +| 操作人员 | 应急中心名称 | +| 专业人员 | 职称 | +| 驻场人员 | 所在医院 | +| 健康管理员 | 单位、部门 | + **业务规则:** -- 人员按角色分类,不同角色显示差异化附加信息: - - 咨询专家:所在医院、科室、职称 - - 操作人员:应急中心名称 - - 专业人员:职称 - - 驻场人员:所在医院 - - 管理员:单位、部门 - 单次只能选择一位联系人 - 已存在于消息列表中的联系人不会重复添加 **交互说明:** -- 以弹窗形式打开 -- 顶部搜索框输入姓名实时过滤列表 -- 角色下拉框筛选指定角色的人员 - 点击人员行 → 选中高亮,右侧显示勾选标记 - 底部显示已选人数 - 点击「确认添加」→ 将选中人员添加到消息列表,关闭弹窗 -- 点击「取消」→ 关闭弹窗 -### 6. 历史咨询列表页 +--- -**功能说明:** 展示所有已结束的员工咨询记录,支持多条件筛选和数据导出。 +## 三、咨询记录 + +### 6. 咨询记录列表页(history-consult.html) + +![页面截图](screenshots/history-consult.jpg) + +**功能说明:** 查看所有咨询记录,分为「咨询专家」和「咨询小助手」两个 Tab。 + +**Tab — 咨询专家:** + +筛选条件(支持展开更多):咨询单号、姓名、员工编号、所属单位/部门(级联选择器,左列选单位,右列联动部门)、咨询类型(下拉,全部类型/图文咨询/视频咨询)、咨询状态(下拉,随咨询类型联动);展开后可见:专家姓名、专家医院、专家科室、专家类型(下拉,全部类型/收费专家/免费专家/其他专家)、发起咨询时间(日期范围) + +表格列:序号、咨询单号、姓名、员工编号、所属单位、所属部门、咨询类型、咨询状态、咨询专家、专家职称、专家医院、专家科室、专家类型、发起咨询时间、首次回复时间、咨询完成时间、咨询时长、评分(星级)、操作 + +状态标签颜色: + +| 状态 | 颜色 | +|------|------| +| 已完成 | 绿色 | +| 进行中 | 蓝色 | +| 待回复 | 橙色 | +| 待确认 | 蓝色 | +| 待开始 | 绿色 | +| 已拒绝 | 红色 | +| 已取消 | 灰色 | + +**Tab — 咨询小助手:** + +筛选条件:咨询单号、姓名、员工编号、所属单位/部门(级联选择器)、发起咨询时间(日期范围) + +表格列:序号、咨询单号、姓名、员工编号、所属单位、所属部门、咨询小助手、咨询状态、发起咨询时间、首次回复时间、咨询完成时间、咨询时长、操作 **业务规则:** -- 咨询状态包括:已完成、已转专家、已取消 -- 列表按发起时间倒序排列 +- 咨询状态随咨询类型联动:图文咨询状态为"待回复/进行中/已完成";视频咨询状态为"待确认/待开始/已完成/已取消/已拒绝" +- 序号、咨询单号、姓名固定在表格左侧,操作列固定在右侧 **交互说明:** -- 筛选条件:员工姓名、工号、咨询状态、时间范围 -- 点击「查询」→ 按条件过滤列表 +- 点击「更多条件」展开/收起高级筛选区 +- 点击「查看对话」→ 打开对话详情弹窗(720×680) +- 支持导出列表数据、查看导出任务 + +--- + +### 7. 对话详情弹窗(chat-detail-dialog.html) + +![页面截图](screenshots/chat-detail-dialog.jpg) + +**功能说明:** 展示某次咨询的完整对话记录,包含咨询摘要信息和消息流。以 iframe 弹窗形式打开。 + +**咨询信息摘要(三列网格):** 咨询单号、员工姓名(含工号)、所属单位、发起时间、咨询时长、咨询状态(标签) + +**对话内容:** +- 系统消息(居中灰色标签) +- 员工消息(左侧灰色气泡) +- 小助手消息(右侧蓝色浅底气泡) +- 转接专家通知(黄色背景卡片,显示转接目标专家信息) + +--- + +## 四、专家管理 + +### 8. 专家管理列表页(expert-manage.html) + +![页面截图](screenshots/expert-manage.jpg) + +**功能说明:** 展示平台所有咨询专家信息,支持新增、编辑、删除专家,以及开启/关闭咨询状态、重置密码、排班配置等操作。支持批量导入导出。 + +**筛选条件:** 用户账号、专家编号、专家姓名、医院(下拉,全部医院)、科室(下拉,全部科室/心血管内科/内分泌科/神经内科/骨科/消化内科/呼吸内科)、专家状态(下拉,全部状态/有效/无效)、咨询状态(下拉,全部状态/开启咨询/关闭咨询) + +**表格列:** 序号、用户账号、专家编号、姓名(含头像)、医院、科室、职称、专家状态、咨询状态、收费类型、排序(可编辑数字框)、是否推荐(Toggle 开关)、操作 + +**状态标签:** +- 专家状态:有效(绿色)、无效(红色) +- 咨询状态:开启咨询(绿色)、关闭咨询(红色) + +**操作列:** +- 关闭/开启咨询(根据当前状态切换) +- 详情 → 跳转新增/编辑专家页面(查看模式) +- 更多下拉:编辑 / 重置密码 / 排班配置(→ 排班配置弹窗 720×560) + +**交互说明:** +- 点击「新增专家」→ 跳转新增/编辑专家页面 - 点击「导出列表数据」→ 导出当前筛选结果 -- 点击行末「查看对话」→ 打开历史对话详情弹窗 +- 点击「查看导出任务」→ 打开导出任务列表弹窗(720×520) +- 点击「批量导入专家」→ 打开批量导入弹窗(600×480) +- 点击「查看导入任务」→ 打开导入任务列表弹窗(720×520) +- 排序数字框和推荐开关即时生效 -### 7. 历史对话详情弹窗 +--- -**功能说明:** 展示某次咨询的完整对话记录,包含咨询摘要信息和消息流。 +### 9. 新增/编辑专家(expert-detail-dialog.html) -**交互说明:** -- 顶部显示咨询单号、员工信息、状态等摘要 -- 中部为完整对话消息流 -- 转专家记录以黄色提示条展示 +![页面截图](screenshots/expert-detail-dialog.jpg) -### 8. 专家管理列表页 +**功能说明:** 新增、编辑或查看专家信息的独立页面,包含基本信息和扩展信息两个区块。通过 URL 参数区分新增/编辑/查看模式。 -**功能说明:** 展示平台所有咨询专家信息,支持新增、编辑、删除专家,以及开启/关闭咨询状态、重置密码等操作。支持批量导入导出。 +**面包屑:** 专家管理 > 新增专家(根据模式动态变化为"编辑专家"或"查看专家") -**业务规则:** -- 列表字段:专家姓名(含头像)、科室、职称、手机号、咨询状态、创建时间 -- 咨询状态:已开启(绿色)、已关闭(红色) -- 关闭咨询后该专家不再出现在员工端可选专家列表中 - -**交互说明:** -- 筛选条件:专家姓名、科室、咨询状态 -- 点击「新增专家」→ 打开专家详情弹窗(新增模式) -- 点击行末「详情」→ 打开专家详情弹窗(查看模式) -- 点击行末「编辑」→ 打开专家详情弹窗(编辑模式) -- 点击行末「关闭咨询」→ 确认后关闭该专家的咨询服务 -- 点击行末「开启咨询」→ 确认后开启该专家的咨询服务(仅已关闭状态显示) -- 点击行末「重置密码」→ 确认后重置专家登录密码 -- 点击行末「删除」→ 二次确认后删除专家 -- 点击「导出列表数据」→ 导出当前筛选结果 -- 点击「查看导出任务」→ 打开导出任务列表弹窗 -- 点击「批量导入专家」→ 打开批量导入弹窗 -- 点击「查看导入任务」→ 打开导入任务列表弹窗 - -### 9. 专家详情弹窗 - -**功能说明:** 新增/编辑/查看专家信息,包含基本信息、执业信息和咨询设置三个区块。 - -**交互说明:** -- 以弹窗形式打开 -- 新增模式:所有字段可编辑,底部显示「取消」和「保存」按钮 -- 编辑模式:回填已有数据,可修改 -- 查看模式:所有字段只读 +**表单字段 — 基本信息:** | 字段名 | 类型 | 必填 | 规则 | |--------|------|------|------| -| 头像 | 图片上传 | 是 | 支持jpg/png | -| 姓名 | 文本 | 是 | — | -| 性别 | 下拉 | 是 | 男/女 | -| 手机号 | 文本 | 是 | 11位手机号 | -| 身份证号 | 文本 | 否 | 18位 | -| 科室 | 下拉 | 是 | 预设科室列表 | -| 职称 | 下拉 | 是 | 主任医师/副主任医师/主治医师/住院医师 | -| 执业证号 | 文本 | 否 | — | -| 执业年限 | 数字 | 否 | — | -| 擅长领域 | 文本 | 否 | 逗号分隔 | -| 图文单价 | 数字 | 否 | 默认30 | -| 视频单价 | 数字 | 否 | 默认80 | -| 个人简介 | 文本域 | 否 | — | +| 头像 | 图片上传 | 否 | 支持 jpg/png | +| 账号 | 文本输入 | 是 | — | +| 密码 | 密码输入 | 是 | 不少于12位,必须包含大小写字母、数字、特殊符号 | +| 姓名 | 文本输入 | 是 | — | +| 性别 | 单选 | 是 | 男/女 | +| 身份证号 | 文本输入 | 否 | 18位 | +| 手机号 | 文本输入 | 否 | 11位手机号 | +| 医院 | 下拉选择 | 是 | 预设医院列表 | +| 科室 | 下拉选择 | 是 | 心脏内科/内分泌科/神经内科/骨科/消化内科/呼吸内科 | +| 职称 | 下拉选择 | 是 | 主任医师/副主任医师/主治医师/住院医师 | +| 职务 | 下拉选择 | 否 | 科室主任/副主任/无 | +| 专家类型 | 单选 | 是 | 收费专家/免费专家/其他专家 | +| 专家状态 | 单选 | 是 | 有效/无效 | +| 专家编号 | 文本输入 | 否 | — | +| 擅长疾病 | 文本输入 | 否 | 逗号分隔 | +| 注册日期 | 日期选择 | 否 | — | +| 出库日期 | 日期选择 | 否 | — | +| 是否推荐 | 单选 | 否 | 是/否,默认否 | +| 排序 | 数字输入 | 否 | — | +| 邮箱 | 文本输入 | 否 | — | -### 10. 批量导入专家弹窗 +**表单字段 — 扩展信息:** -**功能说明:** 通过Excel模板批量导入专家信息,分两步操作:下载模板、上传文件。 +| 字段名 | 类型 | 必填 | 规则 | +|--------|------|------|------| +| 学历 | 下拉选择 | 否 | 博士/硕士/本科/大专/其他 | +| 毕业院校 | 文本输入 | 否 | — | +| 毕业时间 | 日期选择 | 否 | — | +| 参加工作时间 | 日期选择 | 否 | — | +| 民族 | 下拉选择 | 否 | 汉族/回族/藏族/其他 | +| 籍贯 | 下拉选择 | 否 | 陕西/北京/上海/其他 | +| 个人简介 | 多行文本 | 否 | — | +| 职业经历 | 多行文本 | 否 | — | +| 获奖/论文 | 多行文本 | 否 | — | + +**业务规则:** +- 查看模式下所有字段只读 +- 编辑模式回填已有数据,可修改 **交互说明:** -- 点击「下载导入模板」→ 下载xlsx模板文件 -- 拖拽或点击上传区域 → 选择填好的xlsx文件 -- 点击「开始导入」→ 提交导入任务 -- 支持xlsx、xls格式,单次最多500条 +- 底部按钮:取消(返回专家管理列表)、保存 -### 11. 导出任务列表弹窗 +--- + +### 10. 排班配置弹窗(expert-schedule-dialog.html) + +![页面截图](screenshots/expert-schedule-dialog.jpg) + +**功能说明:** 配置某位专家的每周排班和视频咨询开关。以 iframe 弹窗形式嵌入。 + +**专家信息卡片(只读):** 头像(姓氏首字)、姓名、职称标签、专家编号、医院、科室、收费类型 + +**视频咨询开关:** Toggle 开关,开启时提示"已开启 — 患者可预约视频咨询",关闭时提示"已关闭 — 患者不可预约视频咨询" + +**排班表格(双行表头):** + +| | 上午 8:00-10:00 | 上午 10:00-12:00 | 下午 14:00-16:00 | 下午 16:00-18:00 | +|------|----------------|-----------------|-----------------|-----------------| +| 周一~周日 | 开诊/休诊开关 + 接诊人数 | 同左 | 同左 | 同左 | + +每个时段单元格包含: +- 开诊/休诊 Toggle 开关(开诊时标签绿色,休诊时灰色) +- 接诊人数数字输入框(52px 宽,休诊时禁用) + +**业务规则:** +- 工作日(周一至周五)默认开诊,上午每时段 5 人,下午每时段 4 人 +- 周末(周六、周日)默认休诊,人数为 0 +- 休诊时人数输入框禁用(灰色背景),开诊时可编辑 +- 从休诊切换为开诊时,若人数为 0 则自动填充为 5 +- 人数范围:0-999 + +**交互说明:** +- 点击「取消」或「保存」→ 通过 postMessage 通知父窗口关闭弹窗 + +--- + +### 11. 批量导入专家弹窗(expert-import-dialog.html) + +**功能说明:** 通过 Excel 模板批量导入专家信息,分两步操作:下载模板、上传文件。 + +**操作步骤:** +- Step 1:点击「下载导入模板」下载 xlsx 模板文件 +- Step 2:拖拽或点击上传区域选择填好的 xlsx 文件 + +**业务规则:** +- 支持 xlsx、xls 格式,单次最多 500 条 + +**交互说明:** +- 点击「开始导入」→ 提交导入任务 +- 通过 postMessage 通知父窗口关闭弹窗 + +--- + +### 12. 导出任务列表弹窗(export-task-dialog.html) **功能说明:** 展示历史导出任务记录,支持下载已完成的导出文件或重试失败任务。 -**交互说明:** -- 列表字段:任务名称、创建时间、状态、操作 -- 状态:已完成(绿色)、已失败(红色) -- 已完成 → 点击「下载」获取文件 -- 已失败 → 点击「重试」重新执行 +**表格列:** 任务名称、创建时间、状态、操作 -### 12. 导入任务列表弹窗 +**状态标签:** 已完成(绿色)、已失败(红色) + +**操作列:** 已完成 → 下载;已失败 → 重试 + +--- + +### 13. 导入任务列表弹窗(import-task-dialog.html) **功能说明:** 展示历史导入任务记录,包含导入结果统计(成功/失败条数)。 -**交互说明:** -- 列表字段:文件名、导入时间、状态、结果、操作 -- 有失败记录时 → 点击「下载失败记录」获取失败明细 -- 已失败 → 点击「重新导入」 +**表格列:** 文件名、导入时间、状态、结果(成功数绿色/失败数红色)、操作 -### 13. 体检标准化页面 +**操作列:** 有失败记录 → 下载失败记录;全部失败 → 重新导入 + +--- + +## 五、体检标准化 + +### 14. 体检标准化页面(checkup-standard.html) + +![页面截图](screenshots/checkup-standard.jpg) **功能说明:** 左侧体检分类树 + 右侧项目列表,供小助手查阅体检项目明细以回答员工相关问题。 +**左侧 — 分类树:** +- 搜索框:搜索大类/小类名称 +- 树形结构:大类 → 小类,大类可展开/收起 +- 每项显示:编码 + 名称 + 项目数量徽章 +- 大类列表:CQ01 化学检查、CQ02 物理检查、CQ03 心电常规、CQ04 内科、CQ05 外科、CQ06 妇科、CQ07 五官科、CQ08 其他检查 + +**右侧 — 项目列表:** +- 面包屑:大类 > 小类 +- 项目总数统计 +- 搜索框:搜索项目名称/编码 +- 表格列:序号、项目编码(等宽字体)、项目名称 + **业务规则:** - 分类包括:一般检查、血液检查、肝功能、肾功能、血脂、血糖、甲状腺、肿瘤标志物等 - 每个项目包含编码、参考范围、单位、临床意义 **交互说明:** - 点击左侧分类 → 右侧切换为该分类下的项目列表 -- 点击行末「查看明细」→ 打开体检项目明细弹窗 +- 点击项目行 → 打开体检项目明细弹窗 -### 14. 体检项目明细弹窗 +--- -**功能说明:** 展示单个体检项目的详细信息,包括参考范围、临床意义、关联套餐和注意事项。 +### 15. 体检项目明细弹窗(item-detail-dialog.html) + +![页面截图](screenshots/item-detail-dialog.jpg) + +**功能说明:** 展示单个体检项目的详细信息,包括参考范围、临床意义、关联套餐和注意事项。以新窗口弹窗形式打开。 + +**展示区域:** +- 基本信息:项目名称、项目编码(等宽字体)、所属分类、检测单位 +- 参考范围:正常范围、偏低(蓝色)、超重(橙色)、肥胖(红色),辅以可视化条形图 +- 临床意义:文字描述 +- 关联体检套餐:标签列表(基础套餐 A/标准套餐 B/高端套餐 C/入职体检/年度体检) +- 注意事项:编号列表 + +--- + +## 六、短信发送 + +### 16. 短信发送记录列表(sms-send.html) + +![页面截图](screenshots/sms-send.jpg) + +**功能说明:** 展示短信发送历史记录,支持新建短信。 + +**筛选条件:** 消息标题(文本输入)、发送状态(下拉:请选择/已发布/发送中/发送失败) + +**表格列:** 序号、标题、通知对象、发送状态、发送人、创建时间、发布进度(成功数/总数,绿色)、操作 + +**操作列:** 详情(→ 短信发送详情弹窗 640×600)、删除(红色) **交互说明:** -- 以新窗口弹窗形式打开 -- 参考范围以可视化条形图辅助展示 +- 点击「新增」→ 打开新建短信弹窗 +- 支持分页,每页条数可选 -### 15. 短信发送记录列表 +--- -**功能说明:** 展示短信发送历史记录和统计概览,支持新建短信。 +### 17. 新建短信弹窗(send-dialog.html) -**业务规则:** -- 顶部统计卡片显示本月发送总量、成功数、失败数、待发送数 -- 发送状态:已发送、发送失败、待发送(定时) +![页面截图](screenshots/send-dialog.jpg) -**交互说明:** -- 点击「新建短信」→ 打开新建短信弹窗 -- 点击行末「查看详情」→ 打开短信发送详情弹窗 -- 支持按状态和时间范围筛选 +**功能说明:** 创建并发送通知短信,支持选择发送对象和定时发送。以 iframe 弹窗形式打开。 -### 16. 新建短信弹窗 - -**功能说明:** 创建并发送通知短信,支持选择发送对象和定时发送。 - -**交互说明:** -- 发送对象支持四种模式:按单位、按部门、指定人员、全部员工 -- 点击对象类型切换 → 下方选择器联动变化 -- 短信内容实时字数统计(70字限制) -- 定时发送开关 → 开启后显示时间选择器 -- 点击「确认发送」→ 发送短信并关闭弹窗 +**表单字段表:** | 字段名 | 类型 | 必填 | 规则 | |--------|------|------|------| -| 发送对象 | 选择 | 是 | 四种模式选一 | -| 短信签名 | 下拉 | 是 | 预设签名 | -| 短信内容 | 文本域 | 是 | 不超过70字 | -| 定时发送 | 开关+时间 | 否 | 开启后必填时间 | - -### 17. 短信发送详情弹窗 - -**功能说明:** 展示某批次短信的发送结果,包括基本信息、短信内容预览、发送统计和失败记录。 +| 发送对象 | 选择(4种模式) | 是 | 按单位/按部门/指定人员/全部员工,选择后下方联动对应选择器 | +| 短信签名 | 下拉选择 | 是 | 预设签名列表 | +| 短信内容 | 多行文本 | 是 | 不超过 70 字,实时字数统计,超 70 字按多条计费提示 | +| 定时发送 | 开关 + 日期时间 | 否 | 开启后必填时间,关闭时时间选择器禁用 | **交互说明:** -- 以新窗口弹窗形式打开 -- 失败记录列出失败人员和原因 +- 点击对象类型切换 → 下方选择器联动变化 +- 点击「确认发送」→ 发送短信,通过 postMessage 关闭弹窗 -### 18. 咨询结算列表页 +--- -**功能说明:** 按月展示各专家的咨询结算数据,支持生成和下载结算报表。 +### 18. 短信发送详情弹窗(sms-detail-dialog.html) + +![页面截图](screenshots/sms-detail-dialog.jpg) + +**功能说明:** 展示某批次短信的发送结果,包括基本信息、短信内容预览、发送统计和失败记录。以新窗口弹窗形式打开。 + +**基本信息:** 发送批次(等宽字体)、发送状态(标签)、发送对象、发送时间、操作人、短信签名 + +**短信内容:** 灰色预览卡片 + +**发送统计(4 个统计块):** 发送总数(蓝色)、发送成功(绿色)、发送失败(红色)、成功率 + +**失败记录列表:** 姓名(脱敏手机号)+ 失败原因(号码已停机/号码不存在/运营商拦截/发送超时),红色背景行 + +--- + +## 七、常用语 + +### 19. 常用语管理(config-phrase.html) + +![页面截图](screenshots/config-phrase.jpg) + +**功能说明:** 管理小助手在咨询对话中使用的常用语模板,支持新增、编辑、删除和搜索。 + +**筛选条件:** 分类(下拉:全部分类/问候语/引导语/结束语/注意事项/其他)、关键词(文本输入) + +**表格列:** 序号、常用语内容(最大宽度 480px)、分类(标签)、使用次数、创建时间、操作(编辑/删除) + +**分类标签颜色:** 问候语/注意事项/结束语为蓝色标签,引导语为绿色标签 + +**抽屉表单字段表:** + +| 字段名 | 类型 | 必填 | 规则 | +|--------|------|------|------| +| 常用语内容 | 多行文本 | 是 | — | +| 分类 | 下拉选择 | 是 | 问候语/引导语/结束语/注意事项/其他 | +| 排序序号 | 数字输入 | 否 | 默认 99,数字越小越靠前 | + +**交互说明:** +- 点击「新增常用语」→ 右侧抽屉滑出,标题"新增常用语" +- 点击「编辑」→ 右侧抽屉滑出,标题"编辑常用语",回填数据 + +--- + +## 八、咨询结算 + +### 20. 咨询结算列表页(consult-settle.html) + +![页面截图](screenshots/consult-settle.jpg) + +**功能说明:** 管理所有结算批次,查看结算状态,发起新结算。 + +**筛选条件:** 年份(下拉:2026年/2025年/2024年/全部年份)、结算名称(文本输入)、结算状态(下拉:全部状态/待结算/结算中/已结算) + +**表格列:** 序号、结算名称、结算开始月份、结算结束月份、结算状态、创建时间、结算开始时间、结算结束时间、操作 + +**结算状态标签:** 待结算(橙色)、结算中(蓝色)、已结算(绿色) + +**操作列按状态变化:** + +| 状态 | 操作 | +|------|------| +| 待结算 | 开始结算 / 编辑配置 / 删除 | +| 结算中 | 查看报表(置灰不可点)/ 查看配置 / 删除 | +| 已结算 | 查看报表 / 查看配置 / 删除 | + +**交互说明:** +- 点击「新增结算」→ 跳转新增结算页面 +- 点击「编辑配置/查看配置」→ 跳转结算配置页面(编辑/查看模式) +- 点击「查看报表」→ 跳转结算报表页面 +- 支持导出列表数据、查看导出任务 + +--- + +### 21. 新增/编辑结算(consult-settle-add.html) + +![页面截图](screenshots/consult-settle-add.jpg) + +**功能说明:** 创建结算批次,配置费用规则和结算周期。通过 URL 参数 `mode` 区分新增(add)、编辑(edit)、查看(view)三种模式。 + +**面包屑:** 咨询结算 > 新增结算(根据 mode 动态变化为"编辑配置"或"查看配置") + +**表单区域一 — 基本信息:** + +| 字段名 | 类型 | 必填 | 规则 | +|--------|------|------|------| +| 结算名称 | 文本输入 | 是 | 宽度 400px | +| 是否产生通讯费用 | 单选 | 是 | 否/是,默认"否" | +| 通讯费用 | 数字输入 | 条件必填 | 仅"是"时显示,步长 0.01 | + +**表单区域二 — 结算费用设置(动态表格):** + +| 字段名 | 类型 | 必填 | 规则 | +|--------|------|------|------| +| 费用类型 | 下拉选择 | 是 | 职称/单独设置 | +| 结算对象 | 联动下拉 | 是 | 职称→主任医师/副主任医师/主治医师/住院医师;单独设置→具体医生 | +| 图文咨询费用 | 数字输入 | 是 | 单位:元,步长 0.01 | +| 视频咨询费用 | 数字输入 | 是 | 单位:元,步长 0.01 | + +- 支持「+ 新增费用规则」添加行,至少保留 1 行 + +**表单区域三 — 结算周期设置:** +- 开始月份和结束月份(month 类型选择器) +- 自动生成月份列表表格,每月可选范围类型(自然月/自定义日期),自定义时显示起止日期选择器 **业务规则:** -- 顶部统计卡片显示待结算金额、已结算金额、年度累计、待结算专家数 -- 结算状态:待结算、结算中、已结算 -- 结算金额 = 图文次数×图文单价 + 视频次数×视频单价 +- 费用类型选择"职称"时,结算对象联动为职称列表;选择"单独设置"时联动为医生列表 +- 未选费用类型时,结算对象下拉禁用 +- 查看模式下所有控件禁用,隐藏新增/删除按钮,底部仅显示"返回" + +--- + +### 22. 结算报表(consult-settle-report.html) + +![页面截图](screenshots/consult-settle-report.jpg) + +**功能说明:** 查看某期结算中各专家的咨询次数和费用汇总。 + +**面包屑:** 咨询结算 > 结算报表 + +**筛选条件:** 专家编号(文本输入)、专家名称(文本输入)、专家医院(下拉选择) + +**表格列:** 专家编号、专家姓名(加粗)、专家职称、专家医院、图文咨询单价(元)、视频咨询单价(元)、图文咨询次数(可排序)、视频咨询次数(可排序)、总咨询费(元)(可排序)、结算费(元)(可排序,橙色加粗高亮)、操作 **交互说明:** -- 点击「生成结算报表」→ 生成当月报表 -- 点击「下载报表」→ 下载报表文件 -- 点击行末「查看明细」→ 打开报表详情弹窗 +- 排序列点击切换升序/降序,同时只有一列处于排序状态 +- 点击「咨询详情」→ 弹出模态框,标题动态显示专家姓名 +- 弹窗表格列:咨询单号、姓名、员工工号、所属单位、所属部门、咨询类型(标签)、咨询状态(标签)、发起咨询时间、首次回复时间、咨询完成时间、咨询时长、评分(星级) +- 已取消状态的咨询:回复时间/完成时间/时长/评分均显示"—" +- 支持导出列表数据、查看导出任务 -### 19. 报表详情弹窗 +--- -**功能说明:** 展示单个专家的结算明细,包括专家信息、结算金额、咨询明细和月度趋势。 +### 23. 结算明细弹窗(report-detail-dialog.html) + +![页面截图](screenshots/report-detail-dialog.jpg) + +**功能说明:** 展示单个专家的结算明细,包括专家信息、结算金额、咨询明细和月度趋势。以新窗口弹窗形式打开。 + +**专家信息头:** 头像、姓名、状态标签(待结算橙色)、科室·职称·医院 + +**结算信息:** 结算周期、结算状态(橙色)、应结算金额(大号橙色高亮)、生成时间 + +**咨询明细表:** 咨询类型、咨询次数、单价、小计,底部合计行 + +**月度统计:** 总咨询次数、日均咨询、满意度(绿色)、24h 回复率(绿色) **交互说明:** -- 以新窗口弹窗形式打开 - 点击「打印结算单」→ 调用浏览器打印功能 diff --git a/web-admin/health-consult/assistant/doc/screenshots/chat-detail-dialog.jpg b/web-admin/health-consult/assistant/doc/screenshots/chat-detail-dialog.jpg new file mode 100644 index 0000000..7bc8fd4 Binary files /dev/null and b/web-admin/health-consult/assistant/doc/screenshots/chat-detail-dialog.jpg differ diff --git a/web-admin/health-consult/assistant/doc/screenshots/chat-message.jpg b/web-admin/health-consult/assistant/doc/screenshots/chat-message.jpg new file mode 100644 index 0000000..e617dd8 Binary files /dev/null and b/web-admin/health-consult/assistant/doc/screenshots/chat-message.jpg differ diff --git a/web-admin/health-consult/assistant/doc/screenshots/checkup-standard.jpg b/web-admin/health-consult/assistant/doc/screenshots/checkup-standard.jpg new file mode 100644 index 0000000..fe9acbd Binary files /dev/null and b/web-admin/health-consult/assistant/doc/screenshots/checkup-standard.jpg differ diff --git a/web-admin/health-consult/assistant/doc/screenshots/config-phrase.jpg b/web-admin/health-consult/assistant/doc/screenshots/config-phrase.jpg new file mode 100644 index 0000000..31a4dc6 Binary files /dev/null and b/web-admin/health-consult/assistant/doc/screenshots/config-phrase.jpg differ diff --git a/web-admin/health-consult/assistant/doc/screenshots/consult-settle-add.jpg b/web-admin/health-consult/assistant/doc/screenshots/consult-settle-add.jpg new file mode 100644 index 0000000..2d3774b Binary files /dev/null and b/web-admin/health-consult/assistant/doc/screenshots/consult-settle-add.jpg differ diff --git a/web-admin/health-consult/assistant/doc/screenshots/consult-settle-report.jpg b/web-admin/health-consult/assistant/doc/screenshots/consult-settle-report.jpg new file mode 100644 index 0000000..e6c4d7c Binary files /dev/null and b/web-admin/health-consult/assistant/doc/screenshots/consult-settle-report.jpg differ diff --git a/web-admin/health-consult/assistant/doc/screenshots/consult-settle.jpg b/web-admin/health-consult/assistant/doc/screenshots/consult-settle.jpg new file mode 100644 index 0000000..8ad7b85 Binary files /dev/null and b/web-admin/health-consult/assistant/doc/screenshots/consult-settle.jpg differ diff --git a/web-admin/health-consult/assistant/doc/screenshots/contacts-dialog.jpg b/web-admin/health-consult/assistant/doc/screenshots/contacts-dialog.jpg new file mode 100644 index 0000000..aa8b286 Binary files /dev/null and b/web-admin/health-consult/assistant/doc/screenshots/contacts-dialog.jpg differ diff --git a/web-admin/health-consult/assistant/doc/screenshots/current-consult.jpg b/web-admin/health-consult/assistant/doc/screenshots/current-consult.jpg new file mode 100644 index 0000000..7f83c27 Binary files /dev/null and b/web-admin/health-consult/assistant/doc/screenshots/current-consult.jpg differ diff --git a/web-admin/health-consult/assistant/doc/screenshots/employee-profile-dialog.jpg b/web-admin/health-consult/assistant/doc/screenshots/employee-profile-dialog.jpg new file mode 100644 index 0000000..9b293cf Binary files /dev/null and b/web-admin/health-consult/assistant/doc/screenshots/employee-profile-dialog.jpg differ diff --git a/web-admin/health-consult/assistant/doc/screenshots/expert-detail-dialog.jpg b/web-admin/health-consult/assistant/doc/screenshots/expert-detail-dialog.jpg new file mode 100644 index 0000000..1eb4544 Binary files /dev/null and b/web-admin/health-consult/assistant/doc/screenshots/expert-detail-dialog.jpg differ diff --git a/web-admin/health-consult/assistant/doc/screenshots/expert-manage.jpg b/web-admin/health-consult/assistant/doc/screenshots/expert-manage.jpg new file mode 100644 index 0000000..9b6658f Binary files /dev/null and b/web-admin/health-consult/assistant/doc/screenshots/expert-manage.jpg differ diff --git a/web-admin/health-consult/assistant/doc/screenshots/expert-schedule-dialog.jpg b/web-admin/health-consult/assistant/doc/screenshots/expert-schedule-dialog.jpg new file mode 100644 index 0000000..ca927e2 Binary files /dev/null and b/web-admin/health-consult/assistant/doc/screenshots/expert-schedule-dialog.jpg differ diff --git a/web-admin/health-consult/assistant/doc/screenshots/history-consult.jpg b/web-admin/health-consult/assistant/doc/screenshots/history-consult.jpg new file mode 100644 index 0000000..a571c8d Binary files /dev/null and b/web-admin/health-consult/assistant/doc/screenshots/history-consult.jpg differ diff --git a/web-admin/health-consult/assistant/doc/screenshots/item-detail-dialog.jpg b/web-admin/health-consult/assistant/doc/screenshots/item-detail-dialog.jpg new file mode 100644 index 0000000..ef8315d Binary files /dev/null and b/web-admin/health-consult/assistant/doc/screenshots/item-detail-dialog.jpg differ diff --git a/web-admin/health-consult/assistant/doc/screenshots/report-detail-dialog.jpg b/web-admin/health-consult/assistant/doc/screenshots/report-detail-dialog.jpg new file mode 100644 index 0000000..5ab6d13 Binary files /dev/null and b/web-admin/health-consult/assistant/doc/screenshots/report-detail-dialog.jpg differ diff --git a/web-admin/health-consult/assistant/doc/screenshots/select-expert-dialog.jpg b/web-admin/health-consult/assistant/doc/screenshots/select-expert-dialog.jpg new file mode 100644 index 0000000..ebe00cf Binary files /dev/null and b/web-admin/health-consult/assistant/doc/screenshots/select-expert-dialog.jpg differ diff --git a/web-admin/health-consult/assistant/doc/screenshots/send-dialog.jpg b/web-admin/health-consult/assistant/doc/screenshots/send-dialog.jpg new file mode 100644 index 0000000..9502ea3 Binary files /dev/null and b/web-admin/health-consult/assistant/doc/screenshots/send-dialog.jpg differ diff --git a/web-admin/health-consult/assistant/doc/screenshots/sms-detail-dialog.jpg b/web-admin/health-consult/assistant/doc/screenshots/sms-detail-dialog.jpg new file mode 100644 index 0000000..71331cf Binary files /dev/null and b/web-admin/health-consult/assistant/doc/screenshots/sms-detail-dialog.jpg differ diff --git a/web-admin/health-consult/assistant/doc/screenshots/sms-send.jpg b/web-admin/health-consult/assistant/doc/screenshots/sms-send.jpg new file mode 100644 index 0000000..88234c8 Binary files /dev/null and b/web-admin/health-consult/assistant/doc/screenshots/sms-send.jpg differ diff --git a/web-admin/health-consult/doc/CHANGELOG.md b/web-admin/health-consult/doc/CHANGELOG.md index 899c595..cf709da 100644 --- a/web-admin/health-consult/doc/CHANGELOG.md +++ b/web-admin/health-consult/doc/CHANGELOG.md @@ -1,5 +1,36 @@ # 专家咨询(管理端)变更记录 +## [2026-04-17] docs: 重构PRD文档结构,按一级菜单分类组织,补充复杂弹窗截图 + +按用户要求重构 PRD 文档结构,页面清单和逐页说明均按一级菜单业务分类组织,新增4张复杂弹窗截图。 + +**涉及文件:** + +- `doc/PRD.md` — 重构文档结构 + - 页面清单按5个一级菜单分组(咨询数据/档案/异常事件/基础配置/咨询结算),增加"二级菜单"列 + - 逐页说明按一级菜单分节(一~五),每节罗列该菜单下所有页面和弹窗 + - 新增4张复杂弹窗截图引用(医院配置弹窗/科室配置弹窗/疾病配置弹窗/常用语弹窗) +- `doc/screenshots/` — 新增4张复杂弹窗截图(1440×900 视口,JPEG 85%) + +## [2026-04-16] feat: 完善PRD文档,覆盖全部31个页面/弹窗 + +根据全部原型页面重写 PRD 文档,补充缺失的页面说明和详细字段定义。 + +**涉及文件:** + +- `doc/PRD.md` — 重写,完善产品需求文档 + - 更新页面导航结构树,新增视频详情、员工明细、单位明细、结算等页面 + - 补充视频咨询状态流转图(待确认→待开始→已完成/已拒绝/已取消) + - 页面清单从 22 项扩充至 31 项 + - 新增视频咨询详情 5 种状态页面的说明和差异对照表 + - 新增员工咨询明细(archive-personal-detail.html)说明 + - 新增单位报表明细(archive-unit-detail.html)说明 + - 新增单位咨询统计(unit-statistics.html)说明 + - 新增新增结算(settlement-add.html)含完整表单字段表 + - 新增结算报表(settlement-report.html)说明 + - 补充所有列表页的筛选条件、表格列定义、业务规则和交互说明 + - 补充所有弹窗的表单字段表(字段名/类型/必填/规则) + ## 2026-04-16 ### feat: 新增单位报表明细页,支持从列表页跳转 diff --git a/web-admin/health-consult/doc/PRD.md b/web-admin/health-consult/doc/PRD.md index 27a2a02..c17164f 100644 --- a/web-admin/health-consult/doc/PRD.md +++ b/web-admin/health-consult/doc/PRD.md @@ -2,333 +2,526 @@ ## 模块概述 -专家咨询管理端为运营/管理人员提供咨询业务的全流程管理能力,涵盖咨询记录查看、数据档案管理、专家统计与结算、异常监控、基础数据配置等功能。 +专家咨询管理端为运营/管理人员提供咨询业务的全流程管理能力,涵盖咨询历史记录查看、用户评价管理、咨询档案与数据报表、专家统计与费用结算、异常数据监控、基础数据配置等功能。 ### 页面导航结构 ``` 专家咨询(管理端) -├── 咨询记录 -│ ├── 专家咨询记录 → 专家对话详情 -│ ├── 小助手咨询记录 → 小助手对话详情 -│ └── 用户评价 -├── 咨询档案 -│ ├── 咨询档案列表 → 咨询档案详情 -│ ├── 个人咨询数据 -│ └── 单位报表数据 -├── 统计与结算 +├── 咨询数据 +│ ├── 咨询历史记录 +│ │ ├── 员工咨询专家 → 专家对话详情 / 视频咨询详情(5种状态) +│ │ ├── 员工咨询小助手 → 小助手对话详情 +│ │ └── 用户评价 +│ ├── 咨询档案 → 咨询档案详情 │ ├── 专家咨询统计 -│ └── 咨询结算 -├── 异常监控 -│ ├── 结果异常 -│ └── 系统脏数据 -└── 基础配置 - ├── 医院配置 ⇄ 医院配置弹窗 - ├── 科室配置 ⇄ 科室配置弹窗 - ├── 疾病配置 ⇄ 疾病配置弹窗 - ├── 咨询须知 - └── 常用语管理 ⇄ 常用语弹窗 +│ └── 单位咨询统计 → 单位报表明细 +├── 档案 +│ ├── 个人咨询数据 → 员工咨询明细 +│ └── 单位报表数据 → 单位报表明细 +├── 异常事件 +│ └── 异常数据 +├── 基础配置 +│ ├── 医院配置 ⇄ 医院配置弹窗 +│ ├── 科室配置 ⇄ 科室配置弹窗 +│ ├── 疾病配置 ⇄ 疾病配置弹窗 +│ ├── 咨询须知 +│ └── 常用语管理 ⇄ 常用语弹窗 +└── 咨询结算 + ├── 咨询结算列表 → 新增/编辑结算 + └── 结算报表 ``` -### 状态流转图 +### 图文咨询状态流转 ```mermaid stateDiagram-v2 - [*] --> 待回复 : 员工发起咨询 + [*] --> 待回复 : 员工发起图文咨询 待回复 --> 进行中 : 专家首次回复 - 进行中 --> 已结束 : 任一方结束咨询 - 已结束 --> 已评价 : 员工提交评价 - 已结束 --> [*] : 超时未评价自动关闭 - 已评价 --> [*] + 进行中 --> 已完成 : 任一方结束咨询 + 已完成 --> [*] +``` + +### 视频咨询状态流转 + +```mermaid +stateDiagram-v2 + [*] --> 待确认 : 员工发起视频预约 + 待确认 --> 待开始 : 专家确认接诊 + 待确认 --> 已拒绝 : 专家拒绝 + 待确认 --> 已取消 : 员工取消 + 待开始 --> 已完成 : 视频通话结束 + 待开始 --> 已取消 : 员工取消 + 已完成 --> [*] + 已拒绝 --> [*] + 已取消 --> [*] ``` ## 页面清单 -| 序号 | 文件名 | 页面名称 | 类型 | -|------|--------|----------|------| -| 1 | history-expert.html | 专家咨询记录 | 页面 | -| 2 | history-expert-detail.html | 专家对话详情 | 页面 | -| 3 | history-assistant.html | 小助手咨询记录 | 页面 | -| 4 | history-assistant-detail.html | 小助手对话详情 | 页面 | -| 5 | history-evaluation.html | 用户评价 | 页面 | -| 6 | consult-record.html | 咨询档案 | 页面 | -| 7 | consult-record-detail.html | 咨询档案详情 | 页面 | -| 8 | archive-personal.html | 个人咨询数据 | 页面 | -| 9 | archive-unit.html | 单位报表数据 | 页面 | -| 10 | expert-statistics.html | 专家咨询统计 | 页面 | -| 11 | settlement.html | 咨询结算 | 页面 | -| 12 | exception-result.html | 结果异常 | 页面 | -| 13 | exception-dirty.html | 系统脏数据 | 页面 | -| 14 | config-hospital.html | 医院配置 | 页面 | -| 15 | config-hospital-dialog.html | 医院配置弹窗 | 弹窗 | -| 16 | config-department.html | 科室配置 | 页面 | -| 17 | config-department-dialog.html | 科室配置弹窗 | 弹窗 | -| 18 | config-disease.html | 疾病配置 | 页面 | -| 19 | config-disease-dialog.html | 疾病配置弹窗 | 弹窗 | -| 20 | config-notice.html | 咨询须知 | 页面 | -| 21 | config-phrase.html | 常用语管理 | 页面 | -| 22 | config-phrase-dialog.html | 常用语弹窗 | 弹窗 | +### 咨询数据 + +| 序号 | 二级菜单 | 页面/弹窗 | 文件 | 类型 | +|------|----------|-----------|------|------| +| 1 | 咨询历史记录 | 专家咨询记录 | history-expert.html | 页面 | +| 2 | | 专家对话详情 | history-expert-detail.html | 页面 | +| 3 | | 视频详情-待确认 | video-detail-pending-confirm.html | 页面 | +| 4 | | 视频详情-待开始 | video-detail-pending-start.html | 页面 | +| 5 | | 视频详情-已完成 | video-detail-completed.html | 页面 | +| 6 | | 视频详情-已拒绝 | video-detail-rejected.html | 页面 | +| 7 | | 视频详情-已取消 | video-detail-cancelled.html | 页面 | +| 8 | | 小助手咨询记录 | history-assistant.html | 页面 | +| 9 | | 小助手对话详情 | history-assistant-detail.html | 页面 | +| 10 | | 用户评价 | history-evaluation.html | 页面 | +| 11 | 咨询档案 | 咨询档案列表 | consult-record.html | 页面 | +| 12 | | 咨询档案详情 | consult-record-detail.html | 页面 | +| 13 | 专家咨询统计 | 专家咨询统计 | expert-statistics.html | 页面 | +| 14 | 单位咨询统计 | 单位咨询统计 | unit-statistics.html | 页面 | + +### 档案 + +| 序号 | 二级菜单 | 页面/弹窗 | 文件 | 类型 | +|------|----------|-----------|------|------| +| 15 | 个人咨询数据 | 个人咨询数据列表 | archive-personal.html | 页面 | +| 16 | | 员工咨询明细 | archive-personal-detail.html | 页面 | +| 17 | 单位报表数据 | 单位报表数据列表 | archive-unit.html | 页面 | +| 18 | | 单位报表明细 | archive-unit-detail.html | 页面 | + +### 异常事件 + +| 序号 | 二级菜单 | 页面/弹窗 | 文件 | 类型 | +|------|----------|-----------|------|------| +| 19 | 异常数据 | 异常数据列表 | exception-dirty.html | 页面 | + +### 基础配置 + +| 序号 | 二级菜单 | 页面/弹窗 | 文件 | 类型 | +|------|----------|-----------|------|------| +| 20 | 医院配置 | 医院配置列表 | config-hospital.html | 页面 | +| 21 | | 医院配置弹窗 | config-hospital-dialog.html | 弹窗 | +| 22 | 科室配置 | 科室配置列表 | config-department.html | 页面 | +| 23 | | 科室配置弹窗 | config-department-dialog.html | 弹窗 | +| 24 | 疾病配置 | 疾病配置列表 | config-disease.html | 页面 | +| 25 | | 疾病配置弹窗 | config-disease-dialog.html | 弹窗 | +| 26 | 咨询须知 | 咨询须知编辑 | config-notice.html | 页面 | +| 27 | 常用语管理 | 常用语管理列表 | config-phrase.html | 页面 | +| 28 | | 常用语弹窗 | config-phrase-dialog.html | 弹窗 | + +### 咨询结算 + +| 序号 | 二级菜单 | 页面/弹窗 | 文件 | 类型 | +|------|----------|-----------|------|------| +| 29 | 咨询结算 | 咨询结算列表 | settlement.html | 页面 | +| 30 | | 新增/编辑结算 | settlement-add.html | 页面 | +| 31 | | 结算报表 | settlement-report.html | 页面 | + +--- ## 逐页说明 --- +## 一、咨询数据 + ### 1. 专家咨询记录(history-expert.html) -**功能说明:** 查看员工与专家的咨询记录列表,支持多维度筛选和高级条件展开。 +![页面截图](screenshots/history-expert.jpg) + +**功能说明:** 管理员查看所有员工向专家发起的咨询历史记录,支持多维度筛选、高级条件展开和数据导出。 + +**筛选条件:** 年份(下拉,2026/2025/2024/2023)、咨询单号、姓名、员工编号、咨询类型(下拉,全部/图文咨询/视频咨询)、咨询状态(下拉,随咨询类型联动,见业务规则)、所属单位/部门(级联选择器,左列选单位,右列联动部门);展开后可见:专家姓名、专家医院(下拉)、专家科室(下拉)、专家类型(下拉,收费专家/免费专家/其他专家)、发起咨询时间(日期范围)、首次回复时间(日期范围) + +**表格列:** 序号、咨询单号、姓名、员工工号、所属单位、所属部门、咨询类型、咨询状态、咨询专家、专家职称、专家医院、专家科室、专家类型、发起咨询时间、首次回复时间、咨询完成时间、咨询时长、评分(星级)、操作 **业务规则:** -- 咨询状态随咨询类型联动:图文咨询有"待回复/进行中/已结束",视频咨询有"待接诊/已预约/已完成/已取消" -- 单位与部门为级联关系,选择单位后动态加载部门列表 +- 咨询状态随咨询类型联动:图文咨询状态为"待回复/进行中/已完成";视频咨询状态为"待确认/待开始/已完成/已取消/已拒绝" +- 序号、咨询单号、姓名固定在表格左侧,操作列固定在右侧 +- 分页支持 10/20 条每页切换 **交互说明:** -- 点击"更多条件"展开/收起高级筛选区(专家姓名、医院、科室、专家类型、时间范围) -- 点击"查看对话"跳转到专家对话详情 -- 支持导出列表数据、查看导出任务 +- 点击"更多条件"展开/收起高级筛选区 +- 图文咨询记录操作列显示"查看对话",点击弹出对话模态框展示聊天气泡 +- 视频咨询记录操作列显示"查看详情",点击以 overlay iframe 弹窗加载对应状态的视频详情页 +- 点击"导出列表数据"导出当前筛选结果 +- 点击"查看导出任务"查看历史导出记录 --- ### 2. 专家对话详情(history-expert-detail.html) -**功能说明:** 展示单次员工与专家咨询的完整对话记录,右侧显示员工信息、专家信息和评价信息。 +![页面截图](screenshots/history-expert-detail.jpg) -**业务规则:** -- 对话按时间正序展示,区分员工消息(右侧蓝色)、专家消息(左侧白色)、系统通知(居中灰色) -- 支持图片消息的展示 +**功能说明:** 展示单次员工与专家图文咨询的完整对话记录,采用左右两栏布局。 + +**左侧 — 对话记录区:** +- 头部元信息:咨询单号、咨询类型(图文咨询)、咨询状态、咨询时长、发起时间、结束时间 +- 对话气泡:员工消息(右侧蓝色气泡)、专家消息(左侧灰色气泡)、系统消息(居中灰色标签) +- 支持图片消息展示(如体检报告图片) + +**右侧 — 信息面板(3张卡片):** +- 员工信息:姓名、工号、所属单位、职务、联系电话(脱敏显示) +- 专家信息:姓名、科室、职称、所属医院 +- 评价信息:评分(星级+数值)、评价时间、评价文字 **交互说明:** -- 面包屑导航可返回专家咨询记录列表 -- 点击"打印记录"打印当前对话 -- 右侧面板展示员工基本信息、专家基本信息及用户评价(星级+文字) +- 面包屑"员工咨询专家"可返回列表页 +- 点击"打印记录"调用浏览器打印功能 --- -### 3. 小助手咨询记录(history-assistant.html) +### 3-7. 视频咨询详情(5种状态页面) -**功能说明:** 查看员工与咨询小助手的对话记录列表,支持按员工信息和时间筛选。 +![待确认](screenshots/video-detail-pending-confirm.jpg) +![待开始](screenshots/video-detail-pending-start.jpg) +![已完成](screenshots/video-detail-completed.jpg) +![已拒绝](screenshots/video-detail-rejected.jpg) +![已取消](screenshots/video-detail-cancelled.jpg) + +视频咨询详情为同一页面的5种状态变体,共享统一的信息展示结构,根据咨询状态展示不同的附加信息。 + +**通用结构:** +- 顶部标题栏:左侧"视频咨询详情"标题 + 右侧状态标签 +- 信息网格区(两列布局):员工姓名、咨询专家(含职称)、专家医院、专家科室、发起时间、预约时间 +- 咨询人信息折叠面板(可展开/收起,默认展开): + - 基本信息:咨询人姓名、性别、出生日期、与本人关系 + - 生活习惯:是否抽烟、是否饮酒、饮食喜好、睡眠质量 + - 身体情况:身高、体重、过敏史、遗传史、既往史、其他疾病 + - 本次档案:问题描述、持续时间、检查资料(检查报告/患处照片附件卡片)、医院名称、科室、疾病名称、期望帮助 + +**各状态差异:** + +| 状态 | 文件名 | 标签颜色 | 附加内容 | 面板主色调 | +|------|--------|----------|----------|-----------| +| 待确认 | video-detail-pending-confirm.html | 橙黄 | 无 | 蓝色 | +| 待开始 | video-detail-pending-start.html | 蓝色 | 无 | 蓝色 | +| 已完成 | video-detail-completed.html | 绿色 | 统计行(咨询时长+员工评分)+ 时间卡片(拨打/结束时间) | 蓝色 | +| 已拒绝 | video-detail-rejected.html | 红色 | 拒绝原因卡片(拒绝时间+拒绝原因) | 红色 | +| 已取消 | video-detail-cancelled.html | 灰色 | 取消原因卡片(取消人+取消时间+取消原因) | 灰色 | **业务规则:** -- 咨询状态包含:已结束、进行中、待回复 -- 单位与部门为级联关系 +- 所有状态页面均为纯查看页面,管理端不提供操作按钮 +- 已拒绝状态下整个面板的视觉色调变为红色,强化拒绝状态感知 +- 已取消状态下面板色调变为灰色,呈现"已失效"视觉风格 +- 已完成状态额外展示咨询时长(分钟)和员工评分(星级) + +--- + +### 8. 小助手咨询记录(history-assistant.html) + +![页面截图](screenshots/history-assistant.jpg) + +**功能说明:** 管理员查看所有员工与 AI 小助手的咨询对话记录列表。 + +**筛选条件:** 年份、咨询单号、姓名、员工编号、所属单位/部门(级联选择器)、发起咨询时间(日期范围) + +**表格列:** 序号、咨询单号、姓名、员工编号、所属单位、所属部门、咨询小助手、咨询状态、发起咨询时间、首次回复时间、咨询完成时间、咨询时长、操作 + +**业务规则:** +- 咨询状态值:已结束(灰色)、进行中(蓝色)、待回复(橙色) +- 小助手咨询仅有文字对话,无咨询类型区分 +- 无评分列(小助手咨询不支持评价) **交互说明:** -- 点击"查看对话"跳转到小助手对话详情 +- 点击"查看对话"弹出模态框展示对话气泡 - 支持导出列表数据、查看导出任务 --- -### 4. 小助手对话详情(history-assistant-detail.html) +### 9. 小助手对话详情(history-assistant-detail.html) -**功能说明:** 展示员工与咨询小助手的完整对话记录及会话统计。 +![页面截图](screenshots/history-assistant-detail.jpg) + +**功能说明:** 展示员工与小助手的完整对话记录及会话统计,左右两栏布局。 + +**左侧 — 对话记录区:** +- 头部元信息:会话 ID、消息数、时长、转专家状态、起止时间 +- 对话气泡:小助手消息(左侧绿色头像"助")、员工消息(右侧蓝色头像) +- 转接专家通知条(橙色背景):显示转接目标专家信息 +- 系统消息:会话开始/结束标记 + +**右侧 — 信息面板:** +- 员工信息:姓名、工号、所属单位、职务 +- 会话统计:总消息数、员工发送数、助手回复数、会话时长、是否转专家 **业务规则:** -- 对话区分系统消息、用户消息、助手消息、转接专家通知 -- 会话统计包含消息数、时长、是否转专家 +- 小助手对话可触发"转专家"流程,转接后会话结束并标记转接目标专家 **交互说明:** -- 面包屑导航可返回小助手咨询记录列表 -- 点击"打印记录"打印当前对话 -- 右侧面板展示员工信息和会话统计 +- 面包屑"员工咨询小助手"可返回列表页 +- 点击"打印记录"调用浏览器打印功能 --- -### 5. 用户评价(history-evaluation.html) +### 10. 用户评价(history-evaluation.html) -**功能说明:** 查看和管理员工对咨询专家的评价记录。 +![页面截图](screenshots/history-evaluation.jpg) + +**功能说明:** 管理员查看所有员工对专家咨询的评价记录,支持按评分筛选差评。 + +**筛选条件:** 年份、咨询单号、姓名、员工编号、专家姓名、评分筛选(全部/5星/4星/3星/2星及以下(差评))、评价时间(日期范围) + +**表格列:** 序号、咨询单号、姓名、员工编号、咨询专家、专家医院、专家科室、评分(星级)、评价内容(最大宽度 320px 截断)、评价时间、操作 **业务规则:** -- 评分为 1-5 星,差评(1-2 星)以红色标签标记 -- 支持按评分区间筛选 +- 评分以星级展示,满星金色 ★,空星灰色 ★ +- 1 星评价的评价内容文字显示为红色,并附加"差评"红色标签 +- "2星及以下"筛选项明确标注为"差评" **交互说明:** -- 点击"查看对话"打开模态框展示咨询对话 -- 支持导出列表数据 +- 点击"查看对话"弹出模态框展示咨询对话 +- 支持导出列表数据、查看导出任务 --- -### 6. 咨询档案(consult-record.html) +### 11. 咨询档案(consult-record.html) -**功能说明:** 展示所有员工的咨询档案列表,每个档案汇总员工的主诉、病史和关联咨询数。 +![页面截图](screenshots/consult-record.jpg) + +**功能说明:** 按员工维度展示咨询档案列表,每条记录汇总该员工名下的咨询人数量。 + +**筛选条件:** 姓名、员工编号、所属单位/部门(级联选择器) + +**表格列:** 序号、头像、姓名、员工编号、性别、年龄、单位、部门、手机号、咨询人数量、操作 **业务规则:** -- 档案按员工维度聚合,一个员工对应一条档案 -- 关联咨询数统计该员工的所有咨询记录 +- 档案按员工维度聚合,一个员工对应一条档案记录 +- 咨询人数量统计该员工名下建立的所有咨询人(含本人和家属) **交互说明:** - 点击"查看详情"跳转到咨询档案详情 -- 支持按员工姓名/工号、主诉关键词、创建时间筛选 - 支持导出列表数据、查看导出任务 --- -### 7. 咨询档案详情(consult-record-detail.html) +### 12. 咨询档案详情(consult-record-detail.html) -**功能说明:** 展示单个员工的完整咨询档案,包括基本信息、主诉、病史和关联咨询记录列表。 +![页面截图](screenshots/consult-record-detail.jpg) + +**功能说明:** 查看某位员工的完整档案,包括员工基本信息和其名下所有咨询人的健康档案。 + +**基本信息卡片(两列网格):** 姓名、员工编号、性别、年龄、单位、部门、手机号、身份证号 + +**咨询人信息区域:** 通过 Tab 切换不同咨询人(如咨询人1/2/3),每个咨询人包含: +- 基本信息:咨询人姓名、性别、出生日期、与本人关系 +- 生活习惯:是否抽烟、是否饮酒、饮食喜好、睡眠质量 +- 身体情况:身高、体重、过敏史、遗传史、既往史、其他疾病 **业务规则:** -- 基本信息卡片展示档案编号、创建时间、员工信息、关联咨询数 -- 关联咨询记录列表展示每次咨询的类型、状态、专家、科室、时间和评分 +- 一个员工可为多个家庭成员建立咨询档案(本人、父亲、母亲等) +- 与本人关系字段标识咨询人与员工的亲属关系 **交互说明:** -- 点击关联咨询记录跳转到专家对话详情 -- 点击"导出档案"导出当前档案 -- 返回按钮返回咨询档案列表 -- 右侧面板展示员工信息和档案统计 +- 面包屑"咨询档案"可返回列表页 +- 点击"导出档案"导出当前员工的完整档案 --- -### 8. 个人咨询数据(archive-personal.html) +### 13. 专家咨询统计(expert-statistics.html) -**功能说明:** 按员工维度展示咨询统计数据,顶部有总览统计卡片。 +![页面截图](screenshots/expert-statistics.jpg) + +**功能说明:** 按专家维度统计每位专家的咨询量、满意度和回复率等服务质量指标。 + +**筛选条件:** 年份、专家姓名、所属医院(下拉)、所属科室(下拉) + +**表格列:** 序号、专家信息(头像+姓名+科室职称)、专家医院、总咨询次数(可排序)、进行中(可排序)、图文咨询(可排序)、视频咨询(可排序)、满意度(可排序,星级+数值)、24h回复率(可排序,进度条+百分比) **业务规则:** -- 统计卡片展示:员工总人数、本年咨询专家总次数、本年咨询小助手总次数、有咨询记录员工数 -- 单位与部门为级联关系 +- 满意度低于 4.0 时数值显示为警告色(橙色) +- 24h 回复率低于 80% 时显示为警告色 +- 进度条颜色:≥90% 为绿色,<90% 为蓝色 **交互说明:** -- 支持按年份、单位/部门、姓名、工号筛选 -- 点击"查看明细"查看员工详细咨询记录 +- 表头支持点击排序 - 支持导出列表数据、查看导出任务 --- -### 9. 单位报表数据(archive-unit.html) +### 14. 单位咨询统计(unit-statistics.html) -**功能说明:** 按单位或部门维度展示咨询统计数据,支持 Tab 切换维度。 +![页面截图](screenshots/unit-statistics.jpg) + +**功能说明:** 在「咨询数据」一级菜单下,按组织维度统计各单位/部门的咨询量和费用。 **业务规则:** -- 统计卡片展示:统计单位数、本年度咨询专家总次数、本年度咨询小助手总次数、本年度咨询总费用 -- 排名 1-3 名使用金银铜牌标记,其余用数字 -- 支持二级单位和三级单位两个维度 +- 表格结构与单位报表数据(archive-unit.html)一致,但归属不同的一级菜单(「咨询数据」vs「档案」) +- 跳转详情页时携带 `from=unit-statistics` 参数,详情页据此渲染不同的导航上下文 **交互说明:** - Tab 切换"二级单位"和"三级单位"维度 -- 表头支持按咨询次数、费用等字段排序 -- 点击"查看明细"查看详细数据 +- 点击"查看明细"跳转到单位报表明细 +- 支持导出列表数据、查看导出任务 --- -### 10. 专家咨询统计(expert-statistics.html) +## 二、档案 -**功能说明:** 展示专家的咨询数据统计,包括咨询次数、满意度、回复率等指标。 +### 15. 个人咨询数据(archive-personal.html) -**业务规则:** -- 满意度以星级形式展示 -- 24h 回复率为百分比 -- 热度以火焰图标表示 +![页面截图](screenshots/archive-personal.jpg) + +**功能说明:** 在「档案」一级菜单下,按员工维度展示每位员工的咨询次数汇总。 + +**筛选条件:** 年份(2026/2025/2024/2023)、所属单位/部门(级联选择器)、员工姓名、员工编号 + +**表格列:** 序号、姓名、员工编号、性别、年龄、单位、部门、咨询专家次数(蓝色标签)、咨询小助手次数(绿色标签)、最近咨询时间、操作 **交互说明:** -- 支持按时间范围、专家姓名、科室筛选 -- 表头支持排序 -- 支持导出列表数据、导出报表 +- 点击"查看明细"跳转到员工咨询明细 +- 支持导出列表数据、查看导出任务 --- -### 11. 咨询结算(settlement.html) +### 16. 员工咨询明细(archive-personal-detail.html) -**功能说明:** 管理专家咨询费用的按月结算,顶部展示结算概览。 +![页面截图](screenshots/archive-personal-detail.jpg) -**业务规则:** -- 统计卡片展示:本月待结算金额、本月已结算金额、本年累计结算、待结算专家数 -- 结算状态包含:待结算、结算中、已结算 -- 按图文咨询和视频咨询分别统计次数和单价 +**功能说明:** 查看某位员工的所有咨询记录明细,分"咨询专家"和"咨询小助手"两个维度展示。 + +**员工信息卡片:** 头像、姓名、员工编号、性别、年龄、所属单位、所属部门 + +**Tab — 咨询专家:** +- 筛选:年份、咨询类型(全部/图文/视频)、咨询状态(全部/已完成/进行中/已取消/已拒绝) +- 表格列:序号、咨询单号、咨询类型、咨询状态、咨询专家、专家职称、专家医院、专家科室、专家类型(收费/免费)、发起咨询时间、首次回复时间、咨询完成时间、咨询时长、评分(星级)、操作 + +**Tab — 咨询小助手:** +- 筛选:年份、咨询状态(全部/已结束/进行中) +- 表格列:序号、咨询单号、咨询状态、发起咨询时间、首次回复时间、咨询完成时间、咨询时长、操作 **交互说明:** -- 支持按结算周期、专家姓名、结算状态筛选 -- 点击"查看明细"查看结算详情 -- 点击"确认结算"将状态变更为已结算 -- 支持生成结算报表、导出列表数据、下载报表 +- 图文咨询"查看对话"以弹窗加载专家对话详情 +- 视频咨询"查看详情"以弹窗加载对应状态的视频详情页 +- 小助手"查看对话"以弹窗加载小助手对话详情 +- 面包屑可返回个人咨询数据列表 --- -### 12. 结果异常(exception-result.html) +### 17. 单位报表数据(archive-unit.html) -**功能说明:** 监控和处理咨询结果异常,如恶意差评和响应超时等。 +![页面截图](screenshots/archive-unit.jpg) + +**功能说明:** 在「档案」一级菜单下,按单位/部门维度汇总展示各组织的咨询数据。 + +**Tab 切换:** 二级单位 / 三级单位 + +**二级单位面板:** +- 筛选:年份、单位名称(下拉选择) +- 表格列:序号(前3名金银铜牌标记)、单位名称、员工人数、咨询专家次数(可排序)、咨询小助手次数(可排序)、咨询占比(进度条)、咨询费用(可排序)、操作 + +**三级单位面板:** +- 筛选:年份、所属单位、部门名称 +- 表格列:序号、所属单位、部门名称、员工人数、咨询专家次数(可排序)、咨询小助手次数(可排序)、咨询占比(进度条)、咨询费用(可排序)、操作 **业务规则:** -- 统计卡片展示:待处理异常数、本月累计、已处理、处理率 -- 异常类型包含:恶意差评、响应超时等 -- 严重程度分为:高危、中危、低危 +- 排名 1-3 名使用金银铜牌标记,其余用数字序号 +- 咨询占比以进度条可视化展示 **交互说明:** -- 顶部告警横幅高亮显示高危异常数量 -- 点击"查看评价"跳转到用户评价 -- 点击"屏蔽评价"标记为已处置 -- 点击"催促回复"催促专家回复 -- 点击"忽略"忽略该异常 +- 点击"查看明细"跳转到单位报表明细(携带 `from=archive-unit` 参数) +- 支持导出列表数据、查看导出任务 --- -### 13. 系统脏数据(exception-dirty.html) +### 18. 单位报表明细(archive-unit-detail.html) -**功能说明:** 监控和处理数据质量问题,如咨询时长异常、评分溢出等。 +![页面截图](screenshots/archive-unit-detail.jpg) + +**功能说明:** 查看某个单位下所有员工的咨询数据明细。 + +**单位信息卡片:** 单位名称、员工人数 + +**筛选条件:** 年份、所属部门(下拉选择)、员工姓名、员工编号 + +**表格列:** 序号、员工姓名、员工编号、所属部门、咨询专家次数、咨询小助手次数、咨询费用(元) **业务规则:** -- 统计卡片展示:待处理脏数据、本月累计、已处理、数据质量率 -- 异常类型包含:咨询时长异常、评分溢出、数据缺失等 -- 每条记录展示异常值与正常范围的对比 +- 通过 URL 参数 `from` 区分来源(`archive-unit` 或 `unit-statistics`),动态渲染顶部导航高亮、侧边栏菜单和面包屑路径 **交互说明:** -- 顶部告警横幅显示待处理脏数据数量和类型 -- 点击"标记修复"标记为已修复 -- 点击"忽略"忽略该脏数据 -- 支持批量忽略低优先级数据 +- 面包屑根据来源参数动态显示,可返回对应的列表页 --- -### 14. 医院配置(config-hospital.html) +## 三、异常事件 -**功能说明:** 管理咨询平台的医院信息,支持新增、编辑、删除。 +### 19. 异常数据(exception-dirty.html) -**业务规则:** -- 医院信息包含:名称、等级、地址、图片、院内科室 -- 支持置顶和启用/禁用状态切换 +![页面截图](screenshots/exception-dirty.jpg) + +**功能说明:** 展示咨询过程中的异常/脏数据告警,帮助管理员识别和处理数据质量问题。 + +**顶部说明框(黄色):** 定义三种异常数据类型 — 咨询时长异常(>168小时)、长时间未回复(>48小时)、评价分数极低(<2分) + +**筛选条件:** 咨询单号、异常类型(全部/咨询时长异常/长时间未回复/评价分数极低)、时间范围(起止日期) + +**表格列:** 序号、咨询单号(等宽字体)、异常类型(红色加粗)、咨询员工、员工编号、咨询专家、专家医院、异常值(红色背景标签)、告警时间 **交互说明:** -- 点击"新增医院"打开医院配置弹窗 -- 点击"编辑"打开编辑弹窗 -- 切换置顶/状态开关 -- 支持导出列表数据 +- 支持批量忽略 +- 支持导出列表数据、查看导出任务 --- -### 15. 医院配置弹窗(config-hospital-dialog.html) +## 四、基础配置 -**功能说明:** 新增或编辑医院信息的表单弹窗。 +### 20. 医院配置(config-hospital.html) + +![页面截图](screenshots/config-hospital.jpg) + +**功能说明:** 管理咨询平台可选的医院列表,支持新增、编辑、删除、置顶和启用/禁用。 + +**筛选条件:** 医院名称、医院等级(全部/三级甲等/三级/二级甲等/二级/一级) + +**表格列:** 序号、医院名称、图片(缩略图)、等级(颜色区分:三甲紫色/三级蓝色/二甲绿色)、地址、院内科室数量、置顶(开关)、状态(开关)、操作(编辑/删除) + +**交互说明:** +- 点击"新增医院"打开右侧抽屉表单 +- 抽屉表单:选择医院(下拉,选择后显示医院信息卡片)、置顶(开关)、状态/是否显示(开关)、选择院内科室(级联选择器:一级分类→二级科室,支持多选) +- 点击"编辑"打开编辑抽屉 +- 切换置顶/状态开关即时生效 + +--- + +### 21. 医院配置弹窗(config-hospital-dialog.html) + +![页面截图](screenshots/config-hospital-dialog.jpg) + +**功能说明:** 新增或编辑医院基础信息的表单弹窗。 **表单字段表:** | 字段名 | 类型 | 必填 | 规则 | |--------|------|------|------| -| 医院名称 | 文本输入 | 是 | - | -| 医院等级 | 下拉选择 | 是 | 三甲/三乙/二甲等 | -| 医院类型 | 下拉选择 | 是 | - | -| 医院地址 | 文本输入 | 是 | - | -| 医院简介 | 多行文本 | 否 | - | -| 列表排序序号 | 数字输入 | 否 | 支持加减按钮调整 | -| 移动端显示 | 开关 | 否 | 默认开启 | -| 列表置顶 | 开关 | 否 | 默认关闭 | +| 医院名称 | 文本输入 | 是 | — | +| 医院等级 | 下拉选择 | 是 | 三级甲等/三级/二级甲等/二级/一级/未定级 | +| 医院类型 | 下拉选择 | 是 | 综合医院/专科医院/中医院/社区卫生服务中心 | +| 医院地址 | 文本输入 | 是 | — | +| 医院简介 | 多行文本 | 否 | 最多 200 字 | +| 列表排序序号 | 数字步进器 | 否 | 最小值 1 | +| 移动端显示 | 开关 | 否 | 默认开启,关闭后员工端搜索不展示 | +| 列表置顶 | 开关 | 否 | 默认关闭,开启后固定在列表顶部 | --- -### 16. 科室配置(config-department.html) +### 22. 科室配置(config-department.html) -**功能说明:** 管理咨询平台的科室信息,支持新增、编辑、删除。 +![页面截图](screenshots/config-department.jpg) -**业务规则:** -- 科室包含名称和分类 -- 展示关联专家数 -- 支持置顶和排序 +**功能说明:** 管理咨询平台的科室字典,支持新增、编辑、删除。 + +**筛选条件:** 科室名称、科室分类(全部/内科/外科/妇产科/儿科/五官科) + +**表格列:** 序号、科室名称、科室分类、关联专家数(蓝色"X位专家")、置顶(开关)、排序、操作(编辑/删除) **交互说明:** -- 点击"新增科室"打开科室配置弹窗 -- 点击"编辑"打开编辑弹窗 -- 点击"删除"删除科室 -- 切换置顶开关 +- 点击"新增科室"打开右侧抽屉表单 +- 抽屉表单:科室名称、科室分类(下拉)、科室简介(文本域)、置顶(开关)、排序(数字步进器) --- -### 17. 科室配置弹窗(config-department-dialog.html) +### 23. 科室配置弹窗(config-department-dialog.html) + +![页面截图](screenshots/config-department-dialog.jpg) **功能说明:** 新增或编辑科室信息的表单弹窗。 @@ -336,30 +529,33 @@ stateDiagram-v2 | 字段名 | 类型 | 必填 | 规则 | |--------|------|------|------| -| 科室名称 | 文本输入 | 是 | - | -| 科室分类 | 下拉选择 | 是 | - | -| 列表排序序号 | 数字输入 | 否 | 支持加减按钮调整 | +| 科室名称 | 文本输入 | 是 | — | +| 科室分类 | 下拉选择 | 是 | 内科/外科/妇产科/儿科/五官科/皮肤科/精神科/中医科/其他 | +| 列表排序序号 | 数字步进器 | 否 | — | | 移动端显示 | 开关 | 否 | 默认开启 | | 列表置顶 | 开关 | 否 | 默认关闭 | --- -### 18. 疾病配置(config-disease.html) +### 24. 疾病配置(config-disease.html) + +![页面截图](screenshots/config-disease.jpg) **功能说明:** 管理咨询平台的疾病信息库,支持新增、编辑、删除。 -**业务规则:** -- 疾病包含名称、别名和所属科室 -- 支持置顶和排序 +**筛选条件:** 疾病名称(支持别名搜索)、所属科室(下拉)、显示状态(全部/显示中/已隐藏) + +**表格列:** 序号、疾病名称、所属科室(蓝色标签)、置顶(开关)、操作(编辑/删除) **交互说明:** -- 点击"新增疾病"打开疾病配置弹窗 -- 点击"编辑"打开编辑弹窗 -- 切换置顶开关 +- 点击"新增疾病"打开右侧抽屉表单 +- 抽屉表单:疾病名称、所属科室(下拉)、置顶(开关)、排序序号(数字输入,默认 99) --- -### 19. 疾病配置弹窗(config-disease-dialog.html) +### 25. 疾病配置弹窗(config-disease-dialog.html) + +![页面截图](screenshots/config-disease-dialog.jpg) **功能说明:** 新增或编辑疾病信息的表单弹窗。 @@ -367,51 +563,58 @@ stateDiagram-v2 | 字段名 | 类型 | 必填 | 规则 | |--------|------|------|------| -| 疾病名称 | 文本输入 | 是 | - | -| 别名/俗称 | 文本输入 | 否 | - | -| 所属科室 | 下拉选择 | 是 | - | -| 列表排序序号 | 数字输入 | 否 | 支持加减按钮调整 | +| 疾病名称 | 文本输入 | 是 | — | +| 别名/俗称 | 文本输入 | 否 | — | +| 所属科室 | 下拉选择 | 是 | — | +| 列表排序序号 | 数字步进器 | 否 | — | | 移动端显示 | 开关 | 否 | 默认开启 | | 列表置顶 | 开关 | 否 | 默认关闭 | --- -### 20. 咨询须知(config-notice.html) +### 26. 咨询须知(config-notice.html) -**功能说明:** 管理员工端发起咨询时显示的须知内容,按咨询类型分 Tab 独立管理(图文咨询 / 视频咨询),各自支持富文本编辑、实时预览和版本发布。 +![页面截图](screenshots/config-notice.jpg) -**业务规则:** -- 顶部 Tab 切换「图文咨询」和「视频咨询」两套须知内容,各自独立编辑和发布 -- 每套须知包含弹窗标题和须知正文两个编辑区 -- 须知内容以富文本格式存储 -- 支持版本管理,每套须知独立维护历史版本,编辑后需"发布生效" +**功能说明:** 管理员工端发起咨询时显示的须知内容,按咨询类型分 Tab 独立管理。 -**交互说明:** -- 顶部 Tab 切换图文咨询/视频咨询须知编辑面板 -- 左侧编辑区:弹窗标题输入框 + 富文本编辑器(支持加粗、斜体、下划线、列表、字号、颜色) +**Tab 切换:** 图文咨询 / 视频咨询(各自独立编辑和发布) + +**每个 Tab 内容(左右双栏布局):** +- 左侧编辑区:弹窗标题输入框 + 富文本编辑器(加粗/斜体/下划线/列表/字号/颜色) - 右侧预览区:实时同步编辑内容,模拟移动端弹窗效果 -- 点击"历史版本"打开对应类型的历史版本弹窗,支持查看和恢复历史版本 -- 点击"发布生效"保存并发布当前类型的新版本 - ---- - -### 21. 常用语管理(config-phrase.html) - -**功能说明:** 管理咨询系统中专家和小助手使用的常用语库。 + - 图文咨询预览底部按钮:忽略 / 知晓并继续 + - 视频咨询预览底部按钮:不同意 / 同意并继续 **业务规则:** -- 常用语按适用角色和分类归类 -- 展示使用次数统计 +- 两套须知内容各自独立维护,互不影响 +- 支持版本管理,编辑后需"发布生效" **交互说明:** -- 点击"新增常用语"打开常用语弹窗 -- 点击"编辑"修改现有常用语 -- 点击"删除"删除常用语 -- 支持按适用角色、分类、关键词筛选 +- 点击"历史版本"打开版本列表弹窗,支持查看和恢复历史版本 +- 点击"发布生效"保存并发布当前版本 --- -### 22. 常用语弹窗(config-phrase-dialog.html) +### 27. 常用语管理(config-phrase.html) + +![页面截图](screenshots/config-phrase.jpg) + +**功能说明:** 管理咨询小助手和专家使用的快捷回复常用语库。 + +**筛选条件:** 适用角色(全部/咨询小助手/咨询专家/通用)、分类(全部/问候语/引导语/结束语/注意事项/其他)、关键词 + +**表格列:** 序号、常用语内容(最大宽度 480px)、分类(蓝色标签)、适用角色(绿色/紫色标签区分)、使用次数、创建时间、操作(编辑/删除) + +**交互说明:** +- 点击"新增常用语"打开右侧抽屉表单 +- 抽屉表单:常用语内容(文本域)、分类(下拉)、适用角色(下拉)、排序序号 + +--- + +### 28. 常用语弹窗(config-phrase-dialog.html) + +![页面截图](screenshots/config-phrase-dialog.jpg) **功能说明:** 新增或编辑常用语的表单弹窗。 @@ -419,6 +622,85 @@ stateDiagram-v2 | 字段名 | 类型 | 必填 | 规则 | |--------|------|------|------| -| 适用角色 | 下拉选择 | 是 | - | -| 分类 | 下拉选择 | 是 | - | -| 常用语内容 | 多行文本 | 是 | 最多 200 字符,实时字符计数 | +| 适用角色 | 下拉选择 | 是 | 咨询小助手/咨询专家/通用 | +| 分类 | 下拉选择 | 是 | 问候语/引导语/结束语/注意事项/其他 | +| 常用语内容 | 多行文本 | 是 | 最多 200 字符,实时字数统计 | + +--- + +## 五、咨询结算 + +### 29. 咨询结算(settlement.html) + +![页面截图](screenshots/settlement.jpg) + +**功能说明:** 管理所有结算批次,查看结算状态,发起新结算。 + +**筛选条件:** 年份(默认2026)、结算名称、结算状态(全部/待结算/结算中/已结算) + +**表格列:** 序号、结算名称、结算开始月份、结算结束月份、结算状态、创建时间、结算开始时间、结算结束时间、操作 + +**业务规则:** +- 结算状态:待结算(橙色)、结算中(蓝色)、已结算(绿色) +- 操作列按状态变化: + - 待结算:开始结算 / 编辑配置 / 删除 + - 结算中:查看报表(置灰不可点)/ 查看配置 / 删除 + - 已结算:查看报表 / 查看配置 / 删除 + +**交互说明:** +- 点击"新增结算"跳转到新增结算页面 +- 点击"编辑配置/查看配置"跳转到结算配置页面(编辑/查看模式) +- 点击"查看报表"跳转到结算报表页面 +- 点击"开始结算"触发结算流程 + +--- + +### 30. 新增结算(settlement-add.html) + +![页面截图](screenshots/settlement-add.jpg) + +**功能说明:** 创建结算批次,配置费用规则和结算周期。通过 URL 参数 `mode` 区分新增(add)、编辑(edit)、查看(view)三种模式。 + +**表单区域一 — 基本信息:** + +| 字段名 | 类型 | 必填 | 规则 | +|--------|------|------|------| +| 结算名称 | 文本输入 | 是 | 宽度 400px | +| 是否产生通讯费用 | 单选 | 是 | 否/是,默认"否" | +| 通讯费用 | 数字输入 | 条件必填 | 仅"是"时显示,步长 0.01 | + +**表单区域二 — 结算费用设置(动态表格):** + +| 字段名 | 类型 | 必填 | 规则 | +|--------|------|------|------| +| 费用类型 | 下拉选择 | 是 | 职称/单独设置 | +| 结算对象 | 联动下拉 | 是 | 职称→主任医师/副主任医师/主治医师/住院医师;单独设置→具体医生 | +| 图文咨询费用 | 数字输入 | 是 | 单位:元 | +| 视频咨询费用 | 数字输入 | 是 | 单位:元 | + +- 支持"+ 新增费用规则"添加行,至少保留 1 行 + +**表单区域三 — 结算周期设置:** +- 开始月份和结束月份(month 类型选择器) +- 自动生成月份列表表格,每月可选范围类型(自然月/自定义日期),自定义时显示起止日期选择器 + +**业务规则:** +- 查看模式下所有控件禁用,隐藏新增/删除按钮,底部仅显示"返回" + +--- + +### 31. 结算报表(settlement-report.html) + +![页面截图](screenshots/settlement-report.jpg) + +**功能说明:** 查看某次结算的专家级费用明细数据。 + +**筛选条件:** 专家编号、专家名称、专家医院(下拉) + +**表格列:** 专家编号、专家姓名、专家职称、专家医院、图文咨询单价(元)、视频咨询单价(元)、图文咨询次数(可排序)、视频咨询次数(可排序)、总咨询费(元)(可排序)、结算费(元)(可排序,橙色高亮)、操作 + +**交互说明:** +- 点击"咨询详情"弹出模态框,展示该专家的咨询记录明细表格 +- 弹窗表格列:咨询单号、姓名、员工工号、所属单位、所属部门、咨询类型、咨询状态、发起咨询时间、首次回复时间、咨询完成时间、咨询时长、评分 +- 已取消状态的咨询:回复时间/完成时间/时长/评分均显示"—" +- 支持导出列表数据、查看导出任务 diff --git a/web-admin/health-consult/doc/screenshots/archive-personal-detail.jpg b/web-admin/health-consult/doc/screenshots/archive-personal-detail.jpg new file mode 100644 index 0000000..a867e51 Binary files /dev/null and b/web-admin/health-consult/doc/screenshots/archive-personal-detail.jpg differ diff --git a/web-admin/health-consult/doc/screenshots/archive-personal.jpg b/web-admin/health-consult/doc/screenshots/archive-personal.jpg new file mode 100644 index 0000000..65a0e4c Binary files /dev/null and b/web-admin/health-consult/doc/screenshots/archive-personal.jpg differ diff --git a/web-admin/health-consult/doc/screenshots/archive-unit-detail.jpg b/web-admin/health-consult/doc/screenshots/archive-unit-detail.jpg new file mode 100644 index 0000000..9878d61 Binary files /dev/null and b/web-admin/health-consult/doc/screenshots/archive-unit-detail.jpg differ diff --git a/web-admin/health-consult/doc/screenshots/archive-unit.jpg b/web-admin/health-consult/doc/screenshots/archive-unit.jpg new file mode 100644 index 0000000..ada2f68 Binary files /dev/null and b/web-admin/health-consult/doc/screenshots/archive-unit.jpg differ diff --git a/web-admin/health-consult/doc/screenshots/config-department-dialog.jpg b/web-admin/health-consult/doc/screenshots/config-department-dialog.jpg new file mode 100644 index 0000000..dff4bf7 Binary files /dev/null and b/web-admin/health-consult/doc/screenshots/config-department-dialog.jpg differ diff --git a/web-admin/health-consult/doc/screenshots/config-department.jpg b/web-admin/health-consult/doc/screenshots/config-department.jpg new file mode 100644 index 0000000..2e15648 Binary files /dev/null and b/web-admin/health-consult/doc/screenshots/config-department.jpg differ diff --git a/web-admin/health-consult/doc/screenshots/config-disease-dialog.jpg b/web-admin/health-consult/doc/screenshots/config-disease-dialog.jpg new file mode 100644 index 0000000..7d07fa4 Binary files /dev/null and b/web-admin/health-consult/doc/screenshots/config-disease-dialog.jpg differ diff --git a/web-admin/health-consult/doc/screenshots/config-disease.jpg b/web-admin/health-consult/doc/screenshots/config-disease.jpg new file mode 100644 index 0000000..4540413 Binary files /dev/null and b/web-admin/health-consult/doc/screenshots/config-disease.jpg differ diff --git a/web-admin/health-consult/doc/screenshots/config-hospital-dialog.jpg b/web-admin/health-consult/doc/screenshots/config-hospital-dialog.jpg new file mode 100644 index 0000000..189c935 Binary files /dev/null and b/web-admin/health-consult/doc/screenshots/config-hospital-dialog.jpg differ diff --git a/web-admin/health-consult/doc/screenshots/config-hospital.jpg b/web-admin/health-consult/doc/screenshots/config-hospital.jpg new file mode 100644 index 0000000..0c51bea Binary files /dev/null and b/web-admin/health-consult/doc/screenshots/config-hospital.jpg differ diff --git a/web-admin/health-consult/doc/screenshots/config-notice.jpg b/web-admin/health-consult/doc/screenshots/config-notice.jpg new file mode 100644 index 0000000..f72ef51 Binary files /dev/null and b/web-admin/health-consult/doc/screenshots/config-notice.jpg differ diff --git a/web-admin/health-consult/doc/screenshots/config-phrase-dialog.jpg b/web-admin/health-consult/doc/screenshots/config-phrase-dialog.jpg new file mode 100644 index 0000000..c1e8964 Binary files /dev/null and b/web-admin/health-consult/doc/screenshots/config-phrase-dialog.jpg differ diff --git a/web-admin/health-consult/doc/screenshots/config-phrase.jpg b/web-admin/health-consult/doc/screenshots/config-phrase.jpg new file mode 100644 index 0000000..6d2657f Binary files /dev/null and b/web-admin/health-consult/doc/screenshots/config-phrase.jpg differ diff --git a/web-admin/health-consult/doc/screenshots/consult-record-detail.jpg b/web-admin/health-consult/doc/screenshots/consult-record-detail.jpg new file mode 100644 index 0000000..16a0f91 Binary files /dev/null and b/web-admin/health-consult/doc/screenshots/consult-record-detail.jpg differ diff --git a/web-admin/health-consult/doc/screenshots/consult-record.jpg b/web-admin/health-consult/doc/screenshots/consult-record.jpg new file mode 100644 index 0000000..43eacc9 Binary files /dev/null and b/web-admin/health-consult/doc/screenshots/consult-record.jpg differ diff --git a/web-admin/health-consult/doc/screenshots/exception-dirty.jpg b/web-admin/health-consult/doc/screenshots/exception-dirty.jpg new file mode 100644 index 0000000..6ffbebd Binary files /dev/null and b/web-admin/health-consult/doc/screenshots/exception-dirty.jpg differ diff --git a/web-admin/health-consult/doc/screenshots/expert-statistics.jpg b/web-admin/health-consult/doc/screenshots/expert-statistics.jpg new file mode 100644 index 0000000..173724f Binary files /dev/null and b/web-admin/health-consult/doc/screenshots/expert-statistics.jpg differ diff --git a/web-admin/health-consult/doc/screenshots/history-assistant-detail.jpg b/web-admin/health-consult/doc/screenshots/history-assistant-detail.jpg new file mode 100644 index 0000000..44ab5ba Binary files /dev/null and b/web-admin/health-consult/doc/screenshots/history-assistant-detail.jpg differ diff --git a/web-admin/health-consult/doc/screenshots/history-assistant.jpg b/web-admin/health-consult/doc/screenshots/history-assistant.jpg new file mode 100644 index 0000000..6c8c6ca Binary files /dev/null and b/web-admin/health-consult/doc/screenshots/history-assistant.jpg differ diff --git a/web-admin/health-consult/doc/screenshots/history-evaluation.jpg b/web-admin/health-consult/doc/screenshots/history-evaluation.jpg new file mode 100644 index 0000000..8b466a4 Binary files /dev/null and b/web-admin/health-consult/doc/screenshots/history-evaluation.jpg differ diff --git a/web-admin/health-consult/doc/screenshots/history-expert-detail.jpg b/web-admin/health-consult/doc/screenshots/history-expert-detail.jpg new file mode 100644 index 0000000..0aeb85e Binary files /dev/null and b/web-admin/health-consult/doc/screenshots/history-expert-detail.jpg differ diff --git a/web-admin/health-consult/doc/screenshots/history-expert.jpg b/web-admin/health-consult/doc/screenshots/history-expert.jpg new file mode 100644 index 0000000..206ceea Binary files /dev/null and b/web-admin/health-consult/doc/screenshots/history-expert.jpg differ diff --git a/web-admin/health-consult/doc/screenshots/settlement-add.jpg b/web-admin/health-consult/doc/screenshots/settlement-add.jpg new file mode 100644 index 0000000..6808261 Binary files /dev/null and b/web-admin/health-consult/doc/screenshots/settlement-add.jpg differ diff --git a/web-admin/health-consult/doc/screenshots/settlement-report.jpg b/web-admin/health-consult/doc/screenshots/settlement-report.jpg new file mode 100644 index 0000000..e900926 Binary files /dev/null and b/web-admin/health-consult/doc/screenshots/settlement-report.jpg differ diff --git a/web-admin/health-consult/doc/screenshots/settlement.jpg b/web-admin/health-consult/doc/screenshots/settlement.jpg new file mode 100644 index 0000000..3258579 Binary files /dev/null and b/web-admin/health-consult/doc/screenshots/settlement.jpg differ diff --git a/web-admin/health-consult/doc/screenshots/unit-statistics.jpg b/web-admin/health-consult/doc/screenshots/unit-statistics.jpg new file mode 100644 index 0000000..f3cba61 Binary files /dev/null and b/web-admin/health-consult/doc/screenshots/unit-statistics.jpg differ diff --git a/web-admin/health-consult/doc/screenshots/video-detail-cancelled.jpg b/web-admin/health-consult/doc/screenshots/video-detail-cancelled.jpg new file mode 100644 index 0000000..d576fbb Binary files /dev/null and b/web-admin/health-consult/doc/screenshots/video-detail-cancelled.jpg differ diff --git a/web-admin/health-consult/doc/screenshots/video-detail-completed.jpg b/web-admin/health-consult/doc/screenshots/video-detail-completed.jpg new file mode 100644 index 0000000..87aa7b1 Binary files /dev/null and b/web-admin/health-consult/doc/screenshots/video-detail-completed.jpg differ diff --git a/web-admin/health-consult/doc/screenshots/video-detail-pending-confirm.jpg b/web-admin/health-consult/doc/screenshots/video-detail-pending-confirm.jpg new file mode 100644 index 0000000..fcda3e5 Binary files /dev/null and b/web-admin/health-consult/doc/screenshots/video-detail-pending-confirm.jpg differ diff --git a/web-admin/health-consult/doc/screenshots/video-detail-pending-start.jpg b/web-admin/health-consult/doc/screenshots/video-detail-pending-start.jpg new file mode 100644 index 0000000..318df1c Binary files /dev/null and b/web-admin/health-consult/doc/screenshots/video-detail-pending-start.jpg differ diff --git a/web-admin/health-consult/doc/screenshots/video-detail-rejected.jpg b/web-admin/health-consult/doc/screenshots/video-detail-rejected.jpg new file mode 100644 index 0000000..63e48e9 Binary files /dev/null and b/web-admin/health-consult/doc/screenshots/video-detail-rejected.jpg differ diff --git a/共性需求说明.md b/共性需求说明.md index 49b5365..f3783a6 100644 --- a/共性需求说明.md +++ b/共性需求说明.md @@ -1,84 +1,10 @@ - +# 健康长庆升级项目 - 产品需求文档(PRD) -
- -## 目录 - -- [一、文档概述](#一文档概述) -- [二、项目背景与目标](#二项目背景与目标) - - [(一)项目背景](#一项目背景) - - [(二)项目目标](#二项目目标) - - [(三)交付标准](#三交付标准) -- [三、项目需求分析](#三项目需求分析) - - [(一)用户画像分析](#一用户画像分析) - - [(二)项目交付成果分析](#二项目交付成果分析) - - [(三)核心业务分析](#三核心业务分析) -- [四、共性需求说明](#四共性需求说明) - - [(一)PC端共性需求](#一pc端共性需求) - - [1.布局与框架](#1布局与框架) - - [2.表单设计规范](#2表单设计规范) - - [3.搜索与筛选规范](#3搜索与筛选规范) - - [4.交互与操作](#4交互与操作) - - [5.数据展示](#5数据展示) - - [6.文件处理规范](#6文件处理规范) - - [7.反馈与提示](#7反馈与提示) - - [8.权限控制](#8权限控制) - - [(二)移动端共性需求](#二移动端共性需求) - - [1.布局与导航](#1布局与导航) - - [2.表单设计规范](#2表单设计规范) - - [3.交互与操作](#3交互与操作) - - [4.数据展示](#4数据展示) - - [5.图片与文件处理](#5图片与文件处理) - - [6.反馈与提示](#6反馈与提示) - - [7.网络异常处理](#7网络异常处理) - - [(三)跨端通用规范](#三跨端通用规范) - - [1.品牌与视觉一致性](#1品牌与视觉一致性) - - [2.数据安全与隐私保护](#2数据安全与隐私保护) - - [3.字典与枚举规范](#3字典与枚举规范) - - [4.无障碍规范](#4无障碍规范) -- [五、功能需求详细设计](#五功能需求详细设计) - - [(一)系统管理](#一系统管理) - - [(二)健康评估](#二健康评估) - - [(三)应急就医](#三应急就医) - - [(四)专家咨询](#四专家咨询) -- [六、非功能性需求](#六非功能性需求) - - [(一)性能要求](#一性能要求) - - [(二)兼容性要求](#二兼容性要求) -- [七、技术实现方案](#七技术实现方案) - - [(一)项目技术架构设计](#一项目技术架构设计) - - [(二)数据库设计](#二数据库设计) - - [(三)接口设计](#三接口设计) - - [(四)系统安全与可用性设计](#四系统安全与可用性设计) - - [(五)系统部署与运维设计](#五系统部署与运维设计) - -
- -
+> **所属端**:健康长庆升级项目共性需求说明 +> **模块路径**:`platform-prototype/` +> **最后更新**:2026-04-17 +--- # 一、文档概述 本文档为“健康长庆升级项目”的产品需求规格说明书(以下简称PRD),旨在系统性地定义本次升级的业务目标、功能范围、用户角色及非功能性需求,为项目团队(包括产品、设计、研发、测试等角色)提供统一的需求基线。该文档适用于“健康长庆升级项目”的全生命周期,涵盖需求分析、系统设计、原型设计、测试验证、交付验收各阶段。 @@ -234,7 +160,7 @@ - 列表分页默认每页 10 条,支持切换每页条数(10 / 20 / 50/100) -- 列表表格支持列宽拖动、根据每列内容合理规划列宽(如手机号身份证号等长度固定的字段)、列显隐配置,配置状态本地持久化 +- 列表表格支持列宽拖动、根据每列内容合理规划列宽(如手机号、身份证号、性别、年龄、工号等长度固定的字段)、列显隐配置,配置状态本地持久化 - 超长文本单行截断显示"...",鼠标悬浮展示完整内容(Tooltip) @@ -318,7 +244,7 @@ ### 7.反馈与提示 -- 操作成功/失败:使用顶部居中 Toast 提示,3 秒后自动消失 +- 操作成功/失败:使用顶部居中 Toast 提示,3 秒后自动消失;提示词保持格式统一,如:‘删除成功’、‘删除成功’、‘保存成功’、‘保存失败’... - 关键操作(删除、提交、发布):使用 Confirm 确认框,需用户主动确认 @@ -551,6 +477,4 @@ ## (四)系统安全与可用性设计 -## (五)系统部署与运维设计 - -
\ No newline at end of file +## (五)系统部署与运维设计 \ No newline at end of file diff --git a/项目背景.md b/项目背景.md index 1a6d7ae..3f763ce 100644 --- a/项目背景.md +++ b/项目背景.md @@ -377,9 +377,9 @@ window.location.href = '../health-consult/consult-list.html'; 面向研发人员的产品需求文档,要求简洁、条理清晰,包含以下结构: -1. **模块概述**:一句话说明模块功能 + 页面导航结构树 + 状态流转图(Mermaid) -2. **页面清单**:表格列出所有页面和弹窗 -3. **逐页说明**:按业务流程顺序组织,页面与弹窗按流程穿插介绍(不分开罗列),每个页面/弹窗包含以下维度: +1. **模块概述**:一段话简要说明模块功能 + 页面导航结构树 + 状态流转图(Mermaid) +2. **页面清单**:表格列出所有功能页面、弹窗、内嵌功能页、结果态页面,页面清单根据业务分类(公用的页面不重复罗列) +3. **逐页说明**:自动按业务流程顺序组织,WEB后台按一级菜单顺序分类罗列,APP端按每个业务线分类罗列,每个页面/弹窗/内嵌功能页/结果态页面包含以下维度: - **页面截图**:在标题下方紧跟截图引用(格式见 7.4) - **功能说明**:页面用途和核心 UI 元素 - **业务规则**:数据逻辑、状态约束、边界条件