237 lines
5.7 KiB
Python
237 lines
5.7 KiB
Python
import re
|
|
import pymongo
|
|
from bson import ObjectId
|
|
from gridfs import GridFS
|
|
|
|
client = pymongo.MongoClient('mongodb://{}:{}@{}:{}'.format('root', 'sromitdTW569kC#M', '116.63.130.34', 27018))
|
|
|
|
|
|
def find_rating_records(query, skip, limit):
|
|
"""
|
|
查询企业评价记录
|
|
Parameters:
|
|
query: 查询条件
|
|
skip: 默认0
|
|
limit: 查询条数
|
|
Returns:
|
|
record: 查询结果
|
|
"""
|
|
collection = client['评价']['评价记录']
|
|
if query:
|
|
data = collection.find({"企业ID": query}, {'_id': False}).skip(skip).limit(limit)
|
|
record = list(data)
|
|
if len(record) == 0:
|
|
data = collection.find({"评价ID": query}, {'_id': False}).skip(skip).limit(limit)
|
|
record = list(data)
|
|
if len(record) == 0:
|
|
data = collection.find({"评价时间": re.compile(query)}, {'_id': False}).skip(skip).limit(limit)
|
|
record = list(data)
|
|
return record
|
|
else:
|
|
data = collection.find({}, {'_id': False}).skip(skip).limit(limit)
|
|
record = list(data)
|
|
return record
|
|
|
|
|
|
def find_rating_result_records(rid):
|
|
"""
|
|
查询评价结果
|
|
Parameters:
|
|
rid: 评价ID
|
|
Returns:
|
|
record: 查询结果
|
|
"""
|
|
collection = client['评价']['评价结果']
|
|
data = collection.find({"评价ID": rid}, {'_id': False})
|
|
record = list(data)
|
|
return record
|
|
|
|
|
|
def find_fill_details_records(rid):
|
|
"""
|
|
查询评填报详情信息
|
|
Parameters:
|
|
rid: 评价ID
|
|
Returns:
|
|
record: 查询结果
|
|
"""
|
|
collection = client['评价']['综合评价填报']
|
|
data = collection.find({"评价ID": rid}, {'_id': False})
|
|
record = list(data)
|
|
return record
|
|
|
|
|
|
def find_evaluation_records(rid):
|
|
"""
|
|
查询评价记录
|
|
Parameters:
|
|
rid: 评价ID
|
|
Returns:
|
|
record: 查询结果
|
|
"""
|
|
collection = client['评价']['评价记录']
|
|
data = collection.find({"评价ID": rid}, {'_id': False})
|
|
record = list(data)
|
|
return record
|
|
|
|
|
|
def update_evaluation_records(rid, data):
|
|
"""
|
|
更新评价数据
|
|
Parameters:
|
|
rid: 评价ID
|
|
data: 报告fid对象
|
|
Returns:
|
|
record: 更新结果
|
|
"""
|
|
collection = client['评价']['评价记录']
|
|
res = collection.update_one({"评价ID": rid}, {"$set": data})
|
|
info = res.raw_result['updatedExisting']
|
|
return info
|
|
|
|
|
|
def update_comprehensive_records(cid, data):
|
|
"""
|
|
更新综合评价分析数据
|
|
Parameters:
|
|
cid: 企业ID
|
|
data: 报告fid对象
|
|
Returns:
|
|
record: 更新结果
|
|
"""
|
|
collection = client['企业']['综合评价分析']
|
|
res = collection.update_one({"企业ID": cid}, {"$set": data})
|
|
info = res.raw_result['updatedExisting']
|
|
return info
|
|
|
|
|
|
def delete_report_pdf(fid):
|
|
"""
|
|
更新评价数据
|
|
Parameters:
|
|
fid: 评价ID
|
|
Returns:
|
|
record: 删除结果
|
|
"""
|
|
database = '评价'
|
|
collection = '综合信用报告'
|
|
fs = GridFS(client[database], collection)
|
|
fs.delete(ObjectId(fid))
|
|
return True
|
|
|
|
|
|
def delete_esg_report_pdf(fid):
|
|
"""
|
|
更新评价数据
|
|
Parameters:
|
|
fid: 评价ID
|
|
Returns:
|
|
record: 删除结果
|
|
"""
|
|
database = '评价'
|
|
collection = 'esg报告'
|
|
fs = GridFS(client[database], collection)
|
|
fs.delete(ObjectId(fid))
|
|
return True
|
|
|
|
|
|
def find_risk_info_records(rid):
|
|
"""
|
|
查询风险数据信息
|
|
Parameters:
|
|
rid: 评价ID
|
|
Returns:
|
|
record: 查询结果
|
|
"""
|
|
collection = client['评价']['风险数据']
|
|
data = collection.find({"评价ID": rid}, {'_id': False})
|
|
record = list(data)
|
|
return record
|
|
|
|
|
|
def update_report_data(rid, data):
|
|
"""
|
|
更新报告数据
|
|
Parameters:
|
|
rid: 评价ID
|
|
data: 报告数据
|
|
Returns:
|
|
record: 更新结果
|
|
"""
|
|
collection = client['评价']['报告数据']
|
|
res = collection.update_one({"评价ID": rid}, {"$set": data})
|
|
info = res.raw_result['updatedExisting']
|
|
return info
|
|
|
|
|
|
def update_esg_report_data(rid, data):
|
|
"""
|
|
更新ESG报告数据
|
|
Parameters:
|
|
rid: 评价ID
|
|
data: 报告数据
|
|
Returns:
|
|
record: 更新结果
|
|
"""
|
|
collection = client['评价']['ESG报告数据']
|
|
res = collection.update_one({"评价ID": rid}, {"$set": data})
|
|
info = res.raw_result['updatedExisting']
|
|
return info
|
|
|
|
|
|
def find_report_data(rid):
|
|
"""
|
|
查询报告数据
|
|
Parameters:
|
|
rid: 评价ID
|
|
Returns:
|
|
record: 报告数据
|
|
"""
|
|
collection = client['评价']['报告数据']
|
|
data = collection.find({"评价ID": rid}, {'_id': False})
|
|
record = list(data)
|
|
return record
|
|
|
|
|
|
def find_esg_report_data(rid):
|
|
"""
|
|
查询报告数据
|
|
Parameters:
|
|
rid: 评价ID
|
|
Returns:
|
|
record: 报告数据
|
|
"""
|
|
collection = client['评价']['ESG报告数据']
|
|
data = collection.find({"评价ID": rid}, {'_id': False})
|
|
record = list(data)
|
|
return record
|
|
|
|
|
|
def FIND_DATA_FILTER(param1, param2, param3, param4):
|
|
"""
|
|
查询数据
|
|
:param param1: 数据库
|
|
:param param2: 数据表
|
|
:param param3: 查询条件
|
|
:param param4: 显示字段
|
|
:return:
|
|
"""
|
|
collection = client[param1][param2]
|
|
data = collection.find(param3, {**{'_id': False}, **param4})
|
|
record = list(data)
|
|
return record
|
|
|
|
|
|
def find_data(param1, param2, param3):
|
|
"""
|
|
根据查询条件查询符合条件的所有数据
|
|
Parameters:
|
|
param1: str 数据库
|
|
param2: str 数据集
|
|
param3: obj 查询条件
|
|
Returns:
|
|
res: list 符合条件的数据
|
|
"""
|
|
collection = client[param1][param2]
|
|
res = list(collection.find(param3, {'_id': False}))
|
|
return res |