from fastapi import HTTPException from app.config import TaskEnv from app.models.program_audit import ProgramModel, CheckLast from core.repositories.base import BaseRepository from core.service.mongo_db import use_collection class ProgramRepository(BaseRepository): def __init__(self): super().__init__(collection=TaskEnv.CLN_AUDIT_PROGRAM,model=ProgramModel) async def is_last(self,_inp:CheckLast): last = await use_collection(TaskEnv.CLN_AUDIT_PROGRAM).find({"project_id":_inp.project_id}).sort('$natural', -1).to_list(1) if last[0]["_id"] == _inp.audit_program_id: return True else: raise HTTPException(status_code=422,detail='it is not last record')