30 Commits
Author SHA1 Message Date
hejiayang 065dc6e7db Merge remote-tracking branch 'origin/xc' into xc 2026-03-12 17:54:18 +08:00
lianlonggang 073efdd34f 信创sql整理 2026-03-12 17:03:50 +08:00
wanghao bc40b561dc fix(权限管理): 移除租户包权限查询逻辑解决达梦数据库表不存在问题
由于 QH_SYS_TENANT_PACK_PERMS 等租户相关表已被删除,
从 queryByUser 查询中移除租户包权限判断逻辑,
仅保留角色权限和部门角色权限查询
2026-03-12 16:56:45 +08:00
hejiayang 886c9d1dbc fix(emergency):
更新实体类中的数据库表名@TableName
更新相关XML映射文件中的表名引用,确保查询语句与新的表名保持一致。
更新mapper文件注解中表名
2026-03-12 16:06:02 +08:00
wanghaoandClaude Sonnet 4.6 b9ea233a45 sql(system服务): 新增无用表删除脚本
新增 20260311-system无用表删除.sql,包含 18 张无业务遗留表的
删除语句,提供原表名和 QH_ 命名规范两份版本,按模块分组排列。
暂缓删除 QH_SYS_QUARTZ_JOB 和 QH_SYS_TENANT,待确认启动依赖。

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-11 17:52:45 +08:00
hejiayang 670f36a57b Merge remote-tracking branch 'origin/xc' into xc 2026-03-11 09:42:13 +08:00
hejiayang 3733d442cc feat(watch): 支持Oracle数据库兼容性改进
- 将MyBatis查询中的"LIMIT 1"替换为"FETCH FIRST 1 ROWS ONLY"
- 在XML映射文件中将ROWNUM用于分页查询以提高Oracle兼容性
- 将MySQL特定函数转换为Oracle兼容语法:
  - YEAR()替换为EXTRACT(YEAR FROM)
  - TIMESTAMPDIFF()替换为EXTRACT(HOUR/MINUTE/SECOND FROM) - IFNULL()替换为NVL() - CURDATE()替换为SYSDATE
- 更新复杂查询语句使用ROW_NUMBER()窗口函数替代LEFT JOIN
- 修改表名引用从反引号到双引号以提高数据库兼容性
2026-03-11 09:41:56 +08:00
wanghaoandClaude Sonnet 4.6 061749cfb3 refactor(系统服务): 完成达梦数据库表名迁移至 QH_ 命名规范
- 更新 76 个实体类的 @TableName 注解,映射到新 QH_XXX_XXXXX 表名
- 批量替换 jeecg-system 和 jeecg-boot-base-core 中 175 个文件的
  硬编码旧表名,统一使用新 QH_ 前缀命名
- 新增 20260310-修改system数据库表名.sql,包含 76 条 ALTER TABLE
  RENAME TO 语句(分模块分组)
- 追加 5 条废弃表 DROP TABLE 语句至 20260306-信创system删表语句.sql
- 更新达梦数据库兼容性问题报告,第六节调整为 76 行,
  第八节新增 8.13 废弃表分组,合计 111 张表

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-10 16:40:09 +08:00
lianlonggang 0b403a559e refactor(consultation): 优化代码格式和空行规范
- 统一各实体类、Mapper 和 XML 文件的代码格式
- 规范化导入语句和类声明之间的空行
- 调整 ConSessionView、ConCostStatistics 等实体类格式
- 优化 Mapper 接口和 XML 映射文件的空行结构
- 提升代码可读性和一致性
- 去掉view及_qh表依赖
2026-03-09 10:55:55 +08:00
lianlonggang 8fd4cd9253 fix(consultation): 修复达梦数据库关键字冲突问题
- 将 SQL 中的 `type` 字段使用双引号转义为 `\"TYPE\"`
- 解决达梦数据库保留关键字导致的查询异常
- 影响模块:
  - ConDoctorSchedulingMapper.xml
  - ConDepartmentMapper.xml
2026-03-09 10:53:35 +08:00
hejiayang 10d5e6ca4a ```
feat: 添加MySQL驱动依赖支持Spring Batch功能

添加了MySQL连接器依赖以支持Spring Batch数据源兼容性,同时排除了Quartz自动配置避免定时任务冲突。```
2026-03-09 09:24:49 +08:00
hejiayang d98884ea4c fix(emergency): 修复mapper注解中SQL函数兼容性问题
- 将LEFT函数替换为SUBSTR函数以提高数据库兼容性
- 将now()函数替换为SYSDATE以确保达梦数据库兼容性
2026-03-06 16:26:59 +08:00
hejiayang bab238daae fix(health-emergency):修正数据库字段映射大小写问题
修改TblQimoNotice实体类中的@TableField注解,
将beginTime和endTime字段名统一改为大写BEGIN_TIME和END_TIME,以匹配数据库实际字段命名规范。
2026-03-06 16:11:02 +08:00
hejiayang 5233e6cb4b fix(mapper):修复SQL映射文件中的语法错误并优化查询性能
- 将反引号改为双引号以适配达梦数据库语法
- 替换MySQL特有函数为标准SQL函数(concat改为||操作符)
- 使用SYSDATE函数替代NOW函数
- 使用EXTRACT函数替代YEAR/MONTH函数提高兼容性
- 使用TRUNC函数替代DATE函数进行日期比较
- 将LIMIT语法改为FETCH FIRST语法(service):优化分页查询逻辑提高数据获取稳定性- 将LambdaQueryWrapper的last("limit1")改为标准分页查询
2026-03-06 16:03:14 +08:00
wanghaoandClaude Sonnet 4.6 224dae23ee fix(信创): 修复 Java Mapper @Select 注解中 MySQL 不兼容语法
将 5 个 Mapper 接口 @Select 注解内的 MySQL 特有语法替换为达梦兼容写法:
- LIMIT 1 → FETCH FIRST 1 ROWS ONLY(UserDataRecordBmiMapper × 2、
  UserDataRecordBWHMapper、UserDataRecordBloodAboMapper、
  UserDataRecordBloodPressureMapper)
- NOW() → SYSDATE(HealthHolidayMapper)

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-06 13:34:58 +08:00
wanghao 5f790c0c7e fix(信创): 修复 Java 代码中 QueryWrapper.last() 拼接 LIMIT 语法与达梦不兼容问题
- LoginController: last("limit 1") → FETCH FIRST 1 ROWS ONLY
- WeighingDeviceServiceImpl: last("limit 1") → FETCH FIRST 1 ROWS ONLY
- SmsSendMsgHandle: last("limit "+n) → FETCH FIRST n ROWS ONLY
- HealthUserEmployeeExServiceImpl: 共 14 处 last("LIMIT 1") → FETCH FIRST 1 ROWS ONLY
- SysAnonServiceImpl: last("LIMIT 1 OFFSET 0") → FETCH FIRST 1 ROWS ONLY
2026-03-06 11:36:43 +08:00
wanghao 890cdfe40d fix(信创): 修复 Mapper XML 中 MySQL 特有语法与达梦数据库不兼容问题
- UserDataRecordBmiMapper.xml: DATE() → TRUNC(),LIMIT 1 → FETCH FIRST 1 ROWS ONLY
- SysVersionInfoMapper.xml: limit 1 → FETCH FIRST 1 ROWS ONLY
- SysUserMapper.xml: limit 1 → FETCH FIRST 1 ROWS ONLY,IFNULL() → NVL(),INSERT IGNORE → INSERT INTO
2026-03-06 11:36:19 +08:00
wanghao 909ccacaeb sql(信创): 新增达梦数据库无效表清理脚本,删除100张冗余表 2026-03-06 10:22:59 +08:00
wanghao 9b3021e847 Merge branch 'xc' of https://gitea.rk-health.com/renkang/xj-platform into xc 2026-03-06 09:54:28 +08:00
wanghao 264ca97055 refactor(缓存管理): 注释掉新疆项目中青海相关的用户和部门缓存逻辑 2026-03-06 09:51:38 +08:00
lianlonggang 9251e202f3 feat(db): 添加达梦数据库关键字转义拦截器
- 新增 DmKeywordInterceptor 拦截器,自动为达梦数据库关键字添加双引号转义
- 更新 AedEquipmentManger 实体类格式化和导入语句规范
- 支持自动识别和处理达梦数据库保留关键字,避免 SQL 语法错误
- 提升数据库兼容性,确保实体字段与达梦数据库关键字冲突时正常执行
2026-03-05 18:30:21 +08:00
wanghao 5885cd2ea0 xml修改 2026-03-05 14:47:55 +08:00
hejiayang d2a2f8291c 实体类数据库关键字注释 2026-03-05 11:15:20 +08:00
hejiayang a38f8adfc8 Merge remote-tracking branch 'origin/xc' into xc 2026-03-04 18:01:49 +08:00
hejiayang 4c98dd2d30 fix: 应急就医数据库迁移相关调整
1.启动类排除QuartzAutoConfiguration.class
2.数据库字段与达梦保留关键字段冲突调整
3.sql键名重复修改
2026-03-04 18:01:20 +08:00
wanghao b751f40bb4 systemxml改造 2026-03-04 14:59:45 +08:00
lianlonggang 61045e4389 chore(config): 更新 Nacos 配置连接信息
- 更新 Nacos 服务器地址从 localhost:8848 到 192.168.1.80:8848
- 更新认证信息(用户名: xjuser, 密码: Aa135790!123)
- 更新命名空间为 xjxc-space-common
- 新增服务发现命名空间配置 NACOS_NAMESPACE_DISCOVERY

涉及模块:
- health-consultation-start
- health-emergency-start
- health-watch-start
- jeecg-system-start
2026-03-04 09:30:06 +08:00
lianlonggang a3cb8a45ad chore(config): 标准化所有微服务的 application.yml 格式
- 统一 health-consultation、health-emergency、health-watch、health-system 四个模块的配置文件格式
- 规范 YAML 缩进和空行,提升配置文件可读性
- 保持配置内容不变,仅调整格式排版
2026-03-04 09:27:40 +08:00
lianlonggang fb5f142127 chore(deps): 移除达梦数据库 JDBC 驱动依赖并优化配置
- 删除 DmJdbcDriver8.jar 驱动文件
- 排除 QuartzAutoConfiguration 自动配置
- 统一规范 POM 文件格式和依赖管理
- 优化项目构建配置
2026-03-03 17:57:32 +08:00
wanghao 2c0d684079 信创改造 2026-03-02 15:13:07 +08:00
454 changed files with 2797 additions and 3872 deletions
@@ -0,0 +1,111 @@
DROP TABLE "20250917_CARE";
DROP TABLE "ARC_ASSESS_VALUE";
DROP TABLE "ARC_FOOD_ATLAS";
DROP TABLE "ARC_QUESTIONNAIRE";
DROP TABLE "ARC_QUESTIONNAIRE_CHILD";
DROP TABLE "CESHI_NOTE";
DROP TABLE "COMMON_EXPORTS_INFO_QH";
DROP TABLE "COMMON_EXPORTS_ITEM_QH";
DROP TABLE "COMMON_IMPORTS_DETAIL_QH";
DROP TABLE "COMMON_IMPORTS_QH";
DROP TABLE "CON_COST_STATISTICS";
DROP TABLE "CON_DEPARTMENT";
DROP TABLE "CON_DOCTOR_FOLLOW";
DROP TABLE "CON_DOCTOR_SCHEDULING";
DROP TABLE "CON_DOCTOR_SCHEDULING_DATE";
DROP TABLE "CON_EVALUATE";
DROP TABLE "CON_FAMILY_MEMBERS";
DROP TABLE "CON_HEALTH_INFO";
DROP TABLE "CON_HEALTH_INFO_ANSWER";
DROP TABLE "CON_HOSPITAL_FOLLOW";
DROP TABLE "CON_KNOWLEDGE";
DROP TABLE "CON_KNOWLEDGE_CATEGORY";
DROP TABLE "CON_MEDICAL_RECORDS";
DROP TABLE "CON_SESSION_RESERVATION_DATE";
DROP TABLE "DEMO";
DROP TABLE "DEMO_FIELD_DEF_VAL_MAIN";
DROP TABLE "DEMO_FIELD_DEF_VAL_SUB";
DROP TABLE "EMERGENCY_SERIOUS_DISEASE";
DROP TABLE "HEALTH_CLASSIFICATION";
DROP TABLE "HEALTH_USER_EMPLOYEE_EX_QH";
DROP TABLE "JEECG_MONTHLY_GROWTH_ANALYSIS";
DROP TABLE "JEECG_ORDER_CUSTOMER";
DROP TABLE "JEECG_ORDER_MAIN";
DROP TABLE "JEECG_ORDER_TICKET";
DROP TABLE "JEECG_PROJECT_NATURE_INCOME";
DROP TABLE "JIMU_DICT";
DROP TABLE "JIMU_DICT_ITEM";
DROP TABLE "JIMU_REPORT";
DROP TABLE "JIMU_REPORT_DATA_SOURCE";
DROP TABLE "JIMU_REPORT_DB";
DROP TABLE "JIMU_REPORT_DB_FIELD";
DROP TABLE "JIMU_REPORT_DB_PARAM";
DROP TABLE "JIMU_REPORT_LINK";
DROP TABLE "JIMU_REPORT_MAP";
DROP TABLE "JIMU_REPORT_SHARE";
DROP TABLE "JOA_DEMO";
DROP TABLE "LORE_CHECK_SUBJECT";
DROP TABLE "ONL_AUTH_DATA";
DROP TABLE "ONL_AUTH_PAGE";
DROP TABLE "ONL_AUTH_RELATION";
DROP TABLE "ONL_CGFORM_BUTTON";
DROP TABLE "ONL_CGFORM_ENHANCE_JAVA";
DROP TABLE "ONL_CGFORM_ENHANCE_JS";
DROP TABLE "ONL_CGFORM_ENHANCE_SQL";
DROP TABLE "ONL_CGFORM_FIELD";
DROP TABLE "ONL_CGFORM_HEAD";
DROP TABLE "ONL_CGFORM_INDEX";
DROP TABLE "ONL_CGREPORT_HEAD";
DROP TABLE "ONL_CGREPORT_ITEM";
DROP TABLE "ONL_CGREPORT_PARAM";
DROP TABLE "OSS_FILE";
DROP TABLE "QRTZ_BLOB_TRIGGERS";
DROP TABLE "QRTZ_CALENDARS";
DROP TABLE "QRTZ_CRON_TRIGGERS";
DROP TABLE "QRTZ_FIRED_TRIGGERS";
DROP TABLE "QRTZ_JOB_DETAILS" CASCADE;
DROP TABLE "QRTZ_LOCKS";
DROP TABLE "QRTZ_PAUSED_TRIGGER_GRPS";
DROP TABLE "QRTZ_SCHEDULER_STATE";
DROP TABLE "QRTZ_SIMPLE_TRIGGERS";
DROP TABLE "QRTZ_SIMPROP_TRIGGERS";
DROP TABLE "QRTZ_TRIGGERS";
DROP TABLE "REP_DEMO_DXTJ";
DROP TABLE "REP_DEMO_EMPLOYEE";
DROP TABLE "REP_DEMO_GONGSI";
DROP TABLE "REP_DEMO_JIANPIAO";
DROP TABLE "SYS_APP_VERSION_QH";
DROP TABLE "SYS_DEPART_COPY1";
DROP TABLE "SYS_DEPART_GPS_QH";
DROP TABLE "SYS_DEPART_QH";
DROP TABLE "SYS_LOG_QH";
DROP TABLE "SYS_PERMISSION_20241224";
DROP TABLE "SYS_PERMISSION_DATA_RULE_QH";
DROP TABLE "SYS_PERMISSION_QH";
DROP TABLE "SYS_ROLE_INDEX_QH";
DROP TABLE "SYS_ROLE_PERMISSION_QH";
DROP TABLE "SYS_ROLE_QH";
DROP TABLE "SYS_USER_DEPART_CHANGE_APPLY_QH";
DROP TABLE "SYS_USER_DEPART_QH";
DROP TABLE "SYS_USER_QH";
DROP TABLE "SYS_USER_ROLE_QH";
DROP TABLE "TEST_DEMO";
DROP TABLE "TEST_ENHANCE_SELECT";
DROP TABLE "TEST_NOTE";
DROP TABLE "TEST_ORDER_CUSTOMER";
DROP TABLE "TEST_ORDER_MAIN";
DROP TABLE "TEST_ORDER_PRODUCT";
DROP TABLE "TEST_SHOPTYPE_TREE";
DROP TABLE "TEST_V3_HELLO";
DROP TABLE "TMP_REPORT_DATA_1";
DROP TABLE "TMP_REPORT_DATA_INCOME";
DROP TABLE "REMOTE_WEIGHT_MANUFACTURER_INBODY";
DROP TABLE "REMOTE_WEIGHT_MANUFACTURER_LEFU";
DROP TABLE "REMOTE_WEIGHT_MANUFACTURER_ONE";
DROP TABLE "REMOTE_WEIGHT_MANUFACTURER_TWO";
DROP TABLE "REMOTE_WEIGHT_NORMATIVE_DATA";
DROP TABLE "HEALTH_USER_DOCTOR_BASE_EX";
DROP TABLE "HOSPITAL_DEPARTMENT";
DROP TABLE "STATION_HOSPITAL";
DROP TABLE "SYS_APP_VERSION";
DROP TABLE "USER_INFORMATION";
@@ -0,0 +1,92 @@
-- ============================================================
-- System 服务数据库表名修改脚本达梦 DM8
-- 规则统一以 QH_ 开头第二级三字母业务模块前缀总长度 25
-- 生成日期2026-03-10
-- 涉及表数76
-- ============================================================
-- ===== COM 公共模块4 =====
ALTER TABLE "COMMON_EXPORTS_INFO" RENAME TO "QH_COM_EXPORTS_INFO";
ALTER TABLE "COMMON_EXPORTS_ITEM" RENAME TO "QH_COM_EXPORTS_ITEM";
ALTER TABLE "COMMON_IMPORTS" RENAME TO "QH_COM_IMPORTS";
ALTER TABLE "COMMON_IMPORTS_DETAIL" RENAME TO "QH_COM_IMPORTS_DETAIL";
-- ===== HLT 健康模块6 =====
ALTER TABLE "HEALTH_CONSULT_RESOURCE" RENAME TO "QH_HLT_CONSULT_RESOURCE";
ALTER TABLE "HEALTH_HOLIDAY" RENAME TO "QH_HLT_HOLIDAY";
ALTER TABLE "HEALTH_USER_DOCTOR_EX" RENAME TO "QH_HLT_DOCTOR_EX";
ALTER TABLE "HEALTH_USER_EMPLOYEE_EX" RENAME TO "QH_HLT_USER_EMPLOYEE_EX";
ALTER TABLE "HEALTH_USER_OPERATOR_EX" RENAME TO "QH_HLT_USER_OPERATOR_EX";
ALTER TABLE "HEALTH_USER_STATION_EX" RENAME TO "QH_HLT_USER_STATION_EX";
-- ===== SCL 体测模块2 =====
ALTER TABLE "SCALE_HEIGHT" RENAME TO "QH_SCL_HEIGHT";
ALTER TABLE "SCALE_PERSONAL" RENAME TO "QH_SCL_PERSONAL";
-- ===== SYS 系统模块52 =====
ALTER TABLE "SYS_ANNOUNCEMENT" RENAME TO "QH_SYS_ANNOUNCEMENT";
ALTER TABLE "SYS_ANNOUNCEMENT_SEND" RENAME TO "QH_SYS_ANNOUNCEMENT_SEND";
ALTER TABLE "SYS_BANNER" RENAME TO "QH_SYS_BANNER";
ALTER TABLE "SYS_CATEGORY" RENAME TO "QH_SYS_CATEGORY";
ALTER TABLE "SYS_CHECK_RULE" RENAME TO "QH_SYS_CHECK_RULE";
ALTER TABLE "SYS_COMMENT" RENAME TO "QH_SYS_COMMENT";
ALTER TABLE "SYS_CONFIG" RENAME TO "QH_SYS_CONFIG";
ALTER TABLE "SYS_DATA_LOG" RENAME TO "QH_SYS_DATA_LOG";
ALTER TABLE "SYS_DATA_SOURCE" RENAME TO "QH_SYS_DATA_SOURCE";
ALTER TABLE "SYS_DEPART" RENAME TO "QH_SYS_DEPART";
ALTER TABLE "SYS_DEPART_GPS" RENAME TO "QH_SYS_DEPART_GPS";
ALTER TABLE "SYS_DEPART_PERMISSION" RENAME TO "QH_SYS_DEPART_PERMISSION";
ALTER TABLE "SYS_DEPART_ROLE" RENAME TO "QH_SYS_DEPART_ROLE";
ALTER TABLE "SYS_DEPART_ROLE_PERMISSION" RENAME TO "QH_SYS_DEPT_ROLE_PERM";
ALTER TABLE "SYS_DEPART_ROLE_USER" RENAME TO "QH_SYS_DEPART_ROLE_USER";
ALTER TABLE "SYS_DICT" RENAME TO "QH_SYS_DICT";
ALTER TABLE "SYS_DICT_ITEM" RENAME TO "QH_SYS_DICT_ITEM";
ALTER TABLE "SYS_FILES" RENAME TO "QH_SYS_FILES";
ALTER TABLE "SYS_FILL_RULE" RENAME TO "QH_SYS_FILL_RULE";
ALTER TABLE "SYS_FORM_FILE" RENAME TO "QH_SYS_FORM_FILE";
ALTER TABLE "SYS_GATEWAY_ROUTE" RENAME TO "QH_SYS_GATEWAY_ROUTE";
ALTER TABLE "SYS_IOS_REDEEM" RENAME TO "QH_SYS_IOS_REDEEM";
ALTER TABLE "SYS_LOG" RENAME TO "QH_SYS_LOG";
ALTER TABLE "SYS_MESSAGE_NOTICE" RENAME TO "QH_SYS_MSG_NOTICE";
ALTER TABLE "SYS_MESSAGE_NOTICE_SCOPE" RENAME TO "QH_SYS_MSG_NOTICE_SCOPE";
ALTER TABLE "SYS_MESSAGE_REMIND" RENAME TO "QH_SYS_MSG_REMIND";
ALTER TABLE "SYS_NOTICE" RENAME TO "QH_SYS_NOTICE";
ALTER TABLE "SYS_NOTICE_READ_RECORD" RENAME TO "QH_SYS_NOTICE_READ_RECORD";
ALTER TABLE "SYS_PACK_PERMISSION" RENAME TO "QH_SYS_PACK_PERMISSION";
ALTER TABLE "SYS_PERMISSION" RENAME TO "QH_SYS_PERMISSION";
ALTER TABLE "SYS_PERMISSION_DATA_RULE" RENAME TO "QH_SYS_PERM_DATA_RULE";
ALTER TABLE "SYS_PERMISSION_V2" RENAME TO "QH_SYS_PERMISSION_V2";
ALTER TABLE "SYS_POSITION" RENAME TO "QH_SYS_POSITION";
ALTER TABLE "SYS_POSITION_CLASSIFY" RENAME TO "QH_SYS_POSITION_CLASSIFY";
ALTER TABLE "SYS_QUARTZ_JOB" RENAME TO "QH_SYS_QUARTZ_JOB";
ALTER TABLE "SYS_ROLE" RENAME TO "QH_SYS_ROLE";
ALTER TABLE "SYS_ROLE_INDEX" RENAME TO "QH_SYS_ROLE_INDEX";
ALTER TABLE "SYS_ROLE_PERMISSION" RENAME TO "QH_SYS_ROLE_PERMISSION";
ALTER TABLE "SYS_SMS" RENAME TO "QH_SYS_SMS";
ALTER TABLE "SYS_SMS_TEMPLATE" RENAME TO "QH_SYS_SMS_TEMPLATE";
ALTER TABLE "SYS_TENANT" RENAME TO "QH_SYS_TENANT";
ALTER TABLE "SYS_TENANT_PACK" RENAME TO "QH_SYS_TENANT_PACK";
ALTER TABLE "SYS_TENANT_PACK_PERMS" RENAME TO "QH_SYS_TENANT_PACK_PERMS";
ALTER TABLE "SYS_TENANT_PACK_USER" RENAME TO "QH_SYS_TENANT_PACK_USER";
ALTER TABLE "SYS_THIRD_ACCOUNT" RENAME TO "QH_SYS_THIRD_ACCOUNT";
ALTER TABLE "SYS_USER" RENAME TO "QH_SYS_USER";
ALTER TABLE "SYS_USER_AGENT" RENAME TO "QH_SYS_USER_AGENT";
ALTER TABLE "SYS_USER_DEPART" RENAME TO "QH_SYS_USER_DEPART";
ALTER TABLE "SYS_USER_DEPART_CHANGE_APPLY" RENAME TO "QH_SYS_DEPT_CHG_APPLY";
ALTER TABLE "SYS_USER_DEVICE" RENAME TO "QH_SYS_USER_DEVICE";
ALTER TABLE "SYS_USER_EMERGENCY_CONTACT" RENAME TO "QH_SYS_USR_EMERG_CONTACT";
ALTER TABLE "SYS_USER_FAMILY_MEMBERS" RENAME TO "QH_SYS_USR_FAMILY_MBR";
ALTER TABLE "SYS_USER_FAMILY_MEMBERS_REQUEST" RENAME TO "QH_SYS_USR_FAM_MBR_REQ";
ALTER TABLE "SYS_USER_POST" RENAME TO "QH_SYS_USER_POST";
ALTER TABLE "SYS_USER_ROLE" RENAME TO "QH_SYS_USER_ROLE";
ALTER TABLE "SYS_USER_TENANT" RENAME TO "QH_SYS_USER_TENANT";
ALTER TABLE "SYS_VERSION_APP" RENAME TO "QH_SYS_VERSION_APP";
ALTER TABLE "SYS_VERSION_INFO" RENAME TO "QH_SYS_VERSION_INFO";
-- ===== USR 用户模块12 =====
ALTER TABLE "TBL_USER_WX_RELATION" RENAME TO "QH_USR_WX_RELATION";
ALTER TABLE "USER_DATA_RECORD_BLOOD_ABO" RENAME TO "QH_USR_DATA_RCD_BLOOD_ABO";
ALTER TABLE "USER_DATA_RECORD_BLOOD_PRESSURE" RENAME TO "QH_USR_DATA_RCD_BLD_PRS";
ALTER TABLE "USER_DATA_RECORD_BMI" RENAME TO "QH_USR_DATA_RCD_BMI";
ALTER TABLE "USER_DATA_RECORD_BWH" RENAME TO "QH_USR_DATA_RCD_BWH";
ALTER TABLE "USER_WEIGHT_BIND" RENAME TO "QH_USR_WEIGHT_BIND";
@@ -0,0 +1,69 @@
-- ============================================================
-- System 服务无用表删除脚本
-- 说明以下表在当前业务中已无实际使用从原项目迁移而来
-- 注意QH_SYS_QUARTZ_JOB QH_SYS_TENANT 谨慎处理暂不删除
-- 生成日期2026-03-11
-- 涉及表数18
-- ============================================================
-- ============================================================
-- 第一份原表名迁移前
-- ============================================================
-- HLT 健康模块
DROP TABLE "HEALTH_USER_STATION_EX";
-- SCL 体测模块
DROP TABLE "SCALE_HEIGHT";
DROP TABLE "SCALE_PERSONAL";
-- SYS 系统模块
DROP TABLE "SYS_FORM_FILE";
DROP TABLE "SYS_IOS_REDEEM";
DROP TABLE "SYS_PACK_PERMISSION";
DROP TABLE "SYS_TENANT_PACK";
DROP TABLE "SYS_TENANT_PACK_PERMS";
DROP TABLE "SYS_TENANT_PACK_USER";
DROP TABLE "SYS_THIRD_ACCOUNT";
DROP TABLE "SYS_USER_FAMILY_MEMBERS";
DROP TABLE "SYS_USER_FAMILY_MEMBERS_REQUEST";
-- USR 用户模块
DROP TABLE "TBL_USER_WX_RELATION";
DROP TABLE "USER_DATA_RECORD_BLOOD_PRESSURE";
DROP TABLE "USER_DATA_RECORD_BLOOD_ABO";
DROP TABLE "USER_DATA_RECORD_BMI";
DROP TABLE "USER_DATA_RECORD_BWH";
DROP TABLE "USER_WEIGHT_BIND";
-- ============================================================
-- 第二份新表名迁移后QH_ 命名规范
-- ============================================================
-- HLT 健康模块
DROP TABLE "QH_HLT_USER_STATION_EX";
-- SCL 体测模块
DROP TABLE "QH_SCL_HEIGHT";
DROP TABLE "QH_SCL_PERSONAL";
-- SYS 系统模块
DROP TABLE "QH_SYS_FORM_FILE";
DROP TABLE "QH_SYS_IOS_REDEEM";
DROP TABLE "QH_SYS_PACK_PERMISSION";
DROP TABLE "QH_SYS_TENANT_PACK";
DROP TABLE "QH_SYS_TENANT_PACK_PERMS";
DROP TABLE "QH_SYS_TENANT_PACK_USER";
DROP TABLE "QH_SYS_THIRD_ACCOUNT";
DROP TABLE "QH_SYS_USR_FAMILY_MBR";
DROP TABLE "QH_SYS_USR_FAM_MBR_REQ";
-- USR 用户模块
DROP TABLE "QH_USR_WX_RELATION";
DROP TABLE "QH_USR_DATA_RCD_BLD_PRS";
DROP TABLE "QH_USR_DATA_RCD_BLOOD_ABO";
DROP TABLE "QH_USR_DATA_RCD_BMI";
DROP TABLE "QH_USR_DATA_RCD_BWH";
DROP TABLE "QH_USR_WEIGHT_BIND";
@@ -1,10 +0,0 @@
-- QH_WAT_MONITOR_DATA 新增 EVENT_ID事件ID LOCATE_TIME定位时间字段
-- 数据库118-DM 达梦数据库SQL 全大写规范
ALTER TABLE "QH_WAT_MONITOR_DATA" ADD "EVENT_ID" VARCHAR(64) DEFAULT NULL;
ALTER TABLE "QH_WAT_MONITOR_DATA" ADD "LOCATE_TIME" DATETIME DEFAULT NULL;
COMMENT ON COLUMN "QH_WAT_MONITOR_DATA"."EVENT_ID" IS '事件ID';
COMMENT ON COLUMN "QH_WAT_MONITOR_DATA"."LOCATE_TIME" IS '定位时间';
CREATE INDEX "IDX_EVENT_ID" ON "QH_WAT_MONITOR_DATA"("EVENT_ID");
CREATE INDEX "IDX_WATCH_NO_EVENT_ID" ON "QH_WAT_MONITOR_DATA"("WATCH_NO", "EVENT_ID");
+64
View File
@@ -0,0 +1,64 @@
-- 删除青海相关库
DROP TABLE IF EXISTS CON_DOCTOR_FOLLOW_QH;
DROP TABLE IF EXISTS CON_DOCTOR_SATISFY_QH;
DROP TABLE IF EXISTS CON_EVALUATE_QH;
DROP TABLE IF EXISTS CON_FAMILY_MEMBERS_QH;
DROP TABLE IF EXISTS CON_HEALTH_INFO_ANSWER_QH;
DROP TABLE IF EXISTS CON_HEALTH_INFO_CHILD_QH;
DROP TABLE IF EXISTS CON_HEALTH_INFO_QH;
DROP TABLE IF EXISTS CON_HELPER_ONLINE_QH;
DROP TABLE IF EXISTS CON_HELPER_QH;
DROP TABLE IF EXISTS CON_HELPER_SCHEDULING_HISTORY_QH;
DROP TABLE IF EXISTS CON_HELPER_SCHEDULING_QH;
DROP TABLE IF EXISTS CON_HOSPITAL_FOLLOW_QH;
DROP TABLE IF EXISTS CON_MEDICAL_RECORDS_QH;
DROP TABLE IF EXISTS CON_SESSION_QH;
-- 修改表名
ALTER TABLE CON_COST_LOG RENAME TO QH_CON_COST_LOG;
ALTER TABLE CON_COST_STATISTICS RENAME TO QH_CON_COST_STAT;
ALTER TABLE CON_DEPARTMENT RENAME TO QH_CON_DEPT;
ALTER TABLE CON_DOCTOR RENAME TO QH_CON_DOCTOR;
ALTER TABLE CON_DOCTOR_CARD RENAME TO QH_CON_DOC_CARD;
ALTER TABLE CON_DOCTOR_CHANGE_LOG RENAME TO QH_CON_DOC_CHG_LOG;
ALTER TABLE CON_DOCTOR_FOLLOW RENAME TO QH_CON_DOC_FOLLOW;
ALTER TABLE CON_DOCTOR_SATISFY RENAME TO QH_CON_DOC_SATISFY;
ALTER TABLE CON_DOCTOR_SCHEDULING RENAME TO QH_CON_DOC_SCHD;
ALTER TABLE CON_DOCTOR_SCHEDULING_DATE RENAME TO QH_CON_DOC_SCHD_DT;
ALTER TABLE CON_EVALUATE RENAME TO QH_CON_EVALUATE;
ALTER TABLE CON_FAMILY_MEMBERS RENAME TO QH_CON_FAMMEM;
ALTER TABLE CON_HABIT_PARAM RENAME TO QH_CON_HABIT_PARM;
ALTER TABLE CON_HEALTH_INFO RENAME TO QH_CON_HEALTH;
ALTER TABLE CON_HEALTH_INFO_ANSWER RENAME TO QH_CON_HEALTH_ANS;
ALTER TABLE CON_HEALTH_INFO_CHILD RENAME TO QH_CON_HEALTH_CHD;
ALTER TABLE CON_HELPER RENAME TO QH_CON_HELPER;
ALTER TABLE CON_HELPER_ONLINE RENAME TO QH_CON_HELPER_ONLN;
ALTER TABLE CON_HELPER_REST RENAME TO QH_CON_HELPER_REST;
ALTER TABLE CON_HELPER_SCHEDULING RENAME TO QH_CON_HELPER_SCHD;
ALTER TABLE CON_HELPER_SCHEDULING_HISTORY RENAME TO QH_CON_HELPER_SCHD_HIS;
ALTER TABLE CON_HOSPITAL_FOLLOW RENAME TO QH_CON_HOSP_FOLLOW;
ALTER TABLE CON_KNOWLEDGE RENAME TO QH_CON_KNOW;
ALTER TABLE CON_KNOWLEDGE_CATEGORY RENAME TO QH_CON_KNOW_CATE;
ALTER TABLE CON_MEDICAL_RECORDS RENAME TO QH_CON_MEDREC;
ALTER TABLE CON_NOTICE RENAME TO QH_CON_NOTICE;
ALTER TABLE CON_PAUSE_SERVICE RENAME TO QH_CON_PAUSE_SRVC;
ALTER TABLE CON_PHRASES RENAME TO QH_CON_PHRASES;
ALTER TABLE CON_PROPOSE RENAME TO QH_CON_PROPOSE;
ALTER TABLE CON_RESOURCE RENAME TO QH_CON_RESOURCE;
ALTER TABLE CON_SCHEDULING RENAME TO QH_CON_SCHD;
ALTER TABLE CON_SERVICE RENAME TO QH_CON_SRVC;
ALTER TABLE CON_SESSION RENAME TO QH_CON_SESSION;
ALTER TABLE CON_SESSION_RESERVATION_DATE RENAME TO QH_CON_SESS_RESV_DT;
ALTER TABLE CON_SESSION_VIDEO_INFO RENAME TO QH_CON_SESS_VID;
ALTER TABLE CON_SETTLE_CONFIG_COST RENAME TO QH_CON_STL_CFG_COST;
ALTER TABLE CON_SETTLE_CONFIG_PERIOD RENAME TO QH_CON_STL_CFG_PRD;
ALTER TABLE CON_SETTLE_MAIN RENAME TO QH_CON_STL_MAIN;
ALTER TABLE CON_SETTLE_RESULT RENAME TO QH_CON_STL_RSLT;
ALTER TABLE CON_SETTLE_RESULT_ITEM RENAME TO QH_CON_STL_RSLT_ITM;
ALTER TABLE CON_SETTLE_RESULT_PERIOD RENAME TO QH_CON_STL_RSLT_PRD;
ALTER TABLE CON_SICKS RENAME TO QH_CON_SICKS;
ALTER TABLE HOSPITAL_DEPARTMENT RENAME TO QH_CON_HOSP_DEPT;
ALTER TABLE IM_GROUP_SYNC_RECORD RENAME TO QH_CON_IM_GRP_SYNC;
ALTER TABLE IM_MSG_READ_LOG RENAME TO QH_CON_IM_MSG_RDLOG;
ALTER TABLE IM_MSG_RECORD_ALL RENAME TO QH_CON_IM_MSG_ALL;
ALTER TABLE SYS_LOG RENAME TO QH_SYS_LOG;
@@ -30,10 +30,6 @@
<groupId>org.springframework.boot</groupId> <groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-validation</artifactId> <artifactId>spring-boot-starter-validation</artifactId>
</dependency> </dependency>
<dependency>
<groupId>com.mysql</groupId>
<artifactId>mysql-connector-j</artifactId>
</dependency>
<dependency> <dependency>
<groupId>org.springframework.boot</groupId> <groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-configuration-processor</artifactId> <artifactId>spring-boot-configuration-processor</artifactId>
@@ -25,6 +25,7 @@ import org.springframework.core.task.TaskExecutor;
import org.springframework.jdbc.support.JdbcTransactionManager; import org.springframework.jdbc.support.JdbcTransactionManager;
import org.springframework.scheduling.concurrent.ThreadPoolTaskExecutor; import org.springframework.scheduling.concurrent.ThreadPoolTaskExecutor;
import org.springframework.transaction.PlatformTransactionManager; import org.springframework.transaction.PlatformTransactionManager;
import org.springframework.util.StringUtils;
import javax.sql.DataSource; import javax.sql.DataSource;
import java.util.List; import java.util.List;
@@ -125,8 +126,21 @@ public class BatchAutoConfiguration {
@BatchDataSource ObjectProvider<DataSource> batchDataSource, @BatchDataSource ObjectProvider<DataSource> batchDataSource,
BatchProperties properties BatchProperties properties
) { ) {
return new BatchDataSourceScriptDatabaseInitializer(batchDataSource.getIfAvailable(() -> dataSource), DataSource dataSourceToUse = batchDataSource.getIfAvailable(() -> dataSource);
properties.getJdbc()); BatchProperties.Jdbc jdbc = properties.getJdbc();
// 达梦数据库兼容处理:设置platform绕过构造器中的自动类型检测
if (!StringUtils.hasText(jdbc.getPlatform())) {
jdbc.setPlatform("dm");
}
// 重写afterPropertiesSet()跳过SQL脚本初始化:
// 父类会先断言SQL文件存在再检查initializeSchema mode,导致找不到schema-dm.sql时报错
// Batch元数据表已通过数据迁移创建,无需自动建表
return new BatchDataSourceScriptDatabaseInitializer(dataSourceToUse, jdbc) {
@Override
public void afterPropertiesSet() {
// 跳过Batch元数据表的自动建表,防止找不到schema-dm.sql文件报错
}
};
} }
} }
@@ -34,6 +34,13 @@ public class CustomBatchConfigurer extends BasicBatchConfigurer {
this.taskExecutor = taskExecutor; this.taskExecutor = taskExecutor;
} }
@Override
public void initialize() {
// 达梦数据库兼容处理:跳过Spring Batch数据库类型自动检测
// BasicBatchConfigurer.initialize()中DatabaseType.fromProductName()无法识别"DM DBMS"产品名
// 保持父类默认隔离级别ISOLATION_SERIALIZABLEDM8与此兼容
}
@Override @Override
protected JobLauncher createJobLauncher() throws Exception { protected JobLauncher createJobLauncher() throws Exception {
SimpleJobLauncher jobLauncher = new SimpleJobLauncher(); SimpleJobLauncher jobLauncher = new SimpleJobLauncher();
@@ -99,7 +99,7 @@ public enum AnYanApiEnum {
/** /**
* 18.查询关爱联络员信息及急救人员查询接口 * 18.查询关爱联络员信息及急救人员查询接口
*/ */
QUERY_EMPLOYEE_CARE_PERSON("/aygc-znhpt-sys/0/api/empCareEmp/findPage", "", HttpMethod.POST), QUERY_EMPLOYEE_CARE_PERSON("/aygc-znhpt-sys/0/api/empCareEmp/findPageByIdNo", "", HttpMethod.POST),
/** /**
* 19.批量更新员工关键信息接口 * 19.批量更新员工关键信息接口
@@ -1,6 +1,5 @@
package com.renkang.anyan.model.dto; package com.renkang.anyan.model.dto;
import cn.hutool.core.date.DateUtil;
import io.swagger.v3.oas.annotations.media.Schema; import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data; import lombok.Data;
@@ -35,6 +34,4 @@ public class CareUserDetailsParam {
@Schema(title = "pageType") @Schema(title = "pageType")
private String pageType = "plus"; private String pageType = "plus";
private int year = DateUtil.thisYear();
} }
@@ -11,19 +11,18 @@
a.icon, a.icon,
a.points, a.points,
CASE CASE
WHEN a.frequency = 1 THEN -- 单次 WHEN a.frequency = 1 THEN
IF(COUNT(b.id) > 0, 1, 0) CASE WHEN COUNT(b.id) > 0 THEN 1 ELSE 0 END
WHEN a.frequency = 2 THEN -- 日/次 WHEN a.frequency = 2 THEN
IF(COUNT(CASE WHEN DATE(b.create_time) = CURDATE() THEN 1 END) > 0, 1, 0) CASE WHEN COUNT(CASE WHEN TRUNC(b.create_time) = TRUNC(SYSDATE) THEN 1 END) > 0 THEN 1 ELSE 0 END
WHEN a.frequency = 3 THEN -- 周/次 WHEN a.frequency = 3 THEN
IF(COUNT(CASE WHEN YEARWEEK(b.create_time, 1) = YEARWEEK(CURDATE(), 1) THEN 1 END) > 0, 1, 0) CASE WHEN COUNT(CASE WHEN TO_CHAR(b.create_time, 'IYYY-IW') = TO_CHAR(SYSDATE, 'IYYY-IW') THEN 1 END) > 0 THEN 1 ELSE 0 END
WHEN a.frequency = 4 THEN -- 月/次 WHEN a.frequency = 4 THEN
IF(COUNT(CASE WHEN DATE_FORMAT(b.create_time, '%Y-%m') = DATE_FORMAT(CURDATE(), '%Y-%m') THEN 1 END) > 0, 1, 0) CASE WHEN COUNT(CASE WHEN TO_CHAR(b.create_time, 'YYYY-MM') = TO_CHAR(SYSDATE, 'YYYY-MM') THEN 1 END) > 0 THEN 1 ELSE 0 END
WHEN a.frequency = 5 THEN -- 季度/次 WHEN a.frequency = 5 THEN
IF(COUNT(CASE WHEN QUARTER(b.create_time) = QUARTER(CURDATE()) AND YEAR(b.create_time) = YEAR(CURDATE()) THEN 1 CASE WHEN COUNT(CASE WHEN TO_CHAR(b.create_time, 'Q') = TO_CHAR(SYSDATE, 'Q') AND EXTRACT(YEAR FROM b.create_time) = EXTRACT(YEAR FROM SYSDATE) THEN 1 END) > 0 THEN 1 ELSE 0 END
END) > 0, 1, 0) WHEN a.frequency = 6 THEN
WHEN a.frequency = 6 THEN -- 年/次 CASE WHEN COUNT(CASE WHEN EXTRACT(YEAR FROM b.create_time) = EXTRACT(YEAR FROM SYSDATE) THEN 1 END) > 0 THEN 1 ELSE 0 END
IF(COUNT(CASE WHEN YEAR(b.create_time) = YEAR(CURDATE()) THEN 1 END) > 0, 1, 0)
ELSE 0 ELSE 0
END AS clockInStatus END AS clockInStatus
FROM FROM
@@ -459,7 +459,7 @@ public class UserPointsServiceImpl extends ServiceImpl<UserPointsMapper, UserPoi
List<UserPointsDetails> details = userPointsDetailsMapper.selectList(new LambdaQueryWrapper<UserPointsDetails>() List<UserPointsDetails> details = userPointsDetailsMapper.selectList(new LambdaQueryWrapper<UserPointsDetails>()
.eq(UserPointsDetails::getUserId, userId) .eq(UserPointsDetails::getUserId, userId)
.eq(UserPointsDetails::getChangeType, HealthBankConstants.CHANGE_TYPE_ADD) .eq(UserPointsDetails::getChangeType, HealthBankConstants.CHANGE_TYPE_ADD)
.apply("DATE_FORMAT(create_time, '%Y-%m-%d') = {0}", DateUtil.today()) .apply("TO_CHAR(create_time, 'YYYY-MM-DD') = {0}", DateUtil.today())
); );
double sum = details.stream().map(UserPointsDetails::getPoints).mapToDouble(BigDecimal::doubleValue).sum(); double sum = details.stream().map(UserPointsDetails::getPoints).mapToDouble(BigDecimal::doubleValue).sum();
userPoints.setLatestAddDaySum(BigDecimal.valueOf(sum).add(pointsRule.getPoints())); userPoints.setLatestAddDaySum(BigDecimal.valueOf(sum).add(pointsRule.getPoints()));
@@ -1,6 +1,5 @@
package com.renkang.consultation.dto; package com.renkang.consultation.dto;
import cn.hutool.http.HtmlUtil;
import com.renkang.consultation.entity.ConPage; import com.renkang.consultation.entity.ConPage;
import io.swagger.v3.oas.annotations.media.Schema; import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data; import lombok.Data;
@@ -12,10 +11,6 @@ public class AccountDTO extends ConPage {
@Schema(title = "专家姓名") @Schema(title = "专家姓名")
private String doctorName; private String doctorName;
public void setDoctorName(String doctorName) {
this.doctorName = doctorName != null ? HtmlUtil.unescape(doctorName) : null;
}
@Schema(title = "医院选择") @Schema(title = "医院选择")
private String hospitalName; private String hospitalName;
@@ -1,6 +1,5 @@
package com.renkang.consultation.dto; package com.renkang.consultation.dto;
import cn.hutool.http.HtmlUtil;
import com.renkang.consultation.entity.ConPage; import com.renkang.consultation.entity.ConPage;
import io.swagger.v3.oas.annotations.media.Schema; import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data; import lombok.Data;
@@ -11,10 +10,6 @@ public class ConDoctorDTO extends ConPage {
@Schema(title = "专家姓名") @Schema(title = "专家姓名")
private String doctorName; private String doctorName;
public void setDoctorName(String doctorName) {
this.doctorName = doctorName != null ? HtmlUtil.unescape(doctorName) : null;
}
@Schema(title = "专家编号") @Schema(title = "专家编号")
private String doctorNo; private String doctorNo;
@@ -1,6 +1,5 @@
package com.renkang.consultation.dto; package com.renkang.consultation.dto;
import cn.hutool.http.HtmlUtil;
import com.fasterxml.jackson.annotation.JsonFormat; import com.fasterxml.jackson.annotation.JsonFormat;
import com.renkang.consultation.entity.ConPage; import com.renkang.consultation.entity.ConPage;
import io.swagger.v3.oas.annotations.media.Schema; import io.swagger.v3.oas.annotations.media.Schema;
@@ -18,9 +17,6 @@ public class ConEvaluateDTO extends ConPage {
@Schema(title = "咨询人") @Schema(title = "咨询人")
private String userName; private String userName;
public void setUserName(String userName) {
this.userName = userName != null ? HtmlUtil.unescape(userName) : null;
}
@Schema(title = "二级单位id") @Schema(title = "二级单位id")
private String sysOrgSecondId; private String sysOrgSecondId;
@@ -31,10 +27,6 @@ public class ConEvaluateDTO extends ConPage {
@Schema(title = "咨询专家") @Schema(title = "咨询专家")
private String expertName; private String expertName;
public void setExpertName(String expertName) {
this.expertName = expertName != null ? HtmlUtil.unescape(expertName) : null;
}
@Schema(title = "专家医院") @Schema(title = "专家医院")
private String expertHospital; private String expertHospital;
@@ -1,6 +1,5 @@
package com.renkang.consultation.dto; package com.renkang.consultation.dto;
import cn.hutool.http.HtmlUtil;
import com.renkang.consultation.entity.ConPage; import com.renkang.consultation.entity.ConPage;
import io.swagger.v3.oas.annotations.media.Schema; import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data; import lombok.Data;
@@ -11,10 +10,6 @@ public class ConHealthInfoAnswerDTO extends ConPage {
@Schema(title = "员工姓名") @Schema(title = "员工姓名")
private String fromName; private String fromName;
public void setFromName(String fromName) {
this.fromName = fromName != null ? HtmlUtil.unescape(fromName) : null;
}
@Schema(title = "手机号") @Schema(title = "手机号")
private String phone; private String phone;
@@ -1,6 +1,5 @@
package com.renkang.consultation.dto; package com.renkang.consultation.dto;
import cn.hutool.http.HtmlUtil;
import com.renkang.consultation.entity.ConPage; import com.renkang.consultation.entity.ConPage;
import io.swagger.v3.oas.annotations.media.Schema; import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data; import lombok.Data;
@@ -12,10 +11,6 @@ public class ConHelperDTO extends ConPage {
@Schema(title = "全科医生姓名") @Schema(title = "全科医生姓名")
private String userName; private String userName;
public void setUserName(String userName) {
this.userName = userName != null ? HtmlUtil.unescape(userName) : null;
}
@Schema(title = "状态") @Schema(title = "状态")
private Integer status; private Integer status;
@@ -1,6 +1,5 @@
package com.renkang.consultation.dto; package com.renkang.consultation.dto;
import cn.hutool.http.HtmlUtil;
import com.fasterxml.jackson.annotation.JsonFormat; import com.fasterxml.jackson.annotation.JsonFormat;
import com.renkang.consultation.entity.ConPage; import com.renkang.consultation.entity.ConPage;
import io.swagger.v3.oas.annotations.media.Schema; import io.swagger.v3.oas.annotations.media.Schema;
@@ -18,10 +17,6 @@ public class ConSessionDTO extends ConPage {
@Schema(title = "员工姓名") @Schema(title = "员工姓名")
private String fromName; private String fromName;
public void setFromName(String fromName) {
this.fromName = fromName != null ? HtmlUtil.unescape(fromName) : null;
}
@Schema(title = "员工id") @Schema(title = "员工id")
private String fromAccount; private String fromAccount;
@@ -31,10 +26,6 @@ public class ConSessionDTO extends ConPage {
@Schema(title = "专家姓名") @Schema(title = "专家姓名")
private String doctorName; private String doctorName;
public void setDoctorName(String doctorName) {
this.doctorName = doctorName != null ? HtmlUtil.unescape(doctorName) : null;
}
@Schema(title = "咨询状态(0待确认 1接收预约 2拒绝预约 3已过期 4已取消 5咨询中 6专家咨询结束 7员工咨询结束 8超时自动结束)") @Schema(title = "咨询状态(0待确认 1接收预约 2拒绝预约 3已过期 4已取消 5咨询中 6专家咨询结束 7员工咨询结束 8超时自动结束)")
private String contentStatus; private String contentStatus;
@@ -20,7 +20,7 @@ import java.util.Date;
@Builder @Builder
@AllArgsConstructor @AllArgsConstructor
@NoArgsConstructor @NoArgsConstructor
@TableName(value = "con_session_view") @TableName(value = "con_session")
public class ConSessionView implements Serializable { public class ConSessionView implements Serializable {
private static final long serialVersionUID = 1L; private static final long serialVersionUID = 1L;
@TableField(value = "id") @TableField(value = "id")
@@ -77,7 +77,7 @@ public class ConSessionView implements Serializable {
@TableField(value = "medical_records_id") @TableField(value = "medical_records_id")
@Schema(description = "") @Schema(description = "")
private String medicalRecordsId; private String medicalRecordsId;
@TableField(value = "`status`") @TableField(value = "status")
@Schema(description = "") @Schema(description = "")
private Integer status; private Integer status;
@TableField(value = "del_flag") @TableField(value = "del_flag")
@@ -480,10 +480,4 @@ public class ConSessionApiController {
return conSessionApiService.insertUserAndHelperSessionNew(); return conSessionApiService.insertUserAndHelperSessionNew();
} }
@Operation(summary = "超时关闭视频咨询", description = "超时关闭视频咨询")
@GetMapping("/endVideoSession")
public Result<String> endVideoSession() {
return Result.ok(conSessionApiService.endVideoSession());
}
} }
@@ -115,6 +115,4 @@ public interface ConSessionApiService {
UserSessionCount countForUser(); UserSessionCount countForUser();
String endVideoSession();
} }
@@ -2114,8 +2114,4 @@ public class ConSessionApiServiceImpl implements ConSessionApiService {
return conSessionMapper.selectCount(wrapper).intValue(); return conSessionMapper.selectCount(wrapper).intValue();
} }
public String endVideoSession() {
return conSessionMapper.endVideoSession();
}
} }
@@ -27,7 +27,7 @@ public interface ConDepartmentMapper extends BaseMapper<ConDepartment> , MPJBase
@Select("SELECT * FROM con_department WHERE status = '1' and del_flag = '0' and id = #{departmentId} order by tf_top desc,sort") @Select("SELECT * FROM con_department WHERE status = '1' and del_flag = '0' and id = #{departmentId} order by tf_top desc,sort")
public ConDepartment selectDepartmentNameById(String departmentId); public ConDepartment selectDepartmentNameById(String departmentId);
@Select("SELECT GROUP_CONCAT(id) FROM con_department WHERE status = '1' and del_flag = '0' and officeparid = #{departmentId}") @Select("SELECT LISTAGG(id, ',') WITHIN GROUP (ORDER BY id) FROM con_department WHERE status = '1' and del_flag = '0' and officeparid = #{departmentId}")
public String selectDepartmentIdByLevelOneId(String departmentId); public String selectDepartmentIdByLevelOneId(String departmentId);
@Select("SELECT count(1) FROM con_department WHERE status = '1' and del_flag = '0' and office_level = 1") @Select("SELECT count(1) FROM con_department WHERE status = '1' and del_flag = '0' and office_level = 1")
@@ -117,7 +117,7 @@ public interface ConDoctorMapper extends BaseMapper<ConDoctor> , MPJBaseMapper<C
*/ */
List<ConDoctor> getFreeDoctor(CondepartmentId departmentId); List<ConDoctor> getFreeDoctor(CondepartmentId departmentId);
@Select("select id,sicks_name as sicksName from con_sicks where status = 1 and del_flag = 0 and FIND_IN_SET(id,#{sickIds})") @Select("select id,sicks_name as sicksName from con_sicks where status = 1 and del_flag = 0 and INSTR(',' || #{sickIds} || ',', ',' || id || ',') > 0")
List<Map<String, String>> selectSickName(String sickIds); List<Map<String, String>> selectSickName(String sickIds);
@Select("SELECT * FROM con_doctor WHERE status = '1' AND del_flag = '0'") @Select("SELECT * FROM con_doctor WHERE status = '1' AND del_flag = '0'")
@@ -136,11 +136,11 @@ public interface ConDoctorMapper extends BaseMapper<ConDoctor> , MPJBaseMapper<C
@Update("update con_doctor set audio_status = #{audioStatus},tf_jump_holiday= #{tfJumpHoliday} WHERE status = '1' and del_flag = '0' and id = #{id}") @Update("update con_doctor set audio_status = #{audioStatus},tf_jump_holiday= #{tfJumpHoliday} WHERE status = '1' and del_flag = '0' and id = #{id}")
int updateAudioStatus(String id, String audioStatus, String tfJumpHoliday); int updateAudioStatus(String id, String audioStatus, String tfJumpHoliday);
@Select("select count(1) from con_doctor where del_flag = '0' AND status = 1 and doctor_status != 3 AND FIND_IN_SET(#{sickId},good_at_sickness)") @Select("select count(1) from con_doctor where del_flag = '0' AND status = 1 and doctor_status != 3 AND INSTR(',' || #{sickId} || ',', ',' || good_at_sickness || ',') > 0")
int selectDoctorNumBySickId(String sickId); int selectDoctorNumBySickId(String sickId);
@Select("select count(1) from con_doctor where del_flag = '0' AND status = 1 AND doctor_status != 3 AND FIND_IN_SET(department_id,#{departmentId})") @Select("select count(1) from con_doctor where del_flag = '0' AND status = 1 AND doctor_status != 3 AND INSTR(',' || #{departmentId} || ',', ',' || department_id || ',') > 0")
int selectDoctorNumByDepartmentId(String departmentId); int selectDoctorNumByDepartmentId(String departmentId);
List<ConDoctor> selectListByQuery(@Param("conDoctor") ConDoctor conDoctor); List<ConDoctor> selectListByQuery(@Param("conDoctor") ConDoctor conDoctor);
@@ -170,7 +170,7 @@ public interface ConDoctorMapper extends BaseMapper<ConDoctor> , MPJBaseMapper<C
@Select("select count(1) from con_doctor where del_flag = '0' AND status = 1 AND FIND_IN_SET(department_id,#{departmentId}) and resource_id = #{resourceId} and doctor_status != 3") @Select("select count(1) from con_doctor where del_flag = '0' AND status = 1 AND INSTR(',' || #{departmentId} || ',', ',' || department_id || ',') > 0 and resource_id = #{resourceId} and doctor_status != 3")
int selectDoctorNumByDepartmentIdAndResourceId(String departmentId,String resourceId); int selectDoctorNumByDepartmentIdAndResourceId(String departmentId,String resourceId);
@@ -20,7 +20,7 @@ public interface ConDoctorSchedulingDateMapper extends BaseMapper<ConDoctorSched
IPage<ConDoctorSchedulingDate> queryPageList(IPage<ConDoctorSchedulingDate> page, @Param("conDoctorSchedulingDate") ConDoctorSchedulingDate conDoctorSchedulingDate); IPage<ConDoctorSchedulingDate> queryPageList(IPage<ConDoctorSchedulingDate> page, @Param("conDoctorSchedulingDate") ConDoctorSchedulingDate conDoctorSchedulingDate);
@Select("SELECT * FROM con_doctor_scheduling_date WHERE status = '1' and del_flag = '0' and user_id = #{doctorId} and scheduling_date >= DATE_FORMAT(SYSDATE(),'%Y-%m-%d') order by scheduling_date") @Select("SELECT * FROM con_doctor_scheduling_date WHERE status = '1' and del_flag = '0' and user_id = #{doctorId} and scheduling_date >= TO_CHAR(SYSDATE,'YYYY-MM-DD') order by scheduling_date")
public List<ConDoctorSchedulingDateListDO> selectDoctorById(String doctorId); public List<ConDoctorSchedulingDateListDO> selectDoctorById(String doctorId);
@Select("SELECT * FROM con_doctor_scheduling_date WHERE status = '1' and del_flag = '0' and id = #{id}") @Select("SELECT * FROM con_doctor_scheduling_date WHERE status = '1' and del_flag = '0' and id = #{id}")
@@ -34,11 +34,11 @@ public interface ConDoctorSchedulingDateMapper extends BaseMapper<ConDoctorSched
public int updateScheduleAddMinus(String id); public int updateScheduleAddMinus(String id);
@Select("SELECT * FROM con_doctor_scheduling_date WHERE status = '1' and del_flag = '0' and user_id = #{doctorId} and scheduling_date >= DATE_FORMAT(#{schedulingDate},'%Y-%m-%d')") @Select("SELECT * FROM con_doctor_scheduling_date WHERE status = '1' and del_flag = '0' and user_id = #{doctorId} and scheduling_date >= TO_CHAR(#{schedulingDate},'YYYY-MM-DD')")
public List<ConDoctorSchedulingDateListDO> selectDoctorScheduleDateById(String doctorId, Date schedulingDate); public List<ConDoctorSchedulingDateListDO> selectDoctorScheduleDateById(String doctorId, Date schedulingDate);
@Select("SELECT * FROM con_doctor_scheduling_date WHERE status = '1' and del_flag = '0' and user_id = #{userId} and scheduling_date >= DATE(NOW()) and week = #{week}") @Select("SELECT * FROM con_doctor_scheduling_date WHERE status = '1' and del_flag = '0' and user_id = #{userId} and scheduling_date >= TRUNC(SYSDATE) and week = #{week}")
public List<ConDoctorSchedulingDateListDO> selectDoctorSchedulingByWeekAndUserId(String userId, String week); public List<ConDoctorSchedulingDateListDO> selectDoctorSchedulingByWeekAndUserId(String userId, String week);
@@ -46,7 +46,7 @@ public interface ConDoctorSchedulingDateMapper extends BaseMapper<ConDoctorSched
public int updateScheduleNum(String schedulingNum, String id); public int updateScheduleNum(String schedulingNum, String id);
@Select("SELECT * FROM con_doctor_scheduling_date WHERE status = '1' and del_flag = '0' and user_id = #{doctorId} and scheduling_date = DATE_FORMAT(#{schedulingDate},'%Y-%m-%d') and type = #{type}") @Select("SELECT * FROM con_doctor_scheduling_date WHERE status = '1' and del_flag = '0' and user_id = #{doctorId} and scheduling_date = TO_CHAR(#{schedulingDate},'YYYY-MM-DD') and type = #{type}")
public List<ConDoctorSchedulingDateListDO> selectDoctorScheduleDate(String doctorId, Date schedulingDate, String type); public List<ConDoctorSchedulingDateListDO> selectDoctorScheduleDate(String doctorId, Date schedulingDate, String type);
Boolean insertBatchSomeColumn(@Param("list") List<ConDoctorSchedulingDate> list); Boolean insertBatchSomeColumn(@Param("list") List<ConDoctorSchedulingDate> list);
@@ -38,7 +38,7 @@ public interface ConDoctorSchedulingMapper extends BaseMapper<ConDoctorSchedulin
@Update("update con_doctor_scheduling set del_flag = 1 WHERE status = '1' and del_flag = '0' and user_id = #{userId}") @Update("update con_doctor_scheduling set del_flag = 1 WHERE status = '1' and del_flag = '0' and user_id = #{userId}")
public int deleteDoctorSchedule(String userId); public int deleteDoctorSchedule(String userId);
@Select("SELECT * FROM con_doctor_scheduling WHERE status = '1' and del_flag = '0' and user_id = #{userId} and scheduling_date >= DATE(NOW()) and week = #{week}") @Select("SELECT * FROM con_doctor_scheduling WHERE status = '1' and del_flag = '0' and user_id = #{userId} and scheduling_date >= TRUNC(SYSDATE) and week = #{week}")
public List<ConDoctorSchedulingDO> selectDoctorSchedulingByWeekAndUserId(String userId, String week); public List<ConDoctorSchedulingDO> selectDoctorSchedulingByWeekAndUserId(String userId, String week);
Boolean updateBatchById(@Param("list") List<ConDoctorScheduling> schedulingList); Boolean updateBatchById(@Param("list") List<ConDoctorScheduling> schedulingList);
@@ -30,6 +30,4 @@ public interface ConHelperSchedulingMapper extends BaseMapper<ConHelperSchedulin
@Select("SELECT * FROM con_helper_scheduling WHERE week = #{week} and del_flag = '0' and status = '1'") @Select("SELECT * FROM con_helper_scheduling WHERE week = #{week} and del_flag = '0' and status = '1'")
public List<ConHelperScheduling> getYesterDayScheduling(Integer week); public List<ConHelperScheduling> getYesterDayScheduling(Integer week);
@Select("SELECT * FROM con_helper_scheduling_qh WHERE week = #{week} and del_flag = '0' and status = '1'")
public List<ConHelperScheduling> getYesterDaySchedulingQh(Integer week);
} }
@@ -36,6 +36,6 @@ public interface ConMedicalRecordsMapper extends BaseMapper<ConMedicalRecords> {
ConMedicalRecords selectByMemberIdAndUserId(String memberId, String userId); ConMedicalRecords selectByMemberIdAndUserId(String memberId, String userId);
@Select("SELECT * FROM con_medical_records_view WHERE status = '1' and del_flag = '0' and id = #{id}") @Select("SELECT * FROM con_medical_records WHERE status = '1' and del_flag = '0' and id = #{id}")
public ConMedicalRecordsDO selectConMedicalRecordsViewInfoById(String id); public ConMedicalRecordsDO selectConMedicalRecordsViewInfoById(String id);
} }
@@ -56,8 +56,8 @@ public interface ConResourceMapper extends BaseMapper<ConResource> {
List<HospitalDepartment> selectResourceInfoByDepartId(@Param("idList") List<String> idList); List<HospitalDepartment> selectResourceInfoByDepartId(@Param("idList") List<String> idList);
@Select("SELECT c.id,c.resource_name as resourceName FROM con_resource c WHERE EXISTS (SELECT 1 FROM con_doctor d WHERE c.id = d.resource_id and d.del_flag = 0 and d.`status` = 1)" + @Select("SELECT c.id,c.resource_name as resourceName FROM con_resource c WHERE EXISTS (SELECT 1 FROM con_doctor d WHERE c.id = d.resource_id and d.del_flag = 0 and d.status = 1)" +
"and c.del_flag = 0 and c.`status` = 1 ORDER BY c.tf_top DESC,c.sort") "and c.del_flag = 0 and c.status = 1 ORDER BY c.tf_top DESC,c.sort")
public List<ConResourceDO> selectHospitalListVersionTwo(); public List<ConResourceDO> selectHospitalListVersionTwo();
@@ -20,7 +20,7 @@ public interface ConServiceMapper extends BaseMapper<ConService> {
ConService selectConServiceByDoctrId(String doctorId); ConService selectConServiceByDoctrId(String doctorId);
@Select("select count(1) from con_service where service_status = 0 and doctor_id = #{doctorId} and del_flag = 0 and status = 1 and DATE_FORMAT(#{scheduleDate}, '%Y-%m-%d') >= DATE_FORMAT(start_day, '%Y-%m-%d') and DATE_FORMAT(#{scheduleDate}, '%Y-%m-%d') <= DATE_FORMAT(end_day, '%Y-%m-%d')") @Select("select count(1) from con_service where service_status = 0 and doctor_id = #{doctorId} and del_flag = 0 and status = 1 and TO_CHAR(#{scheduleDate}, 'YYYY-MM-DD') >= TO_CHAR(start_day, 'YYYY-MM-DD') and TO_CHAR(#{scheduleDate}, 'YYYY-MM-DD') <= TO_CHAR(end_day, 'YYYY-MM-DD')")
int selectConServiceByDoctrIdExist(String doctorId, Date scheduleDate); int selectConServiceByDoctrIdExist(String doctorId, Date scheduleDate);
} }
@@ -114,24 +114,24 @@ public interface ConSessionMapper extends BaseMapper<ConSession> , MPJBaseMapper
@Select("select * from con_session where im_id = #{imId} and to_account = #{toAccount} and del_flag = 0 and status = 1") @Select("select * from con_session where im_id = #{imId} and to_account = #{toAccount} and del_flag = 0 and status = 1")
ConSession selectConSessionByImId(String imId, String toAccount); ConSession selectConSessionByImId(String imId, String toAccount);
@Update("update con_session set reply_time = NOW() where im_id = #{imId}") @Update("update con_session set reply_time = SYSDATE where im_id = #{imId}")
int updateSessionReplyTime(String imId); int updateSessionReplyTime(String imId);
@Select("select * from con_session where im_id = #{imId} and del_flag = 0 and status = 1") @Select("select * from con_session where im_id = #{imId} and del_flag = 0 and status = 1")
ConSession selectConSessionByImIdOnly(String imId); ConSession selectConSessionByImIdOnly(String imId);
@Update("update con_session set content_status = 4 where TIMESTAMPDIFF(HOUR,reply_time,now()) >= 4 and content_status = 3 and content_type = 1") @Update("update con_session set content_status = 4 where (SYSDATE - CAST(reply_time AS DATE)) * 24 >= 4 and content_status = 3 and content_type = 1")
int sessionSendMessageExpire(); int sessionSendMessageExpire();
@Update("update con_session set content_status = 8 where TIMESTAMPDIFF(HOUR,create_time,now()) >= 24 and content_type = 1 and (content_status = 1 or content_status = 2)") @Update("update con_session set content_status = 8 where (SYSDATE - CAST(create_time AS DATE)) * 24 >= 24 and content_type = 1 and (content_status = 1 or content_status = 2)")
int sessionSendMessageExpireAnother(); int sessionSendMessageExpireAnother();
@Update("update con_session set content_status = 8 where DATE(NOW()) > session_date and content_type = 2 and (content_status = 1 or content_status = 2)") @Update("update con_session set content_status = 8 where TRUNC(SYSDATE) > session_date and content_type = 2 and (content_status = 1 or content_status = 2)")
int sessionSendMessageExpireVideo(); int sessionSendMessageExpireVideo();
@Update("update con_session set content_status = 4 where DATE(NOW()) > session_date and content_type = 2 and content_status = 3 ") @Update("update con_session set content_status = 4 where TRUNC(SYSDATE) > session_date and content_type = 2 and content_status = 3 ")
int sessionSendMessageExpireVideoAnother(); int sessionSendMessageExpireVideoAnother();
@Select("select * from con_session where del_flag = 0 and status = 1 and from_account = #{fromAccount} and session_type = #{sessionType} and content_status = 3 limit 1") @Select("select * from con_session where del_flag = 0 and status = 1 and from_account = #{fromAccount} and session_type = #{sessionType} and content_status = 3 limit 1")
@@ -178,7 +178,7 @@ public interface ConSessionMapper extends BaseMapper<ConSession> , MPJBaseMapper
* *
* @return * @return
*/ */
@Update("update con_session set content_status = 5 where session_type != 1 and content_status = 3 and timestampdiff(HOUR,reply_time,NOW()) >= #{expireHour} and tf_reply = 1") @Update("update con_session set content_status = 5 where session_type != 1 and content_status = 3 and (SYSDATE - CAST(reply_time AS DATE)) * 24 >= #{expireHour} and tf_reply = 1")
int changeEndUserAndProfessiorHelper(String expireHour); int changeEndUserAndProfessiorHelper(String expireHour);
/** /**
@@ -186,7 +186,7 @@ public interface ConSessionMapper extends BaseMapper<ConSession> , MPJBaseMapper
* *
* @return * @return
*/ */
@Update("update con_session set content_status = 4 where session_type = 1 and content_type = 1 and content_status = 3 and timestampdiff(HOUR,reply_time,NOW()) >= #{expireHour} and tf_reply = 1") @Update("update con_session set content_status = 4 where session_type = 1 and content_type = 1 and content_status = 3 and (SYSDATE - CAST(reply_time AS DATE)) * 24 >= #{expireHour} and tf_reply = 1")
int endSession(String expireHour); int endSession(String expireHour);
/** /**
@@ -194,7 +194,7 @@ public interface ConSessionMapper extends BaseMapper<ConSession> , MPJBaseMapper
* *
* @return * @return
*/ */
@Update("update con_session set content_status = 8 where content_type != 2 and timestampdiff(HOUR,create_time,NOW()) >= #{expireHour} and tf_reply = 0") @Update("update con_session set content_status = 8 where content_type != 2 and (SYSDATE - CAST(create_time AS DATE)) * 24 >= #{expireHour} and tf_reply = 0")
int expireMeaaage(String expireHour); int expireMeaaage(String expireHour);
@@ -240,21 +240,13 @@ public interface ConSessionMapper extends BaseMapper<ConSession> , MPJBaseMapper
@Param("fromAccount")String fromAccount); @Param("fromAccount")String fromAccount);
@Select("select * from con_session_view where im_id = #{imId} and del_flag = 0 and status = 1") @Select("select * from con_session where im_id = #{imId} and del_flag = 0 and status = 1")
ConSession selectConSessionByImIdOnlyBackUp(String imId); ConSession selectConSessionByImIdOnlyBackUp(String imId);
@Select("select * from con_session where id = #{id} and del_flag = 0 and status = 1")
@Update("update con_session_qh set reply_time = NOW() where im_id = #{imId}")
int updateSessionReplyTimeBackUp(String imId);
@Update("update con_session_qh set tf_reply = 1 where id = #{id}")
int updateConSessionTfReplyBackUp(String id);
@Select("select * from con_session_view where id = #{id} and del_flag = 0 and status = 1")
ConSession selectConSessionByIdView(String id); ConSession selectConSessionByIdView(String id);
@Select("select * from con_session_view where im_id = #{id} and del_flag = 0 and status = 1") @Select("select * from con_session where im_id = #{id} and del_flag = 0 and status = 1")
ConSession selectConSessionByIdViewAndImId(String imId); ConSession selectConSessionByIdViewAndImId(String imId);
@Update("update con_session set user_tf_reply = 1 where id = #{id}") @Update("update con_session set user_tf_reply = 1 where id = #{id}")
@@ -282,7 +274,7 @@ public interface ConSessionMapper extends BaseMapper<ConSession> , MPJBaseMapper
List<ConSessionDO> selectSessionListByUserIdHelperAnother(IPage<ConSessionDO> page, @Param("contentType") String contentType, @Param("state") String state, @Param("userId") String userId); List<ConSessionDO> selectSessionListByUserIdHelperAnother(IPage<ConSessionDO> page, @Param("contentType") String contentType, @Param("state") String state, @Param("userId") String userId);
@Select("select * from con_session where session_type = 1 and content_type = 1 and content_status = 3 and timestampdiff(HOUR,reply_time,NOW()) >= #{expireHour} and tf_reply = 1") @Select("select * from con_session where session_type = 1 and content_type = 1 and content_status = 3 and (SYSDATE - CAST(reply_time AS DATE)) * 24 >= #{expireHour} and tf_reply = 1")
List<ConSession> selectEndSession(String expireHour); List<ConSession> selectEndSession(String expireHour);
@@ -294,13 +286,4 @@ public interface ConSessionMapper extends BaseMapper<ConSession> , MPJBaseMapper
@Param("doctorjob")String doctorjob, @Param("doctorjob")String doctorjob,
@Param("contentType")String contentType, @Param("contentType")String contentType,
@Param("toAccount")String toAccount); @Param("toAccount")String toAccount);
/**
* 音视频咨询过期处理:预约日期已过的视频咨询,有通话记录则改为待评价,无通话记录则改为取消
* content_status: 4=待评价,6=取消
*/
@Update("UPDATE con_session SET content_status = CASE WHEN session_time IS NOT NULL THEN 4 ELSE 6 END " +
"WHERE content_type = 2 AND CURDATE() > session_date " +
"AND content_status NOT IN (4, 5, 6, 7, 8) AND del_flag = 0 AND status = 1")
String endVideoSession();
} }
@@ -55,11 +55,11 @@ public interface ConSicksMapper extends BaseMapper<ConSicks> {
List<ConSicks> selectListByIdList(@Param("idList") List<String> idList); List<ConSicks> selectListByIdList(@Param("idList") List<String> idList);
@Select("select count(1) from con_sicks where del_flag = 0 and status = 1 and FIND_IN_SET(department_id,#{departmentId})") @Select("select count(1) from con_sicks where del_flag = 0 and status = 1 and INSTR(',' || #{departmentId} || ',', ',' || department_id || ',') > 0")
int selectSickNumByDepartment(String departmentId); int selectSickNumByDepartment(String departmentId);
@Select("select id from con_sicks where del_flag = 0 and status = 1 and FIND_IN_SET(department_id,#{departmentId})") @Select("select id from con_sicks where del_flag = 0 and status = 1 and INSTR(',' || #{departmentId} || ',', ',' || department_id || ',') > 0")
List<String> selectSickNumByDepartmentByDepartment(String departmentId); List<String> selectSickNumByDepartmentByDepartment(String departmentId);
@@ -71,11 +71,11 @@ public interface ConSicksMapper extends BaseMapper<ConSicks> {
List<ConSicks> selectSickByTopAndHaveDoctor(); List<ConSicks> selectSickByTopAndHaveDoctor();
@Select("select id,department_id as departmentId,sicks_name as sicksName,descript from con_sicks where del_flag = 0 and status = 1 and FIND_IN_SET(department_id,#{departmentId}) order by tf_top desc,sort") @Select("select id,department_id as departmentId,sicks_name as sicksName,descript from con_sicks where del_flag = 0 and status = 1 and INSTR(',' || #{departmentId} || ',', ',' || department_id || ',') > 0 order by tf_top desc,sort")
List<ConSicksDO> selectSickListByDepartment(String departmentId); List<ConSicksDO> selectSickListByDepartment(String departmentId);
@Select("select GROUP_CONCAT(id) from con_sicks where department_id = #{departmentId}") @Select("select LISTAGG(id, ',') WITHIN GROUP (ORDER BY id) from con_sicks where department_id = #{departmentId}")
String selectSickListByDepartmentIdAnother(String departmentId); String selectSickListByDepartmentIdAnother(String departmentId);
@Update("update con_sicks set department_id = #{departmentOne} where department_id = #{departmentTwo}") @Update("update con_sicks set department_id = #{departmentOne} where department_id = #{departmentTwo}")
@@ -73,7 +73,7 @@
and cct.operate_type = '5' and cct.operate_type = '5'
</if> </if>
<if test='date != "1"'> <if test='date != "1"'>
and DATE_FORMAT(cct.income_time, '%Y-%m')=#{date} and TO_CHAR(cct.income_time, 'YYYY-MM')=#{date}
</if> </if>
<if test="userId != null and userId != ''"> <if test="userId != null and userId != ''">
and cct.user_id = #{userId} and cct.user_id = #{userId}
@@ -87,8 +87,8 @@
FROM con_session cs FROM con_session cs
where cs.content_type is not null where cs.content_type is not null
and cs.content_type &lt;&gt; '4' and cs.content_type &lt;&gt; '4'
and DATE_FORMAT(cs.create_time, '%Y-%m') = #{date} and TO_CHAR(cs.create_time, 'YYYY-MM') = #{date}
group by cs.content_type, DATE_FORMAT(cs.create_time, '%Y-%m') group by cs.content_type, TO_CHAR(cs.create_time, 'YYYY-MM')
</select> </select>
@@ -99,7 +99,7 @@
and cs.content_type &lt;&gt; '4' and cs.content_type &lt;&gt; '4'
and cs.to_account = #{userId} and session_type = 1 and cs.to_account = #{userId} and session_type = 1
<if test="date != null and date != ''"> <if test="date != null and date != ''">
and DATE_FORMAT(cs.create_time, '%Y-%m') = #{date} and TO_CHAR(cs.create_time, 'YYYY-MM') = #{date}
</if> </if>
group by cs.content_type, session_status group by cs.content_type, session_status
</select> </select>
@@ -108,7 +108,7 @@
from con_cost_statistics ccs from con_cost_statistics ccs
<where> <where>
<if test='conCostStatistics.startDate != null and conCostStatistics.endDate != null'> <if test='conCostStatistics.startDate != null and conCostStatistics.endDate != null'>
and ccs.income_time between DATE_FORMAT(#{conCostStatistics.startDate}, '%Y-%m-%d 00:00:00') and DATE_FORMAT(#{conCostStatistics.endDate}, '%Y-%m-%d 23:59:59') and ccs.income_time between TRUNC(#{conCostStatistics.startDate}) and TRUNC(#{conCostStatistics.endDate}) + 1 - 1/86400
</if> </if>
<if test='conCostStatistics.operateType != null and conCostStatistics.operateType != "" and conCostStatistics.operateType == "0"'> <if test='conCostStatistics.operateType != null and conCostStatistics.operateType != "" and conCostStatistics.operateType == "0"'>
and ccs.operate_type != '5' and ccs.operate_type != '5'
@@ -162,7 +162,7 @@
<select id="groupByTypehListNew" resultType="String"> <select id="groupByTypehListNew" resultType="String">
select select
count(1) count(1)
from con_session_view from con_session
where where
session_type = 1 and to_account = #{userId} and content_type = #{type} session_type = 1 and to_account = #{userId} and content_type = #{type}
<if test="state != null and state != '' and state == '1'.toString()"> <if test="state != null and state != '' and state == '1'.toString()">
@@ -172,7 +172,7 @@
and content_status &gt; 3 and content_status &gt; 3
</if> </if>
<if test="date != null and date != ''"> <if test="date != null and date != ''">
and DATE_FORMAT(create_time, '%Y-%m') = #{date} and TO_CHAR(create_time, 'YYYY-MM') = #{date}
</if> </if>
</select> </select>
<select id="selectByDoctorIds" resultType="com.renkang.consultation.entity.ConCostStatistics"> <select id="selectByDoctorIds" resultType="com.renkang.consultation.entity.ConCostStatistics">
@@ -74,7 +74,7 @@
where status = 1 where status = 1
and del_flag = 0 and del_flag = 0
<if test="officeparid == null"> <if test="officeparid == null">
and ifnull(officeparid,'') = '' and NVL(officeparid,'') = ''
</if> </if>
<if test="officeparid != null"> <if test="officeparid != null">
and officeparid = #{officeparid} and officeparid = #{officeparid}
@@ -97,25 +97,16 @@
order by tf_top desc, sort order by tf_top desc, sort
</select> </select>
<select id="selectChildAll" resultType="com.renkang.consultation.entity.ConDepartment"> <select id="selectChildAll" resultType="com.renkang.consultation.entity.ConDepartment">
SELECT * SELECT * FROM con_department
FROM ( WHERE id != #{departmentId}
SELECT d1.*, START WITH id = #{departmentId}
@pv := CONCAT(@pv, ',', d1.id) AS path CONNECT BY PRIOR id = officeparid
FROM ORDER BY LEVEL, id
con_department AS d1
JOIN
(SELECT @pv := #{departmentId}) AS initial
WHERE
FIND_IN_SET(d1.officeparid
, @pv)
> 0
) AS subquery
ORDER BY LENGTH(path)
</select> </select>
<select id="getOneDepartList" resultType="com.renkang.consultation.entity.ConDepartment"> <select id="getOneDepartList" resultType="com.renkang.consultation.entity.ConDepartment">
SELECT * SELECT *
FROM `con_department` FROM con_department
WHERE office_level = 1 WHERE office_level = 1
and del_flag = 0 and del_flag = 0
and status = 1 and status = 1
@@ -123,7 +114,7 @@
<select id="getTwoDepartList" resultType="com.renkang.consultation.entity.ConDepartment"> <select id="getTwoDepartList" resultType="com.renkang.consultation.entity.ConDepartment">
SELECT * SELECT *
FROM `con_department` FROM con_department
WHERE office_level = 2 WHERE office_level = 2
and del_flag = 0 and del_flag = 0
and status = 1 and status = 1
@@ -133,10 +124,10 @@
SELECT * SELECT *
from con_doctor from con_doctor
where department_id in where department_id in
(SELECT id FROM `con_department` WHERE office_level in (1, 2) and del_flag = 0 and status = 1) (SELECT id FROM con_department WHERE office_level in (1, 2) and del_flag = 0 and status = 1)
and del_flag = 0 and del_flag = 0
and status = 1 and status = 1
ORDER BY doctor_status DESC; ORDER BY doctor_status DESC
</select> </select>
<select id="selectChildById" resultType="com.renkang.consultation.entity.ConDepartment"> <select id="selectChildById" resultType="com.renkang.consultation.entity.ConDepartment">
@@ -146,12 +137,11 @@
<select id="selectHospitalDepartmentId" resultType="com.renkang.consultation.entity.ConDepartmentDO"> <select id="selectHospitalDepartmentId" resultType="com.renkang.consultation.entity.ConDepartmentDO">
select select
distinct a.department_id as "id", a.department_id as "id",
b.department_name as "departmentName" b.department_name as "departmentName"
from hospital_department a left join con_department b on a.department_id = b.id from hospital_department a left join con_department b on a.department_id = b.id
where a.hospital_id = #{hospitalId} and b.office_level = 1 where a.hospital_id = #{hospitalId} and b.office_level = 1
GROUP BY a.department_id,b.department_name GROUP BY a.department_id,b.department_name
order by b.tf_top desc,b.sort
</select> </select>
<select id="getMedicalDepartmentList" resultType="com.renkang.consultation.vo.MedicalDepartmentVO"> <select id="getMedicalDepartmentList" resultType="com.renkang.consultation.vo.MedicalDepartmentVO">
@@ -174,7 +164,7 @@
(case when (select count(1) from con_department cd2 where cd2.officeparid = cdd.id)>0 then 0 else 1 end) as isLeaf, (case when (select count(1) from con_department cd2 where cd2.officeparid = cdd.id)>0 then 0 else 1 end) as isLeaf,
officeparid as parentId officeparid as parentId
from con_department cdd from con_department cdd
where if(officeparid is null or officeparid = '','0',officeparid) = #{pid} where CASE WHEN (officeparid IS NULL OR officeparid = '') THEN '0' ELSE officeparid END = #{pid}
</select> </select>
@@ -6,7 +6,7 @@
UPDATE con_doctor_scheduling UPDATE con_doctor_scheduling
SET SET
week = #{item.week}, week = #{item.week},
`type` = #{item.type}, "TYPE" = #{item.type},
am_num = #{item.amNum}, am_num = #{item.amNum},
pm_num = #{item.pmNum}, pm_num = #{item.pmNum},
tf_jump_holiday = #{item.tfJumpHoliday}, tf_jump_holiday = #{item.tfJumpHoliday},
@@ -2,31 +2,31 @@
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.renkang.consultation.mapper.ConHelperSchedulingHistoryMapper"> <mapper namespace="com.renkang.consultation.mapper.ConHelperSchedulingHistoryMapper">
<select id="queryPageList" resultType="com.renkang.consultation.entity.ConHelperSchedulingHistory"> <select id="queryPageList" resultType="com.renkang.consultation.entity.ConHelperSchedulingHistory">
select `time` from con_helper_scheduling_history select "time" from con_helper_scheduling_history
<where> <where>
<if test="dto.startTime != null and dto.startTime!='' and dto.endTime != null and dto.endTime != ''"> <if test="dto.startTime != null and dto.startTime!='' and dto.endTime != null and dto.endTime != ''">
and `time` &gt;= #{dto.startTime} and `time` &lt;= #{dto.endTime} and "time" &gt;= #{dto.startTime} and "time" &lt;= #{dto.endTime}
</if> </if>
<if test="dto.week != null and dto.week!=''"> <if test="dto.week != null and dto.week!=''">
and week = #{dto.week} and week = #{dto.week}
</if> </if>
and status = 1 and del_flag = 0 GROUP BY `time` order by `time` desc and status = 1 and del_flag = 0 GROUP BY "time" order by "time" desc
</where> </where>
</select> </select>
<select id="pageByScheduleTime" resultType="java.lang.String"> <select id="pageByScheduleTime" resultType="java.lang.String">
SELECT DATE_FORMAT(time, '%Y-%m-%d') AS `time` FROM con_helper_scheduling_history SELECT TO_CHAR("time", 'YYYY-MM-DD') AS scheduleTime FROM con_helper_scheduling_history
<where> <where>
<!-- 日期范围条件 --> <!-- 日期范围条件 -->
<if test="dto.startTime != null and dto.startTime != ''"> <if test="dto.startTime != null and dto.startTime != ''">
AND `time` &gt;= DATE_FORMAT(#{dto.startTime}, '%Y-%m-%d 00:00:00') AND "time" &gt;= TO_DATE(#{dto.startTime}, 'YYYY-MM-DD HH24:MI:SS')
</if> </if>
<if test="dto.endTime != null and dto.endTime != ''"> <if test="dto.endTime != null and dto.endTime != ''">
AND `time` &lt;= DATE_FORMAT(#{dto.endTime}, '%Y-%m-%d 23:59:59') AND "time" &lt;= TO_DATE(#{dto.endTime}, 'YYYY-MM-DD HH24:MI:SS')
</if> </if>
<if test="dto.week != null and dto.week != ''"> <if test="dto.week != null and dto.week != ''">
and week = #{dto.week} and week = #{dto.week}
</if> </if>
and status = 1 and del_flag = 0 GROUP BY `time` order by `time` desc and status = 1 and del_flag = 0 GROUP BY "time" order by "time" desc
</where> </where>
</select> </select>
</mapper> </mapper>
@@ -21,7 +21,7 @@
AND cr.address LIKE CONCAT('%', #{conResource.province}, '%') AND cr.address LIKE CONCAT('%', #{conResource.province}, '%')
</if> </if>
<if test="conResource.level != null and conResource.level != ''"> <if test="conResource.level != null and conResource.level != ''">
AND cr.`level` = #{conResource.level} AND cr."level" = #{conResource.level}
</if> </if>
<if test="conResource.status != null and conResource.status != ''"> <if test="conResource.status != null and conResource.status != ''">
AND cr.status = #{conResource.status} AND cr.status = #{conResource.status}
@@ -31,8 +31,8 @@
</select> </select>
<select id="selectBatchIds" resultType="com.renkang.consultation.entity.ConResource"> <select id="selectBatchIds" resultType="com.renkang.consultation.entity.ConResource">
SELECT id, resource_name, longitude, latitude, type, second_type, aidrange, gd_id, url, province, city, area, SELECT id, resource_name, longitude, latitude, "TYPE", second_type, aidrange, gd_id, url, province, city, area,
address, level, img, synopsis, sort, status, del_flag, create_by, create_time, update_by, update_time, memo, address, "LEVEL", img, synopsis, sort, "STATUS", del_flag, create_by, create_time, update_by, update_time, memo,
key_departments, user_score, user_score_num, resource_detail, tf_top key_departments, user_score, user_score_num, resource_detail, tf_top
FROM con_resource FROM con_resource
WHERE id IN WHERE id IN
@@ -42,7 +42,7 @@
</select> </select>
<select id="selectHostitalList" resultType="com.renkang.consultation.vo.ConsultResourceVO"> <select id="selectHostitalList" resultType="com.renkang.consultation.vo.ConsultResourceVO">
select id, select id,
`resource_name` as `name` resource_name as name
from con_resource from con_resource
where del_flag = 0 where del_flag = 0
order by sort order by sort
@@ -542,8 +542,8 @@
<foreach item="id" collection="doctorIds" open="(" separator="," close=")"> <foreach item="id" collection="doctorIds" open="(" separator="," close=")">
#{id} #{id}
</foreach> </foreach>
AND YEAR(session_date) = YEAR(CURRENT_DATE()) AND EXTRACT(YEAR FROM session_date) = EXTRACT(YEAR FROM SYSDATE)
AND MONTH(session_date) = MONTH(CURRENT_DATE()) AND EXTRACT(MONTH FROM session_date) = EXTRACT(MONTH FROM SYSDATE)
</select> </select>
@@ -667,10 +667,10 @@
<!-- 日期范围条件 --> <!-- 日期范围条件 -->
<if test="conSession.startDate != null and conSession.startDate != ''"> <if test="conSession.startDate != null and conSession.startDate != ''">
AND c.create_time &gt;= DATE_FORMAT(#{conSession.startDate}, '%Y-%m-%d 00:00:00') AND c.create_time &gt;= TRUNC(#{conSession.startDate})
</if> </if>
<if test="conSession.endDate != null and conSession.endDate != ''"> <if test="conSession.endDate != null and conSession.endDate != ''">
AND c.create_time &lt;= DATE_FORMAT(#{conSession.endDate}, '%Y-%m-%d 23:59:59') AND c.create_time &lt;= TRUNC(#{conSession.endDate}) + 1 - 1/86400
</if> </if>
<!-- ID 和账户条件 --> <!-- ID 和账户条件 -->
@@ -715,7 +715,7 @@
<select id="selectSessionProfessorIngNewNew" resultType="String"> <select id="selectSessionProfessorIngNewNew" resultType="String">
select select
count(1) count(1)
from con_session_view from con_session
where status = '1' and del_flag = 0 where status = '1' and del_flag = 0
and session_type = 1 and session_type = 1
and to_account = #{toAccount} and to_account = #{toAccount}
@@ -750,7 +750,7 @@
<select id="selectSessionProfessorIngNewNewNew" resultType="String"> <select id="selectSessionProfessorIngNewNewNew" resultType="String">
select select
count(1) count(1)
from con_session_view from con_session
where status = '1' and del_flag = 0 where status = '1' and del_flag = 0
and session_type = 1 and session_type = 1
and to_account = #{toAccount} and to_account = #{toAccount}
@@ -795,7 +795,7 @@
create_time as "createTime", create_time as "createTime",
im_id as "imId", im_id as "imId",
tf_reply as "tfReply" tf_reply as "tfReply"
from con_session_view from con_session
where status = '1' and del_flag = 0 and session_type = 1 and (to_account = #{doctorId} or third_account = where status = '1' and del_flag = 0 and session_type = 1 and (to_account = #{doctorId} or third_account =
#{doctorId}) #{doctorId})
<if test="contentType != null and contentType != ''"> <if test="contentType != null and contentType != ''">
@@ -842,7 +842,7 @@
create_time as "createTime", create_time as "createTime",
im_id as "imId", im_id as "imId",
tf_reply as "tfReply" tf_reply as "tfReply"
from con_session_view from con_session
where status = '1' where status = '1'
and content_type = '1' and content_type = '1'
and del_flag = 0 and del_flag = 0
@@ -878,7 +878,7 @@
create_time as "createTime", create_time as "createTime",
im_id as "imId", im_id as "imId",
tf_reply as "tfReply" tf_reply as "tfReply"
from con_session_view from con_session
where status = '1' where status = '1'
and content_type = '1' and content_type = '1'
and del_flag = 0 and del_flag = 0
@@ -909,7 +909,7 @@
create_time as "createTime", create_time as "createTime",
im_id as "imId", im_id as "imId",
tf_reply as "tfReply" tf_reply as "tfReply"
from con_session_view from con_session
where status = '1' and user_tf_reply = 1 and del_flag = 0 and session_type = 1 and (to_account = #{doctorId} or third_account = where status = '1' and user_tf_reply = 1 and del_flag = 0 and session_type = 1 and (to_account = #{doctorId} or third_account =
#{doctorId}) #{doctorId})
<if test="contentType != null and contentType != ''"> <if test="contentType != null and contentType != ''">
@@ -945,7 +945,7 @@
<select id="selectSessionProfessorIngNewNewAnother" resultType="String"> <select id="selectSessionProfessorIngNewNewAnother" resultType="String">
select select
count(1) count(1)
from con_session_view from con_session
where status = '1' and del_flag = 0 where status = '1' and del_flag = 0
and session_type = 1 and session_type = 1
and user_tf_reply = 1 and user_tf_reply = 1
@@ -981,7 +981,7 @@
<select id="selectSessionProfessorIngNewNewNewAnother" resultType="String"> <select id="selectSessionProfessorIngNewNewNewAnother" resultType="String">
select select
count(1) count(1)
from con_session_view from con_session
where status = '1' and del_flag = 0 where status = '1' and del_flag = 0
and session_type = 1 and session_type = 1
and to_account = #{toAccount} and to_account = #{toAccount}
@@ -55,7 +55,7 @@
<!--@mbg.generated--> <!--@mbg.generated-->
id, member_id, from_account, to_account, end_time, content_type, reservation_time, id, member_id, from_account, to_account, end_time, content_type, reservation_time,
session_type, from_name, member_name, to_name, im_id, session_time, third_account, session_type, from_name, member_name, to_name, im_id, session_time, third_account,
third_name, cost, char_date, medical_records_id, `status`, del_flag, create_by, create_time, third_name, cost, char_date, medical_records_id, "STATUS", del_flag, create_by, create_time,
update_by, update_time, memo, content_status, session_date, week, am_pm, scheduling_date_id, update_by, update_time, memo, content_status, session_date, week, am_pm, scheduling_date_id,
job_status, member_sex, member_age, session_status, doctor_start_time, doctor_end_time, job_status, member_sex, member_age, session_status, doctor_start_time, doctor_end_time,
reject_reason, reason_type, org_code, from_type, tf_reply, reply_time, user_tf_reply, reject_reason, reason_type, org_code, from_type, tf_reply, reply_time, user_tf_reply,
@@ -3,6 +3,7 @@ package com.renkang.consultation.service.impl;
import cn.hutool.core.util.ObjectUtil; import cn.hutool.core.util.ObjectUtil;
import cn.hutool.core.util.StrUtil; import cn.hutool.core.util.StrUtil;
import cn.hutool.http.HtmlUtil;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.core.metadata.IPage;
@@ -248,6 +249,9 @@ public class ConDoctorServiceImpl extends ServiceImpl<ConDoctorMapper, ConDoctor
if (StringUtils.hasLength(dto.getHospitalName())) { if (StringUtils.hasLength(dto.getHospitalName())) {
conDoctor.setResourceId(dto.getHospitalName()); conDoctor.setResourceId(dto.getHospitalName());
} }
if (StrUtil.isNotEmpty(dto.getDoctorName())){
conDoctor.setDoctorName(HtmlUtil.unescape(dto.getDoctorName()));
}
IPage<ConDoctor> conDoctorIPage = conDoctorMapper.queryPageList(page, conDoctor); IPage<ConDoctor> conDoctorIPage = conDoctorMapper.queryPageList(page, conDoctor);
List<ConDoctor> conDoctorList = conDoctorIPage.getRecords(); List<ConDoctor> conDoctorList = conDoctorIPage.getRecords();
if (CollectionUtils.isEmpty(conDoctorList)) { if (CollectionUtils.isEmpty(conDoctorList)) {
@@ -7,7 +7,6 @@ import com.xxl.job.core.biz.model.ReturnT;
import com.xxl.job.core.context.XxlJobHelper; import com.xxl.job.core.context.XxlJobHelper;
import com.xxl.job.core.handler.annotation.XxlJob; import com.xxl.job.core.handler.annotation.XxlJob;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.jeecg.common.api.vo.Result;
import org.jeecg.common.constant.CommonConstant; import org.jeecg.common.constant.CommonConstant;
import org.jeecg.config.shiro.ClientSignThreadLocal; import org.jeecg.config.shiro.ClientSignThreadLocal;
import org.parboiled.common.StringUtils; import org.parboiled.common.StringUtils;
@@ -54,12 +53,4 @@ public class SyncScheduleJob {
return ReturnT.SUCCESS; return ReturnT.SUCCESS;
} }
@XxlJob(value = "endVideoSession")
public Result<String> endVideoSession() {
// 20260327 新增 音视频咨询过期处理 规则为:超过预约时间,比如预约的是 12月9日和专家视频沟通,但超过时间一天,即为过期,需要关闭咨询
conSessionApiController.endVideoSession();
return Result.ok("success");
}
} }
@@ -2,9 +2,10 @@ package com.renkang;
import org.springframework.boot.SpringApplication; import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication; import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.boot.autoconfigure.quartz.QuartzAutoConfiguration;
import org.springframework.cloud.openfeign.EnableFeignClients; import org.springframework.cloud.openfeign.EnableFeignClients;
@SpringBootApplication(scanBasePackages = {"com.renkang", "org.jeecg"}) @SpringBootApplication(scanBasePackages = {"com.renkang", "org.jeecg"},exclude = QuartzAutoConfiguration .class)
@EnableFeignClients(basePackages = {"com.renkang", "org.jeecg"}) @EnableFeignClients(basePackages = {"com.renkang", "org.jeecg"})
public class HealthConsultationCloudApplication { public class HealthConsultationCloudApplication {
@@ -1,8 +1,9 @@
PROFILE_NAME=dev PROFILE_NAME=dev
SERVER_PORT=7010 SERVER_PORT=7010
NACOS_SERVER_ADDR=localhost:8848 NACOS_SERVER_ADDR=192.168.1.80:8848
NACOS_USERNAME=nacos NACOS_USERNAME=xjuser
NACOS_PASSWORD=nacos NACOS_PASSWORD=Aa135790!123
NACOS_NAMESPACE=f3f65fb2-303b-4bf7-bccb-4755886503c1 NACOS_NAMESPACE=xjxc-space-common
NACOS_NAMESPACE_DISCOVERY=xjxc-space-common
NACOS_GROUP=dev NACOS_GROUP=dev
FILE_SERVER_URL=http://fileserver.yg.dt.io FILE_SERVER_URL=http://fileserver.yg.dt.io
@@ -21,7 +21,7 @@ spring:
password: ${spring.cloud.nacos.password} password: ${spring.cloud.nacos.password}
discovery: discovery:
enabled: true enabled: true
namespace: ${NACOS_NAMESPACE:} namespace: ${NACOS_NAMESPACE_DISCOVERY:}
group: ${NACOS_GROUP:DEFAULT_GROUP} group: ${NACOS_GROUP:DEFAULT_GROUP}
server-addr: ${spring.cloud.nacos.server-addr} server-addr: ${spring.cloud.nacos.server-addr}
username: ${spring.cloud.nacos.username} username: ${spring.cloud.nacos.username}
@@ -19,7 +19,7 @@ import java.util.Date;
* @date 2023-12-12 * @date 2023-12-12
*/ */
@Data @Data
@TableName("aed") @TableName("QH_EME_AED")
@Accessors(chain = true) @Accessors(chain = true)
@EqualsAndHashCode(callSuper = false) @EqualsAndHashCode(callSuper = false)
public class Aed implements Serializable { public class Aed implements Serializable {
@@ -26,7 +26,7 @@ import java.util.Date;
* @Version: V1.0 * @Version: V1.0
*/ */
@Data @Data
@TableName("aed_equipment_manger") @TableName("QH_EME_AED_EQUIP_MANGER")
@Accessors(chain = true) @Accessors(chain = true)
@EqualsAndHashCode(callSuper = false) @EqualsAndHashCode(callSuper = false)
@Schema(title = "aed_equipment_manger对象", description = "aed_equipment_manger") @Schema(title = "aed_equipment_manger对象", description = "aed_equipment_manger")
@@ -345,6 +345,7 @@ public class AedEquipmentManger implements Serializable {
*/ */
@Excel(name = "型号", width = 15) @Excel(name = "型号", width = 15)
@Schema(title = "型号") @Schema(title = "型号")
@TableField("MODEL_NUMBER")
private String model; private String model;
/** /**
* 来源字典 设备类型 1:立式 ,2:挂式,3:车载 * 来源字典 设备类型 1:立式 ,2:挂式,3:车载
@@ -21,7 +21,7 @@ import java.util.Date;
* @Version: V1.0 * @Version: V1.0
*/ */
@Data @Data
@TableName("aed_latest") @TableName("QH_EME_AED_LATEST")
@Accessors(chain = true) @Accessors(chain = true)
@EqualsAndHashCode(callSuper = false) @EqualsAndHashCode(callSuper = false)
@Schema(title = "aed_latest对象", description = "aed_latest") @Schema(title = "aed_latest对象", description = "aed_latest")
@@ -20,7 +20,7 @@ import java.util.Date;
* @Version: V1.0 * @Version: V1.0
*/ */
@Data @Data
@TableName("aed_warn_info") @TableName("QH_EME_AED_WARN_INFO")
@Accessors(chain = true) @Accessors(chain = true)
@EqualsAndHashCode(callSuper = false) @EqualsAndHashCode(callSuper = false)
@Schema(title = "aed_warn_info对象", description = "aed_warn_info") @Schema(title = "aed_warn_info对象", description = "aed_warn_info")
@@ -26,7 +26,7 @@ import java.util.List;
@Accessors(chain = true) @Accessors(chain = true)
@EqualsAndHashCode(callSuper = false) @EqualsAndHashCode(callSuper = false)
@FieldNameConstants @FieldNameConstants
@TableName(value = "emergency_center", autoResultMap = true) @TableName("QH_EME_CENTER")
public class EmergencyCenter implements Serializable { public class EmergencyCenter implements Serializable {
private static final long serialVersionUID = 1L; private static final long serialVersionUID = 1L;
@@ -17,7 +17,7 @@ import java.util.Date;
* @Data 2024/8/19下午4:19 * @Data 2024/8/19下午4:19
*/ */
@Data @Data
@TableName("emergency_center_admin") @TableName("QH_EME_CENTER_ADMIN")
public class EmergencyCenterAdmin implements Serializable { public class EmergencyCenterAdmin implements Serializable {
private static final long serialVersionUID = 1L; private static final long serialVersionUID = 1L;
@@ -18,7 +18,7 @@ import java.util.Date;
* @since 2024-09-29 09:15:15 * @since 2024-09-29 09:15:15
*/ */
@Data @Data
@TableName("emergency_center_open_time") @TableName("QH_EME_CENTER_OPEN_TIME")
public class EmergencyCenterOpenTime implements Serializable { public class EmergencyCenterOpenTime implements Serializable {
private static final long serialVersionUID = -40932379994360081L; private static final long serialVersionUID = -40932379994360081L;
@@ -19,7 +19,7 @@ import lombok.experimental.Accessors;
* @Version: V1.0 * @Version: V1.0
*/ */
@Data @Data
@TableName("emergency_center_resource") @TableName("QH_EME_CENTER_RESOUR")
@Accessors(chain = true) @Accessors(chain = true)
@EqualsAndHashCode(callSuper = false) @EqualsAndHashCode(callSuper = false)
@Schema(title="emergency_center_resource对象", description="应急医疗点") @Schema(title="emergency_center_resource对象", description="应急医疗点")
@@ -24,7 +24,7 @@ import lombok.experimental.Accessors;
@FieldNameConstants @FieldNameConstants
@NoArgsConstructor @NoArgsConstructor
@AllArgsConstructor @AllArgsConstructor
@TableName("emergency_grouped") @TableName("QH_EME_GROUPED")
@Accessors(chain = true) @Accessors(chain = true)
@EqualsAndHashCode(callSuper = false) @EqualsAndHashCode(callSuper = false)
@Schema(title="emergency_grouped对象", description="分组管理表") @Schema(title="emergency_grouped对象", description="分组管理表")
@@ -15,7 +15,7 @@ import org.springframework.format.annotation.DateTimeFormat;
import java.util.Date; import java.util.Date;
@Data @Data
@TableName("emergency_health_room") @TableName("QH_EME_HEALTH_ROOM")
@Schema(title="新疆健康小屋", description="新疆健康小屋表") @Schema(title="新疆健康小屋", description="新疆健康小屋表")
public class EmergencyHealthRoom { public class EmergencyHealthRoom {
@@ -24,7 +24,7 @@ import java.util.List;
* @since 2024-09-12 09:38:00 * @since 2024-09-12 09:38:00
*/ */
@Data @Data
@TableName("emergency_profession_user") @TableName("QH_EME_PROFESS_USER")
public class EmergencyProfessionUser implements Serializable { public class EmergencyProfessionUser implements Serializable {
private static final long serialVersionUID = -83227744569667346L; private static final long serialVersionUID = -83227744569667346L;
@@ -17,7 +17,7 @@ import org.springframework.format.annotation.DateTimeFormat;
* @Data 2024/8/19下午4:23 * @Data 2024/8/19下午4:23
*/ */
@Data @Data
@TableName("emergency_new_schedules") @TableName("QH_EME_NEW_SCHEDULES")
@FieldNameConstants @FieldNameConstants
public class EmergencySchedules { public class EmergencySchedules {
@@ -12,7 +12,7 @@ import lombok.experimental.FieldNameConstants;
* @Data 2024/8/19下午4:23 * @Data 2024/8/19下午4:23
*/ */
@Data @Data
@TableName("emergency_schedules_new_item") @TableName("QH_EME_SCHED_NEW_ITEM")
@FieldNameConstants @FieldNameConstants
public class EmergencySchedulesItem { public class EmergencySchedulesItem {
@@ -25,7 +25,7 @@ import java.util.Date;
* @Version: V1.0 * @Version: V1.0
*/ */
@Data @Data
@TableName("emergency_serious_disease") @TableName("QH_EME_SERIOUS_DIS")
@Accessors(chain = true) @Accessors(chain = true)
@EqualsAndHashCode(callSuper = false) @EqualsAndHashCode(callSuper = false)
@Schema(title = "emergency_serious_disease对象", description = "大病就医") @Schema(title = "emergency_serious_disease对象", description = "大病就医")
@@ -15,7 +15,7 @@ import java.io.Serializable;
import java.util.Date; import java.util.Date;
@Data @Data
@TableName("large_screen_data") @TableName("QH_EME_SCRN_DATA")
@Accessors(chain = true) @Accessors(chain = true)
@EqualsAndHashCode(callSuper = false) @EqualsAndHashCode(callSuper = false)
@Schema(title = "large_screen_data对象", description = "large_screen_data") @Schema(title = "large_screen_data对象", description = "large_screen_data")
@@ -22,7 +22,7 @@ import java.util.List;
* @Version: V1.0 * @Version: V1.0
*/ */
@Data @Data
@TableName("emergency_order") @TableName("QH_EME_ORDER")
@Accessors(chain = true) @Accessors(chain = true)
@EqualsAndHashCode(callSuper = false) @EqualsAndHashCode(callSuper = false)
@Schema(title = "emergency_order对象", description = "emergency_order") @Schema(title = "emergency_order对象", description = "emergency_order")
@@ -21,7 +21,7 @@ import java.io.Serializable;
* @Version: V1.0 * @Version: V1.0
*/ */
@Data @Data
@TableName("emergency_order_detail") @TableName("QH_EME_ORDER_DETAIL")
@Accessors(chain = true) @Accessors(chain = true)
@EqualsAndHashCode(callSuper = false) @EqualsAndHashCode(callSuper = false)
@Schema(title = "emergency_order_detail对象", description = "emergency_order_detail") @Schema(title = "emergency_order_detail对象", description = "emergency_order_detail")
@@ -23,7 +23,7 @@ import java.util.Date;
* @Version: V1.0 * @Version: V1.0
*/ */
@Data @Data
@TableName("emergency_order_intervene") @TableName("QH_EME_ORDER_INTERVENE")
@Accessors(chain = true) @Accessors(chain = true)
@EqualsAndHashCode(callSuper = false) @EqualsAndHashCode(callSuper = false)
@Schema(title = "emergency_order_intervene对象", description = "emergency_order_intervene") @Schema(title = "emergency_order_intervene对象", description = "emergency_order_intervene")
@@ -18,7 +18,7 @@ import java.util.Date;
* @Version: V1.0 * @Version: V1.0
*/ */
@Data @Data
@TableName("emergency_order_operator") @TableName("QH_EME_ORDER_OPERATOR")
@Schema(title = "应急工单操作人员表", description = "应急工单操作人员表") @Schema(title = "应急工单操作人员表", description = "应急工单操作人员表")
public class OrderOperator implements Serializable { public class OrderOperator implements Serializable {
/** /**
@@ -19,7 +19,7 @@ import java.io.Serializable;
* @Version: V1.0 * @Version: V1.0
*/ */
@Data @Data
@TableName("emergency_order_send_record") @TableName("QH_EME_ORDER_SEND_REC")
@Accessors(chain = true) @Accessors(chain = true)
@EqualsAndHashCode(callSuper = false) @EqualsAndHashCode(callSuper = false)
@Schema(title = "emergency_order_send_record对象", description = "emergency_order_send_record") @Schema(title = "emergency_order_send_record对象", description = "emergency_order_send_record")
@@ -24,7 +24,7 @@ import java.util.Date;
* @Version: V1.0 * @Version: V1.0
*/ */
@Data @Data
@TableName("emergency_resource") @TableName("QH_EME_RESOURCE")
@Accessors(chain = true) @Accessors(chain = true)
@EqualsAndHashCode(callSuper = false) @EqualsAndHashCode(callSuper = false)
@Schema(title = "emergency_resource对象", description = "应急资源") @Schema(title = "emergency_resource对象", description = "应急资源")
@@ -22,7 +22,7 @@ import java.util.Date;
* @Version: V1.0 * @Version: V1.0
*/ */
@Data @Data
@TableName("emergency_schedule_custom") @TableName("QH_EME_SCHED_CUSTOM")
@Accessors(chain = true) @Accessors(chain = true)
@Deprecated @Deprecated
@EqualsAndHashCode(callSuper = false) @EqualsAndHashCode(callSuper = false)
@@ -21,7 +21,7 @@ import java.util.Date;
* @Version: V1.0 * @Version: V1.0
*/ */
@Data @Data
@TableName("emergency_schedule_default") @TableName("QH_EME_SCHED_DEFAULT")
@Accessors(chain = true) @Accessors(chain = true)
@EqualsAndHashCode(callSuper = false) @EqualsAndHashCode(callSuper = false)
@Deprecated @Deprecated
@@ -19,7 +19,7 @@ import java.util.Date;
* @Version: V1.0 * @Version: V1.0
*/ */
@Data @Data
@TableName("emergency_schedule_record") @TableName("QH_EME_SCHED_RECORD")
@Accessors(chain = true) @Accessors(chain = true)
@EqualsAndHashCode(callSuper = false) @EqualsAndHashCode(callSuper = false)
@Schema(title = "emergency_schedule_record对象", description = "emergency_schedule_record") @Schema(title = "emergency_schedule_record对象", description = "emergency_schedule_record")
@@ -13,7 +13,7 @@ import java.io.Serializable;
import java.util.Date; import java.util.Date;
@Data @Data
@TableName("emergency_screen_animation") @TableName("QH_EME_SCRN_ANIMAT")
@Schema(title = "应急大屏开屏动画", description = "应急大屏开屏动画") @Schema(title = "应急大屏开屏动画", description = "应急大屏开屏动画")
public class ScreenAnimation implements Serializable { public class ScreenAnimation implements Serializable {
private static final long serialVersionUID = 1L; private static final long serialVersionUID = 1L;
@@ -17,7 +17,7 @@ import java.io.Serializable;
* @date 2023-06-06 17:29:38 * @date 2023-06-06 17:29:38
*/ */
@Setter @Setter
@TableName("sys_notify_sms_phone") @TableName("QH_SYS_NOTIF_SMS_PHONE")
@Data @Data
public class SysNotifySmsPhone implements Serializable { public class SysNotifySmsPhone implements Serializable {
/** /**
@@ -1,5 +1,6 @@
package com.renkang.emergency.entity; package com.renkang.emergency.entity;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName; import com.baomidou.mybatisplus.annotation.TableName;
import io.swagger.v3.oas.annotations.media.Schema; import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data; import lombok.Data;
@@ -16,7 +17,7 @@ import java.io.Serializable;
* @date 2018-12-12 14:51:19 * @date 2018-12-12 14:51:19
*/ */
@Data @Data
@TableName("tbl_qimo_notice") @TableName("QH_EME_QIMO_NOTICE")
public class TblQimoNotice implements Serializable { public class TblQimoNotice implements Serializable {
/** /**
* 主键 * 主键
@@ -81,12 +82,14 @@ public class TblQimoNotice implements Serializable {
*/ */
@Schema(title = "通话接通时间", requiredMode = Schema.RequiredMode.NOT_REQUIRED) @Schema(title = "通话接通时间", requiredMode = Schema.RequiredMode.NOT_REQUIRED)
@Excel(name = "通话接通时间", width = 15, format = "yyyy-MM-dd HH:mm:ss") @Excel(name = "通话接通时间", width = 15, format = "yyyy-MM-dd HH:mm:ss")
@TableField("BEGIN_TIME")
private java.util.Date begin; private java.util.Date begin;
/** /**
* 通话结束时间 * 通话结束时间
*/ */
@Schema(title = "通话结束时间", requiredMode = Schema.RequiredMode.NOT_REQUIRED) @Schema(title = "通话结束时间", requiredMode = Schema.RequiredMode.NOT_REQUIRED)
@Excel(name = "通话结束时间", width = 15, format = "yyyy-MM-dd HH:mm:ss") @Excel(name = "通话结束时间", width = 15, format = "yyyy-MM-dd HH:mm:ss")
@TableField("END_TIME")
private java.util.Date end; private java.util.Date end;
/** /**
* 来电进入技能组时间 * 来电进入技能组时间

Some files were not shown because too many files have changed in this diff Show More