// using System; using ERP.TallerAutomotriz.Infrastructure.Persistence; using Microsoft.EntityFrameworkCore; using Microsoft.EntityFrameworkCore.Infrastructure; using Microsoft.EntityFrameworkCore.Metadata; using Microsoft.EntityFrameworkCore.Migrations; using Microsoft.EntityFrameworkCore.Storage.ValueConversion; #nullable disable namespace ERP.TallerAutomotriz.Infrastructure.Persistence.Migrations { [DbContext(typeof(ApplicationDbContext))] [Migration("20260425115332_InitialCreate")] partial class InitialCreate { /// protected override void BuildTargetModel(ModelBuilder modelBuilder) { #pragma warning disable 612, 618 modelBuilder .HasDefaultSchema("dbo") .HasAnnotation("ProductVersion", "8.0.10") .HasAnnotation("Relational:MaxIdentifierLength", 128); SqlServerModelBuilderExtensions.UseIdentityColumns(modelBuilder); modelBuilder.Entity("ERP.TallerAutomotriz.Domain.Entities.Customers.Cliente", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("int"); SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id")); b.Property("Activo") .HasColumnType("bit"); b.Property("CargoContacto") .HasColumnType("nvarchar(max)"); b.Property("Ciudad") .HasColumnType("nvarchar(max)"); b.Property("Codigo") .IsRequired() .HasMaxLength(20) .HasColumnType("nvarchar(20)"); b.Property("ContactoPrincipal") .HasColumnType("nvarchar(max)"); b.Property("CreadoPor") .HasColumnType("nvarchar(max)"); b.Property("Direccion") .HasColumnType("nvarchar(max)"); b.Property("DocumentoIdentidad") .IsRequired() .HasMaxLength(20) .HasColumnType("nvarchar(20)"); b.Property("Email") .HasMaxLength(150) .HasColumnType("nvarchar(150)"); b.Property("FechaCreacion") .HasColumnType("datetime2"); b.Property("FechaModificacion") .HasColumnType("datetime2"); b.Property("LimiteCredito") .HasPrecision(18, 2) .HasColumnType("decimal(18,2)"); b.Property("ModificadoPor") .HasColumnType("nvarchar(max)"); b.Property("NombreComercial") .HasColumnType("nvarchar(max)"); b.Property("NombreRazonSocial") .IsRequired() .HasMaxLength(200) .HasColumnType("nvarchar(200)"); b.Property("Notas") .HasColumnType("nvarchar(max)"); b.Property("RecibeNotificaciones") .HasColumnType("bit"); b.Property("SaldoPendiente") .HasPrecision(18, 2) .HasColumnType("decimal(18,2)"); b.Property("TecnicoConfianzaId") .HasColumnType("int"); b.Property("TelefonoPrincipal") .HasColumnType("nvarchar(max)"); b.Property("TelefonoSecundario") .HasColumnType("nvarchar(max)"); b.Property("Tipo") .HasColumnType("int"); b.HasKey("Id"); b.HasIndex("Codigo") .IsUnique(); b.HasIndex("DocumentoIdentidad"); b.ToTable("Clientes", "crm"); }); modelBuilder.Entity("ERP.TallerAutomotriz.Domain.Entities.Customers.Vehiculo", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("int"); SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id")); b.Property("Activo") .HasColumnType("bit"); b.Property("Anio") .HasColumnType("int"); b.Property("ClienteId") .HasColumnType("int"); b.Property("Color") .HasColumnType("nvarchar(max)"); b.Property("Combustible") .HasColumnType("int"); b.Property("CreadoPor") .HasColumnType("nvarchar(max)"); b.Property("FechaCreacion") .HasColumnType("datetime2"); b.Property("FechaModificacion") .HasColumnType("datetime2"); b.Property("KilometrajeActual") .HasColumnType("int"); b.Property("KilometrajeUltimoServicio") .HasColumnType("int"); b.Property("Marca") .IsRequired() .HasMaxLength(50) .HasColumnType("nvarchar(50)"); b.Property("Modelo") .IsRequired() .HasMaxLength(50) .HasColumnType("nvarchar(50)"); b.Property("ModificadoPor") .HasColumnType("nvarchar(max)"); b.Property("Motor") .HasColumnType("nvarchar(max)"); b.Property("Notas") .HasColumnType("nvarchar(max)"); b.Property("NumeroChasis") .HasColumnType("nvarchar(max)"); b.Property("Placa") .IsRequired() .HasMaxLength(20) .HasColumnType("nvarchar(20)"); b.Property("ProximoServicioFecha") .HasColumnType("datetime2"); b.Property("ProximoServicioKm") .HasColumnType("int"); b.Property("Transmision") .HasColumnType("int"); b.Property("UltimoServicio") .HasColumnType("datetime2"); b.Property("VIN") .HasColumnType("nvarchar(450)"); b.HasKey("Id"); b.HasIndex("ClienteId"); b.HasIndex("Placa") .IsUnique(); b.HasIndex("VIN"); b.ToTable("Vehiculos", "crm"); }); modelBuilder.Entity("ERP.TallerAutomotriz.Domain.Entities.Inventory.Almacen", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("int"); SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id")); b.Property("Activo") .HasColumnType("bit"); b.Property("Codigo") .IsRequired() .HasMaxLength(20) .HasColumnType("nvarchar(20)"); b.Property("CreadoPor") .HasColumnType("nvarchar(max)"); b.Property("Direccion") .HasColumnType("nvarchar(max)"); b.Property("EsPrincipal") .HasColumnType("bit"); b.Property("FechaCreacion") .HasColumnType("datetime2"); b.Property("FechaModificacion") .HasColumnType("datetime2"); b.Property("ModificadoPor") .HasColumnType("nvarchar(max)"); b.Property("Nombre") .IsRequired() .HasMaxLength(100) .HasColumnType("nvarchar(100)"); b.Property("Responsable") .HasColumnType("nvarchar(max)"); b.HasKey("Id"); b.HasIndex("Codigo") .IsUnique(); b.ToTable("Almacenes", "inventario"); }); modelBuilder.Entity("ERP.TallerAutomotriz.Domain.Entities.Inventory.CategoriaRepuesto", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("int"); SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id")); b.Property("Activo") .HasColumnType("bit"); b.Property("CategoriaPadreId") .HasColumnType("int"); b.Property("CreadoPor") .HasColumnType("nvarchar(max)"); b.Property("Descripcion") .HasColumnType("nvarchar(max)"); b.Property("FechaCreacion") .HasColumnType("datetime2"); b.Property("FechaModificacion") .HasColumnType("datetime2"); b.Property("ModificadoPor") .HasColumnType("nvarchar(max)"); b.Property("Nombre") .IsRequired() .HasMaxLength(100) .HasColumnType("nvarchar(100)"); b.HasKey("Id"); b.HasIndex("CategoriaPadreId"); b.ToTable("CategoriasRepuesto", "inventario"); }); modelBuilder.Entity("ERP.TallerAutomotriz.Domain.Entities.Inventory.CompatibilidadRepuesto", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("int"); SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id")); b.Property("AnioDesde") .HasColumnType("int"); b.Property("AnioHasta") .HasColumnType("int"); b.Property("Marca") .IsRequired() .HasColumnType("nvarchar(max)"); b.Property("Modelo") .HasColumnType("nvarchar(max)"); b.Property("Notas") .HasColumnType("nvarchar(max)"); b.Property("RepuestoId") .HasColumnType("int"); b.HasKey("Id"); b.HasIndex("RepuestoId"); b.ToTable("CompatibilidadesRepuesto", "inventario"); }); modelBuilder.Entity("ERP.TallerAutomotriz.Domain.Entities.Inventory.MovimientoInventario", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("int"); SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id")); b.Property("AlmacenId") .HasColumnType("int"); b.Property("Cantidad") .HasPrecision(18, 4) .HasColumnType("decimal(18,4)"); b.Property("CostoUnitario") .HasPrecision(18, 4) .HasColumnType("decimal(18,4)"); b.Property("DocumentoReferenciaId") .HasColumnType("int"); b.Property("Fecha") .HasColumnType("datetime2"); b.Property("FechaVencimiento") .HasColumnType("datetime2"); b.Property("Justificacion") .HasColumnType("nvarchar(max)"); b.Property("Lote") .HasColumnType("nvarchar(max)"); b.Property("NumeroDocumento") .HasColumnType("nvarchar(max)"); b.Property("NumeroSerie") .HasColumnType("nvarchar(max)"); b.Property("RepuestoId") .HasColumnType("int"); b.Property("SaldoAnterior") .HasPrecision(18, 4) .HasColumnType("decimal(18,4)"); b.Property("SaldoNuevo") .HasPrecision(18, 4) .HasColumnType("decimal(18,4)"); b.Property("Tipo") .HasColumnType("int"); b.Property("TipoDocumento") .HasColumnType("nvarchar(max)"); b.Property("Usuario") .HasColumnType("nvarchar(max)"); b.HasKey("Id"); b.HasIndex("AlmacenId"); b.HasIndex("RepuestoId"); b.ToTable("MovimientosInventario", "inventario"); }); modelBuilder.Entity("ERP.TallerAutomotriz.Domain.Entities.Inventory.Repuesto", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("int"); SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id")); b.Property("Activo") .HasColumnType("bit"); b.Property("CategoriaId") .HasColumnType("int"); b.Property("CodigoBarras") .HasColumnType("nvarchar(450)"); b.Property("CodigoInterno") .IsRequired() .HasMaxLength(30) .HasColumnType("nvarchar(30)"); b.Property("CodigoOEM") .HasColumnType("nvarchar(450)"); b.Property("CostoPromedio") .HasPrecision(18, 4) .HasColumnType("decimal(18,4)"); b.Property("CostoUltimo") .HasPrecision(18, 4) .HasColumnType("decimal(18,4)"); b.Property("CreadoPor") .HasColumnType("nvarchar(max)"); b.Property("Descripcion") .IsRequired() .HasMaxLength(200) .HasColumnType("nvarchar(200)"); b.Property("DescripcionLarga") .HasColumnType("nvarchar(max)"); b.Property("FechaCreacion") .HasColumnType("datetime2"); b.Property("FechaModificacion") .HasColumnType("datetime2"); b.Property("ManejaLote") .HasColumnType("bit"); b.Property("ManejaSerie") .HasColumnType("bit"); b.Property("MesesGarantia") .HasColumnType("int"); b.Property("MetodoCosteo") .HasColumnType("int"); b.Property("ModificadoPor") .HasColumnType("nvarchar(max)"); b.Property("PrecioVenta") .HasPrecision(18, 2) .HasColumnType("decimal(18,2)"); b.Property("StockActual") .HasPrecision(18, 4) .HasColumnType("decimal(18,4)"); b.Property("StockMaximo") .HasPrecision(18, 4) .HasColumnType("decimal(18,4)"); b.Property("StockMinimo") .HasPrecision(18, 4) .HasColumnType("decimal(18,4)"); b.Property("TieneGarantia") .HasColumnType("bit"); b.Property("Ubicacion") .HasColumnType("nvarchar(max)"); b.Property("UnidadMedida") .IsRequired() .HasColumnType("nvarchar(max)"); b.Property("UrlImagen") .HasColumnType("nvarchar(max)"); b.HasKey("Id"); b.HasIndex("CategoriaId"); b.HasIndex("CodigoBarras"); b.HasIndex("CodigoInterno") .IsUnique(); b.HasIndex("CodigoOEM"); b.ToTable("Repuestos", "inventario"); }); modelBuilder.Entity("ERP.TallerAutomotriz.Domain.Entities.Inventory.StockAlmacen", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("int"); SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id")); b.Property("AlmacenId") .HasColumnType("int"); b.Property("Cantidad") .HasPrecision(18, 4) .HasColumnType("decimal(18,4)"); b.Property("RepuestoId") .HasColumnType("int"); b.Property("Ubicacion") .HasColumnType("nvarchar(max)"); b.HasKey("Id"); b.HasIndex("AlmacenId"); b.HasIndex("RepuestoId", "AlmacenId") .IsUnique(); b.ToTable("StockAlmacenes", "inventario"); }); modelBuilder.Entity("ERP.TallerAutomotriz.Domain.Entities.Personnel.Comision", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("int"); SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id")); b.Property("Fecha") .HasColumnType("datetime2"); b.Property("FechaPago") .HasColumnType("datetime2"); b.Property("MontoBase") .HasPrecision(18, 2) .HasColumnType("decimal(18,2)"); b.Property("MontoComision") .HasPrecision(18, 2) .HasColumnType("decimal(18,2)"); b.Property("OrdenTrabajoId") .HasColumnType("int"); b.Property("Pagada") .HasColumnType("bit"); b.Property("Porcentaje") .HasPrecision(5, 2) .HasColumnType("decimal(5,2)"); b.Property("TecnicoId") .HasColumnType("int"); b.HasKey("Id"); b.HasIndex("TecnicoId"); b.ToTable("Comisiones", "personal"); }); modelBuilder.Entity("ERP.TallerAutomotriz.Domain.Entities.Personnel.RegistroAsistencia", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("int"); SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id")); b.Property("Fecha") .HasColumnType("datetime2"); b.Property("HoraEntrada") .HasColumnType("datetime2"); b.Property("HoraSalida") .HasColumnType("datetime2"); b.Property("HorasExtras") .HasPrecision(5, 2) .HasColumnType("decimal(5,2)"); b.Property("HorasTrabajadas") .HasPrecision(5, 2) .HasColumnType("decimal(5,2)"); b.Property("Observaciones") .HasColumnType("nvarchar(max)"); b.Property("TecnicoId") .HasColumnType("int"); b.HasKey("Id"); b.HasIndex("TecnicoId"); b.ToTable("RegistrosAsistencia", "personal"); }); modelBuilder.Entity("ERP.TallerAutomotriz.Domain.Entities.Personnel.Tecnico", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("int"); SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id")); b.Property("Activo") .HasColumnType("bit"); b.Property("Apellidos") .IsRequired() .HasMaxLength(100) .HasColumnType("nvarchar(100)"); b.Property("Codigo") .IsRequired() .HasMaxLength(20) .HasColumnType("nvarchar(20)"); b.Property("CreadoPor") .HasColumnType("nvarchar(max)"); b.Property("Direccion") .HasColumnType("nvarchar(max)"); b.Property("DocumentoIdentidad") .IsRequired() .HasColumnType("nvarchar(max)"); b.Property("Email") .HasColumnType("nvarchar(max)"); b.Property("Especialidades") .HasColumnType("nvarchar(max)"); b.Property("FechaCreacion") .HasColumnType("datetime2"); b.Property("FechaIngreso") .HasColumnType("datetime2"); b.Property("FechaModificacion") .HasColumnType("datetime2"); b.Property("ModificadoPor") .HasColumnType("nvarchar(max)"); b.Property("Nivel") .HasColumnType("int"); b.Property("Nombres") .IsRequired() .HasMaxLength(100) .HasColumnType("nvarchar(100)"); b.Property("PorcentajeComision") .HasPrecision(5, 2) .HasColumnType("decimal(5,2)"); b.Property("TarifaHora") .HasPrecision(18, 2) .HasColumnType("decimal(18,2)"); b.Property("Telefono") .HasColumnType("nvarchar(max)"); b.Property("UrlFoto") .HasColumnType("nvarchar(max)"); b.Property("UsuarioIdentityId") .HasColumnType("nvarchar(max)"); b.HasKey("Id"); b.HasIndex("Codigo") .IsUnique(); b.ToTable("Tecnicos", "personal"); }); modelBuilder.Entity("ERP.TallerAutomotriz.Domain.Entities.Purchases.CuentaPagar", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("int"); SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id")); b.Property("Activo") .HasColumnType("bit"); b.Property("CreadoPor") .HasColumnType("nvarchar(max)"); b.Property("Estado") .HasColumnType("int"); b.Property("FechaCreacion") .HasColumnType("datetime2"); b.Property("FechaEmision") .HasColumnType("datetime2"); b.Property("FechaModificacion") .HasColumnType("datetime2"); b.Property("FechaVencimiento") .HasColumnType("datetime2"); b.Property("ModificadoPor") .HasColumnType("nvarchar(max)"); b.Property("Monto") .HasPrecision(18, 2) .HasColumnType("decimal(18,2)"); b.Property("MontoPagado") .HasPrecision(18, 2) .HasColumnType("decimal(18,2)"); b.Property("NumeroFactura") .IsRequired() .HasColumnType("nvarchar(max)"); b.Property("Observaciones") .HasColumnType("nvarchar(max)"); b.Property("OrdenCompraId") .HasColumnType("int"); b.Property("ProveedorId") .HasColumnType("int"); b.Property("Saldo") .HasPrecision(18, 2) .HasColumnType("decimal(18,2)"); b.HasKey("Id"); b.HasIndex("OrdenCompraId"); b.HasIndex("ProveedorId"); b.ToTable("CuentasPagar", "compras"); }); modelBuilder.Entity("ERP.TallerAutomotriz.Domain.Entities.Purchases.DetalleOrdenCompra", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("int"); SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id")); b.Property("Cantidad") .HasPrecision(18, 4) .HasColumnType("decimal(18,4)"); b.Property("CantidadRecibida") .HasPrecision(18, 4) .HasColumnType("decimal(18,4)"); b.Property("Descuento") .HasPrecision(18, 2) .HasColumnType("decimal(18,2)"); b.Property("OrdenCompraId") .HasColumnType("int"); b.Property("PrecioUnitario") .HasPrecision(18, 2) .HasColumnType("decimal(18,2)"); b.Property("RepuestoId") .HasColumnType("int"); b.Property("Subtotal") .HasPrecision(18, 2) .HasColumnType("decimal(18,2)"); b.HasKey("Id"); b.HasIndex("OrdenCompraId"); b.HasIndex("RepuestoId"); b.ToTable("DetallesOrdenCompra", "compras"); }); modelBuilder.Entity("ERP.TallerAutomotriz.Domain.Entities.Purchases.OrdenCompra", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("int"); SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id")); b.Property("Activo") .HasColumnType("bit"); b.Property("AlmacenDestinoId") .HasColumnType("int"); b.Property("AprobadaPor") .HasColumnType("nvarchar(max)"); b.Property("CreadoPor") .HasColumnType("nvarchar(max)"); b.Property("Estado") .HasColumnType("int"); b.Property("Fecha") .HasColumnType("datetime2"); b.Property("FechaAprobacion") .HasColumnType("datetime2"); b.Property("FechaCreacion") .HasColumnType("datetime2"); b.Property("FechaEntregaEsperada") .HasColumnType("datetime2"); b.Property("FechaModificacion") .HasColumnType("datetime2"); b.Property("Impuesto") .HasPrecision(18, 2) .HasColumnType("decimal(18,2)"); b.Property("ModificadoPor") .HasColumnType("nvarchar(max)"); b.Property("Numero") .IsRequired() .HasMaxLength(20) .HasColumnType("nvarchar(20)"); b.Property("Observaciones") .HasColumnType("nvarchar(max)"); b.Property("ProveedorId") .HasColumnType("int"); b.Property("Subtotal") .HasPrecision(18, 2) .HasColumnType("decimal(18,2)"); b.Property("Total") .HasPrecision(18, 2) .HasColumnType("decimal(18,2)"); b.HasKey("Id"); b.HasIndex("AlmacenDestinoId"); b.HasIndex("Numero") .IsUnique(); b.HasIndex("ProveedorId"); b.ToTable("OrdenesCompra", "compras"); }); modelBuilder.Entity("ERP.TallerAutomotriz.Domain.Entities.Purchases.Proveedor", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("int"); SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id")); b.Property("Activo") .HasColumnType("bit"); b.Property("CalificacionCalidad") .HasPrecision(3, 1) .HasColumnType("decimal(3,1)"); b.Property("CalificacionPrecio") .HasPrecision(3, 1) .HasColumnType("decimal(3,1)"); b.Property("CalificacionTiempo") .HasPrecision(3, 1) .HasColumnType("decimal(3,1)"); b.Property("Codigo") .IsRequired() .HasMaxLength(20) .HasColumnType("nvarchar(20)"); b.Property("Contacto") .HasColumnType("nvarchar(max)"); b.Property("CreadoPor") .HasColumnType("nvarchar(max)"); b.Property("DiasCredito") .HasColumnType("int"); b.Property("DiasEntrega") .HasColumnType("int"); b.Property("Direccion") .HasColumnType("nvarchar(max)"); b.Property("DocumentoIdentidad") .IsRequired() .HasColumnType("nvarchar(max)"); b.Property("Email") .HasColumnType("nvarchar(max)"); b.Property("FechaCreacion") .HasColumnType("datetime2"); b.Property("FechaModificacion") .HasColumnType("datetime2"); b.Property("ModificadoPor") .HasColumnType("nvarchar(max)"); b.Property("NombreComercial") .HasColumnType("nvarchar(max)"); b.Property("Notas") .HasColumnType("nvarchar(max)"); b.Property("RazonSocial") .IsRequired() .HasMaxLength(200) .HasColumnType("nvarchar(200)"); b.Property("Telefono") .HasColumnType("nvarchar(max)"); b.HasKey("Id"); b.HasIndex("Codigo") .IsUnique(); b.ToTable("Proveedores", "compras"); }); modelBuilder.Entity("ERP.TallerAutomotriz.Domain.Entities.Sales.Caja", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("int"); SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id")); b.Property("Abierta") .HasColumnType("bit"); b.Property("Activo") .HasColumnType("bit"); b.Property("Codigo") .IsRequired() .HasMaxLength(20) .HasColumnType("nvarchar(20)"); b.Property("CreadoPor") .HasColumnType("nvarchar(max)"); b.Property("FechaApertura") .HasColumnType("datetime2"); b.Property("FechaCierre") .HasColumnType("datetime2"); b.Property("FechaCreacion") .HasColumnType("datetime2"); b.Property("FechaModificacion") .HasColumnType("datetime2"); b.Property("ModificadoPor") .HasColumnType("nvarchar(max)"); b.Property("MontoApertura") .HasPrecision(18, 2) .HasColumnType("decimal(18,2)"); b.Property("MontoCierre") .HasPrecision(18, 2) .HasColumnType("decimal(18,2)"); b.Property("Nombre") .IsRequired() .HasMaxLength(100) .HasColumnType("nvarchar(100)"); b.Property("Observaciones") .HasColumnType("nvarchar(max)"); b.Property("UsuarioApertura") .HasColumnType("nvarchar(max)"); b.Property("UsuarioCierre") .HasColumnType("nvarchar(max)"); b.HasKey("Id"); b.HasIndex("Codigo") .IsUnique(); b.ToTable("Cajas", "ventas"); }); modelBuilder.Entity("ERP.TallerAutomotriz.Domain.Entities.Sales.Cotizacion", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("int"); SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id")); b.Property("Activo") .HasColumnType("bit"); b.Property("AprobadaPor") .HasColumnType("nvarchar(max)"); b.Property("ClienteId") .HasColumnType("int"); b.Property("CreadoPor") .HasColumnType("nvarchar(max)"); b.Property("Estado") .IsRequired() .HasColumnType("nvarchar(max)"); b.Property("Fecha") .HasColumnType("datetime2"); b.Property("FechaAprobacion") .HasColumnType("datetime2"); b.Property("FechaCreacion") .HasColumnType("datetime2"); b.Property("FechaModificacion") .HasColumnType("datetime2"); b.Property("Impuesto") .HasPrecision(18, 2) .HasColumnType("decimal(18,2)"); b.Property("ModificadoPor") .HasColumnType("nvarchar(max)"); b.Property("Numero") .IsRequired() .HasMaxLength(20) .HasColumnType("nvarchar(20)"); b.Property("Observaciones") .HasColumnType("nvarchar(max)"); b.Property("OrdenTrabajoId") .HasColumnType("int"); b.Property("Subtotal") .HasPrecision(18, 2) .HasColumnType("decimal(18,2)"); b.Property("Total") .HasPrecision(18, 2) .HasColumnType("decimal(18,2)"); b.Property("ValidaHasta") .HasColumnType("datetime2"); b.HasKey("Id"); b.HasIndex("ClienteId"); b.HasIndex("Numero") .IsUnique(); b.HasIndex("OrdenTrabajoId"); b.ToTable("Cotizaciones", "ventas"); }); modelBuilder.Entity("ERP.TallerAutomotriz.Domain.Entities.Sales.DetalleCotizacion", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("int"); SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id")); b.Property("Cantidad") .HasPrecision(18, 4) .HasColumnType("decimal(18,4)"); b.Property("CotizacionId") .HasColumnType("int"); b.Property("Descripcion") .IsRequired() .HasColumnType("nvarchar(max)"); b.Property("PrecioUnitario") .HasPrecision(18, 2) .HasColumnType("decimal(18,2)"); b.Property("Subtotal") .HasPrecision(18, 2) .HasColumnType("decimal(18,2)"); b.Property("Tipo") .IsRequired() .HasColumnType("nvarchar(max)"); b.HasKey("Id"); b.HasIndex("CotizacionId"); b.ToTable("DetallesCotizacion", "ventas"); }); modelBuilder.Entity("ERP.TallerAutomotriz.Domain.Entities.Sales.DetalleFactura", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("int"); SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id")); b.Property("Cantidad") .HasPrecision(18, 4) .HasColumnType("decimal(18,4)"); b.Property("CodigoItem") .HasColumnType("nvarchar(max)"); b.Property("Descripcion") .IsRequired() .HasColumnType("nvarchar(max)"); b.Property("Descuento") .HasPrecision(18, 2) .HasColumnType("decimal(18,2)"); b.Property("FacturaId") .HasColumnType("int"); b.Property("PrecioUnitario") .HasPrecision(18, 2) .HasColumnType("decimal(18,2)"); b.Property("Subtotal") .HasPrecision(18, 2) .HasColumnType("decimal(18,2)"); b.Property("Tipo") .IsRequired() .HasColumnType("nvarchar(max)"); b.HasKey("Id"); b.HasIndex("FacturaId"); b.ToTable("DetallesFactura", "ventas"); }); modelBuilder.Entity("ERP.TallerAutomotriz.Domain.Entities.Sales.Factura", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("int"); SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id")); b.Property("Activo") .HasColumnType("bit"); b.Property("BaseImponible") .HasPrecision(18, 2) .HasColumnType("decimal(18,2)"); b.Property("ClienteId") .HasColumnType("int"); b.Property("CreadoPor") .HasColumnType("nvarchar(max)"); b.Property("Descuento") .HasPrecision(18, 2) .HasColumnType("decimal(18,2)"); b.Property("Estado") .HasColumnType("int"); b.Property("Fecha") .HasColumnType("datetime2"); b.Property("FechaCreacion") .HasColumnType("datetime2"); b.Property("FechaModificacion") .HasColumnType("datetime2"); b.Property("FechaVencimiento") .HasColumnType("datetime2"); b.Property("Impuesto") .HasPrecision(18, 2) .HasColumnType("decimal(18,2)"); b.Property("ModificadoPor") .HasColumnType("nvarchar(max)"); b.Property("MontoPagado") .HasPrecision(18, 2) .HasColumnType("decimal(18,2)"); b.Property("Numero") .IsRequired() .HasMaxLength(20) .HasColumnType("nvarchar(20)"); b.Property("Observaciones") .HasColumnType("nvarchar(max)"); b.Property("OrdenTrabajoId") .HasColumnType("int"); b.Property("PorcentajeImpuesto") .HasPrecision(5, 2) .HasColumnType("decimal(5,2)"); b.Property("SaldoPendiente") .HasPrecision(18, 2) .HasColumnType("decimal(18,2)"); b.Property("Serie") .IsRequired() .HasMaxLength(10) .HasColumnType("nvarchar(10)"); b.Property("Subtotal") .HasPrecision(18, 2) .HasColumnType("decimal(18,2)"); b.Property("Tipo") .HasColumnType("int"); b.Property("Total") .HasPrecision(18, 2) .HasColumnType("decimal(18,2)"); b.Property("UrlPdf") .HasColumnType("nvarchar(max)"); b.HasKey("Id"); b.HasIndex("ClienteId"); b.HasIndex("OrdenTrabajoId"); b.HasIndex("Serie", "Numero") .IsUnique(); b.ToTable("Facturas", "ventas"); }); modelBuilder.Entity("ERP.TallerAutomotriz.Domain.Entities.Sales.Pago", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("int"); SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id")); b.Property("Activo") .HasColumnType("bit"); b.Property("CajaId") .HasColumnType("int"); b.Property("CreadoPor") .HasColumnType("nvarchar(max)"); b.Property("FacturaId") .HasColumnType("int"); b.Property("Fecha") .HasColumnType("datetime2"); b.Property("FechaCreacion") .HasColumnType("datetime2"); b.Property("FechaModificacion") .HasColumnType("datetime2"); b.Property("FormaPago") .HasColumnType("int"); b.Property("ModificadoPor") .HasColumnType("nvarchar(max)"); b.Property("Monto") .HasPrecision(18, 2) .HasColumnType("decimal(18,2)"); b.Property("NumeroReferencia") .HasColumnType("nvarchar(max)"); b.Property("Observaciones") .HasColumnType("nvarchar(max)"); b.HasKey("Id"); b.HasIndex("CajaId"); b.HasIndex("FacturaId"); b.ToTable("Pagos", "ventas"); }); modelBuilder.Entity("ERP.TallerAutomotriz.Domain.Entities.System.Empresa", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("int"); SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id")); b.Property("Activo") .HasColumnType("bit"); b.Property("CreadoPor") .HasColumnType("nvarchar(max)"); b.Property("Direccion") .HasColumnType("nvarchar(max)"); b.Property("DocumentoFiscal") .IsRequired() .HasColumnType("nvarchar(max)"); b.Property("Email") .HasColumnType("nvarchar(max)"); b.Property("FechaCreacion") .HasColumnType("datetime2"); b.Property("FechaModificacion") .HasColumnType("datetime2"); b.Property("ModificadoPor") .HasColumnType("nvarchar(max)"); b.Property("Moneda") .IsRequired() .HasColumnType("nvarchar(max)"); b.Property("NombreComercial") .HasColumnType("nvarchar(max)"); b.Property("NombreImpuesto") .IsRequired() .HasColumnType("nvarchar(max)"); b.Property("Pais") .IsRequired() .HasColumnType("nvarchar(max)"); b.Property("PorcentajeImpuesto") .HasPrecision(5, 2) .HasColumnType("decimal(5,2)"); b.Property("RazonSocial") .IsRequired() .HasMaxLength(200) .HasColumnType("nvarchar(200)"); b.Property("SimboloMoneda") .IsRequired() .HasColumnType("nvarchar(max)"); b.Property("Sitio") .HasColumnType("nvarchar(max)"); b.Property("Telefono") .HasColumnType("nvarchar(max)"); b.Property("UrlLogo") .HasColumnType("nvarchar(max)"); b.HasKey("Id"); b.ToTable("Empresas", "sistema"); }); modelBuilder.Entity("ERP.TallerAutomotriz.Domain.Entities.System.LogAuditoria", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("int"); SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id")); b.Property("Accion") .IsRequired() .HasMaxLength(50) .HasColumnType("nvarchar(50)"); b.Property("Detalle") .HasColumnType("nvarchar(max)"); b.Property("Entidad") .IsRequired() .HasMaxLength(100) .HasColumnType("nvarchar(100)"); b.Property("EntidadId") .HasColumnType("nvarchar(max)"); b.Property("Fecha") .HasColumnType("datetime2"); b.Property("IpOrigen") .HasColumnType("nvarchar(max)"); b.Property("Usuario") .IsRequired() .HasMaxLength(100) .HasColumnType("nvarchar(100)"); b.HasKey("Id"); b.HasIndex("Fecha"); b.ToTable("LogsAuditoria", "sistema"); }); modelBuilder.Entity("ERP.TallerAutomotriz.Domain.Entities.System.NotificacionEnviada", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("int"); SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id")); b.Property("Asunto") .HasColumnType("nvarchar(max)"); b.Property("Cuerpo") .HasColumnType("nvarchar(max)"); b.Property("Destinatario") .HasColumnType("nvarchar(max)"); b.Property("Enviada") .HasColumnType("bit"); b.Property("Error") .HasColumnType("nvarchar(max)"); b.Property("Fecha") .HasColumnType("datetime2"); b.Property("PlantillaCodigo") .HasColumnType("nvarchar(max)"); b.Property("ReferenciaId") .HasColumnType("int"); b.Property("ReferenciaTipo") .HasColumnType("nvarchar(max)"); b.Property("Tipo") .HasColumnType("int"); b.HasKey("Id"); b.HasIndex("Fecha"); b.ToTable("NotificacionesEnviadas", "sistema"); }); modelBuilder.Entity("ERP.TallerAutomotriz.Domain.Entities.System.ParametroSistema", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("int"); SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id")); b.Property("Activo") .HasColumnType("bit"); b.Property("Categoria") .IsRequired() .HasColumnType("nvarchar(max)"); b.Property("Clave") .IsRequired() .HasMaxLength(100) .HasColumnType("nvarchar(100)"); b.Property("CreadoPor") .HasColumnType("nvarchar(max)"); b.Property("Descripcion") .HasColumnType("nvarchar(max)"); b.Property("FechaCreacion") .HasColumnType("datetime2"); b.Property("FechaModificacion") .HasColumnType("datetime2"); b.Property("ModificadoPor") .HasColumnType("nvarchar(max)"); b.Property("Valor") .IsRequired() .HasMaxLength(500) .HasColumnType("nvarchar(500)"); b.HasKey("Id"); b.HasIndex("Clave") .IsUnique(); b.ToTable("Parametros", "sistema"); }); modelBuilder.Entity("ERP.TallerAutomotriz.Domain.Entities.System.PlantillaNotificacion", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("int"); SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id")); b.Property("Activo") .HasColumnType("bit"); b.Property("Asunto") .IsRequired() .HasMaxLength(200) .HasColumnType("nvarchar(200)"); b.Property("Codigo") .IsRequired() .HasMaxLength(50) .HasColumnType("nvarchar(50)"); b.Property("CreadoPor") .HasColumnType("nvarchar(max)"); b.Property("Cuerpo") .IsRequired() .HasColumnType("nvarchar(max)"); b.Property("FechaCreacion") .HasColumnType("datetime2"); b.Property("FechaModificacion") .HasColumnType("datetime2"); b.Property("ModificadoPor") .HasColumnType("nvarchar(max)"); b.Property("Nombre") .IsRequired() .HasMaxLength(150) .HasColumnType("nvarchar(150)"); b.Property("Tipo") .HasColumnType("int"); b.Property("Variables") .HasColumnType("nvarchar(max)"); b.HasKey("Id"); b.HasIndex("Codigo") .IsUnique(); b.ToTable("PlantillasNotificacion", "sistema"); }); modelBuilder.Entity("ERP.TallerAutomotriz.Domain.Entities.System.Sucursal", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("int"); SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id")); b.Property("Activo") .HasColumnType("bit"); b.Property("Codigo") .IsRequired() .HasMaxLength(20) .HasColumnType("nvarchar(20)"); b.Property("CreadoPor") .HasColumnType("nvarchar(max)"); b.Property("Direccion") .HasColumnType("nvarchar(max)"); b.Property("EsPrincipal") .HasColumnType("bit"); b.Property("FechaCreacion") .HasColumnType("datetime2"); b.Property("FechaModificacion") .HasColumnType("datetime2"); b.Property("ModificadoPor") .HasColumnType("nvarchar(max)"); b.Property("Nombre") .IsRequired() .HasMaxLength(100) .HasColumnType("nvarchar(100)"); b.Property("Responsable") .HasColumnType("nvarchar(max)"); b.Property("Telefono") .HasColumnType("nvarchar(max)"); b.HasKey("Id"); b.HasIndex("Codigo") .IsUnique(); b.ToTable("Sucursales", "sistema"); }); modelBuilder.Entity("ERP.TallerAutomotriz.Domain.Entities.Workshop.CategoriaServicio", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("int"); SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id")); b.Property("Activo") .HasColumnType("bit"); b.Property("CategoriaPadreId") .HasColumnType("int"); b.Property("CreadoPor") .HasColumnType("nvarchar(max)"); b.Property("Descripcion") .HasColumnType("nvarchar(max)"); b.Property("FechaCreacion") .HasColumnType("datetime2"); b.Property("FechaModificacion") .HasColumnType("datetime2"); b.Property("ModificadoPor") .HasColumnType("nvarchar(max)"); b.Property("Nombre") .IsRequired() .HasMaxLength(100) .HasColumnType("nvarchar(100)"); b.HasKey("Id"); b.HasIndex("CategoriaPadreId"); b.ToTable("CategoriasServicio", "taller"); }); modelBuilder.Entity("ERP.TallerAutomotriz.Domain.Entities.Workshop.ChecklistInspeccion", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("int"); SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id")); b.Property("Estado") .IsRequired() .HasColumnType("nvarchar(max)"); b.Property("Item") .IsRequired() .HasColumnType("nvarchar(max)"); b.Property("Observacion") .HasColumnType("nvarchar(max)"); b.Property("OrdenTrabajoId") .HasColumnType("int"); b.HasKey("Id"); b.HasIndex("OrdenTrabajoId"); b.ToTable("ChecklistInspeccion", "taller"); }); modelBuilder.Entity("ERP.TallerAutomotriz.Domain.Entities.Workshop.Cita", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("int"); SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id")); b.Property("Activo") .HasColumnType("bit"); b.Property("ClienteId") .HasColumnType("int"); b.Property("Comentarios") .HasColumnType("nvarchar(max)"); b.Property("ConfirmacionEnviada") .HasColumnType("bit"); b.Property("CreadoPor") .HasColumnType("nvarchar(max)"); b.Property("DuracionMinutos") .HasColumnType("int"); b.Property("Estado") .HasColumnType("int"); b.Property("FechaCreacion") .HasColumnType("datetime2"); b.Property("FechaHora") .HasColumnType("datetime2"); b.Property("FechaModificacion") .HasColumnType("datetime2"); b.Property("ModificadoPor") .HasColumnType("nvarchar(max)"); b.Property("OrdenTrabajoId") .HasColumnType("int"); b.Property("RecordatorioEnviado") .HasColumnType("bit"); b.Property("ServicioId") .HasColumnType("int"); b.Property("TecnicoPreferidoId") .HasColumnType("int"); b.Property("VehiculoId") .HasColumnType("int"); b.HasKey("Id"); b.HasIndex("ClienteId"); b.HasIndex("OrdenTrabajoId"); b.HasIndex("ServicioId"); b.HasIndex("TecnicoPreferidoId"); b.HasIndex("VehiculoId"); b.ToTable("Citas", "taller"); }); modelBuilder.Entity("ERP.TallerAutomotriz.Domain.Entities.Workshop.ControlCalidad", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("int"); SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id")); b.Property("Activo") .HasColumnType("bit"); b.Property("CreadoPor") .HasColumnType("nvarchar(max)"); b.Property("Estado") .HasColumnType("int"); b.Property("FechaCreacion") .HasColumnType("datetime2"); b.Property("FechaInspeccion") .HasColumnType("datetime2"); b.Property("FechaModificacion") .HasColumnType("datetime2"); b.Property("InspectorId") .HasColumnType("nvarchar(max)"); b.Property("KilometrajeRegreso") .HasColumnType("int"); b.Property("KilometrajeSalida") .HasColumnType("int"); b.Property("ModificadoPor") .HasColumnType("nvarchar(max)"); b.Property("Observaciones") .HasColumnType("nvarchar(max)"); b.Property("OrdenTrabajoId") .HasColumnType("int"); b.Property("PruebaRutaRealizada") .HasColumnType("bit"); b.HasKey("Id"); b.HasIndex("OrdenTrabajoId"); b.ToTable("ControlesCalidad", "taller"); }); modelBuilder.Entity("ERP.TallerAutomotriz.Domain.Entities.Workshop.DetalleOTRepuesto", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("int"); SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id")); b.Property("Cantidad") .HasPrecision(18, 4) .HasColumnType("decimal(18,4)"); b.Property("CostoUnitario") .HasPrecision(18, 2) .HasColumnType("decimal(18,2)"); b.Property("Descuento") .HasPrecision(18, 2) .HasColumnType("decimal(18,2)"); b.Property("Entregado") .HasColumnType("bit"); b.Property("FechaConsumo") .HasColumnType("datetime2"); b.Property("Notas") .HasColumnType("nvarchar(max)"); b.Property("OrdenTrabajoId") .HasColumnType("int"); b.Property("PrecioUnitario") .HasPrecision(18, 2) .HasColumnType("decimal(18,2)"); b.Property("RepuestoId") .HasColumnType("int"); b.Property("Subtotal") .HasPrecision(18, 2) .HasColumnType("decimal(18,2)"); b.HasKey("Id"); b.HasIndex("OrdenTrabajoId"); b.HasIndex("RepuestoId"); b.ToTable("DetalleOTRepuestos", "taller"); }); modelBuilder.Entity("ERP.TallerAutomotriz.Domain.Entities.Workshop.DetalleOTServicio", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("int"); SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id")); b.Property("Cantidad") .HasColumnType("int"); b.Property("Completado") .HasColumnType("bit"); b.Property("Descripcion") .HasColumnType("nvarchar(max)"); b.Property("Descuento") .HasPrecision(18, 2) .HasColumnType("decimal(18,2)"); b.Property("FechaFin") .HasColumnType("datetime2"); b.Property("FechaInicio") .HasColumnType("datetime2"); b.Property("Notas") .HasColumnType("nvarchar(max)"); b.Property("OrdenTrabajoId") .HasColumnType("int"); b.Property("PrecioUnitario") .HasPrecision(18, 2) .HasColumnType("decimal(18,2)"); b.Property("ServicioId") .HasColumnType("int"); b.Property("Subtotal") .HasPrecision(18, 2) .HasColumnType("decimal(18,2)"); b.Property("TecnicoId") .HasColumnType("int"); b.Property("TiempoRealMinutos") .HasColumnType("int"); b.HasKey("Id"); b.HasIndex("OrdenTrabajoId"); b.HasIndex("ServicioId"); b.HasIndex("TecnicoId"); b.ToTable("DetalleOTServicios", "taller"); }); modelBuilder.Entity("ERP.TallerAutomotriz.Domain.Entities.Workshop.FotoOT", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("int"); SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id")); b.Property("CapturadoPor") .HasColumnType("nvarchar(max)"); b.Property("Categoria") .IsRequired() .HasColumnType("nvarchar(max)"); b.Property("Descripcion") .HasColumnType("nvarchar(max)"); b.Property("FechaCaptura") .HasColumnType("datetime2"); b.Property("OrdenTrabajoId") .HasColumnType("int"); b.Property("Url") .IsRequired() .HasColumnType("nvarchar(max)"); b.HasKey("Id"); b.HasIndex("OrdenTrabajoId"); b.ToTable("FotosOT", "taller"); }); modelBuilder.Entity("ERP.TallerAutomotriz.Domain.Entities.Workshop.HistorialEstadoOT", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("int"); SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id")); b.Property("Comentario") .HasColumnType("nvarchar(max)"); b.Property("EstadoAnterior") .HasColumnType("int"); b.Property("EstadoNuevo") .HasColumnType("int"); b.Property("Fecha") .HasColumnType("datetime2"); b.Property("OrdenTrabajoId") .HasColumnType("int"); b.Property("Usuario") .HasColumnType("nvarchar(max)"); b.HasKey("Id"); b.HasIndex("OrdenTrabajoId"); b.ToTable("HistorialEstadoOT", "taller"); }); modelBuilder.Entity("ERP.TallerAutomotriz.Domain.Entities.Workshop.OrdenTrabajo", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("int"); SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id")); b.Property("Activo") .HasColumnType("bit"); b.Property("AprobadoPor") .HasColumnType("nvarchar(max)"); b.Property("ClienteId") .HasColumnType("int"); b.Property("CodigoQR") .HasColumnType("nvarchar(max)"); b.Property("CreadoPor") .HasColumnType("nvarchar(max)"); b.Property("Descuento") .HasPrecision(18, 2) .HasColumnType("decimal(18,2)"); b.Property("Estado") .HasColumnType("int"); b.Property("FallasReportadasCliente") .HasColumnType("nvarchar(max)"); b.Property("FechaAprobacionPresupuesto") .HasColumnType("datetime2"); b.Property("FechaCreacion") .HasColumnType("datetime2"); b.Property("FechaEntregaEstimada") .HasColumnType("datetime2"); b.Property("FechaEntregaReal") .HasColumnType("datetime2"); b.Property("FechaIngreso") .HasColumnType("datetime2"); b.Property("FechaModificacion") .HasColumnType("datetime2"); b.Property("Impuesto") .HasPrecision(18, 2) .HasColumnType("decimal(18,2)"); b.Property("KilometrajeIngreso") .HasColumnType("int"); b.Property("ModificadoPor") .HasColumnType("nvarchar(max)"); b.Property("Numero") .IsRequired() .HasMaxLength(20) .HasColumnType("nvarchar(20)"); b.Property("ObservacionesIngreso") .HasColumnType("nvarchar(max)"); b.Property("PresupuestoAprobado") .HasColumnType("bit"); b.Property("Prioridad") .HasColumnType("int"); b.Property("SintomasDiagnosticados") .HasColumnType("nvarchar(max)"); b.Property("SubtotalManoObra") .HasPrecision(18, 2) .HasColumnType("decimal(18,2)"); b.Property("SubtotalRepuestos") .HasPrecision(18, 2) .HasColumnType("decimal(18,2)"); b.Property("SubtotalServiciosExternos") .HasPrecision(18, 2) .HasColumnType("decimal(18,2)"); b.Property("TecnicoPrincipalId") .HasColumnType("int"); b.Property("Total") .HasPrecision(18, 2) .HasColumnType("decimal(18,2)"); b.Property("VehiculoId") .HasColumnType("int"); b.HasKey("Id"); b.HasIndex("ClienteId"); b.HasIndex("Numero") .IsUnique(); b.HasIndex("TecnicoPrincipalId"); b.HasIndex("VehiculoId"); b.ToTable("OrdenesTrabajo", "taller"); }); modelBuilder.Entity("ERP.TallerAutomotriz.Domain.Entities.Workshop.Servicio", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("int"); SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id")); b.Property("Activo") .HasColumnType("bit"); b.Property("CategoriaId") .HasColumnType("int"); b.Property("Codigo") .IsRequired() .HasMaxLength(20) .HasColumnType("nvarchar(20)"); b.Property("CostoManoObra") .HasPrecision(18, 2) .HasColumnType("decimal(18,2)"); b.Property("CreadoPor") .HasColumnType("nvarchar(max)"); b.Property("Descripcion") .HasColumnType("nvarchar(max)"); b.Property("EsPaquete") .HasColumnType("bit"); b.Property("FechaCreacion") .HasColumnType("datetime2"); b.Property("FechaModificacion") .HasColumnType("datetime2"); b.Property("ModificadoPor") .HasColumnType("nvarchar(max)"); b.Property("Nombre") .IsRequired() .HasMaxLength(200) .HasColumnType("nvarchar(200)"); b.Property("Notas") .HasColumnType("nvarchar(max)"); b.Property("PrecioEstandar") .HasPrecision(18, 2) .HasColumnType("decimal(18,2)"); b.Property("TiempoEstimadoMinutos") .HasColumnType("int"); b.Property("Tipo") .HasColumnType("int"); b.HasKey("Id"); b.HasIndex("CategoriaId"); b.HasIndex("Codigo") .IsUnique(); b.ToTable("Servicios", "taller"); }); modelBuilder.Entity("ERP.TallerAutomotriz.Domain.Entities.Workshop.TecnicoOT", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("int"); SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id")); b.Property("FechaAsignacion") .HasColumnType("datetime2"); b.Property("OrdenTrabajoId") .HasColumnType("int"); b.Property("Rol") .HasColumnType("nvarchar(max)"); b.Property("TecnicoId") .HasColumnType("int"); b.HasKey("Id"); b.HasIndex("OrdenTrabajoId"); b.HasIndex("TecnicoId"); b.ToTable("TecnicosOT", "taller"); }); modelBuilder.Entity("ERP.TallerAutomotriz.Infrastructure.Identity.ApplicationRole", b => { b.Property("Id") .HasColumnType("nvarchar(450)"); b.Property("ConcurrencyStamp") .IsConcurrencyToken() .HasColumnType("nvarchar(max)"); b.Property("Descripcion") .HasColumnType("nvarchar(max)"); b.Property("Name") .HasMaxLength(256) .HasColumnType("nvarchar(256)"); b.Property("NormalizedName") .HasMaxLength(256) .HasColumnType("nvarchar(256)"); b.HasKey("Id"); b.HasIndex("NormalizedName") .IsUnique() .HasDatabaseName("RoleNameIndex") .HasFilter("[NormalizedName] IS NOT NULL"); b.ToTable("Roles", "seguridad"); }); modelBuilder.Entity("ERP.TallerAutomotriz.Infrastructure.Identity.ApplicationUser", b => { b.Property("Id") .HasColumnType("nvarchar(450)"); b.Property("AccessFailedCount") .HasColumnType("int"); b.Property("Activo") .HasColumnType("bit"); b.Property("Apellidos") .HasColumnType("nvarchar(max)"); b.Property("ConcurrencyStamp") .IsConcurrencyToken() .HasColumnType("nvarchar(max)"); b.Property("Email") .HasMaxLength(256) .HasColumnType("nvarchar(256)"); b.Property("EmailConfirmed") .HasColumnType("bit"); b.Property("FechaCreacion") .HasColumnType("datetime2"); b.Property("LockoutEnabled") .HasColumnType("bit"); b.Property("LockoutEnd") .HasColumnType("datetimeoffset"); b.Property("Nombres") .HasColumnType("nvarchar(max)"); b.Property("NormalizedEmail") .HasMaxLength(256) .HasColumnType("nvarchar(256)"); b.Property("NormalizedUserName") .HasMaxLength(256) .HasColumnType("nvarchar(256)"); b.Property("PasswordHash") .HasColumnType("nvarchar(max)"); b.Property("PhoneNumber") .HasColumnType("nvarchar(max)"); b.Property("PhoneNumberConfirmed") .HasColumnType("bit"); b.Property("SecurityStamp") .HasColumnType("nvarchar(max)"); b.Property("SucursalId") .HasColumnType("int"); b.Property("TecnicoId") .HasColumnType("int"); b.Property("TwoFactorEnabled") .HasColumnType("bit"); b.Property("UltimoAcceso") .HasColumnType("datetime2"); b.Property("UrlAvatar") .HasColumnType("nvarchar(max)"); b.Property("UserName") .HasMaxLength(256) .HasColumnType("nvarchar(256)"); b.HasKey("Id"); b.HasIndex("NormalizedEmail") .HasDatabaseName("EmailIndex"); b.HasIndex("NormalizedUserName") .IsUnique() .HasDatabaseName("UserNameIndex") .HasFilter("[NormalizedUserName] IS NOT NULL"); b.ToTable("Usuarios", "seguridad"); }); modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityRoleClaim", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("int"); SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id")); b.Property("ClaimType") .HasColumnType("nvarchar(max)"); b.Property("ClaimValue") .HasColumnType("nvarchar(max)"); b.Property("RoleId") .IsRequired() .HasColumnType("nvarchar(450)"); b.HasKey("Id"); b.HasIndex("RoleId"); b.ToTable("RolesClaims", "seguridad"); }); modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityUserClaim", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("int"); SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id")); b.Property("ClaimType") .HasColumnType("nvarchar(max)"); b.Property("ClaimValue") .HasColumnType("nvarchar(max)"); b.Property("UserId") .IsRequired() .HasColumnType("nvarchar(450)"); b.HasKey("Id"); b.HasIndex("UserId"); b.ToTable("UsuariosClaims", "seguridad"); }); modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityUserLogin", b => { b.Property("LoginProvider") .HasColumnType("nvarchar(450)"); b.Property("ProviderKey") .HasColumnType("nvarchar(450)"); b.Property("ProviderDisplayName") .HasColumnType("nvarchar(max)"); b.Property("UserId") .IsRequired() .HasColumnType("nvarchar(450)"); b.HasKey("LoginProvider", "ProviderKey"); b.HasIndex("UserId"); b.ToTable("UsuariosLogins", "seguridad"); }); modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityUserRole", b => { b.Property("UserId") .HasColumnType("nvarchar(450)"); b.Property("RoleId") .HasColumnType("nvarchar(450)"); b.HasKey("UserId", "RoleId"); b.HasIndex("RoleId"); b.ToTable("UsuariosRoles", "seguridad"); }); modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityUserToken", b => { b.Property("UserId") .HasColumnType("nvarchar(450)"); b.Property("LoginProvider") .HasColumnType("nvarchar(450)"); b.Property("Name") .HasColumnType("nvarchar(450)"); b.Property("Value") .HasColumnType("nvarchar(max)"); b.HasKey("UserId", "LoginProvider", "Name"); b.ToTable("UsuariosTokens", "seguridad"); }); modelBuilder.Entity("ERP.TallerAutomotriz.Domain.Entities.Customers.Vehiculo", b => { b.HasOne("ERP.TallerAutomotriz.Domain.Entities.Customers.Cliente", "Cliente") .WithMany("Vehiculos") .HasForeignKey("ClienteId") .OnDelete(DeleteBehavior.Restrict) .IsRequired(); b.Navigation("Cliente"); }); modelBuilder.Entity("ERP.TallerAutomotriz.Domain.Entities.Inventory.CategoriaRepuesto", b => { b.HasOne("ERP.TallerAutomotriz.Domain.Entities.Inventory.CategoriaRepuesto", "CategoriaPadre") .WithMany() .HasForeignKey("CategoriaPadreId") .OnDelete(DeleteBehavior.Restrict); b.Navigation("CategoriaPadre"); }); modelBuilder.Entity("ERP.TallerAutomotriz.Domain.Entities.Inventory.CompatibilidadRepuesto", b => { b.HasOne("ERP.TallerAutomotriz.Domain.Entities.Inventory.Repuesto", "Repuesto") .WithMany("Compatibilidades") .HasForeignKey("RepuestoId") .OnDelete(DeleteBehavior.Cascade) .IsRequired(); b.Navigation("Repuesto"); }); modelBuilder.Entity("ERP.TallerAutomotriz.Domain.Entities.Inventory.MovimientoInventario", b => { b.HasOne("ERP.TallerAutomotriz.Domain.Entities.Inventory.Almacen", "Almacen") .WithMany() .HasForeignKey("AlmacenId") .OnDelete(DeleteBehavior.Restrict) .IsRequired(); b.HasOne("ERP.TallerAutomotriz.Domain.Entities.Inventory.Repuesto", "Repuesto") .WithMany("Movimientos") .HasForeignKey("RepuestoId") .OnDelete(DeleteBehavior.Restrict) .IsRequired(); b.Navigation("Almacen"); b.Navigation("Repuesto"); }); modelBuilder.Entity("ERP.TallerAutomotriz.Domain.Entities.Inventory.Repuesto", b => { b.HasOne("ERP.TallerAutomotriz.Domain.Entities.Inventory.CategoriaRepuesto", "Categoria") .WithMany() .HasForeignKey("CategoriaId") .OnDelete(DeleteBehavior.SetNull); b.Navigation("Categoria"); }); modelBuilder.Entity("ERP.TallerAutomotriz.Domain.Entities.Inventory.StockAlmacen", b => { b.HasOne("ERP.TallerAutomotriz.Domain.Entities.Inventory.Almacen", "Almacen") .WithMany() .HasForeignKey("AlmacenId") .OnDelete(DeleteBehavior.Restrict) .IsRequired(); b.HasOne("ERP.TallerAutomotriz.Domain.Entities.Inventory.Repuesto", "Repuesto") .WithMany() .HasForeignKey("RepuestoId") .OnDelete(DeleteBehavior.Cascade) .IsRequired(); b.Navigation("Almacen"); b.Navigation("Repuesto"); }); modelBuilder.Entity("ERP.TallerAutomotriz.Domain.Entities.Personnel.Comision", b => { b.HasOne("ERP.TallerAutomotriz.Domain.Entities.Personnel.Tecnico", "Tecnico") .WithMany() .HasForeignKey("TecnicoId") .OnDelete(DeleteBehavior.Restrict) .IsRequired(); b.Navigation("Tecnico"); }); modelBuilder.Entity("ERP.TallerAutomotriz.Domain.Entities.Personnel.RegistroAsistencia", b => { b.HasOne("ERP.TallerAutomotriz.Domain.Entities.Personnel.Tecnico", "Tecnico") .WithMany("Asistencias") .HasForeignKey("TecnicoId") .OnDelete(DeleteBehavior.Cascade) .IsRequired(); b.Navigation("Tecnico"); }); modelBuilder.Entity("ERP.TallerAutomotriz.Domain.Entities.Purchases.CuentaPagar", b => { b.HasOne("ERP.TallerAutomotriz.Domain.Entities.Purchases.OrdenCompra", "OrdenCompra") .WithMany() .HasForeignKey("OrdenCompraId") .OnDelete(DeleteBehavior.SetNull); b.HasOne("ERP.TallerAutomotriz.Domain.Entities.Purchases.Proveedor", "Proveedor") .WithMany() .HasForeignKey("ProveedorId") .OnDelete(DeleteBehavior.Restrict) .IsRequired(); b.Navigation("OrdenCompra"); b.Navigation("Proveedor"); }); modelBuilder.Entity("ERP.TallerAutomotriz.Domain.Entities.Purchases.DetalleOrdenCompra", b => { b.HasOne("ERP.TallerAutomotriz.Domain.Entities.Purchases.OrdenCompra", "OrdenCompra") .WithMany("Detalles") .HasForeignKey("OrdenCompraId") .OnDelete(DeleteBehavior.Cascade) .IsRequired(); b.HasOne("ERP.TallerAutomotriz.Domain.Entities.Inventory.Repuesto", "Repuesto") .WithMany() .HasForeignKey("RepuestoId") .OnDelete(DeleteBehavior.Restrict) .IsRequired(); b.Navigation("OrdenCompra"); b.Navigation("Repuesto"); }); modelBuilder.Entity("ERP.TallerAutomotriz.Domain.Entities.Purchases.OrdenCompra", b => { b.HasOne("ERP.TallerAutomotriz.Domain.Entities.Inventory.Almacen", "AlmacenDestino") .WithMany() .HasForeignKey("AlmacenDestinoId") .OnDelete(DeleteBehavior.SetNull); b.HasOne("ERP.TallerAutomotriz.Domain.Entities.Purchases.Proveedor", "Proveedor") .WithMany() .HasForeignKey("ProveedorId") .OnDelete(DeleteBehavior.Restrict) .IsRequired(); b.Navigation("AlmacenDestino"); b.Navigation("Proveedor"); }); modelBuilder.Entity("ERP.TallerAutomotriz.Domain.Entities.Sales.Cotizacion", b => { b.HasOne("ERP.TallerAutomotriz.Domain.Entities.Customers.Cliente", "Cliente") .WithMany() .HasForeignKey("ClienteId") .OnDelete(DeleteBehavior.Restrict) .IsRequired(); b.HasOne("ERP.TallerAutomotriz.Domain.Entities.Workshop.OrdenTrabajo", "OrdenTrabajo") .WithMany() .HasForeignKey("OrdenTrabajoId") .OnDelete(DeleteBehavior.SetNull); b.Navigation("Cliente"); b.Navigation("OrdenTrabajo"); }); modelBuilder.Entity("ERP.TallerAutomotriz.Domain.Entities.Sales.DetalleCotizacion", b => { b.HasOne("ERP.TallerAutomotriz.Domain.Entities.Sales.Cotizacion", "Cotizacion") .WithMany("Detalles") .HasForeignKey("CotizacionId") .OnDelete(DeleteBehavior.Cascade) .IsRequired(); b.Navigation("Cotizacion"); }); modelBuilder.Entity("ERP.TallerAutomotriz.Domain.Entities.Sales.DetalleFactura", b => { b.HasOne("ERP.TallerAutomotriz.Domain.Entities.Sales.Factura", "Factura") .WithMany("Detalles") .HasForeignKey("FacturaId") .OnDelete(DeleteBehavior.Cascade) .IsRequired(); b.Navigation("Factura"); }); modelBuilder.Entity("ERP.TallerAutomotriz.Domain.Entities.Sales.Factura", b => { b.HasOne("ERP.TallerAutomotriz.Domain.Entities.Customers.Cliente", "Cliente") .WithMany() .HasForeignKey("ClienteId") .OnDelete(DeleteBehavior.Restrict) .IsRequired(); b.HasOne("ERP.TallerAutomotriz.Domain.Entities.Workshop.OrdenTrabajo", "OrdenTrabajo") .WithMany() .HasForeignKey("OrdenTrabajoId") .OnDelete(DeleteBehavior.SetNull); b.Navigation("Cliente"); b.Navigation("OrdenTrabajo"); }); modelBuilder.Entity("ERP.TallerAutomotriz.Domain.Entities.Sales.Pago", b => { b.HasOne("ERP.TallerAutomotriz.Domain.Entities.Sales.Caja", "Caja") .WithMany() .HasForeignKey("CajaId") .OnDelete(DeleteBehavior.SetNull); b.HasOne("ERP.TallerAutomotriz.Domain.Entities.Sales.Factura", "Factura") .WithMany("Pagos") .HasForeignKey("FacturaId") .OnDelete(DeleteBehavior.Cascade) .IsRequired(); b.Navigation("Caja"); b.Navigation("Factura"); }); modelBuilder.Entity("ERP.TallerAutomotriz.Domain.Entities.Workshop.CategoriaServicio", b => { b.HasOne("ERP.TallerAutomotriz.Domain.Entities.Workshop.CategoriaServicio", "CategoriaPadre") .WithMany() .HasForeignKey("CategoriaPadreId") .OnDelete(DeleteBehavior.Restrict); b.Navigation("CategoriaPadre"); }); modelBuilder.Entity("ERP.TallerAutomotriz.Domain.Entities.Workshop.ChecklistInspeccion", b => { b.HasOne("ERP.TallerAutomotriz.Domain.Entities.Workshop.OrdenTrabajo", "OrdenTrabajo") .WithMany("Checklist") .HasForeignKey("OrdenTrabajoId") .OnDelete(DeleteBehavior.Cascade) .IsRequired(); b.Navigation("OrdenTrabajo"); }); modelBuilder.Entity("ERP.TallerAutomotriz.Domain.Entities.Workshop.Cita", b => { b.HasOne("ERP.TallerAutomotriz.Domain.Entities.Customers.Cliente", "Cliente") .WithMany() .HasForeignKey("ClienteId") .OnDelete(DeleteBehavior.Restrict) .IsRequired(); b.HasOne("ERP.TallerAutomotriz.Domain.Entities.Workshop.OrdenTrabajo", "OrdenTrabajo") .WithMany() .HasForeignKey("OrdenTrabajoId") .OnDelete(DeleteBehavior.SetNull); b.HasOne("ERP.TallerAutomotriz.Domain.Entities.Workshop.Servicio", "Servicio") .WithMany() .HasForeignKey("ServicioId") .OnDelete(DeleteBehavior.SetNull); b.HasOne("ERP.TallerAutomotriz.Domain.Entities.Personnel.Tecnico", "TecnicoPreferido") .WithMany() .HasForeignKey("TecnicoPreferidoId") .OnDelete(DeleteBehavior.SetNull); b.HasOne("ERP.TallerAutomotriz.Domain.Entities.Customers.Vehiculo", "Vehiculo") .WithMany() .HasForeignKey("VehiculoId") .OnDelete(DeleteBehavior.SetNull); b.Navigation("Cliente"); b.Navigation("OrdenTrabajo"); b.Navigation("Servicio"); b.Navigation("TecnicoPreferido"); b.Navigation("Vehiculo"); }); modelBuilder.Entity("ERP.TallerAutomotriz.Domain.Entities.Workshop.ControlCalidad", b => { b.HasOne("ERP.TallerAutomotriz.Domain.Entities.Workshop.OrdenTrabajo", "OrdenTrabajo") .WithMany() .HasForeignKey("OrdenTrabajoId") .OnDelete(DeleteBehavior.Cascade) .IsRequired(); b.Navigation("OrdenTrabajo"); }); modelBuilder.Entity("ERP.TallerAutomotriz.Domain.Entities.Workshop.DetalleOTRepuesto", b => { b.HasOne("ERP.TallerAutomotriz.Domain.Entities.Workshop.OrdenTrabajo", "OrdenTrabajo") .WithMany("Repuestos") .HasForeignKey("OrdenTrabajoId") .OnDelete(DeleteBehavior.Cascade) .IsRequired(); b.HasOne("ERP.TallerAutomotriz.Domain.Entities.Inventory.Repuesto", "Repuesto") .WithMany() .HasForeignKey("RepuestoId") .OnDelete(DeleteBehavior.Restrict) .IsRequired(); b.Navigation("OrdenTrabajo"); b.Navigation("Repuesto"); }); modelBuilder.Entity("ERP.TallerAutomotriz.Domain.Entities.Workshop.DetalleOTServicio", b => { b.HasOne("ERP.TallerAutomotriz.Domain.Entities.Workshop.OrdenTrabajo", "OrdenTrabajo") .WithMany("Servicios") .HasForeignKey("OrdenTrabajoId") .OnDelete(DeleteBehavior.Cascade) .IsRequired(); b.HasOne("ERP.TallerAutomotriz.Domain.Entities.Workshop.Servicio", "Servicio") .WithMany() .HasForeignKey("ServicioId") .OnDelete(DeleteBehavior.Restrict) .IsRequired(); b.HasOne("ERP.TallerAutomotriz.Domain.Entities.Personnel.Tecnico", "Tecnico") .WithMany() .HasForeignKey("TecnicoId"); b.Navigation("OrdenTrabajo"); b.Navigation("Servicio"); b.Navigation("Tecnico"); }); modelBuilder.Entity("ERP.TallerAutomotriz.Domain.Entities.Workshop.FotoOT", b => { b.HasOne("ERP.TallerAutomotriz.Domain.Entities.Workshop.OrdenTrabajo", "OrdenTrabajo") .WithMany("Fotos") .HasForeignKey("OrdenTrabajoId") .OnDelete(DeleteBehavior.Cascade) .IsRequired(); b.Navigation("OrdenTrabajo"); }); modelBuilder.Entity("ERP.TallerAutomotriz.Domain.Entities.Workshop.HistorialEstadoOT", b => { b.HasOne("ERP.TallerAutomotriz.Domain.Entities.Workshop.OrdenTrabajo", "OrdenTrabajo") .WithMany("Historial") .HasForeignKey("OrdenTrabajoId") .OnDelete(DeleteBehavior.Cascade) .IsRequired(); b.Navigation("OrdenTrabajo"); }); modelBuilder.Entity("ERP.TallerAutomotriz.Domain.Entities.Workshop.OrdenTrabajo", b => { b.HasOne("ERP.TallerAutomotriz.Domain.Entities.Customers.Cliente", "Cliente") .WithMany() .HasForeignKey("ClienteId") .OnDelete(DeleteBehavior.Restrict) .IsRequired(); b.HasOne("ERP.TallerAutomotriz.Domain.Entities.Personnel.Tecnico", "TecnicoPrincipal") .WithMany() .HasForeignKey("TecnicoPrincipalId") .OnDelete(DeleteBehavior.SetNull); b.HasOne("ERP.TallerAutomotriz.Domain.Entities.Customers.Vehiculo", "Vehiculo") .WithMany() .HasForeignKey("VehiculoId") .OnDelete(DeleteBehavior.Restrict) .IsRequired(); b.Navigation("Cliente"); b.Navigation("TecnicoPrincipal"); b.Navigation("Vehiculo"); }); modelBuilder.Entity("ERP.TallerAutomotriz.Domain.Entities.Workshop.Servicio", b => { b.HasOne("ERP.TallerAutomotriz.Domain.Entities.Workshop.CategoriaServicio", "Categoria") .WithMany("Servicios") .HasForeignKey("CategoriaId"); b.Navigation("Categoria"); }); modelBuilder.Entity("ERP.TallerAutomotriz.Domain.Entities.Workshop.TecnicoOT", b => { b.HasOne("ERP.TallerAutomotriz.Domain.Entities.Workshop.OrdenTrabajo", "OrdenTrabajo") .WithMany("TecnicosAsignados") .HasForeignKey("OrdenTrabajoId") .OnDelete(DeleteBehavior.Cascade) .IsRequired(); b.HasOne("ERP.TallerAutomotriz.Domain.Entities.Personnel.Tecnico", "Tecnico") .WithMany() .HasForeignKey("TecnicoId") .OnDelete(DeleteBehavior.Restrict) .IsRequired(); b.Navigation("OrdenTrabajo"); b.Navigation("Tecnico"); }); modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityRoleClaim", b => { b.HasOne("ERP.TallerAutomotriz.Infrastructure.Identity.ApplicationRole", null) .WithMany() .HasForeignKey("RoleId") .OnDelete(DeleteBehavior.Cascade) .IsRequired(); }); modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityUserClaim", b => { b.HasOne("ERP.TallerAutomotriz.Infrastructure.Identity.ApplicationUser", null) .WithMany() .HasForeignKey("UserId") .OnDelete(DeleteBehavior.Cascade) .IsRequired(); }); modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityUserLogin", b => { b.HasOne("ERP.TallerAutomotriz.Infrastructure.Identity.ApplicationUser", null) .WithMany() .HasForeignKey("UserId") .OnDelete(DeleteBehavior.Cascade) .IsRequired(); }); modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityUserRole", b => { b.HasOne("ERP.TallerAutomotriz.Infrastructure.Identity.ApplicationRole", null) .WithMany() .HasForeignKey("RoleId") .OnDelete(DeleteBehavior.Cascade) .IsRequired(); b.HasOne("ERP.TallerAutomotriz.Infrastructure.Identity.ApplicationUser", null) .WithMany() .HasForeignKey("UserId") .OnDelete(DeleteBehavior.Cascade) .IsRequired(); }); modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityUserToken", b => { b.HasOne("ERP.TallerAutomotriz.Infrastructure.Identity.ApplicationUser", null) .WithMany() .HasForeignKey("UserId") .OnDelete(DeleteBehavior.Cascade) .IsRequired(); }); modelBuilder.Entity("ERP.TallerAutomotriz.Domain.Entities.Customers.Cliente", b => { b.Navigation("Vehiculos"); }); modelBuilder.Entity("ERP.TallerAutomotriz.Domain.Entities.Inventory.Repuesto", b => { b.Navigation("Compatibilidades"); b.Navigation("Movimientos"); }); modelBuilder.Entity("ERP.TallerAutomotriz.Domain.Entities.Personnel.Tecnico", b => { b.Navigation("Asistencias"); }); modelBuilder.Entity("ERP.TallerAutomotriz.Domain.Entities.Purchases.OrdenCompra", b => { b.Navigation("Detalles"); }); modelBuilder.Entity("ERP.TallerAutomotriz.Domain.Entities.Sales.Cotizacion", b => { b.Navigation("Detalles"); }); modelBuilder.Entity("ERP.TallerAutomotriz.Domain.Entities.Sales.Factura", b => { b.Navigation("Detalles"); b.Navigation("Pagos"); }); modelBuilder.Entity("ERP.TallerAutomotriz.Domain.Entities.Workshop.CategoriaServicio", b => { b.Navigation("Servicios"); }); modelBuilder.Entity("ERP.TallerAutomotriz.Domain.Entities.Workshop.OrdenTrabajo", b => { b.Navigation("Checklist"); b.Navigation("Fotos"); b.Navigation("Historial"); b.Navigation("Repuestos"); b.Navigation("Servicios"); b.Navigation("TecnicosAsignados"); }); #pragma warning restore 612, 618 } } }