update 更改报告生成方法中获取数据的方式
This commit is contained in:
parent
870d9dde06
commit
984d990cd5
|
@ -31,9 +31,3 @@ if __name__ == '__main__':
|
|||
tem_data = json.load(f)
|
||||
r = ReportModel(rep_data, tem_data).report_vlaues()
|
||||
print(r)
|
||||
|
||||
"""
|
||||
1.对外投资模块需要特殊处理
|
||||
2.资质荣誉需要判断数据是否存在,如果无数据则显示段落3
|
||||
3.环境治理中段落3,绿色业务占比
|
||||
"""
|
14
Report/db.py
14
Report/db.py
|
@ -56,6 +56,14 @@ def find_tfse_db(**kwargs):
|
|||
return data
|
||||
|
||||
|
||||
if __name__ == '__main__':
|
||||
pid = upload_pdf('远东资信评估有限公司')
|
||||
file = download_pdf(pid)
|
||||
def conserve_data(**kwargs):
|
||||
"""
|
||||
根据评价ID保存数据
|
||||
Parameters:
|
||||
kwargs: 查询条件
|
||||
Returns:
|
||||
保存结果
|
||||
"""
|
||||
collection = client[kwargs['db']][kwargs['col']]
|
||||
collection.update_one({"企业ID": kwargs['cid']}, {"$set": kwargs['insert_data']}, upsert=True)
|
||||
return '保存成功'
|
||||
|
|
|
@ -1,38 +1,74 @@
|
|||
import json
|
||||
import os
|
||||
|
||||
import requests
|
||||
from flask import Blueprint, request, Response
|
||||
|
||||
from Report.PdfReport import ReportGenerator
|
||||
from Report.ReportModel import ReportModel
|
||||
from Report.db import upload_pdf, download_pdf, find_tfse_db
|
||||
from Report.db import upload_pdf, download_pdf, find_tfse_db, conserve_data
|
||||
from Report.path_tool import get_gen_report_path
|
||||
from common.scripts import verify_token
|
||||
|
||||
report_route = Blueprint('result', __name__)
|
||||
|
||||
|
||||
@report_route.route('/gen_pdf', methods=['POST'])
|
||||
@verify_token
|
||||
def report_pdf():
|
||||
# 获取报告模板json
|
||||
with open("static/test_data/manufacturing_report.json", "r", encoding="utf-8") as f:
|
||||
temp_data = json.load(f)
|
||||
|
||||
# 企业名称
|
||||
req = request.json
|
||||
name = req['company']
|
||||
req_data = find_tfse_db(db='评价', col='报告数据', query={'企业ID': req['cid'], '评价ID': req['rid']})
|
||||
if len(req_data) > 0:
|
||||
text_model = ReportModel(rep_json=req_data[0], temp_data=temp_data).report_vlaues()
|
||||
# 生成报告保存到static临时文件夹
|
||||
pdf_report = ReportGenerator(name=name, text_model=text_model)
|
||||
pdf_report.gen_report()
|
||||
cid = req['cid']
|
||||
|
||||
# 将报告pdf保存到数据库并删掉本地报告
|
||||
file_id = upload_pdf(name)
|
||||
if file_id:
|
||||
file_path = get_gen_report_path(name=name)
|
||||
os.remove(file_path)
|
||||
file = download_pdf(file_id)
|
||||
response = Response(file, content_type='application/pdf')
|
||||
# 获取报告数据
|
||||
def get_report_data():
|
||||
url = 'http://139.9.249.34:51011/etl_tfse/rating/report_data'
|
||||
token = 'dmfd7FshT!5Wng9^gcCcQV7T6FBnVgl4'
|
||||
headers = {'token': token, 'Content-Type': 'application/json;charset=UTF-8'}
|
||||
req_data = json.dumps(req)
|
||||
result = requests.post(url, headers=headers, data=req_data)
|
||||
if result.status_code == 200:
|
||||
data = json.loads(result.text)
|
||||
else:
|
||||
data = None
|
||||
return data
|
||||
# 执行子方法
|
||||
report_data = get_report_data()
|
||||
|
||||
return response
|
||||
# 保存处理好的报告数据
|
||||
def save_report_data(r_data):
|
||||
res = conserve_data(db='评价', col='报告数据', cid=cid, insert_data=r_data)
|
||||
if res != '保存成功':
|
||||
return '报告数据保存失败'
|
||||
else:
|
||||
return res
|
||||
|
||||
# 判断表格数据是否获取成功
|
||||
if report_data is not None:
|
||||
text_model = ReportModel(rep_json=report_data['data'], temp_data=temp_data).report_vlaues()
|
||||
# 保存text_model到报告数据库
|
||||
save_result = save_report_data(text_model)
|
||||
if save_result == '保存成功':
|
||||
# 生成报告保存到static临时文件夹
|
||||
pdf_report = ReportGenerator(name=name, text_model=text_model)
|
||||
pdf_report.gen_report()
|
||||
|
||||
# 将报告pdf保存到数据库并删掉本地报告
|
||||
file_id = upload_pdf(name)
|
||||
# 根据名称保存报告获取file_id
|
||||
if file_id:
|
||||
file_path = get_gen_report_path(name=name)
|
||||
os.remove(file_path)
|
||||
file = download_pdf(file_id)
|
||||
response = Response(file, content_type='application/pdf')
|
||||
return response
|
||||
else:
|
||||
return {"info": save_result}, 210
|
||||
else:
|
||||
return {"info": "报告数据不存在"}, 400
|
||||
|
||||
|
|
|
@ -3,7 +3,7 @@ import re
|
|||
|
||||
def handle_report_content(param1, param2):
|
||||
"""
|
||||
报告摘要部分数据处理
|
||||
报告数据处理
|
||||
Parameters:
|
||||
param1: 报告模板
|
||||
param2: 数据模板
|
||||
|
|
|
@ -367,7 +367,7 @@
|
|||
"段落": "制造业细分行业较多,通常来说,包括创新型企业、智能制造企业在内的先进制造业企业产品技术含量较高,处于成长期或成熟期的先进制造业企业盈利能力较好;处于初创期的先进制造业企业正处于拓展市场阶段,收入规模较小,而研发支出和固定资产投资支出规模较大,导致盈利能力偏弱,多处于亏损状态。传统制造业多为低端制造业,或存在产能过剩,行业竞争激烈,处于微笑曲线下端,大型企业尚可通过规模效应获得一定利润,中小企业盈利能力较弱。"
|
||||
},
|
||||
{
|
||||
"段落": "公司收入规模{income_scale},产品技术含量{technology_level},成本控制能力{cost_control_capability},{date}年公司净资产收益率、总资产报酬率分别为{return_on_net_assets_analysis}%和{return_on_total_assets_analysis}%,盈利能力{profitability_analysis}。"
|
||||
"段落": "公司收入规模{income_scale},产品技术含量{technology_level},{date}年公司净资产收益率、总资产报酬率分别为{return_on_net_assets_analysis}%和{return_on_total_assets_analysis}%,盈利能力{profitability_analysis}。"
|
||||
}
|
||||
]
|
||||
},
|
||||
|
|
Loading…
Reference in New Issue