using System; using Microsoft.EntityFrameworkCore.Migrations; using Npgsql.EntityFrameworkCore.PostgreSQL.Metadata; #nullable disable namespace PnvPanel.Infrastructure.Persistence.Migrations { /// public partial class AddAuditAndBlocking : Migration { /// protected override void Up(MigrationBuilder migrationBuilder) { migrationBuilder.AddColumn( name: "IsBlocked", table: "AspNetUsers", type: "boolean", nullable: false, defaultValue: false ); migrationBuilder.CreateTable( name: "AuditLogs", columns: table => new { Id = table .Column(type: "bigint", nullable: false) .Annotation( "Npgsql:ValueGenerationStrategy", NpgsqlValueGenerationStrategy.IdentityByDefaultColumn ), ActorId = table.Column(type: "uuid", nullable: true), Action = table.Column( type: "character varying(100)", maxLength: 100, nullable: false ), TargetType = table.Column( type: "character varying(50)", maxLength: 50, nullable: false ), TargetId = table.Column( type: "character varying(100)", maxLength: 100, nullable: false ), Metadata = table.Column(type: "jsonb", nullable: true), Source = table.Column( type: "character varying(32)", maxLength: 32, nullable: false ), CreatedAt = table.Column( type: "timestamp with time zone", nullable: false ), }, constraints: table => { table.PrimaryKey("PK_AuditLogs", x => x.Id); } ); migrationBuilder.CreateIndex( name: "IX_AuditLogs_CreatedAt", table: "AuditLogs", column: "CreatedAt" ); } /// protected override void Down(MigrationBuilder migrationBuilder) { migrationBuilder.DropTable(name: "AuditLogs"); migrationBuilder.DropColumn(name: "IsBlocked", table: "AspNetUsers"); } } }