F6.2 Lote G: funcoes SQL puras -> plpgsql + roteamento (completa F6.2)
DB (supabase_admin, manual/f6_2g_sql_to_plpgsql.supabase_admin.sql): SQL puro nao permite set_config dinamico -> converte 5 pra plpgsql + p_tenant_id + _tenant_route: - get_financial_summary, get_financial_report, get_patient_session_counts (remove filtro tenant_id IN, schema-scoped) - list_financial_records: RETURNS SETOF financial_records -> jsonb (array, transparente no FE) - get_entity_primary_phone (interno, 0 callers): herda search_path do chamador (sem SET, unqualified) Smoke: get_financial_summary + list_financial_records (array 5) OK. Frontend (3 arquivos): p_tenant_id de activeTenantId/resolveTenantId nas chamadas de get_financial_summary/list_financial_records/get_patient_session_ counts. Build passa. === F6.2 COMPLETA: 66 funcoes migradas (triggers A/B/C + RPCs D/E/F/G) === Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This commit is contained in:
@@ -510,7 +510,8 @@ export async function markIntakeConverted(intakeId, patientId, { tenantId } = {}
|
||||
*/
|
||||
export async function getSessionCounts(patientIds) {
|
||||
if (!patientIds?.length) return [];
|
||||
const { data, error } = await supabase.rpc('get_patient_session_counts', { p_patient_ids: patientIds });
|
||||
const tid = resolveTenantId();
|
||||
const { data, error } = await supabase.rpc('get_patient_session_counts', { p_tenant_id: tid, p_patient_ids: patientIds });
|
||||
if (error) throw error;
|
||||
return data || [];
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user