61 Commits
Author SHA1 Message Date
pengjie 245cffecb0 fix: 清除因PowerShell Set-Content引入的UTF-8 BOM字符 2026-08-10 10:21:23 +08:00
pengjie 1ad322c16a refactor: 缩短急救宣教相关表名 QH_EME_FIRST_AID_* -> QH_EME_FIR_AID_*,解决表名超长问题 2026-08-10 10:14:40 +08:00
pengjieandClaude e9360d1ad9 feat(emergency): searchExpert接口返回ConDoctor专家数据 + 修复IM UserSig缓存key未区分secretKey的问题
1. searchExpert新增ConDoctor专家字段:
   - 新增ConDoctorMapper直接查询qh_con_doctor表(同库,避免跨模块依赖)
   - EmergencyProfessionUser新增17个@TableField(exist=false)字段承载专家数据
   - searchExpert方法中批量查询ConDoctor并逐字段填充
   - 用户非专家时ConDoctor字段为null
   - 更新API文档-移动端接口.md

2. IM签名缓存优化:
   - TencentCloudImUtil新增secretKey注入
   - Redis key从 silence:im_user_sig:{sdkAppId}:{id}
     改为 silence:im_user_sig:{hash(sdkAppId+secretKey)}:{id}
   - 解决secretKey变更时旧缓存签名仍被命中导致IM请求失败的问题

Co-Authored-By: Claude <noreply@anthropic.com>
2026-08-04 11:08:03 +08:00
pengjieandClaude 38a0aa07dd feat: 合并急救员建群逻辑到createGroupMag,新增参与工单列表接口
1. createGroupMag增加addCareUsersToGroup调用,自动拉入关爱联络员+急救员
2. 废除createGroupMagFirstAider(标记@Deprecated)
3. 新增/myparticipatedOrders接口,app端查询当前登录人参与的应急工单列表

Co-Authored-By: Claude <noreply@anthropic.com>
2026-07-20 15:51:33 +08:00
pengjie 194c3b2134 feat(emergency): 推送IM消息增加resourceId文章ID字段 2026-07-08 09:20:50 +08:00
pengjie e16c0c2536 feat(emergency): 推送消息增加封面图字段messageImageUrl,去掉businessId 2026-07-07 14:24:56 +08:00
pengjieandClaude f10221e92c feat(emergency): push/send 接入IM消息推送,SendIm 新增 businessId 字段
- SendIm 新增 businessId 字段(String),用于区分业务来源,不影响已有调用
- FirstAidPushServiceImpl.send() 步骤5从日志占位改为实际发送IM群消息
- businessId 固定为 "article",前端可据此识别宣教推送消息
- 工单无 sessionId 时跳过IM发送并 log.warn 告警

Co-Authored-By: Claude <noreply@anthropic.com>
2026-07-07 09:48:37 +08:00
pengjie 945c0b46d7 @
feat(emergency): 新增腾讯IM验证的群成员列表接口,优化searchEmployee模糊搜索

- 新增 /order/getActualGroupMemberList 接口,先查本地参与人员再调腾讯IM验证,以交集为准
- 新增 GetGroupMemberInfoVO,封装腾讯IM get_group_member_info API响应
- TencentCloudImUtil 新增 getGroupMemberInfo 方法,TXController/IMHelloApi 新增对应端点
- GroupMemberVO 新增 isSelf 字段区分本人 (0/1),默认值 0
- searchEmployee 姓名/工号/手机号改为模糊搜索(* 包装实现)
- 修复 getActualGroupMemberList IM 调用失败时静默返回空列表的 bug,失败时降级使用本地成员
- 接口文档更新变更摘要,标明新接口替换原 /order/getGroupMemberList 地址

Co-Authored-By: Claude <noreply@anthropic.com>
@
2026-07-07 09:29:19 +08:00
pengjie fd7fd32c8d feat(emergency): 新增急救员建群接口,人员接口返回手机号
- 新增 GET /api/emergency/createGroupMagFirstAider(不发起通话,自动拉关爱/急救员)
- createGroupMag 原始逻辑不受影响,新方法独立实现
- OrderOperator.operatorType 注释同步数据库(新增3/4/5)
- EmergencyProfessionUser/GroupMemberVO 新增 phone 字段
- searchExpert/getGroupMemberList 填充手机号
- API文档-移动端接口.md 同步更新
2026-07-06 17:14:48 +08:00
pengjieandClaude bbb0d5b0f8 chore(emergency): 修正部署SQL,同步实体字典引用
- STATUS DEFAULT 改为 0(草稿)
- PARENT_ID 注释修正
- 删除 first_aid_resource_status/first_aid_category_type 字典
- 同步移除实体 @Excel 注解中对应 dicCode

Co-Authored-By: Claude <noreply@anthropic.com>
2026-06-26 15:38:08 +08:00
pengjieandClaude 3c5bfc8ad1 fix(emergency): 修复宣教模块3个状态机与兼容性缺陷
- auditStatus 新增 insertStrategy=IGNORED,修复新增/复制时存0而非NULL
- submitForReview 增加PENDING重复提交拦截
- recordRead/toggleFavorite 重复键异常catch兼容DM8数据库

Co-Authored-By: Claude <noreply@anthropic.com>
2026-06-26 15:09:22 +08:00
pengjieandClaude 5612fe0752 refactor(emergency): 宣教模块代码整理与问题修复
- 修复 GlobalUtils.getLoginUser() NPE 风险(send/approve/reject)
- 批量操作改为前置校验+全量执行(batchPublish/batchTakeDown/batchDeleteResources)
- 新增 deleteResource/batchDeleteResources,已发布资源不可删除
- 标签过滤 SQL 修复边界精确匹配(避免 id=2 误匹配 12/22)
- 收藏/阅读改用 DuplicateKeyException 消除并发竞态
- fillResourceExtras/queryResourceList 批量查询分类名称,避免 N+1
- 新增 validateResource 校验内容类型、分类、标签合法性
- copyResource 补全 effectiveTime/expiryTime、版本记录、校验
- 审核下发/下架/删除增加状态机保护
- send() 使用 REQUIRES_NEW 事务隔离,确保批量推送单条失败互不影响
- 版本历史上限控制 MAX_VERSIONS=20
- 分类/标签树形重构:分类不再嵌套子分类,统一为分类+标签两级
- 清理废弃方法(listCategories/listAllCategoriesAndTags 等)
- 批量删除分类/标签增加 @Transactional 事务保护

Co-Authored-By: Claude <noreply@anthropic.com>
2026-06-26 11:23:57 +08:00
pengjieandClaude 3d8b930d1a chore(emergency): 代码整理
Co-Authored-By: Claude <noreply@anthropic.com>
2026-06-25 17:37:17 +08:00
pengjie 8761a965aa feat(emergency): 急救宣教资源推送到应急群聊 2026-06-25 15:53:22 +08:00
pengjieandClaude 2cc0668391 feat(emergency): 急救宣教资源管理v3 - 审批上架分离、分类标签树形重构
- approve()不再自动发布,需单独调用publish()上架
- publish()增加auditStatus=11前置校验
- batchPublish()跳过未审核通过的资源
- 分类管理支持树形结构(listRoot/listChildren/listAll)
- listAll返回分类+tags嵌套树
- listChildren返回子分类+标签
- 标签parentId改为必填
- 分类删除校验标签存在
- 分页列表填充resourceCount
- 审核记录按审核时间排序

Co-Authored-By: Claude <noreply@anthropic.com>
2026-06-25 15:50:24 +08:00
pengjie 532041ff8d feat(emergency): 急救宣教资源管理模块多项优化
- 新增版本历史isCurrent标记,编辑/回滚时正确维护当前版本
- 审核记录独立表(QH_EME_FIRST_AID_RESOURCE_AUDIT),保留完整审核轨迹
- 审计表auditStatus沿用10/11/12,资源表保留冗余快照
- 标签挂载到分类下(parentId),同分类内名称唯一
- 分类/标签编辑时校验name唯一性
- 导出状态改用文本(statusText),审核通过+已下架正确显示
- 审核状态/驳回原因支持null更新(FieldStrategy.IGNORED)
- Controller POST接口统一使用@RequestBody接收参数
2026-06-24 17:36:44 +08:00
pengjie 6384021c4d feat(emergency): 急救宣教资源管理模块
新增急救宣教资源管理完整功能,包含6个子模块:

- 分类管理:树形结构,CRUD + 级联删除校验
- 标签管理:扁平结构,CRUD + 引用校验
- 资源管理:CRUD + 状态流转(草稿→审核→发布→下架) + 批量操作 + 阅读去重 + 复制
- 审核管理:待审核/已通过/已驳回列表 + 审核操作 + 审核记录
- 收藏管理:收藏/取消切换 + 状态查询 + 我的收藏列表
- 版本管理:编辑自动保存版本快照 + 回滚 + 差异对比

业务规则:
- 编辑/回滚后自动退回草稿,清除审核状态(方案A)
- 阅读去重:同用户重复阅读不增加计数
- 逻辑删除 + 租户隔离

Co-Authored-By: Claude <noreply@anthropic.com>
@
2026-06-23 17:40:30 +08:00
hejiayang a7cafe9d7f fix: 解决HTML转义安全问题
- 在多个DTO类中添加HtmlUtil导入并实现自动转义功能
- 为AccountDTO、ConDoctorDTO等类的set方法增加HTML转义处理
- 修复ConDoctorServiceImpl中的重复转义代码
- 为EmergencyProfessionUserController添加请求参数转义
- 修复OrderServiceImpl中的用户名称转义处理
- 为Watch相关服务增加数据绑定和查询时的转义处理
- 修复SysUser相关控制器和服务中的转义逻辑
2026-03-30 17:39:21 +08:00
hejiayang 04c2a2218a fix(emergency,watch): 更新数据库表名前缀为标准化命名
更新health-emergency和health-watch模块中的所有实体类和XML映射文件以及mapper文件注解sql,
将数据库表名从原有命名格式统一更改为带项目前缀的标准化格式,
如QH_EME开头用于应急健康模块,QH_WAT开头用于健康监测模块
2026-03-13 11:16:02 +08:00
hejiayang 886c9d1dbc fix(emergency):
更新实体类中的数据库表名@TableName
更新相关XML映射文件中的表名引用,确保查询语句与新的表名保持一致。
更新mapper文件注解中表名
2026-03-12 16:06:02 +08:00
hejiayang bab238daae fix(health-emergency):修正数据库字段映射大小写问题
修改TblQimoNotice实体类中的@TableField注解,
将beginTime和endTime字段名统一改为大写BEGIN_TIME和END_TIME,以匹配数据库实际字段命名规范。
2026-03-06 16:11:02 +08:00
lianlonggang 9251e202f3 feat(db): 添加达梦数据库关键字转义拦截器
- 新增 DmKeywordInterceptor 拦截器,自动为达梦数据库关键字添加双引号转义
- 更新 AedEquipmentManger 实体类格式化和导入语句规范
- 支持自动识别和处理达梦数据库保留关键字,避免 SQL 语法错误
- 提升数据库兼容性,确保实体字段与达梦数据库关键字冲突时正常执行
2026-03-05 18:30:21 +08:00
hejiayang d2a2f8291c 实体类数据库关键字注释 2026-03-05 11:15:20 +08:00
hejiayang 4c98dd2d30 fix: 应急就医数据库迁移相关调整
1.启动类排除QuartzAutoConfiguration.class
2.数据库字段与达梦保留关键字段冲突调整
3.sql键名重复修改
2026-03-04 18:01:20 +08:00
pengjie a00d361f6b 【应急单】定时解散群聊 2026-01-08 16:59:01 +08:00
feng fb699c5227 睡眠接口修改 2026-01-05 13:46:38 +08:00
feng a6935d9f42 大屏 fix 2025-12-29 14:37:11 +08:00
feng ab7fe2a199 应急大屏开屏动画接口 2025-12-29 13:46:04 +08:00
feng 1495841ad2 加开屏动画表 2025-12-29 10:46:07 +08:00
feng 1c7ba176f6 新疆项目需求整改 2025-12-23 18:10:05 +08:00
wanghao 4d9051d5f9 大屏服务详情列表 2025-12-13 18:49:18 +08:00
wanghao 08b487accf 大屏websocket修改 2025-12-13 18:31:40 +08:00
wanghao 3bc6566f2d 大屏服务详情修改 2025-12-13 17:32:11 +08:00
wanghao 707e41025c 大屏修改 2025-12-13 16:08:04 +08:00
feng 8f1d3fdf2a 大屏呼入电话数据调整 2025-12-13 15:15:55 +08:00
wanghao 595d702e9e 新疆大屏 2025-12-03 15:53:18 +08:00
feng cb0d45c81b 通过安眼接口更新基础数据 2025-12-02 17:54:32 +08:00
wanghao 5d6ab34fd2 Resource添加安眼id 2025-12-02 13:34:01 +08:00
feng ae4c5e7ee6 AED布点支持手动位置位置信息 2025-12-02 11:21:50 +08:00
feng fe0e075220 暂未提交 2025-11-27 14:14:41 +08:00
wanghao 354d3c82a2 新疆aed迁移 2025-11-26 17:44:17 +08:00
feng e975d62c17 安眼平台接口对接 2025-11-20 15:15:34 +08:00
pengjie 0101561d12 【im】多方通话修改 2025-11-11 18:08:38 +08:00
pengjie 92033a17cb 【应急】IM视频通话 2025-11-07 15:30:34 +08:00
wanghao 15cbd2f085 新疆新需求 2025-10-31 10:35:54 +08:00
feng 9f7882497b 应急工单新建表 2025-10-24 16:34:39 +08:00
feng 6d498f3b74 应急支持第二个专业人员加入的四方通话 2025-09-26 15:51:34 +08:00
wanghao ff6e83f1c8 0919新需求开发 2025-09-25 13:58:00 +08:00
wanghao e9fada7bbd 新需求开发 2025-09-19 16:26:25 +08:00
wanghao cd6b8e49e5 新需求开发 2025-09-17 14:30:53 +08:00