diff --git a/CompanyObject/CompanyImpl.py b/CompanyObject/CompanyImpl.py index c487a83..40bb5f0 100644 --- a/CompanyObject/CompanyImpl.py +++ b/CompanyObject/CompanyImpl.py @@ -1,4 +1,5 @@ -from CompanyObject.CompanyObj import Company, HeadInfo +from CompanyObject.CompanyObj import Company, HeadInfo, BasicInfo, CompanyIndexBasicBusinessInfo, ShareHolder, \ + MainMember from DBHelper.MongoHelper import MongoHelper @@ -8,7 +9,7 @@ class CompanyImpl(Company): db = MongoHelper("tfse_v0.21") def get_head_info(self): - """""" + """企业主要 头部信息""" verify_status = self.db.find_single_column( "应用端", "企业用户", @@ -55,5 +56,23 @@ class CompanyImpl(Company): return head_info.dict_to_show() + @property def get_basic_info(self): - """""" + """企业主要 基本信息""" + + data = self.db.find_single_data( + "企业数据", + "企业数据_更新汇总", + {"企业ID": self.cid}, + ["更新时间", "企业名称", "工商信息", "股东信息", "主要成员"] + ) + + result = { + "企业名称": data['企业名称'], + "工商信息": data['工商信息'], + "股东信息": data['股东信息'], + "主要成员": data['主要成员'], + "更新时间": data['更新时间']['工商信息'] + } + + return result diff --git a/CompanyObject/CompanyObj.py b/CompanyObject/CompanyObj.py index aec7b4c..b537e1e 100644 --- a/CompanyObject/CompanyObj.py +++ b/CompanyObject/CompanyObj.py @@ -17,7 +17,7 @@ class BasicInfo(SpecObject): industry = ValidateAttr(field="industry", type=str, default=None) staff_size = ValidateAttr(field="staff_size", type=str, default=None) people_insured_num = ValidateAttr(field="people_insured_num", type=int, default=None) - micro_company = ValidateAttr(field="micro_company", type=str, default=None) + micro_company = ValidateAttr(field="micro_company", type=str, in_list=["是", "否"], default=None) fields_map = { "status": "企业状态", @@ -196,7 +196,7 @@ class HeadInfo(SpecObject): } -class Company(object): +class Company(SpecObject): """企业""" cid = ValidateAttr(field='cid', type=str, length=8) @@ -239,3 +239,7 @@ class Company(object): def get_basic_info(self): """获取基本工商信息""" + +class CompanyIndexBasicBusinessInfo(Company): + """企业主页 基本工商信息""" + update_time = ValidateAttr(field='update_time', type=str) diff --git a/CompanyObject/CompanyRoutes.py b/CompanyObject/CompanyRoutes.py index 66fa7e8..72cf727 100644 --- a/CompanyObject/CompanyRoutes.py +++ b/CompanyObject/CompanyRoutes.py @@ -2,6 +2,7 @@ from flask import Blueprint from CompanyObject.CompanyImpl import CompanyImpl from CompanyUser.CompanyUserAuth import verify_token +from Utils.ErrorUtil import ReturnConditionCheckFailed company_route_v021 = Blueprint('company', __name__) @@ -9,7 +10,21 @@ company_route_v021 = Blueprint('company', __name__) @company_route_v021.route('/head_info', methods=['GET']) @verify_token def head_info_route(**kwargs): + try: + company = CompanyImpl() + company.cid = kwargs['cid'] + result = company.get_head_info() + return {"info": "查询结果", "result": result}, 200 + except ReturnConditionCheckFailed as e: + return {"info": e.failed_info}, e.status_code + except KeyError: + return {"info": "参数异常"}, 400 + + +@company_route_v021.route('/basic_info', methods=['GET']) +@verify_token +def basic_info_route(**kwargs): company = CompanyImpl() company.cid = kwargs['cid'] - result = company.get_head_info() + result = company.get_basic_info return {"info": "查询结果", "result": result}, 200 diff --git a/Utils/ObjUtil.py b/Utils/ObjUtil.py index d42fc09..f352d56 100644 --- a/Utils/ObjUtil.py +++ b/Utils/ObjUtil.py @@ -51,3 +51,9 @@ class SpecObject(object): _dict_ = {key: _dict_[key] for key in kwargs['columns']} return _dict_ + + # def dict_to_post(self, **kwargs): + # if kwargs.__contains__('data'): + # fields_map = dict([v, k] for k, v in self.fields_map.items()) + # for field in list(kwargs['data'].keys()): + # self.__setattr__(fields_map[field], kwargs['data'][field]) diff --git a/company/company_routes.py b/company/company_routes.py index 211d8b7..95c50cb 100644 --- a/company/company_routes.py +++ b/company/company_routes.py @@ -19,9 +19,9 @@ def head_info_route(**kwargs): @company_route.route('/basic_info', methods=['GET']) @verify_token def basic_info_route(**kwargs): - company = CompanyIndex() + company = CompanyImpl() company.cid = kwargs['cid'] - result = company.get_basic_info() + result = company.get_basic_info return {"info": "查询结果", "result": result}, 200