yangcong 3 years ago
parent
commit
af5f4fda26
1 changed files with 24 additions and 53 deletions
  1. 24 53
      fm-scheduling/src/main/resources/db.init/table.sql

+ 24 - 53
fm-scheduling/src/main/resources/db.init/table.sql

@@ -4,13 +4,12 @@ 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 '规则的限定值',
-	`rule_content_ids` varchar (255)  COMMENT '规则内容ids',
+	`validator` varchar (64) COMMENT '规则的校验器标记',
 	`enable` tinyint (1)  NOT NULL DEFAULT 1 COMMENT '规则是否启用',
-	`ts` TIMESTAMP NULL 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 '最后修改人',
@@ -20,33 +19,14 @@ PRIMARY KEY ( `id` )) ENGINE = INNODB CHARSET = utf8mb4 COMMENT '工作规则表
 
 CREATE TABLE
 IF
-	NOT EXISTS `work_rule_content` (
-	`id` VARCHAR ( 64 ) NOT NULL COMMENT '主键',
-	`rule_desc` VARCHAR ( 64 )  COMMENT 'rule描述',
-	`rule_value` VARCHAR ( 64 )  COMMENT 'rule的值',
-	`filed_ref` int(2)  COMMENT '字段关联 以满足规则内容里的不同类型 这样好做字段层面的条件的判断 1 岗位 2 专业 3 班次 4 领导检查 5 安全日检查 ',
-	`filed_ref_value` int(2)  COMMENT '与字段相关联的值',
-	`ts` TIMESTAMP NULL 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 ( 5 ) NOT NULL COMMENT '班次的简称',
+	`shift_abbr` VARCHAR (64) NOT NULL COMMENT '班次的简称',
 	`shift_name` VARCHAR ( 255 ) NOT NULL COMMENT '班次的全称',
-	`shift_start_time` VARCHAR ( 64 ) NOT NULL COMMENT '班次的开始时间',
-	`shift_end_time` VARCHAR ( 64 ) NOT NULL COMMENT '班次的结束时间',
-	`positionIds` VARCHAR ( 64 ) NOT NULL COMMENT '班次需要的岗位',
-	`shift_type` int(1) NOT NULL COMMENT '班次类型 1 集团统一  0 项目统一',
-	`real_work_duration` INT ( 8 ) NOT NULL COMMENT '班次的真实工作时间以分钟后为单位',
-	`work_rule_id` INT ( 8 ) NOT NULL COMMENT '班次的真实工作时间以分钟后为单位',
-	`ts` TIMESTAMP NULL 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 '最后修改人',
@@ -59,10 +39,10 @@ CREATE TABLE
 IF
 	NOT EXISTS `work_shift_duration` (
 	`id` VARCHAR ( 64 ) NOT NULL COMMENT '主键',
-	`work_shift_id` VARCHAR ( 64 ) NOT NULL COMMENT '工作班次id',
-	`duration_start` date NOT NULL COMMENT '适用时间的开始时间',
-	`duration_end` date  NOT NULL COMMENT '适用时间的结束时间',
-	`ts` TIMESTAMP NULL 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 '最后修改人',
@@ -74,10 +54,10 @@ CREATE TABLE
 IF
 	NOT EXISTS `work_shift_rest` (
 	`id` VARCHAR ( 64 ) NOT NULL COMMENT '主键',
-	`work_shift_id` VARCHAR ( 64 ) NOT NULL COMMENT '班次的id',
-	`rest_start_time` VARCHAR ( 64 ) NULL COMMENT '班次的休息开始时间',
-	`rest_end_time` VARCHAR ( 64 ) NULL COMMENT '班次的休息结束时间',
-	`ts` TIMESTAMP NULL 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 '最后修改人',
@@ -90,8 +70,8 @@ CREATE TABLE
 IF
 	NOT EXISTS `work_shift_conflict` (
 	`id` VARCHAR ( 64 ) NOT NULL COMMENT '主键',
-	`source_work_shift_id` VARCHAR ( 64 ) NOT NULL COMMENT '被比较的班次的id',
-	`current_work_shift_id` VARCHAR ( 64 ) NULL COMMENT '当前的班次的id',
+	`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 '最后修改人',
@@ -104,14 +84,11 @@ PRIMARY KEY ( `id` )) ENGINE = INNODB CHARSET = utf8mb4 COMMENT '工作班次冲
 
 CREATE TABLE
 IF
-	NOT EXISTS `work_staff` (
+	NOT EXISTS `work_person` (
 	`id` VARCHAR ( 64 ) NOT NULL COMMENT '主键',
 	`person_id` VARCHAR ( 64 ) NOT NULL COMMENT '工作人员id',
-	`dept_id` VARCHAR ( 64) NOT NULL COMMENT '部门id',
 	`project_id` VARCHAR ( 64 ) NOT NULL COMMENT '项目id',
-	`position_id` VARCHAR ( 64 ) NOT NULL COMMENT '主职位id',
-	`position_deputy_ids` VARCHAR ( 64 ) NULL COMMENT '副岗ids',
-	`ts` TIMESTAMP NULL 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 '最后修改人',
@@ -124,20 +101,16 @@ CREATE TABLE
 IF
 	NOT EXISTS `work_schedule` (
 		`id` VARCHAR ( 64 ) NOT NULL COMMENT '主键',
-		`year` INT ( 11 ) NOT NULL COMMENT '年',
-		`month` INT ( 11 ) NOT NULL COMMENT '月',
-		`day` INT ( 11 ) NOT NULL COMMENT '日',
-		`work_shift_id` VARCHAR ( 11 ) NOT NULL COMMENT '班次id',
-		`work_staff_id` VARCHAR ( 64 ) NOT NULL COMMENT '工作人员id',
-		`ts` TIMESTAMP NULL 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 '工作排班表';
-CREATE INDEX idx_year_month_day USING BTREE ON work_schedule ( `year`, `month`, `day` );
-CREATE INDEX idx_work_time_type USING HASH ON work_schedule ( `work_time_type` );
 
 CREATE TABLE
 IF
@@ -147,11 +120,8 @@ IF
 		`work_staff_id` VARCHAR ( 64 ) NOT NULL COMMENT '工作人员id',
 		`real_start_time` datetime NOT NULL COMMENT '工作人员的真实上班时间',
 		`real_end_time` datetime NOT NULL COMMENT '工作人员真实下班时间',
-		`leave` tinyint(1) NOT NULL COMMENT '工作人员是否请假',
-		`leave_start_time` datetime default  null COMMENT '工作人员的请假开始时间',
-		`leave_end_time` datetime default  null COMMENT '工作人员的请假结束时间',
 		`real_work_time` int(8) NOT NULL COMMENT '工作人员的真实工作时长 以分钟计',
-		`ts` TIMESTAMP NULL 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 '最后修改人',