32 lines
1.1 KiB
Python
32 lines
1.1 KiB
Python
from motor.motor_asyncio import AsyncIOMotorDatabase
|
|
import schemas
|
|
from crud.base import CRUDBase
|
|
|
|
__all__ = 'project_number',
|
|
|
|
|
|
class CRUDProjectNumber(CRUDBase):
|
|
# 获取所有数据
|
|
async def all_xiangmu(self, db: AsyncIOMotorDatabase):
|
|
return await self.find_many(db, {})
|
|
|
|
# 修改数据
|
|
async def update(self, db: AsyncIOMotorDatabase, data_in: schemas.AddProjectnumber):
|
|
game = data_in.game
|
|
add_ditch = []
|
|
for member in data_in.ditch:
|
|
add_ditch.append(member.dict())
|
|
await self.update_one(db, {'game': game}, {'$set': {'ditch': add_ditch}})
|
|
|
|
# 插入数据
|
|
async def create(self, db: AsyncIOMotorDatabase, data_in: schemas.ProjectnumberInsert):
|
|
# await self.update_one(db, {'xiangmu': data_in.xiangmu}, {'$set': data_in.dict()}, upsert=True)
|
|
await self.update_one(db, {data_in.game, data_in.ditch}, upsert=True)
|
|
|
|
# 同步插入项目
|
|
async def createxiangmu(self, db: AsyncIOMotorDatabase, data_in: schemas.ProjectnumberInsert):
|
|
await self.insert_one(db, data_in.dict())
|
|
|
|
|
|
project_number = CRUDProjectNumber('project_number')
|