from Manage.industry.industry_db import UPDATE_DATA, FUZZY_FIND_DATA, FIND_DATA, FIELDS_FIND_DATA, DELETE_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 def delete_primary_industry_impl(param): """ 删除一级行业 """ DELETE_DATA('行业宏观分析', {"行业": param}) return True