def get_where_query_sql(assetnum, worktype): where_query = f""" where (a.asset_unit = '3' OR a.asset_unit='00') and a.status in ('COMP', 'CLOSE') AND a.asset_assetnum = '{assetnum}' {f"AND a.worktype = '{worktype}'" if worktype != 'CM' else "AND a.worktype in ('CM', 'PROACTIVE', 'EM')"} {f"AND a.wojp8 != 'S1'" if worktype == 'CM' else ""} AND ( a.description NOT ILIKE '%U4%' OR ( a.description ILIKE '%U3%' AND a.description ILIKE '%U4%' ) ) """ # and a.wonum not like 'T%' # EM = Emergency Maintainance return where_query def get_where_query_sql_labour_cost(assetnum, worktype): """ Return where query for labour cost using the standardized query. The difference is on a.wonum not like T% """ where_query = f""" where (a.asset_unit = '3' OR a.asset_unit='00') and a.status in ('COMP', 'CLOSE') 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')"} {f"AND a.wojp8 != 'S1'" if worktype == 'CM' else ""} AND ( a.description NOT ILIKE '%U4%' OR ( a.description ILIKE '%U3%' AND a.description ILIKE '%U4%' ) ) """ return where_query def get_where_query_sql_all_worktype(assetnum): where_query = f""" WHERE (a.asset_unit = '3' OR a.asset_unit = '00') AND a.status IN ('COMP', 'CLOSE') AND a.asset_assetnum = '{assetnum}' AND ( (a.worktype = 'CM' AND a.wojp8 != 'S1') OR (a.worktype <> 'CM') ) AND ( a.description NOT ILIKE '%U4%' OR ( a.description ILIKE '%U3%' AND a.description ILIKE '%U4%' ) ) AND a.worktype in ('CM', 'PROACTIVE', 'EM', 'PDM', 'PM', 'OH') """ return where_query