feat: Add `min_eac_disposal_cost` to the equipment chart response schema and service.

main
MrWaradana 3 weeks ago
parent b2b191dd78
commit 92818a581a

@ -165,7 +165,8 @@ async def get_equipment(db_session: DbSession, collector_db_session: CollectorDb
min_seq, min_seq,
min_eac_year, min_eac_year,
last_actual_year, last_actual_year,
maximo_data maximo_data,
min_eac_disposal_cost
) = await get_master_by_assetnum(db_session=db_session, collector_db_session=collector_db_session, assetnum=assetnum) ) = await get_master_by_assetnum(db_session=db_session, collector_db_session=collector_db_session, assetnum=assetnum)
# raise Exception(equipment[0]) # raise Exception(equipment[0])
if not chart_data: if not chart_data:
@ -183,7 +184,8 @@ async def get_equipment(db_session: DbSession, collector_db_session: CollectorDb
min_seq=min_seq, min_seq=min_seq,
min_eac_year=min_eac_year, min_eac_year=min_eac_year,
last_actual_year=last_actual_year, last_actual_year=last_actual_year,
maximo_data=maximo_data maximo_data=maximo_data,
min_eac_disposal_cost=min_eac_disposal_cost
), ),
message="Data retrieved successfully", message="Data retrieved successfully",
) )

@ -106,7 +106,7 @@ class EquipmentRead(DefaultBase):
min_eac_year: Optional[float] = Field(None, nullable=True) min_eac_year: Optional[float] = Field(None, nullable=True)
last_actual_year: Optional[int] = Field(None, nullable=True) last_actual_year: Optional[int] = Field(None, nullable=True)
maximo_data: Optional[List[dict]] = Field(None, nullable=True) maximo_data: Optional[List[dict]] = Field(None, nullable=True)
min_eac_disposal_cost: Optional[float] = Field(None, nullable=True, le=MAX_PRICE)
class EquipmentTop10(EquipmentBase): class EquipmentTop10(EquipmentBase):
id: UUID id: UUID

@ -293,7 +293,11 @@ async def get_master_by_assetnum(
maximo_record = await _fetch_maximo_records( maximo_record = await _fetch_maximo_records(
session=collector_db_session, assetnum=assetnum session=collector_db_session, assetnum=assetnum
) )
min_eac_disposal_cost = next(
(record.eac_disposal_cost for record in records if record.tahun == min_eac_year),
None,
)
print(min_eac_disposal_cost)
return ( return (
equipment_master_record, equipment_master_record,
equipment_record, equipment_record,
@ -302,7 +306,8 @@ async def get_master_by_assetnum(
min_seq, min_seq,
min_eac_year, min_eac_year,
last_actual_year, last_actual_year,
maximo_record maximo_record,
min_eac_disposal_cost,
) )
# return result.scalars().all() # return result.scalars().all()

Loading…
Cancel
Save