ソースを参照

数据库新增字段

liweiquan 2 年 前
コミット
8cbf0a82c8
3 ファイル変更16 行追加19 行削除
  1. 0 7
      app/crud/job_info.py
  2. 5 11
      app/schemas/job_info.py
  3. 11 1
      data/data.sql

+ 0 - 7
app/crud/job_info.py

@@ -42,13 +42,6 @@ def update_job_info(db: Session, id: int, update_item: schemas.JobInfoUpdate):
     if not db_item:
         raise Exception('未找到该任务')
     update_dict = update_item.dict(exclude_unset=True)
-    cron_expression_dict = update_dict.pop('cron_expression')
-    cron_expression = joint_cron_expression(schemas.CronExpression(**cron_expression_dict))
-    cron_select_type = cron_expression_dict["cron_select_type"]
-    update_dict.update({
-        'cron_select_type': cron_select_type,
-        'job_cron': cron_expression,
-    })
     for k, v in update_dict.items():
         setattr(db_item, k, v)
     db_item.update_time = int(time.time())

+ 5 - 11
app/schemas/job_info.py

@@ -5,8 +5,6 @@ from pydantic import BaseModel
 from app.schemas.cron_expression import CronExpression
 
 class JobInfoBase(BaseModel):
-    # 周期表达式
-    cron_expression: CronExpression
     # 任务描述
     job_desc: str
     # 执行器路由策略
@@ -35,6 +33,8 @@ class JobInfoBase(BaseModel):
 
 
 class JobInfoCreate(JobInfoBase):
+    # 周期表达式
+    cron_expression: CronExpression
     class Config:
         schema_extra = {
             "example": {
@@ -63,20 +63,14 @@ class JobInfoCreate(JobInfoBase):
         }
 
 class JobInfoUpdate(JobInfoBase):
+    # 运行周期
+    job_cron: str
     # 调度状态: 0-停止 1-运行
     trigger_status: int
     class Config:
         schema_extra = {
             "example": {
-                "cron_expression": {
-                    "cron_select_type": 3,
-                    "cron_expression": "",
-                    "minute": 0,
-                    "hour": 0,
-                    "day": 1,
-                    "week": 3,
-                    "month": 2,
-                },
+                "job_cron": "0 0 1 1/2 ?",
                 "job_desc": "mysql-mysql同步",
                 "executor_route_strategy": "FIRST",
                 "executor_handler": "",

+ 11 - 1
data/data.sql

@@ -251,4 +251,14 @@ CREATE TABLE `jm_job_log` (
   `executor_result` tinyint(4) DEFAULT NULL COMMENT '执行结果',
   `job_log_uri` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL COMMENT '日志',
   PRIMARY KEY (`id`)
-) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8_unicode_ci COMMENT='定时任务日志';
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8_unicode_ci COMMENT='定时任务日志';
+
+
+-- ----------------------------
+-- Alter Table structure for job_info
+-- ----------------------------
+ALTER TABLE `job_info`
+ADD COLUMN `cron_select_type` tinyint(4) NOT NULL COMMENT '周期选择类型' AFTER `id`,
+ADD COLUMN `replace_param` varchar(20) NULL COMMENT '增量时间' AFTER `delete_status`,
+ADD COLUMN `partition_info` varchar(20) NULL COMMENT '分区信息' AFTER `replace_param`,
+ADD COLUMN `jvm_param` varchar(50) NULL COMMENT 'jvm参数' AFTER `partition_info`;