Browse Source

fix: job_info add delete_status

liweiquan 2 years ago
parent
commit
b83b441794
4 changed files with 26 additions and 3 deletions
  1. 11 2
      app/crud/job_info.py
  2. 2 0
      app/models/job_info.py
  3. 5 0
      app/routers/job_info.py
  4. 8 1
      data/data.sql

+ 11 - 2
app/crud/job_info.py

@@ -12,6 +12,7 @@ def create_job_info(db: Session, item: schemas.JobInfoCreate):
         'update_time': create_time,
         'user_id': 1, # TODO 用户
         'trigger_status': 0,
+        'delete_status': 1,
     })
     db.add(db_item)
     db.commit()
@@ -21,7 +22,7 @@ def create_job_info(db: Session, item: schemas.JobInfoCreate):
 
 
 def get_job_infos(db: Session, skip: int = 0, limit: int = 20):
-    res: List[models.JobInfo] = db.query(models.JobInfo).all()  # TODO: 排序
+    res: List[models.JobInfo] = db.query(models.JobInfo).filter(models.JobInfo.delete_status == 1).all()  # TODO: 排序
     return res
 
 
@@ -39,4 +40,12 @@ def update_job_info(db: Session, id: int, update_item: schemas.JobInfoUpdate):
     db.refresh(db_item)
     return db_item
 
-
+def delete_job_info(db: Session, job_id: int):
+    job_item = db.query(models.JobInfo).filter(models.JobInfo.id == job_id).first()
+    if not job_item:
+        raise Exception('JobInfo not found')
+    job_item.delete_status = 0
+    db.commit()
+    db.flush()
+    db.refresh(job_item)
+    return job_item

+ 2 - 0
app/models/job_info.py

@@ -41,3 +41,5 @@ class JobInfo(BaseModel):
     inc_start_time = Column(Integer)
     # 最近一次执行状态
     last_handle_code = Column(Integer)
+    # 数据状态
+    delete_status = Column(Integer, nullable=False)

+ 5 - 0
app/routers/job_info.py

@@ -41,5 +41,10 @@ def get_job_infos(params: Params=Depends(), db: Session = Depends(get_db)):
 def update_datasource(id: int, update_item: schemas.JobInfoUpdate, db: Session = Depends(get_db)):
     return crud.update_job_info(db, id, update_item)
 
+@router.delete("/{job_id}")
+@web_try()
+@sxtimeit
+def delete_job_info(job_id: int, db: Session = Depends(get_db)):
+    return crud.delete_job_info(db, job_id)
 
 add_pagination(router)

+ 8 - 1
data/data.sql

@@ -58,4 +58,11 @@ CREATE TABLE `job_info`  (
 -- Alter Table structure for job_jdbc_datasource
 -- ----------------------------
 ALTER TABLE `job_jdbc_datasource`
-ADD COLUMN `tag` varchar(20) NULL COMMENT '标签: 0开发1测试2开发' AFTER `comments`;
+ADD COLUMN `tag` varchar(20) NULL COMMENT '标签: 0开发1测试2开发' AFTER `comments`;
+
+
+-- ----------------------------
+-- Alter Table structure for job_info
+-- ----------------------------
+ALTER TABLE `job_info`
+ADD COLUMN `delete_status` tinyint(4) NOT NULL COMMENT '数据状态:0-无效,1-有效' AFTER `last_handle_code`;