|
@@ -66,6 +66,39 @@ def get_area_code_exclude_list(db,rang,list_1):
|
|
|
return list({i.area_code for i in query.all()})
|
|
|
else:
|
|
|
return []
|
|
|
+def area_code_get_task_range(area_code):
|
|
|
+ if '00000000'==area_code[4:]:
|
|
|
+ return '0'
|
|
|
+ elif '00000000'!=area_code[4:] and '000000'==area_code[6:] :
|
|
|
+ return '1'
|
|
|
+ elif '000000'!=area_code[6:] and '000'==area_code[9:] :
|
|
|
+ return '2'
|
|
|
+ elif '000'!=area_code[9:]:
|
|
|
+ return '3'
|
|
|
+ else:
|
|
|
+ return '-1'
|
|
|
+def area_code_rang_get_area_children_list(db,rang,area_code,complete_area_code_list):
|
|
|
+ if int(area_code_get_task_range(area_code))>int(rang): #如果当前区划层级低于任务所属层级,返回空列表
|
|
|
+ return []
|
|
|
+
|
|
|
+ root_area = db.query(GovdataArea).filter_by(area_code=area_code).first()
|
|
|
+ if not root_area:
|
|
|
+ return [] # 如果没有找到区划,返回空列表
|
|
|
+
|
|
|
+ # 然后,根据层级递归查找所有子区划
|
|
|
+ area_codes = []
|
|
|
+
|
|
|
+ def recursive_search(current_area):
|
|
|
+ if area_code_get_task_range(current_area.area_code) == rang:
|
|
|
+ if current_area.area_code not in complete_area_code_list:
|
|
|
+ area_codes.append(current_area.area_code)
|
|
|
+ else:
|
|
|
+ for child in db.query(GovdataArea).filter_by(parent_code=current_area.area_code).all():
|
|
|
+ recursive_search(child)
|
|
|
+
|
|
|
+ recursive_search(root_area) # 从根区划开始递归搜索
|
|
|
+
|
|
|
+ return area_codes
|
|
|
|
|
|
def get_task_date_list(cycle,start_date,end_date,corn_query):
|
|
|
# 生成日期列表
|
|
@@ -202,17 +235,7 @@ def get_file_query_fun(db,from_scenario,foreign_key):
|
|
|
} for file in files]
|
|
|
return result
|
|
|
|
|
|
-def area_code_get_task_range(area_code):
|
|
|
- if '00000000'==area_code[4:]:
|
|
|
- return '0'
|
|
|
- elif '00000000'!=area_code[4:] and '000000'==area_code[6:] :
|
|
|
- return '1'
|
|
|
- elif '000000'!=area_code[6:] and '000'==area_code[9:] :
|
|
|
- return '2'
|
|
|
- elif '000'!=area_code[9:]:
|
|
|
- return '3'
|
|
|
- else:
|
|
|
- return '-1'
|
|
|
+
|
|
|
def user_id_get_task_range(db,user_id):
|
|
|
query = db.query(RiskManagementInspectionUser)
|
|
|
query = query.filter(RiskManagementInspectionUser.del_flag!='2')
|