tfse-etl-api-v0.2/rating/scripts/report/rating_conclusion.py

141 lines
5.2 KiB
Python
Raw Normal View History

2021-12-27 17:02:03 +08:00
def conclusion(param):
"""
结论
清洗数据库数据根据需要返回
Parameters:
param: 数据库数据
Returns:
结论数据
"""
# Params
data_01 = param['评价结果']
# Returns
result = list()
def para_01():
part_01 = dict()
part_01['describe'] = list()
def describe():
# 环境部分得分
ep_s = data_01['经营评分']['环境']
if ep_s > 10 * 0.5:
part_01['describe'].append('公司为环境友好型企业')
else:
part_01['describe'].append('公司绿色发展理念相对薄弱')
# 社会责任部分得分
sr_s = data_01['经营评分']['社会责任']
if sr_s > 10 * 0.5:
part_01['describe'].append('积极履行社会责任')
else:
part_01['describe'].append('社会责任履行能力有待进一步提升')
# 公司治理部分得分
cg_s = data_01['经营评分']['公司治理']
if cg_s > 10 * 0.5:
part_01['describe'].append('内部治理水平较高')
else:
part_01['describe'].append('治理水平有待进一步提升')
part_01['describe'] = ''.join(part_01['describe'])
describe()
return part_01
def para_02():
part_02 = dict()
def enterprise_quality():
# 企业整体素质
eq_s = data_01['经营评分']['合计']
if eq_s >= 30:
part_02['enterprise_quality'] = ''
elif eq_s >= 30 * 0.8:
part_02['enterprise_quality'] = '较好'
elif eq_s >= 30 * 0.6:
part_02['enterprise_quality'] = '一般'
elif eq_s >= 30 * 0.4:
part_02['enterprise_quality'] = '较差'
else:
part_02['enterprise_quality'] = ''
def profitability_detail():
p = float(data_01['财务评分']['盈利能力']['净资产收益率'])
s = float(data_01['财务评分']['盈利能力']['总资产报酬率'])
p_s = p + s
if p_s >= 16:
part_02['profitability'] = ''
elif p_s >= 16 * 0.8:
part_02['profitability'] = '较强'
elif p_s >= 16 * 0.6:
part_02['profitability'] = '尚可'
elif p_s >= 16 * 0.4:
part_02['profitability'] = '较弱'
else:
part_02['profitability'] = ''
def asset_quality_detail():
a = float(data_01['财务评分']['资产质量']['总资产周转率'])
q = float(data_01['财务评分']['资产质量']['应收账款周转率'])
s = float(data_01['财务评分']['资产质量']['存货周转率'])
aq_s = a + q + s
if aq_s >= 18:
part_02['asset_quality'] = ''
elif aq_s >= 18 * 0.8:
part_02['asset_quality'] = '较好'
elif aq_s >= 18 * 0.6:
part_02['asset_quality'] = '一般'
elif aq_s >= 18 * 0.4:
part_02['asset_quality'] = '较差'
else:
part_02['asset_quality'] = ''
def debt_risk_detail():
# 债务风险得分
d = float(data_01['财务评分']['债务风险']['资产负债率'])
r = float(data_01['财务评分']['债务风险']['已获利息倍数'])
s = float(data_01['财务评分']['债务风险']['速动比率'])
dr_s = d + r + s
if dr_s >= 18:
part_02['debt_risk'] = ''
elif dr_s >= 18 * 0.8:
part_02['debt_risk'] = '较高'
elif dr_s >= 18 * 0.6:
part_02['debt_risk'] = '适中'
elif dr_s >= 18 * 0.4:
part_02['debt_risk'] = '较低'
else:
part_02['debt_risk'] = ''
def growth_ability_detail():
g = float(data_01['财务评分']['经营增长']['营业增长率'])
s = float(data_01['财务评分']['经营增长']['总资产增长率'])
i = float(data_01['财务评分']['经营增长']['技术投入比率'])
# 成长空间得分
gs_s = g + s + i
if gs_s >= 18:
part_02['growth_ability'] = ''
elif gs_s >= 18 * 0.8:
part_02['growth_ability'] = '较大'
elif gs_s >= 18 * 0.6:
part_02['growth_ability'] = '不大'
elif gs_s >= 18 * 0.4:
part_02['growth_ability'] = '较小'
else:
part_02['growth_ability'] = ''
enterprise_quality()
profitability_detail()
asset_quality_detail()
debt_risk_detail()
growth_ability_detail()
return part_02
def para_03():
part_03 = dict()
part_03['company'] = data_01['企业名称']
part_03['credit_rank'] = data_01['信用等级']
return part_03
result.append(para_01())
result.append(para_02())
result.append(para_03())
return result