251 lines
8.1 KiB
Python
251 lines
8.1 KiB
Python
|
from DBHelper.MongoHelperInstance import DB_TYC, DB_TEST
|
||
|
from Company.CompanyUtils import CompanyUtils
|
||
|
from Utils.CommonUtil import CommonUtils
|
||
|
|
||
|
|
||
|
class SupervisionImpl(object):
|
||
|
"""监管风险"""
|
||
|
|
||
|
@staticmethod
|
||
|
def basic_information(**kwargs):
|
||
|
"""工商信息"""
|
||
|
name = kwargs['name']
|
||
|
cid = CompanyUtils.make_new_cid()
|
||
|
|
||
|
record = DB_TYC.find_single_data(
|
||
|
'公司背景',
|
||
|
'基本信息',
|
||
|
{'企业名称': name},
|
||
|
['基本信息']
|
||
|
)
|
||
|
|
||
|
record = record['基本信息']
|
||
|
data = dict()
|
||
|
data['企业ID'] = cid
|
||
|
data['企业名称'] = name
|
||
|
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()
|
||
|
|
||
|
DB_TEST.upsert_single_data(
|
||
|
"WR_DataBase_v2_test",
|
||
|
"C3.1_工商信息",
|
||
|
{"企业名称": name},
|
||
|
data
|
||
|
)
|
||
|
|
||
|
return '导入成功'
|
||
|
|
||
|
@staticmethod
|
||
|
def common_view_method(**kwargs):
|
||
|
"""查看接口(通用)"""
|
||
|
search = kwargs['search']
|
||
|
cid = search['cid']
|
||
|
sheet = kwargs['sheet']
|
||
|
page_no = int(search['page_no'])
|
||
|
page_size = int(search['page_size'])
|
||
|
page_size = 10 if page_size > 10 else page_size
|
||
|
|
||
|
total = DB_TEST.find_all_data_with_count(
|
||
|
'WR_DataBase_v2_test',
|
||
|
sheet,
|
||
|
{"企业ID": cid}
|
||
|
)
|
||
|
|
||
|
record = DB_TEST.find_data_by_page_with_sort(
|
||
|
"WR_DataBase_v2_test",
|
||
|
sheet,
|
||
|
{"企业ID": cid},
|
||
|
[],
|
||
|
{'_id': 1},
|
||
|
page_size,
|
||
|
page_no
|
||
|
)
|
||
|
|
||
|
result = {
|
||
|
"total": total,
|
||
|
"records": record
|
||
|
}
|
||
|
|
||
|
return result
|
||
|
|
||
|
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:
|
||
|
self.basic_information(name=name)
|
||
|
cid = DB_TEST.find_single_column(
|
||
|
"WR_DataBase_v2_test",
|
||
|
"C3.1_工商信息",
|
||
|
{"企业名称": name},
|
||
|
'企业ID'
|
||
|
)
|
||
|
return cid
|
||
|
|
||
|
def abnormal_operation(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['putDate']
|
||
|
dict_data['机关'] = record['putDepartment']
|
||
|
dict_data['列入经营异常名录原因'] = record['putReason']
|
||
|
dict_data['更新时间'] = CommonUtils.get_current_time()
|
||
|
DB_TEST.insert_single_data(
|
||
|
"WR_DataBase_v2_test",
|
||
|
"C11.1_经营异常",
|
||
|
dict_data
|
||
|
)
|
||
|
|
||
|
return '导入成功'
|
||
|
|
||
|
def administrative_penalties(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['decisionDate']
|
||
|
dict_data['处罚类型'] = record['type']
|
||
|
dict_data['决定书文号'] = record['punishNumber']
|
||
|
dict_data['处罚事由'] = record['reason']
|
||
|
dict_data['处罚结果'] = record['content']
|
||
|
dict_data['处罚金额(元)'] = record['content']
|
||
|
dict_data['处罚单位'] = record['departmentName']
|
||
|
dict_data['数据来源'] = record['source']
|
||
|
dict_data['更新时间'] = CommonUtils.get_current_time()
|
||
|
DB_TEST.insert_single_data(
|
||
|
"WR_DataBase_v2_test",
|
||
|
"C11.2_行政处罚",
|
||
|
dict_data
|
||
|
)
|
||
|
|
||
|
return '导入成功'
|
||
|
|
||
|
def serious_violation(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['putDate']
|
||
|
dict_data['列入决定机关'] = record['putDepartment']
|
||
|
dict_data['列入原因'] = record['putReason']
|
||
|
dict_data['更新时间'] = CommonUtils.get_current_time()
|
||
|
DB_TEST.insert_single_data(
|
||
|
"WR_DataBase_v2_test",
|
||
|
"C11.3_严重违法",
|
||
|
dict_data
|
||
|
)
|
||
|
|
||
|
return '导入成功'
|
||
|
|
||
|
def tax_violation(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['publish_time']
|
||
|
dict_data['税务机关'] = record['department']
|
||
|
dict_data['案件性质'] = record['case_type']
|
||
|
dict_data['违法事实'] = None
|
||
|
dict_data['处罚情况'] = None
|
||
|
dict_data['更新时间'] = CommonUtils.get_current_time()
|
||
|
DB_TEST.insert_single_data(
|
||
|
"WR_DataBase_v2_test",
|
||
|
"C11.4_税收违法",
|
||
|
dict_data
|
||
|
)
|
||
|
|
||
|
return '导入成功'
|
||
|
|
||
|
def tax_arrears_announcement(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['taxCategory']
|
||
|
dict_data['欠税余额'] = record['ownTaxBalance']
|
||
|
dict_data['发布单位'] = record['department']
|
||
|
dict_data['发布日期'] = record['publishDate']
|
||
|
dict_data['更新时间'] = CommonUtils.get_current_time()
|
||
|
DB_TEST.insert_single_data(
|
||
|
"WR_DataBase_v2_test",
|
||
|
"C11.6_欠税公告",
|
||
|
dict_data
|
||
|
)
|
||
|
|
||
|
return '导入成功'
|