api-datamanager/Company/Basic/Business/BusinessImpl.py

143 lines
4.9 KiB
Python

from Company.Basic.Business.BusinessObj import BusinessInfo
from Company.CompanyUtils import CompanyUtils
from DBHelper.MongoHelperInstance import DB_TYC, DB_TEST
from Utils.CommonUtil import CommonUtils
class BusinessImpl(object):
"""工商信息"""
@staticmethod
def auto_update(**kwargs):
"""新增/更新(自动)"""
condition = kwargs['condition']
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
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 = DB_TEST.find_single_column(
'WR_DataBase_v2_test',
'C3.1_工商信息',
{'企业名称': cname},
'企业ID'
)
if not cid:
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'
@staticmethod
def edit(**kwargs):
"""编辑"""
param = kwargs['param']
cid = param['cid']
body = param['body']
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['经营范围']
business.update_time = CommonUtils.get_current_time()
DB_TEST.update_single_data(
"WR_DataBase_v2_test",
"C3.1_工商信息",
{"企业ID": cid},
business.fields_toggle()
)
return 'success'
except Exception:
return 'edit failed'
@staticmethod
def view(**kwargs):
"""查看"""
cid = kwargs['cid']
record = DB_TEST.find_single_data(
"WR_DataBase_v2_test",
"C3.1_工商信息",
{"企业ID": cid},
[]
)
if record:
result = {
"info": "success",
"result": record
}
else:
result = {
"info": "no result"
}
return result