api-datamanager/Company/Ip/IpImpl.py

332 lines
10 KiB
Python
Raw Normal View History

2022-08-25 17:16:59 +08:00
from DBHelper.MongoHelperInstance import DB_TYC, DB_TEST
from Company.CompanyUtils import CompanyUtils
from Modules.TycApi.TycUtils import tm_class
from Utils.CommonUtil import CommonUtils
class IpImpl(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 '导入成功'
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 trademark_information(self, **kwargs):
"""商标信息"""
name = kwargs['name']
cid = self.get_cid(name=name)
records = DB_TYC.find_all_data(
'知识产权',
'商标信息',
{'企业名称': name},
['商标信息']
)
if records:
for item in records:
records_item = item['商标信息']['result']
for record in records_item:
dict_data = dict()
dict_data['企业ID'] = cid
dict_data['商标名称'] = record['tmName']
dict_data['商标'] = record['tmPic']
dict_data['申请日期'] = CommonUtils.time_stamp(record['appDate'])
dict_data['注册号'] = record['regNo']
dict_data['国际分类'] = tm_class[int(record['tmClass'])-1]
dict_data['商标状态'] = record['status']
dict_data['注册公告日期'] = CommonUtils.time_stamp(record['eventTime'])
dict_data['更新时间'] = CommonUtils.get_current_time()
DB_TEST.insert_single_data(
"WR_DataBase_v2_test",
"C5.1_商标信息",
dict_data
)
return '导入成功'
@staticmethod
def view_trademark(**kwargs):
"""查看商标信息"""
search = kwargs['search']
cid = search['cid']
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',
'C5.1_商标信息',
{"企业ID": cid}
)
record = DB_TEST.find_data_by_page_with_sort(
"WR_DataBase_v2_test",
"C5.1_商标信息",
{"企业ID": cid},
[],
{'_id': 1},
page_size,
page_no
)
result = {
"total": total,
"records": record
}
return result
def patent_information(self, **kwargs):
"""专利信息"""
name = kwargs['name']
cid = self.get_cid(name=name)
records = DB_TYC.find_all_data(
'知识产权',
'专利信息',
{'企业名称': name},
['专利信息']
)
if records:
for item in records:
records_item = item['专利信息']['result']
for record in records_item:
dict_data = dict()
dict_data['企业ID'] = cid
dict_data['申请日'] = record['applicationTime']
dict_data['专利名称'] = record['patentName']
dict_data['专利类型'] = record['patentType']
dict_data['专利状态'] = record['patentStatus']
dict_data['申请号'] = record['appnumber']
dict_data['公开号'] = record['pubnumber']
dict_data['公开日'] = record['grantDate']
dict_data['发明人'] = record['inventor']
dict_data['更新时间'] = CommonUtils.get_current_time()
DB_TEST.insert_single_data(
"WR_DataBase_v2_test",
"C5.2_专利信息",
dict_data
)
return '导入成功'
@staticmethod
def view_patent(**kwargs):
"""查看专利信息"""
search = kwargs['search']
cid = search['cid']
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',
'C5.2_专利信息',
{"企业ID": cid}
)
record = DB_TEST.find_data_by_page_with_sort(
"WR_DataBase_v2_test",
"C5.2_专利信息",
{"企业ID": cid},
[],
{'_id': 1},
page_size,
page_no
)
result = {
"total": total,
"records": record
}
return result
def software_copyrights(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['登记批准日期'] = CommonUtils.time_stamp(record['eventTime'])
dict_data['软件全称'] = record['fullname']
dict_data['软件简称'] = record['simplename']
dict_data['登记号'] = record['regnum']
dict_data['分类号'] = record['catnum']
dict_data['版本号'] = record['version']
dict_data['首次发表日期'] = CommonUtils.time_stamp(record['publishtime'])
dict_data['更新时间'] = CommonUtils.get_current_time()
DB_TEST.insert_single_data(
"WR_DataBase_v2_test",
"C5.3_软件著作权",
dict_data
)
return '导入成功'
@staticmethod
def view_software_copyrights(**kwargs):
"""查看软件著作权"""
search = kwargs['search']
cid = search['cid']
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',
'C5.3_软件著作权',
{"企业ID": cid}
)
record = DB_TEST.find_data_by_page_with_sort(
"WR_DataBase_v2_test",
"C5.3_软件著作权",
{"企业ID": cid},
[],
{'_id': 1},
page_size,
page_no
)
result = {
"total": total,
"records": record
}
return result
def website_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['examineDate']
dict_data['网站名称'] = record['webName']
dict_data['网站首页'] = record['webSite']
dict_data['域名'] = record['ym']
dict_data['网站备案/许可证号'] = record['liscense']
dict_data['公安备案'] = None
dict_data['更新时间'] = CommonUtils.get_current_time()
DB_TEST.insert_single_data(
"WR_DataBase_v2_test",
"C5.4_网站备案",
dict_data
)
return '导入成功'
@staticmethod
def view_website_record(**kwargs):
"""查看网站备案"""
search = kwargs['search']
cid = search['cid']
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',
'C5.4_网站备案',
{"企业ID": cid}
)
record = DB_TEST.find_data_by_page_with_sort(
"WR_DataBase_v2_test",
"C5.4_网站备案",
{"企业ID": cid},
[],
{'_id': 1},
page_size,
page_no
)
result = {
"total": total,
"records": record
}
return result