feat: Implementación módulos Empresas, Plantas, Tipos y Estados Bobina
Backend API: - Implementado CRUD completo para Empresas (DE001-DE004): - EmpresaRepository, EmpresaService, EmpresasController. - Lógica de creación/eliminación de saldos iniciales en EmpresaService. - Transacciones y registro en tablas _H. - Verificación de permisos específicos. - Implementado CRUD completo para Plantas de Impresión (IP001-IP004): - PlantaRepository, PlantaService, PlantasController. - Transacciones y registro en tablas _H. - Verificación de permisos. - Implementado CRUD completo para Tipos de Bobina (IB006-IB009): - TipoBobinaRepository, TipoBobinaService, TiposBobinaController. - Transacciones y registro en tablas _H. - Verificación de permisos. - Implementado CRUD completo para Estados de Bobina (IB010-IB013): - EstadoBobinaRepository, EstadoBobinaService, EstadosBobinaController. - Transacciones y registro en tablas _H. - Verificación de permisos. Frontend React: - Módulo Empresas: - empresaService.ts para interactuar con la API. - EmpresaFormModal.tsx para crear/editar empresas. - GestionarEmpresasPage.tsx con tabla, filtro, paginación y menú de acciones. - Integración con el hook usePermissions para control de acceso. - Módulo Plantas de Impresión: - plantaService.ts. - PlantaFormModal.tsx. - GestionarPlantasPage.tsx con tabla, filtro, paginación y acciones. - Integración con usePermissions. - Módulo Tipos de Bobina: - tipoBobinaService.ts. - TipoBobinaFormModal.tsx. - GestionarTiposBobinaPage.tsx con tabla, filtro, paginación y acciones. - Integración con usePermissions. - Módulo Estados de Bobina: - estadoBobinaService.ts. - EstadoBobinaFormModal.tsx. - GestionarEstadosBobinaPage.tsx con tabla, filtro, paginación y acciones. - Integración con usePermissions. - Navegación: - Añadidas sub-pestañas y rutas para los nuevos módulos dentro de "Distribución" (Empresas) e "Impresión" (Plantas, Tipos Bobina, Estados Bobina). - Creado ImpresionIndexPage.tsx para la navegación interna del módulo de Impresión. Correcciones: - Corregido el uso de CommitAsync/RollbackAsync a Commit/Rollback síncronos en PlantaService.cs debido a que IDbTransaction no los soporta asíncronamente.
This commit is contained in:
		| @@ -0,0 +1,14 @@ | ||||
| using System.ComponentModel.DataAnnotations; | ||||
|  | ||||
| namespace GestionIntegral.Api.Dtos.Zonas | ||||
| { | ||||
|     public class CreateZonaDto | ||||
|     { | ||||
|         [Required(ErrorMessage = "El nombre de la zona es obligatorio.")] | ||||
|         [StringLength(50, ErrorMessage = "El nombre no puede exceder los 50 caracteres.")] | ||||
|         public string Nombre { get; set; } = string.Empty; | ||||
|  | ||||
|         [StringLength(150, ErrorMessage = "La descripción no puede exceder los 150 caracteres.")] | ||||
|         public string? Descripcion { get; set; } | ||||
|     } | ||||
| } | ||||
| @@ -0,0 +1,15 @@ | ||||
| using System.ComponentModel.DataAnnotations; | ||||
|  | ||||
| namespace GestionIntegral.Api.Dtos.Zonas | ||||
| { | ||||
|     public class UpdateZonaDto | ||||
|     { | ||||
|         [Required(ErrorMessage = "El nombre de la zona es obligatorio.")] | ||||
|         [StringLength(50, ErrorMessage = "El nombre no puede exceder los 50 caracteres.")] | ||||
|         public string Nombre { get; set; } = string.Empty; | ||||
|  | ||||
|         [StringLength(150, ErrorMessage = "La descripción no puede exceder los 150 caracteres.")] | ||||
|         public string? Descripcion { get; set; } | ||||
|         // No incluimos Estado aquí, ya que el borrado lógico es una operación separada (DELETE) | ||||
|     } | ||||
| } | ||||
							
								
								
									
										10
									
								
								Backend/GestionIntegral.Api/Models/Dtos/Zonas/ZonaDto.cs
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										10
									
								
								Backend/GestionIntegral.Api/Models/Dtos/Zonas/ZonaDto.cs
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,10 @@ | ||||
| namespace GestionIntegral.Api.Dtos.Zonas | ||||
| { | ||||
|     public class ZonaDto | ||||
|     { | ||||
|         public int IdZona { get; set; } | ||||
|         public string Nombre { get; set; } = string.Empty; | ||||
|         public string? Descripcion { get; set; } | ||||
|         // No incluimos 'Estado' porque generalmente solo mostraremos las activas | ||||
|     } | ||||
| } | ||||
		Reference in New Issue
	
	Block a user