fix: raw_cm_interval calculation

main
MrWaradana 11 months ago
parent be8a6390a6
commit 6bd918f5a2

@ -190,20 +190,21 @@ async def generate_transaction(
api_data = await fetch_api_data(data_in.assetnum, year)
if api_data:
# Get current num_fail
# # Get current num_fail
current_num_fail = api_data["data"][0]["num_fail"]
# Calculate sum of previous failures for this asset
previous_failures_query = (
Select(func.sum(MasterRecords.raw_cm_interval))
.filter(MasterRecords.assetnum == data_in.assetnum)
.filter(MasterRecords.tahun < year)
)
previous_failures_result = await db_session.execute(previous_failures_query)
previous_failures_sum = previous_failures_result.scalar() or 0
# Update with current minus sum of previous
transaction.update({"raw_cm_interval": current_num_fail - previous_failures_sum})
# # Calculate sum of previous failures for this asset
# previous_failures_query = (
# Select(func.sum(MasterRecords.raw_cm_interval))
# .filter(MasterRecords.assetnum == data_in.assetnum)
# .filter(MasterRecords.tahun < year)
# )
# previous_failures_result = await db_session.execute(previous_failures_query)
# previous_failures_sum = previous_failures_result.scalar() or 0
# # Update with current minus sum of previous
# transaction.update({"raw_cm_interval": current_num_fail - previous_failures_sum})
transaction.update({"raw_cm_interval": current_num_fail})
transaction.update({"tahun": int(year), "seq": int(sequence)})
transactions.append(MasterRecords(**transaction))

Loading…
Cancel
Save