|
@ -1,4 +1,12 @@
|
|
SET FOREIGN_KEY_CHECKS=0
|
|
|
|
|
|
/* ---------------------------------------------------- */
|
|
|
|
/* Generated by Enterprise Architect Version 12.0 */
|
|
|
|
/* Created On : 09-Dec-2016 10:34:58 AM */
|
|
|
|
/* DBMS : MySql */
|
|
|
|
/* ---------------------------------------------------- */
|
|
|
|
|
|
|
|
SET FOREIGN_KEY_CHECKS=0;
|
|
|
|
|
|
|
|
/* Drop Tables */
|
|
|
|
|
|
DROP TABLE IF EXISTS `topics` CASCADE
|
|
DROP TABLE IF EXISTS `topics` CASCADE
|
|
;
|
|
;
|
|
@ -27,111 +35,112 @@ DROP TABLE IF EXISTS `doctors` CASCADE
|
|
DROP TABLE IF EXISTS `patients` CASCADE
|
|
DROP TABLE IF EXISTS `patients` CASCADE
|
|
;
|
|
;
|
|
|
|
|
|
|
|
/* Create Tables */
|
|
|
|
|
|
CREATE TABLE `topics`
|
|
CREATE TABLE `topics`
|
|
(
|
|
(
|
|
`id` INTEGER NOT NULL,
|
|
|
|
`session_id` VARCHAR(50) NOT NULL,
|
|
|
|
`name` VARCHAR(50),
|
|
|
|
`create_time` TIMESTAMP(0),
|
|
|
|
`end_by` VARCHAR(50),
|
|
|
|
`start_message_id` INTEGER,
|
|
|
|
`end_message_id` INTEGER,
|
|
|
|
|
|
`id` INTEGER NOT NULL COMMENT 'ID',
|
|
|
|
`session_id` VARCHAR(50) NOT NULL COMMENT 'MUC会话ID',
|
|
|
|
`name` VARCHAR(50) COMMENT '议题名称',
|
|
|
|
`create_time` TIMESTAMP(0) COMMENT '创建时间',
|
|
|
|
`end_by` VARCHAR(50) COMMENT '结束人ID',
|
|
|
|
`start_message_id` INTEGER COMMENT '消息起始ID',
|
|
|
|
`end_message_id` INTEGER COMMENT '消息结束ID',
|
|
CONSTRAINT `PK_topics` PRIMARY KEY (`id`)
|
|
CONSTRAINT `PK_topics` PRIMARY KEY (`id`)
|
|
)
|
|
|
|
|
|
) COMMENT='议题,仅MUC模式使用。'
|
|
;
|
|
;
|
|
|
|
|
|
CREATE TABLE `p2p_messages`
|
|
CREATE TABLE `p2p_messages`
|
|
(
|
|
(
|
|
`id` INTEGER NOT NULL,
|
|
|
|
`session_id` VARCHAR(50) NOT NULL,
|
|
|
|
`sender_id` VARCHAR(50) NOT NULL,
|
|
|
|
`content_type` INTEGER NOT NULL,
|
|
|
|
`content` VARCHAR(1024),
|
|
|
|
`timestamp` TIMESTAMP(0),
|
|
|
|
|
|
`id` INTEGER NOT NULL COMMENT '消息ID',
|
|
|
|
`session_id` VARCHAR(50) NOT NULL COMMENT '所属会话',
|
|
|
|
`sender_id` VARCHAR(50) NOT NULL COMMENT '消息发送者',
|
|
|
|
`content_type` INTEGER NOT NULL COMMENT '消息类型,1文本,2图片,3语音,4文章,5跳转,6咨询开始,7咨询结束',
|
|
|
|
`content` VARCHAR(1024) COMMENT '消息内容',
|
|
|
|
`timestamp` TIMESTAMP(0) COMMENT '发送时间',
|
|
CONSTRAINT `PK_messages` PRIMARY KEY (`id`)
|
|
CONSTRAINT `PK_messages` PRIMARY KEY (`id`)
|
|
)
|
|
|
|
|
|
) COMMENT='P2P会话消息'
|
|
;
|
|
;
|
|
|
|
|
|
CREATE TABLE `group_messages`
|
|
CREATE TABLE `group_messages`
|
|
(
|
|
(
|
|
`id` INTEGER NOT NULL,
|
|
|
|
`session_id` VARCHAR(50) NOT NULL,
|
|
|
|
`sender_id` VARCHAR(50) NOT NULL,
|
|
|
|
`content_type` INTEGER NOT NULL,
|
|
|
|
`content` VARCHAR(1024),
|
|
|
|
`timestamp` TIMESTAMP(0),
|
|
|
|
|
|
`id` INTEGER NOT NULL COMMENT '消息ID',
|
|
|
|
`session_id` VARCHAR(50) NOT NULL COMMENT '所属会话',
|
|
|
|
`sender_id` VARCHAR(50) NOT NULL COMMENT '消息发送者',
|
|
|
|
`content_type` INTEGER NOT NULL COMMENT '消息类型,1文本,2图片,3语音,4文章,5跳转,6咨询开始,7咨询结束',
|
|
|
|
`content` VARCHAR(1024) COMMENT '消息内容',
|
|
|
|
`timestamp` TIMESTAMP(0) COMMENT '发送时间',
|
|
CONSTRAINT `PK_messages` PRIMARY KEY (`id`)
|
|
CONSTRAINT `PK_messages` PRIMARY KEY (`id`)
|
|
)
|
|
|
|
|
|
) COMMENT='群会话消息'
|
|
;
|
|
;
|
|
|
|
|
|
CREATE TABLE `sync_log`
|
|
CREATE TABLE `sync_log`
|
|
(
|
|
(
|
|
`event` VARCHAR(50) NOT NULL,
|
|
|
|
`last_sync_time` DATE NOT NULL,
|
|
|
|
`is_success` TINYINT,
|
|
|
|
`message` VARCHAR(50)
|
|
|
|
)
|
|
|
|
|
|
`event` VARCHAR(50) NOT NULL COMMENT '事件名称',
|
|
|
|
`last_sync_time` TIMESTAMP NOT NULL COMMENT '最近更新时间',
|
|
|
|
`succeed` TINYINT COMMENT '是否成功',
|
|
|
|
`message` VARCHAR(50) COMMENT '消息'
|
|
|
|
) COMMENT='用户同步日志'
|
|
;
|
|
;
|
|
|
|
|
|
CREATE TABLE `muc_messages`
|
|
CREATE TABLE `muc_messages`
|
|
(
|
|
(
|
|
`id` INTEGER NOT NULL,
|
|
|
|
`session_id` VARCHAR(50) NOT NULL,
|
|
|
|
`sender_id` VARCHAR(50) NOT NULL,
|
|
|
|
`content_type` INTEGER NOT NULL,
|
|
|
|
`content` VARCHAR(1024),
|
|
|
|
`timestamp` TIMESTAMP(0),
|
|
|
|
|
|
`id` INTEGER NOT NULL COMMENT '消息ID',
|
|
|
|
`session_id` VARCHAR(50) NOT NULL COMMENT '所属会话',
|
|
|
|
`sender_id` VARCHAR(50) NOT NULL COMMENT '消息发送者',
|
|
|
|
`content_type` INTEGER NOT NULL COMMENT '消息类型,1文本,2图片,3语音,4文章,5跳转,6咨询开始,7咨询结束',
|
|
|
|
`content` VARCHAR(1024) COMMENT '消息内容',
|
|
|
|
`timestamp` TIMESTAMP(0) COMMENT '发送时间',
|
|
CONSTRAINT `PK_messages` PRIMARY KEY (`id`)
|
|
CONSTRAINT `PK_messages` PRIMARY KEY (`id`)
|
|
)
|
|
|
|
|
|
) COMMENT='MUC会话消息'
|
|
;
|
|
;
|
|
|
|
|
|
CREATE TABLE `participants`
|
|
CREATE TABLE `participants`
|
|
(
|
|
(
|
|
`session_id` VARCHAR(50) NOT NULL,
|
|
|
|
`participaint_id` VARCHAR(50) NOT NULL,
|
|
|
|
`member_type` INTEGER NOT NULL,
|
|
|
|
`receiving` TINYINT,
|
|
|
|
|
|
`session_id` VARCHAR(50) NOT NULL COMMENT '会话ID',
|
|
|
|
`participaint_id` VARCHAR(50) NOT NULL COMMENT '参与者ID',
|
|
|
|
`member_type` INTEGER NOT NULL COMMENT '成员类型,1医生,2患者',
|
|
|
|
`receiving` TINYINT COMMENT '当前是否正在接收',
|
|
CONSTRAINT `PK_participants` PRIMARY KEY (`session_id`,`participaint_id`)
|
|
CONSTRAINT `PK_participants` PRIMARY KEY (`session_id`,`participaint_id`)
|
|
)
|
|
|
|
|
|
) COMMENT='会话参与者'
|
|
;
|
|
;
|
|
|
|
|
|
CREATE TABLE `sessions`
|
|
CREATE TABLE `sessions`
|
|
(
|
|
(
|
|
`id` VARCHAR(50) NOT NULL,
|
|
|
|
`name` VARCHAR(50) NOT NULL,
|
|
|
|
`type` INTEGER NOT NULL,
|
|
|
|
`create_date` DATE NOT NULL,
|
|
|
|
|
|
`id` VARCHAR(50) NOT NULL COMMENT '会话标识。会话标识来源根据业务场景:1 医生间P2P会话使用随机生成的ID;2 医生间的群会话使用行政团队的ID;3 医生与患者间的咨询以患者的ID+当前咨询次数为ID',
|
|
|
|
`name` VARCHAR(50) NOT NULL COMMENT '会话名称',
|
|
|
|
`type` INTEGER NOT NULL COMMENT '会话类型,1表示MUC会话,2表示P2P,3表示群会话,4表示临时讨论组',
|
|
|
|
`create_date` DATE NOT NULL COMMENT '创建时间',
|
|
CONSTRAINT `PK_sessions` PRIMARY KEY (`id`)
|
|
CONSTRAINT `PK_sessions` PRIMARY KEY (`id`)
|
|
)
|
|
|
|
|
|
) COMMENT='会话'
|
|
;
|
|
;
|
|
|
|
|
|
CREATE TABLE `doctors`
|
|
CREATE TABLE `doctors`
|
|
(
|
|
(
|
|
`id` VARCHAR(50) NOT NULL,
|
|
|
|
`name` VARCHAR(30) NOT NULL,
|
|
|
|
`sex` INTEGER NOT NULL,
|
|
|
|
`birthdate` DATE,
|
|
|
|
`avatar` VARCHAR(255),
|
|
|
|
`level` INTEGER NOT NULL,
|
|
|
|
`last_sync_time` TIMESTAMP(0) NOT NULL,
|
|
|
|
`locked` TINYINT NOT NULL,
|
|
|
|
|
|
`id` VARCHAR(50) NOT NULL COMMENT 'ID',
|
|
|
|
`name` VARCHAR(30) NOT NULL COMMENT '姓名',
|
|
|
|
`sex` INTEGER NOT NULL COMMENT '性别',
|
|
|
|
`birthdate` DATE COMMENT '出生日期',
|
|
|
|
`avatar` VARCHAR(255) COMMENT '头像',
|
|
|
|
`level` INTEGER COMMENT '级别',
|
|
|
|
`locked` TINYINT NOT NULL DEFAULT 0 COMMENT '是否禁用',
|
|
CONSTRAINT `PK_doctors` PRIMARY KEY (`id`)
|
|
CONSTRAINT `PK_doctors` PRIMARY KEY (`id`)
|
|
)
|
|
|
|
|
|
) COMMENT='医生'
|
|
;
|
|
;
|
|
|
|
|
|
CREATE TABLE `patients`
|
|
CREATE TABLE `patients`
|
|
(
|
|
(
|
|
`id` VARCHAR(50) NOT NULL,
|
|
|
|
`name` VARCHAR(30),
|
|
|
|
`sex` INTEGER,
|
|
|
|
`avatar` VARCHAR(255),
|
|
|
|
`birthdate` DATE,
|
|
|
|
`general_dr` VARCHAR(50),
|
|
|
|
`health_dr` VARCHAR(50),
|
|
|
|
|
|
`id` VARCHAR(50) NOT NULL COMMENT 'ID',
|
|
|
|
`name` VARCHAR(30) COMMENT '姓名',
|
|
|
|
`sex` INTEGER COMMENT '性别',
|
|
|
|
`avatar` VARCHAR(255) COMMENT '头像',
|
|
|
|
`birthdate` DATE COMMENT '出生日期',
|
|
CONSTRAINT `PK_users` PRIMARY KEY (`id`)
|
|
CONSTRAINT `PK_users` PRIMARY KEY (`id`)
|
|
)
|
|
|
|
|
|
) COMMENT='患者'
|
|
;
|
|
;
|
|
|
|
|
|
|
|
/* Create Primary Keys, Indexes, Uniques, Checks */
|
|
|
|
|
|
ALTER TABLE `topics`
|
|
ALTER TABLE `topics`
|
|
ADD INDEX `IXFK_topics_sessions` (`session_id` ASC)
|
|
ADD INDEX `IXFK_topics_sessions` (`session_id` ASC)
|
|
;
|
|
;
|
|
@ -160,12 +169,4 @@ ALTER TABLE `muc_messages`
|
|
ADD INDEX `IXFK_messages_sessions` (`session_id` ASC)
|
|
ADD INDEX `IXFK_messages_sessions` (`session_id` ASC)
|
|
;
|
|
;
|
|
|
|
|
|
ALTER TABLE `participants`
|
|
|
|
ADD INDEX `IXFK_participants_doctors` (`participaint_id` ASC)
|
|
|
|
;
|
|
|
|
|
|
|
|
ALTER TABLE `participants`
|
|
|
|
ADD INDEX `IXFK_participants_patients` (`participaint_id` ASC)
|
|
|
|
;
|
|
|
|
|
|
|
|
SET FOREIGN_KEY_CHECKS=1
|
|
SET FOREIGN_KEY_CHECKS=1
|