tfse-admin-api-v0.2/Manage/rating/db.py

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