diff --git a/CompanyData/CompanyDataImpl.py b/CompanyData/CompanyDataImpl.py index b080895..ec6def0 100644 --- a/CompanyData/CompanyDataImpl.py +++ b/CompanyData/CompanyDataImpl.py @@ -65,49 +65,75 @@ class CompanyDataImpl(CompanyData): def prepare_share_holders(): """""" - - self.share_holder = list() - - data = self.db_tyc.find_single_column( - "公司背景", - "企业股东", - {"企业名称": self.name}, - "企业股东" - ) - try: - results = data['result'] - except KeyError: - raise LogConditionCheckFailed("企业股东数据异常", 200) + self.share_holder = list() + data = self.db_tyc.find_single_column( + "公司背景", + "企业股东", + {"企业名称": self.name}, + "企业股东" + ) - for result in results: - share_holder = ShareHolder() - share_holder.name = result['name'] - share_holder.share_holder_type = "公司" if result['type'] == 1 else ( - "个人" if result['type'] == 2 else "其他") + try: + results = data['result'] + except KeyError: + raise LogConditionCheckFailed("企业股东数据异常", 200) - if result.__contains__('capital'): - share_holder.share_holding_ratio = None if result['capital'][0]['percent'] == '' else \ - result['capital'][0]['percent'] - share_holder.subscription_amount = None if result['capital'][0]['amomon'] == '' else \ - result['capital'][0]['amomon'] - share_holder.subscription_date = None if result['capital'][0]['time'] == '' else \ - result['capital'][0]['time'] - else: - share_holder.share_holding_ratio = None + for result in results: + share_holder = ShareHolder() + share_holder.name = result['name'] + share_holder.share_holder_type = "公司" if result['type'] == 1 else ( + "个人" if result['type'] == 2 else "其他") + + if result.__contains__('capital'): + share_holder.share_holding_ratio = None if result['capital'][0]['percent'] == '' else \ + result['capital'][0]['percent'] + share_holder.subscription_amount = None if result['capital'][0]['amomon'] == '' else \ + result['capital'][0]['amomon'] + share_holder.subscription_date = None if result['capital'][0]['time'] == '' else \ + result['capital'][0]['time'] + else: + share_holder.share_holding_ratio = None + share_holder.subscription_amount = None + share_holder.subscription_date = None + + if result.__contains__('capitalActl'): + share_holder.paid_amount = [capital_actl['amomon'] for capital_actl in result['capitalActl']] + share_holder.payment_method = [capital_actl['paymet'] for capital_actl in result['capitalActl']] + share_holder.payment_time = [capital_actl['time'] for capital_actl in result['capitalActl']] + else: + share_holder.paid_amount = None + share_holder.payment_method = None + share_holder.payment_time = None + + self.share_holder.append(share_holder) + + except TypeError: + self.share_holder = list() + data = self.db_tyc.find_single_column( + "公司背景", + "十大股东", + {"企业名称": self.name}, + "十大股东" + ) + + try: + results = data['holderList'] + except KeyError: + raise LogConditionCheckFailed("企业股东数据异常", 200) + + for result in results: + share_holder = ShareHolder() + share_holder.name = result['name'] + share_holder.share_holder_type = "公司" if result['cType'] == 1 else ( + "个人" if result['cType'] == 2 else "其他") + share_holder.share_holding_ratio = result['proportion'] share_holder.subscription_amount = None share_holder.subscription_date = None - - if result.__contains__('capitalActl'): - share_holder.paid_amount = [capital_actl['amomon'] for capital_actl in result['capitalActl']] - share_holder.payment_method = [capital_actl['paymet'] for capital_actl in result['capitalActl']] - share_holder.payment_time = [capital_actl['time'] for capital_actl in result['capitalActl']] - else: share_holder.paid_amount = None share_holder.payment_method = None share_holder.payment_time = None - - self.share_holder.append(share_holder) + self.share_holder.append(share_holder) self.db_tfse.upsert_single_data( "企业数据", diff --git a/CompanyData/CompanyDataRoutes.py b/CompanyData/CompanyDataRoutes.py index b28b84d..b5c04cf 100644 --- a/CompanyData/CompanyDataRoutes.py +++ b/CompanyData/CompanyDataRoutes.py @@ -15,19 +15,26 @@ def basic_info(): """ 初始化企业数据 """ - try: - req = request.json - company_data = CompanyDataImpl() - company_data.cid = req['cid'] - company_data.name = req['company_name'] - company_data.drag_data_from_tyc_api() - company_data.prepare_company_init_data() - return {"info": "企业数据初始化成功"}, 200 - except ReturnConditionCheckFailed as e: - e.log_error() - return {"info": e.failed_info}, e.status_code - except KeyError: - return {"info": "参数错误"}, 400 + req = request.json + company_data = CompanyDataImpl() + company_data.cid = req['cid'] + company_data.name = req['company_name'] + company_data.drag_data_from_tyc_api() + company_data.prepare_company_init_data() + return {"info": "企业数据初始化成功"}, 200 + # try: + # req = request.json + # company_data = CompanyDataImpl() + # company_data.cid = req['cid'] + # company_data.name = req['company_name'] + # company_data.drag_data_from_tyc_api() + # company_data.prepare_company_init_data() + # return {"info": "企业数据初始化成功"}, 200 + # except ReturnConditionCheckFailed as e: + # e.log_error() + # return {"info": e.failed_info}, e.status_code + # except KeyError: + # return {"info": "参数错误"}, 400 @company_route.route('/company_index_etl', methods=['POST'])