protected override void Seed(Donatella.Data.EfDbContext context) { EstadosSeed.Seed(context); #region Perfis var perfilMaster = new PerfilAcesso { Perfil = "Master", DtInclusao = DateTime.Now, DtAlteracao = DateTime.Now }; context.PerfilAcessos.AddOrUpdate( p => p.Perfil, perfilMaster ); context.SaveChanges(); #endregion #region Perfil Permissao var permissoes = EnumHelper <Permissoes> .GetValues() .Select( x => new PerfilAcessoPermissao { DtInclusao = DateTime.Now, DtAlteracao = DateTime.Now, PerfilAcessoId = perfilMaster.Id, Permissao = x }); foreach (var permissao in permissoes) { if (!context.PerfilAcessoPermissao.Any(x => x.PerfilAcessoId == perfilMaster.Id && x.Permissao == permissao.Permissao)) { context.PerfilAcessoPermissao.AddOrUpdate(permissao); } } context.SaveChanges(); #endregion #region Usuários Adm CriarUsuarioAdmin(context, 123456, "Admin Master", "*****@*****.**", "admin", perfilMaster.Id); #endregion }
protected override void Up(MigrationBuilder migrationBuilder) { migrationBuilder.CreateTable( name: "Estados", columns: table => new { Id = table.Column <int>(nullable: false) .Annotation("SqlServer:Identity", "1, 1"), Nome = table.Column <string>(nullable: false), Sigla = table.Column <string>(nullable: false) }, constraints: table => { table.PrimaryKey("PK_Estados", x => x.Id); }); migrationBuilder.CreateTable( name: "Cidades", columns: table => new { Id = table.Column <int>(nullable: false) .Annotation("SqlServer:Identity", "1, 1"), Nome = table.Column <string>(maxLength: 150, nullable: false), FronteirasIds = table.Column <string>(nullable: true), QuantidadeDeHabitantes = table.Column <int>(nullable: false), EstadoId = table.Column <int>(nullable: false), DataDeCadastro = table.Column <DateTime>(nullable: false), DateDeAtualizacao = table.Column <DateTime>(nullable: true) }, constraints: table => { table.PrimaryKey("PK_Cidades", x => x.Id); table.ForeignKey( name: "FK_Cidades_Estados_EstadoId", column: x => x.EstadoId, principalTable: "Estados", principalColumn: "Id", onDelete: ReferentialAction.Cascade); }); migrationBuilder.CreateIndex( name: "IX_Cidades_EstadoId", table: "Cidades", column: "EstadoId"); EstadosSeed.Executar(migrationBuilder); CidadesSeed.Executar(migrationBuilder); }