tfse-admin-api-v0.2/Manage/rating/scripts.py

149 lines
4.0 KiB
Python

import json
import requests
from Manage.rating.db import find_rating_records, find_rating_result_records, find_fill_details_records, \
find_risk_info_records, update_report_data, find_evaluation_records, delete_report_pdf, update_evaluation_records, \
find_report_data, update_comprehensive_records, FIND_DATA_FILTER
def search_rating_script(query, skip, limit):
"""
企业评价记录搜索
Parameters:
query: 查询条件
skip: 默认0
limit: 查询条数
Returns:
result: 结果数据
"""
result = find_rating_records(query, skip, limit)
for item in result:
item['报告fid'] = '/file/get_company_report?file_id={}'.format(item['报告fid'])
item['证书fid'] = '/file/get_certification?file_id={}'.format(item['证书fid'])
return result
def rating_result_script(rid):
"""
根据rid查询评价结果
Parameters:
rid: 评价ID
Returns:
result: 结果数据
"""
result = find_rating_result_records(rid)
return result
def fill_detailss_script(rid):
"""
根据rid查询评填报详情信息
Parameters:
rid: 评价ID
Returns:
result: 结果数据
"""
result = find_fill_details_records(rid)
return result
def risk_info_script(rid):
"""
根据rid查询风险数据
Parameters:
rid: 评价ID
Returns:
result: 结果数据
"""
result = find_risk_info_records(rid)
return result
def report_edit_script(rid, text_model):
"""
根据rid编辑报告数据
Parameters:
rid: 评价ID
text_model: 报告数据
Returns:
result: 编辑结果
"""
insert_data = dict()
insert_data['报告内容'] = text_model
result = update_report_data(rid, insert_data)
return result
def report_delete_script(rid):
"""
根据rid删除报告相关数据数据
Parameters:
rid: 评价ID
Returns:
result: 删除结果
"""
data = find_evaluation_records(rid)
# 判断是否存在这条评价记录
if len(data) == 0:
return False
else:
eval_data = data[0]
if eval_data['报告fid']:
fid = eval_data['报告fid']
res = delete_report_pdf(fid)
if res:
r = update_evaluation_records(rid, {"报告fid": None})
return r
else:
return res
def report_create_script(rid, cid):
"""
根据rid查询报告数据并生成PDF报告
Parameters:
rid: 评价ID
cid: 企业ID
Returns:
result: 生成结果
"""
text_model = dict()
text_model['text_model'] = find_report_data(rid)[0]
def generate_report(text_data):
"""
调用报告生成接口
Parameters:
text_data: 报告数据
Returns:
result: type 生成结果
"""
url = 'http://139.9.249.34:51012/tfse_rating/report/generate_pdf_report'
token = 'X0gSlC!YE8jmr2jJr&ilcjS83j!tsoh5'
headers = {'token': token, 'Content-Type': 'application/json;charset=UTF-8'}
res = requests.post(url, headers=headers, data=json.dumps(text_data))
return res
r = generate_report(text_model)
result = r.json()
if result['info'] == '生成报告成功':
update_evaluation_records(rid, {"报告fid": result['result']['FileID']})
result['result']['FileID'] = '/file/get_company_report?file_id={}'.format(result['result']['FileID'])
update_comprehensive_records(cid, {"信用分析.查看报告": result['result']['FileID']})
return result
def get_report_text_model_impl(rid):
data = FIND_DATA_FILTER("评价", "报告数据", {"评价ID": rid}, {"企业ID": 1, "报告内容": 1})
if not data:
return {}
else:
data = data[0]
data['cid'] = data['企业ID']
data['text_model'] = data['报告内容']
data.pop('企业ID')
data.pop('报告内容')
return data