minor change

main
Cizz22 12 months ago
parent c2ff480584
commit a8610b3a2d

@ -72,11 +72,11 @@ class CalculationData(Base, DefaultMixin, IdentityMixin):
"CalculationParam", back_populates="calculation_data")
equipment_results = relationship(
"CalculationEquipmentResult", lazy="raise"
"CalculationEquipmentResult", lazy="raise", viewonly=True
)
results = relationship(
"CalculationResult", lazy="raise"
"CalculationResult", lazy="raise", viewonly=True
)

@ -63,32 +63,20 @@ async def create_param_and_data(*, db_session: DbSession, calculation_param_in:
async def get_calculation_result(db_session: DbSession, calculation_id: str):
calculation = await get_calculation_data_by_id(db_session=db_session, calculation_id=calculation_id)
reference = await get_by_assetnum(db_session=db_session, assetnum=calculation.reference_id) if calculation.overhaul_reference_type == OverhaulReferenceType.ASSET else await get(db_session=db_session, scope_id=calculation.reference_id)
stmt = select(CalculationResult).filter(
CalculationResult.calculation_data_id == calculation_id).order_by(CalculationResult.day)
optimum = stmt.filter(CalculationResult.day == calculation.optimum_oh_day)
results = await db_session.execute(stmt)
optimumOh = await db_session.scalar(optimum)
optimumRes = {
"overhaulCost": optimumOh.overhaul_cost,
"correctiveCost": optimumOh.corrective_cost,
"numOfFailures": optimumOh.num_failures,
"days": optimumOh.day
}
scope_calculation = await get_calculation_data_by_id(db_session=db_session, calculation_id=calculation_id)
if not scope_calculation:
raise HTTPException(
status_code=status.HTTP_404_NOT_FOUND,
detail="A data with this id does not exist.",
)
# Check if calculation already exist
return CalculationTimeConstrainsRead(
id=calculation.id,
name=reference.scope_name if hasattr(
reference, "scope_name") else reference.master_equipment.name,
reference=reference.assetnum if hasattr(
reference, "assetnum") else reference.scope_name,
results=results.scalars().all(),
optimumOh=optimumRes
id=scope_calculation.id,
reference=scope_calculation.overhaul_session_id,
results=scope_calculation.results,
optimum_oh=scope_calculation.optimum_oh_day,
equipment_results=scope_calculation.equipment_results
)

Loading…
Cancel
Save