tfse-admin-api-v0.2/TestManage/scripts.py

110 lines
3.5 KiB
Python

import json
import requests
from TestManage.db import update_user_info_by_cid, find_user_info_by_cid
from common.db import delete_data, find_data
def delete_rid_cascade_scripts(rid):
"""
级联删除与评价ID有关的所有数据
1.删除评价报告
2.删除评价结果
3.删除综合评价填报
4.删除评价记录
5.删除风险数据
Parameters:
rid: 评价ID
Returns:
res: True 执行结果
"""
delete_data('tfse', '评价', '报告数据', {"评价ID": rid})
delete_data('tfse', '评价', '评价结果', {"评价ID": rid})
delete_data('tfse', '评价', '综合评价填报', {"评价ID": rid})
delete_data('tfse', '评价', '评价记录', {"评价ID": rid})
delete_data('tfse', '评价', '风险数据', {"评价ID": rid})
return True
def delete_cid_cascade_scripts(cid):
"""
级联删除uid有关的所有数据
Parameters:
cid: 企业ID
Returns:
res: True 执行结果
"""
delete_data('tfse', '用户', '用户信息', {"企业ID": cid})
delete_data('tfse', '企业', '指标明细', {"企业ID": cid})
delete_data('tfse', '企业', '综合评价分析', {"企业ID": cid})
delete_data('tfse', '企业', '公司基本信息', {"企业ID": cid})
delete_data('tfse', '企业', '财务要素分析', {"企业ID": cid})
delete_data('tfse', '企业', '财务要素分析', {"企业ID": cid})
rids = find_data('tfse', '评价', '评价记录', {"企业ID": cid})
if rids:
for rid in rids:
delete_rid_cascade_scripts(rid['评价ID'])
return True
def company_verify_script(company, code, legal_person, cid):
"""
输入企业名称、统一社会信用代码、法人姓名进行企业认证
Parameters:
company: 企业名称
code: 统一社会信用代码
legal_person: 法人姓名
cid: 企业ID
Returns:
result: 认证结果
"""
# 是否认证
r = find_user_info_by_cid(cid)
if len(r) < 0:
return '未查到该用户信息'
else:
auth = r[0]['已认证']
if auth == '':
return '该用户已认证'
# 认证信息有缺失
if None in [company, code, legal_person]:
return '认证信息不完整'
def tyc_api():
"""
# 调用天眼查企业三要素验证接口
Parameters:
-
Returns:
result: 查询结果
"""
token = "5407573b-e41e-4ab4-9f46-daa0032ad0a4"
base = "http://open.api.tianyancha.com/services/open/ic/verify/2.0?code={}&name={}&legalPersonName={}"
url = base.format(code, company, legal_person)
headers = {'Authorization': token}
res = json.loads(requests.get(url, headers=headers).text)
return res
try:
result = tyc_api()
if result['result']['result'] == 1:
# 初始化企业数据
init_url = "http://139.9.249.34:51011/etl_tfse/company/init_company_data"
init_token = "dmfd7FshT!5Wng9^gcCcQV7T6FBnVgl4"
init_headers = {'token': init_token}
data = json.dumps({"cid": cid, "company_name": company})
requests.post(init_url, headers=init_headers, data=data)
# 更新用户认证状态
update_user_info_by_cid(cid, {"企业名称": company, "已认证": ""})
return '认证成功'
else:
return '认证失败'
except Exception:
return '认证失败'