using Microsoft.EntityFrameworkCore.Migrations;
using System;
#nullable disable
namespace gehGassi.Persistence.Migrations
{
///
public partial class CoinsViews : Migration
{
///
protected override void Up(MigrationBuilder migrationBuilder)
{
var viewName = "vw_CoinsPerMonthWithNames";
var sql = @"SELECT CPM.*,
CONCAT(AU.FirstName, ' ' , AU.LastName) AS AppUserName, AU.Photo as AppUserPhoto
FROM CoinsPerMonths CPM
JOIN AppUsers AU ON AU.Id = CPM.AppUserId";
migrationBuilder.Sql($"IF(exists (SELECT 1 FROM sys.views WHERE Name = '{viewName}')) BEGIN DROP VIEW [dbo].[{viewName}] END {Environment.NewLine} GO");
migrationBuilder.Sql($"CREATE VIEW [dbo].[{viewName}] AS {sql} {Environment.NewLine} GO");
viewName = "vw_CoinsPerYearWithNames";
sql = @"SELECT CPY.*,
CONCAT(AU.FirstName, ' ' , AU.LastName) AS AppUserName, AU.Photo as AppUserPhoto
FROM CoinsPerYears CPY
JOIN AppUsers AU ON AU.Id = CPY.AppUserId";
migrationBuilder.Sql($"IF(exists (SELECT 1 FROM sys.views WHERE Name = '{viewName}')) BEGIN DROP VIEW [dbo].[{viewName}] END {Environment.NewLine} GO");
migrationBuilder.Sql($"CREATE VIEW [dbo].[{viewName}] AS {sql} {Environment.NewLine} GO");
}
///
protected override void Down(MigrationBuilder migrationBuilder)
{
var viewName = "vw_CoinsPerMonthWithNames";
migrationBuilder.Sql($"IF(exists (SELECT 1 FROM sys.views WHERE Name = '{viewName}')) BEGIN DROP VIEW [dbo].[{viewName}] END {Environment.NewLine} GO");
viewName = "vw_CoinsPerYearWithNames";
migrationBuilder.Sql($"IF(exists (SELECT 1 FROM sys.views WHERE Name = '{viewName}')) BEGIN DROP VIEW [dbo].[{viewName}] END {Environment.NewLine} GO");
}
}
}