tfse-etl-api-v0.2/RatingData/scripts/report/enterprise_risk.py

118 lines
3.0 KiB
Python

def compliance_risk(param):
"""
合规风险
清洗数据库数据,根据需要返回
Parameters:
param: 数据库数据
Returns:
合规风险数据
"""
data = param['风险数据']['合规风险']
result = list()
part_01 = dict()
yes_no = list()
for key, value in data.items():
if value > 0:
yes_no.append('')
else:
yes_no.append('')
part_01['yes_no_01'] = yes_no[0]
part_01['yes_no_02'] = yes_no[1]
part_01['yes_no_03'] = yes_no[2]
part_01['yes_no_04'] = yes_no[3]
part_01['yes_no_05'] = yes_no[4]
part_01['yes_no_06'] = yes_no[5]
part_01['yes_no_07'] = yes_no[6]
if '' not in yes_no:
part_01['risk_level'] = ''
else:
part_01['risk_level'] = ''
result.append(part_01)
return result
def operational_risk(param):
"""
经营风险
清洗数据库数据,根据需要返回
Parameters:
param: 数据库数据
Returns:
经营风险数据
"""
# Params
data = param['风险数据']['经营风险']
# Returns
result = list()
def para_01():
part_01 = dict()
def risk_num():
num = 0
for key, value in data.items():
num += value
if num > 50:
part_01['risk_level'] = '较高'
elif num > 30:
part_01['risk_level'] = '适中'
else:
part_01['risk_level'] = '较低'
part_01['risk_num'] = str(num)
risk_num()
return part_01
result.append(para_01())
return result
def associated_risk(param):
"""
关联风险
清洗数据库数据,根据需要返回
Parameters:
param: 数据库数据
Returns:
关联风险数据
"""
# Params
data = param['周边风险']['周边风险']['list']
extent = ["失信被执行人", "司法拍卖", "限制消费令", "强制清算", "涉金融黑名单", "破产案件", "欠税公告",
"环保处罚", "立案信息", "税收违法", "违规处理"]
# Returns
result = list()
def para_01():
part_01 = dict()
part_01['include'] = '不包括'
num = 0
for item in data:
if item['title'] in extent:
part_01['include'] = '包括'
num += item['total']
def include_will():
if num < 50 and part_01['include'] == '不包括':
part_01['will'] = '不会'
else:
part_01['will'] = ''
def risk_level():
if num > 50 and part_01['include'] == '包括':
part_01['risk_level'] = '较高'
elif 20 < num < 50 and part_01['include'] == '不包括':
part_01['risk_level'] = '适中'
else:
part_01['risk_level'] = '较低'
part_01['risk_num'] = str(num)
include_will()
risk_level()
return part_01
result.append(para_01())
return result