using Microsoft.EntityFrameworkCore.Migrations;
#nullable disable
namespace DramaLing.Api.Migrations
{
///
public partial class AddEnglishLevelNumeric : Migration
{
///
protected override void Up(MigrationBuilder migrationBuilder)
{
migrationBuilder.AddColumn(
name: "english_level_numeric",
table: "user_profiles",
type: "INTEGER",
nullable: false,
defaultValue: 2);
// 轉換現有資料:將字串格式的 english_level 轉換為數字格式
migrationBuilder.Sql(@"
UPDATE user_profiles
SET english_level_numeric =
CASE english_level
WHEN 'A1' THEN 1
WHEN 'A2' THEN 2
WHEN 'B1' THEN 3
WHEN 'B2' THEN 4
WHEN 'C1' THEN 5
WHEN 'C2' THEN 6
ELSE 2 -- 預設 A2
END
");
}
///
protected override void Down(MigrationBuilder migrationBuilder)
{
migrationBuilder.DropColumn(
name: "english_level_numeric",
table: "user_profiles");
}
}
}