From 9a022aa9cc645abcc52d2787d5967ddf097a6086 Mon Sep 17 00:00:00 2001 From: pengjie <2413927716@qq.com> Date: Mon, 6 Jul 2026 15:24:43 +0800 Subject: [PATCH] =?UTF-8?q?docs(emergency):=20=E8=A1=A5=E5=85=A8=E5=BA=94?= =?UTF-8?q?=E6=80=A5=E7=BE=A4=E8=81=8A=E6=8B=89=E4=BA=BAAPI=E6=96=87?= =?UTF-8?q?=E6=A1=A3=E6=8E=A5=E5=8F=A3=E5=9C=B0=E5=9D=80=EF=BC=8C=E6=B7=BB?= =?UTF-8?q?=E5=8A=A0=E7=BD=91=E5=85=B3=E5=89=8D=E7=BC=80=20/health-emergen?= =?UTF-8?q?cy?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- health-emergency/API文档-应急群聊拉人.md | 292 +++++++++++++++++++++++ 1 file changed, 292 insertions(+) create mode 100644 health-emergency/API文档-应急群聊拉人.md diff --git a/health-emergency/API文档-应急群聊拉人.md b/health-emergency/API文档-应急群聊拉人.md new file mode 100644 index 0000000..b2ce3f1 --- /dev/null +++ b/health-emergency/API文档-应急群聊拉人.md @@ -0,0 +1,292 @@ +# 应急群聊拉人 API 接口文档(移动端联调) + +> 本次新增/变更的接口,Base URL: `{host}/health-emergency/api/emergency` + +--- + +## 1. 搜索专家(专业人员) + +> 搜索可邀请的专家列表 + +**GET** `/health-emergency/api/emergency/order/searchExpert` + +| 参数 | 类型 | 必填 | 说明 | +|------|------|:---:|------| +| realname | String | 否 | 姓名,模糊搜索 | +| centerId | String | 否 | 应急中心ID | +| excludeSessionId | String | 否 | 群组ID,用于排除已在群中的人 | +| pageNo | Integer | 否 | 页码,默认1 | +| pageSize | Integer | 否 | 每页条数,默认10 | + +**Response**: + +```json +{ + "success": true, + "result": { + "records": [ + { + "userId": "xxx", + "realname": "张医生", + "avatar": "https://...", + "type": "6", + "centerId": "xxx", + "post": "主任医师", + "school": "北京大学", + "edu": "博士", + "goodAt": "心血管内科", + "deptName": "急诊科" + } + ], + "total": 50, + "size": 10, + "current": 1 + } +} +``` + +| 字段 | 说明 | +|------|------| +| userId | 用户ID,邀请时传入 memberList | +| realname | 姓名 | +| avatar | 头像 | +| type | 类型,"6"=专业人员 | +| centerId | 应急中心ID | +| post | 职称 | +| school | 毕业院校 | +| edu | 学历 | +| goodAt | 擅长领域 | +| deptName | 科室 | + +--- + +## 2. 搜索员工 + +> 搜索可邀请的员工列表 + +**GET** `/health-emergency/api/emergency/order/searchEmployee` + +| 参数 | 类型 | 必填 | 说明 | +|------|------|:---:|------| +| realname | String | 否 | 姓名,模糊搜索 | +| orgCode | String | 否 | 部门编码 | +| workNo | String | 否 | 工号 | +| phone | String | 否 | 手机号 | +| excludeSessionId | String | 否 | 群组ID,用于排除已在群中的人 | +| pageNo | Integer | 否 | 页码,默认1 | +| pageSize | Integer | 否 | 每页条数,默认10 | + +**Response**: + +```json +{ + "success": true, + "result": { + "records": [ + { + "userId": "xxx", + "realname": "张三", + "avatar": "https://...", + "orgCode": "650000001001", + "orgName": "新疆油田公司", + "deptName": "安全环保部", + "phone": "13800000000", + "workNo": "A00123" + } + ], + "total": 200, + "size": 10, + "current": 1 + } +} +``` + +| 字段 | 说明 | +|------|------| +| userId | 用户ID,邀请时传入 memberList | +| realname | 姓名 | +| avatar | 头像 | +| orgCode | 部门编码 | +| orgName | 单位名称(二级单位) | +| deptName | 部门名称 | +| phone | 手机号 | +| workNo | 工号 | + +--- + +## 3. 邀请进群 + +> 拉专家或员工加入应急群聊 + +**POST** `/health-emergency/api/emergency/addGroupUser` + +**Request Body** (JSON): + +```json +{ + "groupId": "1907659384834752513", + "memberList": ["userId1", "userId2"], + "memberType": 1 +} +``` + +| 参数 | 类型 | 必填 | 说明 | +|------|------|:---:|------| +| groupId | String | 是 | 群组ID(即 `createGroupMag` 返回的 `groupId`) | +| memberList | List\ | 是 | 要邀请的用户ID列表,最多100个 | +| memberType | Integer | 否 | `0`=专家/专业人员, `1`=员工,**默认0** | + +**Response**: + +```json +{ + "success": true, + "message": "", + "result": true +} +``` + +> **注意**: 已在群中的人员会自动跳过,不会报错。所有选中的人都在群中时返回失败。 + +--- + +## 4. 移除群成员 + +> 将成员移出应急群聊 + +**POST** `/health-emergency/api/emergency/removeGroupUser` + +**Request Body** (JSON): + +```json +{ + "groupId": "1907659384834752513", + "memberList": ["userId1"] +} +``` + +| 参数 | 类型 | 必填 | 说明 | +|------|------|:---:|------| +| groupId | String | 是 | 群组ID | +| memberList | List\ | 是 | 要移除的用户ID列表 | + +**Response**: + +```json +{ + "success": true, + "message": "", + "result": true +} +``` + +> **注意**: 只能移除后续拉入的协助人员,不能移除发起人和初始操作/专业人员。 + +--- + +## 5. 群成员列表 + +> 获取当前群成员及可邀请的专业人员 + +**GET** `/health-emergency/api/emergency/order/getGroupMemberList` + +| 参数 | 类型 | 必填 | 说明 | +|------|------|:---:|------| +| sessionId | String | 是 | 群组ID | + +**Response**: + +```json +{ + "success": true, + "result": [ + { + "orderId": "1765357845598556162", + "userId": "发起人id", + "userName": "李四", + "avatar": "https://...", + "isGroupMember": 1, + "memberType": -1 + }, + { + "orderId": "1765357845598556162", + "userId": "操作人员id", + "userName": "王五", + "avatar": "https://...", + "isGroupMember": 1, + "memberType": 0 + }, + { + "orderId": "1765357845598556162", + "userId": "专业人员id", + "userName": "张医生", + "avatar": "https://...", + "isGroupMember": 1, + "memberType": 1 + }, + { + "orderId": "1765357845598556162", + "userId": "员工id", + "userName": "张三", + "avatar": "https://...", + "isGroupMember": 1, + "memberType": 2 + }, + { + "orderId": "1765357845598556162", + "userId": "其他专业人id", + "userName": "赵医生", + "avatar": "https://...", + "isGroupMember": 0, + "memberType": 1 + } + ] +} +``` + +| 字段 | 说明 | +|------|------| +| orderId | 应急单ID | +| userId | 用户ID | +| userName | 姓名 | +| avatar | 头像 | +| isGroupMember | `1`=在群中, `0`=可邀请 | +| memberType | `-1`=发起人, `0`=操作人员, `1`=专业人员, `2`=员工 | + +--- + +## memberType 字典 + +| 值 | 含义 | 场景 | +|:---:|------|------| +| -1 | 发起人 | 创建应急的人 | +| 0 | 操作人员 | 应急中心调度员 | +| 1 | 专业人员 | 专家/医生 | +| 2 | 员工 | 普通员工(被拉入群) | + +--- + +## 典型调用流程 + +``` +1. 查看当前成员 + GET /health-emergency/api/emergency/order/getGroupMemberList?sessionId={groupId} + → 展示群成员列表(按 memberType 区分标签展示) + → isGroupMember=0 的显示为"可邀请" + +2. 搜索要拉的人 + GET /health-emergency/api/emergency/order/searchExpert?realname=张&excludeSessionId={groupId} + GET /health-emergency/api/emergency/order/searchEmployee?realname=李&excludeSessionId={groupId} + → 展示搜索结果,用户勾选 + +3. 确认邀请 + POST /health-emergency/api/emergency/addGroupUser + {"groupId": "{groupId}", "memberList": ["id1","id2"], "memberType": 0} + +4. 移除成员 + POST /health-emergency/api/emergency/removeGroupUser + {"groupId": "{groupId}", "memberList": ["id1"]} + +5. 刷新成员列表 + GET /health-emergency/api/emergency/order/getGroupMemberList?sessionId={groupId} +```