Commit 0740a9f4 by dong

fix20230113

parent c41f8c37
......@@ -323,6 +323,10 @@ def upload_project_data2():
set_project_status = row_content[17] # 项目立项状态
project_progress = row_content[18] # 项目进展
sign_time = row_content[19] # 签约时间
project_year = ''
if sign_time:
project_year = int(sign_time.splite('/')[0])
start_time = row_content[20] # 开工时间
end_time = row_content[21] # 竣工时间
is_fixed_investment = row_content[22] # 固定资产投资项目
......@@ -361,7 +365,7 @@ def upload_project_data2():
}
time_strf = datetime.now().strftime("%Y")
project_num_li = ''
project_obj_list = ProjectManagement.query.all()
project_obj_list = ProjectManagement.query.filter_by(is_delete=0).all()
if project_obj_list:
project_num_li = [project_obj.project_num for project_obj in project_obj_list if
project_obj.project_num.startswith(time_strf + prefix_dic[district])]
......@@ -405,6 +409,7 @@ def upload_project_data2():
set_project_status=set_project_status,
project_progress=project_progress,
sign_time=sign_time,
project_year=project_year,
start_time=start_time,
end_time=end_time,
is_fixed_investment=is_fixed_investment,
......@@ -621,6 +626,10 @@ def project_edit():
project_unity = request.form['project_unity']
is_development_project = request.form['is_development_project']
sign_time = request.form['sign_time']
project_year = ''
if sign_time:
project_year = int(sign_time.splite('/')[0])
start_time = request.form['start_time']
end_time = request.form['end_time']
investor_rank = request.form['investor_rank']
......@@ -687,12 +696,12 @@ def project_edit():
project_obj.project_problem = project_problem
project_obj.upload_unity = upload_unity
project_obj.upload_people = upload_people
# project_obj.upload_time = upload_time
project_obj.project_num = project_num
project_obj.project_source = project_source
project_obj.project_unity = project_unity
project_obj.is_development_project = is_development_project
project_obj.sign_time = sign_time
project_obj.project_year = project_year
project_obj.start_time = start_time
project_obj.end_time = end_time
project_obj.investor_rank = investor_rank
......
......@@ -289,7 +289,7 @@ def update_sign_project(upload_people, row_content):
# 更新开工库
def update_star_project(upload_people, row_content):
def update_start_project(upload_people, row_content):
try:
project_num = row_content[0] # 项目编号
project_name = row_content[1] # 项目名称
......@@ -840,7 +840,6 @@ def upload_project_data1():
return jsonify(code=RET.DATAERR, msg='数据更新出错,错误位置为第【{}】行!'.format(i))
else:
pass
if int(data_type) == 3: # 更新签约库
row_list = [table.row_values(i) for i in range(1, nrows)]
rows = len(row_list)
......@@ -869,7 +868,7 @@ def upload_project_data1():
return jsonify(code=RET.NODATA,
msg="表格内无有效数据!")
ret = update_star_project(row_content)
ret = update_start_project(upload_people, row_content)
if ret == 'continue':
update_num += 1
continue
......
......@@ -27,7 +27,6 @@ from apps.inves_manage.siku_view import get_num, upload_daily_picture
# 项目签约完成率
# def get_data1(district_li, current_year, data_time):
def get_data1(district_li, current_year):
data_li1 = []
# now_time = datetime.now().strftime('%Y-%m-01 00:00:00')
......@@ -92,7 +91,6 @@ def get_data1(district_li, current_year):
# 项目开工率
# def get_data2(district_li, current_year, data_time):
def get_data2(district_li, current_year):
data_li2 = []
......@@ -1263,40 +1261,42 @@ def get_data():
flag = req_dic['flag']
# current_year = str(datetime.now().year)
current_year = "2022"
district_li1 = ["全市", "城区", "泽州县", "高平市", "阳城县", "陵川县", "沁水县", "晋城经济技术开发区"]
district_li1 = ["全市", "城区", "泽州县", "高平市", "阳城县",
"陵川县", "沁水县", "晋城经济技术开发区"]
target_data_li = []
if flag == 1: # 签约项目完成情况
try:
for district in district_li1:
data = {}
project_obj = ProjectManagement.query.filter(
ProjectManagement.sign_time.like('%{}%'.format(current_year)),
ProjectManagement.is_delete == 0,
ProjectManagement.district.like('%{}%'.format(str(district))) if district != '全市' else text('')
)
# 区县
data.update({"district": district})
# 年度目标
jc_obj = JcTarget.query.filter(JcTarget.year.like('%{}%'.format(current_year)),
JcTarget.is_delete == 0,
JcTarget.district_name.like('%{}%'.format(str(district))) if district != '全市' else text('')).first()
target = 0
if jc_obj:
target = jc_obj.money_sign
data.update({"target": target})
# 签约金额(亿元)
project_obj_list = project_obj.all()
if not project_obj_list:
sign_money = 0
else:
sign_money = sum([project_obj.investment_volume / 10000 for project_obj in project_obj_list])
data.update({"value": round(sign_money, 2)})
# 签约完成率
rate = round(sign_money / target * 100, 2) if target and target != 0 else 0
data.update({"rate": rate})
target_data_li.append(data)
# for district in district_li1:
# data = {}
# project_obj = ProjectManagement.query.filter(
# ProjectManagement.sign_time.like('%{}%'.format(current_year)),
# ProjectManagement.is_delete == 0,
# ProjectManagement.district.like('%{}%'.format(str(district))) if district != '全市' else text('')
# )
# # 区县
# data.update({"district": district})
# # 年度目标
# jc_obj = JcTarget.query.filter(JcTarget.year.like('%{}%'.format(current_year)),
# JcTarget.is_delete == 0,
# JcTarget.district_name.like('%{}%'.format(str(district))) if district != '全市' else text('')).first()
# target = 0
# if jc_obj:
# target = jc_obj.money_sign
# data.update({"target": target})
# # 签约金额(亿元)
# project_obj_list = project_obj.all()
# if not project_obj_list:
# sign_money = 0
# else:
# sign_money = sum([project_obj.investment_volume / 10000 for project_obj in project_obj_list])
# data.update({"value": round(sign_money, 2)})
#
# # 签约完成率
# rate = round(sign_money / target * 100, 2) if target and target != 0 else 0
# data.update({"rate": rate})
# target_data_li.append(data)
target_data_li = get_data1(district_li1, current_year)
return jsonify(code=RET.OK, data=target_data_li, msg='数据查询成功。')
except Exception as e:
current_app.logger.error(e)
......@@ -1304,30 +1304,32 @@ def get_data():
if flag == 2: # 项目开工完成情况
try:
for district in district_li1:
data = {}
# 区县
data.update({"district": district})
project_obj = ProjectManagement.query.filter(
ProjectManagement.sign_time.like('%{}%'.format(current_year)),
ProjectManagement.is_delete == 0,
ProjectManagement.district.like('%{}%'.format(str(district))) if district != '全市' else text('')
)
# 签约个数
sign_num = project_obj.count()
data.update({"value": sign_num})
# 当年开工个数
target = ProjectManagement.query.filter(
ProjectManagement.start_time.like('%{}%'.format(current_year)),
ProjectManagement.is_delete == 0,
ProjectManagement.district.like('%{}%'.format(str(district))) if district != '全市' else text('')
).count()
data.update({"target": target})
# for district in district_li1:
# data = {}
# # 区县
# data.update({"district": district})
# project_obj = ProjectManagement.query.filter(
# ProjectManagement.sign_time.like('%{}%'.format(current_year)),
# ProjectManagement.is_delete == 0,
# ProjectManagement.district.like('%{}%'.format(str(district))) if district != '全市' else text('')
# )
# # 签约个数
# sign_num = project_obj.count()
# data.update({"value": sign_num})
# # 当年开工个数
# target = ProjectManagement.query.filter(
# ProjectManagement.start_time.like('%{}%'.format(current_year)),
# ProjectManagement.is_delete == 0,
# ProjectManagement.district.like('%{}%'.format(str(district))) if district != '全市' else text('')
# ).count()
# data.update({"target": target})
#
# # 开工率进度(40 %)
# rate = round(target / sign_num * 100, 2) if sign_num and sign_num != 0 else 0
# data.update({"rate": rate})
# target_data_li.append(data)
target_data_li = get_data2(district_li1, current_year)
# 开工率进度(40 %)
rate = round(target / sign_num * 100, 2) if sign_num and sign_num != 0 else 0
data.update({"rate": rate})
target_data_li.append(data)
return jsonify(code=RET.OK, data=target_data_li, msg='数据查询成功。')
except Exception as e:
current_app.logger.error(e)
......@@ -1335,38 +1337,39 @@ def get_data():
if flag == 3: # 新开工项目计划投资额完情况
try:
for district in district_li1:
data = {}
# 区县
data.update({"district": district})
# 新开工项目计划投资额(亿元)
project_obj_list = ProjectManagement.query.filter(
ProjectManagement.sign_time.like('%{}%'.format(current_year)),
ProjectManagement.is_delete == 0,
ProjectManagement.district.like('%{}%'.format(district)) if district != '全市' else text('')
).all()
if not project_obj_list:
new_start_money = 0
else:
new_start_money = sum([project_obj.investment_volume / 10000 for project_obj in project_obj_list])
data.update({"value": round(new_start_money, 2)})
# 新开工年度目标
jc_obj = JcTarget.query.filter(
JcTarget.district_name == district if district != '全市' else text(''),
JcTarget.year.like('%{}%'.format(current_year)),
JcTarget.is_delete == 0
).first()
if not jc_obj:
target = 0
else:
target = jc_obj.money_plan_invest
data.update({"target": target})
# 新开工完成率
rate = round(new_start_money / target * 100, 2) if target and target != 0 else 0
data.update({"rate": rate})
target_data_li.append(data)
# for district in district_li1:
# data = {}
# # 区县
# data.update({"district": district})
# # 新开工项目计划投资额(亿元)
# project_obj_list = ProjectManagement.query.filter(
# ProjectManagement.sign_time.like('%{}%'.format(current_year)),
# ProjectManagement.is_delete == 0,
# ProjectManagement.district.like('%{}%'.format(district)) if district != '全市' else text('')
# ).all()
# if not project_obj_list:
# new_start_money = 0
# else:
# new_start_money = sum([project_obj.investment_volume / 10000 for project_obj in project_obj_list])
# data.update({"value": round(new_start_money, 2)})
#
# # 新开工年度目标
# jc_obj = JcTarget.query.filter(
# JcTarget.district_name == district if district != '全市' else text(''),
# JcTarget.year.like('%{}%'.format(current_year)),
# JcTarget.is_delete == 0
# ).first()
# if not jc_obj:
# target = 0
# else:
# target = jc_obj.money_plan_invest
# data.update({"target": target})
#
# # 新开工完成率
# rate = round(new_start_money / target * 100, 2) if target and target != 0 else 0
# data.update({"rate": rate})
# target_data_li.append(data)
target_data_li = get_data3(district_li1, current_year)
return jsonify(code=RET.OK, data=target_data_li, msg='数据查询成功。')
except Exception as e:
current_app.logger.error(e)
......@@ -1374,42 +1377,43 @@ def get_data():
if flag == 4: # 固投资金完成情况
try:
for district in district_li1:
data = {}
# 区县
data.update({"district": district})
# 固定资产投资项目资金到位额(亿元)
money_obj_li = MoneyArrive.query.filter_by(is_delete=0).all()
max_id = max([money_obj.id for money_obj in money_obj_li])
data_time_obj = MoneyArrive.query.get(max_id)
data_time = data_time_obj.data_time
project_obj = MoneyArrive.query.filter(
MoneyArrive.data_time == data_time,
MoneyArrive.is_delete == 0,
MoneyArrive.district_name.like('%{}%'.format(str(district))) if district != '全市' else text('')
).first()
if not project_obj:
gutou1_money = 0
else:
gutou1_money = project_obj.arrive_money
data.update({"value": gutou1_money})
# 年度目标
jc_obj = JcTarget.query.filter(
JcTarget.district_name == district if district != '全市' else text(''),
JcTarget.year.like('%{}%'.format(str(current_year))),
JcTarget.is_delete == 0
).first()
if not jc_obj:
gutou1_target = 0
else:
gutou1_target = jc_obj.money_arrive_target1
data.update({"target": gutou1_target})
# 完成率
gutou1_rate = round(gutou1_money / gutou1_target * 100, 2) if gutou1_target and gutou1_target != 0 else 0
data.update({"rate": gutou1_rate})
target_data_li.append(data)
# for district in district_li1:
# data = {}
# # 区县
# data.update({"district": district})
# # 固定资产投资项目资金到位额(亿元)
# money_obj_li = MoneyArrive.query.filter_by(is_delete=0).all()
# max_id = max([money_obj.id for money_obj in money_obj_li])
# data_time_obj = MoneyArrive.query.get(max_id)
# data_time = data_time_obj.data_time
# project_obj = MoneyArrive.query.filter(
# MoneyArrive.data_time == data_time,
# MoneyArrive.is_delete == 0,
# MoneyArrive.district_name.like('%{}%'.format(str(district))) if district != '全市' else text('')
# ).first()
# if not project_obj:
# gutou1_money = 0
# else:
# gutou1_money = project_obj.arrive_money
# data.update({"value": gutou1_money})
#
# # 年度目标
# jc_obj = JcTarget.query.filter(
# JcTarget.district_name == district if district != '全市' else text(''),
# JcTarget.year.like('%{}%'.format(str(current_year))),
# JcTarget.is_delete == 0
# ).first()
# if not jc_obj:
# gutou1_target = 0
# else:
# gutou1_target = jc_obj.money_arrive_target1
# data.update({"target": gutou1_target})
#
# # 完成率
# gutou1_rate = round(gutou1_money / gutou1_target * 100, 2) if gutou1_target and gutou1_target != 0 else 0
# data.update({"rate": gutou1_rate})
# target_data_li.append(data)
target_data_li = get_data4(district_li1, current_year)
return jsonify(code=RET.OK, data=target_data_li, msg='数据查询成功。')
except Exception as e:
current_app.logger.error(e)
......@@ -1417,39 +1421,40 @@ def get_data():
if flag == 5: # 非固投资金完成情况
try:
for district in district_li1:
data = {}
# 区县
data.update({"district": district})
# 非固定资产投资项目资金到位额(亿元)
project_obj_list = ProjectManagement.query.filter(
ProjectManagement.is_fixed_investment == '否',
ProjectManagement.sign_time.like('%{}%'.format(current_year)),
ProjectManagement.is_delete == 0,
ProjectManagement.district.like('%{}%'.format(str(district))) if district != '全市' else text('')
).all()
if not project_obj_list:
gutou0_money = 0
else:
gutou0_money = sum([project_obj.investment_volume / 10000 for project_obj in project_obj_list])
data.update({"value": round(gutou0_money, 2)})
# 年度目标
jc_obj = JcTarget.query.filter(
JcTarget.district_name == district,
JcTarget.year.like('%{}%'.format(current_year)),
JcTarget.is_delete == 0
).first()
if not jc_obj:
gutou0_target = 0
else:
gutou0_target = jc_obj.money_arrive_target0
data.update({"target": gutou0_target})
# 完成率
gutou0_rate = round(gutou0_money / gutou0_target * 100, 2) if gutou0_target and gutou0_target != 0 else 0
data.update({"rate": gutou0_rate})
target_data_li.append(data)
# for district in district_li1:
# data = {}
# # 区县
# data.update({"district": district})
# # 非固定资产投资项目资金到位额(亿元)
# project_obj_list = ProjectManagement.query.filter(
# ProjectManagement.is_fixed_investment == '否',
# ProjectManagement.sign_time.like('%{}%'.format(current_year)),
# ProjectManagement.is_delete == 0,
# ProjectManagement.district.like('%{}%'.format(str(district))) if district != '全市' else text('')
# ).all()
# if not project_obj_list:
# gutou0_money = 0
# else:
# gutou0_money = sum([project_obj.investment_volume / 10000 for project_obj in project_obj_list])
# data.update({"value": round(gutou0_money, 2)})
#
# # 年度目标
# jc_obj = JcTarget.query.filter(
# JcTarget.district_name == district,
# JcTarget.year.like('%{}%'.format(current_year)),
# JcTarget.is_delete == 0
# ).first()
# if not jc_obj:
# gutou0_target = 0
# else:
# gutou0_target = jc_obj.money_arrive_target0
# data.update({"target": gutou0_target})
#
# # 完成率
# gutou0_rate = round(gutou0_money / gutou0_target * 100, 2) if gutou0_target and gutou0_target != 0 else 0
# data.update({"rate": gutou0_rate})
# target_data_li.append(data)
target_data_li = get_data5(district_li1, current_year)
return jsonify(code=RET.OK, data=target_data_li, msg='数据查询成功。')
except Exception as e:
current_app.logger.error(e)
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment