数据检查

This commit is contained in:
wuaho 2021-09-28 12:10:10 +08:00
parent eeaaca7dba
commit 94091e48ec
2 changed files with 23 additions and 14 deletions

View File

@ -1,7 +1,9 @@
from fastapi import APIRouter, Request from fastapi import APIRouter, Request, Depends
from motor.motor_asyncio import AsyncIOMotorDatabase
import schemas import schemas
from api.api_v1.check_data import service from api.api_v1.check_data import service
from db import get_database
router = APIRouter() router = APIRouter()
@ -11,7 +13,7 @@ async def check(request: Request,
data_in: schemas.CheckData, data_in: schemas.CheckData,
game: str, game: str,
) -> schemas.Msg: ) -> schemas.Msg:
res = await service.check_data( game, data_in) res = await service.check_data(game, data_in)
return schemas.Msg(code=0, msg='ok', data=res) return schemas.Msg(code=0, msg='ok', data=res)
@ -19,21 +21,27 @@ async def check(request: Request,
async def save(request: Request, async def save(request: Request,
data_in: schemas.AddTemplate, data_in: schemas.AddTemplate,
game: str, game: str,
db_name: str = 'debug' db: AsyncIOMotorDatabase = Depends(get_database),
) -> schemas.Msg: ) -> schemas.Msg:
res = await service.save_template(data_in, game, db_name) res = await service.save_template(db, data_in, game)
return schemas.Msg(code=0, msg='ok', data=res) return schemas.Msg(code=0, msg='ok', data=res)
@router.get('/template') @router.get('/template')
async def template(request: Request, game: str) -> schemas.Msg: async def template(request: Request, game: str,
data = await service.get_template(dict(request.query_params)) db: AsyncIOMotorDatabase = Depends(get_database),
) -> schemas.Msg:
data = await service.get_template(db, game)
return schemas.Msg(code=0, msg='ok', data=data) return schemas.Msg(code=0, msg='ok', data=data)
@router.post('/del_template') @router.post('/del_template')
async def del_template(request: Request, game: str, data_in: schemas.DelTemplate) -> schemas.Msg: async def del_template(request: Request, game: str, data_in: schemas.DelTemplate,
data = await service.del_template(data_in) db: AsyncIOMotorDatabase = Depends(get_database),
) -> schemas.Msg:
data = await service.del_template(db, data_in)
return schemas.Msg(code=0, msg='ok', data=data) return schemas.Msg(code=0, msg='ok', data=data)

View File

@ -12,6 +12,7 @@ import clickhouse_driver
import schemas import schemas
from core.config import settings from core.config import settings
from db import get_database
from db.ckdb import ckdb as ck_client from db.ckdb import ckdb as ck_client
import crud import crud
@ -84,19 +85,19 @@ async def check_data(game, data_in: schemas.CheckData):
return report return report
async def save_template(data_in: schemas.AddTemplate, async def save_template(db, data_in: schemas.AddTemplate,
game: str, game: str,
): ):
res = await crud.check_data.update_one({'title': data_in.title}, res = await crud.check_data.update_one(db, {'title': data_in.title, 'game': game},
{'$set': {'game': game, {'$set': {'game': game,
'check': data_in.check.dict()}}, 'check': data_in.check.dict()}},
upsert=True) upsert=True)
return True return True
async def get_template(*args, **kwargs): async def get_template(db, game, **kwargs):
res = [] res = []
async for doc in crud.check_data.find(*args, {'_id': False}, **kwargs): async for doc in crud.check_data.find(db, {'game': game}, {'_id': False}, **kwargs):
res.append(doc) res.append(doc)
return res return res
@ -105,6 +106,6 @@ def get_default_field():
return settings.DEFAULT_FIELD return settings.DEFAULT_FIELD
async def del_template(data_id: schemas.DelTemplate): async def del_template(db, data_id: schemas.DelTemplate):
await crud.check_data.delete_one(data_id.dict()) await crud.check_data.delete(db, data_id.dict())
return True return True