using System; using Microsoft.EntityFrameworkCore.Migrations; #nullable disable namespace FlowAPI.Infrastructure.Migrations { /// public partial class AddSubscriptionTiers : Migration { /// protected override void Up(MigrationBuilder migrationBuilder) { migrationBuilder.AddColumn( name: "DailyAiGenerationsCount", table: "Users", type: "INTEGER", nullable: false, defaultValue: 0); migrationBuilder.AddColumn( name: "LastAiGenerationDate", table: "Users", type: "TEXT", nullable: false, defaultValue: new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified)); migrationBuilder.AddColumn( name: "SubscriptionTier", table: "Users", type: "TEXT", maxLength: 50, nullable: false, defaultValue: "Free"); migrationBuilder.CreateTable( name: "CustomTemplates", columns: table => new { Id = table.Column(type: "TEXT", nullable: false), UserId = table.Column(type: "TEXT", nullable: false), Title = table.Column(type: "TEXT", maxLength: 200, nullable: false), Description = table.Column(type: "TEXT", maxLength: 1000, nullable: false), Category = table.Column(type: "TEXT", maxLength: 100, nullable: false), Icon = table.Column(type: "TEXT", maxLength: 100, nullable: false), ContentJson = table.Column(type: "TEXT", maxLength: 10000000, nullable: false), CreatedAt = table.Column(type: "TEXT", nullable: false) }, constraints: table => { table.PrimaryKey("PK_CustomTemplates", x => x.Id); table.ForeignKey( name: "FK_CustomTemplates_Users_UserId", column: x => x.UserId, principalTable: "Users", principalColumn: "Id", onDelete: ReferentialAction.Cascade); }); migrationBuilder.CreateIndex( name: "IX_CustomTemplates_UserId", table: "CustomTemplates", column: "UserId"); } /// protected override void Down(MigrationBuilder migrationBuilder) { migrationBuilder.DropTable( name: "CustomTemplates"); migrationBuilder.DropColumn( name: "DailyAiGenerationsCount", table: "Users"); migrationBuilder.DropColumn( name: "LastAiGenerationDate", table: "Users"); migrationBuilder.DropColumn( name: "SubscriptionTier", table: "Users"); } } }