feat(wizard): add partner filter and pagination to customer step
All checks were successful
Staging Build / build (push) Successful in 2m52s
All checks were successful
Staging Build / build (push) Successful in 2m52s
This commit is contained in:
@@ -0,0 +1,21 @@
|
||||
-- Migration: Rollenbasierte Endkunden-RLS für Wizard und Partner-Dashboard
|
||||
-- Stellt sicher, dass Admins alle Endkunden sehen/filtern können und Partner strikt ihre eigenen.
|
||||
|
||||
CREATE OR REPLACE FUNCTION public.is_admin(user_id UUID)
|
||||
RETURNS BOOLEAN AS $$
|
||||
SELECT EXISTS (
|
||||
SELECT 1 FROM public.users
|
||||
WHERE id = user_id AND role = 'admin'
|
||||
);
|
||||
$$ LANGUAGE sql STABLE SECURITY DEFINER;
|
||||
|
||||
-- SELECT Policy auf end_customers
|
||||
DROP POLICY IF EXISTS "Partner sehen nur eigene Endkunden" ON public.end_customers;
|
||||
CREATE POLICY "Partner sehen nur eigene Endkunden" ON public.end_customers
|
||||
FOR SELECT USING (partner_id = public.get_auth_company_id() OR public.is_admin(auth.uid()));
|
||||
|
||||
-- ALL/INSERT/UPDATE Policy auf end_customers
|
||||
DROP POLICY IF EXISTS "Partner verwalten eigene Endkunden" ON public.end_customers;
|
||||
CREATE POLICY "Partner verwalten eigene Endkunden" ON public.end_customers
|
||||
FOR ALL USING (partner_id = public.get_auth_company_id() OR public.is_admin(auth.uid()))
|
||||
WITH CHECK (partner_id = public.get_auth_company_id() OR public.is_admin(auth.uid()));
|
||||
Reference in New Issue
Block a user