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>
This commit is contained in:
+58
@@ -134,4 +134,62 @@ public class EmergencyProfessionUser implements Serializable {
|
||||
// 手机号(非持久字段,查询时填充)
|
||||
@TableField(exist = false)
|
||||
private String phone;
|
||||
|
||||
// ===== 以下字段来源于 qh_con_doctor(咨询服务医生表),查询时批量填充 =====
|
||||
// 医生姓名
|
||||
@TableField(exist = false)
|
||||
private String doctorName;
|
||||
// 专家编号
|
||||
@TableField(exist = false)
|
||||
private String doctorNo;
|
||||
// 医生头像
|
||||
@TableField(exist = false)
|
||||
private String photo;
|
||||
// 医院名称
|
||||
@TableField(exist = false)
|
||||
private String resourceName;
|
||||
// 科室id
|
||||
@TableField(exist = false)
|
||||
private String departmentId;
|
||||
// 科室名称
|
||||
@TableField(exist = false)
|
||||
private String departmentName;
|
||||
// 职务
|
||||
@TableField(exist = false)
|
||||
@Dict(dicCode = "z_doct_lev")
|
||||
private String doctorTitle;
|
||||
// 职称
|
||||
@TableField(exist = false)
|
||||
@Dict(dicCode = "z_doct_job")
|
||||
private String doctorJob;
|
||||
// 专家状态
|
||||
@TableField(exist = false)
|
||||
@Dict(dicCode = "doc_status")
|
||||
private String doctorStatus;
|
||||
// 是否开启咨询(1开启 3关闭)
|
||||
@TableField(exist = false)
|
||||
@Dict(dicCode = "z_doct_sta")
|
||||
private String isAccept;
|
||||
// 专家类型(z_doct_typ) —— 避免与人员type冲突,命名为doctorType
|
||||
@TableField(exist = false)
|
||||
@Dict(dicCode = "z_doct_typ")
|
||||
private String doctorType;
|
||||
// 是否提供音视频
|
||||
@TableField(exist = false)
|
||||
private String audioStatus;
|
||||
// 是否跳过节假日
|
||||
@TableField(exist = false)
|
||||
private String tfJumpHoliday;
|
||||
// 执业经历
|
||||
@TableField(exist = false)
|
||||
private String experience;
|
||||
// 排序
|
||||
@TableField(exist = false)
|
||||
private Integer sort;
|
||||
// 是否推荐(0否1是)
|
||||
@TableField(exist = false)
|
||||
private String tfRecommend;
|
||||
// 简介
|
||||
@TableField(exist = false)
|
||||
private String introduction;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user