feat: Enable overhaul schedule CRUD operations by uncommenting Pydantic schemas and API endpoints, and adding placeholder service functions.

main
Cizz22 4 weeks ago
parent 56552b6dd9
commit d694dafa8f

@ -13,8 +13,8 @@ from src.database.core import DbSession
from src.database.service import CommonParameters from src.database.service import CommonParameters
from src.models import StandardResponse from src.models import StandardResponse
from .schema import AerosProjectInput, AerosMetadata from .schema import AerosProjectInput, AerosMetadata, OverhaulScheduleCreate, OverhaulScheduleUpdate
from .service import import_aro_project, fetch_aro_record, reset_project from .service import import_aro_project, fetch_aro_record, reset_project, create, update, delete
router = APIRouter() router = APIRouter()
@ -122,36 +122,36 @@ async def reset_aeros_project(db_session: DbSession):
# } # }
# @router.post("", response_model=StandardResponse[None]) @router.post("/overhaul_job", response_model=StandardResponse[None])
# async def create_overhaul_equipment_jobs( async def create_overhaul_equipment_jobs(
# db_session: DbSession, overhaul_job_in: OverhaulScheduleCreate db_session: DbSession, overhaul_job_in: OverhaulScheduleCreate
# ): ):
# await create( await create(
# db_session=db_session, db_session=db_session,
# overhaul_job_in=overhaul_job_in, overhaul_job_in=overhaul_job_in,
# ) )
# return StandardResponse( return StandardResponse(
# data=None, data=None,
# message="Data created successfully", message="Data created successfully",
# ) )
# @router.put("/{overhaul_job_id}", response_model=StandardResponse[None]) @router.post("/update/{overhaul_job_id}", response_model=StandardResponse[None])
# async def update_overhaul_schedule( async def update_overhaul_schedule(
# db_session: DbSession, overhaul_job_id: str, overhaul_job_in: OverhaulScheduleUpdate db_session: DbSession, overhaul_job_id: str, overhaul_job_in: OverhaulScheduleUpdate
# ): ):
# await update(db_session=db_session, overhaul_schedule_id=overhaul_job_id, overhaul_job_in=overhaul_job_in) await update(db_session=db_session, overhaul_schedule_id=overhaul_job_id, overhaul_job_in=overhaul_job_in)
# return StandardResponse( return StandardResponse(
# data=None, data=None,
# message="Data updated successfully", message="Data updated successfully",
# ) )
# @router.delete("/{overhaul_job_id}", response_model=StandardResponse[None]) @router.post("/delete/{overhaul_job_id}", response_model=StandardResponse[None])
# async def delete_overhaul_equipment_job(db_session: DbSession, overhaul_job_id): async def delete_overhaul_equipment_job(db_session: DbSession, overhaul_job_id: str):
# await delete(db_session=db_session, overhaul_schedule_id=overhaul_job_id) await delete(db_session=db_session, overhaul_schedule_id=overhaul_job_id)
# return StandardResponse( return StandardResponse(
# data=None, data=None,
# message="Data deleted successfully", message="Data deleted successfully",
# ) )

@ -7,8 +7,8 @@ from pydantic import Field
from src.models import DefultBase, Pagination from src.models import DefultBase, Pagination
# class OverhaulScheduleBase(DefultBase): class OverhaulScheduleBase(DefultBase):
# pass pass
class AerosProjectBase(DefultBase): class AerosProjectBase(DefultBase):
@ -25,31 +25,30 @@ class AerosMetadata(AerosProjectBase):
updated_at: datetime updated_at: datetime
# class OverhaulScheduleCreate(OverhaulScheduleBase): class OverhaulScheduleCreate(OverhaulScheduleBase):
# year: int year: int
# plan_duration: Optional[int] = Field(None) plan_duration: Optional[int] = Field(None)
# planned_outage: Optional[int] = Field(None) planned_outage: Optional[int] = Field(None)
# actual_shutdown: Optional[int] = Field(None) actual_shutdown: Optional[int] = Field(None)
# start: datetime start: datetime
# finish: datetime finish: datetime
# remark: Optional[str] = Field(None) remark: Optional[str] = Field(None)
# class OverhaulScheduleUpdate(OverhaulScheduleBase):
# start: datetime
# finish: datetime
class OverhaulScheduleUpdate(OverhaulScheduleBase):
start: datetime
finish: datetime
# class OverhaulScheduleRead(OverhaulScheduleBase):
# id: UUID
# year: int
# plan_duration: Optional[int]
# planned_outage: Optional[int]
# actual_shutdown: Optional[int]
# start: datetime
# finish: datetime
# remark: Optional[str]
class OverhaulScheduleRead(OverhaulScheduleBase):
id: UUID
year: int
plan_duration: Optional[int]
planned_outage: Optional[int]
actual_shutdown: Optional[int]
start: datetime
finish: datetime
remark: Optional[str]
# class OverhaulSchedulePagination(Pagination): class OverhaulSchedulePagination(Pagination):
# items: List[OverhaulScheduleRead] = [] items: List[OverhaulScheduleRead] = []

@ -17,7 +17,7 @@ import clamd
import io import io
from .model import AerosProject from .model import AerosProject
from .schema import AerosProjectInput from .schema import AerosProjectInput, OverhaulScheduleCreate, OverhaulScheduleUpdate
import asyncio import asyncio
ALLOWED_EXTENSIONS = {".aro"} ALLOWED_EXTENSIONS = {".aro"}
MAX_FILE_SIZE = 100 * 1024 * 1024 # 100MB MAX_FILE_SIZE = 100 * 1024 * 1024 # 100MB
@ -236,3 +236,19 @@ async def reset_project(*, db_session: DbSession):
) )
return project.aro_file_path return project.aro_file_path
async def create(*, db_session: DbSession, overhaul_job_in: OverhaulScheduleCreate):
# Placeholder for creation logic
print(f"create overhaul job called: {overhaul_job_in}")
pass
async def update(*, db_session: DbSession, overhaul_schedule_id: str, overhaul_job_in: OverhaulScheduleUpdate):
# Placeholder for update logic
print(f"update overhaul job called for id {overhaul_schedule_id}: {overhaul_job_in}")
pass
async def delete(*, db_session: DbSession, overhaul_schedule_id: str):
# Placeholder for delete logic
print(f"delete overhaul job called for id {overhaul_schedule_id}")
pass

Loading…
Cancel
Save