liweiquan 2 年之前
父節點
當前提交
a090a0a76e
共有 8 個文件被更改,包括 30 次插入33 次删除
  1. 3 1
      app/crud/jm_homework.py
  2. 1 1
      app/routers/files.py
  3. 3 1
      app/routers/jm_job_log.py
  4. 1 0
      app/services/jm_homework.py
  5. 4 1
      app/services/jm_job_info.py
  6. 2 0
      app/services/job_info.py
  7. 14 27
      data/data.sql
  8. 2 2
      development.ini

+ 3 - 1
app/crud/jm_homework.py

@@ -3,6 +3,7 @@ from typing import List
 from app import models, schemas
 from sqlalchemy.orm import Session
 from app.crud.constant import find_and_update
+from configs.globals import g
 
 from app.crud.jm_homework_datasource_relation import get_jm_relations
 
@@ -15,7 +16,7 @@ def create_jm_homework(db: Session, item: models.JmHomework):
 
 def get_jm_homeworks(db: Session, project_id: str):
     res: List[models.JmHomework] = db.query(models.JmHomework)\
-            .filter(models.JmHomework.project_id == project_id)\
+            .filter(models.JmHomework.project_id == g.project_id)\
             .filter(models.JmHomework.status == 1)\
             .order_by(models.JmHomework.create_time.desc()).all()
     return res
@@ -31,6 +32,7 @@ def get_jm_homework_info(db: Session, homework_id: int):
 
 def get_jm_homework_by_name(db: Session, name: str):
     db_item = db.query(models.JmHomework).filter(models.JmHomework.name == name)\
+        .filter(models.JmHomework.project_id == g.project_id)\
         .filter(models.JmHomework.status != 0).first()
     return db_item
 

+ 1 - 1
app/routers/files.py

@@ -70,7 +70,7 @@ def get_dag_content(uri: str):
 
 
 # 此接口置于末尾,勿乱动,乱动者砍死
-@router.get("/{uri:path}",name="path-convertor", dependencies=[Depends(verify_all)])
+@router.get("/{uri:path}",name="path-convertor")
 @sxtimeit
 def get_file(uri: str):
     file = minio_client.get_file(uri)

+ 3 - 1
app/routers/jm_job_log.py

@@ -116,6 +116,8 @@ def get_job_all_task(run_id: str, db: Session = Depends(get_db)):
 def get_job_task_log(job_id: str, af_run_id: str, task_id: str, db: Session = Depends(get_db)):
     res = get_task_log(job_id, af_run_id, task_id)
     log = res['data'] if 'data' in res else None
+    if log:
+        log['status'] = RUN_STATUS[log['status']]
     return log
 
 @router.get("/logs_status/{ids}", dependencies=[Depends(verify_all)])
@@ -126,5 +128,5 @@ def get_job_log_status(ids: str):
     id_to_status = {}
     for run_id in run_ids:
         res = get_job_run_status(run_id)
-        id_to_status.update({run_id:res['data']['status']})
+        id_to_status.update({run_id:RUN_STATUS[res['data']['status']]})
     return id_to_status

+ 1 - 0
app/services/jm_homework.py

@@ -45,6 +45,7 @@ def update_jm_homework_service(db: Session, id: int, update_item: schemas.JmHome
         raise Exception('未找到该作业')
     db_name_item = db.query(models.JmHomework)\
         .filter(models.JmHomework.name == jm_homework_update['name'])\
+        .filter(models.JmHomework.project_id == g.project_id)\
         .filter(models.JmHomework.status != 0)\
         .filter(models.JmHomework.id != id).first()
     if db_name_item:

+ 4 - 1
app/services/jm_job_info.py

@@ -21,7 +21,9 @@ def create_jm_job_info_services(db: Session, item: schemas.JmJobInfoCreate):
     # 节点与边的剥离
     nodes = jm_job_info_create.pop('nodes', None)
     edges = jm_job_info_create.pop('edges', None)
-    db_item = db.query(models.JmJobInfo).filter(models.JmJobInfo.name == jm_job_info_create['name'])\
+    db_item = db.query(models.JmJobInfo)\
+        .filter(models.JmJobInfo.name == jm_job_info_create['name'])\
+        .filter(models.JmJobInfo.project_id == g.project_id)\
         .filter(models.JmJobInfo.delete_status != 0).first()
     if db_item:
         raise Exception('定时任务名称已存在')
@@ -70,6 +72,7 @@ def update_jm_job_info_services(db: Session, item: schemas.JmJobInfoUpdate):
         raise Exception('未找到该定时任务')
     db_name_item = db.query(models.JmJobInfo)\
         .filter(models.JmJobInfo.name == jm_job_info_update['name'])\
+        .filter(models.JmJobInfo.project_id == g.project_id)\
         .filter(models.JmJobInfo.delete_status != 0)\
         .filter(models.JmJobInfo.id != item.id).first()
     if db_name_item:

+ 2 - 0
app/services/job_info.py

@@ -11,6 +11,7 @@ def create_job_info_services(db: Session, item: schemas.JobInfoCreate):
     item_dict = item.dict()
     name_item = db.query(models.JobInfo)\
         .filter(models.JobInfo.job_desc == item.job_desc)\
+        .filter(models.JobInfo.project_id == g.project_id)\
         .filter(models.JobInfo.delete_status == 1).first()
     if name_item:
         raise Exception('同步配置名称重复')
@@ -55,6 +56,7 @@ def update_job_info_services(db: Session, id: int, update_item: schemas.JobInfoU
     db_item = crud.get_job_info(db,id)
     name_item = db.query(models.JobInfo)\
         .filter(models.JobInfo.job_desc == update_item.job_desc)\
+        .filter(models.JobInfo.project_id == g.project_id)\
         .filter(models.JobInfo.delete_status == 1)\
         .filter(models.JobInfo.id != id).first()
     if name_item:

+ 14 - 27
data/data.sql

@@ -35,7 +35,6 @@ CREATE TABLE `job_jdbc_datasource` (
 -- ----------------------------
 -- Table structure for job_info
 -- ----------------------------
-DROP TABLE IF EXISTS `job_info`;
 CREATE TABLE `job_info` (
   `id` bigint(20) NOT NULL AUTO_INCREMENT,
   `cron_select_type` tinyint(4) NOT NULL COMMENT '周期选择类型',
@@ -62,11 +61,11 @@ CREATE TABLE `job_info` (
   `jvm_param` varchar(50) DEFAULT NULL COMMENT 'jvm参数',
   `last_time` varchar(50) DEFAULT NULL COMMENT '上次时间字段',
   `current_time` varchar(50) DEFAULT NULL COMMENT '当前时间字段',
+  `project_id` bigint(20) NOT NULL COMMENT '项目id',
   PRIMARY KEY (`id`) USING BTREE
 ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 ROW_FORMAT=DYNAMIC;
 
 
-
 -- ----------------------------
 -- Table structure for job_log
 -- ----------------------------
@@ -347,39 +346,42 @@ ADD COLUMN `status` tinyint(4) NOT NULL COMMENT '状态(1:转存中,2:成功,3:
 -- Table structure for project
 -- ----------------------------
 CREATE TABLE `project` (
-  `id` bigint(20) NOT NULL,
+  `id` bigint(20) NOT NULL AUTO_INCREMENT,
   `name` varchar(30) COLLATE utf8_unicode_ci NOT NULL COMMENT '项目名称',
   `code` varchar(30) COLLATE utf8_unicode_ci NOT NULL COMMENT '项目编码',
   `type` tinyint(4) NOT NULL COMMENT '项目类型(0:算法组;1:普通项目)',
   `create_time` int(20) NOT NULL COMMENT '创建时间',
+  `project_token` varchar(1000) COLLATE utf8_unicode_ci DEFAULT NULL COMMENT 'project_token',
   PRIMARY KEY (`id`)
 ) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='项目';
 
+
 -- ----------------------------
 -- Records of project
 -- ----------------------------
 BEGIN;
-INSERT INTO `project` (`id`, `name`, `code`, `type`, `create_time`) VALUES (1, '算法组', '7c73048c5b4e11ed89a813eaf8148d45', 0, unix_timestamp());
+INSERT INTO `project` (`id`, `name`, `code`, `type`, `create_time`, `project_token`) VALUES (1, '算法组', '7c73048c5b4e11ed89a813eaf8148d45', 0, unix_timestamp(), 'eyJhbGciOiJIUzUxMiJ9.eyJwcm9qZWN0X2lkIjoxLCJ0eXBlIjowfQ.gFpw7Sa4chxVusVclsOA5ZBpbSnE2-GMOF6qL8DzPDP0JQ3b6msaaDZAC6EEoCUsR9kCh847BeorK163M2-fzA');
 COMMIT;
 
 -- ----------------------------
 -- Table structure for users
 -- ----------------------------
 CREATE TABLE `users` (
-  `id` bigint(20) NOT NULL,
+  `id` bigint(20) NOT NULL AUTO_INCREMENT,
   `name` varchar(30) COLLATE utf8_unicode_ci NOT NULL COMMENT '姓名',
   `code` varchar(30) COLLATE utf8_unicode_ci NOT NULL COMMENT '用户编码',
   `username` varchar(30) COLLATE utf8_unicode_ci NOT NULL COMMENT '用户名',
   `password` varchar(128) COLLATE utf8_unicode_ci NOT NULL COMMENT '密码暗文',
   `create_time` int(20) NOT NULL COMMENT '创建时间',
+  `user_token` varchar(1000) COLLATE utf8_unicode_ci DEFAULT NULL COMMENT 'user_token',
   PRIMARY KEY (`id`)
-) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='项目用户';
+) ENGINE=InnoDB COLLATE=utf8_unicode_ci COMMENT='项目用户';
 
 -- ----------------------------
 -- Records of users
 -- ----------------------------
 BEGIN;
-INSERT INTO `users` (`id`, `name`, `code`, `username`, `password`, `create_time`) VALUES (1, 'admin', '42acda425b4f11ed8c18f346385e9a10', 'admin', 'pbkdf2:sha256:150000$LKBvPzSN$8c14ad943aa4ee6863562f5e2194b379036229bd17d5f592c8b812c07a1ece7f', unix_timestamp());
+INSERT INTO `users` (`id`, `name`, `code`, `username`, `password`, `create_time`, `user_token`) VALUES (1, 'admin', '42acda425b4f11ed8c18f346385e9a10', 'admin', 'pbkdf2:sha256:150000$LKBvPzSN$8c14ad943aa4ee6863562f5e2194b379036229bd17d5f592c8b812c07a1ece7f', unix_timestamp(), '');
 COMMIT;
 
 -- ----------------------------
@@ -425,14 +427,17 @@ COMMIT;
 -- Table structure for data_table
 -- ----------------------------
 CREATE TABLE `data_table` (
-  `id` bigint(20) NOT NULL,
+  `id` bigint(20) NOT NULL AUTO_INCREMENT,
   `database_name` varchar(100) COLLATE utf8_unicode_ci DEFAULT NULL COMMENT '库名',
   `table_name` varchar(100) COLLATE utf8_unicode_ci NOT NULL COMMENT '表名',
   `source` tinyint(4) NOT NULL COMMENT '源(0:数据湖;1:ailab)',
   `type` tinyint(4) NOT NULL COMMENT '类型(0:被分享;1:自建;2:导入)',
   `project_id` bigint(20) NOT NULL COMMENT '项目id',
+  `table_path` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL COMMENT 'hdfs的path',
+  `create_time` bigint(13) NOT NULL COMMENT '创建时间',
+  `user_id` bigint(20) NOT NULL COMMENT '创建人、分享人',
   PRIMARY KEY (`id`)
-) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci COMMENT='表';
+) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='表';
 
 -- ----------------------------
 -- Alter for data_table
@@ -443,22 +448,4 @@ ALTER TABLE `data_table`
 ADD COLUMN `create_time` bigint(13) NOT NULL COMMENT '创建时间' AFTER `table_path`,
 ADD COLUMN `user_id` bigint(20) NOT NULL COMMENT '创建人、分享人' AFTER `create_time`;
 
--- ----------------------------
--- Alter for job_info
--- ----------------------------
-ALTER TABLE `job_info`
-ADD COLUMN `project_id` bigint(20) NOT NULL COMMENT '项目id' AFTER `current_time`;
-
--- ----------------------------
--- Alter for users
--- ----------------------------
-ALTER TABLE `users`
-ADD COLUMN `user_token` varchar(1000) NULL COMMENT 'user_token' AFTER `create_time`;
-
--- ----------------------------
--- Alter for project
--- ----------------------------
-ALTER TABLE `project`
-ADD COLUMN `project_token` varchar(1000) NULL COMMENT 'project_token' AFTER `create_time`;
-
 SET FOREIGN_KEY_CHECKS = 1;

+ 2 - 2
development.ini

@@ -53,7 +53,7 @@ sparks=SXKJ:32775/jupyter:0.981
 
 
 [HADOOP_INNER]
-default_fs = hdfs://192.168.199.27:10000
+default_fs = hdfs://192.168.199.27:9000
 hadoop_config={
              }
 kerberos_config = {
@@ -63,7 +63,7 @@ kerberos_config = {
                   }
 
 [LAKE_HADOOP_INNER]
-default_fs = hdfs://192.168.199.27:10000
+default_fs = hdfs://192.168.199.27:9000
 hadoop_config={
              }
 kerberos_config = {