feat:add fetch delete

This commit is contained in:
shahzeydyfah
2024-09-12 13:39:00 +03:30
parent 8a301b4daf
commit 0e1834a901
2 changed files with 20 additions and 1 deletions
+15 -1
View File
@@ -7,8 +7,12 @@ from app.config import TaskEnv
from app.models.project import ProjectModel, UpdateSts, ProjectSts
from core.repositories.base import BaseRepository
from core.service.mongo_db import use_collection
from core.utils.table_engine import TableEngineRequestType, TableEngineExport
from core.utils.te import NewTableEngine
from typing import TypeVar
COLLECTION = "project"
T = TypeVar('T')
class ProjectRepository(BaseRepository[ProjectModel]):
def __init__(self):
super().__init__(collection=COLLECTION, model=ProjectModel)
@@ -130,4 +134,14 @@ class ProjectRepository(BaseRepository[ProjectModel]):
await use_collection(TaskEnv.CLN_PROJECT_STS).insert_one(sts_class.mongo_dict())
return True
return True
async def fetch_delete(self, _input: TableEngineRequestType) -> TableEngineExport[T]:
return await NewTableEngine.mongo(
query_class=use_collection(self.COLLECTION),
soft_deleted=True,
model=self.MODEL,
search_cols=['name'],
extra_filter={'sts':2},
inputs=_input.te) \
.to_dict()
+5
View File
@@ -72,5 +72,10 @@ def get(_id: UUID):
def fetch(body: TableEngineRequestType = Body(...)):
pass
@router.post('/fetch_delete', response_model=TableEngineExport[ThisModel], tags=_tag_base)
@shrink(repo.fetch_delete)
def fetch_delete(body: TableEngineRequestType = Body(...)):
pass
app.include_router(router)