123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212 |
- using System;
- using Microsoft.EntityFrameworkCore.Migrations;
- #nullable disable
- #pragma warning disable CA1814 // Prefer jagged arrays over multidimensional
- namespace MTWorkHR.Infrastructure.Migrations
- {
- /// <inheritdoc />
- public partial class UserTasks : Migration
- {
- /// <inheritdoc />
- protected override void Up(MigrationBuilder migrationBuilder)
- {
- migrationBuilder.CreateTable(
- name: "AttachmentType",
- columns: table => new
- {
- Id = table.Column<long>(type: "bigint", nullable: false)
- .Annotation("SqlServer:Identity", "1, 1"),
- NameAr = table.Column<string>(type: "nvarchar(250)", maxLength: 250, nullable: false),
- NameEn = table.Column<string>(type: "nvarchar(250)", maxLength: 250, nullable: false),
- IsRequired = table.Column<bool>(type: "bit", nullable: false)
- },
- constraints: table =>
- {
- table.PrimaryKey("PK_AttachmentType", x => x.Id);
- });
- migrationBuilder.CreateTable(
- name: "Projects",
- columns: table => new
- {
- Id = table.Column<long>(type: "bigint", nullable: false)
- .Annotation("SqlServer:Identity", "1, 1"),
- NameAr = table.Column<string>(type: "nvarchar(250)", maxLength: 250, nullable: false),
- NameEn = table.Column<string>(type: "nvarchar(250)", maxLength: 250, nullable: false)
- },
- constraints: table =>
- {
- table.PrimaryKey("PK_Projects", x => x.Id);
- });
- migrationBuilder.CreateTable(
- name: "UserTaskStatuses",
- columns: table => new
- {
- Id = table.Column<long>(type: "bigint", nullable: false)
- .Annotation("SqlServer:Identity", "1, 1"),
- NameAr = table.Column<string>(type: "nvarchar(250)", maxLength: 250, nullable: false),
- NameEn = table.Column<string>(type: "nvarchar(250)", maxLength: 250, nullable: false)
- },
- constraints: table =>
- {
- table.PrimaryKey("PK_UserTaskStatuses", x => x.Id);
- });
- migrationBuilder.CreateTable(
- name: "UserTaskHistories",
- columns: table => new
- {
- Id = table.Column<long>(type: "bigint", nullable: false)
- .Annotation("SqlServer:Identity", "1, 1"),
- CreateUser = table.Column<string>(type: "nvarchar(450)", maxLength: 450, nullable: true),
- UpdateUser = table.Column<string>(type: "nvarchar(450)", maxLength: 450, nullable: true),
- CreateDate = table.Column<DateTime>(type: "datetime2", nullable: false),
- UpdateDate = table.Column<DateTime>(type: "datetime2", nullable: true),
- AssignedToUserId = table.Column<long>(type: "bigint", nullable: false),
- Comment = table.Column<string>(type: "nvarchar(500)", maxLength: 500, nullable: false),
- CurrentStatusId = table.Column<long>(type: "bigint", nullable: false),
- IsDeleted = table.Column<bool>(type: "bit", nullable: false)
- },
- constraints: table =>
- {
- table.PrimaryKey("PK_UserTaskHistories", x => x.Id);
- table.ForeignKey(
- name: "FK_UserTaskHistories_UserTaskStatuses_CurrentStatusId",
- column: x => x.CurrentStatusId,
- principalTable: "UserTaskStatuses",
- principalColumn: "Id",
- onDelete: ReferentialAction.Cascade);
- });
- migrationBuilder.CreateTable(
- name: "UserTasks",
- columns: table => new
- {
- Id = table.Column<long>(type: "bigint", nullable: false)
- .Annotation("SqlServer:Identity", "1, 1"),
- CreateUser = table.Column<string>(type: "nvarchar(450)", maxLength: 450, nullable: true),
- UpdateUser = table.Column<string>(type: "nvarchar(450)", maxLength: 450, nullable: true),
- CreateDate = table.Column<DateTime>(type: "datetime2", nullable: false),
- UpdateDate = table.Column<DateTime>(type: "datetime2", nullable: true),
- IsDeleted = table.Column<bool>(type: "bit", nullable: false),
- DeleteUserId = table.Column<string>(type: "nvarchar(450)", maxLength: 450, nullable: false),
- AssignedUserId = table.Column<long>(type: "bigint", nullable: false),
- Title = table.Column<string>(type: "nvarchar(max)", nullable: false),
- Description = table.Column<string>(type: "nvarchar(max)", nullable: false),
- DueDate = table.Column<DateTime>(type: "datetime2", nullable: false),
- Priority = table.Column<int>(type: "int", nullable: false),
- ProjectId = table.Column<long>(type: "bigint", nullable: false),
- StatusId = table.Column<long>(type: "bigint", nullable: false)
- },
- constraints: table =>
- {
- table.PrimaryKey("PK_UserTasks", x => x.Id);
- table.ForeignKey(
- name: "FK_UserTasks_Projects_ProjectId",
- column: x => x.ProjectId,
- principalTable: "Projects",
- principalColumn: "Id",
- onDelete: ReferentialAction.Cascade);
- table.ForeignKey(
- name: "FK_UserTasks_UserTaskStatuses_StatusId",
- column: x => x.StatusId,
- principalTable: "UserTaskStatuses",
- principalColumn: "Id",
- onDelete: ReferentialAction.Cascade);
- });
- migrationBuilder.CreateTable(
- name: "UserTaskAttachments",
- columns: table => new
- {
- Id = table.Column<long>(type: "bigint", nullable: false)
- .Annotation("SqlServer:Identity", "1, 1"),
- CreateUser = table.Column<string>(type: "nvarchar(450)", maxLength: 450, nullable: true),
- UpdateUser = table.Column<string>(type: "nvarchar(450)", maxLength: 450, nullable: true),
- CreateDate = table.Column<DateTime>(type: "datetime2", nullable: false),
- UpdateDate = table.Column<DateTime>(type: "datetime2", nullable: true),
- TaskId = table.Column<long>(type: "bigint", nullable: false),
- AttachmentTypeId = table.Column<long>(type: "bigint", nullable: false),
- FileName = table.Column<string>(type: "nvarchar(250)", maxLength: 250, nullable: false),
- OriginalName = table.Column<string>(type: "nvarchar(250)", maxLength: 250, nullable: false)
- },
- constraints: table =>
- {
- table.PrimaryKey("PK_UserTaskAttachments", x => x.Id);
- table.ForeignKey(
- name: "FK_UserTaskAttachments_AttachmentType_AttachmentTypeId",
- column: x => x.AttachmentTypeId,
- principalTable: "AttachmentType",
- principalColumn: "Id",
- onDelete: ReferentialAction.Cascade);
- table.ForeignKey(
- name: "FK_UserTaskAttachments_UserTasks_TaskId",
- column: x => x.TaskId,
- principalTable: "UserTasks",
- principalColumn: "Id",
- onDelete: ReferentialAction.Cascade);
- });
- migrationBuilder.InsertData(
- table: "AttachmentType",
- columns: new[] { "Id", "IsRequired", "NameAr", "NameEn" },
- values: new object[,]
- {
- { 1L, false, "السيرة الذاتية", "CV" },
- { 2L, false, "الهوية", "Identification" }
- });
- migrationBuilder.CreateIndex(
- name: "IX_UserTaskAttachments_AttachmentTypeId",
- table: "UserTaskAttachments",
- column: "AttachmentTypeId");
- migrationBuilder.CreateIndex(
- name: "IX_UserTaskAttachments_TaskId",
- table: "UserTaskAttachments",
- column: "TaskId");
- migrationBuilder.CreateIndex(
- name: "IX_UserTaskHistories_CurrentStatusId",
- table: "UserTaskHistories",
- column: "CurrentStatusId");
- migrationBuilder.CreateIndex(
- name: "IX_UserTasks_ProjectId",
- table: "UserTasks",
- column: "ProjectId");
- migrationBuilder.CreateIndex(
- name: "IX_UserTasks_StatusId",
- table: "UserTasks",
- column: "StatusId");
- }
- /// <inheritdoc />
- protected override void Down(MigrationBuilder migrationBuilder)
- {
- migrationBuilder.DropTable(
- name: "UserTaskAttachments");
- migrationBuilder.DropTable(
- name: "UserTaskHistories");
- migrationBuilder.DropTable(
- name: "AttachmentType");
- migrationBuilder.DropTable(
- name: "UserTasks");
- migrationBuilder.DropTable(
- name: "Projects");
- migrationBuilder.DropTable(
- name: "UserTaskStatuses");
- }
- }
- }
|