|
@@ -1,133 +1,156 @@
|
|
|
CREATE DATABASE IF NOT EXISTS `fm-scheduling`;
|
|
|
|
|
|
CREATE TABLE
|
|
|
-IF
|
|
|
- NOT EXISTS `work_rule` (
|
|
|
- `id` VARCHAR ( 64 ) NOT NULL COMMENT '主键',
|
|
|
- `rule_type` int(1) NOT NULL COMMENT '规则类型 1 日排班规则 2 月排班规则 0 特殊日期',
|
|
|
- `rule_operator` int(8) COMMENT '比较符号 1大于 -1 小于 0 等于 2 大于等于 -2 小于等于',
|
|
|
- `rule_value` double(10, 2) COMMENT '规则的限定值',
|
|
|
- `validator` varchar (64) COMMENT '规则的校验器标记',
|
|
|
- `enable` tinyint (1) NOT NULL DEFAULT 1 COMMENT '规则是否启用',
|
|
|
- `ts` TIMESTAMP default current_timestamp on update current_timestamp NOT NULL COMMENT '乐观锁',
|
|
|
- `creator` VARCHAR ( 32 ) NOT NULL COMMENT '创建人',
|
|
|
- `creation_time` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
|
|
|
- `modifier` VARCHAR ( 32 ) NOT NULL COMMENT '最后修改人',
|
|
|
- `modified_time` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '最后修改时间',
|
|
|
- `valid` INT ( 11 ) NOT NULL COMMENT '合法标识',
|
|
|
-PRIMARY KEY ( `id` )) ENGINE = INNODB CHARSET = utf8mb4 COMMENT '工作规则表';
|
|
|
+ IF
|
|
|
+ NOT EXISTS `work_rule`
|
|
|
+(
|
|
|
+ `id` VARCHAR(64) NOT NULL COMMENT '主键',
|
|
|
+ `rule_type` int(1) NOT NULL COMMENT '规则类型 1 日排班规则 2 月排班规则 0 特殊日期',
|
|
|
+ `rule_operator` int(8) COMMENT '比较符号 1大于 -1 小于 0 等于 2 大于等于 -2 小于等于',
|
|
|
+ `rule_value` double(10, 2) COMMENT '规则的限定值',
|
|
|
+ `validator` varchar(64) COMMENT '规则的校验器标记',
|
|
|
+ `enable` tinyint(1) NOT NULL DEFAULT 1 COMMENT '规则是否启用',
|
|
|
+ `ts` TIMESTAMP default current_timestamp on update current_timestamp NOT NULL COMMENT '乐观锁',
|
|
|
+ `creator` VARCHAR(32) NOT NULL COMMENT '创建人',
|
|
|
+ `creation_time` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
|
|
|
+ `modifier` VARCHAR(32) NOT NULL COMMENT '最后修改人',
|
|
|
+ `modified_time` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '最后修改时间',
|
|
|
+ `valid` INT(11) NOT NULL COMMENT '合法标识',
|
|
|
+ PRIMARY KEY (`id`)
|
|
|
+) ENGINE = INNODB
|
|
|
+ CHARSET = utf8mb4 COMMENT '工作规则表';
|
|
|
|
|
|
CREATE TABLE
|
|
|
-IF
|
|
|
- NOT EXISTS `work_shift` (
|
|
|
- `id` VARCHAR ( 64 ) NOT NULL COMMENT '主键',
|
|
|
- `shift_abbr` VARCHAR (64) NOT NULL COMMENT '班次的简称',
|
|
|
- `shift_name` VARCHAR ( 255 ) NOT NULL COMMENT '班次的全称',
|
|
|
- `start_time` VARCHAR ( 64 ) NOT NULL COMMENT '班次的开始时间',
|
|
|
- `end_time` VARCHAR ( 64 ) NOT NULL COMMENT '班次的结束时间',
|
|
|
- `work_duration` INT ( 8 ) NOT NULL COMMENT '班次的工作时间以分钟后为单位',
|
|
|
- `ts` TIMESTAMP default current_timestamp on update current_timestamp NOT NULL COMMENT '乐观锁',
|
|
|
- `creator` VARCHAR ( 32 ) NOT NULL COMMENT '创建人',
|
|
|
- `creation_time` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
|
|
|
- `modifier` VARCHAR ( 32 ) NOT NULL COMMENT '最后修改人',
|
|
|
- `modified_time` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '最后修改时间',
|
|
|
- `valid` INT ( 11 ) NOT NULL COMMENT '合法标识',
|
|
|
-PRIMARY KEY ( `id` )) ENGINE = INNODB CHARSET = utf8mb4 COMMENT '工作班次表';
|
|
|
+ IF
|
|
|
+ NOT EXISTS `work_shift`
|
|
|
+(
|
|
|
+ `id` VARCHAR(64) NOT NULL COMMENT '主键',
|
|
|
+ `shift_abbr` VARCHAR(64) NOT NULL COMMENT '班次的简称',
|
|
|
+ `shift_name` VARCHAR(255) NOT NULL COMMENT '班次的全称',
|
|
|
+ `start_time` VARCHAR(64) NOT NULL COMMENT '班次的开始时间',
|
|
|
+ `end_time` VARCHAR(64) NOT NULL COMMENT '班次的结束时间',
|
|
|
+ `work_duration` INT(8) NOT NULL COMMENT '班次的工作时间以分钟后为单位',
|
|
|
+ `ts` TIMESTAMP default current_timestamp on update current_timestamp NOT NULL COMMENT '乐观锁',
|
|
|
+ `creator` VARCHAR(32) NOT NULL COMMENT '创建人',
|
|
|
+ `creation_time` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
|
|
|
+ `modifier` VARCHAR(32) NOT NULL COMMENT '最后修改人',
|
|
|
+ `modified_time` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '最后修改时间',
|
|
|
+ `valid` INT(11) NOT NULL COMMENT '合法标识',
|
|
|
+ PRIMARY KEY (`id`)
|
|
|
+) ENGINE = INNODB
|
|
|
+ CHARSET = utf8mb4 COMMENT '工作班次表';
|
|
|
|
|
|
|
|
|
CREATE TABLE
|
|
|
-IF
|
|
|
- NOT EXISTS `work_shift_duration` (
|
|
|
- `id` VARCHAR ( 64 ) NOT NULL COMMENT '主键',
|
|
|
- `shift_id` VARCHAR ( 64 ) NOT NULL COMMENT '工作班次id',
|
|
|
- `start_time` date NOT NULL COMMENT '适用时间的开始时间',
|
|
|
- `end_time` date NOT NULL COMMENT '适用时间的结束时间',
|
|
|
- `ts` TIMESTAMP default current_timestamp on update current_timestamp NOT NULL COMMENT '乐观锁',
|
|
|
- `creator` VARCHAR ( 32 ) NOT NULL COMMENT '创建人',
|
|
|
- `creation_time` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
|
|
|
- `modifier` VARCHAR ( 32 ) NOT NULL COMMENT '最后修改人',
|
|
|
- `modified_time` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '最后修改时间',
|
|
|
- `valid` INT ( 11 ) NOT NULL COMMENT '合法标识',
|
|
|
-PRIMARY KEY ( `id` )) ENGINE = INNODB CHARSET = utf8mb4 COMMENT '工作班次适用日期表';
|
|
|
+ IF
|
|
|
+ NOT EXISTS `work_shift_duration`
|
|
|
+(
|
|
|
+ `id` VARCHAR(64) NOT NULL COMMENT '主键',
|
|
|
+ `shift_id` VARCHAR(64) NOT NULL COMMENT '工作班次id',
|
|
|
+ `start_time` date NOT NULL COMMENT '适用时间的开始时间',
|
|
|
+ `end_time` date NOT NULL COMMENT '适用时间的结束时间',
|
|
|
+ `ts` TIMESTAMP default current_timestamp on update current_timestamp NOT NULL COMMENT '乐观锁',
|
|
|
+ `creator` VARCHAR(32) NOT NULL COMMENT '创建人',
|
|
|
+ `creation_time` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
|
|
|
+ `modifier` VARCHAR(32) NOT NULL COMMENT '最后修改人',
|
|
|
+ `modified_time` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '最后修改时间',
|
|
|
+ `valid` INT(11) NOT NULL COMMENT '合法标识',
|
|
|
+ PRIMARY KEY (`id`)
|
|
|
+) ENGINE = INNODB
|
|
|
+ CHARSET = utf8mb4 COMMENT '工作班次适用日期表';
|
|
|
|
|
|
CREATE TABLE
|
|
|
-IF
|
|
|
- NOT EXISTS `work_shift_rest` (
|
|
|
- `id` VARCHAR ( 64 ) NOT NULL COMMENT '主键',
|
|
|
- `shift_id` VARCHAR ( 64 ) NOT NULL COMMENT '班次的id',
|
|
|
- `start_time` VARCHAR ( 64 ) NULL COMMENT '班次的休息开始时间',
|
|
|
- `end_time` VARCHAR ( 64 ) NULL COMMENT '班次的休息结束时间',
|
|
|
- `ts` TIMESTAMP default current_timestamp on update current_timestamp NOT NULL COMMENT '乐观锁',
|
|
|
- `creator` VARCHAR ( 32 ) NOT NULL COMMENT '创建人',
|
|
|
- `creation_time` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
|
|
|
- `modifier` VARCHAR ( 32 ) NOT NULL COMMENT '最后修改人',
|
|
|
- `modified_time` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '最后修改时间',
|
|
|
- `valid` INT ( 11 ) NOT NULL COMMENT '合法标识',
|
|
|
-PRIMARY KEY ( `id` )) ENGINE = INNODB CHARSET = utf8mb4 COMMENT '工作班次休息时间表';
|
|
|
+ IF
|
|
|
+ NOT EXISTS `work_shift_rest`
|
|
|
+(
|
|
|
+ `id` VARCHAR(64) NOT NULL COMMENT '主键',
|
|
|
+ `shift_id` VARCHAR(64) NOT NULL COMMENT '班次的id',
|
|
|
+ `start_time` VARCHAR(64) NULL COMMENT '班次的休息开始时间',
|
|
|
+ `end_time` VARCHAR(64) NULL COMMENT '班次的休息结束时间',
|
|
|
+ `ts` TIMESTAMP default current_timestamp on update current_timestamp NOT NULL COMMENT '乐观锁',
|
|
|
+ `creator` VARCHAR(32) NOT NULL COMMENT '创建人',
|
|
|
+ `creation_time` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
|
|
|
+ `modifier` VARCHAR(32) NOT NULL COMMENT '最后修改人',
|
|
|
+ `modified_time` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '最后修改时间',
|
|
|
+ `valid` INT(11) NOT NULL COMMENT '合法标识',
|
|
|
+ PRIMARY KEY (`id`)
|
|
|
+) ENGINE = INNODB
|
|
|
+ CHARSET = utf8mb4 COMMENT '工作班次休息时间表';
|
|
|
|
|
|
|
|
|
CREATE TABLE
|
|
|
-IF
|
|
|
- NOT EXISTS `work_shift_conflict` (
|
|
|
- `id` VARCHAR ( 64 ) NOT NULL COMMENT '主键',
|
|
|
- `source_shift_id` VARCHAR ( 64 ) NOT NULL COMMENT '被比较的班次的id',
|
|
|
- `current_shift_id` VARCHAR ( 64 ) NULL COMMENT '当前的班次的id',
|
|
|
- `creator` VARCHAR ( 32 ) NOT NULL COMMENT '创建人',
|
|
|
- `creation_time` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
|
|
|
- `modifier` VARCHAR ( 32 ) NOT NULL COMMENT '最后修改人',
|
|
|
- `modified_time` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '最后修改时间',
|
|
|
- `valid` INT ( 11 ) NOT NULL COMMENT '合法标识',
|
|
|
-PRIMARY KEY ( `id` )) ENGINE = INNODB CHARSET = utf8mb4 COMMENT '工作班次冲突表';
|
|
|
-
|
|
|
+ IF
|
|
|
+ NOT EXISTS `work_shift_conflict`
|
|
|
+(
|
|
|
+ `id` VARCHAR(64) NOT NULL COMMENT '主键',
|
|
|
+ `source_shift_id` VARCHAR(64) NOT NULL COMMENT '被比较的班次的id',
|
|
|
+ `current_shift_id` VARCHAR(64) NULL COMMENT '当前的班次的id',
|
|
|
+ `creator` VARCHAR(32) NOT NULL COMMENT '创建人',
|
|
|
+ `creation_time` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
|
|
|
+ `modifier` VARCHAR(32) NOT NULL COMMENT '最后修改人',
|
|
|
+ `modified_time` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '最后修改时间',
|
|
|
+ `valid` INT(11) NOT NULL COMMENT '合法标识',
|
|
|
+ PRIMARY KEY (`id`)
|
|
|
+) ENGINE = INNODB
|
|
|
+ CHARSET = utf8mb4 COMMENT '工作班次冲突表';
|
|
|
|
|
|
|
|
|
|
|
|
CREATE TABLE
|
|
|
-IF
|
|
|
- NOT EXISTS `work_person` (
|
|
|
- `id` VARCHAR ( 64 ) NOT NULL COMMENT '主键',
|
|
|
- `person_id` VARCHAR ( 64 ) NOT NULL COMMENT '工作人员id',
|
|
|
- `project_id` VARCHAR ( 64 ) NOT NULL COMMENT '项目id',
|
|
|
- `ts` TIMESTAMP default current_timestamp on update current_timestamp NOT NULL COMMENT '乐观锁',
|
|
|
- `creator` VARCHAR ( 32 ) NOT NULL COMMENT '创建人',
|
|
|
- `creation_time` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
|
|
|
- `modifier` VARCHAR ( 32 ) NOT NULL COMMENT '最后修改人',
|
|
|
- `modified_time` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '最后修改时间',
|
|
|
- `valid` INT ( 11 ) NOT NULL COMMENT '合法标识',
|
|
|
-PRIMARY KEY ( `id` )) ENGINE = INNODB CHARSET = utf8mb4 COMMENT '工作人员档案表';
|
|
|
+ IF
|
|
|
+ NOT EXISTS `work_person`
|
|
|
+(
|
|
|
+ `id` VARCHAR(64) NOT NULL COMMENT '主键',
|
|
|
+ `person_id` VARCHAR(64) NOT NULL COMMENT '工作人员id',
|
|
|
+ `project_id` VARCHAR(64) NOT NULL COMMENT '项目id',
|
|
|
+ `ts` TIMESTAMP default current_timestamp on update current_timestamp NOT NULL COMMENT '乐观锁',
|
|
|
+ `creator` VARCHAR(32) NOT NULL COMMENT '创建人',
|
|
|
+ `creation_time` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
|
|
|
+ `modifier` VARCHAR(32) NOT NULL COMMENT '最后修改人',
|
|
|
+ `modified_time` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '最后修改时间',
|
|
|
+ `valid` INT(11) NOT NULL COMMENT '合法标识',
|
|
|
+ PRIMARY KEY (`id`)
|
|
|
+) ENGINE = INNODB
|
|
|
+ CHARSET = utf8mb4 COMMENT '工作人员档案表';
|
|
|
|
|
|
|
|
|
CREATE TABLE
|
|
|
-IF
|
|
|
- NOT EXISTS `work_schedule` (
|
|
|
- `id` VARCHAR ( 64 ) NOT NULL COMMENT '主键',
|
|
|
- `work_day` INT ( 11 ) datetime NOT NULL COMMENT '年',
|
|
|
- `shift_id` VARCHAR ( 11 ) NOT NULL COMMENT '班次id',
|
|
|
- `staff_id` VARCHAR ( 64 ) NOT NULL COMMENT '工作人员id',
|
|
|
- `ts` TIMESTAMP default current_timestamp on update current_timestamp NOT NULL COMMENT '乐观锁',
|
|
|
- `creator` VARCHAR ( 32 ) NOT NULL COMMENT '创建人',
|
|
|
- `creation_time` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
|
|
|
- `modifier` VARCHAR ( 32 ) NOT NULL COMMENT '最后修改人',
|
|
|
- `modified_time` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '最后修改时间',
|
|
|
- `valid` INT ( 11 ) NOT NULL COMMENT '合法标识',
|
|
|
- PRIMARY KEY ( `id` )) ENGINE = INNODB CHARSET = utf8mb4 COMMENT '工作排班表';
|
|
|
+ IF
|
|
|
+ NOT EXISTS `work_schedule`
|
|
|
+(
|
|
|
+ `id` VARCHAR(64) NOT NULL COMMENT '主键',
|
|
|
+ `work_day` datetime NOT NULL COMMENT '上班的日期',
|
|
|
+ `shift_id` VARCHAR(11) NOT NULL COMMENT '班次id',
|
|
|
+ `staff_id` VARCHAR(64) NOT NULL COMMENT '工作人员id',
|
|
|
+ `ts` TIMESTAMP default current_timestamp on update current_timestamp NOT NULL COMMENT '乐观锁',
|
|
|
+ `creator` VARCHAR(32) NOT NULL COMMENT '创建人',
|
|
|
+ `creation_time` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
|
|
|
+ `modifier` VARCHAR(32) NOT NULL COMMENT '最后修改人',
|
|
|
+ `modified_time` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '最后修改时间',
|
|
|
+ `valid` INT(11) NOT NULL COMMENT '合法标识',
|
|
|
+ PRIMARY KEY (`id`)
|
|
|
+) ENGINE = INNODB
|
|
|
+ CHARSET = utf8mb4 COMMENT '工作排班表';
|
|
|
|
|
|
CREATE TABLE
|
|
|
-IF
|
|
|
- NOT EXISTS `work_time` (
|
|
|
- `id` VARCHAR ( 64 ) NOT NULL COMMENT '主键',
|
|
|
- `work_shift_id` VARCHAR ( 11 ) NOT NULL COMMENT '班次id',
|
|
|
- `work_staff_id` VARCHAR ( 64 ) NOT NULL COMMENT '工作人员id',
|
|
|
- `real_start_time` datetime NOT NULL COMMENT '工作人员的真实上班时间',
|
|
|
- `real_end_time` datetime NOT NULL COMMENT '工作人员真实下班时间',
|
|
|
- `real_work_time` int(8) NOT NULL COMMENT '工作人员的真实工作时长 以分钟计',
|
|
|
- `ts` TIMESTAMP default current_timestamp on update current_timestamp NOT NULL COMMENT '乐观锁',
|
|
|
- `creator` VARCHAR ( 32 ) NOT NULL COMMENT '创建人',
|
|
|
- `creation_time` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
|
|
|
- `modifier` VARCHAR ( 32 ) NOT NULL COMMENT '最后修改人',
|
|
|
- `modified_time` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '最后修改时间',
|
|
|
- `valid` INT ( 11 ) NOT NULL COMMENT '合法标识',
|
|
|
- PRIMARY KEY ( `id` )) ENGINE = INNODB CHARSET = utf8mb4 COMMENT '工作时间表';
|
|
|
+ IF
|
|
|
+ NOT EXISTS `work_time`
|
|
|
+(
|
|
|
+ `id` VARCHAR(64) NOT NULL COMMENT '主键',
|
|
|
+ `work_shift_id` VARCHAR(11) NOT NULL COMMENT '班次id',
|
|
|
+ `work_staff_id` VARCHAR(64) NOT NULL COMMENT '工作人员id',
|
|
|
+ `real_start_time` datetime NOT NULL COMMENT '工作人员的真实上班时间',
|
|
|
+ `real_end_time` datetime NOT NULL COMMENT '工作人员真实下班时间',
|
|
|
+ `real_work_time` int(8) NOT NULL COMMENT '工作人员的真实工作时长 以分钟计',
|
|
|
+ `ts` TIMESTAMP default current_timestamp on update current_timestamp NOT NULL COMMENT '乐观锁',
|
|
|
+ `creator` VARCHAR(32) NOT NULL COMMENT '创建人',
|
|
|
+ `creation_time` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
|
|
|
+ `modifier` VARCHAR(32) NOT NULL COMMENT '最后修改人',
|
|
|
+ `modified_time` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '最后修改时间',
|
|
|
+ `valid` INT(11) NOT NULL COMMENT '合法标识',
|
|
|
+ PRIMARY KEY (`id`)
|
|
|
+) ENGINE = INNODB
|
|
|
+ CHARSET = utf8mb4 COMMENT '工作时间表';
|
|
|
|
|
|
|
|
|
|