# -*- coding: utf-8 -*- # @Time : 2022/11/29 15:11 # @Author : XuJiakai # @File : search_winhc_summary # @Software: PyCharm from sdk import get_es_sdk from utils import map_2_json_str from log import get_log log = get_log('winhc_summary') es_sdk = get_es_sdk("new") skip_item = ['司法拍卖', '经营异常', '企业年报', '产品信息', '历史变更', '抽查检查', '软件著作权', '作品著作权', '失信信息', '双随机抽查', '融资信息', '股东信息', '行政许可', '专利', '行政处罚', '主要成员', '商标', '被执行人', '终本案件', '限制消费', '询价评估'] skip_item.clear() def _summary_format(summary: map): from utils.dim_name_mapping import get_summary_map result_data = {} dim_name = get_summary_map() for i in summary: if i not in dim_name: continue info = dim_name[i] item_name = info['item_name'] if item_name in result_data: result_data[item_name] = result_data[item_name] + summary[i] pass else: result_data[item_name] = summary[i] for i in skip_item: if i in result_data: del result_data[i] # print(result_data.keys()) # print(map_2_json_str(result_data)) return result_data pass def search_summary(company_id: str): dsl = { "size": 1000, "query": { "term": { "_id": { "value": company_id } } } } res = es_sdk.query(index='ng_rt_summary_company', doc_type='_doc', dsl=dsl) res_map = {} for i in res: m = i['summary'] for j in m: res_map[j] = m[j] log.info('fetch winhc summary: {}'.format(res_map)) # print(map_2_json_str(res_map)) return _summary_format(res_map) if __name__ == '__main__': res_map = search_summary(company_id='6e13b126ee0c5fcd8fe454693ab4bbda') print(map_2_json_str(res_map)) pass