|
|
|
@ -1,6 +1,7 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
from sqlalchemy import Select, Delete, func
|
|
|
|
from sqlalchemy import Select, Delete, func
|
|
|
|
|
|
|
|
from sqlalchemy.orm import selectinload
|
|
|
|
|
|
|
|
|
|
|
|
from src.database.service import search_filter_sort_paginate
|
|
|
|
from src.database.service import search_filter_sort_paginate
|
|
|
|
from .model import OverhaulJob
|
|
|
|
from .model import OverhaulJob
|
|
|
|
@ -12,29 +13,38 @@ from src.auth.service import CurrentUser
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
async def get_all(*, common, overhaul_session_id: str):
|
|
|
|
async def get_all(*, common, overhaul_equipment_id: str):
|
|
|
|
"""Returns all documents."""
|
|
|
|
"""Returns all documents."""
|
|
|
|
query = Select(OverhaulJob).where(OverhaulJob.overhaul_scope_id == overhaul_session_id)
|
|
|
|
query = Select(OverhaulJob).where(OverhaulJob.overhaul_activity_id == overhaul_equipment_id).options(
|
|
|
|
|
|
|
|
selectinload(OverhaulJob.scope_equipment_job), selectinload(OverhaulJob.overhaul_activity)
|
|
|
|
|
|
|
|
)
|
|
|
|
|
|
|
|
|
|
|
|
results = await search_filter_sort_paginate(model=query, **common)
|
|
|
|
results = await search_filter_sort_paginate(model=query, **common)
|
|
|
|
return results
|
|
|
|
return results
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
async def create(*, db_session: DbSession, overhaul_session_id, scope_job_in: OverhaulJobCreate):
|
|
|
|
async def create(*, db_session: DbSession, overhaul_equipment_id, overhaul_job_in: OverhaulJobCreate):
|
|
|
|
scope_jobs = []
|
|
|
|
overhaul_jobs = []
|
|
|
|
|
|
|
|
|
|
|
|
if not overhaul_session_id:
|
|
|
|
if not overhaul_equipment_id:
|
|
|
|
raise ValueError("assetnum parameter is required")
|
|
|
|
raise ValueError("assetnum parameter is required")
|
|
|
|
|
|
|
|
|
|
|
|
for job_id in scope_job_in.job_ids:
|
|
|
|
equipment_stmt = Select(OverhaulJob).where(
|
|
|
|
scope_equipment_job = OverhaulJob(
|
|
|
|
OverhaulJob.overhaul_activity_id == overhaul_equipment_id)
|
|
|
|
overhaul_session_id=overhaul_session_id, job_id=job_id)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
scope_jobs.append(scope_equipment_job)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
db_session.add_all(scope_jobs)
|
|
|
|
equipment = await db_session.scalar(equipment_stmt)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
for job_id in overhaul_job_in.job_ids:
|
|
|
|
|
|
|
|
overhaul_equipment_job = OverhaulJob(
|
|
|
|
|
|
|
|
overhaul_activity_id=overhaul_equipment_id, scope_equipment_job_id=job_id
|
|
|
|
|
|
|
|
)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
overhaul_jobs.append(overhaul_equipment_job)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
db_session.add_all(overhaul_jobs)
|
|
|
|
await db_session.commit()
|
|
|
|
await db_session.commit()
|
|
|
|
return scope_job_in.job_ids
|
|
|
|
return overhaul_job_in.job_ids
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
# async def update(*, db_session: DbSession, scope: OverhaulScope, scope_in: ScopeUpdate):
|
|
|
|
# async def update(*, db_session: DbSession, scope: OverhaulScope, scope_in: ScopeUpdate):
|
|
|
|
@ -57,4 +67,3 @@ async def create(*, db_session: DbSession, overhaul_session_id, scope_job_in: Ov
|
|
|
|
# query = Delete(OverhaulScope).where(OverhaulScope.id == scope_id)
|
|
|
|
# query = Delete(OverhaulScope).where(OverhaulScope.id == scope_id)
|
|
|
|
# await db_session.execute(query)
|
|
|
|
# await db_session.execute(query)
|
|
|
|
# await db_session.commit()
|
|
|
|
# await db_session.commit()
|
|
|
|
|
|
|
|
|
|
|
|
|