diff --git a/src/equipment/__pycache__/model.cpython-311.pyc b/src/equipment/__pycache__/model.cpython-311.pyc index 7b84e7e..765df7e 100644 Binary files a/src/equipment/__pycache__/model.cpython-311.pyc and b/src/equipment/__pycache__/model.cpython-311.pyc differ diff --git a/src/equipment/__pycache__/router.cpython-311.pyc b/src/equipment/__pycache__/router.cpython-311.pyc index 9b45157..f8e1b4d 100644 Binary files a/src/equipment/__pycache__/router.cpython-311.pyc and b/src/equipment/__pycache__/router.cpython-311.pyc differ diff --git a/src/equipment/__pycache__/schema.cpython-311.pyc b/src/equipment/__pycache__/schema.cpython-311.pyc index 49fd306..46c3bba 100644 Binary files a/src/equipment/__pycache__/schema.cpython-311.pyc and b/src/equipment/__pycache__/schema.cpython-311.pyc differ diff --git a/src/equipment/__pycache__/service.cpython-311.pyc b/src/equipment/__pycache__/service.cpython-311.pyc index 0560491..3e0e7b3 100644 Binary files a/src/equipment/__pycache__/service.cpython-311.pyc and b/src/equipment/__pycache__/service.cpython-311.pyc differ diff --git a/src/equipment/router.py b/src/equipment/router.py index 2dfa7b0..c845735 100644 --- a/src/equipment/router.py +++ b/src/equipment/router.py @@ -82,12 +82,17 @@ async def simulate_equipment(db_session: DbSession, assetnum: str): """ async def event_generator(): + # notify start of checking + yield f"data: {json.dumps({'status':'started','step':'checking update','message':'Checking and updating initial data'})}\n\n" + try: await update_initial_simulation_data(db_session=db_session, assetnum=assetnum) + yield f"data: {json.dumps({'status':'completed','step':'checking update','message':'Initial data check completed'})}\n\n" except Exception as e: # Log error but proceed? Or maybe yield an error? # For now, we proceed as this is an enhancement check. print(f"Update simulation data failed: {e}") + yield f"data: {json.dumps({'status':'error','step':'checking update','message':f'Update simulation data failed: {str(e)}'})}\n\n" # notify start of prediksi yield f"data: {json.dumps({'status':'started','step':'prediksi','message':'Starting prediksi'})}\n\n" @@ -106,7 +111,7 @@ async def simulate_equipment(db_session: DbSession, assetnum: str): yield f"data: {json.dumps({'status':'started','step':'eac','message':'Starting EAC calculation'})}\n\n" try: eac = Eac() - hasil_eac = await eac.hitung_eac_equipment(assetnum=assetnum) + hasil_eac = eac.hitung_eac_equipment(assetnum=assetnum) except Exception as exc: yield f"data: {json.dumps({'status':'error','step':'eac','message':str(exc)})}\n\n" return @@ -157,7 +162,7 @@ async def simulate_all_equipment(db_session: DbSession): await prediksi_main(assetnum=assetnum) # EAC eac = Eac() - await eac.hitung_eac_equipment(assetnum=assetnum) + eac.hitung_eac_equipment(assetnum=assetnum) success_count += 1 except Exception as e: error_count += 1 diff --git a/src/modules/equipment/Prediksi.py b/src/modules/equipment/Prediksi.py index c6857ac..b9cf0ca 100644 --- a/src/modules/equipment/Prediksi.py +++ b/src/modules/equipment/Prediksi.py @@ -711,9 +711,13 @@ class Prediksi: return # Mendapatkan tahun proyeksi dari DB par_tahun_target = self.__get_param(assetnum) + + if par_tahun_target is None: + raise ValueError(f"Asset {assetnum} not found in master data (lcc_ms_equipment_data).") # Tahun proyeksi - future_years = list(range(df["year"].max() + 1, par_tahun_target + 1)) + current_max_year = int(df["year"].max()) if not df.empty and not pd.isna(df["year"].max()) else 2024 + future_years = list(range(current_max_year + 1, int(par_tahun_target) + 1)) print("future_years", future_years) # Hasil prediksi predictions = {"year": future_years} diff --git a/src/modules/equipment/__pycache__/Prediksi.cpython-311.pyc b/src/modules/equipment/__pycache__/Prediksi.cpython-311.pyc index 5a7408a..e8f9e3a 100644 Binary files a/src/modules/equipment/__pycache__/Prediksi.cpython-311.pyc and b/src/modules/equipment/__pycache__/Prediksi.cpython-311.pyc differ diff --git a/src/modules/equipment/__pycache__/insert_actual_data.cpython-311.pyc b/src/modules/equipment/__pycache__/insert_actual_data.cpython-311.pyc index d34bf99..43a0dc4 100644 Binary files a/src/modules/equipment/__pycache__/insert_actual_data.cpython-311.pyc and b/src/modules/equipment/__pycache__/insert_actual_data.cpython-311.pyc differ diff --git a/src/modules/equipment/__pycache__/run.cpython-311.pyc b/src/modules/equipment/__pycache__/run.cpython-311.pyc index f5f23d6..cd997a8 100644 Binary files a/src/modules/equipment/__pycache__/run.cpython-311.pyc and b/src/modules/equipment/__pycache__/run.cpython-311.pyc differ diff --git a/src/plant_transaction_data/__pycache__/schema.cpython-311.pyc b/src/plant_transaction_data/__pycache__/schema.cpython-311.pyc index 79f43f8..aaf073c 100644 Binary files a/src/plant_transaction_data/__pycache__/schema.cpython-311.pyc and b/src/plant_transaction_data/__pycache__/schema.cpython-311.pyc differ