2022-08-31 10:12:16 +08:00
|
|
|
from Company.Basic.Business.BusinessObj import BusinessInfo
|
2022-08-25 17:16:59 +08:00
|
|
|
from Company.CompanyUtils import CompanyUtils
|
|
|
|
from DBHelper.MongoHelperInstance import DB_TYC, DB_TEST
|
|
|
|
from Utils.CommonUtil import CommonUtils
|
|
|
|
|
|
|
|
|
|
|
|
class BasicImpl(object):
|
|
|
|
"""基本信息"""
|
|
|
|
|
|
|
|
@staticmethod
|
2022-08-31 10:12:16 +08:00
|
|
|
def auto_update(**kwargs):
|
|
|
|
"""新增/更新(自动)"""
|
2022-08-30 17:04:17 +08:00
|
|
|
condition = kwargs['condition']
|
2022-08-25 17:16:59 +08:00
|
|
|
|
2022-08-30 17:04:17 +08:00
|
|
|
def save_data(**args):
|
|
|
|
"""查询保存数据"""
|
|
|
|
company_name = args['cname']
|
|
|
|
company_id = args['cid']
|
|
|
|
record = DB_TYC.find_single_data(
|
|
|
|
'公司背景',
|
|
|
|
'基本信息',
|
|
|
|
{'企业名称': company_name},
|
|
|
|
['基本信息']
|
|
|
|
)
|
|
|
|
if record:
|
|
|
|
record = record['基本信息']
|
|
|
|
data = dict()
|
|
|
|
data['企业ID'] = company_id
|
|
|
|
data['企业名称'] = cname
|
|
|
|
data['企业类型'] = record['companyOrgType']
|
|
|
|
data['经营状态'] = record['regStatus']
|
|
|
|
data['法定代表人'] = record['legalPersonName']
|
|
|
|
data['注册资本'] = record['regCapital']
|
|
|
|
data['实缴资本'] = record['actualCapital']
|
|
|
|
data['经营范围'] = record['businessScope']
|
|
|
|
data['社会统一信用代码'] = record['creditCode']
|
|
|
|
data['成立日期'] = CommonUtils.time_stamp(record['estiblishTime'])
|
|
|
|
data['注册地址'] = record['regLocation']
|
|
|
|
data['登记机关'] = record['regInstitute']
|
|
|
|
data['核准日期'] = CommonUtils.time_stamp(record['approvedTime'])
|
|
|
|
data['更新时间'] = CommonUtils.get_current_time()
|
|
|
|
return data
|
|
|
|
else:
|
|
|
|
return False
|
2022-08-25 17:16:59 +08:00
|
|
|
|
2022-08-30 17:04:17 +08:00
|
|
|
if len(condition['cid']):
|
|
|
|
cid = condition['cid']
|
|
|
|
cname = DB_TEST.find_single_column(
|
|
|
|
'WR_DataBase_v2_test',
|
|
|
|
'C3.1_工商信息',
|
|
|
|
{'企业ID': cid},
|
|
|
|
'企业名称'
|
|
|
|
)
|
|
|
|
update = save_data(cname=cname, cid=cid)
|
|
|
|
if update:
|
|
|
|
DB_TEST.update_single_data(
|
|
|
|
"WR_DataBase_v2_test",
|
|
|
|
"C3.1_工商信息",
|
|
|
|
{"企业ID": cid},
|
|
|
|
update
|
|
|
|
)
|
|
|
|
return 'success'
|
|
|
|
else:
|
|
|
|
return 'update failed'
|
|
|
|
elif len(condition['cname']):
|
|
|
|
cname = condition['cname']
|
|
|
|
cid = CompanyUtils.make_new_cid()
|
|
|
|
insert = save_data(cname=cname, cid=cid)
|
|
|
|
if insert:
|
|
|
|
DB_TEST.upsert_single_data(
|
|
|
|
"WR_DataBase_v2_test",
|
|
|
|
"C3.1_工商信息",
|
|
|
|
{"企业名称": cname},
|
|
|
|
insert
|
|
|
|
)
|
|
|
|
return 'success'
|
|
|
|
else:
|
|
|
|
return '"new failed"'
|
|
|
|
else:
|
|
|
|
return 'parameter exception'
|
2022-08-25 17:16:59 +08:00
|
|
|
|
2022-08-30 17:04:17 +08:00
|
|
|
@staticmethod
|
2022-08-31 10:12:16 +08:00
|
|
|
def edit(**kwargs):
|
|
|
|
"""编辑"""
|
2022-08-30 17:04:17 +08:00
|
|
|
param = kwargs['param']
|
|
|
|
cid = param['cid']
|
|
|
|
body = param['body']
|
2022-08-25 17:16:59 +08:00
|
|
|
|
2022-08-30 17:04:17 +08:00
|
|
|
try:
|
|
|
|
business = BusinessInfo()
|
|
|
|
business.cname = body['企业名称']
|
|
|
|
business.ctype = body['企业类型']
|
|
|
|
business.status = body['经营状态']
|
|
|
|
business.representative = body['法定代表人']
|
|
|
|
business.registered_capital = body['注册资本']
|
|
|
|
business.paid_capital = body['实缴资本']
|
|
|
|
business.code = body['社会统一信用代码']
|
|
|
|
business.establishment_date = body['成立日期']
|
|
|
|
business.address = body['注册地址']
|
|
|
|
business.agencies = body['登记机关']
|
|
|
|
business.approved_date = body['核准日期']
|
|
|
|
business.business_scope = body['经营范围']
|
2022-08-31 10:12:16 +08:00
|
|
|
business.update_time = CommonUtils.get_current_time()
|
2022-08-30 17:04:17 +08:00
|
|
|
|
|
|
|
DB_TEST.update_single_data(
|
|
|
|
"WR_DataBase_v2_test",
|
|
|
|
"C3.1_工商信息",
|
|
|
|
{"企业ID": cid},
|
|
|
|
business.fields_toggle()
|
|
|
|
)
|
|
|
|
return 'success'
|
|
|
|
except Exception:
|
|
|
|
return 'edit failed'
|
2022-08-25 17:16:59 +08:00
|
|
|
|
|
|
|
@staticmethod
|
2022-08-31 10:12:16 +08:00
|
|
|
def view(**kwargs):
|
|
|
|
"""查看"""
|
2022-08-25 17:16:59 +08:00
|
|
|
cid = kwargs['cid']
|
|
|
|
|
|
|
|
record = DB_TEST.find_single_data(
|
|
|
|
"WR_DataBase_v2_test",
|
|
|
|
"C3.1_工商信息",
|
|
|
|
{"企业ID": cid},
|
|
|
|
[]
|
|
|
|
)
|
|
|
|
|
2022-08-30 17:04:17 +08:00
|
|
|
if record:
|
|
|
|
result = {
|
|
|
|
"info": "success",
|
|
|
|
"result": record
|
|
|
|
}
|
|
|
|
else:
|
|
|
|
result = {
|
|
|
|
"info": "no result"
|
|
|
|
}
|
|
|
|
return result
|
2022-08-25 17:16:59 +08:00
|
|
|
|
|
|
|
def get_cid(self, **kwargs):
|
|
|
|
"""查询工商信息中的企业ID"""
|
|
|
|
name = kwargs['name']
|
|
|
|
cid = DB_TEST.find_single_column(
|
|
|
|
"WR_DataBase_v2_test",
|
|
|
|
"C3.1_工商信息",
|
|
|
|
{"企业名称": name},
|
|
|
|
'企业ID'
|
|
|
|
)
|
|
|
|
if not cid:
|
2022-08-31 10:12:16 +08:00
|
|
|
self.auto_update(name=name)
|
2022-08-25 17:16:59 +08:00
|
|
|
cid = DB_TEST.find_single_column(
|
|
|
|
"WR_DataBase_v2_test",
|
|
|
|
"C3.1_工商信息",
|
|
|
|
{"企业名称": name},
|
|
|
|
'企业ID'
|
|
|
|
)
|
|
|
|
return cid
|
|
|
|
|
|
|
|
def shareholders_information(self, **kwargs):
|
|
|
|
"""股东信息"""
|
|
|
|
name = kwargs['name']
|
|
|
|
cid = self.get_cid(name=name)
|
|
|
|
|
|
|
|
records = DB_TYC.find_single_column(
|
|
|
|
'公司背景',
|
|
|
|
'企业股东',
|
|
|
|
{'企业名称': name},
|
|
|
|
'企业股东'
|
|
|
|
)
|
|
|
|
|
|
|
|
records = records['result']
|
|
|
|
data = dict()
|
|
|
|
list_data = list()
|
|
|
|
if records:
|
|
|
|
for record in records:
|
|
|
|
dict_data = dict()
|
|
|
|
dict_data['股东ID'] = record['id']
|
|
|
|
dict_data['股东名称'] = record['name']
|
|
|
|
dict_data['股东类型'] = '公司' if record['type'] == 1 else '人' if record['type'] == 2 else '其他'
|
|
|
|
dict_data['股东性质'] = None
|
|
|
|
dict_data['持股比例'] = record['capital'][0]['percent']
|
|
|
|
dict_data['认缴出资额'] = record['capital'][0]['amomon']
|
|
|
|
dict_data['认缴出资日期'] = record['capital'][0]['time']
|
|
|
|
list_data.append(dict_data)
|
|
|
|
data['企业ID'] = cid
|
|
|
|
data['股东列表'] = list_data
|
|
|
|
data['更新时间'] = CommonUtils.get_current_time()
|
|
|
|
|
|
|
|
DB_TEST.upsert_single_data(
|
|
|
|
"WR_DataBase_v2_test",
|
|
|
|
"C3.2_股东信息",
|
|
|
|
{"企业名称": name, '企业ID': cid},
|
|
|
|
data
|
|
|
|
)
|
|
|
|
|
|
|
|
return '导入成功'
|
|
|
|
|
|
|
|
@staticmethod
|
|
|
|
def view_shareholders(**kwargs):
|
|
|
|
"""查看工股东信息"""
|
|
|
|
cid = kwargs['cid']
|
|
|
|
|
|
|
|
record = DB_TEST.find_single_data(
|
|
|
|
"WR_DataBase_v2_test",
|
|
|
|
"C3.2_股东信息",
|
|
|
|
{"企业ID": cid},
|
|
|
|
[]
|
|
|
|
)
|
|
|
|
|
|
|
|
return record
|
|
|
|
|
|
|
|
def executive_information(self, **kwargs):
|
|
|
|
"""高管信息"""
|
|
|
|
name = kwargs['name']
|
|
|
|
cid = self.get_cid(name=name)
|
|
|
|
|
|
|
|
records = DB_TYC.find_single_column(
|
|
|
|
'公司背景',
|
|
|
|
'主要人员',
|
|
|
|
{'企业名称': name},
|
|
|
|
'主要人员'
|
|
|
|
)
|
|
|
|
|
|
|
|
records = records['result']
|
|
|
|
data = dict()
|
|
|
|
list_data = list()
|
|
|
|
if records:
|
|
|
|
for record in records:
|
|
|
|
dict_data = dict()
|
|
|
|
dict_data['人物ID'] = record['id']
|
|
|
|
dict_data['姓名'] = record['name']
|
|
|
|
dict_data['职务'] = record['typeJoin']
|
|
|
|
list_data.append(dict_data)
|
|
|
|
data['企业ID'] = cid
|
|
|
|
data['高管列表'] = list_data
|
|
|
|
data['更新时间'] = CommonUtils.get_current_time()
|
|
|
|
|
|
|
|
DB_TEST.upsert_single_data(
|
|
|
|
"WR_DataBase_v2_test",
|
|
|
|
"C3.3_高管信息",
|
|
|
|
{"企业名称": name, '企业ID': cid},
|
|
|
|
data
|
|
|
|
)
|
|
|
|
|
|
|
|
return '导入成功'
|
|
|
|
|
|
|
|
@staticmethod
|
|
|
|
def view_executive(**kwargs):
|
|
|
|
"""查看高管信息"""
|
|
|
|
cid = kwargs['cid']
|
|
|
|
|
|
|
|
record = DB_TEST.find_single_data(
|
|
|
|
"WR_DataBase_v2_test",
|
|
|
|
"C3.3_高管信息",
|
|
|
|
{"企业ID": cid},
|
|
|
|
[]
|
|
|
|
)
|
|
|
|
|
|
|
|
return record
|
|
|
|
|
|
|
|
def outbound_investment(self, **kwargs):
|
|
|
|
"""对外投资"""
|
|
|
|
name = kwargs['name']
|
|
|
|
cid = self.get_cid(name=name)
|
|
|
|
|
|
|
|
records = DB_TYC.find_single_column(
|
|
|
|
'公司背景',
|
|
|
|
'对外投资',
|
|
|
|
{'企业名称': name},
|
|
|
|
'对外投资'
|
|
|
|
)
|
|
|
|
|
|
|
|
records = records['result']
|
|
|
|
data = dict()
|
|
|
|
list_data = list()
|
|
|
|
if records:
|
|
|
|
for record in records:
|
|
|
|
dict_data = dict()
|
|
|
|
dict_data['企业ID'] = record['id']
|
|
|
|
dict_data['企业名称'] = record['name']
|
|
|
|
dict_data['法定代表人'] = record['legalPersonName']
|
|
|
|
dict_data['成立日期'] = CommonUtils.time_stamp(record['estiblishTime'])
|
|
|
|
dict_data['企业状态'] = record['regStatus']
|
|
|
|
dict_data['投资金额'] = record['amount']
|
|
|
|
dict_data['投资比例'] = record['percent']
|
|
|
|
dict_data['控股情况'] = None
|
|
|
|
dict_data['所属行业'] = record['category']
|
|
|
|
dict_data['所属省份'] = CommonUtils.province_conversion(record['base'])
|
|
|
|
dict_data['所属地市'] = None
|
|
|
|
list_data.append(dict_data)
|
|
|
|
data['企业ID'] = cid
|
|
|
|
data['投资列表'] = list_data
|
|
|
|
data['更新时间'] = CommonUtils.get_current_time()
|
|
|
|
|
|
|
|
DB_TEST.upsert_single_data(
|
|
|
|
"WR_DataBase_v2_test",
|
|
|
|
"C3.4_对外投资",
|
|
|
|
{"企业名称": name, '企业ID': cid},
|
|
|
|
data
|
|
|
|
)
|
|
|
|
|
|
|
|
return '导入成功'
|
|
|
|
|
|
|
|
@staticmethod
|
|
|
|
def view_outbound_investment(**kwargs):
|
|
|
|
"""查看对外投资"""
|
|
|
|
cid = kwargs['cid']
|
|
|
|
|
|
|
|
record = DB_TEST.find_single_data(
|
|
|
|
"WR_DataBase_v2_test",
|
|
|
|
"C3.4_对外投资",
|
|
|
|
{"企业ID": cid},
|
|
|
|
[]
|
|
|
|
)
|
|
|
|
|
|
|
|
return record
|
|
|
|
|
|
|
|
def branch_offices(self, **kwargs):
|
|
|
|
"""分支机构"""
|
|
|
|
name = kwargs['name']
|
|
|
|
cid = self.get_cid(name=name)
|
|
|
|
|
|
|
|
records = DB_TYC.find_single_column(
|
|
|
|
'公司背景',
|
|
|
|
'分支机构',
|
|
|
|
{'企业名称': name},
|
|
|
|
'分支机构'
|
|
|
|
)
|
|
|
|
|
|
|
|
records = records['result']
|
|
|
|
data = dict()
|
|
|
|
list_data = list()
|
|
|
|
if records:
|
|
|
|
for record in records:
|
|
|
|
dict_data = dict()
|
|
|
|
dict_data['企业ID'] = record['id']
|
|
|
|
dict_data['企业名称'] = record['name']
|
|
|
|
dict_data['负责人'] = record['legalPersonName']
|
|
|
|
dict_data['成立日期'] = CommonUtils.time_stamp(record['estiblishTime'])
|
|
|
|
dict_data['企业状态'] = record['regStatus']
|
|
|
|
dict_data['所属省份'] = CommonUtils.province_conversion(record['base'])
|
|
|
|
dict_data['所属地市'] = None
|
|
|
|
list_data.append(dict_data)
|
|
|
|
data['企业ID'] = cid
|
|
|
|
data['分支列表'] = list_data
|
|
|
|
data['更新时间'] = CommonUtils.get_current_time()
|
|
|
|
|
|
|
|
DB_TEST.upsert_single_data(
|
|
|
|
"WR_DataBase_v2_test",
|
|
|
|
"C3.5_分支机构",
|
|
|
|
{"企业名称": name, '企业ID': cid},
|
|
|
|
data
|
|
|
|
)
|
|
|
|
|
|
|
|
return '导入成功'
|
|
|
|
|
|
|
|
@staticmethod
|
|
|
|
def view_branch_offices(**kwargs):
|
|
|
|
"""查看分支机构"""
|
|
|
|
cid = kwargs['cid']
|
|
|
|
|
|
|
|
record = DB_TEST.find_single_data(
|
|
|
|
"WR_DataBase_v2_test",
|
|
|
|
"C3.5_分支机构",
|
|
|
|
{"企业ID": cid},
|
|
|
|
[]
|
|
|
|
)
|
|
|
|
|
|
|
|
return record
|
|
|
|
|
|
|
|
def change_record(self, **kwargs):
|
|
|
|
"""工商变更"""
|
|
|
|
name = kwargs['name']
|
|
|
|
cid = self.get_cid(name=name)
|
|
|
|
|
|
|
|
records = DB_TYC.find_single_column(
|
|
|
|
'公司背景',
|
|
|
|
'变更记录',
|
|
|
|
{'企业名称': name},
|
|
|
|
'变更记录'
|
|
|
|
)
|
|
|
|
|
|
|
|
records = records['result']
|
|
|
|
if records:
|
|
|
|
for record in records:
|
|
|
|
dict_data = dict()
|
|
|
|
dict_data['企业ID'] = cid
|
|
|
|
dict_data['变更时间'] = record['changeTime']
|
|
|
|
dict_data['变更项目'] = record['changeItem']
|
|
|
|
dict_data['变更前'] = record['contentBefore']
|
|
|
|
dict_data['变更后'] = record['contentAfter']
|
|
|
|
dict_data['更新时间'] = CommonUtils.get_current_time()
|
|
|
|
|
|
|
|
DB_TEST.insert_single_data(
|
|
|
|
"WR_DataBase_v2_test",
|
|
|
|
"C3.6_工商变更",
|
|
|
|
dict_data
|
|
|
|
)
|
|
|
|
|
|
|
|
return '导入成功'
|
|
|
|
|
|
|
|
@staticmethod
|
|
|
|
def view_change_record(**kwargs):
|
|
|
|
"""查看工商变更"""
|
|
|
|
cid = kwargs['cid']
|
|
|
|
page_no = int(kwargs['page_no'])
|
|
|
|
page_size = int(kwargs['page_size'])
|
|
|
|
page_size = 10 if page_size > 10 else page_size
|
|
|
|
|
|
|
|
total = DB_TEST.find_all_data_with_count(
|
|
|
|
'WR_DataBase_v2_test',
|
|
|
|
'C3.6_工商变更',
|
|
|
|
{"企业ID": cid}
|
|
|
|
)
|
|
|
|
|
|
|
|
record = DB_TEST.find_data_by_page_with_sort(
|
|
|
|
"WR_DataBase_v2_test",
|
|
|
|
"C3.6_工商变更",
|
|
|
|
{"企业ID": cid},
|
|
|
|
[],
|
|
|
|
{'_id': 1},
|
|
|
|
page_size,
|
|
|
|
page_no
|
|
|
|
)
|
|
|
|
|
|
|
|
result = {
|
|
|
|
"total": total,
|
|
|
|
"records": record
|
|
|
|
}
|
|
|
|
|
|
|
|
return result
|