|
|
|
|
@ -424,9 +424,10 @@ async def update(
|
|
|
|
|
data = equipment_in.model_dump()
|
|
|
|
|
update_data = equipment_in.model_dump(exclude_defaults=True)
|
|
|
|
|
# Check if proportion from AcquisitionData changed and recalculate acquisition_cost
|
|
|
|
|
if "proportion" in update_data:
|
|
|
|
|
if "proportion" in update_data or "category_no" in update_data:
|
|
|
|
|
category_no = update_data.get("category_no", equipment.category_no)
|
|
|
|
|
acquisition_data_query = Select(AcquisitionData).filter(
|
|
|
|
|
AcquisitionData.assetnum == equipment.assetnum
|
|
|
|
|
AcquisitionData.category_no == category_no
|
|
|
|
|
)
|
|
|
|
|
acquisition_data_result = await db_session.execute(acquisition_data_query)
|
|
|
|
|
acquisition_data = acquisition_data_result.scalars().one_or_none()
|
|
|
|
|
|