def profitability(param): """ 资质荣誉 区分行业 Parameters: param: 数据库数据 """ industry = param['综合评价填报']['行业选择'][0] if industry == '制造业': return profitability_manufacturing(param) elif industry == '信息技术业': return profitability_infomation(param) def profitability_manufacturing(param): """ 盈利能力-制造业 清洗数据库数据,根据需要返回 Parameters: param: 数据库数据 Returns: 盈利能力数据 """ # Params data_01 = param['综合评价填报'] data_02 = param['评价结果'] data_03 = param['指标明细'] # Returns result = list() part_01 = dict() def para_02(): part_02 = dict() # 年度 part_02['date'] = data_01['财务填报']['利润表'][1]['报告期'][:4] # 净资产收益率 part_02['return_on_net_assets_analysis'] = str(data_03[1]['净资产收益率']) # 总资产报酬率 part_02['return_on_total_assets_analysis'] = str(data_03[1]['总资产报酬率']) def income_scale(): # 收入规模 income = float(data_01['财务填报']['利润表'][0]['营业收入']) if income > 400000000: part_02['income_scale'] = '较大' elif income > 20000000: part_02['income_scale'] = '处于行业中等水平' elif income > 3000000: part_02['income_scale'] = '较小' else: part_02['income_scale'] = '小' def technology_level(): # 产品技术含量 rona = data_02['财务评分']['盈利能力']['净资产收益率'] if rona >= 8: part_02['technology_level'] = '高' elif rona >= 8 * 0.8: part_02['technology_level'] = '较高' elif rona >= 8 * 0.6: part_02['technology_level'] = '处于行业平均水平' elif rona >= 8 * 0.4: part_02['technology_level'] = '较低' else: part_02['technology_level'] = '低' def profitability_analysis(): # 盈利能力 p_score = data_02['财务评分']['盈利能力']['净资产收益率'] + data_02['财务评分']['盈利能力']['总资产报酬率'] if p_score >= 16: part_02['profitability_analysis'] = '好' elif p_score >= 16 * 0.8: part_02['profitability_analysis'] = '较好' elif p_score >= 16 * 0.8: part_02['profitability_analysis'] = '有待提高' elif p_score >= 16 * 0.8: part_02['profitability_analysis'] = '较弱' else: part_02['profitability_analysis'] = '弱' income_scale() technology_level() profitability_analysis() return part_02 result.append(part_01) result.append(para_02()) return result def profitability_infomation(param): """ 盈利能力-信息技术业 清洗数据库数据,根据需要返回 Parameters: param: 数据库数据 Returns: 盈利能力数据 """ # Params data_01 = param['综合评价填报'] data_03 = param['指标明细'] # Returns result = list() part_01 = dict() part_02 = dict() def para_03(): part_03 = dict() # 年度 part_03['date'] = data_01['财务填报']['利润表'][1]['报告期'][:4] # 净资产收益率 part_03['return_on_net_assets_analysis'] = str(data_03[1]['净资产收益率']) try: # 是否高于平均水平 if data_03[1]['净资产收益率'] > 4.7: part_03['high_low_01'] = '高于' else: part_03['high_low_01'] = '低于' except TypeError: part_03['high_low_01'] = '低于' # 总资产报酬率 part_03['return_on_total_assets_analysis'] = str(data_03[1]['总资产报酬率']) try: # 是否高于平均水平 if data_03[1]['总资产报酬率'] > 2.7: part_03['high_low_02'] = '高于' else: part_03['high_low_02'] = '低于' except TypeError: part_03['high_low_02'] = '低于' return part_03 result.append(part_01) result.append(part_02) result.append(para_03()) return result def asset_quality(param): """ 资产质量 区分行业 Parameters: param: 数据库数据 """ industry = param['综合评价填报']['行业选择'][0] if industry == '制造业': return asset_quality_manufacturing(param) elif industry == '信息技术业': return asset_quality_infomation(param) def asset_quality_manufacturing(param): """ 资产质量-制造业 清洗数据库数据,根据需要返回 Parameters: param: 数据库数据 Returns: 资产质量数据 """ # Params data_01 = param['综合评价填报'] data_02 = param['评价结果'] data_03 = param['指标明细'] # Returns result = list() part_01 = dict() part_02 = dict() def para_03(): part_03 = dict() # 年度 part_03['date'] = data_01['财务填报']['利润表'][1]['报告期'][:4] # 应收账款周转率 part_03['account_turnover_analysis'] = str(data_03[0]['应收账款周转率']) # 存货周转率 part_03['inventory_turnover_analysis'] = str(data_03[0]['存货周转率']) # 总资产周转率 part_03['total_assets_turnover_analysis'] = str(data_03[0]['总资产周转率']) def industry_asset(): a = float(data_02['财务评分']['资产质量']['总资产周转率']) s = float(data_02['财务评分']['资产质量']['应收账款周转率']) c = float(data_02['财务评分']['资产质量']['存货周转率']) a_s = a + s + c if a_s >= 18: part_03['industry_level'] = '高' part_03['asset_quality'] = '好' elif a_s >= 18 * 0.8: part_03['industry_level'] = '较高' part_03['asset_quality'] = '较好' elif a_s >= 18 * 0.6: part_03['industry_level'] = '中等' part_03['asset_quality'] = '有待改善' elif a_s >= 18 * 0.4: part_03['industry_level'] = '偏低' part_03['asset_quality'] = '较差' else: part_03['industry_level'] = '低' part_03['asset_quality'] = '差' industry_asset() return part_03 result.append(part_01) result.append(part_02) result.append(para_03()) return result def asset_quality_infomation(param): """ 资产质量-信息技术业 清洗数据库数据,根据需要返回 Parameters: param: 数据库数据 Returns: 资产质量数据 """ # Params data_01 = param['综合评价填报'] data_02 = param['评价结果'] data_03 = param['指标明细'] # Returns result = list() def para_01(): part_01 = dict() # 年度 part_01['date'] = data_01['财务填报']['利润表'][1]['报告期'][:4] # 应收账款周转率 part_01['account_turnover_analysis'] = str(data_03[1]['应收账款周转率']) try: # 是否高于平均水平 if data_03[1]['应收账款周转率'] > 0.4: part_01['high_low_01'] = '高' else: part_01['high_low_01'] = '低' except TypeError: part_01['high_low_01'] = '低' # 总资产周转率 part_01['total_assets_turnover_analysis'] = str(data_03[1]['总资产周转率']) try: # 是否高于平均水平 if data_03[1]['总资产周转率'] > 3.9: part_01['high_low_02'] = '高于' else: part_01['high_low_02'] = '低于' except TypeError: part_01['high_low_02'] = '低于' return part_01 result.append(para_01()) return result def debt_risk(param): """ 债务风险 清洗数据库数据,根据需要返回 Parameters: param: 数据库数据 Returns: 债务风险数据 """ # Params data_02 = param['评价结果'] data_03 = param['指标明细'] # Returns result = list() part_01 = dict() def para_02(): part_02 = dict() def debt_risk_detail(): a = float(data_02['财务评分']['债务风险']['资产负债率']) d = float(data_02['财务评分']['债务风险']['已获利息倍数']) s = float(data_02['财务评分']['债务风险']['速动比率']) d_s = a + d + s if d_s >= 18: part_02['debt_risk'] = '大' elif d_s >= 18 * 0.8: part_02['debt_risk'] = '较大' elif d_s >= 18 * 0.6: part_02['debt_risk'] = '适中' elif d_s >= 18 * 0.4: part_02['debt_risk'] = '较小' else: part_02['debt_risk'] = '小' def asset_liability_ratio(): # 资产负债率区间 if len(data_03) >= 3: rate = [data_03[0]['资产负债率'], data_03[1]['资产负债率'], data_03[2]['资产负债率']] rate.sort() part_02['min_asset_liability_ratio'] = str(rate[0]) part_02['max_asset_liability_ratio'] = str(rate[2]) else: rate_01 = data_03[0]['资产负债率'] rate_02 = data_03[1]['资产负债率'] if rate_01 > rate_02: part_02['max_asset_liability_ratio'] = str(rate_01) part_02['min_asset_liability_ratio'] = str(rate_02) else: part_02['max_asset_liability_ratio'] = str(rate_02) part_02['min_asset_liability_ratio'] = str(rate_01) def fin_structure_analysis(): # 财务结构 alr = data_03[0]['资产负债率'] if alr < 0.4: part_02['fin_structure_analysis'] = '稳健' elif alr < 0.55: part_02['fin_structure_analysis'] = '较稳健' elif alr < 0.7: part_02['fin_structure_analysis'] = '稳健性有待进一步加强' else: part_02['fin_structure_analysis'] = '欠稳健' def operating_cash_flow_to_debt(): # 经营性现金流对利息的保障程度 ic_s = data_02['财务评分']['债务风险']['已获利息倍数'] if ic_s >= 5: part_02['operating_cash_flow_to_debt'] = '强' elif ic_s >= 5 * 0.8: part_02['operating_cash_flow_to_debt'] = '较强' elif ic_s >= 5 * 0.6: part_02['operating_cash_flow_to_debt'] = '尚可' elif ic_s >= 5 * 0.4: part_02['operating_cash_flow_to_debt'] = '较弱' else: part_02['operating_cash_flow_to_debt'] = '弱' def assets_liquidity(): # 资产流动性 qr_s = data_02['财务评分']['债务风险']['速动比率'] if qr_s >= 5: part_02['assets_liquidity'] = '好' elif qr_s >= 5 * 0.8: part_02['assets_liquidity'] = '较好' elif qr_s >= 5 * 0.6: part_02['assets_liquidity'] = '一般' elif qr_s >= 5 * 0.4: part_02['assets_liquidity'] = '较差' else: part_02['assets_liquidity'] = '差' # 已获利息倍数 part_02['interest_cover'] = str(data_03[0]['已获利息倍数']) # 速动比率 part_02['quick_ratio'] = str(data_03[0]['速动比率']) debt_risk_detail() asset_liability_ratio() asset_liability_ratio() fin_structure_analysis() operating_cash_flow_to_debt() assets_liquidity() return part_02 result.append(part_01) result.append(para_02()) return result def growth_ability(param): """ 成长能力 清洗数据库数据,根据需要返回 Parameters: param: 数据库数据 Returns: 成长能力数据 """ # Params data_02 = param['评价结果'] data_03 = param['指标明细'] # Returns result = list() part_01 = dict() def para_02(): part_02 = dict() def degree_of_imprtance(): # 重视程度 ti_s = data_02['财务评分']['经营增长']['技术投入比率'] if ti_s >= 5 * 0.7: part_02['degree_of_imprtance'] = '重视技术研发或先进工艺的开发' elif ti_s >= 5 * 0.4: part_02['degree_of_imprtance'] = '对技术研发或先进工艺的开发的重视程度一般' else: part_02['degree_of_imprtance'] = '不重视技术研发或先进工艺的开发' # 技术投入比 part_02['technology_input_ratio'] = str(data_03[1]['技术投入比率']) def contribution_growth_ability(): g = float(data_02['财务评分']['经营增长']['营业增长率']) a = float(data_02['财务评分']['经营增长']['总资产增长率']) s = float(data_02['财务评分']['经营增长']['技术投入比率']) ga_s = g + a + s if ga_s >= 18: part_02['contribution'] = '大' part_02['growth_ability'] = '好' elif ga_s >= 18 * 0.8: part_02['contribution'] = '较大' part_02['growth_ability'] = '较好' elif ga_s >= 18 * 0.6: part_02['contribution'] = '尚可' part_02['growth_ability'] = '一般' elif ga_s >= 18 * 0.4: part_02['contribution'] = '较小' part_02['growth_ability'] = '较差' else: part_02['contribution'] = '小' part_02['growth_ability'] = '差' # 营业收入增长率 part_02['growth_rate_of_operating_revenue'] = str(data_03[1]['营业增长率']) # 总资产增长率 part_02['growth_rate_of_total_assets'] = str(data_03[1]['总资产增长率']) degree_of_imprtance() contribution_growth_ability() return part_02 result.append(part_01) result.append(para_02()) return result