tfse-etl-api-v0.2/CompanyData/db.py

102 lines
3.4 KiB
Python
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

import pymongo
client_tfse = pymongo.MongoClient('mongodb://{}:{}@{}:{}'.format('root', 'sromitdTW569kC#M', '116.63.130.34', 27018))
client_tyc = pymongo.MongoClient('mongodb://{}:{}@{}:{}'.format('root', 'gP%40DwMSVd5Sh6EiH', '116.63.130.34', 27019))
client_admin = pymongo.MongoClient('mongodb://{}:{}@{}:{}'.format('root', 'RYIHrqml#LSW6#!*', '116.63.130.34', 27020))
client_tfse_021 = pymongo.MongoClient('mongodb://{}:{}@{}:{}'.format('root', 'UTlC9cCoglD1cI1*', '116.63.130.34', 27021))
def FIND_DATA_IN_TYC(param1, param2, param3):
"""
根据企业ID查询企业信息
Parameters:
param1: string 数据库 db
param2: string 数据集 collection
param3: dict 查询条件 例如 {"企业名称": "xxx有限公司"}
Returns:
record: 查询结果
"""
collection = client_tyc[param1][param2]
data = collection.find(param3, {'_id': False})
record = list(data)
return record
def FIND_SINGLE_COLUMN_BY_REQ(param1, param2, param3, param4):
"""
查询符合条件的第一条数据的某个制定字段值
Parameters:
param1: str 数据库
param2: str 数据表
param3: dict 查询条件
param4: str 一个指定查询字段
Returns:
record: 查询结果为空返回None; 查询结果正常,返回查询结果的第一条数据;
"""
collection = client_tfse_021[param1][param2]
column = {**{'_id': False}, **{param4: 1}}
record = list(collection.find(param3, column))
return None if record == [] else record[0][param4]
def FIND_SINGLE_DATA_BY_REQ(param1, param2, param3, param4):
"""
查询符合条件的第一条数据
Parameters:
param1: str 数据库
param2: str 数据表
param3: dict 查询条件
param4: list 查询字段
Returns:
record: 查询结果为空返回False; 查询结果正常,返回查询结果的第一条数据;
"""
collection = client_tfse_021[param1][param2]
columns = {**{'_id': False}, **dict(zip(param4, [1] * len(param4)))}
record = list(collection.find(param3, columns))
return False if record == [] else record[0]
def FIND_ALL_DATA_BY_REQ(param1, param2, param3, param4):
"""
查询符合条件的所有数据
Parameters:
param1: str 数据库
param2: str 数据表
param3: dict 查询条件
param4: list 查询字段
Returns:
record: list 查询结果
"""
collection = client_tfse_021[param1][param2]
columns = {**{'_id': False}, **dict(zip(param4, [1] * len(param4)))}
record = list(collection.find(param3, columns))
return record
def UPSERT_SINGLE_DATA(param1, param2, param3, param4):
"""
插入单条数据
Parameters:
param1: str 数据库
param2: str 数据表
param3: dict 查询条件
param4: dict 更新或新插入的数据
"""
collection = client_tfse_021[param1][param2]
collection.update_one(param3, {"$set": param4}, upsert=True)
def UPDATE_SINGLE_DATA(param1, param2, param3, param4):
"""
插入单条数据
Parameters:
param1: str 数据库
param2: str 数据表
param3: dict 查询条件
param4: dict 更新或新插入的数据
"""
collection = client_tfse_021[param1][param2]
res = collection.update_one(param3, {"$set": param4})
info = res.raw_result['updatedExisting']
return info