49 lines
1.9 KiB
C#
49 lines
1.9 KiB
C#
using System;
|
|
using Microsoft.EntityFrameworkCore.Migrations;
|
|
|
|
#nullable disable
|
|
|
|
namespace ClaudeDo.Data.Migrations
|
|
{
|
|
/// <inheritdoc />
|
|
public partial class PrimeWeekdays : Migration
|
|
{
|
|
/// <inheritdoc />
|
|
protected override void Up(MigrationBuilder migrationBuilder)
|
|
{
|
|
migrationBuilder.AddColumn<int>(
|
|
name: "days_of_week",
|
|
table: "prime_schedules",
|
|
type: "INTEGER",
|
|
nullable: false,
|
|
defaultValue: 31);
|
|
|
|
migrationBuilder.Sql(
|
|
"UPDATE prime_schedules SET days_of_week = CASE WHEN workdays_only = 1 THEN 31 ELSE 127 END;");
|
|
|
|
migrationBuilder.DropColumn(name: "start_date", table: "prime_schedules");
|
|
migrationBuilder.DropColumn(name: "end_date", table: "prime_schedules");
|
|
migrationBuilder.DropColumn(name: "workdays_only", table: "prime_schedules");
|
|
}
|
|
|
|
/// <inheritdoc />
|
|
protected override void Down(MigrationBuilder migrationBuilder)
|
|
{
|
|
migrationBuilder.AddColumn<DateOnly>(
|
|
name: "start_date", table: "prime_schedules",
|
|
type: "TEXT", nullable: false, defaultValue: new DateOnly(2000, 1, 1));
|
|
migrationBuilder.AddColumn<DateOnly>(
|
|
name: "end_date", table: "prime_schedules",
|
|
type: "TEXT", nullable: false, defaultValue: new DateOnly(2099, 12, 31));
|
|
migrationBuilder.AddColumn<bool>(
|
|
name: "workdays_only", table: "prime_schedules",
|
|
type: "INTEGER", nullable: false, defaultValue: true);
|
|
|
|
migrationBuilder.Sql(
|
|
"UPDATE prime_schedules SET workdays_only = CASE WHEN days_of_week = 127 THEN 0 ELSE 1 END;");
|
|
|
|
migrationBuilder.DropColumn(name: "days_of_week", table: "prime_schedules");
|
|
}
|
|
}
|
|
}
|