From 389449d10aed1ca8f2891e3f91a97aef42fe2844 Mon Sep 17 00:00:00 2001 From: MrWaradana Date: Thu, 25 Dec 2025 09:54:30 +0700 Subject: [PATCH] refactor: Implement equipment data services with dynamic SQL query generation and category rollup logic. --- src/equipment/service.py | 2 +- src/modules/equipment/where_query_sql.py | 2 ++ 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/src/equipment/service.py b/src/equipment/service.py index 83ecf29..dc12d3f 100644 --- a/src/equipment/service.py +++ b/src/equipment/service.py @@ -130,7 +130,7 @@ async def _fetch_joined_maximo_records( JOINED_MAXIMO_SQL = text( f""" - SELECT * + SELECT *, a.wonum FROM public.wo_maximo a LEFT JOIN public.wo_maximo_labtrans b ON b.wonum = a.wonum diff --git a/src/modules/equipment/where_query_sql.py b/src/modules/equipment/where_query_sql.py index e33d325..efa660b 100644 --- a/src/modules/equipment/where_query_sql.py +++ b/src/modules/equipment/where_query_sql.py @@ -2,6 +2,7 @@ def get_where_query_sql(assetnum, worktype): where_query = f""" where a.asset_unit = '3' + AND a.asset_unit='00' and a.wonum not like 'T%' AND a.asset_assetnum = '{assetnum}' {f"AND a.worktype = '{worktype}'" if worktype != 'CM' else "AND a.worktype in ('CM', 'PROACTIVE', 'EM')"} @@ -21,6 +22,7 @@ def get_where_query_sql_all_worktype(assetnum): where_query = f""" where a.asset_unit = '3' + AND a.asset_unit='00' and a.wonum not like 'T%' AND a.asset_assetnum = '{assetnum}' AND (