using System;
using Microsoft.EntityFrameworkCore.Migrations;

#nullable disable

#pragma warning disable CA1814 // Prefer jagged arrays over multidimensional

namespace Marco.Pms.DataAccess.Migrations
{
    /// <inheritdoc />
    public partial class Added_New_Feature_Permissiom_View_All_Employee : Migration
    {
        /// <inheritdoc />
        protected override void Up(MigrationBuilder migrationBuilder)
        {
            migrationBuilder.DeleteData(
                table: "FeaturePermissions",
                keyColumn: "Id",
                keyValue: new Guid("c7b68e33-72f0-474f-bd96-77636427ecc8"));

            migrationBuilder.DeleteData(
                table: "FeaturePermissions",
                keyColumn: "Id",
                keyValue: new Guid("f2aee20a-b754-4537-8166-f9507b44585b"));

            migrationBuilder.DeleteData(
                table: "Features",
                keyColumn: "Id",
                keyValue: new Guid("9666de86-d7c7-4d3d-acaa-fcd6d6b81f3c"));

            migrationBuilder.UpdateData(
                table: "FeaturePermissions",
                keyColumn: "Id",
                keyValue: new Guid("b82d2b7e-0d52-45f3-997b-c008ea460e7f"),
                column: "Description",
                value: "Grants a user read-only access to details about the individuals within the system which are is assigned to same projects as user. This typically includes names, contact information, roles, departments, and potentially other relevant employee data");

            migrationBuilder.InsertData(
                table: "FeaturePermissions",
                columns: new[] { "Id", "Description", "FeatureId", "IsEnabled", "Name" },
                values: new object[,]
                {
                    { new Guid("60611762-7f8a-4fb5-b53f-b1139918796b"), "Grants a user read-only access to details about the all individuals within the system. This typically includes names, contact information, roles, departments, and potentially other relevant employee data", new Guid("81ab8a87-8ccd-4015-a917-0627cee6a100"), true, "View All Employee" },
                    { new Guid("8d7cc6e3-9147-41f7-aaa7-fa507e450bd4"), "Grants a user comprehensive read-only access to all details concerning the project's underlying systems, technologies, resources, and configurations", new Guid("53176ebf-c75d-42e5-839f-4508ffac3def"), true, "View Project Infra" },
                    { new Guid("cf2825ad-453b-46aa-91d9-27c124d63373"), "This allows them to create, modify, and manage all aspects of the supporting infrastructure.", new Guid("53176ebf-c75d-42e5-839f-4508ffac3def"), true, "Manage Project Infra" }
                });

            migrationBuilder.UpdateData(
                table: "Features",
                keyColumn: "Id",
                keyValue: new Guid("52c9cf54-1eb2-44d2-81bb-524cf29c0a94"),
                column: "Name",
                value: "Attendance Management");

            migrationBuilder.UpdateData(
                table: "Features",
                keyColumn: "Id",
                keyValue: new Guid("53176ebf-c75d-42e5-839f-4508ffac3def"),
                column: "Name",
                value: "Project Management");

            migrationBuilder.UpdateData(
                table: "Features",
                keyColumn: "Id",
                keyValue: new Guid("be3b3afc-6ccf-4566-b9b6-aafcb65546be"),
                column: "Name",
                value: "Masters");
        }

        /// <inheritdoc />
        protected override void Down(MigrationBuilder migrationBuilder)
        {
            migrationBuilder.DeleteData(
                table: "FeaturePermissions",
                keyColumn: "Id",
                keyValue: new Guid("60611762-7f8a-4fb5-b53f-b1139918796b"));

            migrationBuilder.DeleteData(
                table: "FeaturePermissions",
                keyColumn: "Id",
                keyValue: new Guid("8d7cc6e3-9147-41f7-aaa7-fa507e450bd4"));

            migrationBuilder.DeleteData(
                table: "FeaturePermissions",
                keyColumn: "Id",
                keyValue: new Guid("cf2825ad-453b-46aa-91d9-27c124d63373"));

            migrationBuilder.UpdateData(
                table: "FeaturePermissions",
                keyColumn: "Id",
                keyValue: new Guid("b82d2b7e-0d52-45f3-997b-c008ea460e7f"),
                column: "Description",
                value: "Grants a user read-only access to details about the individuals within the system. This typically includes names, contact information, roles, departments, and potentially other relevant employee data");

            migrationBuilder.UpdateData(
                table: "Features",
                keyColumn: "Id",
                keyValue: new Guid("52c9cf54-1eb2-44d2-81bb-524cf29c0a94"),
                column: "Name",
                value: "Attendance");

            migrationBuilder.UpdateData(
                table: "Features",
                keyColumn: "Id",
                keyValue: new Guid("53176ebf-c75d-42e5-839f-4508ffac3def"),
                column: "Name",
                value: "Manage Project");

            migrationBuilder.UpdateData(
                table: "Features",
                keyColumn: "Id",
                keyValue: new Guid("be3b3afc-6ccf-4566-b9b6-aafcb65546be"),
                column: "Name",
                value: "Global Masters");

            migrationBuilder.InsertData(
                table: "Features",
                columns: new[] { "Id", "Description", "IsActive", "ModuleId", "Name" },
                values: new object[] { new Guid("9666de86-d7c7-4d3d-acaa-fcd6d6b81f3c"), "Manage Infra", true, new Guid("bf59fd88-b57a-4d67-bf01-3780f385896b"), "Manage Infra" });

            migrationBuilder.InsertData(
                table: "FeaturePermissions",
                columns: new[] { "Id", "Description", "FeatureId", "IsEnabled", "Name" },
                values: new object[,]
                {
                    { new Guid("c7b68e33-72f0-474f-bd96-77636427ecc8"), "Grants a user comprehensive read-only access to all details concerning the project's underlying systems, technologies, resources, and configurations", new Guid("9666de86-d7c7-4d3d-acaa-fcd6d6b81f3c"), true, "View Project Infra" },
                    { new Guid("f2aee20a-b754-4537-8166-f9507b44585b"), "This allows them to create, modify, and manage all aspects of the supporting infrastructure.", new Guid("9666de86-d7c7-4d3d-acaa-fcd6d6b81f3c"), true, "Manage Project Infra" }
                });
        }
    }
}
