fix: resolve super_admin privileges and tenant management issues

- Fixed real backend deletion for tenants

- Allowed super_admins to manage other super_admins in Global Users

- Filtered teams based on selected tenant in user creation

- Protected system tenant from deletion
This commit is contained in:
Cauê Faleiros
2026-03-04 11:36:47 -03:00
parent 75631909df
commit d5b57835a7
5 changed files with 187 additions and 17 deletions

View File

@@ -3,7 +3,7 @@ import {
Building2, Users, MessageSquare, Plus, Search,
Edit, Trash2, ChevronDown, ChevronUp, ChevronsUpDown, X
} from 'lucide-react';
import { getTenants, createTenant } from '../services/dataService';
import { getTenants, createTenant, deleteTenant } from '../services/dataService';
import { Tenant } from '../types';
import { DateRangePicker } from '../components/DateRangePicker';
import { KPICard } from '../components/KPICard';
@@ -76,9 +76,18 @@ export const SuperAdmin: React.FC = () => {
setIsModalOpen(true);
};
const handleDelete = (id: string) => {
const handleDelete = async (id: string) => {
if (id === 'system') {
alert('A organização do sistema não pode ser excluída.');
return;
}
if (confirm('Tem certeza que deseja excluir esta organização? Esta ação não pode ser desfeita.')) {
setTenants(prev => prev.filter(t => t.id !== id));
const success = await deleteTenant(id);
if (success) {
setTenants(prev => prev.filter(t => t.id !== id));
} else {
alert('Erro ao excluir a organização do servidor.');
}
}
};