diff --git a/app/repositories/design_progress.py b/app/repositories/design_progress.py index f6ef972..ff4ee69 100644 --- a/app/repositories/design_progress.py +++ b/app/repositories/design_progress.py @@ -64,6 +64,19 @@ class DesignProgressRepository(BaseRepository[CreateDesignProgress]): sub_type=design_progress.sub_type ) return await self.get(get_record) + async def check_complete(self,get_record:GetRecord): + result = False + if get_record.type and get_record.type < 7: + progress = await use_collection(COLLECTION).find_one( + {"project_id": get_record.project_id, "type": int(get_record.type)+1}) + if progress: + records = await use_collection('design_progress_record').find_one( + {"design_progress_id": progress["_id"]}) + if records: + result=True + return result + + class DesignProgressRecordRepository(BaseRepository[RecordModel]): def __int__(self): super().__init__(collection='design_progress_record', model=RecordModel) diff --git a/app/urls/design_progress.py b/app/urls/design_progress.py index 7df74b7..b106df8 100644 --- a/app/urls/design_progress.py +++ b/app/urls/design_progress.py @@ -34,6 +34,11 @@ def update(_id: UUID, coding: UpdateDesignProgress = Body(...)): def get(get_record:GetRecord = Body(...)): pass +@router.post('/check', response_model=bool, tags=_tag_base) +@shrink(repo.check_complete) +def check_complete(get_record:GetRecord = Body(...)): + pass + @router.post('/record/create', response_model=RecordModel, tags=_tag_base) @shrink(repo_record.create) def create_record(coding: RecordModel = Body(...)):