Esempio n. 1
0
        public static void Pais(ModelBuilder modelBuilder)
        {
            GeneradorMd.DefinirCamposDelElementoDtm <PaisDtm>(modelBuilder);
            modelBuilder.Entity <PaisDtm>().Property(v => v.Codigo)
            .HasColumnName("CODIGO")
            .HasColumnType("VARCHAR(3)")
            .IsRequired(true);

            modelBuilder.Entity <PaisDtm>().Property(v => v.NombreIngles)
            .HasColumnName("NOMBRE_INGLES")
            .HasColumnType("VARCHAR(250)")
            .IsRequired(true);

            modelBuilder.Entity <PaisDtm>().Property(v => v.ISO2)
            .HasColumnName("ISO2")
            .HasColumnType("VARCHAR(2)")
            .IsRequired(true);

            modelBuilder.Entity <PaisDtm>().Property(v => v.Prefijo)
            .HasColumnName("PREFIJO")
            .HasColumnType("VARCHAR(10)")
            .IsRequired(true);

            modelBuilder.Entity <PaisDtm>().HasAlternateKey(p => p.Codigo).HasName("AK_PAIS_CODIGO");
            modelBuilder.Entity <PaisDtm>().HasAlternateKey(p => p.ISO2).HasName("AK_PAIS_ISO2");

            modelBuilder.Entity <PaisDtm>().HasAlternateKey(p => p.NombreIngles).HasName("AK_PAIS_NAME");
        }
        internal static void DefinirCamposDeAuditoriaDtm <TEntity>(ModelBuilder modelBuilder) where TEntity : AuditoriaDtm
        {
            var nombreDeTabla = GeneradorMd.NombreDeTabla(typeof(TEntity));

            modelBuilder.Entity <TEntity>().Property(p => p.IdElemento).HasColumnName("ID_ELEMENTO");
            modelBuilder.Entity <TEntity>().Property(p => p.IdElemento).HasColumnType("INT");
            modelBuilder.Entity <TEntity>().Property(p => p.IdElemento).IsRequired(true);
            modelBuilder.Entity <TEntity>().HasIndex(p => p.IdElemento).HasDatabaseName($"I_{nombreDeTabla}_ID_ELEMENTO");

            modelBuilder.Entity <TEntity>().Property(p => p.IdUsuario).HasColumnName("ID_USUARIO");
            modelBuilder.Entity <TEntity>().Property(p => p.IdUsuario).HasColumnType("INT");
            modelBuilder.Entity <TEntity>().Property(p => p.IdUsuario).IsRequired(true);
            modelBuilder.Entity <TEntity>().HasIndex(p => p.IdUsuario).HasDatabaseName($"I_{nombreDeTabla}_ID_USUARIO");

            modelBuilder.Entity <TEntity>().Property(p => p.Operacion).HasColumnName("OPERACION");
            modelBuilder.Entity <TEntity>().Property(p => p.Operacion).HasColumnType("CHAR(1)");
            modelBuilder.Entity <TEntity>().Property(p => p.Operacion).IsRequired(true);

            modelBuilder.Entity <TEntity>().Property(p => p.registroJson).HasColumnName("REGISTRO");
            modelBuilder.Entity <TEntity>().Property(p => p.registroJson).HasColumnType("VARCHAR(MAX)");
            modelBuilder.Entity <TEntity>().Property(p => p.registroJson).IsRequired(true);

            modelBuilder.Entity <TEntity>().Property(p => p.AuditadoEl).HasColumnName("AUDITADO_EL");
            modelBuilder.Entity <TEntity>().Property(p => p.AuditadoEl).HasColumnType("DATETIME2(7)");
            modelBuilder.Entity <TEntity>().Property(p => p.AuditadoEl).IsRequired(true);
        }
Esempio n. 3
0
        public static void Municipio(ModelBuilder modelBuilder)
        {
            GeneradorMd.DefinirCamposDelElementoDtm <MunicipioDtm>(modelBuilder);
            modelBuilder.Entity <MunicipioDtm>().Property(v => v.Codigo)
            .HasColumnName("CODIGO")
            .HasColumnType("VARCHAR(3)")
            .IsRequired(true);

            modelBuilder.Entity <MunicipioDtm>().Property(v => v.DC)
            .HasColumnName("DC")
            .HasColumnType("VARCHAR(1)")
            .IsRequired(true);

            modelBuilder.Entity <MunicipioDtm>().Property(v => v.IdProvincia)
            .HasColumnName("ID_PROVINCIA")
            .HasColumnType("INT")
            .IsRequired(true);

            modelBuilder.Entity <MunicipioDtm>().HasAlternateKey(p => new { p.IdProvincia, p.Codigo }).HasName("AK_MUNICIPIO_ID_PROVINCIA_CODIGO");

            modelBuilder.Entity <MunicipioDtm>()
            .HasIndex(p => p.IdProvincia)
            .HasDatabaseName($"I_MUNICIPIO_ID_PROVINCIA");

            modelBuilder.Entity <MunicipioDtm>()
            .HasOne(p => p.Provincia)
            .WithMany()
            .HasForeignKey(p => p.IdProvincia)
            .HasConstraintName($"FK_MUNICIPIO_ID_PROVINCIA")
            .OnDelete(DeleteBehavior.Restrict);

            modelBuilder.Entity <MunicipioDtm>().Ignore(x => x.Expresion);
        }
Esempio n. 4
0
 public AuditoriaDeElementos(ContextoSe contexto, enumNegocio negocio)
 {
     Dtm = negocio.TipoDtm();
     Dto = negocio.TipoDto();
     tablaDeAuditoria   = $"{GeneradorMd.NombreDeTabla(Dtm)}_AUDITORIA";
     esquemaDeAuditoria = GeneradorMd.EsquemaDeTabla(Dtm);
     Contexto           = contexto;
 }
Esempio n. 5
0
        public static void TipoDeVia(ModelBuilder modelBuilder)
        {
            GeneradorMd.DefinirCamposDelRegistroConNombreDtm <TipoDeViaDtm>(modelBuilder);

            modelBuilder.Entity <TipoDeViaDtm>().Property(v => v.Sigla)
            .HasColumnName("SIGLA")
            .HasColumnType("VARCHAR(4)")
            .IsRequired(true);

            modelBuilder.Entity <TipoDeViaDtm>().HasAlternateKey(p => p.Sigla).HasName("AK_TIPO_VIA_SIGLA");
        }
Esempio n. 6
0
        public static void RegistrarAuditoria(ContextoSe contexto, enumNegocio negocio, enumTipoOperacion operacion, IElementoDtm auditar)
        {
            auditar.UsuarioModificador = auditar.UsuarioCreador = null;
            var valor = serializarPropiedadesPOCO(auditar);

            var sentencia = $@"Insert into {GeneradorMd.EsquemaDeTabla(negocio.TipoDtm())}.{GeneradorMd.NombreDeTabla(negocio.TipoDtm())}_AUDITORIA (id_elemento, id_usuario, operacion, registro, auditado_el) 
                               values ({((ElementoDtm)auditar).Id}
                                      ,{contexto.DatosDeConexion.IdUsuario}
                                      ,'{operacion.ToBd()}'
                                      ,'{valor}'
                                      ,'{DateTime.Now}')";

            contexto.Database.ExecuteSqlRaw(sentencia);
        }
Esempio n. 7
0
        public static void Calle(ModelBuilder modelBuilder)
        {
            GeneradorMd.DefinirCamposDelElementoDtm <CalleDtm>(modelBuilder);
            modelBuilder.Entity <CalleDtm>().Property(v => v.Codigo)
            .HasColumnName("CODIGO")
            .HasColumnType("VARCHAR(10)")
            .IsRequired(true);

            modelBuilder.Entity <CalleDtm>().Property(v => v.IdMunicipio)
            .HasColumnName("ID_MUNICIPIO")
            .HasColumnType("INT")
            .IsRequired(true);

            modelBuilder.Entity <CalleDtm>().Property(v => v.IdTipoVia)
            .HasColumnName("ID_TIPO_DE_VIA")
            .HasColumnType("INT")
            .IsRequired(true);

            modelBuilder.Entity <CalleDtm>().HasAlternateKey(p => new { p.IdMunicipio, p.Codigo }).HasName("AK_CALLE_ID_MUNICIPIO_CODIGO");

            modelBuilder.Entity <CalleDtm>()
            .HasIndex(p => p.IdMunicipio)
            .HasDatabaseName($"I_CALLE_ID_MUNICIPIO");

            modelBuilder.Entity <CalleDtm>()
            .HasOne(p => p.Municipio)
            .WithMany()
            .HasForeignKey(p => p.IdMunicipio)
            .HasConstraintName($"FK_CALLE_ID_MUNICIPIO")
            .OnDelete(DeleteBehavior.Restrict);

            modelBuilder.Entity <CalleDtm>()
            .HasOne(p => p.TipoDeVia)
            .WithMany()
            .HasForeignKey(p => p.IdTipoVia)
            .HasConstraintName($"FK_CALLE_ID_TIPO_DE_VIA")
            .OnDelete(DeleteBehavior.Restrict);

            modelBuilder.Entity <CalleDtm>().Property(v => v.Expresion).HasColumnName("EXPRESION").HasColumnType("VARCHAR(MAX)").HasComputedColumnSql("CALLEJERO.CC_CALLE_EXPRESION(NOMBRE, ID_MUNICIPIO, ID_TIPO_DE_VIA)");
        }
        public static void Provincia(ModelBuilder modelBuilder)
        {
            GeneradorMd.DefinirCamposDelElementoDtm <ProvinciaDtm>(modelBuilder);
            modelBuilder.Entity <ProvinciaDtm>().Property(v => v.Codigo)
            .HasColumnName("CODIGO")
            .HasColumnType("VARCHAR(2)")
            .IsRequired(true);

            modelBuilder.Entity <ProvinciaDtm>().Property(v => v.Sigla)
            .HasColumnName("SIGLA")
            .HasColumnType("VARCHAR(3)")
            .IsRequired(true);

            modelBuilder.Entity <ProvinciaDtm>().Property(v => v.IdPais)
            .HasColumnName("ID_PAIS")
            .HasColumnType("INT")
            .IsRequired(true);

            modelBuilder.Entity <ProvinciaDtm>().Property(v => v.Prefijo)
            .HasColumnName("PREFIJO")
            .HasColumnType("VARCHAR(10)")
            .IsRequired(true);

            modelBuilder.Entity <ProvinciaDtm>().HasAlternateKey(p => p.Codigo).HasName("AK_PROVINCIA_CODIGO");
            modelBuilder.Entity <ProvinciaDtm>().HasAlternateKey(p => p.Sigla).HasName("AK_PROVINCIA_SIGLA");

            modelBuilder.Entity <ProvinciaDtm>()
            .HasIndex(p => p.IdPais)
            .HasDatabaseName($"I_PROVINCIA_ID_PAIS");

            modelBuilder.Entity <ProvinciaDtm>()
            .HasOne(p => p.Pais)
            .WithMany()
            .HasForeignKey(p => p.IdPais)
            .HasConstraintName($"FK_PROVINCIA_ID_PAIS")
            .OnDelete(DeleteBehavior.Restrict);

            modelBuilder.Entity <ProvinciaDtm>().Ignore(x => x.Expresion);
        }
Esempio n. 9
0
        public static void Definir(ModelBuilder modelBuilder)
        {
            modelBuilder.Entity <UsuarioDtm>().Property(p => p.Nombre).HasColumnName("NOMBRE").HasColumnType("VARCHAR(50)").IsRequired();
            modelBuilder.Entity <UsuarioDtm>().Property(p => p.eMail).HasColumnName("EMAIL").HasColumnType("VARCHAR(50)").IsRequired().HasDefaultValue("*****@*****.**");
            modelBuilder.Entity <UsuarioDtm>().Property(p => p.EsAdministrador).IsRequired(true).HasDefaultValue(false);

            modelBuilder.Entity <UsuarioDtm>()
            .HasIndex(v => new { v.Login })
            .IsUnique(true)
            .HasDatabaseName("IX_USUARIO");

            modelBuilder.Entity <UsuarioDtm>()
            .HasMany(tu => tu.Puestos)
            .WithOne(p => p.Usuario)
            .HasForeignKey(p => p.IdUsuario);

            modelBuilder.Entity <UsuarioDtm>()
            .HasMany(tu => tu.Permisos)
            .WithOne(p => p.Usuario)
            .HasForeignKey(p => p.IdUsuario);

            GeneradorMd.DefinirCampoArchivo <UsuarioDtm>(modelBuilder);
        }
Esempio n. 10
0
 public static void Definir(ModelBuilder modelBuilder)
 {
     GeneradorMd.DefinirCamposDelElementoDtm <ArchivoDtm>(modelBuilder);
 }