41 Commits
Author SHA1 Message Date
lianlonggang 25cd9c520c 增加obf混淆例外 2025-07-23 18:09:39 +08:00
lianlonggang a3bf49c0fc Merge remote-tracking branch 'origin/develop' into obf 2025-07-23 16:38:35 +08:00
lianlonggang 36603cbda9 部分配置去掉 2025-07-23 16:37:49 +08:00
lianlonggang 0d6efc7a0c Merge branch 'develop' into obf 2025-07-22 17:06:39 +08:00
feng e334685b1d Merge branch 'develop' of https://gitea.rk-health.com/renkang/xj-platform into develop 2025-07-22 15:13:08 +08:00
feng f16b65982c 修改员工信息导入逻辑 2025-07-22 15:13:04 +08:00
SkyJourney b25ea3ff6c Merge branch 'develop' into obf 2025-07-15 16:19:07 +08:00
wanghao 3684588a52 sql提交 2025-07-14 09:21:52 +08:00
SkyJourney 7fac46f308 修正Mybatis反射读取不到方法变量的问题 2025-07-12 15:01:15 +08:00
lianlonggang 3169464045 新疆油田短信功能 2025-07-12 11:25:25 +08:00
SkyJourney 25e3b27c34 混淆时jdk配置改为读取maven变量 2025-07-12 08:03:50 +08:00
SkyJourney 42b16f70b9 biz混淆后全部启动 2025-07-12 07:26:58 +08:00
SkyJourney a9d92dd9a3 System混淆可运行,其他模块待验证 2025-07-12 00:19:06 +08:00
SkyJourney 1380c846f5 混淆配置,所有的包增加classifier为xj,只对biz包混淆,混淆后classifier为obf,profile配置写好,混淆打包时勾选biz-obf+default打包,不混淆时只勾选default 2025-07-11 22:05:57 +08:00
feng df2b136b3e dockerfile old 2025-07-11 09:36:07 +08:00
feng d5cfc9e76f Merge branch 'develop' of https://gitea.rk-health.com/renkang/xj-platform into develop 2025-07-10 10:48:05 +08:00
feng d842bb1dbb 小助手自动回复 2025-07-10 10:47:51 +08:00
wanghao f28b1e755b 修改咨询档案列表bug 2025-07-10 10:30:22 +08:00
DESKTOP-BLB5287\FP e64091efde Merge branch 'develop' of https://gitea.rk-health.com/renkang/xj-platform into develop 2025-07-09 17:28:36 +08:00
DESKTOP-BLB5287\FP 34adc1a5e2 fix 2025-07-09 17:28:32 +08:00
wanghao ac42d99bd2 修改新疆大屏 2025-07-09 17:18:17 +08:00
DESKTOP-BLB5287\FP e19f3f57b9 Merge branch 'develop' of https://gitea.rk-health.com/renkang/xj-platform into develop 2025-07-09 16:57:10 +08:00
DESKTOP-BLB5287\FP 7c69912296 咨询bug 2025-07-09 16:57:07 +08:00
wanghao 75d0775ca9 修改新疆大屏及群内bug 2025-07-09 16:56:20 +08:00
wanghao ec897c0567 修改新疆大屏及小助手专家咨询量bug 2025-07-09 13:47:44 +08:00
stan 19addb4469 ADD:新版排版接口 2025-07-09 11:00:16 +08:00
wanghao 65b15b8dbd 新疆大屏开发及bug修改 2025-07-08 17:34:29 +08:00
wanghao 2b25e0bf99 新疆大屏开发及bug修改 2025-07-08 17:30:05 +08:00
wanghao 3a43716e9b 新疆大屏开发及bug修改 2025-07-08 16:49:47 +08:00
wanghao e93fb4de8d bug修改 2025-07-07 18:15:57 +08:00
wanghao 5a1d6d828b bug修改 2025-07-06 15:49:48 +08:00
wanghao c342a77af1 大屏开发 2025-07-06 14:08:36 +08:00
wanghao 3bd73a6eb8 修改群内bug 2025-07-05 17:53:09 +08:00
stan 58f859bcac add:方法名迁移 2025-07-05 11:32:02 +08:00
stan 7e83999711 add:假数据代码迁移 2025-07-05 11:31:39 +08:00
wanghao 7fb0ac6aa6 修改群内bug 2025-07-04 18:10:35 +08:00
wanghao 909c083e51 大屏 2025-07-04 14:31:20 +08:00
DESKTOP-BLB5287\FP e15aae5a26 删除青海的动态表名配置 2025-07-04 09:42:30 +08:00
DESKTOP-BLB5287\FP 2804df2af3 添加小助手同时给加角色 2025-07-03 15:22:59 +08:00
DESKTOP-BLB5287\FP c91978f42a dockerfile 2025-07-02 09:11:48 +08:00
DESKTOP-BLB5287\FP 68fd95a017 redis配置 2025-06-30 14:42:19 +08:00
149 changed files with 32019 additions and 1028 deletions
+153
View File
@@ -0,0 +1,153 @@
/*
Navicat Premium Dump SQL
Source Server : 新疆内网测试环境
Source Server Type : MySQL
Source Server Version : 80300 (8.3.0)
Source Host : 192.168.1.210:3308
Source Schema : xj_batch
Target Server Type : MySQL
Target Server Version : 80300 (8.3.0)
File Encoding : 65001
Date: 11/07/2025 15:14:18
*/
SET NAMES utf8mb4;
SET FOREIGN_KEY_CHECKS = 0;
-- ----------------------------
-- Table structure for BATCH_JOB_EXECUTION
-- ----------------------------
DROP TABLE IF EXISTS `BATCH_JOB_EXECUTION`;
CREATE TABLE `BATCH_JOB_EXECUTION` (
`JOB_EXECUTION_ID` bigint NOT NULL,
`VERSION` bigint NULL DEFAULT NULL,
`JOB_INSTANCE_ID` bigint NOT NULL,
`CREATE_TIME` datetime(6) NOT NULL,
`START_TIME` datetime(6) NULL DEFAULT NULL,
`END_TIME` datetime(6) NULL DEFAULT NULL,
`STATUS` varchar(10) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL,
`EXIT_CODE` varchar(2500) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL,
`EXIT_MESSAGE` varchar(2500) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL,
`LAST_UPDATED` datetime(6) NULL DEFAULT NULL,
`JOB_CONFIGURATION_LOCATION` varchar(2500) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL,
PRIMARY KEY (`JOB_EXECUTION_ID`) USING BTREE,
INDEX `JOB_INST_EXEC_FK`(`JOB_INSTANCE_ID` ASC) USING BTREE,
CONSTRAINT `JOB_INST_EXEC_FK` FOREIGN KEY (`JOB_INSTANCE_ID`) REFERENCES `BATCH_JOB_INSTANCE` (`JOB_INSTANCE_ID`) ON DELETE RESTRICT ON UPDATE RESTRICT
) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci ROW_FORMAT = Dynamic;
-- ----------------------------
-- Table structure for BATCH_JOB_EXECUTION_CONTEXT
-- ----------------------------
DROP TABLE IF EXISTS `BATCH_JOB_EXECUTION_CONTEXT`;
CREATE TABLE `BATCH_JOB_EXECUTION_CONTEXT` (
`JOB_EXECUTION_ID` bigint NOT NULL,
`SHORT_CONTEXT` varchar(2500) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL,
`SERIALIZED_CONTEXT` text CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL,
PRIMARY KEY (`JOB_EXECUTION_ID`) USING BTREE,
CONSTRAINT `JOB_EXEC_CTX_FK` FOREIGN KEY (`JOB_EXECUTION_ID`) REFERENCES `BATCH_JOB_EXECUTION` (`JOB_EXECUTION_ID`) ON DELETE RESTRICT ON UPDATE RESTRICT
) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci ROW_FORMAT = Dynamic;
-- ----------------------------
-- Table structure for BATCH_JOB_EXECUTION_PARAMS
-- ----------------------------
DROP TABLE IF EXISTS `BATCH_JOB_EXECUTION_PARAMS`;
CREATE TABLE `BATCH_JOB_EXECUTION_PARAMS` (
`JOB_EXECUTION_ID` bigint NOT NULL,
`TYPE_CD` varchar(6) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL,
`KEY_NAME` varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL,
`STRING_VAL` varchar(250) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL,
`DATE_VAL` datetime(6) NULL DEFAULT NULL,
`LONG_VAL` bigint NULL DEFAULT NULL,
`DOUBLE_VAL` double NULL DEFAULT NULL,
`IDENTIFYING` char(1) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL,
INDEX `JOB_EXEC_PARAMS_FK`(`JOB_EXECUTION_ID` ASC) USING BTREE,
CONSTRAINT `JOB_EXEC_PARAMS_FK` FOREIGN KEY (`JOB_EXECUTION_ID`) REFERENCES `BATCH_JOB_EXECUTION` (`JOB_EXECUTION_ID`) ON DELETE RESTRICT ON UPDATE RESTRICT
) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci ROW_FORMAT = Dynamic;
-- ----------------------------
-- Table structure for BATCH_JOB_EXECUTION_SEQ
-- ----------------------------
DROP TABLE IF EXISTS `BATCH_JOB_EXECUTION_SEQ`;
CREATE TABLE `BATCH_JOB_EXECUTION_SEQ` (
`ID` bigint NOT NULL,
`UNIQUE_KEY` char(1) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL,
UNIQUE INDEX `UNIQUE_KEY_UN`(`UNIQUE_KEY` ASC) USING BTREE
) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci ROW_FORMAT = Dynamic;
-- ----------------------------
-- Table structure for BATCH_JOB_INSTANCE
-- ----------------------------
DROP TABLE IF EXISTS `BATCH_JOB_INSTANCE`;
CREATE TABLE `BATCH_JOB_INSTANCE` (
`JOB_INSTANCE_ID` bigint NOT NULL,
`VERSION` bigint NULL DEFAULT NULL,
`JOB_NAME` varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL,
`JOB_KEY` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL,
PRIMARY KEY (`JOB_INSTANCE_ID`) USING BTREE,
UNIQUE INDEX `JOB_INST_UN`(`JOB_NAME` ASC, `JOB_KEY` ASC) USING BTREE
) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci ROW_FORMAT = Dynamic;
-- ----------------------------
-- Table structure for BATCH_JOB_SEQ
-- ----------------------------
DROP TABLE IF EXISTS `BATCH_JOB_SEQ`;
CREATE TABLE `BATCH_JOB_SEQ` (
`ID` bigint NOT NULL,
`UNIQUE_KEY` char(1) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL,
UNIQUE INDEX `UNIQUE_KEY_UN`(`UNIQUE_KEY` ASC) USING BTREE
) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci ROW_FORMAT = Dynamic;
-- ----------------------------
-- Table structure for BATCH_STEP_EXECUTION
-- ----------------------------
DROP TABLE IF EXISTS `BATCH_STEP_EXECUTION`;
CREATE TABLE `BATCH_STEP_EXECUTION` (
`STEP_EXECUTION_ID` bigint NOT NULL,
`VERSION` bigint NOT NULL,
`STEP_NAME` varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL,
`JOB_EXECUTION_ID` bigint NOT NULL,
`START_TIME` datetime(6) NOT NULL,
`END_TIME` datetime(6) NULL DEFAULT NULL,
`STATUS` varchar(10) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL,
`COMMIT_COUNT` bigint NULL DEFAULT NULL,
`READ_COUNT` bigint NULL DEFAULT NULL,
`FILTER_COUNT` bigint NULL DEFAULT NULL,
`WRITE_COUNT` bigint NULL DEFAULT NULL,
`READ_SKIP_COUNT` bigint NULL DEFAULT NULL,
`WRITE_SKIP_COUNT` bigint NULL DEFAULT NULL,
`PROCESS_SKIP_COUNT` bigint NULL DEFAULT NULL,
`ROLLBACK_COUNT` bigint NULL DEFAULT NULL,
`EXIT_CODE` varchar(2500) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL,
`EXIT_MESSAGE` varchar(2500) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL,
`LAST_UPDATED` datetime(6) NULL DEFAULT NULL,
PRIMARY KEY (`STEP_EXECUTION_ID`) USING BTREE,
INDEX `JOB_EXEC_STEP_FK`(`JOB_EXECUTION_ID` ASC) USING BTREE,
CONSTRAINT `JOB_EXEC_STEP_FK` FOREIGN KEY (`JOB_EXECUTION_ID`) REFERENCES `BATCH_JOB_EXECUTION` (`JOB_EXECUTION_ID`) ON DELETE RESTRICT ON UPDATE RESTRICT
) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci ROW_FORMAT = Dynamic;
-- ----------------------------
-- Table structure for BATCH_STEP_EXECUTION_CONTEXT
-- ----------------------------
DROP TABLE IF EXISTS `BATCH_STEP_EXECUTION_CONTEXT`;
CREATE TABLE `BATCH_STEP_EXECUTION_CONTEXT` (
`STEP_EXECUTION_ID` bigint NOT NULL,
`SHORT_CONTEXT` varchar(2500) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL,
`SERIALIZED_CONTEXT` text CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL,
PRIMARY KEY (`STEP_EXECUTION_ID`) USING BTREE,
CONSTRAINT `STEP_EXEC_CTX_FK` FOREIGN KEY (`STEP_EXECUTION_ID`) REFERENCES `BATCH_STEP_EXECUTION` (`STEP_EXECUTION_ID`) ON DELETE RESTRICT ON UPDATE RESTRICT
) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci ROW_FORMAT = Dynamic;
-- ----------------------------
-- Table structure for BATCH_STEP_EXECUTION_SEQ
-- ----------------------------
DROP TABLE IF EXISTS `BATCH_STEP_EXECUTION_SEQ`;
CREATE TABLE `BATCH_STEP_EXECUTION_SEQ` (
`ID` bigint NOT NULL,
`UNIQUE_KEY` char(1) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL,
UNIQUE INDEX `UNIQUE_KEY_UN`(`UNIQUE_KEY` ASC) USING BTREE
) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci ROW_FORMAT = Dynamic;
SET FOREIGN_KEY_CHECKS = 1;
File diff suppressed because it is too large Load Diff
+814
View File
@@ -0,0 +1,814 @@
/*
Navicat Premium Dump SQL
Source Server : 新疆大佬环境
Source Server Type : MySQL
Source Server Version : 80400 (8.4.0)
Source Host : home.mcrm.vip:13308
Source Schema : xj_emergency
Target Server Type : MySQL
Target Server Version : 80400 (8.4.0)
File Encoding : 65001
Date: 11/07/2025 15:15:56
*/
SET NAMES utf8mb4;
SET FOREIGN_KEY_CHECKS = 0;
-- ----------------------------
-- Table structure for aed
-- ----------------------------
DROP TABLE IF EXISTS `aed`;
CREATE TABLE `aed` (
`id` int NOT NULL AUTO_INCREMENT COMMENT '主键',
`name` varchar(100) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NOT NULL COMMENT '名称',
`longitude` decimal(10, 6) NULL DEFAULT NULL COMMENT '经度',
`latitude` decimal(10, 6) NULL DEFAULT NULL COMMENT '纬度',
`depart_code` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '部门编码',
`host_model` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '主机型号',
`host_serial_num` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '主机序列号',
`electrode_sheet_valid_time` date NULL DEFAULT NULL COMMENT '电极片有效期',
`router_model` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '路由器型号',
`router_serial_num` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '路由器序列号',
`battery_model` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '电池型号',
`battery_voltage` double(5, 2) NULL DEFAULT NULL COMMENT '电池电压',
`warranty_start_date` date NULL DEFAULT NULL COMMENT '质保开始时间',
`warranty_end_date` date NULL DEFAULT NULL COMMENT '质保结束时间',
`aed_img` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '设备图片 多个\",\"分隔',
`mfrs_name` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '制造商名称',
`mfrs_mobile` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '制造商联系电话',
`Install_address` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '安装位置',
`install_address_img` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '位置图片 多个\",\"分隔',
`manage_user_id` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '管理人员id',
`manage_user_name` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '管理人员',
`manage_user_mobile` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '管理人员电话',
`check_status` tinyint(1) NULL DEFAULT -1 COMMENT '自检查状态',
`electrode_sheet_status` tinyint(1) NULL DEFAULT -1 COMMENT '电极片状态',
`battery_status` tinyint(1) NULL DEFAULT -1 COMMENT '电池状态',
`router_status` tinyint(1) NULL DEFAULT -1 COMMENT '路由状态',
`manage_depart_code` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '管理部门code',
`charge_first` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '负责人1',
`charge_first_mobile` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '负责人1电话',
`charge_second` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '负责人2',
`charge_second_mobile` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '负责人2电话',
`annex` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '附件',
`video_handle` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '视频操作',
`handle_explain` text CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL COMMENT '操作说明',
`aed_annex_status` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '设备附件状态',
`install_time` date NULL DEFAULT NULL COMMENT '安装时间',
`cover_user_num` int NULL DEFAULT NULL COMMENT '覆盖人数',
`del_flag` tinyint(1) NOT NULL DEFAULT 0 COMMENT '删除状态(0-正常,1-已删除)',
`create_by` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '创建人',
`create_time` datetime NULL DEFAULT NULL COMMENT '创建时间',
`update_by` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '更新人',
`update_time` datetime NULL DEFAULT NULL COMMENT '更新时间',
`memo` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '覆盖人数',
PRIMARY KEY (`id`) USING BTREE,
UNIQUE INDEX `idx_uni_model`(`host_model` ASC, `host_serial_num` ASC) USING BTREE COMMENT '编号加序列号唯一'
) ENGINE = InnoDB AUTO_INCREMENT = 1 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci COMMENT = '应急资源表' ROW_FORMAT = Dynamic;
-- ----------------------------
-- Table structure for aed_latest
-- ----------------------------
DROP TABLE IF EXISTS `aed_latest`;
CREATE TABLE `aed_latest` (
`id` int NOT NULL AUTO_INCREMENT COMMENT '主键',
`aed_id` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL DEFAULT NULL COMMENT 'AED型号+序列号',
`aed_status` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL DEFAULT NULL COMMENT '状态码',
`aed_model` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL DEFAULT NULL COMMENT 'AED型号',
`aed_no` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL DEFAULT NULL COMMENT 'AED序列号',
`pad_expiration` date NULL DEFAULT NULL COMMENT '电极片有效期',
`battery_power` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL DEFAULT NULL COMMENT 'AED剩余电量',
`aed_self_report` text CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL COMMENT 'AED自检报告',
`router_model` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL DEFAULT NULL COMMENT '专用路由器型号',
`router_serial_no` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL DEFAULT NULL COMMENT '专用路由器序列号',
`router_iccid` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL DEFAULT NULL COMMENT '物联卡号',
`router_voltage` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL DEFAULT NULL COMMENT '电压',
`router_bt` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL DEFAULT NULL COMMENT '蓝牙自检结果',
`router_self_model` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL DEFAULT NULL COMMENT '专用路由器通讯自检结果',
`router_file_system` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL DEFAULT NULL COMMENT '专用路由器文件系统自检结果',
`router_self_rtc` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL DEFAULT NULL COMMENT '专用路由器RTC自检结果',
`del_flag` tinyint(1) NOT NULL DEFAULT 0 COMMENT '删除状态(0-正常,1-已删除)',
`create_by` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '创建人',
`create_time` datetime NULL DEFAULT NULL COMMENT '创建时间',
`update_by` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '更新人',
`update_time` datetime NULL DEFAULT NULL COMMENT '更新时间',
`memo` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '备注',
PRIMARY KEY (`id`) USING BTREE
) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_bin ROW_FORMAT = Dynamic;
-- ----------------------------
-- Table structure for aed_warn_info
-- ----------------------------
DROP TABLE IF EXISTS `aed_warn_info`;
CREATE TABLE `aed_warn_info` (
`id` int NOT NULL AUTO_INCREMENT COMMENT '主键',
`latest_id` int NULL DEFAULT NULL COMMENT 'aed id',
`aed_model` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL DEFAULT NULL COMMENT 'aed型号',
`aed_no` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL DEFAULT NULL COMMENT 'aed序列号',
`module` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL DEFAULT NULL COMMENT '报警模块',
`type` char(1) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL DEFAULT NULL COMMENT '报警类型',
`value` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL DEFAULT NULL COMMENT '报警值',
`warn_desc` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL DEFAULT NULL COMMENT '报警描述',
`warn_status` char(1) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NOT NULL DEFAULT '0' COMMENT '报警状态(0:待处理 1:已解除)',
`warn_handle_info` text CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL COMMENT '告警处理操作信息',
`del_flag` tinyint(1) NOT NULL DEFAULT 0 COMMENT '删除状态(0-正常,1-已删除)',
`create_by` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '创建人',
`create_time` datetime NULL DEFAULT NULL COMMENT '创建时间',
`update_by` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '更新人',
`update_time` datetime NULL DEFAULT NULL COMMENT '更新时间',
`memo` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '备注',
PRIMARY KEY (`id`) USING BTREE
) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_bin ROW_FORMAT = Dynamic;
-- ----------------------------
-- Table structure for emergency_center
-- ----------------------------
DROP TABLE IF EXISTS `emergency_center`;
CREATE TABLE `emergency_center` (
`id` varchar(36) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NOT NULL COMMENT '主键',
`center_name` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NOT NULL COMMENT '中心名称',
`simple_name` char(4) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NOT NULL COMMENT '中心简称',
`is_default_center` tinyint(1) NOT NULL DEFAULT 0 COMMENT '是否默认中心 0:否 1:是',
`longitude` decimal(10, 6) NOT NULL COMMENT '经度',
`latitude` decimal(10, 6) NOT NULL COMMENT '纬度',
`org_code` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NOT NULL COMMENT '管理单位',
`address` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NOT NULL COMMENT '详细地址',
`center_tel` varchar(40) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL DEFAULT NULL COMMENT '中心电话',
`center_head_name` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL DEFAULT NULL COMMENT '负责人',
`center_head_tel` varchar(40) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL DEFAULT NULL COMMENT '负责人电话',
`duty_phone` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL DEFAULT NULL COMMENT '值班电话',
`completion_time` date NULL DEFAULT NULL COMMENT '建成时间',
`commissioning_time` date NULL DEFAULT NULL COMMENT '投用日期',
`equipment_amount` decimal(10, 2) NULL DEFAULT NULL COMMENT '配备金额',
`service_scope` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NOT NULL COMMENT '服务范围',
`screen_path` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL DEFAULT NULL COMMENT '大屏路由',
`screen_title` varchar(155) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL DEFAULT NULL COMMENT '大屏标题',
`create_by` varchar(30) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL DEFAULT NULL COMMENT '创建人',
`create_time` datetime NULL DEFAULT NULL COMMENT '创建时间',
`update_time` datetime NULL DEFAULT NULL COMMENT '更新时间',
`update_by` varchar(30) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL DEFAULT NULL COMMENT '更新人',
`status` char(1) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL DEFAULT '0' COMMENT '状态 0:开启 1:关闭',
`del_flag` tinyint NOT NULL DEFAULT 0 COMMENT '软删除:0.未删除,1.已删除',
`memo` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL DEFAULT NULL COMMENT '备注',
PRIMARY KEY (`id`) USING BTREE
) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_bin COMMENT = '应急中心列表' ROW_FORMAT = Dynamic;
-- ----------------------------
-- Table structure for emergency_center_admin
-- ----------------------------
DROP TABLE IF EXISTS `emergency_center_admin`;
CREATE TABLE `emergency_center_admin` (
`id` varchar(36) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NOT NULL COMMENT '主键',
`user_id` varchar(36) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NOT NULL COMMENT '人员id',
`username` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NOT NULL COMMENT '冗余字段 账号',
`realname` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NOT NULL COMMENT '冗余字段 真实姓名',
`center_id` varchar(36) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NOT NULL COMMENT '中心id',
`admin_type` tinyint(1) NULL DEFAULT NULL COMMENT '管理员类型,0:大屏管理员,1:大屏账号',
`create_time` datetime NULL DEFAULT NULL COMMENT '创建时间',
`create_by` varchar(30) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL DEFAULT NULL COMMENT '创建人',
`update_time` datetime NULL DEFAULT NULL COMMENT '更新时间',
`update_by` varchar(30) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL DEFAULT NULL COMMENT '更新人',
`del_flag` tinyint NOT NULL DEFAULT 0 COMMENT '软删除:0.未删除,1.已删除',
`memo` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL DEFAULT NULL COMMENT '备注',
PRIMARY KEY (`id`) USING BTREE
) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_bin COMMENT = '管理员/大屏管理员表' ROW_FORMAT = Dynamic;
-- ----------------------------
-- Table structure for emergency_center_open_time
-- ----------------------------
DROP TABLE IF EXISTS `emergency_center_open_time`;
CREATE TABLE `emergency_center_open_time` (
`id` int NOT NULL AUTO_INCREMENT COMMENT '主键',
`center_id` varchar(36) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL DEFAULT NULL COMMENT '中心id',
`open_time_start` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL DEFAULT NULL COMMENT '开启时间',
`open_time_end` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL DEFAULT NULL COMMENT '关闭时间',
`create_by` varchar(30) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL DEFAULT NULL COMMENT '创建人',
`create_time` datetime NULL DEFAULT NULL COMMENT '创建时间',
`update_time` datetime NULL DEFAULT NULL COMMENT '更新时间',
`update_by` varchar(30) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL DEFAULT NULL COMMENT '更新人',
`del_flag` tinyint NOT NULL DEFAULT 0 COMMENT '软删除:0.未删除,1.已删除',
`memo` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL DEFAULT NULL COMMENT '备注',
PRIMARY KEY (`id`) USING BTREE
) ENGINE = InnoDB AUTO_INCREMENT = 7 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_bin ROW_FORMAT = Dynamic;
-- ----------------------------
-- Table structure for emergency_center_resource
-- ----------------------------
DROP TABLE IF EXISTS `emergency_center_resource`;
CREATE TABLE `emergency_center_resource` (
`id` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NOT NULL,
`emergency_center_id` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL DEFAULT NULL COMMENT '应急中心id',
`medical_resource_id` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL DEFAULT NULL COMMENT '医疗点id',
`del_flag` tinyint(1) NOT NULL DEFAULT 0 COMMENT '删除状态(0-正常,1-已删除)',
`create_by` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '创建人',
`create_time` datetime NULL DEFAULT NULL COMMENT '创建时间',
`update_by` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '更新人',
`update_time` datetime NULL DEFAULT NULL COMMENT '更新时间',
`memo` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '备注',
PRIMARY KEY (`id`) USING BTREE
) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_bin ROW_FORMAT = Dynamic;
-- ----------------------------
-- Table structure for emergency_grouped
-- ----------------------------
DROP TABLE IF EXISTS `emergency_grouped`;
CREATE TABLE `emergency_grouped` (
`id` varchar(36) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NOT NULL COMMENT '主键',
`seat_id` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NOT NULL COMMENT '坐席工号',
`center_id` varchar(36) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NOT NULL COMMENT '中心id',
`center_name` varchar(200) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL DEFAULT NULL COMMENT '中心名称',
`seat_status` tinyint NOT NULL DEFAULT 0 COMMENT '坐席状态:\n0:未知\n1:忙碌\n2:小休\n3:正在通话\n4:离线\n5:空闲',
`create_time` datetime NULL DEFAULT NULL COMMENT '创建时间',
`create_by` varchar(30) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL DEFAULT NULL COMMENT '创建人',
`update_time` datetime NULL DEFAULT NULL COMMENT '更新时间',
`update_by` varchar(30) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL DEFAULT NULL COMMENT '更新人',
`del_flag` tinyint NOT NULL DEFAULT 0 COMMENT '软删除:0.未删除,1.已删除',
PRIMARY KEY (`id`) USING BTREE
) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_bin COMMENT = '分组管理表' ROW_FORMAT = Dynamic;
-- ----------------------------
-- Table structure for emergency_health_room
-- ----------------------------
DROP TABLE IF EXISTS `emergency_health_room`;
CREATE TABLE `emergency_health_room` (
`id` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_persian_ci NOT NULL COMMENT '主键',
`name` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '建设地点名称',
`org_code` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '单位code',
`org_name` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '单位名称(冗余字段更新orgCode记得同步更新)',
`job_num` int NULL DEFAULT NULL COMMENT '在岗人数',
`run_time` int NULL DEFAULT NULL COMMENT '运转时间(分钟)',
`longitude` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '经度',
`latitude` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '纬度',
`status` tinyint(1) NOT NULL DEFAULT 1 COMMENT '状态(1-正常,2-冻结)',
`del_flag` tinyint(1) NOT NULL DEFAULT 0 COMMENT '删除状态(0-正常,1-已删除)',
`create_by` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '创建人',
`create_time` datetime NULL DEFAULT NULL COMMENT '创建时间',
`update_by` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '更新人',
`update_time` datetime NULL DEFAULT NULL COMMENT '更新时间',
`memo` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '备注',
PRIMARY KEY (`id`) USING BTREE
) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci ROW_FORMAT = Dynamic;
-- ----------------------------
-- Table structure for emergency_new_schedules
-- ----------------------------
DROP TABLE IF EXISTS `emergency_new_schedules`;
CREATE TABLE `emergency_new_schedules` (
`id` varchar(36) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NOT NULL COMMENT '主键',
`center_id` varchar(36) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NOT NULL COMMENT '中心id',
`schedules_time` date NOT NULL COMMENT '排班时间',
`create_by` varchar(30) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL DEFAULT NULL COMMENT '创建人',
`create_time` datetime NULL DEFAULT NULL COMMENT '创建时间',
`update_by` varchar(30) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL DEFAULT NULL COMMENT '更新人',
`update_time` datetime NULL DEFAULT NULL COMMENT '更新时间',
`del_flag` tinyint NOT NULL DEFAULT 0 COMMENT '软删除:0.未删除,1.已删除',
PRIMARY KEY (`id`) USING BTREE
) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_bin COMMENT = '排班表' ROW_FORMAT = Dynamic;
-- ----------------------------
-- Table structure for emergency_order
-- ----------------------------
DROP TABLE IF EXISTS `emergency_order`;
CREATE TABLE `emergency_order` (
`id` varchar(36) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NOT NULL COMMENT '主键(应急单号)',
`is_fill` tinyint(1) NULL DEFAULT NULL COMMENT '是否补单 (0:否 1:是)',
`Initiator_type` char(1) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL DEFAULT NULL COMMENT '发起类型(0:120 1: 应急就医 2:急救联动)',
`resource_id` varchar(36) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL DEFAULT NULL COMMENT '应急资源id(医院 aed 医疗点)',
`info_desc` varchar(1000) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL DEFAULT NULL COMMENT '救助信息描述',
`session_id` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL DEFAULT NULL COMMENT 'im会话id',
`session_now` tinyint(1) NULL DEFAULT 0 COMMENT '是否正在会话(0:否 1:是)',
`session_over_time` datetime NULL DEFAULT NULL COMMENT '会话结束时间',
`initiator_user_id` varchar(36) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL DEFAULT NULL COMMENT '发起人id',
`initiator_user_name` varchar(36) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL DEFAULT NULL COMMENT '发起人姓名',
`initiator_user_sex` varchar(36) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL DEFAULT NULL COMMENT '发起人性别',
`initiator_user_mobile` varchar(36) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL DEFAULT NULL COMMENT '发起人电话',
`initiator_user_id_card` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL DEFAULT NULL COMMENT '发起人身份证号',
`initiator_user_depart` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL DEFAULT NULL COMMENT '发起人部门code',
`initiator_user_avatar` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL DEFAULT NULL COMMENT '发起人头像',
`initiator_longitude` decimal(10, 6) NULL DEFAULT NULL COMMENT '发起人经度',
`initiator_latitude` decimal(10, 6) NULL DEFAULT NULL COMMENT '发起人纬度',
`salvage_user_id` varchar(36) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL DEFAULT NULL COMMENT '被救助人id',
`salvage_user_name` varchar(36) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL DEFAULT NULL COMMENT '被救助人姓名',
`salvage_user_sex` varchar(36) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL DEFAULT NULL COMMENT '被救助人性别',
`salvage_user_mobile` varchar(36) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL DEFAULT NULL COMMENT '被救助人电话',
`salvage_user_id_card` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL DEFAULT '' COMMENT '救助人身份证号',
`salvage_user_depart` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL DEFAULT NULL COMMENT '发起人部门code',
`salvage_user_avatar` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL DEFAULT NULL COMMENT '救助人头像',
`operation_user_id` varchar(36) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL DEFAULT NULL COMMENT '操作人员id',
`operation_user_name` varchar(36) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL DEFAULT NULL COMMENT '操作人员姓名',
`operation_user_sex` varchar(36) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL DEFAULT NULL COMMENT '操作人员性别',
`operation_user_mobile` varchar(36) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL DEFAULT NULL COMMENT '操作人员电话',
`operation_user_avatar` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL DEFAULT NULL COMMENT '操作人头像',
`major_user_id` varchar(36) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL DEFAULT NULL COMMENT '专业人员id',
`major_user_name` varchar(36) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL DEFAULT NULL COMMENT '专业人员姓名',
`major_user_sex` varchar(36) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL DEFAULT NULL COMMENT '专业人员性别',
`major_user_mobile` varchar(36) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL DEFAULT NULL COMMENT '专业人员电话',
`major_user_avatar` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL DEFAULT NULL COMMENT '专业人头像',
`station_user_id` varchar(36) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL DEFAULT NULL COMMENT '驻场人员id',
`station_user_name` varchar(36) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL DEFAULT NULL COMMENT '驻场人员姓名',
`station_user_sex` varchar(36) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL DEFAULT NULL COMMENT '驻场人员性别',
`station_user_mobile` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL DEFAULT NULL COMMENT '驻场人员电话',
`station_user_depart` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL DEFAULT NULL COMMENT '发起人部门code',
`station_user_avatar` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL DEFAULT NULL COMMENT '驻场人头像',
`station_business` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL DEFAULT NULL COMMENT '驻场人员派单业务',
`operation_response_time` datetime NULL DEFAULT NULL COMMENT '操作人员响应时间',
`operation_send_order_time` datetime NULL DEFAULT NULL COMMENT '操作人员派单时间',
`major_response_time` datetime NULL DEFAULT NULL COMMENT '专业人员响应时间',
`station_response_time` datetime NULL DEFAULT NULL COMMENT '驻场人员响应时间',
`station_rejection_time` datetime NULL DEFAULT NULL COMMENT '驻场人员拒单时间',
`major_salvage_opinion` varchar(1000) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL DEFAULT NULL COMMENT '专业人员救助意见',
`center_id` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL DEFAULT NULL COMMENT '应急中心id',
`order_over_time` datetime NULL DEFAULT NULL COMMENT '订单结束时间',
`send_order_hospital` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL DEFAULT NULL COMMENT '派单医院',
`order_status` char(1) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NOT NULL DEFAULT '0' COMMENT '应急单状态 0: 待处理 1:咨询中 2:已派单 3:待审核 4: 待就医 5: 已完成',
`is_dispatch` char(1) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL DEFAULT '0' COMMENT '派单状态 0:待处理 1:咨询中 2:待接单 3:驻场驳回 4:已接单 5: 已完成',
`detail_title` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL DEFAULT NULL COMMENT '应急小结 标题',
`status` tinyint(1) NOT NULL DEFAULT 1 COMMENT '状态(1-正常,2-冻结)',
`del_flag` tinyint(1) NOT NULL DEFAULT 0 COMMENT '删除状态(0-正常,1-已删除)',
`create_by` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '创建人',
`create_time` datetime NULL DEFAULT NULL COMMENT '创建时间',
`update_by` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '更新人',
`update_time` datetime NULL DEFAULT NULL COMMENT '更新时间',
`memo` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '备注',
PRIMARY KEY (`id`) USING BTREE,
UNIQUE INDEX `idx_session`(`session_id` ASC) USING BTREE
) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_bin COMMENT = '应急单基础表' ROW_FORMAT = Dynamic;
-- ----------------------------
-- Table structure for emergency_order_detail
-- ----------------------------
DROP TABLE IF EXISTS `emergency_order_detail`;
CREATE TABLE `emergency_order_detail` (
`id` varchar(36) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NOT NULL COMMENT '主键(应急单号)',
`order_score` double(5, 2) NULL DEFAULT NULL COMMENT '评分',
`order_evaluation` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL DEFAULT NULL COMMENT '评价',
`order_evaluation_time` datetime NULL DEFAULT NULL COMMENT '用户评价时间',
`order_through` text CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL COMMENT '事件经过',
`order_result` text CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL COMMENT '事件结果',
`order_record` text CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL COMMENT '病情记录',
`imgs` varchar(1000) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL DEFAULT NULL COMMENT '现场照片(使用,分隔)',
`amb_car_num` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL DEFAULT NULL COMMENT '救护车车牌号',
`amb_car_arrive_time` datetime NULL DEFAULT NULL COMMENT '救护车车辆到达现场时间',
`amb_car_serve_time` datetime NULL DEFAULT NULL COMMENT '救护车车辆送达时间',
`amb_contact_user_id` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL DEFAULT NULL COMMENT '救护车联系人id',
`amb_contact_user_name` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL DEFAULT NULL COMMENT '救护车联系人姓名',
`amb_contact_user_phone` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL DEFAULT NULL COMMENT '救护车联系人电话',
`amb_follow_user_id` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL DEFAULT NULL COMMENT '救护车跟车人id',
`amb_follow_user_name` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL DEFAULT NULL COMMENT '救护车跟车人姓名',
`amb_follow_user_phone` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL DEFAULT NULL COMMENT '救护车跟车人电话',
`com_car_num` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL DEFAULT NULL COMMENT '单位车牌号',
`com_car_arrive_time` datetime NULL DEFAULT NULL COMMENT '单位车辆派出时间',
`com_car_serve_time` datetime NULL DEFAULT NULL COMMENT '单位车辆送达时间',
`com_contact_user_id` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL DEFAULT NULL COMMENT '单位车联系人id',
`com_contact_user_name` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL DEFAULT NULL COMMENT '单位车联系人姓名',
`com_contact_user_phone` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL DEFAULT NULL COMMENT '单位车联系人电话',
`salvage_time` datetime NULL DEFAULT NULL COMMENT '救助时间',
`salvage_hospital` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL DEFAULT NULL COMMENT '救助医院',
`salvage_depart` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL DEFAULT NULL COMMENT '救助科室',
`salvage_doctor` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL DEFAULT NULL COMMENT '救助医生',
`salvage_register_time` datetime NULL DEFAULT NULL COMMENT '挂号时间',
`salvage_coordinate` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL DEFAULT NULL COMMENT '住院协调',
`salvage_operation` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL DEFAULT NULL COMMENT '手术时间(文字描述)',
`status` tinyint(1) NOT NULL DEFAULT 1 COMMENT '状态(1-正常,2-冻结)',
`del_flag` tinyint(1) NOT NULL DEFAULT 0 COMMENT '删除状态(0-正常,1-已删除)',
`create_by` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '创建人',
`create_time` datetime NULL DEFAULT NULL COMMENT '创建时间',
`update_by` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '更新人',
`update_time` datetime NULL DEFAULT NULL COMMENT '更新时间',
`memo` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '备注',
PRIMARY KEY (`id`) USING BTREE
) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_bin COMMENT = '应急单详情表' ROW_FORMAT = Dynamic;
-- ----------------------------
-- Table structure for emergency_order_intervene
-- ----------------------------
DROP TABLE IF EXISTS `emergency_order_intervene`;
CREATE TABLE `emergency_order_intervene` (
`id` varchar(36) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NOT NULL COMMENT '主键(应急单号)',
`type` char(1) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL DEFAULT NULL COMMENT '类型(0:图文 1:视频) ',
`is_fill` tinyint(1) NULL DEFAULT NULL COMMENT '是否补单 (0:否 1:是)',
`Initiator_type` char(1) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL DEFAULT NULL COMMENT '发起类型(0:120 1: 应急就医)',
`resource_id` varchar(36) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL DEFAULT NULL COMMENT '应急资源id(医院 aed 医疗点)',
`info_desc` varchar(1000) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL DEFAULT NULL COMMENT '救助信息描述',
`session_id` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL DEFAULT NULL COMMENT 'im会话id',
`session_now` tinyint(1) NULL DEFAULT 0 COMMENT '是否正在会话(0:否 1:是)',
`session_over_time` datetime NULL DEFAULT NULL COMMENT '会话结束时间',
`initiator_user_id` varchar(36) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL DEFAULT NULL COMMENT '发起人id',
`initiator_user_name` varchar(36) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL DEFAULT NULL COMMENT '发起人姓名',
`initiator_user_sex` varchar(36) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL DEFAULT NULL COMMENT '发起人性别',
`initiator_user_mobile` varchar(36) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL DEFAULT NULL COMMENT '发起人电话',
`initiator_user_id_card` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL DEFAULT NULL COMMENT '发起人身份证号',
`initiator_user_depart` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL DEFAULT NULL COMMENT '发起人部门code',
`initiator_user_avatar` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL DEFAULT NULL COMMENT '发起人头像',
`initiator_longitude` decimal(10, 6) NULL DEFAULT NULL COMMENT '发起人经度',
`initiator_latitude` decimal(10, 6) NULL DEFAULT NULL COMMENT '发起人纬度',
`salvage_user_id` varchar(36) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL DEFAULT NULL COMMENT '被救助人id',
`salvage_user_name` varchar(36) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL DEFAULT NULL COMMENT '被救助人姓名',
`salvage_user_sex` varchar(36) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL DEFAULT NULL COMMENT '被救助人性别',
`salvage_user_mobile` varchar(36) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL DEFAULT NULL COMMENT '被救助人电话',
`salvage_user_id_card` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL DEFAULT '' COMMENT '救助人身份证号',
`salvage_user_depart` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL DEFAULT NULL COMMENT '发起人部门code',
`salvage_user_avatar` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL DEFAULT NULL COMMENT '救助人头像',
`operation_user_id` varchar(36) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL DEFAULT NULL COMMENT '操作人员id',
`operation_user_name` varchar(36) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL DEFAULT NULL COMMENT '操作人员姓名',
`operation_user_sex` varchar(36) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL DEFAULT NULL COMMENT '操作人员性别',
`operation_user_mobile` varchar(36) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL DEFAULT NULL COMMENT '操作人员电话',
`operation_user_avatar` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL DEFAULT NULL COMMENT '操作人头像',
`major_user_id` varchar(36) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL DEFAULT NULL COMMENT '专业人员id',
`major_user_name` varchar(36) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL DEFAULT NULL COMMENT '专业人员姓名',
`major_user_sex` varchar(36) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL DEFAULT NULL COMMENT '专业人员性别',
`major_user_mobile` varchar(36) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL DEFAULT NULL COMMENT '专业人员电话',
`major_user_avatar` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL DEFAULT NULL COMMENT '专业人头像',
`station_user_id` varchar(36) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL DEFAULT NULL COMMENT '驻场人员id',
`station_user_name` varchar(36) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL DEFAULT NULL COMMENT '驻场人员姓名',
`station_user_sex` varchar(36) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL DEFAULT NULL COMMENT '驻场人员性别',
`station_user_mobile` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL DEFAULT NULL COMMENT '驻场人员电话',
`station_user_depart` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL DEFAULT NULL COMMENT '发起人部门code',
`station_user_avatar` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL DEFAULT NULL COMMENT '驻场人头像',
`station_business` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL DEFAULT NULL COMMENT '驻场人员派单业务',
`operation_response_time` datetime NULL DEFAULT NULL COMMENT '操作人员响应时间',
`operation_send_order_time` datetime NULL DEFAULT NULL COMMENT '操作人员派单时间',
`major_response_time` datetime NULL DEFAULT NULL COMMENT '专业人员响应时间',
`station_response_time` datetime NULL DEFAULT NULL COMMENT '驻场人员响应时间',
`station_rejection_time` datetime NULL DEFAULT NULL COMMENT '驻场人员拒单时间',
`major_salvage_opinion` varchar(1000) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL DEFAULT NULL COMMENT '专业人员救助意见',
`center_id` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL DEFAULT NULL COMMENT '应急中心id',
`order_over_time` datetime NULL DEFAULT NULL COMMENT '订单结束时间',
`send_order_hospital` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL DEFAULT NULL COMMENT '派单医院',
`order_status` char(1) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NOT NULL DEFAULT '0' COMMENT '应急单状态 0: 待处理 1:咨询中 2:已派单 3:待审核 4: 待就医 5: 已完成',
`is_dispatch` char(1) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL DEFAULT '0' COMMENT '派单状态 0:待处理 1:咨询中 2:待接单 3:驻场驳回 4:已接单 5: 已完成',
`detail_title` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL DEFAULT NULL COMMENT '应急小结 标题',
`status` tinyint(1) NOT NULL DEFAULT 1 COMMENT '状态(1-正常,2-冻结)',
`del_flag` tinyint(1) NOT NULL DEFAULT 0 COMMENT '删除状态(0-正常,1-已删除)',
`create_by` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '创建人',
`create_time` datetime NULL DEFAULT NULL COMMENT '创建时间',
`update_by` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '更新人',
`update_time` datetime NULL DEFAULT NULL COMMENT '更新时间',
`memo` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '备注',
PRIMARY KEY (`id`) USING BTREE,
UNIQUE INDEX `idx_session`(`session_id` ASC) USING BTREE
) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_bin COMMENT = '应急单基础表' ROW_FORMAT = Dynamic;
-- ----------------------------
-- Table structure for emergency_order_send_record
-- ----------------------------
DROP TABLE IF EXISTS `emergency_order_send_record`;
CREATE TABLE `emergency_order_send_record` (
`id` varchar(36) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NOT NULL COMMENT '主键',
`order_id` varchar(36) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NOT NULL COMMENT '应急单id',
`station_user_id` varchar(36) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NOT NULL COMMENT '驻场人员id',
`station_user_name` varchar(36) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL DEFAULT NULL COMMENT '驻场人员姓名',
`station_user_sex` varchar(36) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL DEFAULT NULL COMMENT '驻场人员性别',
`station_user_depart` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL DEFAULT NULL COMMENT '驻场人员部门:二级-三级(使用\',\'隔开)',
`accept` char(1) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NOT NULL DEFAULT '0' COMMENT '是否接单(0:待处理 1:已接单 2:已拒单 3:已完成)',
`send_order_hospital` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL DEFAULT NULL COMMENT '派单医院',
`station_business` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL DEFAULT NULL COMMENT '派单业务',
`transfer_order_time` datetime NULL DEFAULT NULL COMMENT '转单时间',
`refuse_cause` varchar(1000) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL DEFAULT NULL COMMENT '拒绝原因',
`status` tinyint(1) NOT NULL DEFAULT 1 COMMENT '状态(1-正常,2-冻结)',
`del_flag` tinyint(1) NOT NULL DEFAULT 0 COMMENT '删除状态(0-正常,1-已删除)',
`create_by` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '创建人',
`create_time` datetime NULL DEFAULT NULL COMMENT '创建时间',
`update_by` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '更新人',
`update_time` datetime NULL DEFAULT NULL COMMENT '更新时间',
`memo` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '备注',
PRIMARY KEY (`id`) USING BTREE
) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_bin COMMENT = '派单记录表' ROW_FORMAT = Dynamic;
-- ----------------------------
-- Table structure for emergency_profession_user
-- ----------------------------
DROP TABLE IF EXISTS `emergency_profession_user`;
CREATE TABLE `emergency_profession_user` (
`user_id` varchar(36) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NOT NULL COMMENT '用户id',
`username` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NOT NULL COMMENT '账号 冗余字段 不可修改',
`realname` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NOT NULL COMMENT '姓名 冗余字段',
`avatar` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL DEFAULT NULL COMMENT '头像',
`type` varchar(10) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NOT NULL COMMENT '人员类型 5:操作人员 6:专业人员',
`center_id` varchar(36) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NOT NULL COMMENT '中心id',
`post` varchar(36) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL DEFAULT NULL COMMENT '职称',
`school` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL DEFAULT NULL COMMENT '毕业院校',
`edu` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL DEFAULT NULL COMMENT '学历',
`good_at` varchar(1000) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL DEFAULT NULL COMMENT '擅长',
`create_time` datetime NULL DEFAULT NULL COMMENT '创建时间',
`create_by` varchar(30) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL DEFAULT NULL COMMENT '创建人',
`update_time` datetime NULL DEFAULT NULL COMMENT '更新时间',
`update_by` varchar(30) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL DEFAULT NULL COMMENT '更新人',
`del_flag` tinyint NOT NULL DEFAULT 0 COMMENT '删除标记:0:否,1: 是',
`memo` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL DEFAULT NULL COMMENT '备注',
PRIMARY KEY (`user_id`) USING BTREE
) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_bin ROW_FORMAT = Dynamic;
-- ----------------------------
-- Table structure for emergency_resource
-- ----------------------------
DROP TABLE IF EXISTS `emergency_resource`;
CREATE TABLE `emergency_resource` (
`id` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '主键',
`name` varchar(100) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NOT NULL COMMENT '资源名称',
`address` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '详细地址',
`mobile` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '联系电话',
`longitude` decimal(10, 6) NOT NULL COMMENT '经度',
`latitude` decimal(10, 6) NOT NULL COMMENT '纬度',
`type` varchar(10) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NOT NULL COMMENT '(1:油田医院 2:合作医院 3:医疗点 4:aed 5:救护车 6:护理员)',
`aidrange` text CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL COMMENT '救治范围',
`gd_id` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '高德地图数据id',
`url` varchar(255) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '网址',
`province` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '省',
`city` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '市',
`area` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '区',
`level` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '医院等级',
`img` varchar(255) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '图片',
`resource_desc` varchar(1023) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '简介',
`status` tinyint(1) NOT NULL DEFAULT 1 COMMENT '状态(1-正常,2-冻结)',
`del_flag` tinyint(1) NOT NULL DEFAULT 0 COMMENT '删除状态(0-正常,1-已删除)',
`create_by` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '创建人',
`create_time` datetime NULL DEFAULT NULL COMMENT '创建时间',
`update_by` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '更新人',
`update_time` datetime NULL DEFAULT NULL COMMENT '更新时间',
`memo` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '备注',
PRIMARY KEY (`id`) USING BTREE
) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci COMMENT = '应急资源表' ROW_FORMAT = Dynamic;
-- ----------------------------
-- Table structure for emergency_schedule_custom
-- ----------------------------
DROP TABLE IF EXISTS `emergency_schedule_custom`;
CREATE TABLE `emergency_schedule_custom` (
`id` varchar(36) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NOT NULL COMMENT '主键',
`schedule_time` date NOT NULL COMMENT '排班时间',
`type` char(1) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NOT NULL COMMENT '类型(0:上午 1:下午)',
`user_type` char(1) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL DEFAULT NULL COMMENT '人员类型(0:操作人员 1: 专业人员)',
`user_id` varchar(36) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL DEFAULT NULL COMMENT '人员id',
`user_name` varchar(36) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL DEFAULT NULL COMMENT '人员姓名',
`user_sex` varchar(36) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL DEFAULT NULL COMMENT '人员性别',
`status` tinyint(1) NOT NULL DEFAULT 1 COMMENT '状态(1-正常,2-冻结)',
`del_flag` tinyint(1) NOT NULL DEFAULT 0 COMMENT '删除状态(0-正常,1-已删除)',
`create_by` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '创建人',
`create_time` datetime NULL DEFAULT NULL COMMENT '创建时间',
`update_by` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '更新人',
`update_time` datetime NULL DEFAULT NULL COMMENT '更新时间',
`memo` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '备注',
PRIMARY KEY (`id`) USING BTREE
) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_bin COMMENT = '自定义排班表' ROW_FORMAT = Dynamic;
-- ----------------------------
-- Table structure for emergency_schedule_default
-- ----------------------------
DROP TABLE IF EXISTS `emergency_schedule_default`;
CREATE TABLE `emergency_schedule_default` (
`id` varchar(36) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NOT NULL COMMENT '主键(应急单号)',
`week` int NULL DEFAULT NULL COMMENT '周几',
`type` char(1) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL DEFAULT NULL COMMENT '类型(0:上午 1:下午)',
`user_type` char(1) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL DEFAULT NULL COMMENT '人员类型(0:操作人员 1: 专业人员)',
`user_id` varchar(36) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL DEFAULT NULL COMMENT '人员id',
`user_name` varchar(36) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL DEFAULT NULL COMMENT '人员姓名',
`user_sex` varchar(36) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL DEFAULT NULL COMMENT '人员性别',
`status` tinyint(1) NOT NULL DEFAULT 1 COMMENT '状态(1-正常,2-冻结)',
`del_flag` tinyint(1) NOT NULL DEFAULT 0 COMMENT '删除状态(0-正常,1-已删除)',
`create_by` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '创建人',
`create_time` datetime NULL DEFAULT NULL COMMENT '创建时间',
`update_by` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '更新人',
`update_time` datetime NULL DEFAULT NULL COMMENT '更新时间',
`memo` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '备注',
PRIMARY KEY (`id`) USING BTREE
) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_bin COMMENT = '默认排班表' ROW_FORMAT = Dynamic;
-- ----------------------------
-- Table structure for emergency_schedule_record
-- ----------------------------
DROP TABLE IF EXISTS `emergency_schedule_record`;
CREATE TABLE `emergency_schedule_record` (
`id` varchar(36) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NOT NULL COMMENT '主键',
`schedule_time` date NOT NULL COMMENT '排班时间',
`type` char(1) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NOT NULL COMMENT '类型(0:上午 1:下午)',
`user_type` char(1) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL DEFAULT NULL COMMENT '人员类型(0:操作人员 1: 专业人员)',
`user_id` varchar(36) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL DEFAULT NULL COMMENT '人员id',
`user_name` varchar(36) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL DEFAULT NULL COMMENT '人员姓名',
`user_sex` varchar(36) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL DEFAULT NULL COMMENT '人员性别',
`status` tinyint(1) NOT NULL DEFAULT 1 COMMENT '状态(1-正常,2-冻结)',
`del_flag` tinyint(1) NOT NULL DEFAULT 0 COMMENT '删除状态(0-正常,1-已删除)',
`create_by` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '创建人',
`create_time` datetime NULL DEFAULT NULL COMMENT '创建时间',
`update_by` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '更新人',
`update_time` datetime NULL DEFAULT NULL COMMENT '更新时间',
`memo` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '备注',
PRIMARY KEY (`id`) USING BTREE
) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_bin COMMENT = '自定义排班表' ROW_FORMAT = Dynamic;
-- ----------------------------
-- Table structure for emergency_schedules_new_item
-- ----------------------------
DROP TABLE IF EXISTS `emergency_schedules_new_item`;
CREATE TABLE `emergency_schedules_new_item` (
`id` varchar(36) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NOT NULL COMMENT '主键',
`schedules_id` varchar(36) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL DEFAULT NULL COMMENT '排班计划id',
`user_type` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL DEFAULT NULL COMMENT '人员类型(0:操作人员 1:专业人员)',
`user_id` varchar(36) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL DEFAULT NULL COMMENT '人员Id',
`user_name` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL DEFAULT NULL COMMENT '人员姓名',
PRIMARY KEY (`id`) USING BTREE
) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_bin COMMENT = '排班分表' ROW_FORMAT = Dynamic;
-- ----------------------------
-- Table structure for emergency_serious_disease
-- ----------------------------
DROP TABLE IF EXISTS `emergency_serious_disease`;
CREATE TABLE `emergency_serious_disease` (
`id` varchar(32) CHARACTER SET utf32 COLLATE utf32_general_ci NOT NULL COMMENT '大病就医录入',
`is_fill` tinyint(1) NULL DEFAULT NULL COMMENT '是否补单',
`user_id` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL DEFAULT NULL COMMENT '就医人员',
`hospital_id` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL DEFAULT NULL COMMENT '医院',
`medical_card_no` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL DEFAULT NULL COMMENT '就诊卡号',
`register_category` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL DEFAULT NULL COMMENT '挂号类别 ',
`reservation_time` datetime NULL DEFAULT NULL COMMENT '驻场人员预约到的时间',
`desire_time` datetime NULL DEFAULT NULL COMMENT '患者填写的期望预约到的时间',
`reservation_office` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL DEFAULT NULL COMMENT '预约科室',
`reservation_doctor` varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL DEFAULT NULL COMMENT '患者预约医生',
`disease_describe` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL DEFAULT NULL COMMENT '病情描述',
`special_requirements` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL DEFAULT NULL COMMENT '特殊要求',
`sex` char(1) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL DEFAULT NULL COMMENT '性别',
`realname` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL DEFAULT NULL COMMENT '真实姓名',
`station_user_id` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL DEFAULT NULL COMMENT '驻场人员',
`reservation_no` varchar(30) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL DEFAULT NULL COMMENT '预约号',
`id_no` varchar(30) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL DEFAULT NULL COMMENT '身份证号',
`tel_phone` varchar(11) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL DEFAULT NULL COMMENT '手机号',
`age` int NULL DEFAULT NULL COMMENT '年龄',
`del_flag` tinyint(1) NOT NULL DEFAULT 0 COMMENT '删除状态(0-正常,1-已删除)',
`state` tinyint(1) NULL DEFAULT NULL COMMENT '状态 1未派单 2已派单 3已接单 4已预约 5已完成 6操作人员驳回 7驻场人员驳回 8 超时未接单',
`status` tinyint(1) NOT NULL DEFAULT 1 COMMENT '状态(1-正常,2-冻结)',
`operator_id` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL DEFAULT NULL COMMENT '操作人员',
`center_id` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL DEFAULT NULL COMMENT '应急中心id',
`create_by` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '创建人',
`create_time` datetime NULL DEFAULT NULL COMMENT '创建时间',
`update_by` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '更新人',
`update_time` datetime NULL DEFAULT NULL COMMENT '更新时间',
`memo` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '备注',
`rejection_reason` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL DEFAULT NULL COMMENT '操作人员驳回原因',
`rejection_time` datetime NULL DEFAULT NULL COMMENT '操作人员驳回时间',
`send_order_time` datetime NULL DEFAULT NULL COMMENT '派单时间',
`user_depart` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL DEFAULT NULL COMMENT '部门',
`station_rejection_reason` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL DEFAULT NULL COMMENT '驻场人员驳回原因',
`station_rejection_time` datetime NULL DEFAULT NULL COMMENT '驻场人员驳回时间',
`accept_station_time` datetime NULL DEFAULT NULL COMMENT '驻场人员接单时间',
`desire_finish_time` datetime NULL DEFAULT NULL COMMENT '预约完成时间',
`hospital_name` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL DEFAULT NULL COMMENT '医院名称',
`station_user_name` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL DEFAULT NULL COMMENT '驻场人员姓名',
PRIMARY KEY (`id`) USING BTREE
) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_bin COMMENT = '大病就医' ROW_FORMAT = Dynamic;
-- ----------------------------
-- Table structure for sys_notify_sms_phone
-- ----------------------------
DROP TABLE IF EXISTS `sys_notify_sms_phone`;
CREATE TABLE `sys_notify_sms_phone` (
`id` varchar(36) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '主键',
`phone_numbers` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '短信通知手机号',
`valid_status` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '有效标志',
`busi_type` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '业务类型',
`remark` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '备注',
`create_date` datetime NULL DEFAULT NULL COMMENT '创建日期',
`update_date` datetime NULL DEFAULT NULL COMMENT '更新日期',
PRIMARY KEY (`id`) USING BTREE,
INDEX `valid_status`(`valid_status` ASC) USING BTREE,
INDEX `busi_type`(`busi_type` ASC) USING BTREE
) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci ROW_FORMAT = Dynamic;
-- ----------------------------
-- Table structure for tbl_qimo_notice
-- ----------------------------
DROP TABLE IF EXISTS `tbl_qimo_notice`;
CREATE TABLE `tbl_qimo_notice` (
`id` varchar(200) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NOT NULL COMMENT '主键',
`call_no` varchar(200) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '主叫号码',
`Called_No` varchar(200) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '被叫号码',
`Call_Sheet_ID` varchar(200) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '通话记录ID',
`ref_Call_SheetId` varchar(200) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '转接前通话的CallSheetID',
`Call_ID` varchar(200) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '通话ID',
`Call_Type` varchar(200) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '通话类型',
`Ring` datetime NULL DEFAULT NULL COMMENT '通话振铃时间',
`Ringing_Date` datetime NULL DEFAULT NULL COMMENT '被叫振铃开始时间',
`Ringing_Timestamp` varchar(50) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL,
`Begin` datetime NULL DEFAULT NULL COMMENT '通话接通时间',
`End` datetime NULL DEFAULT NULL COMMENT '通话结束时间',
`Queue_Time` datetime NULL DEFAULT NULL COMMENT '来电进入技能组时间',
`Agent` varchar(200) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '处理坐席的工号',
`Exten` varchar(200) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '处理坐席的工号',
`Agent_Name` varchar(200) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '处理坐席的姓名',
`Queue` varchar(200) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '通话进入的技能组名称',
`State` varchar(200) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '接听状态',
`Call_State` varchar(200) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '事件状态',
`Action_ID` varchar(200) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '通过接口调用时',
`Webcall_Action_ID` varchar(200) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '通过调用webcall接口',
`Record_File` varchar(200) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '通话录音文件名',
`File_Server` varchar(200) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '录音服务器',
`Province` varchar(200) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '目标号码的省',
`District` varchar(200) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '目标号码的市',
`IVRKEY` varchar(200) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '通话在系统中选择的按键菜单',
`Account_Id` varchar(200) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '账户编号字段',
`Account_Name` varchar(200) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '账户名称字段',
`create_date` datetime NULL DEFAULT NULL COMMENT '创建时间',
`create_by` varchar(60) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '创建人',
`receive_user_id` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '操作人员ID',
`is_read` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '是否已读',
PRIMARY KEY (`id`) USING BTREE
) ENGINE = InnoDB CHARACTER SET = utf8mb3 COLLATE = utf8mb3_general_ci COMMENT = '容联七陌通知信息' ROW_FORMAT = Dynamic;
-- ----------------------------
-- Table structure for tbl_user_help
-- ----------------------------
DROP TABLE IF EXISTS `tbl_user_help`;
CREATE TABLE `tbl_user_help` (
`id` varchar(60) CHARACTER SET utf8mb4 COLLATE utf8mb4_persian_ci NOT NULL COMMENT '主键',
`user_id` varchar(60) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '用户ID',
`lat` decimal(20, 10) NULL DEFAULT NULL COMMENT '求助纬度',
`lon` decimal(20, 10) NULL DEFAULT NULL COMMENT '求助经度',
`type` varchar(10) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '求助方式',
`status` varchar(10) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '受理状态',
`help_time` datetime NULL DEFAULT NULL COMMENT '求助时间',
`voice_url` varchar(100) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '求助录音',
`treat_type` varchar(10) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '就医类型',
`start_time` datetime NULL DEFAULT NULL COMMENT '咨询开始时间',
`end_time` datetime NULL DEFAULT NULL COMMENT '咨询结束时间',
`score` int NULL DEFAULT NULL COMMENT '用户评分',
`score_time` datetime NULL DEFAULT NULL COMMENT '评分时间',
`receive_user_id` varchar(60) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '受理人',
`score_status` varchar(20) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '是否评分',
`evaluate` varchar(1000) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '评价',
`update_date` datetime NULL DEFAULT NULL COMMENT '接受时间',
`out_mobile` varchar(255) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '外部电话呼入',
`screen_status` varchar(1) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT '1' COMMENT '大屏弹出状态',
`screen_type` varchar(5) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '大屏类型,1西安2银川',
`sex` varchar(1) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '1:女 2:男',
`center_id` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL DEFAULT NULL COMMENT '应急中心id',
PRIMARY KEY (`id`) USING BTREE,
INDEX `user_id`(`user_id` ASC) USING BTREE,
INDEX `receive_user_id`(`receive_user_id` ASC) USING BTREE,
INDEX `status`(`status` ASC) USING BTREE,
INDEX `help_time`(`help_time` ASC) USING BTREE,
INDEX `index_screen_type`(`screen_type` ASC) USING BTREE
) ENGINE = InnoDB CHARACTER SET = utf8mb3 COLLATE = utf8mb3_general_ci COMMENT = '用户求助信息' ROW_FORMAT = Dynamic;
-- ----------------------------
-- Table structure for tbl_video_mac
-- ----------------------------
DROP TABLE IF EXISTS `tbl_video_mac`;
CREATE TABLE `tbl_video_mac` (
`id` varchar(60) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NOT NULL COMMENT '主键',
`video_name` varchar(60) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '采集点名称',
`video_mac` varchar(60) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '采集点MAC地址',
`order_no` varchar(60) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '排序',
`create_date` datetime NULL DEFAULT NULL COMMENT '创建时间',
`create_by` varchar(60) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '创建人',
`update_date` datetime NULL DEFAULT NULL COMMENT '修改时间',
`update_by` varchar(60) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '修改人',
`video_des` text CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL COMMENT '采集点描述',
`is_default` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '是否默认',
PRIMARY KEY (`id`) USING BTREE
) ENGINE = InnoDB CHARACTER SET = utf8mb3 COLLATE = utf8mb3_general_ci COMMENT = '摄像头及MAC地址映射信息' ROW_FORMAT = Dynamic;
-- ----------------------------
-- Table structure for zy_ambulance_data
-- ----------------------------
DROP TABLE IF EXISTS `zy_ambulance_data`;
CREATE TABLE `zy_ambulance_data` (
`id` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NOT NULL COMMENT '主键ID',
`patient_id` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL DEFAULT NULL COMMENT '患者ID',
`patient_name` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL DEFAULT NULL COMMENT '患者姓名',
`gender` int NULL DEFAULT NULL COMMENT '性别 0-未知 1-男 2-女',
`id_card_type` int NULL DEFAULT NULL COMMENT '证件类型 1-身份证',
`id_card_number` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL DEFAULT NULL COMMENT '证件号码',
`user_id` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL DEFAULT NULL COMMENT '用户ID(如果可以匹配到)',
`org_code` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL DEFAULT NULL COMMENT '部门Code(如果可以匹配到)',
`age_type` int NULL DEFAULT NULL COMMENT '年龄类型 1-年 2-月 3-天',
`age` int NULL DEFAULT NULL COMMENT '年龄',
`phone` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL DEFAULT NULL COMMENT '联系电话',
`mpds_category_id` int NULL DEFAULT NULL COMMENT '病人MPDS类型 0-默认值 1-创伤',
`mpds_data` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL DEFAULT NULL COMMENT '创伤类型病人MPDS症状小类 多个小类逗号隔开 1-交通、运输事故 3-高处坠落 4,-暴力袭击/性侵犯 6,-动物咬伤/攻击 7-烧伤(烫伤)/爆炸伤 8,-锐器刺伤/枪伤/贯通伤 9,-触电/雷击伤 10,-创伤(其他创伤) 35,-冬季运动损伤 36-机械损伤',
`attack_address` varchar(512) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL DEFAULT NULL COMMENT '发病地点',
`injury_level` int NULL DEFAULT NULL COMMENT '病情判断 0-默认 1-濒危 2-危重 3-急症 4-非急症 5-死亡',
`start_time` datetime NULL DEFAULT NULL COMMENT '救护车出发时间',
`arrive_scene_time` datetime NULL DEFAULT NULL COMMENT '到达现场时间',
`leave_scene_time` datetime NULL DEFAULT NULL COMMENT '离开现场时间',
`arrive_hospital_time` datetime NULL DEFAULT NULL COMMENT '到达医院时间',
`early_warning_time` datetime NULL DEFAULT NULL COMMENT '院前预警时间',
`diastolic_pressure` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL DEFAULT NULL COMMENT '舒张压',
`systolic_pressure` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL DEFAULT NULL COMMENT '收缩压',
`heart_rate` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL DEFAULT NULL COMMENT '心率',
`breathing_rate` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL DEFAULT NULL COMMENT '呼吸率',
`temperature` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL DEFAULT NULL COMMENT '体温',
`blood_sugar` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL DEFAULT NULL COMMENT '血糖',
`blood_oxygen_saturation` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL DEFAULT NULL COMMENT '血氧饱和度',
`pulse` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL DEFAULT NULL COMMENT '脉搏',
`create_time` datetime NULL DEFAULT NULL COMMENT '创建时间',
`create_by` varchar(30) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL DEFAULT NULL COMMENT '创建人',
`update_time` datetime NULL DEFAULT NULL COMMENT '更新时间',
`update_by` varchar(30) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL DEFAULT NULL COMMENT '更新人',
`del_flag` tinyint NOT NULL DEFAULT 0 COMMENT '软删除:0.未删除,1.已删除',
`memo` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL DEFAULT NULL COMMENT '备注',
PRIMARY KEY (`id`) USING BTREE
) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_bin COMMENT = '紫云救护车数据表' ROW_FORMAT = Dynamic;
SET FOREIGN_KEY_CHECKS = 1;
+23964
View File
File diff suppressed because one or more lines are too long
+917
View File
@@ -0,0 +1,917 @@
/*
Navicat Premium Dump SQL
Source Server : 新疆大佬环境
Source Server Type : MySQL
Source Server Version : 80400 (8.4.0)
Source Host : home.mcrm.vip:13308
Source Schema : xj_watch
Target Server Type : MySQL
Target Server Version : 80400 (8.4.0)
File Encoding : 65001
Date: 11/07/2025 15:16:23
*/
SET NAMES utf8mb4;
SET FOREIGN_KEY_CHECKS = 0;
-- ----------------------------
-- Table structure for archives_body_type
-- ----------------------------
DROP TABLE IF EXISTS `archives_body_type`;
CREATE TABLE `archives_body_type` (
`id` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '主键',
`user_id` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '用户id',
`type` int NOT NULL COMMENT '类型(1:心率 5:体温)',
`data_source` int NOT NULL COMMENT '来源(字典data_source_dict 1:体检报告 2:员工自行维护 3:管理员后台维护 4:体重秤测量结果 5:手表监测数据)',
`data_value` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '数据值',
`create_by` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '创建人登录名称',
`create_date` datetime NULL DEFAULT NULL COMMENT '创建日期',
PRIMARY KEY (`id`) USING BTREE
) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci COMMENT = '档案-基本体格' ROW_FORMAT = Dynamic;
-- ----------------------------
-- Table structure for dept_statistic_data
-- ----------------------------
DROP TABLE IF EXISTS `dept_statistic_data`;
CREATE TABLE `dept_statistic_data` (
`id` bigint NOT NULL COMMENT '主键',
`org_code` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '二级部门',
`org_code_leaf` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '三级部门',
`user_count` int NULL DEFAULT NULL COMMENT '员工人数',
`device_num` int NULL DEFAULT NULL COMMENT '入库设备数',
`allot_device_num` int NULL DEFAULT NULL COMMENT '分配设备数',
`seven_day_num` int NULL DEFAULT NULL COMMENT '七日活跃次数',
`fourteen_day_num` int NULL DEFAULT NULL COMMENT '十四日活跃次数',
`heart_rate_error_num` int NULL DEFAULT NULL COMMENT '心率异常数',
`spo_error_num` int NULL DEFAULT NULL COMMENT '血氧异常数',
`stress_error_num` int NULL DEFAULT NULL COMMENT '压力异常数',
`temp_error_num` int NULL DEFAULT NULL COMMENT '睡眠异常数',
`data_date` date NULL DEFAULT NULL COMMENT '数据日期',
`thirty_day_num` int NULL DEFAULT NULL COMMENT '三十日活跃次数',
`year_day_num` int NULL DEFAULT NULL COMMENT '近一年活跃次数',
PRIMARY KEY (`id`) USING BTREE
) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci ROW_FORMAT = Dynamic;
-- ----------------------------
-- Table structure for user_record_sports_day
-- ----------------------------
DROP TABLE IF EXISTS `user_record_sports_day`;
CREATE TABLE `user_record_sports_day` (
`id` bigint NOT NULL COMMENT '主键',
`user_id` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '用户ID',
`total_sports_time` double NULL DEFAULT 0 COMMENT '各项运动总时长(分钟)',
`total_consume_energy` double NULL DEFAULT 0 COMMENT '各项运动总消耗(千卡)',
`record_date` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '记录日期',
`walk_sum` int NULL DEFAULT NULL COMMENT '总步数',
`walk_time` double NULL DEFAULT NULL COMMENT '自记步行总时长',
`walk_energy` double NULL DEFAULT NULL COMMENT '步行总消耗',
PRIMARY KEY (`id`) USING BTREE
) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci COMMENT = '用户自主记录运动数据日汇总表' ROW_FORMAT = Dynamic;
-- ----------------------------
-- Table structure for user_record_sports_info
-- ----------------------------
DROP TABLE IF EXISTS `user_record_sports_info`;
CREATE TABLE `user_record_sports_info` (
`id` bigint NOT NULL COMMENT 'ID',
`user_id` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '用户ID',
`sports_code` int NULL DEFAULT NULL COMMENT '运动类型编码',
`sports` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '运动类型',
`sports_time` double NULL DEFAULT 0 COMMENT '本次运动时长(分钟)',
`consume_energy` double NULL DEFAULT 0 COMMENT '本次运消耗(千卡)',
`record_date` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '记录日期',
`create_time` datetime NULL DEFAULT NULL COMMENT '添加时间',
PRIMARY KEY (`id`) USING BTREE
) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci COMMENT = '用户自主记录运动数据明细表' ROW_FORMAT = Dynamic;
-- ----------------------------
-- Table structure for user_we_chat_sports_day
-- ----------------------------
DROP TABLE IF EXISTS `user_we_chat_sports_day`;
CREATE TABLE `user_we_chat_sports_day` (
`id` bigint NOT NULL COMMENT 'ID',
`user_id` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '用户ID',
`step` int NULL DEFAULT NULL COMMENT '步数',
`step_date` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '运动日期(yyyy-MM-dd)',
`step_time` int NULL DEFAULT NULL COMMENT '步行时长(单位:分钟)',
`energy` int NULL DEFAULT NULL COMMENT '步行消耗热量(千卡)',
`uni_id` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '用户小程序uniID',
`create_time` datetime NULL DEFAULT NULL COMMENT '创建时间',
PRIMARY KEY (`id`) USING BTREE,
UNIQUE INDEX `unique_user_date`(`user_id` ASC, `step_date` ASC) USING BTREE,
INDEX `index_user_id`(`user_id` ASC) USING BTREE,
INDEX `index_step_date`(`step_date` ASC) USING BTREE
) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci ROW_FORMAT = Dynamic;
-- ----------------------------
-- Table structure for watch_abnormal_record
-- ----------------------------
DROP TABLE IF EXISTS `watch_abnormal_record`;
CREATE TABLE `watch_abnormal_record` (
`id` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL,
`type` tinyint(1) NULL DEFAULT NULL COMMENT '心率1 血氧2 体温3 压力4 ',
`max_id` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL,
`user_id` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '用户id',
PRIMARY KEY (`id`) USING BTREE
) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci ROW_FORMAT = Dynamic;
-- ----------------------------
-- Table structure for watch_bind_his
-- ----------------------------
DROP TABLE IF EXISTS `watch_bind_his`;
CREATE TABLE `watch_bind_his` (
`id` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '主键',
`create_by` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '创建人登录名称',
`create_date` datetime NULL DEFAULT NULL COMMENT '创建日期',
`update_by` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '更新人登录名称',
`update_date` datetime NULL DEFAULT NULL COMMENT '更新日期',
`watch_no` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '手表编码',
`bind_user_id` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '绑定用户',
`bind_date` date NULL DEFAULT NULL COMMENT '绑定日期',
`bind_end_date` date NULL DEFAULT NULL COMMENT '绑定结束日期',
`dept_id` varchar(60) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '当前归属部门',
`org_code` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '部门编码',
PRIMARY KEY (`id`) USING BTREE
) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci ROW_FORMAT = Dynamic;
-- ----------------------------
-- Table structure for watch_bind_his_bak
-- ----------------------------
DROP TABLE IF EXISTS `watch_bind_his_bak`;
CREATE TABLE `watch_bind_his_bak` (
`id` varchar(36) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '主键',
`create_by` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '创建人登录名称',
`create_date` datetime NULL DEFAULT NULL COMMENT '创建日期',
`update_by` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '更新人登录名称',
`update_date` datetime NULL DEFAULT NULL COMMENT '更新日期',
`watch_no` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '手表编码',
`bind_user_id` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '绑定用户',
`bind_date` date NULL DEFAULT NULL COMMENT '绑定日期',
`bind_end_date` date NULL DEFAULT NULL COMMENT '绑定结束日期',
`dept_id` varchar(60) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '当前归属部门',
`org_code` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '部门编码',
PRIMARY KEY (`id`) USING BTREE,
INDEX `uni_org_code`(`org_code` ASC) USING BTREE COMMENT '部门编码'
) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci ROW_FORMAT = Dynamic;
-- ----------------------------
-- Table structure for watch_bind_his_copy1
-- ----------------------------
DROP TABLE IF EXISTS `watch_bind_his_copy1`;
CREATE TABLE `watch_bind_his_copy1` (
`id` varchar(36) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '主键',
`create_by` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '创建人登录名称',
`create_date` datetime NULL DEFAULT NULL COMMENT '创建日期',
`update_by` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '更新人登录名称',
`update_date` datetime NULL DEFAULT NULL COMMENT '更新日期',
`watch_no` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '手表编码',
`bind_user_id` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '绑定用户',
`bind_date` date NULL DEFAULT NULL COMMENT '绑定日期',
`bind_end_date` date NULL DEFAULT NULL COMMENT '绑定结束日期',
`dept_id` varchar(60) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '当前归属部门',
PRIMARY KEY (`id`) USING BTREE
) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci ROW_FORMAT = Dynamic;
-- ----------------------------
-- Table structure for watch_bind_his_copy2
-- ----------------------------
DROP TABLE IF EXISTS `watch_bind_his_copy2`;
CREATE TABLE `watch_bind_his_copy2` (
`id` varchar(36) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '主键',
`create_by` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '创建人登录名称',
`create_date` datetime NULL DEFAULT NULL COMMENT '创建日期',
`update_by` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '更新人登录名称',
`update_date` datetime NULL DEFAULT NULL COMMENT '更新日期',
`watch_no` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '手表编码',
`bind_user_id` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '绑定用户',
`bind_date` date NULL DEFAULT NULL COMMENT '绑定日期',
`bind_end_date` date NULL DEFAULT NULL COMMENT '绑定结束日期',
`dept_id` varchar(60) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '当前归属部门',
`org_code` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '部门编码',
PRIMARY KEY (`id`) USING BTREE
) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci ROW_FORMAT = Dynamic;
-- ----------------------------
-- Table structure for watch_data
-- ----------------------------
DROP TABLE IF EXISTS `watch_data`;
CREATE TABLE `watch_data` (
`id` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '主键',
`userid` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '用户ID',
`username` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '用户名',
`orgcode` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '机构编码',
`unit` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '单位',
`department` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '部门',
`watch_no` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '手表编码',
`type` int NULL DEFAULT NULL COMMENT '监测类型 1:心率 2血氧 3压力 4睡眠 5 体温 6 锻炼 7 步数\'',
`data_value` double(10, 2) NULL DEFAULT NULL COMMENT '值',
`last_update_time` date NULL DEFAULT NULL COMMENT '最后更新时间',
PRIMARY KEY (`id`) USING BTREE,
INDEX `idx_user_id`(`userid` ASC) USING BTREE,
INDEX `idx_last_update_time`(`last_update_time` ASC) USING BTREE
) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci ROW_FORMAT = Dynamic;
-- ----------------------------
-- Table structure for watch_data_calorie
-- ----------------------------
DROP TABLE IF EXISTS `watch_data_calorie`;
CREATE TABLE `watch_data_calorie` (
`id` varchar(36) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '主键',
`watch_no` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '手表编码',
`data_value` bigint NULL DEFAULT NULL COMMENT '数据值',
`sdc_date` date NULL DEFAULT NULL COMMENT '产生日期',
`bind_user_id` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '绑定用户',
`data_date` date NULL DEFAULT NULL COMMENT '绑定日期',
`max_id` varchar(60) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '数据中心最大ID',
PRIMARY KEY (`id`) USING BTREE,
INDEX `watch_no`(`watch_no` ASC) USING BTREE,
INDEX `bind_user_id`(`bind_user_id` ASC) USING BTREE,
INDEX `data_date`(`data_date` ASC) USING BTREE
) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci ROW_FORMAT = Dynamic;
-- ----------------------------
-- Table structure for watch_data_day
-- ----------------------------
DROP TABLE IF EXISTS `watch_data_day`;
CREATE TABLE `watch_data_day` (
`id` bigint NOT NULL COMMENT '主键',
`user_id` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '用户id',
`watch_no` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '手表编号',
`data_date` datetime NULL DEFAULT NULL COMMENT '数据日期',
`max` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '最大值',
`min` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '最小值',
`avg` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '平均值',
PRIMARY KEY (`id`) USING BTREE
) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci ROW_FORMAT = Dynamic;
-- ----------------------------
-- Table structure for watch_data_detail
-- ----------------------------
DROP TABLE IF EXISTS `watch_data_detail`;
CREATE TABLE `watch_data_detail` (
`id` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '主键',
`userid` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '用户ID',
`username` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '用户名',
`orgcode` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '机构编码',
`unit` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '单位',
`department` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '部门',
`watch_no` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '手表编码',
`type` int NULL DEFAULT NULL COMMENT '监测类型 1:心率 2血氧 3压力 4睡眠 5 体温 6 锻炼 7 步数',
`last_update_time` datetime NULL DEFAULT NULL COMMENT '最后更新时间',
PRIMARY KEY (`id`) USING BTREE
) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci ROW_FORMAT = Dynamic;
-- ----------------------------
-- Table structure for watch_data_distance
-- ----------------------------
DROP TABLE IF EXISTS `watch_data_distance`;
CREATE TABLE `watch_data_distance` (
`id` varchar(36) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '主键',
`watch_no` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '手表编码',
`data_value` bigint NULL DEFAULT NULL COMMENT '数据值',
`sdc_date` date NULL DEFAULT NULL COMMENT '产生日期',
`bind_user_id` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '绑定用户',
`data_date` date NULL DEFAULT NULL COMMENT '绑定日期',
`max_id` varchar(60) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '数据中心最大ID',
PRIMARY KEY (`id`) USING BTREE,
INDEX `watch_no`(`watch_no` ASC) USING BTREE,
INDEX `bind_user_id`(`bind_user_id` ASC) USING BTREE,
INDEX `data_date`(`data_date` ASC) USING BTREE
) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci ROW_FORMAT = Dynamic;
-- ----------------------------
-- Table structure for watch_data_ecg
-- ----------------------------
DROP TABLE IF EXISTS `watch_data_ecg`;
CREATE TABLE `watch_data_ecg` (
`id` varchar(36) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NOT NULL,
`watch_no` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL DEFAULT NULL COMMENT '手表编码',
`data_date` date NULL DEFAULT NULL COMMENT '数据日期',
`ecg_start_time` bigint NULL DEFAULT NULL COMMENT '测量开始时间戳',
`ecg_end_time` bigint NULL DEFAULT NULL COMMENT '测量结束时间戳',
`ecg_arrhy_avg_rate` int NULL DEFAULT NULL COMMENT '平均心率',
`ecg_arrhy_type` int NULL DEFAULT NULL COMMENT '算法测量结果',
`ecg_user_symptom` int NULL DEFAULT NULL COMMENT '用户自己选择的症状',
`ecg_data_points` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL DEFAULT NULL COMMENT '原始数据文件地址',
`ecg_data_points_count` int NULL DEFAULT NULL COMMENT '原始数据点数量',
`ecg_arrhy_type_dict` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL DEFAULT NULL COMMENT '算法测量结果(字典)',
`ecg_user_symptom_dict` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL DEFAULT NULL COMMENT '用户自己选择的症状(字典)',
`sync_time` datetime NULL DEFAULT NULL COMMENT '同步时间',
`bind_user_id` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL DEFAULT NULL COMMENT '绑定用户',
`max_id` varchar(60) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL DEFAULT NULL COMMENT '数据中心最大ID',
PRIMARY KEY (`id`) USING BTREE,
UNIQUE INDEX `watch_ecg_index`(`watch_no` ASC, `data_date` ASC, `ecg_start_time` ASC) USING BTREE,
INDEX `data_date`(`data_date` ASC) USING BTREE,
INDEX `watch_no_2`(`watch_no` ASC) USING BTREE
) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_bin COMMENT = '手表心电数据' ROW_FORMAT = Dynamic;
-- ----------------------------
-- Table structure for watch_data_exercise
-- ----------------------------
DROP TABLE IF EXISTS `watch_data_exercise`;
CREATE TABLE `watch_data_exercise` (
`id` varchar(36) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT 'id',
`watch_no` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '手表编码',
`strength_times` int NULL DEFAULT NULL COMMENT '中高强度运动时间分钟',
`total_time` int NULL DEFAULT NULL COMMENT '总活动时长小时',
`data_date` date NULL DEFAULT NULL COMMENT '数据日期',
`bind_user_id` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '绑定用户',
`max_id` varchar(60) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '数据中心最大ID',
PRIMARY KEY (`id`) USING BTREE,
UNIQUE INDEX `watch_no`(`watch_no` ASC, `data_date` ASC) USING BTREE,
INDEX `watch_no_2`(`watch_no` ASC) USING BTREE,
INDEX `data_date`(`data_date` ASC) USING BTREE
) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci ROW_FORMAT = Dynamic;
-- ----------------------------
-- Table structure for watch_data_gps
-- ----------------------------
DROP TABLE IF EXISTS `watch_data_gps`;
CREATE TABLE `watch_data_gps` (
`id` varchar(36) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '主键',
`watch_no` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '手表编码',
`lon` double(10, 4) NULL DEFAULT NULL COMMENT '经度',
`lat` double(10, 4) NULL DEFAULT NULL COMMENT '纬度',
`address` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '详细地址',
`time_stamp` datetime NULL DEFAULT NULL COMMENT '时间戳',
`bind_user_id` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '绑定用户',
`data_date` date NULL DEFAULT NULL COMMENT '绑定日期',
`max_id` varchar(60) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '数据中心最大ID',
PRIMARY KEY (`id`) USING BTREE,
INDEX `watch_no`(`watch_no` ASC) USING BTREE,
INDEX `bind_user_id`(`bind_user_id` ASC) USING BTREE,
INDEX `data_date`(`data_date` ASC) USING BTREE
) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci ROW_FORMAT = Dynamic;
-- ----------------------------
-- Table structure for watch_data_heart_rate
-- ----------------------------
DROP TABLE IF EXISTS `watch_data_heart_rate`;
CREATE TABLE `watch_data_heart_rate` (
`id` varchar(36) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '主键',
`watch_no` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '手表编码',
`data_value` double(10, 2) NULL DEFAULT NULL COMMENT '数据值',
`silence_value` double(10, 2) NULL DEFAULT NULL COMMENT '静息心率',
`time_stamp` datetime NULL DEFAULT NULL COMMENT '时间戳',
`bind_user_id` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '绑定用户',
`data_date` date NULL DEFAULT NULL COMMENT '绑定日期',
`max_id` varchar(60) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '数据中心最大ID',
PRIMARY KEY (`id`) USING BTREE,
INDEX `bind_user_id`(`bind_user_id` ASC) USING BTREE,
INDEX `data_date`(`data_date` ASC) USING BTREE,
INDEX `watch_no`(`watch_no` ASC) USING BTREE,
INDEX `time_stamp`(`time_stamp` ASC) USING BTREE
) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci ROW_FORMAT = Dynamic;
-- ----------------------------
-- Table structure for watch_data_sleep
-- ----------------------------
DROP TABLE IF EXISTS `watch_data_sleep`;
CREATE TABLE `watch_data_sleep` (
`id` varchar(36) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '主键',
`watch_no` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '手表编码',
`start_time_stamp` datetime NULL DEFAULT NULL COMMENT '开始时间',
`end_time_stamp` datetime NULL DEFAULT NULL COMMENT '结束时间',
`sleep_type` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '睡眠类型',
`bind_user_id` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '绑定用户',
`data_date` date NULL DEFAULT NULL COMMENT '绑定日期',
`max_id` varchar(60) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '数据中心最大ID',
PRIMARY KEY (`id`) USING BTREE,
INDEX `watch_no`(`watch_no` ASC) USING BTREE,
INDEX `bind_user_id`(`bind_user_id` ASC) USING BTREE,
INDEX `data_date`(`data_date` ASC) USING BTREE,
INDEX `sleep_type`(`sleep_type` ASC) USING BTREE
) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci ROW_FORMAT = Dynamic;
-- ----------------------------
-- Table structure for watch_data_sleep_new
-- ----------------------------
DROP TABLE IF EXISTS `watch_data_sleep_new`;
CREATE TABLE `watch_data_sleep_new` (
`id` varchar(60) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL,
`watch_no` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '手表编码',
`err_code` int NULL DEFAULT NULL COMMENT '错误码',
`sleep_flag` varchar(10) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '是否有睡眠数据',
`data_date` date NULL DEFAULT NULL COMMENT '数据日志',
`max_id` varchar(60) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '手表编码',
`bind_user_id` varchar(60) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '用户ID',
PRIMARY KEY (`id`) USING BTREE,
UNIQUE INDEX `watch_no`(`watch_no` ASC, `data_date` ASC) USING BTREE,
INDEX `watch_no_2`(`watch_no` ASC) USING BTREE,
INDEX `data_date`(`data_date` ASC) USING BTREE
) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci ROW_FORMAT = Dynamic;
-- ----------------------------
-- Table structure for watch_data_sleep_new_day
-- ----------------------------
DROP TABLE IF EXISTS `watch_data_sleep_new_day`;
CREATE TABLE `watch_data_sleep_new_day` (
`id` varchar(60) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL,
`sleep_id` varchar(60) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '主表ID',
`deep_sleep_part_cnt` int NULL DEFAULT NULL COMMENT '睡梦时长(分钟)',
`fall_asleep_time` datetime NULL DEFAULT NULL COMMENT '入睡时间点',
`go_bed_time` datetime NULL DEFAULT NULL COMMENT '上床时间',
`sleep_efficiency` int NULL DEFAULT NULL COMMENT '睡眠效率百分比',
`sleep_latency` bigint NULL DEFAULT NULL COMMENT '睡眠潜伏期',
`sleep_score` int NULL DEFAULT NULL COMMENT '睡眠得分',
`sleep_score_orign` int NULL DEFAULT NULL COMMENT '原始睡眠得分',
`snore_freq` int NULL DEFAULT NULL COMMENT '鼾声(每小时次数)',
`start_time` datetime NULL DEFAULT NULL COMMENT '当天的时间戳',
`valid_data` decimal(20, 15) NULL DEFAULT NULL COMMENT '数据有效性',
`wake_up_time` datetime NULL DEFAULT NULL COMMENT '醒来时间',
PRIMARY KEY (`id`) USING BTREE,
INDEX `sleep_id`(`sleep_id` ASC) USING BTREE
) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci ROW_FORMAT = Dynamic;
-- ----------------------------
-- Table structure for watch_data_sleep_new_err
-- ----------------------------
DROP TABLE IF EXISTS `watch_data_sleep_new_err`;
CREATE TABLE `watch_data_sleep_new_err` (
`id` varchar(60) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL,
`sleep_id` varchar(60) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '主表ID',
`err_code` int NULL DEFAULT NULL COMMENT '错误码',
`start_time` datetime NULL DEFAULT NULL COMMENT '开始时间戳',
`end_time` datetime NULL DEFAULT NULL COMMENT '结束时间戳',
PRIMARY KEY (`id`) USING BTREE,
INDEX `sleep_id`(`sleep_id` ASC) USING BTREE
) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci ROW_FORMAT = Dynamic;
-- ----------------------------
-- Table structure for watch_data_sleep_new_minute
-- ----------------------------
DROP TABLE IF EXISTS `watch_data_sleep_new_minute`;
CREATE TABLE `watch_data_sleep_new_minute` (
`id` varchar(60) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL,
`sleep_id` varchar(60) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '主表ID',
`start_time` datetime NULL DEFAULT NULL COMMENT '开始时间戳',
`end_time` datetime NULL DEFAULT NULL COMMENT '结束时间戳',
`status` varchar(1500) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '睡眠状态',
`sleep_type` varchar(10) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL,
PRIMARY KEY (`id`) USING BTREE,
INDEX `sleep_id`(`sleep_id` ASC) USING BTREE,
INDEX `index_sleep_type`(`sleep_type` ASC) USING BTREE
) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci ROW_FORMAT = Dynamic;
-- ----------------------------
-- Table structure for watch_data_spo2
-- ----------------------------
DROP TABLE IF EXISTS `watch_data_spo2`;
CREATE TABLE `watch_data_spo2` (
`id` varchar(36) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '主键',
`watch_no` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '手表编码',
`data_value` double(10, 2) NULL DEFAULT NULL COMMENT '数据值',
`time_stamp` datetime NULL DEFAULT NULL COMMENT '时间戳',
`bind_user_id` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '绑定用户',
`data_date` date NULL DEFAULT NULL COMMENT '绑定日期',
`max_id` varchar(60) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '数据中心最大ID',
PRIMARY KEY (`id`) USING BTREE,
INDEX `bind_user_id_index`(`bind_user_id` ASC) USING BTREE,
INDEX `watch_no`(`watch_no` ASC) USING BTREE,
INDEX `data_date`(`data_date` ASC) USING BTREE
) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci ROW_FORMAT = Dynamic;
-- ----------------------------
-- Table structure for watch_data_steps
-- ----------------------------
DROP TABLE IF EXISTS `watch_data_steps`;
CREATE TABLE `watch_data_steps` (
`id` varchar(36) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '主键',
`watch_no` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '手表编码',
`data_value` bigint NULL DEFAULT NULL COMMENT '数据值',
`sdc_date` date NULL DEFAULT NULL COMMENT '产生日期',
`bind_user_id` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '绑定用户',
`data_date` date NULL DEFAULT NULL COMMENT '绑定日期',
`max_id` varchar(60) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '数据中心最大ID',
PRIMARY KEY (`id`) USING BTREE,
INDEX `watch_no`(`watch_no` ASC) USING BTREE,
INDEX `bind_user_id`(`bind_user_id` ASC) USING BTREE,
INDEX `data_date`(`data_date` ASC) USING BTREE
) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci ROW_FORMAT = Dynamic;
-- ----------------------------
-- Table structure for watch_data_steps_hf
-- ----------------------------
DROP TABLE IF EXISTS `watch_data_steps_hf`;
CREATE TABLE `watch_data_steps_hf` (
`id` varchar(36) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '主键',
`watch_no` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '手表编码',
`step_count` int NULL DEFAULT NULL COMMENT '步数',
`step_date` date NULL DEFAULT NULL COMMENT '步数日期',
`bind_user_id` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '绑定用户',
`max_id` varchar(60) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '数据中心最大ID',
`create_time` datetime NULL DEFAULT NULL COMMENT '创建时间',
`update_time` datetime NULL DEFAULT NULL COMMENT '更新时间',
PRIMARY KEY (`id`) USING BTREE,
INDEX `bind_user_id`(`bind_user_id` ASC) USING BTREE,
INDEX `step_date`(`step_date` ASC) USING BTREE,
INDEX `watch_no`(`watch_no` ASC) USING BTREE
) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci ROW_FORMAT = Dynamic;
-- ----------------------------
-- Table structure for watch_data_stress
-- ----------------------------
DROP TABLE IF EXISTS `watch_data_stress`;
CREATE TABLE `watch_data_stress` (
`id` varchar(36) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '主键',
`watch_no` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '手表编码',
`start_time_stamp` datetime NULL DEFAULT NULL COMMENT '开始时间',
`end_time_stamp` datetime NULL DEFAULT NULL COMMENT '结束时间',
`data_value` double(10, 2) NULL DEFAULT NULL COMMENT '数据值',
`bind_user_id` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '绑定用户',
`data_date` date NULL DEFAULT NULL COMMENT '绑定日期',
`max_id` varchar(60) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '数据中心最大ID',
PRIMARY KEY (`id`) USING BTREE,
INDEX `watch_no`(`watch_no` ASC) USING BTREE,
INDEX `bind_user_id`(`bind_user_id` ASC) USING BTREE,
INDEX `data_date`(`data_date` ASC) USING BTREE
) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci ROW_FORMAT = Dynamic;
-- ----------------------------
-- Table structure for watch_data_temperature
-- ----------------------------
DROP TABLE IF EXISTS `watch_data_temperature`;
CREATE TABLE `watch_data_temperature` (
`id` varchar(36) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '主键',
`watch_no` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '手表编码',
`data_value` double(10, 2) NULL DEFAULT NULL COMMENT '数据值',
`skin_tempera` double NULL DEFAULT NULL COMMENT '体表温度',
`time_stamp` datetime NULL DEFAULT NULL COMMENT '时间戳',
`bind_user_id` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '绑定用户',
`data_date` date NULL DEFAULT NULL COMMENT '绑定日期',
`max_id` varchar(60) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '数据中心最大ID',
PRIMARY KEY (`id`) USING BTREE,
INDEX `watch_no`(`watch_no` ASC) USING BTREE,
INDEX `bind_user_id`(`bind_user_id` ASC) USING BTREE,
INDEX `data_date`(`data_date` ASC) USING BTREE
) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci ROW_FORMAT = Dynamic;
-- ----------------------------
-- Table structure for watch_data_workout
-- ----------------------------
DROP TABLE IF EXISTS `watch_data_workout`;
CREATE TABLE `watch_data_workout` (
`id` varchar(36) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '主键',
`watch_no` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '手表编码',
`start_time_stamp` datetime NULL DEFAULT NULL COMMENT '开始时间',
`end_time_stamp` datetime NULL DEFAULT NULL COMMENT '结束时间',
`calorie` bigint NULL DEFAULT NULL COMMENT '卡路里',
`distance` bigint NULL DEFAULT NULL COMMENT '距离',
`workout_type` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '锻炼类型',
`bind_user_id` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '绑定用户',
`data_date` date NULL DEFAULT NULL COMMENT '绑定日期',
`max_id` varchar(60) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '数据中心最大ID',
PRIMARY KEY (`id`) USING BTREE,
INDEX `watch_no`(`watch_no` ASC) USING BTREE,
INDEX `workout_type`(`workout_type` ASC) USING BTREE,
INDEX `bind_user_id`(`bind_user_id` ASC) USING BTREE,
INDEX `data_date`(`data_date` ASC) USING BTREE
) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci ROW_FORMAT = Dynamic;
-- ----------------------------
-- Table structure for watch_data_workout_trace
-- ----------------------------
DROP TABLE IF EXISTS `watch_data_workout_trace`;
CREATE TABLE `watch_data_workout_trace` (
`id` varchar(36) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL,
`watch_no` varchar(36) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '手表编码',
`record_id` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '记录ID',
`altitude` decimal(10, 2) NULL DEFAULT NULL COMMENT '海拔',
`latitude` decimal(20, 15) NULL DEFAULT NULL COMMENT '纬度',
`longitude` decimal(20, 15) NULL DEFAULT NULL COMMENT '经度',
`utc_time` datetime NULL DEFAULT NULL COMMENT '时间戳',
`valid` varchar(6) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '数据是否合法',
`max_id` varchar(60) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '数据中心最大ID',
PRIMARY KEY (`id`) USING BTREE,
UNIQUE INDEX `watch_no`(`watch_no` ASC, `record_id` ASC, `utc_time` ASC) USING BTREE,
INDEX `watch_no_2`(`watch_no` ASC) USING BTREE,
INDEX `watch_no_3`(`watch_no` ASC, `record_id` ASC) USING BTREE
) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci ROW_FORMAT = Dynamic;
-- ----------------------------
-- Table structure for watch_depart_report
-- ----------------------------
DROP TABLE IF EXISTS `watch_depart_report`;
CREATE TABLE `watch_depart_report` (
`id` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '主键',
`org_code` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '部门Code',
`report_year` int NOT NULL COMMENT '报告年份',
`report_month` int NOT NULL COMMENT '报告月份',
`report_url` varchar(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '报告地址',
`gen_flag` int NULL DEFAULT NULL COMMENT '生成状态 1-队列中 2-生成中 3-任务异常 4-生成完成',
`gen_time` datetime NULL DEFAULT NULL COMMENT '生成时间',
`del_flag` tinyint(1) NOT NULL DEFAULT 0 COMMENT '删除状态(0-正常,1-已删除)',
`create_by` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '创建人',
`create_time` datetime NULL DEFAULT NULL COMMENT '创建时间',
`update_by` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '更新人',
`update_time` datetime NULL DEFAULT NULL COMMENT '更新时间',
`memo` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '备注',
PRIMARY KEY (`id`) USING BTREE
) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci COMMENT = '部门报告记录表' ROW_FORMAT = Dynamic;
-- ----------------------------
-- Table structure for watch_device
-- ----------------------------
DROP TABLE IF EXISTS `watch_device`;
CREATE TABLE `watch_device` (
`id` varchar(36) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '主键',
`watch_no` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '手表编码',
`watch_model` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '手表型号',
`wear_status` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '穿戴状态',
`watch_online` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '在线状态',
`bind_user_id` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '绑定用户',
`bind_date` date NULL DEFAULT NULL COMMENT '绑定日期',
`create_by` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '创建人登录名称',
`create_date` datetime NULL DEFAULT NULL COMMENT '创建日期',
`update_by` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '更新人登录名称',
`update_date` datetime NULL DEFAULT NULL COMMENT '更新日期',
`imei_no` varchar(60) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT 'IMEI编码',
`eid` varchar(60) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT 'EID编码',
`last_update_time` datetime NULL DEFAULT NULL COMMENT '最后一次数据更新时间',
`dept_id` varchar(60) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '归属部门',
`org_code` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '归属部门编码',
PRIMARY KEY (`id`) USING BTREE,
UNIQUE INDEX `watch_no`(`watch_no` ASC) USING BTREE,
INDEX `bind_user_id`(`bind_user_id` ASC) USING BTREE,
INDEX `bind_date`(`bind_date` ASC) USING BTREE,
INDEX `index_dept_id`(`dept_id` ASC) USING BTREE
) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci ROW_FORMAT = Dynamic;
-- ----------------------------
-- Table structure for watch_device_switch
-- ----------------------------
DROP TABLE IF EXISTS `watch_device_switch`;
CREATE TABLE `watch_device_switch` (
`id` varchar(36) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL,
`watch_no` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '手表编码',
`wd_type` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '数据类型',
`switch_flag` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '开关状态',
`update_date` datetime NULL DEFAULT NULL COMMENT '更新日期',
PRIMARY KEY (`id`) USING BTREE
) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci ROW_FORMAT = Dynamic;
-- ----------------------------
-- Table structure for watch_key_user
-- ----------------------------
DROP TABLE IF EXISTS `watch_key_user`;
CREATE TABLE `watch_key_user` (
`id` varchar(36) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '主键',
`user_id` varchar(36) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '用户',
`error_type` tinyint(1) NULL DEFAULT NULL COMMENT '异常类型(watch_error_type 0:大病异常 1:慢病异常 2:指标异常)',
`del_flag` tinyint(1) NULL DEFAULT 0 COMMENT '删除标识0-正常,1已删除',
`disease_name` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '病名',
PRIMARY KEY (`id`) USING BTREE
) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci ROW_FORMAT = Dynamic;
-- ----------------------------
-- Table structure for watch_monitor_data
-- ----------------------------
DROP TABLE IF EXISTS `watch_monitor_data`;
CREATE TABLE `watch_monitor_data` (
`id` varchar(36) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '主键',
`watch_no` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '手表编码',
`event_type` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '事件类型',
`bind_user_id` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '绑定用户',
`create_by` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '创建人登录名称',
`create_date` datetime NULL DEFAULT NULL COMMENT '创建日期',
`data_value` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '数据值',
`address` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '详细地址',
`lon` double(15, 6) NULL DEFAULT NULL COMMENT '经度',
`lat` double(15, 6) NULL DEFAULT NULL COMMENT '纬度',
`data_date` date NULL DEFAULT NULL COMMENT '数据日期',
`warn_time` datetime NULL DEFAULT NULL COMMENT '报警时间',
`gps_error_msg` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT 'GPS错误信息',
`lon_gd` decimal(20, 15) NULL DEFAULT NULL COMMENT '高德经度',
`lat_gd` decimal(20, 15) NULL DEFAULT NULL COMMENT '高德纬度',
`address_gd` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '高德地址',
`send_flag` varchar(10) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '是否已短信通知',
`large_screen_flag` varchar(10) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '是否大屏通知',
`org_code` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '部门编码',
PRIMARY KEY (`id`) USING BTREE,
INDEX `watch_no`(`watch_no` ASC) USING BTREE,
INDEX `event_type`(`event_type` ASC) USING BTREE,
INDEX `bind_user_id`(`bind_user_id` ASC) USING BTREE,
INDEX `create_date`(`create_date` ASC) USING BTREE
) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci ROW_FORMAT = Dynamic;
-- ----------------------------
-- Table structure for watch_monitor_mobile
-- ----------------------------
DROP TABLE IF EXISTS `watch_monitor_mobile`;
CREATE TABLE `watch_monitor_mobile` (
`id` varchar(36) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL,
`mobile` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '手机号码',
`valid_status` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '有效标志',
`create_by` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '创建人登录名称',
`create_date` datetime NULL DEFAULT NULL COMMENT '创建日期',
`update_by` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '更新人登录名称',
`update_date` datetime NULL DEFAULT NULL COMMENT '更新日期',
PRIMARY KEY (`id`) USING BTREE,
INDEX `valid_status`(`valid_status` ASC) USING BTREE
) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci ROW_FORMAT = Dynamic;
-- ----------------------------
-- Table structure for watch_mqtt_notice
-- ----------------------------
DROP TABLE IF EXISTS `watch_mqtt_notice`;
CREATE TABLE `watch_mqtt_notice` (
`id` varchar(36) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '主键',
`mqtt_notice` text CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL COMMENT '通知内容',
`mqtt_notice_title` varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '消息标题',
`watch_no` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '手表编码',
`create_by` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '创建人登录名称',
`create_date` datetime NULL DEFAULT NULL COMMENT '创建日期',
`send_time` datetime NULL DEFAULT NULL COMMENT '发送时间',
`notice_status` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '发送状态',
`error_msg` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '失败原因',
`notice_level` varchar(5) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '通知级别1指定用户 0发送全部 2发送部门',
`user_id` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '通知用户ID',
`org_code` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '指定的部门',
PRIMARY KEY (`id`) USING BTREE,
INDEX `watch_no`(`watch_no` ASC) USING BTREE,
INDEX `notice_status`(`notice_status` ASC) USING BTREE
) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci ROW_FORMAT = Dynamic;
-- ----------------------------
-- Table structure for watch_stat_user_info_day_heart_rate
-- ----------------------------
DROP TABLE IF EXISTS `watch_stat_user_info_day_heart_rate`;
CREATE TABLE `watch_stat_user_info_day_heart_rate` (
`id` varchar(60) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL,
`user_id` varchar(60) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '用户id',
`max_value` int NULL DEFAULT NULL COMMENT '最大值',
`min_value` int NULL DEFAULT NULL COMMENT '最小值',
`avg_value` int NULL DEFAULT NULL COMMENT '平均值',
`silence_max_value` int NULL DEFAULT NULL COMMENT '静息心率最大值',
`silence_min_value` int NULL DEFAULT NULL COMMENT '静息心率最小值',
`silence_avg_value` int NULL DEFAULT NULL COMMENT '静息心率平均值',
`data_date` date NOT NULL COMMENT '数据时间',
`org_code` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '部门编码',
`last_upload_time` datetime NULL DEFAULT NULL COMMENT '最后上传时间',
PRIMARY KEY (`id`) USING BTREE,
INDEX `user_id`(`user_id` ASC) USING BTREE
) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci ROW_FORMAT = Dynamic;
-- ----------------------------
-- Table structure for watch_stat_user_info_day_sdc
-- ----------------------------
DROP TABLE IF EXISTS `watch_stat_user_info_day_sdc`;
CREATE TABLE `watch_stat_user_info_day_sdc` (
`id` varchar(60) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL,
`user_id` varchar(60) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '用户ID',
`step_value` bigint NULL DEFAULT NULL COMMENT '步数',
`distance_value` bigint NULL DEFAULT NULL COMMENT '距离',
`calorie_value` bigint NULL DEFAULT NULL COMMENT '卡路里',
`data_date` date NULL DEFAULT NULL COMMENT '数据录入时间',
`org_code` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '部门编码',
`last_upload_time` datetime NULL DEFAULT NULL COMMENT '最后上传时间',
PRIMARY KEY (`id`) USING BTREE,
INDEX `user_id`(`user_id` ASC) USING BTREE
) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci ROW_FORMAT = Dynamic;
-- ----------------------------
-- Table structure for watch_stat_user_info_day_sleep
-- ----------------------------
DROP TABLE IF EXISTS `watch_stat_user_info_day_sleep`;
CREATE TABLE `watch_stat_user_info_day_sleep` (
`id` varchar(60) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL,
`user_id` varchar(60) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '用户id',
`sleep_avg` int NULL DEFAULT 0 COMMENT '平均睡眠时长',
`long_count` int NULL DEFAULT 0 COMMENT '长睡数量',
`long_duration_max` bigint NULL DEFAULT 0 COMMENT '长睡最长时长',
`long_duration_min` bigint NULL DEFAULT 0 COMMENT '长睡最短时长',
`long_duration_total` bigint NULL DEFAULT NULL COMMENT '长睡睡眠总时长',
`long_start_min` datetime NULL DEFAULT NULL COMMENT '长睡最早入睡时间',
`long_end_max` datetime NULL DEFAULT NULL COMMENT '长睡最晚醒来时间',
`short_count` int NULL DEFAULT 0 COMMENT '短睡数量',
`short_duration_max` bigint NULL DEFAULT 0 COMMENT '短睡最长时长',
`short_duration_min` bigint NULL DEFAULT 0 COMMENT '短睡最短时长',
`short_duration_total` bigint NULL DEFAULT 0 COMMENT '短睡睡眠总时长',
`short_start_min` datetime NULL DEFAULT NULL COMMENT '短睡最早入睡时间',
`short_end_max` datetime NULL DEFAULT NULL COMMENT '短睡最晚醒来时间',
`data_date` date NULL DEFAULT NULL COMMENT '更新时间',
`long_duration_avg` int NULL DEFAULT 0 COMMENT '长睡平均',
`short_duration_avg` int NULL DEFAULT 0 COMMENT '短睡平均',
`org_code` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '部门编码',
`deep_sleep_times` int NULL DEFAULT 0 COMMENT '深睡睡眠时长 ',
`light_sleep_times` int NULL DEFAULT 0 COMMENT '浅睡睡眠时长 ',
`deep_light_times` int NULL DEFAULT 0 COMMENT '睡眠总时长 light_sleep_times+deep_sleep_times',
`sleep_id` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '为了统计所对应的分钟睡眠 ',
`last_upload_time` datetime NULL DEFAULT NULL COMMENT '最后上传时间',
PRIMARY KEY (`id`) USING BTREE,
INDEX `user_id`(`user_id` ASC) USING BTREE
) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci ROW_FORMAT = Dynamic;
-- ----------------------------
-- Table structure for watch_stat_user_info_day_spo2
-- ----------------------------
DROP TABLE IF EXISTS `watch_stat_user_info_day_spo2`;
CREATE TABLE `watch_stat_user_info_day_spo2` (
`id` varchar(60) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL,
`user_id` varchar(60) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '用户id',
`max_value` decimal(4, 0) NULL DEFAULT NULL COMMENT '最大值',
`min_value` decimal(4, 0) NULL DEFAULT NULL COMMENT '最小值',
`avg_value` decimal(10, 4) NULL DEFAULT NULL COMMENT '平均值',
`data_date` date NULL DEFAULT NULL COMMENT '数据日期',
`org_code` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '部门编码',
`last_upload_time` datetime NULL DEFAULT NULL COMMENT '最后上传时间',
PRIMARY KEY (`id`) USING BTREE,
INDEX `user_id`(`user_id` ASC) USING BTREE
) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci ROW_FORMAT = Dynamic;
-- ----------------------------
-- Table structure for watch_stat_user_info_day_stress
-- ----------------------------
DROP TABLE IF EXISTS `watch_stat_user_info_day_stress`;
CREATE TABLE `watch_stat_user_info_day_stress` (
`id` varchar(60) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL,
`user_id` varchar(60) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '用户ID',
`max_value` decimal(4, 0) NULL DEFAULT NULL COMMENT '最大值',
`min_value` decimal(4, 0) NULL DEFAULT NULL COMMENT '最小值',
`avg_value` decimal(10, 4) NULL DEFAULT NULL COMMENT '平均值',
`data_date` date NULL DEFAULT NULL COMMENT '更新时间',
`org_code` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '部门编码',
`last_upload_time` datetime NULL DEFAULT NULL COMMENT '最后上传时间',
PRIMARY KEY (`id`) USING BTREE,
INDEX `user_id`(`user_id` ASC) USING BTREE
) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci ROW_FORMAT = Dynamic;
-- ----------------------------
-- Table structure for watch_stat_user_info_day_temp
-- ----------------------------
DROP TABLE IF EXISTS `watch_stat_user_info_day_temp`;
CREATE TABLE `watch_stat_user_info_day_temp` (
`id` varchar(60) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL,
`user_id` varchar(60) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '用户id',
`max_value` decimal(5, 2) NULL DEFAULT NULL COMMENT '最大值',
`min_value` decimal(5, 2) NULL DEFAULT NULL COMMENT '最小值',
`avg_value` decimal(10, 4) NULL DEFAULT NULL COMMENT '平均值',
`skin_max_value` decimal(5, 2) NULL DEFAULT NULL COMMENT '体表温度最大值',
`skin_min_value` decimal(5, 2) NULL DEFAULT NULL COMMENT '体表温度最小值',
`skin_avg_value` decimal(10, 4) NULL DEFAULT NULL COMMENT '体表温度平均值',
`data_date` date NULL DEFAULT NULL COMMENT '更新时间',
`org_code` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '部门编码',
`last_upload_time` datetime NULL DEFAULT NULL COMMENT '最后上传时间',
PRIMARY KEY (`id`) USING BTREE,
INDEX `user_id`(`user_id` ASC) USING BTREE
) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci ROW_FORMAT = Dynamic;
-- ----------------------------
-- Table structure for watch_stat_user_info_day_workout
-- ----------------------------
DROP TABLE IF EXISTS `watch_stat_user_info_day_workout`;
CREATE TABLE `watch_stat_user_info_day_workout` (
`id` varchar(60) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL,
`user_id` varchar(60) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '用户ID',
`distance_max_value` bigint NULL DEFAULT NULL COMMENT '距离最大值',
`distance_min_value` bigint NULL DEFAULT NULL COMMENT '距离最小值',
`distance_total_value` bigint NULL DEFAULT NULL COMMENT '距离总量',
`distance_count` bigint NULL DEFAULT NULL COMMENT '距离数据量',
`calorie_max_value` bigint NULL DEFAULT NULL COMMENT '卡路里最大值',
`calorie_min_value` bigint NULL DEFAULT NULL COMMENT '卡路里最小值',
`calorie_total_value` bigint NULL DEFAULT NULL COMMENT '卡路里总量',
`calorie_count` bigint NULL DEFAULT NULL COMMENT '卡路里数据量',
`duration_max_value` bigint NULL DEFAULT NULL COMMENT '锻炼时长最大值',
`duration_min_value` bigint NULL DEFAULT NULL COMMENT '锻炼时长最小值',
`duration_total_value` bigint NULL DEFAULT NULL COMMENT '锻炼时长总量',
`duration_count` bigint NULL DEFAULT NULL COMMENT '锻炼次数',
`data_date` date NULL DEFAULT NULL COMMENT '数据时间',
`org_code` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '部门编码',
`last_upload_time` datetime NULL DEFAULT NULL COMMENT '最后上传时间',
PRIMARY KEY (`id`) USING BTREE,
INDEX `user_id`(`user_id` ASC) USING BTREE
) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci ROW_FORMAT = Dynamic;
-- ----------------------------
-- Table structure for watch_syn_max_id
-- ----------------------------
DROP TABLE IF EXISTS `watch_syn_max_id`;
CREATE TABLE `watch_syn_max_id` (
`id` varchar(36) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL,
`wd_type` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '数据类型',
`max_id` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '最大ID',
`create_date` datetime NULL DEFAULT NULL COMMENT '创建日期',
`update_date` datetime NULL DEFAULT NULL COMMENT '更新日期',
PRIMARY KEY (`id`) USING BTREE,
UNIQUE INDEX `wd_type`(`wd_type` ASC) USING BTREE
) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci ROW_FORMAT = Dynamic;
-- ----------------------------
-- Table structure for watch_user_data
-- ----------------------------
DROP TABLE IF EXISTS `watch_user_data`;
CREATE TABLE `watch_user_data` (
`id` varchar(36) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL,
`watch_no` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '手表编码',
`bind_user_id` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '绑定用户',
`data_date` date NULL DEFAULT NULL COMMENT '绑定日期',
`create_by` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '创建人登录名称',
`create_date` datetime NULL DEFAULT NULL COMMENT '创建日期',
PRIMARY KEY (`id`) USING BTREE,
UNIQUE INDEX `watch_no`(`watch_no` ASC, `bind_user_id` ASC, `data_date` ASC) USING BTREE
) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci ROW_FORMAT = Dynamic;
SET FOREIGN_KEY_CHECKS = 1;
@@ -38,6 +38,7 @@
<dependency>
<groupId>org.jeecgframework.boot</groupId>
<artifactId>jeecg-boot-base-core</artifactId>
<classifier>xj</classifier>
<scope>provided</scope>
</dependency>
</dependencies>
+1
View File
@@ -33,6 +33,7 @@
<dependency>
<groupId>org.jeecgframework.boot</groupId>
<artifactId>jeecg-boot-base-core</artifactId>
<classifier>xj</classifier>
<scope>provided</scope>
</dependency>
</dependencies>
@@ -13,6 +13,7 @@
<dependency>
<groupId>org.jeecgframework.boot</groupId>
<artifactId>jeecg-boot-base-core</artifactId>
<classifier>xj</classifier>
</dependency>
<!-- feign -->
@@ -112,7 +112,7 @@ public class ConNotice implements Serializable {
* 咨询类型
*/
@Excel(name = "咨询类型", width = 15, dicCode = "notice_type")
@Schema(title = "咨询类型(notice_type 0:图文咨询 1:音视频咨询)")
@Schema(title = "咨询类型(notice_type 0:视屏咨询 1:图文频咨询)")
@Dict(dicCode = "notice_type")
private String noticeType;
@@ -58,7 +58,7 @@ public class ConDoctorVO {
private String doctorStatus;
@Excel(name = "医生是否开启咨询(z_doct_sta(1:开启 3:关闭))", width = 15)
@Dict(dicCode = "doc_accept_flag")
@Dict(dicCode = "z_doct_sta")
@Schema(title = "医生是否开启咨询(z_doct_sta(1:开启 3:关闭))")
private String isAccept;
@@ -34,5 +34,5 @@ public class ConNoticeVO {
@Dict(dicCode = "notice_type")
@Schema(title = "咨询类型(notice_type 0:图文咨询 1:音视频咨询)")
private String type;
private String noticeType;
}
@@ -13,18 +13,22 @@
<dependency>
<groupId>com.renkang</groupId>
<artifactId>health-consultation-api</artifactId>
<classifier>xj</classifier>
</dependency>
<dependency>
<groupId>com.renkang</groupId>
<artifactId>health-emergency-api</artifactId>
<classifier>xj</classifier>
</dependency>
<dependency>
<groupId>com.renkang</groupId>
<artifactId>health-im-api</artifactId>
<classifier>xj</classifier>
</dependency>
<dependency>
<groupId>org.jeecgframework.boot</groupId>
<artifactId>jeecg-system-cloud-api</artifactId>
<classifier>xj</classifier>
</dependency>
<dependency>
@@ -50,4 +54,21 @@
</plugin>
</plugins>
</build>
<profiles>
<profile>
<id>biz-obf</id>
<build>
<plugins>
<plugin>
<groupId>com.github.wvengen</groupId>
<artifactId>proguard-maven-plugin</artifactId>
</plugin>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>build-helper-maven-plugin</artifactId>
</plugin>
</plugins>
</build>
</profile>
</profiles>
</project>
@@ -0,0 +1,38 @@
-keepattributes *Annotation*, Signature, InnerClasses, EnclosingMethod, Exceptions, MethodParameters
-keep @org.springframework.stereotype.Service class *
-keep @org.springframework.web.bind.annotation.RestController class *
-keep @org.springframework.context.annotation.Configuration class * { *; }
-keep @org.springframework.stereotype.Component class *
-keep class lombok.** { *; }
-keepclassmembers enum * { # 保留枚举结构
public static **[] values();
public static ** valueOf(java.lang.String);
}
-keepclassmembers class * implements java.io.Serializable { *; }
-keepclassmembers class * {
@org.springframework.web.bind.annotation.*Mapping *;
}
-keepclassmembers class * {
private static synthetic java.lang.Object $deserializeLambda$(java.lang.invoke.SerializedLambda);
}
-keepclassmembers class * {
@lombok.Getter *;
@lombok.Setter *;
}
# MyBatis 专用保留规则
-keep interface com.renkang.**.mapper.** { *; }
-keep class com.renkang.**.entity.** { *; }
-keep class com.renkang.**.bean.** { *; }
-keep class com.renkang.**.model.** { *; }
-keep class com.renkang.**.vo.** { *; }
-keepparameternames
# 关闭优化和压缩(避免框架兼容性问题)
-dontshrink # 不删除未使用代码
-dontoptimize # 不优化字节码[5,6](@ref)
-keepdirectories
-dontusemixedcaseclassnames
-adaptclassstrings
# 混淆选项
-useuniqueclassmembernames # 成员名称唯一化
-ignorewarnings
@@ -1,21 +1,27 @@
package com.renkang.consultation.api.service.impl;
import cn.hutool.core.date.DateUtil;
import cn.hutool.core.util.ObjUtil;
import com.alibaba.druid.util.StringUtils;
import com.alibaba.fastjson.JSONArray;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.renkang.consultation.api.service.ConDoctorSchedulingDateApiService;
import com.renkang.consultation.entity.ConDoctor;
import com.renkang.consultation.entity.ConDoctorSchedulingDateListDO;
import com.renkang.consultation.entity.ConService;
import com.renkang.consultation.mapper.ConDoctorMapper;
import com.renkang.consultation.mapper.ConDoctorSchedulingDateMapper;
import com.renkang.consultation.mapper.ConServiceMapper;
import com.renkang.consultation.service.IConServiceService;
import org.jeecg.common.api.vo.Result;
import org.jeecg.common.constant.CommonConstant;
import org.jeecg.common.util.DateUtils;
import org.jeecg.common.util.RedisUtil;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.util.CollectionUtils;
import java.util.Date;
import java.util.Iterator;
import java.util.List;
import java.util.*;
@Service("conDoctorSchedulingDateApiService")
public class ConDoctorSchedulingDateApiServiceImpl implements ConDoctorSchedulingDateApiService {
@@ -29,6 +35,9 @@ public class ConDoctorSchedulingDateApiServiceImpl implements ConDoctorSchedulin
@Autowired
private ConServiceMapper conServiceMapper;
@Autowired
private RedisUtil redisUtil;
@Override
public Result<List<ConDoctorSchedulingDateListDO>> selectSchedulingDateListByDoctorId(String doctorId) {
@@ -39,8 +48,8 @@ public class ConDoctorSchedulingDateApiServiceImpl implements ConDoctorSchedulin
if (conDoctor == null) {
return Result.error("医生不存在");
}
if (CollectionUtils.isEmpty(list) || StringUtils.equals(conDoctor.getDoctorStatus(), "3")) {
// 为空 或者已经暂停服务 情况下 生成默认排班
if (CollectionUtils.isEmpty(list) || "3".equals(conDoctor.getDoctorStatus())) {
Date date = new Date();
for (int i = 0; i < 7; i++) {
int week = DateUtils.dateToWeek(date);
@@ -56,8 +65,32 @@ public class ConDoctorSchedulingDateApiServiceImpl implements ConDoctorSchedulin
}
return Result.ok(list);
}
// 查询暂停服务列表
ConService conService = conServiceMapper.selectOne(new LambdaQueryWrapper<ConService>()
.eq(ConService::getDoctorId, doctorId)
.eq(ConService::getStatus, 1)
.eq(ConService::getServiceStatus, 0), false);
if (ObjUtil.isNotEmpty(conService)) {
// 判断暂停时间是否包含排班
for (ConDoctorSchedulingDateListDO dateDO : list) {
if (DateUtil.isIn(dateDO.getSchedulingDate(),conService.getStartDay(),conService.getEndDay())) {
dateDO.setSchedulingNum("0");
}
}
}
if ("1".equals(conDoctor.getTfJumpHoliday())){
Object o = redisUtil.get(CommonConstant.CONSULT_HOLIDAY_KEY + Calendar.getInstance().get(Calendar.YEAR));
List<String> holidayList = new ArrayList<>();
if (o instanceof List<?>) {
List<?> tempList = (List<?>) o;
for (Object item : tempList) {
if (item instanceof String) {
holidayList.add((String) item);
}
}
}
// 将list匹配到的数据数量置0
}
Iterator<ConDoctorSchedulingDateListDO> iterator = list.iterator();
Date date = DateUtils.formatDateToAnother(new Date(), "yyyy-MM-dd");
@@ -1,73 +1,63 @@
package com.renkang.consultation.api.service.impl;
import cn.hutool.core.bean.BeanUtil;
import cn.hutool.core.util.StrUtil;
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
import com.renkang.consultation.api.RedisConstants;
import com.renkang.consultation.api.service.ConNoticeApiService;
import com.renkang.consultation.dto.NoticeOnOrOff;
import com.renkang.consultation.entity.ConNotice;
import com.renkang.consultation.entity.ConNoticeDO;
import com.renkang.consultation.mapper.ConNoticeMapper;
import org.apache.shiro.SecurityUtils;
import lombok.RequiredArgsConstructor;
import org.jeecg.common.api.vo.Result;
import org.jeecg.common.constant.CommonConstant;
import org.jeecg.common.system.vo.LoginUser;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.data.redis.core.RedisTemplate;
import org.jeecg.global.GlobalUtils;
import org.jeecg.util.RedisClientUtil;
import org.jeecg.util.RedisKeyPrefix;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
@Service("conNoticeApiService")
@RequiredArgsConstructor
public class ConNoticeServiceApiImpl implements ConNoticeApiService {
@Autowired
private ConNoticeMapper conNoticeMapper;
@Autowired
private RedisTemplate redisTemplate;
private final ConNoticeMapper conNoticeMapper;
private final String NOTICE_KEY_1 = "consultation:notice:1:";
private final String NOTICE_KEY_0 = "consultation:notice:0:";
private final RedisClientUtil redisClientUtil;
@Override
public Result<ConNoticeDO> selectUserNotice(String type) {
LoginUser sysUser = (LoginUser) SecurityUtils.getSubject().getPrincipal();
String userId = sysUser.getId();
if (redisTemplate.hasKey(RedisConstants.NOTICE_USER_TF.getKey(userId, type))) {
String userId = GlobalUtils.getLoginUser().getId();
String keyPrefix = "0".equals(type)? NOTICE_KEY_0 : NOTICE_KEY_1;
String flag = redisClientUtil.get(new RedisKeyPrefix(keyPrefix), userId, String.class);
if (StrUtil.isNotEmpty(flag)) {
return Result.ok();
}
ConNotice conNotice = conNoticeMapper.selectNoticeByType(type);
if (conNotice != null) {
return Result.ok(BeanUtil.copyProperties(conNotice, ConNoticeDO.class));
}
return Result.ok();
}
@Override
public Result<String> chooseToDontShowUp(String id, String notShow) {
RedisConstants redisKey = RedisConstants.NOTICE_USER_TF;
LoginUser sysUser = (LoginUser) SecurityUtils.getSubject().getPrincipal();
String userId = sysUser.getId();
String userId = GlobalUtils.getLoginUser().getId();
ConNotice conNotice = conNoticeMapper.selectById(id);
if (conNotice == null) {
return Result.error("信息不存在");
}
redisTemplate.opsForValue().set(redisKey.getKey(userId, conNotice.getType()), "1");
String keyPrefix = "0".equals(conNotice.getNoticeType())? NOTICE_KEY_0 : NOTICE_KEY_1;
//2-不在提醒,1-一个月,0-7天
if ("0".equals(notShow)) {
redisTemplate.expire(redisKey.getKey(userId, conNotice.getType()), 7, redisKey.getTimeUnit());
redisClientUtil.set(new RedisKeyPrefix(604800,keyPrefix), userId,String.valueOf(1));
}
if ("1".equals(notShow)) {
redisTemplate.expire(redisKey.getKey(userId, conNotice.getType()), 30, redisKey.getTimeUnit());
redisClientUtil.set(new RedisKeyPrefix(2592000,keyPrefix), userId,String.valueOf(1));
}
if ("2".equals(notShow)) {
redisTemplate.expire(redisKey.getKey(userId, conNotice.getType()), 180, redisKey.getTimeUnit());
redisClientUtil.set(new RedisKeyPrefix(-1,keyPrefix), userId,String.valueOf(1));
}
return Result.ok();
@@ -1,5 +1,7 @@
package com.renkang.consultation.api.service.impl;
import cn.hutool.core.date.DateField;
import cn.hutool.core.date.DateUtil;
import cn.hutool.core.util.ObjectUtil;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.renkang.consultation.api.service.ConServiceApiService;
@@ -39,7 +41,10 @@ public class ConServiceApiServiceImpl implements ConServiceApiService {
throw new RuntimeException("请确认事件后重新提交");
}
data.setEndDay(DateUtil.endOfDay(data.getEndDay()).offset(DateField.MILLISECOND,-999));
LoginUser loginUser = GlobalUtils.getLoginUser();
loginUser.setId("1940949295719591937");
List<ConService> list = getConService(loginUser);
// if (CollectionUtils.isEmpty(list)) {
// conServiceMapper.insert(data);
@@ -47,19 +52,19 @@ public class ConServiceApiServiceImpl implements ConServiceApiService {
// }
for (ConService service : list) {
boolean startContain = DateUtils.contain(service.getStartDay(), service.getEndDay(), data.getStartDay());
boolean endContain = DateUtils.contain(service.getStartDay(), service.getEndDay(), data.getEndDay());
boolean startContain = DateUtils.contain(service.getStartDay(), DateUtil.endOfDay(service.getEndDay()), data.getStartDay());
boolean endContain = DateUtils.contain(service.getStartDay(), DateUtil.endOfDay(service.getEndDay()), data.getEndDay());
if (startContain || endContain) {
throw new RuntimeException("时间有重叠,请检查已有停诊时间");
}
}
data.setDoctorName(loginUser.getRealname());
data.setDoctorId(loginUser.getId());
// 新增
conServiceMapper.insert(data);
Date startDate = data.getStartDay();
Date endDate = data.getEndDay();
Date endDate = DateUtil.endOfDay(data.getEndDay());
Date date = com.renkang.consultation.util.DateUtils.changeDate(new Date());
if (date.getTime() >= startDate.getTime() && date.getTime() <= endDate.getTime()) {
conDoctorMapper.changeDoctorStatus(loginUser.getId());
@@ -36,7 +36,6 @@ import org.jeecg.common.system.vo.LoginUser;
import org.jeecg.common.system.vo.LoginUserNew;
import org.jeecg.common.util.AgeCalculateUtil;
import org.jeecg.config.shiro.ClientSignThreadLocal;
import org.jeecg.global.GlobalUtils;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
@@ -394,7 +393,7 @@ public class ConSessionApiServiceImpl implements ConSessionApiService {
ClientSignThreadLocal.setClientSign(CommonConstant.QUARRY);
}
//如果是用户咨询全科医生 并且是青海
if (StrUtil.equals(conSession.getSessionType(), "2") && StrUtil.equals(conSession.getTfQh(), "1")) {
if (StrUtil.equals(conSession.getSessionType(), "2")) {
//如果用户发验 并且小助手在休息时间 那么自动发送消息
this.helperSendMessage(conSession.getImId(), fromAccount, conSession.getToAccount());
}
@@ -1868,12 +1867,12 @@ public class ConSessionApiServiceImpl implements ConSessionApiService {
@Override
public Result<List<ConSessionDO>> selectSessionListByDoctorIdUnit(int pageNo, int pageSize) {
if (!GlobalUtils.isQh()) {
/* if (!GlobalUtils.isQh()) {
return new Result(403, "权限错误");
}
}*/
LoginUser sysUser = (LoginUser) SecurityUtils.getSubject().getPrincipal();
com.baomidou.mybatisplus.extension.plugins.pagination.Page<ConSessionDO> page = new com.baomidou.mybatisplus.extension.plugins.pagination.Page<ConSessionDO>(pageNo, pageSize);
Page<ConSessionDO> page = new Page<ConSessionDO>(pageNo, pageSize);
List<ConSessionDO> list = conSessionMapper.selectSessionListByUserIdHelperAnother(page, null, null, sysUser.getId());
@@ -1886,9 +1885,9 @@ public class ConSessionApiServiceImpl implements ConSessionApiService {
@Override
public Result<List<ConSessionDO>> selectSessionListByDoctorIdHelper(int pageNo, int pageSize) {
if (!GlobalUtils.isQh()) {
/* if (!GlobalUtils.isQh()) {
return new Result(403, "权限错误");
}
}*/
LoginUser sysUser = (LoginUser) SecurityUtils.getSubject().getPrincipal();
com.baomidou.mybatisplus.extension.plugins.pagination.Page<ConSessionDO> page = new com.baomidou.mybatisplus.extension.plugins.pagination.Page<ConSessionDO>(pageNo, pageSize);
@@ -1912,9 +1911,9 @@ public class ConSessionApiServiceImpl implements ConSessionApiService {
@Override
public Result<Integer> selectDoctorCardExpireTime(Long sendTime) {
if (!GlobalUtils.isQh()) {
/* if (!GlobalUtils.isQh()) {
return new Result(403, "权限错误");
}
}*/
if (sendTime == null) {
return Result.error("时间错误");
@@ -1950,9 +1949,9 @@ public class ConSessionApiServiceImpl implements ConSessionApiService {
@Override
public Result<Map<String, Object>> insertUserAndHelperSessionNew() {
if (!GlobalUtils.isQh()) {
/* if (!GlobalUtils.isQh()) {
return new Result(403, "权限错误");
}
}*/
LoginUser sysUser = (LoginUser) SecurityUtils.getSubject().getPrincipal();
ConSession conSessionOnly = conSessionMapper.selectSessioningByProfessorIdNew(sysUser.getId(), "2");
@@ -4,11 +4,11 @@ import com.renkang.consultation.api.storge.redis.ConHealthInfoRedisTunnel;
import com.renkang.consultation.entity.ConHealthInfo;
import com.renkang.consultation.mapper.ConHealthInfoMapper;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Repository;
import org.springframework.stereotype.Component;
import java.util.List;
@Repository
@Component
public class ComposeConHealthInfo {
@@ -5,9 +5,9 @@ import com.renkang.consultation.entity.ConKnowledge;
import com.renkang.consultation.mapper.ConKnowledgeMapper;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.data.redis.core.RedisTemplate;
import org.springframework.stereotype.Repository;
import org.springframework.stereotype.Component;
@Repository
@Component
public class ComposeConKnowledge {
@@ -4,11 +4,11 @@ import com.renkang.consultation.api.storge.db.ConKnowledgeCategoryDbTunnel;
import com.renkang.consultation.api.storge.redis.ConKnowledgeCategoryRedisTunnel;
import com.renkang.consultation.entity.ConKnowledgeCategory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Repository;
import org.springframework.stereotype.Component;
import java.util.List;
@Repository
@Component
public class ComposeConKnowledgeCategory {
@Autowired
@@ -5,11 +5,11 @@ import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.renkang.consultation.entity.ConKnowledgeCategory;
import com.renkang.consultation.mapper.ConKnowledgeCategoryMapper;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Repository;
import org.springframework.stereotype.Component;
import java.util.List;
@Repository
@Component
public class ConKnowledgeCategoryDbTunnel {
@@ -5,9 +5,9 @@ import com.renkang.consultation.entity.ConDoctorFollow;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.data.redis.core.RedisTemplate;
import org.springframework.data.redis.core.ZSetOperations;
import org.springframework.stereotype.Repository;
import org.springframework.stereotype.Component;
@Repository
@Component
public class ConDoctorFollowReidsTunnel {
@Autowired
@@ -4,11 +4,11 @@ import com.renkang.consultation.api.RedisConstants;
import com.renkang.consultation.entity.ConHealthInfo;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.data.redis.core.RedisTemplate;
import org.springframework.stereotype.Repository;
import org.springframework.stereotype.Component;
import java.util.List;
@Repository
@Component
public class ConHealthInfoRedisTunnel {
@Autowired
@@ -5,9 +5,9 @@ import com.renkang.consultation.entity.ConHospitalFollow;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.data.redis.core.RedisTemplate;
import org.springframework.data.redis.core.ZSetOperations;
import org.springframework.stereotype.Repository;
import org.springframework.stereotype.Component;
@Repository
@Component
public class ConHospitalFollowReidsTunnel {
@Autowired
@@ -4,11 +4,11 @@ import com.renkang.consultation.api.RedisConstants;
import com.renkang.consultation.entity.ConKnowledgeCategory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.data.redis.core.RedisTemplate;
import org.springframework.stereotype.Repository;
import org.springframework.stereotype.Component;
import java.util.List;
@Repository
@Component
public class ConKnowledgeCategoryRedisTunnel {
@@ -1,5 +1,6 @@
package com.renkang.consultation.controller;
import cn.hutool.core.util.StrUtil;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.renkang.consultation.entity.ConDoctorCard;
@@ -62,6 +63,12 @@ public class ConDoctorCardController extends JeecgController<ConDoctorCard, ICon
// @RequiresPermissions("consultation:con_doctor_card:add")
@PostMapping(value = "/add")
public Result<String> add(@RequestBody ConDoctorCard conDoctorCard) {
if (StrUtil.isEmpty(conDoctorCard.getCardMsg())){
return Result.error("请填写开户行");
}
if (StrUtil.isEmpty(conDoctorCard.getCardNum())){
return Result.error("请填写银行卡号");
}
conDoctorCard.setCreateTime(new Date());
conDoctorCardService.save(conDoctorCard);
return Result.OK("添加成功!");
@@ -6,6 +6,7 @@ import lombok.extern.slf4j.Slf4j;
import org.jeecg.common.constant.CommonConstant;
import org.jeecg.common.util.RedisUtil;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.scheduling.annotation.Scheduled;
import org.springframework.stereotype.Component;
@@ -21,8 +22,11 @@ public class HolidayManager {
@Autowired
private RedisUtil redisUtil;
@Value("${transfer.server.url:101.201.149.156:8610}")
private String domainUrl;
//@Scheduled(cron = "0 0 0 1 1 ? *")
@Scheduled(cron = "0 0 0 1 1 ? *")
@Scheduled(cron = "0 0 0 1 1 ?")
@PostConstruct
public void setRedisHoliday() throws IOException {
//获取当前年份
@@ -69,7 +73,7 @@ public class HolidayManager {
//补班数据
List<String> listRemove = new ArrayList<String>();
String url = "http://timor.tech/api/holiday/year/" + year + "/";
String url = "http://"+domainUrl+"/api/holiday/year/" + year + "/";
String rsa = HttpUtil.get(url);
Map map = JSONObject.parseObject(rsa, Map.class);
Map holidayMap = (Map) map.get("holiday");
@@ -24,7 +24,7 @@ public interface ConNoticeMapper extends BaseMapper<ConNotice> {
*/
IPage<ConNotice> queryPageList(IPage<ConNotice> page, @Param("conNotice") ConNotice conNotice);
@Select("SELECT * FROM con_notice WHERE status = '1' and del_flag = '0' and type = #{type} order by create_time desc limit 1")
@Select("SELECT * FROM con_notice WHERE status = '1' and del_flag = '0' and notice_type = #{type} order by create_time desc limit 1")
public ConNotice selectNoticeByType(String type);
}
@@ -104,7 +104,7 @@
SELECT doctor_id, MIN(card_num) as min_card_num
FROM con_doctor_card
GROUP BY doctor_id
) cdc_min ON cdc.doctor_id = cdc_min.doctor_id AND cdc.card_num = cdc_min.min_card_num
) cdc_min ON cdc.doctor_id = cdc_min.doctor_id AND cdc.del_flag = 0 AND cdc.card_num = cdc_min.min_card_num
GROUP BY cdc.doctor_id
) cdc_first ON a.id = cdc_first.doctor_id
WHERE a.del_flag = 0 AND a.status = 1
@@ -137,6 +137,9 @@
<if test="conDoctor.type != null and conDoctor.type != ''">
AND a.type = #{conDoctor.type}
</if>
<if test="conDoctor.doctorJob != null and conDoctor.doctorJob != ''">
AND a.doctor_job = #{conDoctor.doctorJob}
</if>
<if test="conDoctor.isAccept != null and conDoctor.isAccept != ''">
AND a.is_accept = #{conDoctor.isAccept}
</if>
@@ -26,7 +26,7 @@
#{item}
</foreach>
)
and status = 1 and del_flag = 0
and status = 1 and del_flag = 0 and family_relation != '1'
GROUP BY group_id
</select>
<select id="selectFamilyGroupId" parameterType="list" resultType="com.renkang.consultation.vo.ConFamilyNumVO">
@@ -104,7 +104,7 @@
<if test="conSession.orgCodes != null and conSession.orgCodes != ''">
AND (
<foreach item="item" index="index" collection="conSession.orgCodes" separator=" OR ">
c.org_code LIKE CONCAT('%', #{item}, '%')
c.org_code LIKE CONCAT(#{item}, '%')
</foreach>
)
</if>
@@ -537,7 +537,8 @@
WHERE del_flag = 0
AND status = 1
AND tf_reply = 1
AND from_account IN
AND session_type = 1
AND to_account IN
<foreach item="id" collection="doctorIds" open="(" separator="," close=")">
#{id}
</foreach>
@@ -629,7 +630,7 @@
INNER JOIN (
SELECT from_account, MAX(create_time) AS max_create_time
FROM con_session
WHERE del_flag = 0 AND status = '1'
WHERE del_flag = 0 AND status = '1' AND session_type = '1'
GROUP BY from_account
) AS subquery ON c.from_account = subquery.from_account AND c.create_time = subquery.max_create_time
WHERE c.del_flag = 0 AND c.status = '1'
@@ -1078,7 +1079,7 @@
<if test="state != null and state != '' and state == '5'.toString()">
and (content_status = 5 or content_status = 6 or content_status = 7 or content_status = 8)
</if>
order by create_time desc
order by content_status asc ,create_time desc
</select>
@@ -3,6 +3,7 @@ package com.renkang.consultation.service.impl;
import cn.hutool.core.util.ObjectUtil;
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.update.LambdaUpdateWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
@@ -17,6 +18,8 @@ import com.renkang.consultation.entity.*;
import com.renkang.consultation.manager.ConsultCloudManager;
import com.renkang.consultation.mapper.*;
import com.renkang.consultation.service.IConDoctorChangeLogService;
import com.renkang.consultation.service.IConDoctorSchedulingDateService;
import com.renkang.consultation.service.IConDoctorSchedulingService;
import com.renkang.consultation.service.IConDoctorService;
import com.renkang.consultation.vo.*;
import com.renkang.im.api.IMHelloApi;
@@ -109,6 +112,9 @@ public class ConDoctorServiceImpl extends ServiceImpl<ConDoctorMapper, ConDoctor
@Autowired
private ConSessionServiceImpl conSessionServiceImpl;
@Autowired
private IConDoctorSchedulingDateService conDoctorSchedulingDateService;
/**
@@ -150,7 +156,7 @@ public class ConDoctorServiceImpl extends ServiceImpl<ConDoctorMapper, ConDoctor
conDoctor.setDoctorTitle(dto.getDoctorTitle());
}
// 通过Mapper查询并获取分页数据
if (dto.getDepartmentId() != null && !"".equals(dto.getDepartmentId())) {
if (dto.getDepartmentId() != null && !dto.getDepartmentId().isEmpty()) {
//查询出当前科室
ConDepartment conDepartment = conDepartmentMapper.selectById(dto.getDepartmentId());
List<ConDepartment> departments = new ArrayList<>();
@@ -243,6 +249,9 @@ public class ConDoctorServiceImpl extends ServiceImpl<ConDoctorMapper, ConDoctor
if (StringUtils.hasLength(dto.getHospitalName())) {
conDoctor.setResourceId(dto.getHospitalName());
}
if (StrUtil.isNotEmpty(dto.getDoctorName())){
conDoctor.setDoctorName(HtmlUtil.unescape(dto.getDoctorName()));
}
IPage<ConDoctor> conDoctorIPage = conDoctorMapper.queryPageList(page, conDoctor);
List<ConDoctor> conDoctorList = conDoctorIPage.getRecords();
if (CollectionUtils.isEmpty(conDoctorList)) {
@@ -302,10 +311,6 @@ public class ConDoctorServiceImpl extends ServiceImpl<ConDoctorMapper, ConDoctor
// 创建一个ConDoctor对象,并从dto复制属性
ConDoctor conDoctor = new ConDoctor();
BeanUtils.copyProperties(dto, conDoctor);
conDoctor.setStartTime(null);
conDoctor.setEndTime(null);
boolean tfQh = GlobalUtils.isQh();
// 通过Mapper查询并获取分页数据
IPage<ConDoctor> conDoctorIPage = conDoctorMapper.queryPageList(page, conDoctor);
@@ -1042,7 +1047,9 @@ public class ConDoctorServiceImpl extends ServiceImpl<ConDoctorMapper, ConDoctor
public Integer updateJumpHoliday(DoctorJumpHolidayDTO dto) {
LambdaUpdateWrapper<ConDoctor> updateWrapper = new LambdaUpdateWrapper<>();
updateWrapper.eq(ConDoctor::getId, dto.getId()).set(ConDoctor::getTfJumpHoliday, dto.getTfJumpHoliday());
return conDoctorMapper.update(null, updateWrapper);
int update = conDoctorMapper.update(null, updateWrapper);
conDoctorSchedulingDateService.generateDoctorSchedulingDate(dto.getId());
return update;
}
@Transactional(rollbackFor = Exception.class)
@@ -1,5 +1,6 @@
package com.renkang.consultation.service.impl;
import cn.hutool.core.collection.CollUtil;
import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
@@ -131,7 +132,7 @@ public class ConHealthInfoAnswerServiceImpl extends ServiceImpl<ConHealthInfoAns
List<ConSession> conSessions1 = collect.get(item.getFromAccount());
List<String> collect1 = conSessions1.stream()
.map(ConSession::getMemberId)
.filter(memberId -> memberId != null && !memberId.isEmpty())
.filter(memberId -> memberId != null && !memberId.isEmpty()).distinct()
.collect(Collectors.toList());
item.setMemberIds(collect1);
});
@@ -215,10 +216,13 @@ public class ConHealthInfoAnswerServiceImpl extends ServiceImpl<ConHealthInfoAns
vo.setWorkNo(loginUserNew.getWorkNo());
}
if (item.getGroupId() != null && !"".equals(item.getGroupId())) {
Integer count = Objects.requireNonNull(finalConFamilyNumVOList.stream()
.filter(ite -> ite.getGroupId().equals(item.getGroupId())).findFirst().orElse(null)).getCount();
vo.setFamilyNum(count);
if (item.getGroupId() != null && !item.getGroupId().isEmpty()) {
if (CollUtil.isNotEmpty(finalConFamilyNumVOList)){
ConFamilyNumVO conFamilyNumVO = finalConFamilyNumVOList.stream().filter(ite -> ite.getGroupId().equals(item.getGroupId())).findFirst().orElse(null);
if (conFamilyNumVO != null) {
vo.setFamilyNum(conFamilyNumVO.getCount());
}
}
}
vo.setId(item.getId());
voList.add(vo);
@@ -102,6 +102,7 @@ public class ConHelperServiceImpl extends ServiceImpl<ConHelperMapper, ConHelper
// sysUserModel.setSecondDepartment(secondDepartOrgCode.getId());
// sysUserModel.setThirdDepartment(thirdDepartOrgCode.getId());
sysUserModel.setRealname(conHelperExAndUser.getConHelper().getHelperName());
sysUserModel.setUserRoleCode("helper");
String userId = sysBaseAPI.addUserToEx(sysUserModel);
if (!StringUtils.hasLength(userId)) {
@@ -368,10 +369,13 @@ public class ConHelperServiceImpl extends ServiceImpl<ConHelperMapper, ConHelper
conHelperDoctorVO.setStatus(it.getDoctorStatus());
conHelperDoctorVO.setTimes("0");
if (CollectionUtils.isNotEmpty(conSessions)) {
List<ConSession> collect = conSessions.stream().filter(i -> i.getToAccount().equals(it.getId())).filter(Objects::nonNull).distinct().collect(Collectors.toList());
if (CollectionUtils.isNotEmpty(collect)) {
conHelperDoctorVO.setTimes(String.valueOf(collect.size()));
int times = 0;
for (ConSession conSession : conSessions) {
if (conSession.getToAccount().equals(it.getId())) {
times++;
}
}
conHelperDoctorVO.setTimes(String.valueOf(times));
}
conHelperDoctorVOList.add(conHelperDoctorVO);
});
@@ -11,8 +11,9 @@ public class TempUtil {
public static void reversalDocInfo(ConDoctorDO conDoctor){
String isAccept = conDoctor.getIsAccept();
conDoctor.setIsAccept(conDoctor.getDoctorStatus());
conDoctor.setDoctorStatus(isAccept);
// TODO 移动端说状态不对 先注掉试试
// conDoctor.setIsAccept(conDoctor.getDoctorStatus());
// conDoctor.setDoctorStatus(isAccept);
}
public static void reversalDocInfo(ConDoctor conDoctor){
@@ -0,0 +1,22 @@
FROM anapsix/alpine-java:8_server-jre_unlimited
ENV PROFILE_NAME=dev \
SERVER_PORT=7010 \
NACOS_SERVER_ADDR=nacos250:8848 \
NACOS_USERNAME=xjuser \
NACOS_PASSWORD=Aa135790!123 \
NACOS_NAMESPACE=3af98a54-4a44-4576-8e28-bf5781c0dccf \
NACOS_GROUP=dev
RUN ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
RUN mkdir -p /health-consultation-start
WORKDIR /health-consultation-start
EXPOSE 7010
COPY ./target/health-consultation-start-xj.jar ./
CMD sleep 1;java -Dfile.encoding=utf-8 -Djava.security.egd=file:/dev/./urandom -jar health-consultation-start-xj.jar
@@ -9,6 +9,11 @@
<modelVersion>4.0.0</modelVersion>
<artifactId>health-consultation-start</artifactId>
<properties>
<maven.install.skip>true</maven.install.skip>
</properties>
<dependencies>
<!--微服务启动 starter-->
<dependency>
@@ -24,6 +29,7 @@
<dependency>
<groupId>com.renkang</groupId>
<artifactId>health-consultation-biz</artifactId>
<classifier>${biz-classifier}</classifier>
</dependency>
</dependencies>
@@ -25,23 +25,4 @@ spring:
group: ${NACOS_GROUP:DEFAULT_GROUP}
server-addr: ${spring.cloud.nacos.server-addr}
username: ${spring.cloud.nacos.username}
password: ${spring.cloud.nacos.password}
jeecg:
dynamic:
tables:
- con_evaluate
- con_family_members
- con_health_info_answer
- con_health_info_child
- con_health_info
- con_helper_online
- con_helper
- con_helper_scheduling_history
- con_helper_scheduling
- con_hospital_follow
- con_session
- con_doctor_satisfy
- con_doctor_follow
- con_medical_records
password: ${spring.cloud.nacos.password}
-4
View File
@@ -13,10 +13,6 @@
<version>2.0.0</version>
<packaging>pom</packaging>
<properties>
<maven.install.skip>true</maven.install.skip>
</properties>
<!--项目子模块-->
<modules>
<module>health-consultation-api</module>
@@ -13,6 +13,7 @@
<dependency>
<groupId>org.jeecgframework.boot</groupId>
<artifactId>jeecg-boot-base-core</artifactId>
<classifier>xj</classifier>
</dependency>
<!-- feign -->
@@ -0,0 +1,18 @@
package com.renkang.emergency.bean.response;
import lombok.Data;
import javax.validation.constraints.NotNull;
/**
* @author Junqiang Zhu
* @date 2024-04-12 15:16
*/
@Data
public class FakerDataEnable {
@NotNull(message = "未知模块")
private Integer module;
@NotNull(message = "未知结果")
private Boolean enable;
private String centerId;
}
@@ -0,0 +1,38 @@
package com.renkang.emergency.bean.response;
import cn.hutool.core.util.ObjectUtil;
import lombok.Data;
import javax.validation.constraints.NotNull;
/**
* @author Junqiang Zhu
* @date 2024-04-12 14:40
*/
@Data
public class GroupUserFakerData {
// 总人数
private Integer totalUser;
// 大病
@NotNull(message = "大病人数不能为空")
private Integer illnessNum;
// 慢病
@NotNull(message = "慢病人数不能为空")
private Integer slowVirusNum;
// 异常
@NotNull(message = "异常人数不能为空")
private Integer failNum;
// 风险
@NotNull(message = "风险人数不能为空")
private Integer riskNum;
// 健康
@NotNull(message = "健康人数不能为空")
private Integer healthNum;
public Integer getTotalUser() {
if (ObjectUtil.isAllNotEmpty(illnessNum, slowVirusNum, failNum, riskNum, healthNum)) {
return illnessNum + slowVirusNum + failNum + riskNum + healthNum;
}
return null;
}
}
@@ -0,0 +1,36 @@
package com.renkang.emergency.bean.response;
import cn.hutool.core.util.ObjectUtil;
import lombok.Data;
import javax.validation.constraints.NotNull;
import java.math.BigDecimal;
import java.math.RoundingMode;
/**
* 健康水平dto
*
* @author Junqiang Zhu
* @date 2024-04-12 14:40
*/
@Data
public class HealthLevelFakerData {
@NotNull(message = "健康值不能为空")
private Double health;
@NotNull(message = "亚健康值不能为空")
private Double sub;
@NotNull(message = "轻度心理问题值不能为空")
private Double mild;
@NotNull(message = "中度心理问题值不能为空")
private Double moderate;
@NotNull(message = "高度心理问题值不能为空")
private Double serious;
public Double getHealth() {
if (ObjectUtil.isAllNotEmpty(sub, mild, moderate, serious)) {
return BigDecimal.valueOf(100 - sub - mild - moderate - serious).setScale(2, RoundingMode.HALF_UP).doubleValue();
}
return null;
}
}
@@ -0,0 +1,53 @@
package com.renkang.emergency.bean.response;
import lombok.Data;
import javax.validation.constraints.NotNull;
import java.math.BigDecimal;
/**
* 小屋运动 压力
*
* @author Junqiang Zhu
* @since 2024-04-12 14:40
*/
@Data
public class HouseWatchStressFakerData {
// 运动
@NotNull(message = "小于两公里不能为空")
private BigDecimal ltOne;
@NotNull(message = "小于两公里不能为空")
private BigDecimal ltTwo;
@NotNull(message = "小于两公里不能为空")
private BigDecimal ltThree;
@NotNull(message = "小于两公里不能为空")
private BigDecimal ltFour;
@NotNull(message = "3-5公里不能为空")
private BigDecimal middleOne;
@NotNull(message = "3-5公里不能为空")
private BigDecimal middleTwo;
@NotNull(message = "3-5公里不能为空")
private BigDecimal middleThree;
@NotNull(message = "3-5公里不能为空")
private BigDecimal middleFour;
@NotNull(message = "5公里以上不能为空")
private BigDecimal gtOne;
@NotNull(message = "5公里以上不能为空")
private BigDecimal gtTwo;
@NotNull(message = "5公里以上不能为空")
private BigDecimal gtThree;
@NotNull(message = "5公里以上不能为空")
private BigDecimal gtFour;
// 压力
@NotNull(message = "压力放松不能为空")
private BigDecimal stressRelax;
@NotNull(message = "压力正常不能为空")
private BigDecimal stressNormal;
@NotNull(message = "压力中等不能为空")
private BigDecimal stressMedium;
@NotNull(message = "压力偏高不能为空")
private BigDecimal stressHigh;
}
@@ -0,0 +1,35 @@
package com.renkang.emergency.bean.response;
import lombok.Data;
import javax.validation.constraints.NotNull;
/**
* 心理干预dto
*
* @author Junqiang Zhu
* @date 2024-04-12 14:40
*/
@Data
public class InterveneFakerData {
@NotNull(message = "睡眠前值不能为空")
private Double sleepAgo;
@NotNull(message = "睡眠后值不能为空")
private Double sleepLater;
@NotNull(message = "冥想前值不能为空")
private Double meditationAgo;
@NotNull(message = "冥想后值不能为空")
private Double meditationLater;
@NotNull(message = "骑行前值不能为空")
private Double cyclingAgo;
@NotNull(message = "骑行后值不能为空")
private Double cyclingLater;
@NotNull(message = "总体改善率不能为空")
private Double total;
}
@@ -0,0 +1,25 @@
package com.renkang.emergency.bean.response;
import lombok.Data;
import javax.validation.constraints.NotNull;
/**
* @author Junqiang Zhu
* @date 2024-04-12 14:40
*/
@Data
public class MedicalCenterFakerData {
// 本周就诊人数
@NotNull(message = "本周就诊人数不能为空")
private Integer weekNum;
// 累计就诊人数
@NotNull(message = "累计就诊人数不能为空")
private Integer totalNum;
// 本周救护车
@NotNull(message = "本周救护车出动次数不能为空")
private Integer weekAmbulanceNum;
// 累计救护车
@NotNull(message = "累计救护车出动次数不能为空")
private Integer totalAmbulanceNum;
}
@@ -0,0 +1,30 @@
package com.renkang.emergency.bean.response;
import lombok.Data;
import javax.validation.constraints.NotNull;
/**
* 员工营养监测dto
*
* @author Junqiang Zhu
* @date 2024-04-12 14:40
*/
@Data
public class NutritionFakerData {
@NotNull(message = "早餐总人数不能为空")
private Integer breakfastHeadCount;
@NotNull(message = "早餐超标不能为空")
private Integer breakfastOutOfLimits;
@NotNull(message = "午餐总人数不能为空")
private Integer lunchHeadCount;
@NotNull(message = "午餐超标不能为空")
private Integer lunchOutOfLimits;
@NotNull(message = "晚餐总人数不能为空")
private Integer dinnerHeadCount;
@NotNull(message = "晚餐超标不能为空")
private Integer dinnerOutOfLimits;
}
@@ -0,0 +1,10 @@
package com.renkang.emergency.bean.response;
import lombok.Data;
@Data
public class XjDemandTypeFakerData {
private String centerId;
private String emergencyCount;
private String hospitalCount;
}
@@ -0,0 +1,71 @@
package com.renkang.emergency.bean.response;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
@Data
public class XjHealthSignFakerData {
private String centerId;
/**
* 减重今日打卡人数
*/
@Schema(title = "减重今日打卡人数")
private Integer weightLossCountDay;
/**
* 减重本月打卡人数
*/
@Schema(title = "减重本月打卡人数")
private Integer weightLossCountMonth;
/**
* 减重今日异常人数
*/
@Schema(title = "减重今日异常人数")
private Integer weightLossAbnormalCountDay;
/**
* 减重本月异常人数
*/
@Schema(title = "减重本月异常人数")
private Integer weightLossAbnormalCountMonth;
/**
* 血糖今日打卡人数
*/
@Schema(title = "血糖今日打卡人数")
private Integer bloodSugarCountDay;
/**
* 血糖本月打卡人数
*/
@Schema(title = "血糖本月打卡人数")
private Integer bloodSugarCountMonth;
/**
* 血糖今日异常人数
*/
@Schema(title = "血糖今日异常人数")
private Integer bloodSugarAbnormalCountDay;
/**
* 血糖本月异常人数
*/
@Schema(title = "血糖本月异常人数")
private Integer bloodSugarAbnormalCountMonth;
/**
* 血压今日打卡人数
*/
@Schema(title = "血压今日打卡人数")
private Integer bloodPressureCountDay;
/**
* 血压本月打卡人数
*/
@Schema(title = "血压本月打卡人数")
private Integer bloodPressureCountMonth;
/**
* 血压今日异常人数
*/
@Schema(title = "血压今日异常人数")
private Integer bloodPressureAbnormalCountDay;
/**
* 血压本月异常人数
*/
@Schema(title = "血压本月异常人数")
private Integer bloodPressureAbnormalCountMonth;
}
@@ -0,0 +1,10 @@
package com.renkang.emergency.bean.response;
import lombok.Data;
@Data
public class XjMedicalCountFakerData {
private String centerId;
private String name;
private String count;
}
@@ -0,0 +1,15 @@
package com.renkang.emergency.bean.response;
import lombok.Data;
@Data
public class XjMedicalDataFakerData {
private String centerId;
private Integer totalCount;
// 心血管异常人数
private Integer cardiovaAbCount;
// 脑血管异常人数
private Integer cerebrovAbCount;
// 冠脉ct异常人数
private Integer cctaAbCount;
}
@@ -0,0 +1,108 @@
package com.renkang.emergency.entity;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableLogic;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import org.jeecgframework.poi.excel.annotation.Excel;
import org.springframework.format.annotation.DateTimeFormat;
import java.util.Date;
@Data
public class EmergencyHealthRoom {
/**
* id
*/
@TableId(type = IdType.ASSIGN_ID)
@Schema(title = "id")
private String id;
/**
* 建设地点名称
*/
@Schema(title = "建设地点名称")
private String name;
/**
* 单位code
*/
@Schema(title = "单位code")
private String orgCode;
/**
* 单位名称(冗余字段更新orgCode记得同步更新)
*/
@Schema(title = "单位名称(冗余字段更新orgCode记得同步更新)")
private String orgName;
/**
* 在岗人数
*/
@Schema(title = "在岗人数")
private Integer jobNum;
/**
* 运转时间(分钟)
*/
@Schema(title = "运转时间(分钟)")
private Integer runTime;
/**
* 经度
*/
@Schema(title = "经度")
private String longitude;
/**
* 纬度
*/
@Schema(title = "纬度")
private String latitude;
/**
* 状态(1-正常,2-冻结)
*/
@Schema(title = "状态(1-正常,2-冻结)")
private Integer status;
/**
* 删除状态(0-正常,1-已删除)
*/
@Schema(title = "删除状态(0-正常,1-已删除)")
@TableLogic
private Integer delFlag;
/**
* 创建人
*/
@Schema(title = "创建人")
private String createBy;
/**
* 创建时间
*/
@JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
@Schema(title = "创建时间")
private Date createTime;
/**
* 更新人
*/
@Schema(title = "更新人")
private String updateBy;
/**
* 更新时间
*/
@JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
@Schema(title = "更新时间")
private Date updateTime;
/**
* 备注
*/
@Schema(title = "备注")
private String memo;
}
@@ -105,6 +105,7 @@ public class Order implements Serializable {
*/
@Excel(name = "发起人性别", width = 15)
@Schema(title = "发起人性别")
@Dict(dicCode = "sex2")
private java.lang.String initiatorUserSex;
/**
* 发起人电话
@@ -159,6 +160,7 @@ public class Order implements Serializable {
*/
@Excel(name = "救助人性别", width = 15)
@Schema(title = "救助人性别")
@Dict(dicCode = "sex2")
private java.lang.String salvageUserSex;
/**
* 救助人电话
@@ -9,6 +9,7 @@ import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
import org.jeecg.common.aspect.annotation.Dict;
import org.jeecgframework.poi.excel.annotation.Excel;
import org.springframework.format.annotation.DateTimeFormat;
@@ -113,6 +114,7 @@ public class Resource implements Serializable {
*/
@Excel(name = "医院等级", width = 15)
@Schema(title = "医院等级")
@Dict(dicCode = "hospital_level")
private String level;
/**
* 图片
@@ -9,6 +9,7 @@
<modelVersion>4.0.0</modelVersion>
<artifactId>health-emergency-biz</artifactId>
<dependencies>
<!--定时任务-->
<dependency>
@@ -18,15 +19,18 @@
<dependency>
<groupId>com.renkang</groupId>
<artifactId>health-emergency-api</artifactId>
<classifier>xj</classifier>
</dependency>
<dependency>
<groupId>org.jeecgframework.boot</groupId>
<artifactId>jeecg-system-cloud-api</artifactId>
<classifier>xj</classifier>
</dependency>
<dependency>
<groupId>com.renkang</groupId>
<artifactId>health-im-api</artifactId>
<classifier>xj</classifier>
</dependency>
</dependencies>
@@ -47,4 +51,21 @@
</plugin>
</plugins>
</build>
<profiles>
<profile>
<id>biz-obf</id>
<build>
<plugins>
<plugin>
<groupId>com.github.wvengen</groupId>
<artifactId>proguard-maven-plugin</artifactId>
</plugin>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>build-helper-maven-plugin</artifactId>
</plugin>
</plugins>
</build>
</profile>
</profiles>
</project>
@@ -0,0 +1,38 @@
-keepattributes *Annotation*, Signature, InnerClasses, EnclosingMethod, Exceptions, MethodParameters
-keep @org.springframework.stereotype.Service class *
-keep @org.springframework.web.bind.annotation.RestController class *
-keep @org.springframework.context.annotation.Configuration class * { *; }
-keep @org.springframework.stereotype.Component class *
-keep class lombok.** { *; }
-keepclassmembers enum * { # 保留枚举结构
public static **[] values();
public static ** valueOf(java.lang.String);
}
-keepclassmembers class * implements java.io.Serializable { *; }
-keepclassmembers class * {
@org.springframework.web.bind.annotation.*Mapping *;
}
-keepclassmembers class * {
private static synthetic java.lang.Object $deserializeLambda$(java.lang.invoke.SerializedLambda);
}
-keepclassmembers class * {
@lombok.Getter *;
@lombok.Setter *;
}
# MyBatis 专用保留规则
-keep interface com.renkang.**.mapper.** { *; }
-keep class com.renkang.**.entity.** { *; }
-keep class com.renkang.**.bean.** { *; }
-keep class com.renkang.**.model.** { *; }
-keep class com.renkang.**.vo.** { *; }
-keepparameternames
# 关闭优化和压缩(避免框架兼容性问题)
-dontshrink # 不删除未使用代码
-dontoptimize # 不优化字节码[5,6](@ref)
-keepdirectories
-dontusemixedcaseclassnames
-adaptclassstrings
# 混淆选项
-useuniqueclassmembernames # 成员名称唯一化
-ignorewarnings
@@ -10,6 +10,8 @@ import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;
import java.util.List;
/**
* 排班controller
*
@@ -44,4 +46,15 @@ public class EmergencyScheduleApiController {
}
/**
* 年/月值班 展示
*/
@GetMapping("/scheduleShow/v2")
public Result<List<Integer>> scheduleShowV2(@RequestParam Integer year,
@RequestParam Integer month,
@RequestParam(required = false) String userId) {
return Result.ok(emergencyScheduleApiService.scheduleShowV2(year, month, userId));
}
}
@@ -2,6 +2,8 @@ package com.renkang.emergency.api.service;
import com.renkang.emergency.bean.response.ScheduleRecordShow;
import java.util.List;
/**
* @author Junqiang Zhu
* @date 2023-04-25 13:07
@@ -10,4 +12,6 @@ public interface EmergencyScheduleApiService {
ScheduleRecordShow scheduleRecord(String year, String month, String userId);
ScheduleRecordShow scheduleShow(Integer year, Integer month, String userId);
List<Integer> scheduleShowV2(Integer year, Integer month, String userId);
}
@@ -7,6 +7,7 @@ import com.renkang.emergency.api.service.EmergencyResourceApiService;
import com.renkang.emergency.bean.common.ResourceExt;
import com.renkang.emergency.bean.response.ResourceHome;
import com.renkang.emergency.constant.EmergencyConstants;
import com.renkang.emergency.entity.EmergencyHealthRoom;
import com.renkang.emergency.entity.EmergencyResourceDO;
import com.renkang.emergency.entity.Order;
import com.renkang.emergency.entity.Resource;
@@ -14,6 +15,7 @@ import com.renkang.emergency.manager.EmergencyCloudManager;
import com.renkang.emergency.manager.ResourceManager;
import com.renkang.emergency.mapper.OrderMapper;
import com.renkang.emergency.mapper.ResourceMapper;
import com.renkang.emergency.service.IEmergencyHealthRoomService;
import com.renkang.emergency.util.ResourceUtils;;
import org.apache.commons.collections4.CollectionUtils;
import org.apache.commons.lang3.ObjectUtils;
@@ -25,6 +27,7 @@ import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.data.geo.Point;
import org.springframework.stereotype.Service;
import java.math.BigDecimal;
import java.util.ArrayList;
import java.util.Collections;
import java.util.List;
@@ -45,6 +48,8 @@ public class EmergencyResourceApiServiceImpl implements EmergencyResourceApiServ
private OrderMapper orderMapper;
@Autowired
private ResourceMapper resourceMapper;
@Autowired
private IEmergencyHealthRoomService roomService;
@Autowired
private ISysBaseAPI sysBaseAPI;
@@ -68,30 +73,47 @@ public class EmergencyResourceApiServiceImpl implements EmergencyResourceApiServ
List<DictModel> dictItems = emergencyCloudManager.getDictItems(EmergencyConstants.EMERGENCY_RESOURCE_TYPE_DICT);
if (ObjectUtils.isEmpty(longitude) || ObjectUtils.isEmpty(latitude)) {
home.setDicts(dictItems);
if (!"3".equals(type)) {
home.setDicts(dictItems);
List<ResourceExt> list = this.listResource(type);
List<ResourceExt> list = this.listResource(type);
List<ResourceExt> resources = new ArrayList<>();
if("3".equals(type) || "0".equals(type)){
resources = this.selectResourceByLongitudeLatitude(null,null,null);
List<ResourceExt> resources = new ArrayList<>();
if ("0".equals(type)) {
resources = this.selectResourceByLongitudeLatitude(null, null, null);
}
list.addAll(resources);
home.setResources(list);
return home;
}
}else {
if (!"3".equals(type)) {
// 资源数据
Point point = new Point(longitude, latitude);
List<ResourceExt> resources = resourceManager.geoSearch(point, 100000, type);
List<ResourceExt> resourcesLL = new ArrayList<>();
if ("0".equals(type)) {
resourcesLL = this.selectResourceByLongitudeLatitude(100000D, longitude, latitude);
}
resources.addAll(resourcesLL);
home.setDicts(dictItems);
home.setResources(resources);
return home;
}
list.addAll(resources);
home.setResources(list);
return home;
}
// 资源数据
Point point = new Point(longitude, latitude);
List<ResourceExt> resources = resourceManager.geoSearch(point, 100000, type);
List<ResourceExt> resourcesLL = new ArrayList<>();
if("3".equals(type) || "0".equals(type)){
resourcesLL = this.selectResourceByLongitudeLatitude(100000D,longitude,latitude);
List<EmergencyHealthRoom> list = roomService.list();
List<ResourceExt> resources = new ArrayList<>();
for (EmergencyHealthRoom emergencyHealthRoom : list) {
ResourceExt ext = new ResourceExt();
ext.setId(emergencyHealthRoom.getId());
ext.setName(emergencyHealthRoom.getName());
ext.setAddress(emergencyHealthRoom.getOrgName());
ext.setLatitude(new BigDecimal(emergencyHealthRoom.getLatitude()));
ext.setLongitude(new BigDecimal(emergencyHealthRoom.getLongitude()));
ext.setType("3");
resources.add(ext);
}
resources.addAll(resourcesLL);
home.setDicts(dictItems);
home.setResources(resources);
return home;
@@ -149,7 +171,7 @@ public class EmergencyResourceApiServiceImpl implements EmergencyResourceApiServ
private List<ResourceExt> listResource(String type) {
if("3".equals(type)){
if ("3".equals(type)) {
return Collections.emptyList();
}
@@ -174,7 +196,7 @@ public class EmergencyResourceApiServiceImpl implements EmergencyResourceApiServ
}
public List<ResourceExt> selectResourceByLongitudeLatitude(Double distance,Double longitude,Double latitude){
public List<ResourceExt> selectResourceByLongitudeLatitude(Double distance, Double longitude, Double latitude) {
List<ResourceExt> resourceExtList = new ArrayList<>();
/* Point point = new Point(longitude, latitude);
List<MedicalResource> list = medicalCenterApi.selectResourceByLongitudeLatitude(distance, longitude, latitude).getResult();
@@ -1,5 +1,6 @@
package com.renkang.emergency.api.service.impl;
import cn.hutool.core.collection.CollUtil;
import cn.hutool.core.date.DateUtil;
import cn.hutool.core.util.ObjectUtil;
import cn.hutool.core.util.StrUtil;
@@ -12,6 +13,7 @@ import com.renkang.emergency.constant.EmergencyConstants;
import com.renkang.emergency.entity.ScheduleCustom;
import com.renkang.emergency.entity.ScheduleDefault;
import com.renkang.emergency.entity.ScheduleRecord;
import com.renkang.emergency.mapper.EmergencySchedulesNewMapper;
import com.renkang.emergency.mapper.ScheduleCustomMapper;
import com.renkang.emergency.mapper.ScheduleDefaultMapper;
import com.renkang.emergency.mapper.ScheduleRecordMapper;
@@ -37,6 +39,8 @@ public class EmergencyScheduleApiServiceImpl implements EmergencyScheduleApiServ
private ScheduleCustomMapper scheduleCustomMapper;
@Autowired
private ScheduleDefaultMapper scheduleDefaultMapper;
@Autowired
private EmergencySchedulesNewMapper schedulesNewMapper;
@Override
public ScheduleRecordShow scheduleRecord(String year, String month, String userId) {
@@ -94,6 +98,32 @@ public class EmergencyScheduleApiServiceImpl implements EmergencyScheduleApiServ
return show;
}
@Override
public List<Integer> scheduleShowV2(Integer year, Integer month, String userId) {
if (ObjectUtil.isNull(year)) {
throw new RuntimeException("参数缺失 year");
}
if (ObjectUtil.isNull(month)) {
throw new RuntimeException("参数缺失 month");
}
if (StrUtil.isBlank(userId)) {
userId = GlobalUtils.getLoginUser().getId();
}
// 查询排班记录
List<Date> schedules = schedulesNewMapper.scheduleTimes(year,month,userId);
return convertSchedules(schedules);
}
private List<Integer> convertSchedules(List<Date> schedules) {
if (CollUtil.isEmpty(schedules)) {
return Collections.emptyList();
}
return schedules.stream()
.map(DateUtil::dayOfMonth)
.distinct()
.sorted(Comparator.comparingInt(o -> o))
.collect(Collectors.toList());
}
private ScheduleMonth getFutureMonth(Integer year, Integer month, String userId) {
// 默认排班
@@ -109,15 +109,16 @@ public class LargeScreenImpl {
* Ps:新增type
*/
private void startPush(EmergencySocket socket, String busId, EmergencyCenter center,Integer type) {
// Ps: 新疆不需要走旧版大屏逻辑
// 根据 center.getDefaultCenter() 状态 走不同逻辑 true:旧版逻辑 false:新版逻辑
if (center.getDefaultCenter()) {
this.defaultLargeScreenPush(socket);
this.defaultSmsPush(socket, busId, center, type);
} else {
// if (center.getDefaultCenter()) {
// this.defaultLargeScreenPush(socket);
// this.defaultSmsPush(socket, busId, center, type);
// } else {
log.info("新版大屏推送... 执行时间: {}", System.currentTimeMillis());
webSocket.pushMessageBase(socket);
this.newSmsPush(socket, busId, center, type);
}
// }
}
/**
@@ -244,6 +245,7 @@ public class LargeScreenImpl {
hospitalSocketVo.setName(item.getName());
hospitalSocketVo.setLon(item.getLon());
hospitalSocketVo.setLat(item.getLat());
hospitalSocketVo.setDistance(item.getDistance());
hospitalSocketVoList.add(hospitalSocketVo);
});
}
@@ -465,13 +467,15 @@ public class LargeScreenImpl {
}
// 先对整个列表进行排序
allList.sort(new Comparator<TblBaseHospitalVo>() {
@Override
public int compare(TblBaseHospitalVo h1, TblBaseHospitalVo h2) {
double dist1 = distance(lat, lon, h1.getLat().doubleValue(), h1.getLon().doubleValue());
double dist2 = distance(lon, lat, h2.getLat().doubleValue(), h2.getLon().doubleValue());
return Double.compare(dist1, dist2);
}
allList.sort((h1, h2) -> {
double h1Lat = h1.getLat().doubleValue();
double h1Lon = h1.getLon().doubleValue();
double h2Lat = h2.getLat().doubleValue();
double h2Lon = h2.getLon().doubleValue();
double dist1 = distance(lat, lon, h1Lat, h1Lon);
double dist2 = distance(lat, lon, h2Lat, h2Lon);
return Double.compare(dist1, dist2);
});
// 选择前三个最近的点
@@ -0,0 +1,282 @@
package com.renkang.emergency.controller;
import com.renkang.emergency.bean.response.*;
import com.renkang.emergency.service.IFakerDataService;
import lombok.extern.slf4j.Slf4j;
import org.jeecg.common.api.dto.*;
import org.jeecg.common.api.vo.Result;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*;
import javax.validation.Valid;
import java.util.List;
/**
* 小屋大屏造假数据controller
*
* @author Junqiang Zhu
*/
@RestController
@RequestMapping("/emergency/fakerData")
@Slf4j
@Validated
public class FakerDataController {
@Autowired
private IFakerDataService fakerDataService;
/**
* 设置展示假数据开关
*
* @param enable 开关
* @return success
*/
@PostMapping("fakerDataEnable")
public Result<String> fakerDataEnable(@RequestBody @Validated FakerDataEnable enable) {
fakerDataService.fakerDataEnable(enable);
return Result.OK("修改成功");
}
/**
* 获取假数据
*
* @param module 模块
* @return data
*/
@PostMapping("getFakerData")
public Result<Object> getFakerData(@RequestParam Integer module,@RequestParam(required = false) String centerId) {
return Result.OK(fakerDataService.getFakerData(module,centerId));
}
/**
* 获取所有开关状态
*/
@PostMapping("getFakerDataEnable")
public Result<?> getFakerDataEnable(@RequestParam(required = false) String centerId) {
return Result.OK(fakerDataService.getFakerDataEnable(centerId));
}
/**
* 五类人群分布fakerData
*
* @param data data
* @return success
*/
@PostMapping("createGroupUserFakerData")
public Result<String> createGroupUserFakerData(@RequestBody @Validated GroupUserFakerData data) {
fakerDataService.createGroupUserFakerData(data);
return Result.OK("修改成功");
}
/**
* 一线医疗工作fakerData
*
* @param data data
* @return success
*/
@PostMapping("createMedicalCenterFakerData")
public Result<String> createMedicalCenterFakerData(@RequestBody @Validated MedicalCenterFakerData data) {
fakerDataService.createMedicalCenterFakerData(data);
return Result.OK("修改成功");
}
/**
* 员工营养监测fakerData
*
* @param data data
* @return success
*/
@PostMapping("createNutritionFakerData")
public Result<String> createNutritionFakerData(@RequestBody @Validated NutritionFakerData data) {
fakerDataService.createNutritionFakerData(data);
return Result.OK("修改成功");
}
/**
* 健康水平fakerData
*
* @param data data
* @return success
*/
@PostMapping("createHealthLevelFakerData")
public Result<String> createHealthLevelFakerData(@RequestBody @Validated HealthLevelFakerData data) {
fakerDataService.createHealthLevelFakerData(data);
return Result.OK("修改成功");
}
/**
* 心理干预效果fakerData
*
* @param data data
* @return success
*/
@PostMapping("createInterveneFakerData")
public Result<String> createInterveneFakerData(@RequestBody @Validated InterveneFakerData data) {
fakerDataService.createInterveneFakerData(data);
return Result.OK("修改成功");
}
/**
* 服务详情fakerData
*
* @param data data
* @return success
*/
@PostMapping("createServiceFakerData")
public Result<String> createServiceFakerData(@RequestBody @Validated ServiceFakerData data) {
fakerDataService.createServiceFakerData(data);
return Result.OK("修改成功");
}
/**
* 体检数据fakerData
*
* @param data data
* @return success
*/
@PostMapping("createMedicalFakerData")
public Result<String> createMedicalFakerData(@RequestBody @Validated MedicalFakerData data) {
fakerDataService.createMedicalFakerData(data);
return Result.OK("修改成功");
}
/**
* 大病fakerData
*
* @param data data
* @return success
*/
@PostMapping("createBigIllFakerData")
public Result<String> createBigIllFakerData(@RequestBody @Validated BigIllFakerData data) {
fakerDataService.createBigIllFakerData(data);
return Result.OK("修改成功");
}
/**
* 手表假数据
*
* @param data data
* @return success
*/
@PostMapping("createWatchFakerData")
public Result<String> createWatchFakerData(@RequestBody @Validated HouseWatchFakerData data) {
fakerDataService.createWatchFakerData(data);
return Result.OK("修改成功");
}
/**
* 小屋运动 压力假数据
*
* @param data data
* @return success
*/
@PostMapping("createWatchStressFakerData")
public Result<String> createWatchStressFakerData(@RequestBody @Validated HouseWatchStressFakerData data) {
fakerDataService.createWatchStressFakerData(data);
return Result.OK("修改成功");
}
/**
* 银川服务详情fakerData
*
* @param data data
* @return success
*/
@PostMapping("createYcServiceFakerData")
public Result<String> createYcServiceFakerData(@RequestBody @Validated ServiceFakerData data) {
fakerDataService.createYcServiceFakerData(data);
return Result.OK("修改成功");
}
/**
* 银川体检数据fakerData
*
* @param data data
* @return success
*/
@PostMapping("createYcMedicalFakerData")
public Result<String> createYcMedicalFakerData(@RequestBody @Validated MedicalFakerData data) {
fakerDataService.createYcMedicalFakerData(data);
return Result.OK("修改成功");
}
/**
* 银川一线医疗点数据fakerData
*
* @param data data
* @return success
*/
@PostMapping("createYcMedicalCenterFakerData")
public Result<String> createYcMedicalCenterFakerData(@RequestBody @Valid List<YcMedicalCenterFakerData> data,
@RequestParam(required = false) String centerId) {
fakerDataService.createYcMedicalCenterFakerData(data,centerId);
return Result.OK("修改成功");
}
/**
* 银川员工健康状况fakerData
*
* @param data data
* @return success
*/
@PostMapping("createYcUserHealthFakerData")
public Result<String> createYcUserHealthFakerData(@RequestBody @Validated YcUserHealthFakerData data) {
fakerDataService.createYcUserHealthFakerData(data);
return Result.OK("修改成功");
}
/**
* 新疆大屏 主诉分类
* @param data data
* @return success
*/
@PostMapping("createXjDemandTypeFakerData")
public Result<String> createXjDemandTypeFakerData(@RequestBody @Validated XjDemandTypeFakerData data) {
fakerDataService.createXjDemandTypeFakerData(data);
return Result.OK("修改成功");
}
/**
* 新疆大屏 体检人数
* @param data data
* @return success
*/
@PostMapping("createXjMedicalCountFakerData")
public Result<String> createXjMedicalCountFakerData(@RequestBody @Validated List<XjMedicalCountFakerData> data,
@RequestParam(required = false) String centerId) {
fakerDataService.createXjMedicalCountFakerData(data,centerId);
return Result.OK("修改成功");
}
/**
* 新疆大屏 健康打卡人数
* @param data data
* @return success
*/
@PostMapping("createXjHealthSignCountFakerData")
public Result<String> createXjHealthSignCountFakerData(@RequestBody @Validated XjHealthSignFakerData data) {
fakerDataService.createXjHealthSignCountFakerData(data);
return Result.OK("修改成功");
}
/**
* 新疆大屏 体检数据
* @param data data
* @return success
*/
@PostMapping("createXjMedicalDataFakerData")
public Result<String> createXjMedicalDataFakerData(@RequestBody @Validated XjMedicalDataFakerData data) {
fakerDataService.createXjMedicalDataFakerData(data);
return Result.OK("修改成功");
}
}
@@ -0,0 +1,23 @@
package com.renkang.emergency.controller;
import com.renkang.emergency.entity.EmergencyHealthRoom;
import com.renkang.emergency.service.IEmergencyHealthRoomService;
import io.swagger.v3.oas.annotations.tags.Tag;
import lombok.extern.slf4j.Slf4j;
import org.jeecg.common.system.base.controller.JeecgController;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
/**
* @Description: HealthRoom
* @Author: wang hao
* @Date: 2025-07-03
* @Version: V1.0
*/
@Tag(name = "health_room")
@RestController
@RequestMapping("/emergency/healthRoom")
@Slf4j
public class HealthRoomController extends JeecgController<EmergencyHealthRoom, IEmergencyHealthRoomService> {
}
@@ -1,76 +0,0 @@
package com.renkang.emergency.controller;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.renkang.emergency.entity.TblUserHelp;
import com.renkang.emergency.entity.dto.*;
import com.renkang.emergency.service.ITbUserHelpMacService;
import com.renkang.emergency.service.ITblAmbulanceGpsService;
import com.renkang.emergency.service.YcLargeScreenService;
import io.swagger.v3.oas.annotations.Operation;
import io.swagger.v3.oas.annotations.Parameter;
import org.jeecg.common.api.dto.YcMedicalCenterFakerData;
import org.jeecg.common.api.dto.YcUserHealthFakerData;
import org.jeecg.common.api.vo.Result;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import javax.annotation.Resource;
import java.util.List;
@RestController
@RequestMapping("/emergency/LargeScreenNew")
public class LargeScreenNewController {
@Resource
private ITbUserHelpMacService tbUserHelpMacService;
@Resource
private YcLargeScreenService ycLargeScreenService;
@Resource
private ITblAmbulanceGpsService tblAmbulanceGpsService;
/**
* 服务详情数据-24.09.19 新版大屏接口
*/
@PostMapping("/statisticsNew")
@Operation(summary = "服务详情数据", description = "服务详情数据")
public Result<?> statisticsNew(@RequestBody StatisticsDTO dto) {
return Result.OK(tbUserHelpMacService.statisticsNew(dto));
}
/**
* 获取云坐席列表数据-24.09.19 新版大屏接口
*/
@PostMapping("/phoneListNew")
@Operation(summary = "获取云坐席列表数据", description = "获取云坐席列表数据")
public Result<?> getPhoneListNew(@RequestBody PhoneListDTO dto) {
return Result.ok(tbUserHelpMacService.getPhoneListNew(dto));
}
/**
* 一线医疗点每日工作动态-24.09.19 新版大屏接口
*/
@PostMapping("/medicalCenterNew")
@Operation(summary = "一线医疗点每日工作动态", description = "一线医疗点每日工作动态")
public Result<List<YcMedicalCenterFakerData>> medicalCenterNew(@RequestBody MedicalCenterDTO dto) {
return Result.ok(ycLargeScreenService.medicalCenterNew(dto));
}
/**
* 员工队伍健康状况数据-24.09.19 新版大屏接口
*/
@PostMapping("/userHealthCenterNew")
@Operation(summary = "员工队伍健康状况数据", description = "员工队伍健康状况数据")
public Result<YcUserHealthFakerData> userHealthCenterNew(@RequestBody UserHealthCenterDTO dto) {
return Result.ok(ycLargeScreenService.userHealthCenterNew(dto));
}
/**
* 获取所有资源-24.09.19 新版大屏接口
*/
@PostMapping("/getAllListNew")
@Operation(summary = "获取所有资源", description = "获取所有资源")
public Result<?> getAllListNew(@RequestBody ResourcesAllDTO dto) {
return Result.OK(tblAmbulanceGpsService.getAllListNew(dto));
}
}
@@ -26,8 +26,10 @@ public class TblHelpCenterController {
@GetMapping("/sicknessTypeStatistic")
@Operation(summary = "主诉分类统计", description = "主诉分类统计")
public Result<?> sicknessTypeStatistic(@Parameter(description = "0:全部 1:女,2:男") @RequestParam(required = false) String sex, @Parameter(description = "部门id") @RequestParam(required = false) String depart) {
return Result.OK(tbHelpCenterService.sicknessTypeStatistic(sex,depart));
public Result<?> sicknessTypeStatistic(@Parameter(description = "0:全部 1:女,2:男") @RequestParam(required = false) String sex,
@Parameter(description = "部门id") @RequestParam(required = false) String depart,
@Parameter(description = "应急中心id",required = false) String centerId) {
return Result.OK(tbHelpCenterService.sicknessTypeStatistic(sex,depart,centerId));
}
}
@@ -0,0 +1,155 @@
package com.renkang.emergency.largeScreen.controller;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.renkang.emergency.entity.dto.*;
import com.renkang.emergency.largeScreen.entity.dto.*;
import com.renkang.emergency.largeScreen.entity.vo.*;
import com.renkang.emergency.largeScreen.service.ILargeScreenService;
import com.renkang.emergency.service.ITbUserHelpMacService;
import com.renkang.emergency.service.ITblAmbulanceGpsService;
import com.renkang.emergency.service.YcLargeScreenService;
import io.swagger.v3.oas.annotations.Operation;
import io.swagger.v3.oas.annotations.tags.Tag;
import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.jeecg.common.api.dto.YcMedicalCenterFakerData;
import org.jeecg.common.api.dto.YcUserHealthFakerData;
import org.jeecg.common.api.vo.Result;
import org.springframework.web.bind.annotation.*;
import java.util.List;
@Tag(name = "大屏/主屏")
@RestController
@RequestMapping("/emergency/LargeScreenNew")
@RequiredArgsConstructor
@Slf4j
public class LargeScreenNewController {
private final ITbUserHelpMacService tbUserHelpMacService;
private final YcLargeScreenService ycLargeScreenService;
private final ITblAmbulanceGpsService tblAmbulanceGpsService;
private final ILargeScreenService largeScreenService;
/**
* 获取地图
* @param type 1:油田医院 2:健康小屋 5:救护车 不传则全部
* @return
*/
@GetMapping("/map")
public Result<List<LargeScreenMap>> map(@RequestParam(name = "type",required = false) String type) {
return Result.ok(largeScreenService.map(type));
}
/**
* 服务详情数据-24.09.19 新版大屏接口
*/
@PostMapping("/statisticsNew")
@Operation(summary = "服务详情数据", description = "服务详情数据")
public Result<?> statisticsNew(@RequestBody StatisticsDTO dto) {
return Result.OK(tbUserHelpMacService.statisticsNew(dto));
}
/**
* 获取云坐席列表数据-24.09.19 新版大屏接口
*/
@PostMapping("/phoneListNew")
@Operation(summary = "获取云坐席列表数据", description = "获取云坐席列表数据")
public Result<?> getPhoneListNew(@RequestBody PhoneListDTO dto) {
return Result.ok(tbUserHelpMacService.getPhoneListNew(dto));
}
/**
* 一线医疗点每日工作动态-24.09.19 新版大屏接口
*/
@PostMapping("/medicalCenterNew")
@Operation(summary = "一线医疗点每日工作动态", description = "一线医疗点每日工作动态")
public Result<List<YcMedicalCenterFakerData>> medicalCenterNew(@RequestBody MedicalCenterDTO dto) {
return Result.ok(ycLargeScreenService.medicalCenterNew(dto));
}
/**
* 员工队伍健康状况数据-24.09.19 新版大屏接口
*/
@PostMapping("/userHealthCenterNew")
@Operation(summary = "员工队伍健康状况数据", description = "员工队伍健康状况数据")
public Result<YcUserHealthFakerData> userHealthCenterNew(@RequestBody UserHealthCenterDTO dto) {
return Result.ok(ycLargeScreenService.userHealthCenterNew(dto));
}
/**
* 获取所有资源-24.09.19 新版大屏接口
*/
@PostMapping("/getAllListNew")
@Operation(summary = "获取所有资源", description = "获取所有资源")
public Result<?> getAllListNew(@RequestBody ResourcesAllDTO dto) {
return Result.OK(tblAmbulanceGpsService.getAllListNew(dto));
}
@PostMapping("/healthRoomBase")
@Operation(summary = "健康小屋基础数据", description = "健康小屋基础数据")
public Result<List<HealthRoomBaseVO>> healthRoomBase(@RequestBody HealthRoomBaseDTO dto){
return Result.ok(largeScreenService.healthRoomBase(dto));
}
@PostMapping("/healthRoomDetail")
@Operation(summary = "健康小屋详情", description = "健康小屋详情")
public Result<IPage<HealthRoomVO>> healthRoomDetail(@RequestBody HealthRoomDTO dto){
return Result.ok(largeScreenService.healthRoomDetail(dto));
}
@PostMapping("/medicalAbnormal")
@Operation(summary = "体检异常数据详情列表", description = "体检异常数据详情列表")
public Result<IPage<MedicalAbnormalVO>> medicalAbnormal(@RequestBody MedicalAbnormalDTO dto){
return Result.ok(largeScreenService.medicalAbnormal(dto));
}
@PostMapping("/healthWeightLoss")
@Operation(summary = "健康打卡减重详情列表", description = "健康打卡减重详情列表")
public Result<IPage<HealthWeightLossVO>> healthWeightLoss(@RequestBody HealthWeightLossDTO dto){
return Result.ok(largeScreenService.healthWeightLoss(dto));
}
@PostMapping("/healthBloodSugar")
@Operation(summary = "健康打卡血糖详情列表", description = "健康打卡血糖详情列表")
public Result<IPage<HealthBloodSugarVO>> healthBloodSugar(@RequestBody HealthBloodSugarDTO dto){
return Result.ok(largeScreenService.healthBloodSugar(dto));
}
@PostMapping("/healthBloodPressure")
@Operation(summary = "健康打卡血压详情列表", description = "健康打卡血压详情列表")
public Result<IPage<HealthBloodPressureVO>> healthBloodPressure(@RequestBody HealthBloodPressureDTO dto){
return Result.ok(largeScreenService.healthBloodPressure(dto));
}
@PostMapping("/medicalPeopleNumStatistics")
@Operation(summary = "体检人数统计", description = "体检人数统计")
public Result<List<MedicalPeopleNumStatisticsVO>> medicalPeopleNumStatistics(@RequestBody MedicalPeopleNumStatisticsDTO dto){
return Result.ok(largeScreenService.medicalPeopleNumStatistics(dto));
}
@PostMapping("/medicalAbnormalStatistics")
@Operation(summary = "体检异常数据统计", description = "体检异常数据统计")
public Result<MedicalAbnormalStatisticsVO> medicalAbnormalStatistics(@RequestBody MedicalAbnormalStatisticsDTO dto){
return Result.ok(largeScreenService.medicalAbnormalStatistics(dto));
}
@PostMapping("/healthSign")
@Operation(summary = "健康打卡数据", description = "健康打卡数据")
public Result<HealthSignVO> healthSign(@RequestBody HealthSignDTO dto){
return Result.ok(largeScreenService.healthSign(dto));
}
@GetMapping("/hospital")
@Operation(summary = "医院数据", description = "医院数据")
public Result<List<HospitalVO>> hospital(){
return Result.ok(largeScreenService.hospital());
}
@GetMapping("runTest")
@Operation(summary = "推假数据", description = "推假数据")
public void runTest(){
largeScreenService.runTest();
}
}
@@ -0,0 +1,58 @@
package com.renkang.emergency.largeScreen.entity.dto;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat;
import java.util.Date;
@Data
public class HealthBloodPressureDTO {
/**
* 单位名称
*/
@Schema(title = "单位名称")
private String departName;
/**
* 员工姓名
*/
@Schema(title = "员工姓名")
private String name;
/**
* 填报开始时间起
*/
@JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
@DateTimeFormat(pattern = "yyyy-MM-dd")
@Schema(title = "填报开始时间起")
private Date inputDateBegin;
/**
* 填报开始时间止
*/
@JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
@DateTimeFormat(pattern = "yyyy-MM-dd")
@Schema(title = "填报开始时间止")
private Date inputDateEnd;
/**
* 异常标记 0:正常/1:异常/2:全部
*/
@Schema(title = "异常标记 0:正常/1:异常/2:全部")
private String abFlag;
/**
* 页码 从1开始
*/
@Schema(title = "页码 从1开始")
private Integer pageNo;
/**
* 每页数量
*/
@Schema(title = "每页数量")
private Integer pageSize;
public HealthBloodPressureDTO() {
this.pageNo = 1;
this.pageSize = 10;
}
}
@@ -0,0 +1,58 @@
package com.renkang.emergency.largeScreen.entity.dto;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat;
import java.util.Date;
@Data
public class HealthBloodSugarDTO {
/**
* 单位名称
*/
@Schema(title = "单位名称")
private String departName;
/**
* 员工姓名
*/
@Schema(title = "员工姓名")
private String name;
/**
* 填报开始时间起
*/
@JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
@DateTimeFormat(pattern = "yyyy-MM-dd")
@Schema(title = "填报开始时间起")
private Date inputDateBegin;
/**
* 填报开始时间止
*/
@JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
@DateTimeFormat(pattern = "yyyy-MM-dd")
@Schema(title = "填报开始时间止")
private Date inputDateEnd;
/**
* 异常标记 0:正常/1:异常/2:全部
*/
@Schema(title = "异常标记 0:正常/1:异常/2:全部")
private String abFlag;
/**
* 页码 从1开始
*/
@Schema(title = "页码 从1开始")
private Integer pageNo;
/**
* 每页数量
*/
@Schema(title = "每页数量")
private Integer pageSize;
public HealthBloodSugarDTO() {
this.pageNo = 1;
this.pageSize = 10;
}
}
@@ -0,0 +1,33 @@
package com.renkang.emergency.largeScreen.entity.dto;
import cn.hutool.core.date.DateUtil;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat;
import java.util.Date;
@Data
public class HealthRoomBaseDTO {
/**
* 检查日期起期 参数为空时,默认为今年第一天,如:2025-01-01
*/
@JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
@DateTimeFormat(pattern = "yyyy-MM-dd")
@Schema(title = "检查日期起期 参数为空时,默认为今年第一天,如:2025-01-01")
private Date checkInDateBegin;
/**
* 检查日期止期 参数为空时,默认为今天
*/
@JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
@DateTimeFormat(pattern = "yyyy-MM-dd")
@Schema(title = "检查日期止期 参数为空时,默认为今天")
private Date checkInDateEnd;
public HealthRoomBaseDTO() {
Date date = new Date();
this.checkInDateBegin = DateUtil.beginOfYear(date);
this.checkInDateEnd = DateUtil.endOfDay(date);
}
}
@@ -0,0 +1,74 @@
package com.renkang.emergency.largeScreen.entity.dto;
import cn.hutool.core.date.DateUtil;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import org.jeecg.common.aspect.annotation.Dict;
import org.springframework.format.annotation.DateTimeFormat;
import javax.validation.constraints.NotNull;
import java.util.Date;
@Data
public class HealthRoomDTO {
/**
* 健康小屋ID
*/
@Schema(title = "健康小屋ID")
@NotNull
private String healthRoomId;
/**
* 检查类型 11:BMI/21:收缩压/22:舒张压/31:血糖/41:低密度脂蛋白/42:总胆固醇/43:甘油三酯/51:尿酸/61:同型半胱氨酸 等等,缺失的可以继续加
*/
@Schema(title = "检查类型 11:BMI/21:收缩压/22:舒张压/31:血糖/41:低密度脂蛋白/42:总胆固醇/43:甘油三酯/51:尿酸/61:同型半胱氨酸 等等,缺失的可以继续加")
@Dict(dicCode = "xj_check_type")
private String checkType;
/**
* 单位名称
*/
@Schema(title = "单位名称")
private String departName;
/**
* 员工姓名
*/
@Schema(title = "员工姓名")
private String name;
/**
* 检查日期起期 参数为空时,默认为今年第一天,如:2025-01-01
*/
@JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
@DateTimeFormat(pattern = "yyyy-MM-dd")
@Schema(title = "检查日期起期 参数为空时,默认为今年第一天,如:2025-01-01")
private Date checkInDateBegin;
/**
* 检查日期止期 参数为空时,默认为今天
*/
@JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
@DateTimeFormat(pattern = "yyyy-MM-dd")
@Schema(title = "检查日期止期 参数为空时,默认为今天")
private Date checkInDateEnd;
/**
* 是否成功控降 是否成功空降,1:是/0.否
*/
@Schema(title = "是否成功控降 是否成功空降,1:是/0.否")
private String successFlag;
/**
* 页码 从1开始
*/
@Schema(title = "页码 从1开始")
private Integer pageNo;
/**
* 每页数量
*/
@Schema(title = "每页数量")
private Integer pageSize;
public HealthRoomDTO() {
Date date = new Date();
this.checkInDateBegin = DateUtil.beginOfYear(date);
this.checkInDateEnd = DateUtil.endOfDay(date);
this.pageNo = 1;
this.pageSize = 10;
}
}
@@ -0,0 +1,41 @@
package com.renkang.emergency.largeScreen.entity.dto;
import cn.hutool.core.date.DateUtil;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat;
import java.util.Date;
@Data
public class HealthSignDTO {
/**
* 数据类型 1.减重/2.血压/3.血糖 默认空则全部
*/
@Schema(title = "数据类型 1.减重/2.血压/3.血糖 默认空则全部")
private String dataType;
/**
* 填报开始时间起 参数为空时,默认为当天
*/
@JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
@DateTimeFormat(pattern = "yyyy-MM-dd")
@Schema(title = "填报开始时间起 参数为空时,默认为当天")
private Date inputDateBegin;
/**
* 填报开始时间止 参数为空时,默认为当天
*/
@JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
@DateTimeFormat(pattern = "yyyy-MM-dd")
@Schema(title = "填报开始时间止 参数为空时,默认为当天")
private Date inputDateEnd;
private String centerId;
public HealthSignDTO() {
this.dataType = "";
Date date = new Date();
this.inputDateBegin = DateUtil.beginOfDay(date);
this.inputDateEnd = DateUtil.endOfDay(date);
}
}
@@ -0,0 +1,58 @@
package com.renkang.emergency.largeScreen.entity.dto;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat;
import java.util.Date;
@Data
public class HealthWeightLossDTO {
/**
* 单位名称
*/
@Schema(title = "单位名称")
private String departName;
/**
* 员工姓名
*/
@Schema(title = "员工姓名")
private String name;
/**
* 填报开始时间起
*/
@JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
@DateTimeFormat(pattern = "yyyy-MM-dd")
@Schema(title = "填报开始时间起")
private Date inputDateBegin;
/**
* 填报开始时间止
*/
@JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
@DateTimeFormat(pattern = "yyyy-MM-dd")
@Schema(title = "填报开始时间止")
private Date inputDateEnd;
/**
* 异常标记
*/
@Schema(title = "异常标记")
private String abFlag;
/**
* 页码 从1开始
*/
@Schema(title = "页码 从1开始")
private Integer pageNo;
/**
* 每页数量
*/
@Schema(title = "每页数量")
private Integer pageSize;
public HealthWeightLossDTO() {
this.pageNo = 1;
this.pageSize = 10;
}
}
@@ -0,0 +1,60 @@
package com.renkang.emergency.largeScreen.entity.dto;
import cn.hutool.core.date.DateUtil;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat;
import javax.validation.constraints.NotNull;
import java.util.Date;
@Data
public class MedicalAbnormalDTO {
/**
* 单位名称
*/
private String departName;
/**
* 员工姓名
*/
private String name;
/**
* 检查日期起期 参数为空时,默认为今年第一天,如:2025-01-01
*/
@JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
@DateTimeFormat(pattern = "yyyy-MM-dd")
@Schema(title = "检查日期起期 参数为空时,默认为今年第一天,如:2025-01-01")
private Date checkInDateBegin;
/**
* 检查日期止期 参数为空时,默认为今天
*/
@JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
@DateTimeFormat(pattern = "yyyy-MM-dd")
@Schema(title = "检查日期止期 参数为空时,默认为今天")
private Date checkInDateEnd;
/**
* 查询类型 1:心血管异常/2:脑血管异常/3:冠脉CT异常
*/
@Schema(title = "查询类型 1:心血管异常/2:脑血管异常/3:冠脉CT异常")
@NotNull
private String queryType;
/**
* 页码 从1开始
*/
@Schema(title = "页码 从1开始")
private Integer pageNo;
/**
* 每页数量
*/
@Schema(title = "每页数量")
private Integer pageSize;
public MedicalAbnormalDTO() {
Date date = new Date();
this.checkInDateBegin = DateUtil.beginOfYear(date);
this.checkInDateEnd = DateUtil.endOfDay(date);
this.pageNo = 1;
this.pageSize = 10;
}
}
@@ -0,0 +1,34 @@
package com.renkang.emergency.largeScreen.entity.dto;
import cn.hutool.core.date.DateUtil;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat;
import java.util.Date;
@Data
public class MedicalAbnormalStatisticsDTO {
private String centerId;
/**
* 检查日期起期 参数为空时,默认为今年第一天
*/
@JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
@DateTimeFormat(pattern = "yyyy-MM-dd")
@Schema(title = "检查日期起期 参数为空时,默认为今年第一天")
private Date checkInDateBegin;
/**
* 检查日期止期 参数为空时,默认为今天
*/
@JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
@DateTimeFormat(pattern = "yyyy-MM-dd")
@Schema(title = "检查日期止期 参数为空时,默认为今天")
private Date checkInDateEnd;
public MedicalAbnormalStatisticsDTO() {
Date date = new Date();
this.checkInDateBegin = DateUtil.beginOfYear(date);
this.checkInDateEnd = DateUtil.endOfDay(date);
}
}
@@ -0,0 +1,16 @@
package com.renkang.emergency.largeScreen.entity.dto;
import cn.hutool.core.date.DateUtil;
import lombok.Data;
import java.util.Date;
@Data
public class MedicalPeopleNumStatisticsDTO {
private Integer medicalYear;
private String centerId;
public MedicalPeopleNumStatisticsDTO() {
this.medicalYear = DateUtil.year(new Date());
}
}
@@ -0,0 +1,62 @@
package com.renkang.emergency.largeScreen.entity.vo;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import org.jeecg.common.aspect.annotation.Dict;
import org.springframework.format.annotation.DateTimeFormat;
import java.util.Date;
@Data
public class HealthBloodPressureVO {
/**
* 单位
*/
@Schema(title = "单位")
private String departName;
/**
* 姓名
*/
@Schema(title = "姓名")
private String name;
/**
* 性别
*/
@Schema(title = "性别")
@Dict(dicCode = "sex2")
private Integer sex;
/**
* 年龄
*/
@Schema(title = "年龄")
private Integer age;
/**
* 收缩压
*/
@Schema(title = "收缩压")
private String sbp;
/**
* 收缩压是否异常 1:是/0:否
*/
@Schema(title = "收缩压是否异常 1:是/0:否")
private String sbpFlag;
/**
* 舒张压
*/
@Schema(title = "舒张压")
private String dbp;
/**
* 舒张压是否异常 1:是/0:否
*/
@Schema(title = "舒张压是否异常 1:是/0:否")
private String dbpFlag;
/**
* 填报时间
*/
@JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
@DateTimeFormat(pattern = "yyyy-MM-dd")
@Schema(title = "填报时间")
private Date inputDate;
}
@@ -0,0 +1,57 @@
package com.renkang.emergency.largeScreen.entity.vo;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import org.jeecg.common.aspect.annotation.Dict;
import org.springframework.format.annotation.DateTimeFormat;
import java.util.Date;
@Data
public class HealthBloodSugarVO {
/**
* 单位
*/
@Schema(title = "单位")
private String departName;
/**
* 姓名
*/
@Schema(title = "姓名")
private String name;
/**
* 性别
*/
@Schema(title = "性别")
@Dict(dicCode = "sex2")
private Integer sex;
/**
* 年龄
*/
@Schema(title = "年龄")
private Integer age;
/**
* 血糖值
*/
@Schema(title = "血糖值")
private String bsVal;
/**
* 血糖是否异常 1:是/0:否
*/
@Schema(title = "血糖是否异常 1:是/0:否")
private String bmiFlag;
/**
* 腰围(CM
*/
@Schema(title = "腰围(CM")
private String waist;
/**
* 填报时间
*/
@JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
@DateTimeFormat(pattern = "yyyy-MM-dd")
@Schema(title = "填报时间")
private Date inputDate;
}
@@ -0,0 +1,24 @@
package com.renkang.emergency.largeScreen.entity.vo;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat;
import java.util.Date;
@Data
public class HealthRoomBaseVO {
private String id;
private String departName;
private String address;
private String lon;
private String lat;
/**
* 建设时间
*/
@JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
@DateTimeFormat(pattern = "yyyy-MM-dd")
@Schema(title = "建设时间")
private Date buildDate;
}
@@ -0,0 +1,55 @@
package com.renkang.emergency.largeScreen.entity.vo;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import org.jeecg.common.aspect.annotation.Dict;
@Data
public class HealthRoomVO {
/**
* 单位
*/
@Schema(title = "单位")
private String departName;
/**
* 姓名
*/
@Schema(title = "姓名")
private String name;
/**
* 检查日期
*/
@Schema(title = "检查日期")
private String checkInDate;
/**
* 检查类型 11:BMI/21:收缩压/22:舒张压/31:血糖/41:低密度脂蛋白/42:总胆固醇/43:甘油三酯/51:尿酸/61:同型半胱氨酸 等等,缺失的可以继续加
*/
@Schema(title = "检查类型 11:BMI/21:收缩压/22:舒张压/31:血糖/41:低密度脂蛋白/42:总胆固醇/43:甘油三酯/51:尿酸/61:同型半胱氨酸 等等,缺失的可以继续加")
@Dict(dicCode = "xj_check_type")
private String checkType;
/**
* 去年体检值 前一年的体检值(初始值)
*/
@Schema(title = "去年体检值 前一年的体检值(初始值)")
private String lastVal;
/**
* 控降目标 一人一档(控降目标值)
*/
@Schema(title = "控降目标 一人一档(控降目标值")
private String goalVal;
/**
* 目前测量值 目前控降数值(可和健康打卡最新值一致)
*/
@Schema(title = "目前测量值 目前控降数值(可和健康打卡最新值一致)")
private String currentVal;
/**
* 控降差值 和控降目标对比
*/
@Schema(title = "控降差值 和控降目标对比")
private String compareVal;
/**
* 是否成功空降,1:是/0.否
*/
@Schema(title = "是否成功空降,1:是/0.否")
private String successFlag;
}
@@ -0,0 +1,23 @@
package com.renkang.emergency.largeScreen.entity.vo;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
@Data
public class HealthSignDataVO {
/**
* 数据类型 1.减重/2.血压/3.血糖
*/
@Schema(title = "数据类型 1.减重/2.血压/3.血糖")
private String dataType;
/**
* 打卡总人数
*/
@Schema(title = "打卡总人数")
private Integer totalCount;
/**
* 异常人数
*/
@Schema(title = "异常人数")
private Integer abCount;
}
@@ -0,0 +1,70 @@
package com.renkang.emergency.largeScreen.entity.vo;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
@Data
public class HealthSignVO {
/**
* 减重今日打卡人数
*/
@Schema(title = "减重今日打卡人数")
private Integer weightLossCountDay;
/**
* 减重本月打卡人数
*/
@Schema(title = "减重本月打卡人数")
private Integer weightLossCountMonth;
/**
* 减重今日异常人数
*/
@Schema(title = "减重今日异常人数")
private Integer weightLossAbnormalCountDay;
/**
* 减重本月异常人数
*/
@Schema(title = "减重本月异常人数")
private Integer weightLossAbnormalCountMonth;
/**
* 血糖今日打卡人数
*/
@Schema(title = "血糖今日打卡人数")
private Integer bloodSugarCountDay;
/**
* 血糖本月打卡人数
*/
@Schema(title = "血糖本月打卡人数")
private Integer bloodSugarCountMonth;
/**
* 血糖今日异常人数
*/
@Schema(title = "血糖今日异常人数")
private Integer bloodSugarAbnormalCountDay;
/**
* 血糖本月异常人数
*/
@Schema(title = "血糖本月异常人数")
private Integer bloodSugarAbnormalCountMonth;
/**
* 血压今日打卡人数
*/
@Schema(title = "血压今日打卡人数")
private Integer bloodPressureCountDay;
/**
* 血压本月打卡人数
*/
@Schema(title = "血压本月打卡人数")
private Integer bloodPressureCountMonth;
/**
* 血压今日异常人数
*/
@Schema(title = "血压今日异常人数")
private Integer bloodPressureAbnormalCountDay;
/**
* 血压本月异常人数
*/
@Schema(title = "血压本月异常人数")
private Integer bloodPressureAbnormalCountMonth;
}
@@ -0,0 +1,66 @@
package com.renkang.emergency.largeScreen.entity.vo;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import org.jeecg.common.aspect.annotation.Dict;
import org.springframework.format.annotation.DateTimeFormat;
import java.util.Date;
@Data
public class HealthWeightLossVO {
/**
* 单位
*/
@Schema(title = "单位")
private String departName;
/**
* 姓名
*/
@Schema(title = "姓名")
private String name;
/**
* 性别
*/
@Schema(title = "性别")
@Dict(dicCode = "sex2")
private Integer sex;
/**
* 年龄
*/
@Schema(title = "年龄")
private Integer age;
/**
* 腰围(CM
*/
@Schema(title = "腰围(CM")
private String waist;
/**
* 身高(M
*/
@Schema(title = "身高(M")
private String height;
/**
* 体重(KG
*/
@Schema(title = "体重(KG")
private String weight;
/**
* BMI
*/
@Schema(title = "BMI")
private String bmi;
/**
* BMI是否异常 1:是/0:否
*/
@Schema(title = "BMI是否异常 1:是/0:否")
private String bmiFlag;
/**
* 填报时间
*/
@JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
@DateTimeFormat(pattern = "yyyy-MM-dd")
@Schema(title = "填报时间")
private Date inputDate;
}
@@ -0,0 +1,44 @@
package com.renkang.emergency.largeScreen.entity.vo;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat;
import java.util.Date;
@Data
public class HospitalVO {
/**
* 医院名字
*/
@Schema(title = "医院名字")
private String hospitalName;
/**
* 别名
*/
@Schema(title = "别名")
private String alias;
/**
* 地点
*/
@Schema(title = "地点")
private String address;
/**
* 经度
*/
@Schema(title = "经度")
private String lon;
/**
* 纬度
*/
@Schema(title = "纬度")
private String lat;
/**
* 签约时间
*/
@JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
@DateTimeFormat(pattern = "yyyy-MM-dd")
@Schema(title = "签约时间")
private Date contractDate;
}
@@ -0,0 +1,42 @@
package com.renkang.emergency.largeScreen.entity.vo;
import com.renkang.emergency.entity.EmergencyHealthRoom;
import com.renkang.emergency.entity.Resource;
import lombok.Data;
@Data
public class LargeScreenMap {
private String id;
private String name;
private String orgName;
private String type;
private String loveNum;
private String longitude;
private String latitude;
public LargeScreenMap() {}
public LargeScreenMap(Resource resource) {
this.id = resource.getId();
this.name = resource.getName();
this.orgName = resource.getAddress();
this.type = resource.getType();
this.latitude = String.valueOf(resource.getLatitude());
this.longitude = String.valueOf(resource.getLongitude());
}
public LargeScreenMap(EmergencyHealthRoom room) {
this.id = room.getId();
this.name = room.getName();
this.orgName = room.getOrgName();
this.type = "2";
this.latitude = room.getLatitude();
this.longitude = room.getLongitude();
}
}
@@ -0,0 +1,20 @@
package com.renkang.emergency.largeScreen.entity.vo;
import cn.hutool.core.date.DateUtil;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat;
import java.util.Date;
@Data
public class MedicalAbnormalStatisticsVO {
private Integer totalCount;
// 心血管异常人数
private Integer cardiovaAbCount;
// 脑血管异常人数
private Integer cerebrovAbCount;
// 冠脉ct异常人数
private Integer cctaAbCount;
}
@@ -0,0 +1,40 @@
package com.renkang.emergency.largeScreen.entity.vo;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import org.jeecg.common.aspect.annotation.Dict;
@Data
public class MedicalAbnormalVO {
/**
* 单位
*/
@Schema(title = "单位")
private String departName;
/**
* 姓名
*/
@Schema(title = "姓名")
private String name;
/**
* 性别
*/
@Schema(title = "性别")
@Dict(dicCode = "sex2")
private Integer sex;
/**
* 年龄
*/
@Schema(title = "年龄")
private Integer age;
/**
* 体检医院
*/
@Schema(title = "体检医院")
private String hospitalName;
/**
* 检查日期
*/
@Schema(title = "检查日期")
private String checkInDate;
}
@@ -0,0 +1,23 @@
package com.renkang.emergency.largeScreen.entity.vo;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
@Data
public class MedicalPeopleNumStatisticsVO {
/**
* 医院名称
*/
@Schema(title = "医院名称")
private String hospitalName;
/**
* 已参检人数
*/
@Schema(title = "已参检人数")
private Integer checkedCount;
/**
* 应检人数 (可能无法提供 先冗余)
*/
@Schema(title = "应检人数 (可能无法提供 先冗余)")
private Integer totalCount;
}
@@ -0,0 +1,14 @@
package com.renkang.emergency.largeScreen.mapper;
import com.github.yulichang.base.MPJBaseMapper;
import com.renkang.emergency.largeScreen.entity.vo.LargeScreenMap;
/**
* @Description: large_screen
* @Author: wang hao
* @Date: 2025-07-04
* @Version: V1.0
*/
public interface LargeScreenMapper extends MPJBaseMapper<LargeScreenMap> {
}
@@ -0,0 +1,43 @@
package com.renkang.emergency.largeScreen.service;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.service.IService;
import com.renkang.emergency.largeScreen.entity.dto.*;
import com.renkang.emergency.largeScreen.entity.vo.*;
import java.util.List;
/**
* @Description: HealthRoom
* @Author: wang hao
* @Date: 2025-07-03
* @Version: V1.0
*/
public interface ILargeScreenService extends IService<LargeScreenMap> {
List<LargeScreenMap> map(String type);
List<HealthRoomBaseVO> healthRoomBase(HealthRoomBaseDTO dto);
IPage<HealthRoomVO> healthRoomDetail(HealthRoomDTO dto);
IPage<MedicalAbnormalVO> medicalAbnormal(MedicalAbnormalDTO dto);
IPage<HealthWeightLossVO> healthWeightLoss(HealthWeightLossDTO dto);
IPage<HealthBloodSugarVO> healthBloodSugar(HealthBloodSugarDTO dto);
IPage<HealthBloodPressureVO> healthBloodPressure(HealthBloodPressureDTO dto);
List<MedicalPeopleNumStatisticsVO> medicalPeopleNumStatistics(MedicalPeopleNumStatisticsDTO dto);
MedicalAbnormalStatisticsVO medicalAbnormalStatistics(MedicalAbnormalStatisticsDTO dto);
HealthSignVO healthSign(HealthSignDTO dto);
List<HospitalVO> hospital();
void runJob();
void runTest();
}
@@ -0,0 +1,487 @@
package com.renkang.emergency.largeScreen.service.impl;
import cn.hutool.core.collection.CollUtil;
import cn.hutool.core.date.DateUtil;
import cn.hutool.core.util.ObjUtil;
import cn.hutool.core.util.StrUtil;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.renkang.emergency.bean.response.XjDemandTypeFakerData;
import com.renkang.emergency.bean.response.XjHealthSignFakerData;
import com.renkang.emergency.bean.response.XjMedicalCountFakerData;
import com.renkang.emergency.bean.response.XjMedicalDataFakerData;
import com.renkang.emergency.entity.EmergencyHealthRoom;
import com.renkang.emergency.entity.Resource;
import com.renkang.emergency.entity.TblHelpCentorVo;
import com.renkang.emergency.entity.TblUserHelpVo;
import com.renkang.emergency.largeScreen.entity.dto.*;
import com.renkang.emergency.largeScreen.entity.vo.*;
import com.renkang.emergency.largeScreen.mapper.LargeScreenMapper;
import com.renkang.emergency.service.IEmergencyHealthRoomService;
import com.renkang.emergency.largeScreen.service.ILargeScreenService;
import com.renkang.emergency.service.IResourceService;
import lombok.RequiredArgsConstructor;
import org.jeecg.common.api.dto.ServiceFakerData;
import org.jeecg.common.api.dto.YcMedicalCenterFakerData;
import org.jeecg.common.constant.FakerDataConstant;
import org.jeecg.common.util.RedisUtil;
import org.jeecg.util.RedisClientUtil;
import org.jeecg.util.RedisKeyPrefix;
import org.springframework.beans.BeanUtils;
import org.springframework.stereotype.Service;
import java.util.*;
import java.util.stream.Collectors;
/**
* @Description: large_screen
* @Author: wang hao
* @Date: 2025-07-04
* @Version: V1.0
*/
@Service
@RequiredArgsConstructor
public class LargeScreenServiceImpl extends ServiceImpl<LargeScreenMapper, LargeScreenMap> implements ILargeScreenService {
private final RedisKeyPrefix MEDICAL = new RedisKeyPrefix(-1, "emergency");
private final String MEDICAL_PEOPLE_NUM_STATISTICS = "medicalPeopleNumStatistics";
private final String MEDICAL_ABNORMAL_STATISTICS = "medicalAbnormalStatistics";
private final String HEALTH_SIGN = "healthSign";
private final IResourceService resourceService;
private final IEmergencyHealthRoomService roomService;
private final RedisClientUtil redisClientUtil;
private final RedisUtil redisUtil;
private static final double MIN_LONGITUDE = 80.0;
private static final double MAX_LONGITUDE = 100.0;
private static final double MIN_LATITUDE = 35.0;
private static final double MAX_LATITUDE = 50.0;
private static final String[] CITIES = {
"乌鲁木齐", "喀什", "克拉玛依", "吐鲁番", "哈密",
"阿克苏", "巴音郭楞", "昌吉", "石河子", "博乐"
};
private static final String[] SURNAMES = {
"", "", "", "", "",
"", "", "", "", "",
"", "", "", "", "",
"", "", "", "", ""
};
private static final String[] FIRST_NAMES = {
"", "", "", "", "",
"", "", "", "", "",
"", "", "", "", "",
"", "", "", "", ""
};
@Override
public List<LargeScreenMap> map(String type) {
List<LargeScreenMap> maps = new ArrayList<>();
if (StrUtil.isEmpty(type) || type.equals("1")) {
List<Resource> list = resourceService.list(new LambdaQueryWrapper<Resource>()
.eq(StrUtil.isNotEmpty(type),Resource::getType, type)
.eq(StrUtil.isEmpty(type),Resource::getType, "1"));
maps.addAll(list.stream().map(LargeScreenMap::new).collect(Collectors.toList()));
}
if (StrUtil.isEmpty(type) || type.equals("2")) {
List<EmergencyHealthRoom> list = roomService.list();
maps.addAll(list.stream().map(LargeScreenMap::new).collect(Collectors.toList()));
}
if (StrUtil.isEmpty(type) || type.equals("5")) {
List<Resource> list = resourceService.list(new LambdaQueryWrapper<Resource>()
.eq(StrUtil.isNotEmpty(type),Resource::getType, type)
.eq(StrUtil.isEmpty(type),Resource::getType, "5"));
maps.addAll(list.stream().map(LargeScreenMap::new).collect(Collectors.toList()));
}
return maps;
}
@Override
public List<HealthRoomBaseVO> healthRoomBase(HealthRoomBaseDTO dto){
List<HealthRoomBaseVO> list = new ArrayList<>();
for (int i = 0; i < 10; i++) {
HealthRoomBaseVO baseVO = new HealthRoomBaseVO();
baseVO.setId(UUID.randomUUID().toString());
String[] data = generateRandomLocation();
baseVO.setAddress(data[0]);
baseVO.setLon(data[1]);
baseVO.setLat(data[2]);
baseVO.setDepartName("新疆大厂的单位");
baseVO.setBuildDate(new Date());
list.add(baseVO);
}
// 查询第三方接口返回 此接口返回对象跟原有可能不太一样 要注意
return list;
}
@Override
public IPage<HealthRoomVO> healthRoomDetail(HealthRoomDTO dto){
IPage<HealthRoomVO> page = new Page<>(dto.getPageNo(), dto.getPageSize());
page.setTotal(20);
List<HealthRoomVO> list = new ArrayList<>();
Map<String, String> CHECK_TYPES = new HashMap<>();
CHECK_TYPES.put("11", "BMI");
CHECK_TYPES.put("21", "收缩压");
CHECK_TYPES.put("22", "舒张压");
CHECK_TYPES.put("31", "血糖");
CHECK_TYPES.put("41", "低密度脂蛋白");
CHECK_TYPES.put("42", "总胆固醇");
CHECK_TYPES.put("43", "甘油三酯");
CHECK_TYPES.put("51", "尿酸");
CHECK_TYPES.put("61", "同型半胱氨酸");
List<String> keys = new ArrayList<>(CHECK_TYPES.keySet());
for (int i = 0; i < 10; i++) {
HealthRoomVO roomVO = new HealthRoomVO();
roomVO.setName("小屋");
roomVO.setDepartName("新疆大厂");
roomVO.setCheckInDate(DateUtil.today());
Random random = new Random();
String randomKey = keys.get(random.nextInt(keys.size()));
roomVO.setCheckType(randomKey);
roomVO.setLastVal("111");
roomVO.setGoalVal("100");
roomVO.setCurrentVal("105");
roomVO.setCompareVal("5");
roomVO.setSuccessFlag("0");
list.add(roomVO);
}
page.setRecords(list);
// 查询第三方接口返回
return page;
}
@Override
public IPage<MedicalAbnormalVO> medicalAbnormal (MedicalAbnormalDTO dto){
IPage<MedicalAbnormalVO> page = new Page<>(dto.getPageNo(), dto.getPageSize());
page.setTotal(20);
List<MedicalAbnormalVO> list = new ArrayList<>();
for (int i = 0; i < 20; i++) {
MedicalAbnormalVO abnormalVO = new MedicalAbnormalVO();
abnormalVO.setCheckInDate(DateUtil.today());
abnormalVO.setHospitalName("新疆医院");
abnormalVO.setDepartName("新疆大厂");
Random random = new Random();
abnormalVO.setSex(random.nextInt(2) + 1);
abnormalVO.setAge(random.nextInt(65 - 18 + 1) + 18);
abnormalVO.setName(generateRandomName());
list.add(abnormalVO);
}
page.setRecords(list);
// 查询第三方接口返回
return page;
}
@Override
public IPage<HealthWeightLossVO> healthWeightLoss (HealthWeightLossDTO dto){
IPage<HealthWeightLossVO> page = new Page<>(dto.getPageNo(), dto.getPageSize());
page.setTotal(20);
List<HealthWeightLossVO> list = new ArrayList<>();
for (int i = 0; i < 20; i++) {
HealthWeightLossVO weightLossVO = new HealthWeightLossVO();
weightLossVO.setName(generateRandomName());
weightLossVO.setWeight("80");
weightLossVO.setDepartName("新疆大厂");
weightLossVO.setBmi("26.8");
weightLossVO.setWaist("80");
weightLossVO.setHeight("180");
weightLossVO.setBmiFlag("0");
weightLossVO.setInputDate(new Date());
Random random = new Random();
weightLossVO.setSex(random.nextInt(2) + 1);
weightLossVO.setAge(random.nextInt(65 - 18 + 1) + 18);
list.add(weightLossVO);
}
page.setRecords(list);
// 查询第三方接口返回
return page;
}
@Override
public IPage<HealthBloodSugarVO> healthBloodSugar (HealthBloodSugarDTO dto){
IPage<HealthBloodSugarVO> page = new Page<>(dto.getPageNo(), dto.getPageSize());
page.setTotal(20);
List<HealthBloodSugarVO> list = new ArrayList<>();
for (int i = 0; i < 20; i++) {
HealthBloodSugarVO bloodSugarVO = new HealthBloodSugarVO();
bloodSugarVO.setName(generateRandomName());
bloodSugarVO.setDepartName("新疆大厂");
bloodSugarVO.setBmiFlag("0");
bloodSugarVO.setInputDate(new Date());
bloodSugarVO.setBsVal("100");
bloodSugarVO.setWaist("88");
Random random = new Random();
bloodSugarVO.setSex(random.nextInt(2) + 1);
bloodSugarVO.setAge(random.nextInt(65 - 18 + 1) + 18);
list.add(bloodSugarVO);
}
page.setRecords(list);
// 查询第三方接口返回
return page;
}
@Override
public IPage<HealthBloodPressureVO> healthBloodPressure (HealthBloodPressureDTO dto){
IPage<HealthBloodPressureVO> page = new Page<>(dto.getPageNo(), dto.getPageSize());
page.setTotal(20);
List<HealthBloodPressureVO> list = new ArrayList<>();
for (int i = 0; i < 20; i++) {
HealthBloodPressureVO bloodPressureVO = new HealthBloodPressureVO();
bloodPressureVO.setName(generateRandomName());
bloodPressureVO.setDepartName("新疆大厂");
bloodPressureVO.setInputDate(new Date());
bloodPressureVO.setDbp("25");
bloodPressureVO.setDbpFlag("0");
bloodPressureVO.setSbp("15");
bloodPressureVO.setSbpFlag("0");
Random random = new Random();
bloodPressureVO.setSex(random.nextInt(2) + 1);
bloodPressureVO.setAge(random.nextInt(65 - 18 + 1) + 18);
list.add(bloodPressureVO);
}
page.setRecords(list);
// 查询第三方接口返回
return page;
}
@Override
public List<HospitalVO> hospital(){
List<HospitalVO> list = new ArrayList<>();
for (int i = 0; i < 20; i++) {
HospitalVO hospitalVO = new HospitalVO();
hospitalVO.setHospitalName("新疆医院");
String[] data = generateRandomLocation();
hospitalVO.setAddress(data[0]);
hospitalVO.setAlias(""+i);
hospitalVO.setContractDate(new Date());
hospitalVO.setLon(data[1]);
hospitalVO.setLat(data[2]);
list.add(hospitalVO);
}
return list;
}
@Override
public List<MedicalPeopleNumStatisticsVO> medicalPeopleNumStatistics (MedicalPeopleNumStatisticsDTO dto){
Boolean enable = (Boolean) redisUtil.get(StrUtil.isNotEmpty(dto.getCenterId()) ?
FakerDataConstant.XJ_MEDICAL_COUNT_ENABLE + ":" + dto.getCenterId() : FakerDataConstant.XJ_MEDICAL_COUNT_ENABLE);
if (enable != null && enable) {
List<MedicalPeopleNumStatisticsVO> vo = XjMedicalCountFakerData(dto.getCenterId());
if (vo != null) {
return vo;
}
}
List<MedicalPeopleNumStatisticsVO> list = redisClientUtil.getList(MEDICAL,MEDICAL_PEOPLE_NUM_STATISTICS,MedicalPeopleNumStatisticsVO.class);
if (CollUtil.isEmpty(list)){
return new ArrayList<>();
}
return list;
}
@Override
public MedicalAbnormalStatisticsVO medicalAbnormalStatistics (MedicalAbnormalStatisticsDTO dto){
Boolean enable = (Boolean) redisUtil.get(StrUtil.isNotEmpty(dto.getCenterId())
? FakerDataConstant.XJ_MEDICAL_DATA_ENABLE + ":" + dto.getCenterId() : FakerDataConstant.XJ_MEDICAL_DATA_ENABLE);
if (enable != null && enable) {
MedicalAbnormalStatisticsVO vo = XjMedicalDataFakerDataNew(dto.getCenterId());
if (vo != null) {
return vo;
}
}
MedicalAbnormalStatisticsVO statisticsVO = redisClientUtil.get(MEDICAL,MEDICAL_ABNORMAL_STATISTICS,MedicalAbnormalStatisticsVO.class);
if (ObjUtil.isEmpty(statisticsVO)){
return new MedicalAbnormalStatisticsVO();
}
return statisticsVO;
}
@Override
public HealthSignVO healthSign (HealthSignDTO dto){
Boolean enable = (Boolean) redisUtil.get(StrUtil.isNotEmpty(dto.getCenterId())
? FakerDataConstant.XJ_HEALTH_SIGN_COUNT_ENABLE + ":" + dto.getCenterId() : FakerDataConstant.XJ_HEALTH_SIGN_COUNT_ENABLE);
if (enable != null && enable) {
HealthSignVO vo = XjHealthSignFakerDataNew(dto.getCenterId());
if (vo != null) {
return vo;
}
}
HealthSignVO vo = redisClientUtil.get(MEDICAL,HEALTH_SIGN,HealthSignVO.class);
if (null == vo){
return new HealthSignVO();
}
return vo;
}
@Override
public void runJob(){
// 体检人数统计查询
List<MedicalPeopleNumStatisticsVO> medicalPeopleNumStatisticsList = new ArrayList<>();
redisClientUtil.set(MEDICAL,MEDICAL_PEOPLE_NUM_STATISTICS,medicalPeopleNumStatisticsList);
// 体检异常数据查询
List<MedicalAbnormalStatisticsVO> medicalAbnormalStatisticsList = new ArrayList<>();
redisClientUtil.set(MEDICAL,MEDICAL_ABNORMAL_STATISTICS,medicalAbnormalStatisticsList);
// 减重 健康打卡数据今日查询
HealthSignDataVO weightLossDay = new HealthSignDataVO();
// 减重 健康打卡数据本月查询
HealthSignDataVO weightLossMonth = new HealthSignDataVO();
// 血压 健康打卡数据今日查询
HealthSignDataVO bloodPressureDay = new HealthSignDataVO();
// 血压 健康打卡数据本月查询
HealthSignDataVO bloodPressureMonth = new HealthSignDataVO();
// 血糖 健康打卡数据今日查询
HealthSignDataVO bloodSugarDay = new HealthSignDataVO();
// 血糖 健康打卡数据本月查询
HealthSignDataVO bloodSugarMonth = new HealthSignDataVO();
// 减重 血压 血糖 三种数据整合存
HealthSignVO healthSign = new HealthSignVO();
redisClientUtil.set(MEDICAL,HEALTH_SIGN,healthSign);
}
public void runTest(){
// 体检人数统计
List<MedicalPeopleNumStatisticsVO> medicalPeopleNumStatisticsList = new ArrayList<>();
MedicalPeopleNumStatisticsVO statistics1 = new MedicalPeopleNumStatisticsVO();
statistics1.setHospitalName("克拉玛依市诚裕慈惠综合门诊部门有限公司");
statistics1.setCheckedCount(220);
statistics1.setTotalCount(550);
medicalPeopleNumStatisticsList.add(statistics1);
MedicalPeopleNumStatisticsVO statistics2 = new MedicalPeopleNumStatisticsVO();
statistics2.setHospitalName("昌吉州宝石花医院");
statistics2.setCheckedCount(156);
statistics2.setTotalCount(200);
medicalPeopleNumStatisticsList.add(statistics2);
MedicalPeopleNumStatisticsVO statistics3 = new MedicalPeopleNumStatisticsVO();
statistics3.setHospitalName("中心医院");
statistics3.setCheckedCount(86);
statistics3.setTotalCount(100);
medicalPeopleNumStatisticsList.add(statistics3);
MedicalPeopleNumStatisticsVO statistics4 = new MedicalPeopleNumStatisticsVO();
statistics4.setHospitalName("克拉玛依市中西医结合医院(市人民医院)");
statistics4.setCheckedCount(23);
statistics4.setTotalCount(30);
medicalPeopleNumStatisticsList.add(statistics4);
MedicalPeopleNumStatisticsVO statistics5 = new MedicalPeopleNumStatisticsVO();
statistics5.setHospitalName("新疆医院");
statistics5.setCheckedCount(15);
statistics5.setTotalCount(20);
medicalPeopleNumStatisticsList.add(statistics5);
redisClientUtil.set(MEDICAL,MEDICAL_PEOPLE_NUM_STATISTICS,medicalPeopleNumStatisticsList);
// 体检异常数据查询
MedicalAbnormalStatisticsVO abnormalStatistics = new MedicalAbnormalStatisticsVO();
abnormalStatistics.setTotalCount(18000);
abnormalStatistics.setCardiovaAbCount(2000);
abnormalStatistics.setCerebrovAbCount(1500);
abnormalStatistics.setCctaAbCount(200);
redisClientUtil.set(MEDICAL,MEDICAL_ABNORMAL_STATISTICS,abnormalStatistics);
// 减重 血压 血糖 三种数据整合存
HealthSignVO healthSign = new HealthSignVO();
healthSign.setWeightLossCountDay(86);
healthSign.setWeightLossAbnormalCountDay(6);
healthSign.setWeightLossCountMonth(956);
healthSign.setWeightLossAbnormalCountMonth(56);
healthSign.setBloodSugarCountDay(8);
healthSign.setBloodSugarAbnormalCountDay(5);
healthSign.setBloodSugarCountMonth(156);
healthSign.setBloodSugarAbnormalCountMonth(56);
healthSign.setBloodPressureCountDay(18);
healthSign.setBloodPressureAbnormalCountDay(3);
healthSign.setBloodPressureCountMonth(350);
healthSign.setBloodPressureAbnormalCountMonth(30);
redisClientUtil.set(MEDICAL,HEALTH_SIGN,healthSign);
}
public static String[] generateRandomLocation() {
Random random = new Random();
// 生成随机经纬度
double longitude = MIN_LONGITUDE + (MAX_LONGITUDE - MIN_LONGITUDE) * random.nextDouble();
double latitude = MIN_LATITUDE + (MAX_LATITUDE - MIN_LATITUDE) * random.nextDouble();
// 随机选择一个城市作为地址
String city = CITIES[random.nextInt(CITIES.length)];
String[] data = new String[3];
data[0] = city;
data[1] = String.valueOf(longitude);
data[2] = String.valueOf(latitude);
return data;
}
public static String generateRandomName() {
Random random = new Random();
// 随机选择一个姓
String surname = SURNAMES[random.nextInt(SURNAMES.length)];
// 随机选择一个名
String firstName = FIRST_NAMES[random.nextInt(FIRST_NAMES.length)];
// 组合成完整姓名
return surname + firstName;
}
private List<MedicalPeopleNumStatisticsVO> XjMedicalCountFakerData(String centerId) {
try {
Object data = redisUtil.get(StrUtil.isNotEmpty(centerId) ?
FakerDataConstant.XJ_MEDICAL_COUNT + ":" + centerId : FakerDataConstant.XJ_MEDICAL_COUNT);
if (data == null) {
return Collections.emptyList();
}
try {
List<MedicalPeopleNumStatisticsVO> voList = new ArrayList<>();
List<XjMedicalCountFakerData> returnDataList = (List<XjMedicalCountFakerData>) data;
for (XjMedicalCountFakerData fakerData : returnDataList) {
MedicalPeopleNumStatisticsVO vo = new MedicalPeopleNumStatisticsVO();
vo.setHospitalName(fakerData.getName());
vo.setCheckedCount(Integer.valueOf(fakerData.getCount()));
voList.add(vo);
}
return voList;
} catch (Exception e) {
log.error("新疆大屏体检人数统计数据转化异常", e);
return Collections.emptyList();
}
} catch (Exception e) {
return null;
}
}
private HealthSignVO XjHealthSignFakerDataNew(String centerId) {
try {
HealthSignVO vo = new HealthSignVO();
XjHealthSignFakerData data = (XjHealthSignFakerData) redisUtil.get(StrUtil.isNotEmpty(centerId)
? FakerDataConstant.XJ_HEALTH_SIGN_COUNT + ":" + centerId : FakerDataConstant.XJ_HEALTH_SIGN_COUNT);
BeanUtils.copyProperties(data,vo);
return vo;
} catch (Exception e) {
return null;
}
}
private MedicalAbnormalStatisticsVO XjMedicalDataFakerDataNew(String centerId) {
try {
MedicalAbnormalStatisticsVO vo = new MedicalAbnormalStatisticsVO();
XjMedicalDataFakerData data = (XjMedicalDataFakerData) redisUtil.get(StrUtil.isNotEmpty(centerId)
? FakerDataConstant.XJ_MEDICAL_DATA + ":" + centerId : FakerDataConstant.XJ_MEDICAL_DATA);
BeanUtils.copyProperties(data,vo);
return vo;
} catch (Exception e) {
return null;
}
}
}
@@ -0,0 +1,19 @@
package com.renkang.emergency.largeScreen.task;
import com.renkang.emergency.largeScreen.service.ILargeScreenService;
import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Component;
@Component
@Slf4j
@RequiredArgsConstructor
public class LargeScreenJob {
private final ILargeScreenService largeScreenService;
public void largeScreen() {
log.info("========开始缓存大屏数据========");
largeScreenService.runJob();
log.info("========结束缓存大屏数据========");
}
}
@@ -0,0 +1,14 @@
package com.renkang.emergency.mapper;
import com.github.yulichang.base.MPJBaseMapper;
import com.renkang.emergency.entity.EmergencyHealthRoom;
/**
* @Description: large_screen
* @Author: wang hao
* @Date: 2025-07-04
* @Version: V1.0
*/
public interface EmergencyHealthRoomMapper extends MPJBaseMapper<EmergencyHealthRoom> {
}
@@ -1,10 +1,12 @@
package com.renkang.emergency.mapper;
import java.util.Date;
import java.util.List;
import com.renkang.emergency.entity.EmergencySchedules;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.github.yulichang.base.MPJBaseMapper;
import org.apache.ibatis.annotations.Param;
/**
* @Description: 排班表
@@ -14,4 +16,8 @@ import com.github.yulichang.base.MPJBaseMapper;
*/
public interface EmergencySchedulesNewMapper extends BaseMapper<EmergencySchedules>,MPJBaseMapper<EmergencySchedules> {
List<Date> scheduleTimes(@Param("year") Integer year,
@Param("month") Integer month,
@Param("userId") String userId);
}
@@ -0,0 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.renkang.emergency.mapper.EmergencyHealthRoomMapper">
</mapper>
@@ -1,5 +1,14 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.renkang.emergency.mapper.EmergencySchedulesNewMapper">
<select id="scheduleTimes" resultType="java.util.Date">
SELECT DISTINCT t2.schedules_time
FROM emergency_schedules_new_item t1
LEFT JOIN emergency_new_schedules t2 ON t1.schedules_id = t2.id
WHERE
YEAR ( t2.schedules_time ) = #{year}
AND MONTH ( t2.schedules_time ) = #{month}
and t2.schedules_time is not null
AND t1.user_id = #{userId}
</select>
</mapper>
@@ -0,0 +1,14 @@
package com.renkang.emergency.service;
import com.baomidou.mybatisplus.extension.service.IService;
import com.renkang.emergency.entity.EmergencyHealthRoom;
/**
* @Description: HealthRoom
* @Author: wanghao
* @Date: 2025-07-03
* @Version: V1.0
*/
public interface IEmergencyHealthRoomService extends IService<EmergencyHealthRoom> {
}
@@ -0,0 +1,59 @@
package com.renkang.emergency.service;
import com.renkang.emergency.bean.response.*;
import org.jeecg.common.api.dto.*;
import java.util.List;
import java.util.Map;
/**
* health_house_banner
*
* @author Junqiang Zhu
* @date 2024-04-11
*/
public interface IFakerDataService {
void createGroupUserFakerData(GroupUserFakerData data);
Object getFakerData(int module,String centerId);
void fakerDataEnable(FakerDataEnable enable);
void createMedicalCenterFakerData(MedicalCenterFakerData data);
void createNutritionFakerData(NutritionFakerData data);
void createHealthLevelFakerData(HealthLevelFakerData data);
void createInterveneFakerData(InterveneFakerData data);
Map<Integer, Boolean> getFakerDataEnable(String centerId);
void createServiceFakerData(ServiceFakerData data);
void createMedicalFakerData(MedicalFakerData data);
void createBigIllFakerData(BigIllFakerData data);
void createYcServiceFakerData(ServiceFakerData data);
void createYcMedicalFakerData(MedicalFakerData data);
void createYcMedicalCenterFakerData(List<YcMedicalCenterFakerData> data,String centerId);
void createYcUserHealthFakerData(YcUserHealthFakerData data);
void createWatchFakerData(HouseWatchFakerData data);
void createWatchStressFakerData(HouseWatchStressFakerData data);
void createXjDemandTypeFakerData(XjDemandTypeFakerData data);
void createXjMedicalCountFakerData(List<XjMedicalCountFakerData> data,String centerId);
void createXjHealthSignCountFakerData(XjHealthSignFakerData data);
void createXjMedicalDataFakerData(XjMedicalDataFakerData data);
}
@@ -18,6 +18,6 @@ public interface ITbHelpCenterService extends IService<TblHelpCenter> {
* @param depart
* @return
*/
List<TblHelpCentorVo> sicknessTypeStatistic(String sex,String depart);
List<TblHelpCentorVo> sicknessTypeStatistic(String sex,String depart,String centerId);
}
@@ -0,0 +1,18 @@
package com.renkang.emergency.service.impl;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.renkang.emergency.entity.EmergencyHealthRoom;
import com.renkang.emergency.mapper.EmergencyHealthRoomMapper;
import com.renkang.emergency.service.IEmergencyHealthRoomService;
import org.springframework.stereotype.Service;
/**
* @Description: emergency_order
* @Author: jeecg-boot
* @Date: 2023-04-26
* @Version: V1.0
*/
@Service
public class EmergencyHealthRoomServiceImpl extends ServiceImpl<EmergencyHealthRoomMapper, EmergencyHealthRoom> implements IEmergencyHealthRoomService {
}
@@ -0,0 +1,348 @@
package com.renkang.emergency.service.impl;
import cn.hutool.core.util.StrUtil;
import com.renkang.emergency.bean.response.*;
import com.renkang.emergency.service.IFakerDataService;
import org.jeecg.common.api.dto.*;
import org.jeecg.common.constant.FakerDataConstant;
import org.jeecg.common.exception.ExceptionAssertsUtil;
import org.jeecg.common.util.RedisUtil;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.*;
/**
* health_house_banner
*
* @author Junqiang Zhu
* @date 2024-04-11
*/
@Service
public class FakerDataServiceImpl implements IFakerDataService {
@Autowired
private RedisUtil redisUtil;
@Override
public void createGroupUserFakerData(GroupUserFakerData data) {
redisUtil.set(FakerDataConstant.GROUP_USER, data);
}
@Override
public void createMedicalCenterFakerData(MedicalCenterFakerData data) {
redisUtil.set(FakerDataConstant.MEDICAL_CENTER, data);
}
@Override
public void createNutritionFakerData(NutritionFakerData data) {
redisUtil.set(FakerDataConstant.NUTRITION, data);
}
@Override
public void createHealthLevelFakerData(HealthLevelFakerData data) {
redisUtil.set(FakerDataConstant.HEALTH, data);
}
@Override
public void createInterveneFakerData(InterveneFakerData data) {
redisUtil.set(FakerDataConstant.INTERVENE, data);
}
@Override
public void createServiceFakerData(ServiceFakerData data) {
redisUtil.set(FakerDataConstant.SERVICE, data);
}
@Override
public void createMedicalFakerData(MedicalFakerData data) {
redisUtil.set(FakerDataConstant.MEDICAL, data);
}
@Override
public void createBigIllFakerData(BigIllFakerData data) {
redisUtil.set(FakerDataConstant.BIG_ILL, data);
}
@Override
public void createWatchFakerData(HouseWatchFakerData data) {
redisUtil.set(FakerDataConstant.WATCH, data);
}
@Override
public void createWatchStressFakerData(HouseWatchStressFakerData data) {
redisUtil.set(FakerDataConstant.WATCH_STRESS, data);
}
@Override
public void createYcServiceFakerData(ServiceFakerData data) {
if (StrUtil.isNotEmpty(data.getCenterId())) {
redisUtil.set(FakerDataConstant.YC_SERVICE + ":" + data.getCenterId(), data);
} else {
redisUtil.set(FakerDataConstant.YC_SERVICE, data);
}
}
@Override
public void createYcMedicalFakerData(MedicalFakerData data) {
if (StrUtil.isNotEmpty(data.getCenterId())) {
redisUtil.set(FakerDataConstant.YC_MEDICAL + ":" + data.getCenterId(), data);
} else {
redisUtil.set(FakerDataConstant.YC_MEDICAL, data);
}
}
@Override
public void createYcMedicalCenterFakerData(List<YcMedicalCenterFakerData> data, String centerId) {
if (StrUtil.isNotEmpty(centerId)) {
redisUtil.set(FakerDataConstant.YC_MEDICAL_CENTER + ":" + centerId, data);
} else {
redisUtil.set(FakerDataConstant.YC_MEDICAL_CENTER, data);
}
}
@Override
public void createYcUserHealthFakerData(YcUserHealthFakerData data) {
if (StrUtil.isNotEmpty(data.getCenterId())) {
redisUtil.set(FakerDataConstant.YC_USER_HEALTH + ":" + data.getCenterId(), data);
} else {
redisUtil.set(FakerDataConstant.YC_USER_HEALTH, data);
}
}
@Override
public Map<Integer, Boolean> getFakerDataEnable(String centerId) {
Map<Integer, Boolean> map = new HashMap<>();
map.put(1, (Boolean) redisUtil.get(FakerDataConstant.GROUP_USER_ENABLE));
map.put(2, (Boolean) redisUtil.get(FakerDataConstant.MEDICAL_CENTER_ENABLE));
map.put(3, (Boolean) redisUtil.get(FakerDataConstant.NUTRITION_ENABLE));
map.put(4, (Boolean) redisUtil.get(FakerDataConstant.HEALTH_ENABLE));
map.put(5, (Boolean) redisUtil.get(FakerDataConstant.INTERVENE_ENABLE));
// 西安大屏相关
map.put(6, (Boolean) redisUtil.get(FakerDataConstant.SERVICE_ENABLE));
map.put(7, (Boolean) redisUtil.get(FakerDataConstant.MEDICAL_ENABLE));
map.put(8, (Boolean) redisUtil.get(FakerDataConstant.BIG_ILL_ENABLE));
// 银川大屏相关
if (StrUtil.isEmpty(centerId)) {
map.put(9, (Boolean) redisUtil.get(FakerDataConstant.YC_SERVICE_ENABLE));
map.put(10, (Boolean) redisUtil.get(FakerDataConstant.YC_MEDICAL_ENABLE));
map.put(11, (Boolean) redisUtil.get(FakerDataConstant.YC_MEDICAL_CENTER_ENABLE));
map.put(12, (Boolean) redisUtil.get(FakerDataConstant.YC_USER_HEALTH_ENABLE));
} else {
map.put(9, (Boolean) redisUtil.get(FakerDataConstant.YC_SERVICE_ENABLE + ":" + centerId));
map.put(10, (Boolean) redisUtil.get(FakerDataConstant.YC_MEDICAL_ENABLE + ":" + centerId));
map.put(11, (Boolean) redisUtil.get(FakerDataConstant.YC_MEDICAL_CENTER_ENABLE + ":" + centerId));
map.put(12, (Boolean) redisUtil.get(FakerDataConstant.YC_USER_HEALTH_ENABLE + ":" + centerId));
}
// 小屋手表数据开关
map.put(20, (Boolean) redisUtil.get(FakerDataConstant.WATCH_ENABLE));
// 小屋运动检测 压力检测
map.put(21, (Boolean) redisUtil.get(FakerDataConstant.WATCH_STRESS_ENABLE));
// 新疆大屏 主诉分类
map.put(31, (Boolean) redisUtil.get(StrUtil.isNotEmpty(centerId)
? FakerDataConstant.XJ_DEMAND_TYPE_ENABLE + ":" + centerId : FakerDataConstant.XJ_DEMAND_TYPE_ENABLE));
// 新疆大屏 体检人数统计
map.put(32, (Boolean) redisUtil.get(StrUtil.isNotEmpty(centerId)
? FakerDataConstant.XJ_MEDICAL_COUNT_ENABLE + ":" + centerId : FakerDataConstant.XJ_MEDICAL_COUNT_ENABLE));
// 新疆大屏 健康打卡数据
map.put(33, (Boolean) redisUtil.get(StrUtil.isNotEmpty(centerId)
? FakerDataConstant.XJ_HEALTH_SIGN_COUNT_ENABLE + ":" + centerId : FakerDataConstant.XJ_HEALTH_SIGN_COUNT_ENABLE));
// 新疆大屏 体检数据
map.put(34, (Boolean) redisUtil.get(StrUtil.isNotEmpty(centerId)
? FakerDataConstant.XJ_MEDICAL_DATA_ENABLE + ":" + centerId : FakerDataConstant.XJ_MEDICAL_DATA_ENABLE));
return map;
}
@Override
public Object getFakerData(int module, String centerId) {
switch (module) {
case 1:
return Optional.ofNullable(getRedisData(FakerDataConstant.GROUP_USER)).orElse(new GroupUserFakerData());
case 2:
return Optional.ofNullable(getRedisData(FakerDataConstant.MEDICAL_CENTER)).orElse(new MedicalCenterFakerData());
case 3:
return Optional.ofNullable(getRedisData(FakerDataConstant.NUTRITION)).orElse(new NutritionFakerData());
case 4:
return Optional.ofNullable(getRedisData(FakerDataConstant.HEALTH)).orElse(new HealthLevelFakerData());
case 5:
return Optional.ofNullable(getRedisData(FakerDataConstant.INTERVENE)).orElse(new InterveneFakerData());
case 6:
return Optional.ofNullable(getRedisData(FakerDataConstant.SERVICE)).orElse(new ServiceFakerData());
case 7:
return Optional.ofNullable(getRedisData(FakerDataConstant.MEDICAL)).orElse(new MedicalFakerData());
case 8:
return Optional.ofNullable(getRedisData(FakerDataConstant.BIG_ILL)).orElse(new BigIllFakerData());
// 银川大屏相关
case 9:
return Optional.ofNullable(getRedisData(
StrUtil.isNotEmpty(centerId) ? FakerDataConstant.YC_SERVICE + ":" + centerId : FakerDataConstant.YC_SERVICE))
.orElse(new ServiceFakerData());
case 10:
return Optional.ofNullable(
getRedisData(StrUtil.isNotEmpty(centerId) ? FakerDataConstant.YC_MEDICAL + ":" + centerId : FakerDataConstant.YC_MEDICAL))
.orElse(new MedicalFakerData());
case 11:
return Optional.ofNullable(
getRedisData(StrUtil.isNotEmpty(centerId) ? FakerDataConstant.YC_MEDICAL_CENTER + ":" + centerId : FakerDataConstant.YC_MEDICAL_CENTER))
.orElse(Collections.emptyList());
case 12:
return Optional.ofNullable(
getRedisData(StrUtil.isNotEmpty(centerId) ? FakerDataConstant.YC_USER_HEALTH + ":" + centerId : FakerDataConstant.YC_USER_HEALTH))
.orElse(new YcUserHealthFakerData());
// 手表假数据
case 20:
return Optional.ofNullable(getRedisData(FakerDataConstant.WATCH)).orElse(new HouseWatchFakerData());
// 小屋运动 压力了
case 21:
return Optional.ofNullable(getRedisData(FakerDataConstant.WATCH_STRESS)).orElse(new HouseWatchStressFakerData());
// 新疆大屏 主诉分类
case 31:
return Optional.ofNullable(
getRedisData(StrUtil.isNotEmpty(centerId) ? FakerDataConstant.XJ_DEMAND_TYPE + ":" + centerId : FakerDataConstant.XJ_DEMAND_TYPE))
.orElse(new XjDemandTypeFakerData());
// 新疆大屏 体检人数统计
case 32:
return Optional.ofNullable(
getRedisData(StrUtil.isNotEmpty(centerId) ? FakerDataConstant.XJ_MEDICAL_COUNT + ":" + centerId : FakerDataConstant.XJ_MEDICAL_COUNT))
.orElse(new ArrayList<XjMedicalCountFakerData>());
// 新疆大屏 健康打卡数据
case 33:
return Optional.ofNullable(
getRedisData(StrUtil.isNotEmpty(centerId) ? FakerDataConstant.XJ_HEALTH_SIGN_COUNT + ":" + centerId : FakerDataConstant.XJ_HEALTH_SIGN_COUNT))
.orElse(new XjDemandTypeFakerData());
// 新疆大屏 体检数据
case 34:
return Optional.ofNullable(
getRedisData(StrUtil.isNotEmpty(centerId) ? FakerDataConstant.XJ_MEDICAL_DATA + ":" + centerId : FakerDataConstant.XJ_MEDICAL_DATA))
.orElse(new XjMedicalDataFakerData());
default:
return null;
}
}
private Object getRedisData(String redisKey) {
return redisUtil.get(redisKey);
}
@Override
public void fakerDataEnable(FakerDataEnable enable) {
switch (enable.getModule()) {
case 1:
redisUtil.set(FakerDataConstant.GROUP_USER_ENABLE, enable.getEnable());
break;
case 2:
redisUtil.set(FakerDataConstant.MEDICAL_CENTER_ENABLE, enable.getEnable());
break;
case 3:
redisUtil.set(FakerDataConstant.NUTRITION_ENABLE, enable.getEnable());
break;
case 4:
redisUtil.set(FakerDataConstant.HEALTH_ENABLE, enable.getEnable());
break;
case 5:
redisUtil.set(FakerDataConstant.INTERVENE_ENABLE, enable.getEnable());
break;
case 6:
redisUtil.set(FakerDataConstant.SERVICE_ENABLE, enable.getEnable());
break;
case 7:
redisUtil.set(FakerDataConstant.MEDICAL_ENABLE, enable.getEnable());
break;
case 8:
redisUtil.set(FakerDataConstant.BIG_ILL_ENABLE, enable.getEnable());
break;
// 银川大屏相关
case 9:
redisUtil.set(StrUtil.isNotEmpty(enable.getCenterId()) ? FakerDataConstant.YC_SERVICE_ENABLE + ":" + enable.getCenterId() : FakerDataConstant.YC_SERVICE_ENABLE, enable.getEnable());
break;
case 10:
redisUtil.set(StrUtil.isNotEmpty(enable.getCenterId()) ? FakerDataConstant.YC_MEDICAL_ENABLE + ":" + enable.getCenterId() : FakerDataConstant.YC_MEDICAL_ENABLE, enable.getEnable());
break;
case 11:
redisUtil.set(StrUtil.isNotEmpty(enable.getCenterId()) ? FakerDataConstant.YC_MEDICAL_CENTER_ENABLE + ":" + enable.getCenterId() : FakerDataConstant.YC_MEDICAL_CENTER_ENABLE, enable.getEnable());
break;
case 12:
redisUtil.set(StrUtil.isNotEmpty(enable.getCenterId()) ? FakerDataConstant.YC_USER_HEALTH_ENABLE + ":" + enable.getCenterId() : FakerDataConstant.YC_USER_HEALTH_ENABLE, enable.getEnable());
break;
// 小屋手表开关
case 20:
redisUtil.set(FakerDataConstant.WATCH_ENABLE, enable.getEnable());
// 小屋运动 压力
case 21:
redisUtil.set(FakerDataConstant.WATCH_STRESS_ENABLE, enable.getEnable());
break;
// 新疆大屏 主诉分类
case 31:
redisUtil.set(StrUtil.isNotEmpty(enable.getCenterId()) ? FakerDataConstant.XJ_DEMAND_TYPE_ENABLE + ":" + enable.getCenterId() : FakerDataConstant.XJ_DEMAND_TYPE_ENABLE, enable.getEnable());
break;
// 新疆大屏 体检人数统计
case 32:
redisUtil.set(StrUtil.isNotEmpty(enable.getCenterId()) ? FakerDataConstant.XJ_MEDICAL_COUNT_ENABLE + ":" + enable.getCenterId() : FakerDataConstant.XJ_MEDICAL_COUNT_ENABLE, enable.getEnable());
break;
// 新疆大屏 健康打卡数据
case 33:
redisUtil.set(StrUtil.isNotEmpty(enable.getCenterId()) ? FakerDataConstant.XJ_HEALTH_SIGN_COUNT_ENABLE + ":" + enable.getCenterId() : FakerDataConstant.XJ_HEALTH_SIGN_COUNT_ENABLE, enable.getEnable());
break;
// 新疆大屏 体检数据
case 34:
redisUtil.set(StrUtil.isNotEmpty(enable.getCenterId()) ? FakerDataConstant.XJ_MEDICAL_DATA_ENABLE + ":" + enable.getCenterId() : FakerDataConstant.XJ_MEDICAL_DATA_ENABLE, enable.getEnable());
break;
default:
ExceptionAssertsUtil.fail("未知模块");
}
}
@Override
public void createXjDemandTypeFakerData(XjDemandTypeFakerData data) {
if (StrUtil.isNotEmpty(data.getCenterId())) {
redisUtil.set(FakerDataConstant.XJ_DEMAND_TYPE + ":" + data.getCenterId(), data);
} else {
redisUtil.set(FakerDataConstant.XJ_DEMAND_TYPE, data);
}
}
@Override
public void createXjMedicalCountFakerData(List<XjMedicalCountFakerData> data,String centerId) {
if (StrUtil.isNotEmpty(centerId)) {
redisUtil.set(FakerDataConstant.XJ_MEDICAL_COUNT + ":" + centerId, data);
} else {
redisUtil.set(FakerDataConstant.XJ_MEDICAL_COUNT, data);
}
}
@Override
public void createXjHealthSignCountFakerData(XjHealthSignFakerData data) {
if (StrUtil.isNotEmpty(data.getCenterId())) {
redisUtil.set(FakerDataConstant.XJ_HEALTH_SIGN_COUNT + ":" + data.getCenterId(), data);
} else {
redisUtil.set(FakerDataConstant.XJ_HEALTH_SIGN_COUNT, data);
}
}
@Override
public void createXjMedicalDataFakerData(XjMedicalDataFakerData data) {
if (StrUtil.isNotEmpty(data.getCenterId())) {
redisUtil.set(FakerDataConstant.XJ_MEDICAL_DATA + ":" + data.getCenterId(), data);
} else {
redisUtil.set(FakerDataConstant.XJ_MEDICAL_DATA, data);
}
}
}

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