Files
parr_api/PARR.DAL/Migrations/20230810231939_TblsAIHIT.cs
2023-08-23 15:47:20 +10:00

806 lines
42 KiB
C#
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

using System;
using Microsoft.EntityFrameworkCore.Migrations;
#nullable disable
#pragma warning disable CA1814 // Prefer jagged arrays over multidimensional
namespace PARR.DAL.Migrations
{
/// <inheritdoc />
public partial class TblsAIHIT : Migration
{
/// <inheritdoc />
protected override void Up(MigrationBuilder migrationBuilder)
{
migrationBuilder.DropTable(
name: "V1_ApplicationInHost");
migrationBuilder.DropTable(
name: "V1_JobJournal");
migrationBuilder.DropTable(
name: "V1_Host");
migrationBuilder.DropTable(
name: "V1_JobStatus");
migrationBuilder.DropTable(
name: "V1_Job");
migrationBuilder.DropTable(
name: "V1_Application");
migrationBuilder.DropTable(
name: "V1_JobCategory");
migrationBuilder.DropTable(
name: "V1_JobMode");
migrationBuilder.DropTable(
name: "V1_JobType");
migrationBuilder.DropTable(
name: "V1_ApplicationType");
migrationBuilder.EnsureSchema(
name: "AIHIT");
migrationBuilder.CreateTable(
name: "RawDataEKs",
schema: "AIHIT",
columns: table => new
{
Id = table.Column<Guid>(type: "uuid", nullable: false),
DateCreated = table.Column<DateTimeOffset>(type: "timestamp with time zone", nullable: false),
DateModified = table.Column<DateTimeOffset>(type: "timestamp with time zone", nullable: true),
IP = table.Column<string>(type: "text", nullable: true),
Metka = table.Column<string>(type: "text", nullable: true),
IsActive = table.Column<string>(type: "text", nullable: true),
IsImportant = table.Column<string>(type: "text", nullable: true),
CreateTime = table.Column<DateTime>(type: "timestamp with time zone", nullable: true),
AdditionalInfo = table.Column<string>(type: "text", nullable: true),
ResponseArea = table.Column<string>(type: "text", nullable: true),
EKCategory = table.Column<string>(type: "text", nullable: true),
EKFindCode = table.Column<string>(type: "text", nullable: true),
ProductCode = table.Column<string>(type: "text", nullable: true),
ServiceCode = table.Column<string>(type: "text", nullable: true),
ShortName = table.Column<string>(type: "text", nullable: true),
ResponsibleByEK = table.Column<string>(type: "text", nullable: true),
PlannedTimeToRepair = table.Column<DateTime>(type: "timestamp with time zone", nullable: true),
EKSubCategory = table.Column<string>(type: "text", nullable: true),
FullName = table.Column<string>(type: "text", nullable: true),
Prescription = table.Column<string>(type: "text", nullable: true),
Company = table.Column<string>(type: "text", nullable: true),
WorkGroup = table.Column<string>(type: "text", nullable: true),
Location = table.Column<string>(type: "text", nullable: true),
EKRevizor = table.Column<string>(type: "text", nullable: true),
EKRegister = table.Column<string>(type: "text", nullable: true),
NetworkName = table.Column<string>(type: "text", nullable: true),
Status = table.Column<string>(type: "text", nullable: true),
EKType = table.Column<string>(type: "text", nullable: true),
EndExplotationDate = table.Column<DateTime>(type: "timestamp with time zone", nullable: true),
StartExplotationDate = table.Column<DateTime>(type: "timestamp with time zone", nullable: true),
TargetRepairTime = table.Column<string>(type: "text", nullable: true),
SysModTime = table.Column<DateTime>(type: "timestamp with time zone", nullable: true),
SysModUser = table.Column<string>(type: "text", nullable: true),
NewEKFindCode = table.Column<string>(type: "text", nullable: true),
OldEKFindCode = table.Column<string>(type: "text", nullable: true),
CTSDirection = table.Column<string>(type: "text", nullable: true),
AIHID = table.Column<int>(type: "integer", nullable: true),
IsUnreliableData = table.Column<char>(type: "character(1)", nullable: true),
ShiftWorkGroup = table.Column<string>(type: "text", nullable: true),
ClientSoftware = table.Column<string>(type: "text", nullable: true),
ClientOS = table.Column<string>(type: "text", nullable: true),
DBType = table.Column<string>(type: "text", nullable: true),
APPType = table.Column<string>(type: "text", nullable: true),
CKBSServerType = table.Column<string>(type: "text", nullable: true),
IBServerType = table.Column<string>(type: "text", nullable: true),
InfrastructureServerType = table.Column<string>(type: "text", nullable: true),
MonitoringServerType = table.Column<string>(type: "text", nullable: true)
},
constraints: table =>
{
table.PrimaryKey("PK_RawDataEKs", x => x.Id);
});
migrationBuilder.CreateTable(
name: "Settings",
schema: "AIHIT",
columns: table => new
{
Id = table.Column<Guid>(type: "uuid", nullable: false),
DateCreated = table.Column<DateTimeOffset>(type: "timestamp with time zone", nullable: false),
DateModified = table.Column<DateTimeOffset>(type: "timestamp with time zone", nullable: true),
Group = table.Column<string>(type: "text", nullable: true),
Name = table.Column<string>(type: "text", nullable: false),
Value = table.Column<string>(type: "text", nullable: false),
Description = table.Column<string>(type: "text", nullable: true)
},
constraints: table =>
{
table.PrimaryKey("PK_Settings", x => x.Id);
});
migrationBuilder.CreateTable(
name: "V1_ApplicationTypes",
columns: table => new
{
Id = table.Column<Guid>(type: "uuid", nullable: false),
DateCreated = table.Column<DateTimeOffset>(type: "timestamp with time zone", nullable: false),
DateModified = table.Column<DateTimeOffset>(type: "timestamp with time zone", nullable: true),
Name = table.Column<string>(type: "text", nullable: false),
Description = table.Column<string>(type: "text", nullable: true),
V1_ApplicationTypeId = table.Column<Guid>(type: "uuid", nullable: true)
},
constraints: table =>
{
table.PrimaryKey("PK_V1_ApplicationTypes", x => x.Id);
table.ForeignKey(
name: "FK_V1_ApplicationTypes_V1_ApplicationTypes_V1_ApplicationTypeId",
column: x => x.V1_ApplicationTypeId,
principalTable: "V1_ApplicationTypes",
principalColumn: "Id");
});
migrationBuilder.CreateTable(
name: "V1_Hosts",
columns: table => new
{
Id = table.Column<Guid>(type: "uuid", nullable: false),
DateCreated = table.Column<DateTimeOffset>(type: "timestamp with time zone", nullable: false),
DateModified = table.Column<DateTimeOffset>(type: "timestamp with time zone", nullable: true),
HostName = table.Column<string>(type: "text", nullable: true),
IP = table.Column<string>(type: "text", nullable: false),
RegionalEK = table.Column<string>(type: "text", nullable: true),
LinkEK = table.Column<string>(type: "text", nullable: true),
Status = table.Column<string>(type: "text", nullable: true),
WorkGroup = table.Column<string>(type: "text", nullable: true),
Responsible = table.Column<string>(type: "text", nullable: true)
},
constraints: table =>
{
table.PrimaryKey("PK_V1_Hosts", x => x.Id);
});
migrationBuilder.CreateTable(
name: "V1_JobCategorys",
columns: table => new
{
Id = table.Column<Guid>(type: "uuid", nullable: false),
DateCreated = table.Column<DateTimeOffset>(type: "timestamp with time zone", nullable: false),
DateModified = table.Column<DateTimeOffset>(type: "timestamp with time zone", nullable: true),
Name = table.Column<string>(type: "text", nullable: false),
Description = table.Column<string>(type: "text", nullable: true)
},
constraints: table =>
{
table.PrimaryKey("PK_V1_JobCategorys", x => x.Id);
});
migrationBuilder.CreateTable(
name: "V1_JobModes",
columns: table => new
{
Id = table.Column<Guid>(type: "uuid", nullable: false),
DateCreated = table.Column<DateTimeOffset>(type: "timestamp with time zone", nullable: false),
DateModified = table.Column<DateTimeOffset>(type: "timestamp with time zone", nullable: true),
Name = table.Column<string>(type: "text", nullable: false)
},
constraints: table =>
{
table.PrimaryKey("PK_V1_JobModes", x => x.Id);
});
migrationBuilder.CreateTable(
name: "V1_JobStatuses",
columns: table => new
{
Id = table.Column<Guid>(type: "uuid", nullable: false),
DateCreated = table.Column<DateTimeOffset>(type: "timestamp with time zone", nullable: false),
DateModified = table.Column<DateTimeOffset>(type: "timestamp with time zone", nullable: true),
Name = table.Column<string>(type: "text", nullable: false),
Description = table.Column<string>(type: "text", nullable: true)
},
constraints: table =>
{
table.PrimaryKey("PK_V1_JobStatuses", x => x.Id);
});
migrationBuilder.CreateTable(
name: "V1_JobTypes",
columns: table => new
{
Id = table.Column<Guid>(type: "uuid", nullable: false),
DateCreated = table.Column<DateTimeOffset>(type: "timestamp with time zone", nullable: false),
DateModified = table.Column<DateTimeOffset>(type: "timestamp with time zone", nullable: true),
Name = table.Column<string>(type: "text", nullable: false),
Description = table.Column<string>(type: "text", nullable: true)
},
constraints: table =>
{
table.PrimaryKey("PK_V1_JobTypes", x => x.Id);
});
migrationBuilder.CreateTable(
name: "V1_Applications",
columns: table => new
{
Id = table.Column<Guid>(type: "uuid", nullable: false),
DateCreated = table.Column<DateTimeOffset>(type: "timestamp with time zone", nullable: false),
DateModified = table.Column<DateTimeOffset>(type: "timestamp with time zone", nullable: true),
Name = table.Column<string>(type: "text", nullable: false),
ApplicationTypeId = table.Column<Guid>(type: "uuid", nullable: false)
},
constraints: table =>
{
table.PrimaryKey("PK_V1_Applications", x => x.Id);
table.ForeignKey(
name: "FK_V1_Applications_V1_ApplicationTypes_ApplicationTypeId",
column: x => x.ApplicationTypeId,
principalTable: "V1_ApplicationTypes",
principalColumn: "Id",
onDelete: ReferentialAction.Cascade);
});
migrationBuilder.CreateTable(
name: "V1_ApplicationsInHost",
columns: table => new
{
Id = table.Column<Guid>(type: "uuid", nullable: false),
DateCreated = table.Column<DateTimeOffset>(type: "timestamp with time zone", nullable: false),
DateModified = table.Column<DateTimeOffset>(type: "timestamp with time zone", nullable: true),
ApplicationId = table.Column<Guid>(type: "uuid", nullable: false),
HostId = table.Column<Guid>(type: "uuid", nullable: false)
},
constraints: table =>
{
table.PrimaryKey("PK_V1_ApplicationsInHost", x => x.Id);
table.ForeignKey(
name: "FK_V1_ApplicationsInHost_V1_Applications_ApplicationId",
column: x => x.ApplicationId,
principalTable: "V1_Applications",
principalColumn: "Id",
onDelete: ReferentialAction.Cascade);
table.ForeignKey(
name: "FK_V1_ApplicationsInHost_V1_Hosts_HostId",
column: x => x.HostId,
principalTable: "V1_Hosts",
principalColumn: "Id",
onDelete: ReferentialAction.Cascade);
});
migrationBuilder.CreateTable(
name: "V1_Jobs",
columns: table => new
{
Id = table.Column<Guid>(type: "uuid", nullable: false),
DateCreated = table.Column<DateTimeOffset>(type: "timestamp with time zone", nullable: false),
DateModified = table.Column<DateTimeOffset>(type: "timestamp with time zone", nullable: true),
Name = table.Column<string>(type: "text", nullable: false),
ScriptName = table.Column<string>(type: "text", nullable: false),
JobModeId = table.Column<Guid>(type: "uuid", nullable: false),
JobCategoryId = table.Column<Guid>(type: "uuid", nullable: true),
JobTypeId = table.Column<Guid>(type: "uuid", nullable: true),
ApplicationId = table.Column<Guid>(type: "uuid", nullable: false),
Frequency = table.Column<int>(type: "integer", nullable: false),
StartAt = table.Column<DateTimeOffset>(type: "timestamp with time zone", nullable: false),
IsEnabled = table.Column<bool>(type: "boolean", nullable: false)
},
constraints: table =>
{
table.PrimaryKey("PK_V1_Jobs", x => x.Id);
table.ForeignKey(
name: "FK_V1_Jobs_V1_Applications_ApplicationId",
column: x => x.ApplicationId,
principalTable: "V1_Applications",
principalColumn: "Id",
onDelete: ReferentialAction.Cascade);
table.ForeignKey(
name: "FK_V1_Jobs_V1_JobCategorys_JobCategoryId",
column: x => x.JobCategoryId,
principalTable: "V1_JobCategorys",
principalColumn: "Id");
table.ForeignKey(
name: "FK_V1_Jobs_V1_JobModes_JobModeId",
column: x => x.JobModeId,
principalTable: "V1_JobModes",
principalColumn: "Id",
onDelete: ReferentialAction.Cascade);
table.ForeignKey(
name: "FK_V1_Jobs_V1_JobTypes_JobTypeId",
column: x => x.JobTypeId,
principalTable: "V1_JobTypes",
principalColumn: "Id");
});
migrationBuilder.CreateTable(
name: "V1_JobJournals",
columns: table => new
{
Id = table.Column<Guid>(type: "uuid", nullable: false),
DateCreated = table.Column<DateTimeOffset>(type: "timestamp with time zone", nullable: false),
DateModified = table.Column<DateTimeOffset>(type: "timestamp with time zone", nullable: true),
DateOper = table.Column<DateTimeOffset>(type: "timestamp with time zone", nullable: false),
Other = table.Column<string>(type: "text", nullable: true),
TimeOut = table.Column<int>(type: "integer", nullable: true),
Info = table.Column<string>(type: "text", nullable: true),
JobStatusId = table.Column<Guid>(type: "uuid", nullable: false),
HostId = table.Column<Guid>(type: "uuid", nullable: false),
JobId = table.Column<Guid>(type: "uuid", nullable: false)
},
constraints: table =>
{
table.PrimaryKey("PK_V1_JobJournals", x => x.Id);
table.ForeignKey(
name: "FK_V1_JobJournals_V1_Hosts_HostId",
column: x => x.HostId,
principalTable: "V1_Hosts",
principalColumn: "Id",
onDelete: ReferentialAction.Cascade);
table.ForeignKey(
name: "FK_V1_JobJournals_V1_JobStatuses_JobStatusId",
column: x => x.JobStatusId,
principalTable: "V1_JobStatuses",
principalColumn: "Id",
onDelete: ReferentialAction.Cascade);
table.ForeignKey(
name: "FK_V1_JobJournals_V1_Jobs_JobId",
column: x => x.JobId,
principalTable: "V1_Jobs",
principalColumn: "Id",
onDelete: ReferentialAction.Cascade);
});
migrationBuilder.InsertData(
schema: "AIHIT",
table: "Settings",
columns: new[] { "Id", "DateCreated", "DateModified", "Description", "Group", "Name", "Value" },
values: new object[,]
{
{ new Guid("1ad12210-be62-459a-aa6c-fda7648503f7"), new DateTimeOffset(new DateTime(2023, 5, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), new TimeSpan(0, 0, 0, 0, 0)), null, "Строка подключения к базе данных АИХ ИТ", null, "ConnectionString", "Data Source=10.248.19.97; Initial Catalog=mao2;User ID=awhit-ipp-parr;pwd=ET3h$9y1LH#D;TrustServerCertificate=true;" },
{ new Guid("1fd43634-4a06-4237-9727-edfa6f3eebe8"), new DateTimeOffset(new DateTime(2023, 5, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), new TimeSpan(0, 0, 0, 0, 0)), null, "Зона ответственности", "ResponsibleArea", "DVS", "96-ДВС" },
{ new Guid("50f66704-4d26-4587-bb1e-dca70c8f4b89"), new DateTimeOffset(new DateTime(2023, 5, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), new TimeSpan(0, 0, 0, 0, 0)), null, "Зона ответственности", "ResponsibleArea", "ZAB", "94 - ЗАБ" }
});
migrationBuilder.InsertData(
table: "V1_ApplicationTypes",
columns: new[] { "Id", "DateCreated", "DateModified", "Description", "Name", "V1_ApplicationTypeId" },
values: new object[,]
{
{ new Guid("32c28386-6f13-4f7b-8508-be165b7fabdb"), new DateTimeOffset(new DateTime(2023, 5, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), new TimeSpan(0, 0, 0, 0, 0)), null, "Поле СП xml АИХ ИТ", "APP", null },
{ new Guid("7848a96c-cdee-48c1-a786-de9cb889723a"), new DateTimeOffset(new DateTime(2023, 5, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), new TimeSpan(0, 0, 0, 0, 0)), null, "Поле ОС xml АИХ ИТ", "OS", null },
{ new Guid("aae2636f-b93a-42dc-873e-0764a90a0a40"), new DateTimeOffset(new DateTime(2023, 5, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), new TimeSpan(0, 0, 0, 0, 0)), null, "Поле СУБД xml АИХ ИТ", "DB", null }
});
migrationBuilder.InsertData(
table: "V1_JobModes",
columns: new[] { "Id", "DateCreated", "DateModified", "Name" },
values: new object[,]
{
{ new Guid("7516b952-510d-4aaa-971c-a14b184fc1d5"), new DateTimeOffset(new DateTime(2023, 5, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), new TimeSpan(0, 0, 0, 0, 0)), null, "manual" },
{ new Guid("fba4202c-5bad-49c4-b076-d1ca6e1fb158"), new DateTimeOffset(new DateTime(2023, 5, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), new TimeSpan(0, 0, 0, 0, 0)), null, "auto" }
});
migrationBuilder.InsertData(
table: "V1_JobStatuses",
columns: new[] { "Id", "DateCreated", "DateModified", "Description", "Name" },
values: new object[,]
{
{ new Guid("7b945eb6-d885-4570-aff5-8866f1f75ff2"), new DateTimeOffset(new DateTime(2023, 5, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), new TimeSpan(0, 0, 0, 0, 0)), null, "Задание выполнено", "finished" },
{ new Guid("edef6dc3-adad-4c77-8ad1-63bb9052355a"), new DateTimeOffset(new DateTime(2023, 5, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), new TimeSpan(0, 0, 0, 0, 0)), null, "Задание запущено", "started" }
});
migrationBuilder.CreateIndex(
name: "IX_V1_Applications_ApplicationTypeId",
table: "V1_Applications",
column: "ApplicationTypeId");
migrationBuilder.CreateIndex(
name: "IX_V1_ApplicationsInHost_ApplicationId",
table: "V1_ApplicationsInHost",
column: "ApplicationId");
migrationBuilder.CreateIndex(
name: "IX_V1_ApplicationsInHost_HostId",
table: "V1_ApplicationsInHost",
column: "HostId");
migrationBuilder.CreateIndex(
name: "IX_V1_ApplicationTypes_V1_ApplicationTypeId",
table: "V1_ApplicationTypes",
column: "V1_ApplicationTypeId");
migrationBuilder.CreateIndex(
name: "IX_V1_JobJournals_HostId",
table: "V1_JobJournals",
column: "HostId");
migrationBuilder.CreateIndex(
name: "IX_V1_JobJournals_JobId",
table: "V1_JobJournals",
column: "JobId");
migrationBuilder.CreateIndex(
name: "IX_V1_JobJournals_JobStatusId",
table: "V1_JobJournals",
column: "JobStatusId");
migrationBuilder.CreateIndex(
name: "IX_V1_Jobs_ApplicationId",
table: "V1_Jobs",
column: "ApplicationId");
migrationBuilder.CreateIndex(
name: "IX_V1_Jobs_JobCategoryId",
table: "V1_Jobs",
column: "JobCategoryId");
migrationBuilder.CreateIndex(
name: "IX_V1_Jobs_JobModeId",
table: "V1_Jobs",
column: "JobModeId");
migrationBuilder.CreateIndex(
name: "IX_V1_Jobs_JobTypeId",
table: "V1_Jobs",
column: "JobTypeId");
}
/// <inheritdoc />
protected override void Down(MigrationBuilder migrationBuilder)
{
migrationBuilder.DropTable(
name: "RawDataEKs",
schema: "AIHIT");
migrationBuilder.DropTable(
name: "Settings",
schema: "AIHIT");
migrationBuilder.DropTable(
name: "V1_ApplicationsInHost");
migrationBuilder.DropTable(
name: "V1_JobJournals");
migrationBuilder.DropTable(
name: "V1_Hosts");
migrationBuilder.DropTable(
name: "V1_JobStatuses");
migrationBuilder.DropTable(
name: "V1_Jobs");
migrationBuilder.DropTable(
name: "V1_Applications");
migrationBuilder.DropTable(
name: "V1_JobCategorys");
migrationBuilder.DropTable(
name: "V1_JobModes");
migrationBuilder.DropTable(
name: "V1_JobTypes");
migrationBuilder.DropTable(
name: "V1_ApplicationTypes");
migrationBuilder.CreateTable(
name: "V1_ApplicationType",
columns: table => new
{
Id = table.Column<Guid>(type: "uuid", nullable: false),
DateCreated = table.Column<DateTimeOffset>(type: "timestamp with time zone", nullable: false),
DateModified = table.Column<DateTimeOffset>(type: "timestamp with time zone", nullable: true),
Description = table.Column<string>(type: "text", nullable: true),
Name = table.Column<string>(type: "text", nullable: false),
V1_ApplicationTypeId = table.Column<Guid>(type: "uuid", nullable: true)
},
constraints: table =>
{
table.PrimaryKey("PK_V1_ApplicationType", x => x.Id);
table.ForeignKey(
name: "FK_V1_ApplicationType_V1_ApplicationType_V1_ApplicationTypeId",
column: x => x.V1_ApplicationTypeId,
principalTable: "V1_ApplicationType",
principalColumn: "Id");
});
migrationBuilder.CreateTable(
name: "V1_Host",
columns: table => new
{
Id = table.Column<Guid>(type: "uuid", nullable: false),
DateCreated = table.Column<DateTimeOffset>(type: "timestamp with time zone", nullable: false),
DateModified = table.Column<DateTimeOffset>(type: "timestamp with time zone", nullable: true),
HostName = table.Column<string>(type: "text", nullable: true),
IP = table.Column<string>(type: "text", nullable: false),
LinkEK = table.Column<string>(type: "text", nullable: true),
RegionalEK = table.Column<string>(type: "text", nullable: true),
Responsible = table.Column<string>(type: "text", nullable: true),
Status = table.Column<string>(type: "text", nullable: true),
WorkGroup = table.Column<string>(type: "text", nullable: true)
},
constraints: table =>
{
table.PrimaryKey("PK_V1_Host", x => x.Id);
});
migrationBuilder.CreateTable(
name: "V1_JobCategory",
columns: table => new
{
Id = table.Column<Guid>(type: "uuid", nullable: false),
DateCreated = table.Column<DateTimeOffset>(type: "timestamp with time zone", nullable: false),
DateModified = table.Column<DateTimeOffset>(type: "timestamp with time zone", nullable: true),
Description = table.Column<string>(type: "text", nullable: true),
Name = table.Column<string>(type: "text", nullable: false)
},
constraints: table =>
{
table.PrimaryKey("PK_V1_JobCategory", x => x.Id);
});
migrationBuilder.CreateTable(
name: "V1_JobMode",
columns: table => new
{
Id = table.Column<Guid>(type: "uuid", nullable: false),
DateCreated = table.Column<DateTimeOffset>(type: "timestamp with time zone", nullable: false),
DateModified = table.Column<DateTimeOffset>(type: "timestamp with time zone", nullable: true),
Name = table.Column<string>(type: "text", nullable: false)
},
constraints: table =>
{
table.PrimaryKey("PK_V1_JobMode", x => x.Id);
});
migrationBuilder.CreateTable(
name: "V1_JobStatus",
columns: table => new
{
Id = table.Column<Guid>(type: "uuid", nullable: false),
DateCreated = table.Column<DateTimeOffset>(type: "timestamp with time zone", nullable: false),
DateModified = table.Column<DateTimeOffset>(type: "timestamp with time zone", nullable: true),
Description = table.Column<string>(type: "text", nullable: true),
Name = table.Column<string>(type: "text", nullable: false)
},
constraints: table =>
{
table.PrimaryKey("PK_V1_JobStatus", x => x.Id);
});
migrationBuilder.CreateTable(
name: "V1_JobType",
columns: table => new
{
Id = table.Column<Guid>(type: "uuid", nullable: false),
DateCreated = table.Column<DateTimeOffset>(type: "timestamp with time zone", nullable: false),
DateModified = table.Column<DateTimeOffset>(type: "timestamp with time zone", nullable: true),
Description = table.Column<string>(type: "text", nullable: true),
Name = table.Column<string>(type: "text", nullable: false)
},
constraints: table =>
{
table.PrimaryKey("PK_V1_JobType", x => x.Id);
});
migrationBuilder.CreateTable(
name: "V1_Application",
columns: table => new
{
Id = table.Column<Guid>(type: "uuid", nullable: false),
ApplicationTypeId = table.Column<Guid>(type: "uuid", nullable: false),
DateCreated = table.Column<DateTimeOffset>(type: "timestamp with time zone", nullable: false),
DateModified = table.Column<DateTimeOffset>(type: "timestamp with time zone", nullable: true),
Name = table.Column<string>(type: "text", nullable: false)
},
constraints: table =>
{
table.PrimaryKey("PK_V1_Application", x => x.Id);
table.ForeignKey(
name: "FK_V1_Application_V1_ApplicationType_ApplicationTypeId",
column: x => x.ApplicationTypeId,
principalTable: "V1_ApplicationType",
principalColumn: "Id",
onDelete: ReferentialAction.Cascade);
});
migrationBuilder.CreateTable(
name: "V1_ApplicationInHost",
columns: table => new
{
Id = table.Column<Guid>(type: "uuid", nullable: false),
ApplicationId = table.Column<Guid>(type: "uuid", nullable: false),
HostId = table.Column<Guid>(type: "uuid", nullable: false),
DateCreated = table.Column<DateTimeOffset>(type: "timestamp with time zone", nullable: false),
DateModified = table.Column<DateTimeOffset>(type: "timestamp with time zone", nullable: true)
},
constraints: table =>
{
table.PrimaryKey("PK_V1_ApplicationInHost", x => x.Id);
table.ForeignKey(
name: "FK_V1_ApplicationInHost_V1_Application_ApplicationId",
column: x => x.ApplicationId,
principalTable: "V1_Application",
principalColumn: "Id",
onDelete: ReferentialAction.Cascade);
table.ForeignKey(
name: "FK_V1_ApplicationInHost_V1_Host_HostId",
column: x => x.HostId,
principalTable: "V1_Host",
principalColumn: "Id",
onDelete: ReferentialAction.Cascade);
});
migrationBuilder.CreateTable(
name: "V1_Job",
columns: table => new
{
Id = table.Column<Guid>(type: "uuid", nullable: false),
ApplicationId = table.Column<Guid>(type: "uuid", nullable: false),
JobCategoryId = table.Column<Guid>(type: "uuid", nullable: true),
JobModeId = table.Column<Guid>(type: "uuid", nullable: false),
JobTypeId = table.Column<Guid>(type: "uuid", nullable: true),
DateCreated = table.Column<DateTimeOffset>(type: "timestamp with time zone", nullable: false),
DateModified = table.Column<DateTimeOffset>(type: "timestamp with time zone", nullable: true),
Frequency = table.Column<int>(type: "integer", nullable: false),
IsEnabled = table.Column<bool>(type: "boolean", nullable: false),
Name = table.Column<string>(type: "text", nullable: false),
ScriptName = table.Column<string>(type: "text", nullable: false),
StartAt = table.Column<DateTimeOffset>(type: "timestamp with time zone", nullable: false)
},
constraints: table =>
{
table.PrimaryKey("PK_V1_Job", x => x.Id);
table.ForeignKey(
name: "FK_V1_Job_V1_Application_ApplicationId",
column: x => x.ApplicationId,
principalTable: "V1_Application",
principalColumn: "Id",
onDelete: ReferentialAction.Cascade);
table.ForeignKey(
name: "FK_V1_Job_V1_JobCategory_JobCategoryId",
column: x => x.JobCategoryId,
principalTable: "V1_JobCategory",
principalColumn: "Id");
table.ForeignKey(
name: "FK_V1_Job_V1_JobMode_JobModeId",
column: x => x.JobModeId,
principalTable: "V1_JobMode",
principalColumn: "Id",
onDelete: ReferentialAction.Cascade);
table.ForeignKey(
name: "FK_V1_Job_V1_JobType_JobTypeId",
column: x => x.JobTypeId,
principalTable: "V1_JobType",
principalColumn: "Id");
});
migrationBuilder.CreateTable(
name: "V1_JobJournal",
columns: table => new
{
Id = table.Column<Guid>(type: "uuid", nullable: false),
HostId = table.Column<Guid>(type: "uuid", nullable: false),
JobId = table.Column<Guid>(type: "uuid", nullable: false),
JobStatusId = table.Column<Guid>(type: "uuid", nullable: false),
DateCreated = table.Column<DateTimeOffset>(type: "timestamp with time zone", nullable: false),
DateModified = table.Column<DateTimeOffset>(type: "timestamp with time zone", nullable: true),
DateOper = table.Column<DateTimeOffset>(type: "timestamp with time zone", nullable: false),
Info = table.Column<string>(type: "text", nullable: true),
Other = table.Column<string>(type: "text", nullable: true),
TimeOut = table.Column<int>(type: "integer", nullable: true)
},
constraints: table =>
{
table.PrimaryKey("PK_V1_JobJournal", x => x.Id);
table.ForeignKey(
name: "FK_V1_JobJournal_V1_Host_HostId",
column: x => x.HostId,
principalTable: "V1_Host",
principalColumn: "Id",
onDelete: ReferentialAction.Cascade);
table.ForeignKey(
name: "FK_V1_JobJournal_V1_JobStatus_JobStatusId",
column: x => x.JobStatusId,
principalTable: "V1_JobStatus",
principalColumn: "Id",
onDelete: ReferentialAction.Cascade);
table.ForeignKey(
name: "FK_V1_JobJournal_V1_Job_JobId",
column: x => x.JobId,
principalTable: "V1_Job",
principalColumn: "Id",
onDelete: ReferentialAction.Cascade);
});
migrationBuilder.InsertData(
table: "V1_ApplicationType",
columns: new[] { "Id", "DateCreated", "DateModified", "Description", "Name", "V1_ApplicationTypeId" },
values: new object[,]
{
{ new Guid("32c28386-6f13-4f7b-8508-be165b7fabdb"), new DateTimeOffset(new DateTime(2023, 5, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), new TimeSpan(0, 0, 0, 0, 0)), null, "Поле СП xml АИХ ИТ", "APP", null },
{ new Guid("7848a96c-cdee-48c1-a786-de9cb889723a"), new DateTimeOffset(new DateTime(2023, 5, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), new TimeSpan(0, 0, 0, 0, 0)), null, "Поле ОС xml АИХ ИТ", "OS", null },
{ new Guid("aae2636f-b93a-42dc-873e-0764a90a0a40"), new DateTimeOffset(new DateTime(2023, 5, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), new TimeSpan(0, 0, 0, 0, 0)), null, "Поле СУБД xml АИХ ИТ", "DB", null }
});
migrationBuilder.InsertData(
table: "V1_JobMode",
columns: new[] { "Id", "DateCreated", "DateModified", "Name" },
values: new object[,]
{
{ new Guid("7516b952-510d-4aaa-971c-a14b184fc1d5"), new DateTimeOffset(new DateTime(2023, 5, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), new TimeSpan(0, 0, 0, 0, 0)), null, "manual" },
{ new Guid("fba4202c-5bad-49c4-b076-d1ca6e1fb158"), new DateTimeOffset(new DateTime(2023, 5, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), new TimeSpan(0, 0, 0, 0, 0)), null, "auto" }
});
migrationBuilder.InsertData(
table: "V1_JobStatus",
columns: new[] { "Id", "DateCreated", "DateModified", "Description", "Name" },
values: new object[,]
{
{ new Guid("7b945eb6-d885-4570-aff5-8866f1f75ff2"), new DateTimeOffset(new DateTime(2023, 5, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), new TimeSpan(0, 0, 0, 0, 0)), null, "Задание выполнено", "finished" },
{ new Guid("edef6dc3-adad-4c77-8ad1-63bb9052355a"), new DateTimeOffset(new DateTime(2023, 5, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), new TimeSpan(0, 0, 0, 0, 0)), null, "Задание запущено", "started" }
});
migrationBuilder.CreateIndex(
name: "IX_V1_Application_ApplicationTypeId",
table: "V1_Application",
column: "ApplicationTypeId");
migrationBuilder.CreateIndex(
name: "IX_V1_ApplicationInHost_ApplicationId",
table: "V1_ApplicationInHost",
column: "ApplicationId");
migrationBuilder.CreateIndex(
name: "IX_V1_ApplicationInHost_HostId",
table: "V1_ApplicationInHost",
column: "HostId");
migrationBuilder.CreateIndex(
name: "IX_V1_ApplicationType_V1_ApplicationTypeId",
table: "V1_ApplicationType",
column: "V1_ApplicationTypeId");
migrationBuilder.CreateIndex(
name: "IX_V1_Job_ApplicationId",
table: "V1_Job",
column: "ApplicationId");
migrationBuilder.CreateIndex(
name: "IX_V1_Job_JobCategoryId",
table: "V1_Job",
column: "JobCategoryId");
migrationBuilder.CreateIndex(
name: "IX_V1_Job_JobModeId",
table: "V1_Job",
column: "JobModeId");
migrationBuilder.CreateIndex(
name: "IX_V1_Job_JobTypeId",
table: "V1_Job",
column: "JobTypeId");
migrationBuilder.CreateIndex(
name: "IX_V1_JobJournal_HostId",
table: "V1_JobJournal",
column: "HostId");
migrationBuilder.CreateIndex(
name: "IX_V1_JobJournal_JobId",
table: "V1_JobJournal",
column: "JobId");
migrationBuilder.CreateIndex(
name: "IX_V1_JobJournal_JobStatusId",
table: "V1_JobJournal",
column: "JobStatusId");
}
}
}