tfse-admin-api-v0.2/Manage/industry/industry_impl.py

54 lines
1.7 KiB
Python

from Manage.industry.industry_db import UPDATE_DATA, FUZZY_FIND_DATA, FIND_DATA, FIELDS_FIND_DATA
from Manage.industry.industry_utils import dict_fields_map, sub_dict
def search_industry_impl(param):
"""
搜索行业列表
Parameters:
param: str 搜索条件
Returns:
result: list 行业名称
"""
param = "" if type(param) is not str else param # 强制模糊搜索条件为str类型
records = FUZZY_FIND_DATA('行业宏观分析', {'行业': {'$regex': param}})
result = []
for record in records:
result.append(sub_dict(record, ['行业'])['行业'])
return result
def primary_industry_update_data_impl(param):
"""
新建/更新一级行业数据
"""
fields_map = {
"name": "行业",
"introduction": "行业简介",
"positive_factors": "正面因素",
"negative_factors": "负面因素",
"increase_trend": "增长趋势",
"scale_distribution": "规模分布",
"update_time": "更新时间"
}
result = dict_fields_map(param.__dict__, fields_map)
UPDATE_DATA('行业宏观分析', {"行业": result["行业"]}, result)
def get_primary_industry_data_impl(param):
"""
获取一级行业数据
"""
analysis_data = FIND_DATA('行业宏观分析', {'行业': param})[0]
report_data = FIELDS_FIND_DATA('行业报告', {'行业名称': param}, ['报告名称', '报告fid', '上传日期'])
for data in report_data:
data['报告'] = '/file/get_industry_report?file_id={}'.format(data['报告fid'])
data.pop('报告fid')
result = {**analysis_data, **{'报告数据': report_data}}
return result