feat: agregar sistema de autenticación con usuarios y roles
- Agregar Login con autenticación por DNI y contraseña - Crear tabla de usuarios con roles (admin, médico, enfermero) - Implementar gestión de usuarios (CRUD) para administradores - Agregar control de permisos basado en roles en el menú - Persistir estado de sesión en backend - Inicializar usuario admin por defecto (DNI: 12345678, pass: admin123) - Corregir inicialización de arrays en el store para evitar errores al cargar estado
This commit is contained in:
+11
-1
@@ -10,6 +10,8 @@ import { Cultivos } from '@/sections/Cultivos';
|
||||
import { HistoriaClinica } from '@/sections/HistoriaClinica';
|
||||
import { NuevoIngreso } from '@/sections/NuevoIngreso';
|
||||
import { EditIngreso } from '@/sections/EditIngreso';
|
||||
import { Login } from '@/sections/Login';
|
||||
import { GestionUsuarios } from '@/sections/GestionUsuarios';
|
||||
import { Spinner } from '@/components/ui/spinner';
|
||||
import { Button } from '@/components/ui/button';
|
||||
import { ThemeProvider } from "@/components/theme-provider";
|
||||
@@ -26,6 +28,10 @@ function AppContent() {
|
||||
);
|
||||
}
|
||||
|
||||
if (!store.isAuthenticated) {
|
||||
return <Login />;
|
||||
}
|
||||
|
||||
const renderVista = () => {
|
||||
switch (store.vistaActual) {
|
||||
case 'dashboard':
|
||||
@@ -217,13 +223,17 @@ function AppContent() {
|
||||
/>
|
||||
);
|
||||
}
|
||||
case 'usuarios':
|
||||
return (
|
||||
<GestionUsuarios />
|
||||
);
|
||||
default:
|
||||
return null;
|
||||
}
|
||||
};
|
||||
|
||||
return (
|
||||
<Layout vistaActual={store.vistaActual} onCambiarVista={store.setVista}>
|
||||
<Layout vistaActual={store.vistaActual} onCambiarVista={store.setVista} currentUser={store.currentUser} onLogout={store.logout}>
|
||||
{renderVista()}
|
||||
</Layout>
|
||||
);
|
||||
|
||||
Reference in New Issue
Block a user