diff --git a/wwwroot/api/llm_list.dspy b/wwwroot/api/llm_list.dspy index e4e8441..a13b467 100644 --- a/wwwroot/api/llm_list.dspy +++ b/wwwroot/api/llm_list.dspy @@ -41,27 +41,12 @@ try: count_rows = await sor.sqlExe(count_sql, filterdic) total = count_rows[0]['cnt'] if count_rows else 0 - # Paginated data - JOIN with organization and upapp to get display names - # Prefix field references in WHERE clause with table alias 'l.' - join_where = '' - if where_clause: - import re - conds_text = where_clause.replace(' WHERE ', '', 1) - # Add l. prefix to field names (name, model, providerid, upappid, status) - conds_text = re.sub(r'\b(name|model|description|providerid|upappid|status|ownerid)\b', r'l.\1', conds_text) - join_where = f' WHERE {conds_text}' - + # Paginated data data_sql = f""" - select l.id, l.name, l.model, l.description, l.iconid, - l.upappid, l.providerid, l.ownerid, l.enabled_date, - l.expired_date, l.min_balance, l.status, - u.name as upappid_text, - o.orgname as providerid_text - from llm l - left join uapi.upapp u on l.upappid = u.id - left join rbac.organization o on l.providerid = o.id - {join_where} - order by l.model + select id, name, model, description, iconid, upappid, providerid, + ownerid, enabled_date, expired_date, min_balance, status + from llm{where_clause} + order by model limit ${limit}$ offset ${offset}$ """ rows = await sor.sqlExe(data_sql, {**filterdic, 'limit': rows_per_page, 'offset': offset})