Fase 3:
- Backend API: Autenticación y autorización básicas con JWT implementadas. Cambio de contraseña funcional. Módulo "Tipos de Pago" (CRUD completo) implementado en el backend (Controlador, Servicio, Repositorio) usando Dapper, transacciones y con lógica de historial. Se incluyen permisos en el token JWT. - Frontend React: Estructura base con Vite, TypeScript, MUI. Contexto de autenticación (AuthContext) que maneja el estado del usuario y el token. Página de Login. Modal de Cambio de Contraseña (forzado y opcional). Hook usePermissions para verificar permisos. Página GestionarTiposPagoPage con tabla, paginación, filtro, modal para crear/editar, y menú de acciones, respetando permisos. Layout principal (MainLayout) con navegación por Tabs (funcionalidad básica de navegación). Estructura de enrutamiento (AppRoutes) que maneja rutas públicas, protegidas y anidadas para módulos.
This commit is contained in:
		
							
								
								
									
										6
									
								
								Frontend/src/models/dtos/ChangePasswordRequestDto.ts
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										6
									
								
								Frontend/src/models/dtos/ChangePasswordRequestDto.ts
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,6 @@ | ||||
| // src/models/dtos/ChangePasswordRequestDto.ts | ||||
| export interface ChangePasswordRequestDto { | ||||
|   currentPassword: string; | ||||
|   newPassword: string; | ||||
|   confirmNewPassword: string; | ||||
| } | ||||
| @@ -1,10 +1,10 @@ | ||||
| // src/models/dtos/LoginResponseDto.ts | ||||
| export interface LoginResponseDto { | ||||
|   Token: string; | ||||
|   UserId: number; | ||||
|   Username: string; | ||||
|   NombreCompleto: string; | ||||
|   EsSuperAdmin: boolean; | ||||
|   DebeCambiarClave: boolean; | ||||
|   token: string; | ||||
|   userId: number; | ||||
|   username: string; | ||||
|   nombreCompleto: string; | ||||
|   esSuperAdmin: boolean; | ||||
|   debeCambiarClave: boolean; | ||||
|   // Añade otros campos si los definiste en el DTO C# | ||||
| } | ||||
							
								
								
									
										4
									
								
								Frontend/src/models/dtos/tiposPago/CreateTipoPagoDto.ts
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										4
									
								
								Frontend/src/models/dtos/tiposPago/CreateTipoPagoDto.ts
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,4 @@ | ||||
| export interface CreateTipoPagoDto { | ||||
|   nombre: string; | ||||
|   detalle?: string; | ||||
| } | ||||
							
								
								
									
										4
									
								
								Frontend/src/models/dtos/tiposPago/UpdateTipoPagoDto.ts
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										4
									
								
								Frontend/src/models/dtos/tiposPago/UpdateTipoPagoDto.ts
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,4 @@ | ||||
| export interface UpdateTipoPagoDto { | ||||
|   nombre: string; | ||||
|   detalle?: string; | ||||
| } | ||||
		Reference in New Issue
	
	Block a user