using Microsoft.EntityFrameworkCore.Migrations; #nullable disable namespace CutList.Web.Migrations { /// public partial class UpdateExistingSortOrders : Migration { /// protected override void Up(MigrationBuilder migrationBuilder) { // Update SortOrder for existing materials based on their primary dimension migrationBuilder.Sql(@" UPDATE m SET m.SortOrder = CAST( CASE d.DimensionType WHEN 'RoundBar' THEN d.Diameter * 1000 WHEN 'RoundTube' THEN d.OuterDiameter * 1000 WHEN 'FlatBar' THEN d.Width * 1000 WHEN 'SquareBar' THEN d.Size * 1000 WHEN 'SquareTube' THEN d.Size * 1000 WHEN 'RectangularTube' THEN d.Width * 1000 WHEN 'Angle' THEN d.Leg1 * 1000 WHEN 'Channel' THEN d.Height * 1000 WHEN 'IBeam' THEN d.Height * 1000 WHEN 'Pipe' THEN d.NominalSize * 1000 ELSE 0 END AS INT) FROM Materials m INNER JOIN MaterialDimensions d ON d.MaterialId = m.Id "); } /// protected override void Down(MigrationBuilder migrationBuilder) { } } }