1838 lines
		
	
	
		
			95 KiB
		
	
	
	
		
			C#
		
	
	
	
	
	
			
		
		
	
	
			1838 lines
		
	
	
		
			95 KiB
		
	
	
	
		
			C#
		
	
	
	
	
	
| using Microsoft.EntityFrameworkCore.Metadata;
 | |
| using Microsoft.EntityFrameworkCore.Migrations;
 | |
| 
 | |
| #nullable disable
 | |
| 
 | |
| #pragma warning disable CA1814 // Prefer jagged arrays over multidimensional
 | |
| 
 | |
| namespace Marco.Pms.DataAccess.Migrations
 | |
| {
 | |
|     /// <inheritdoc />
 | |
|     public partial class Initmigration : Migration
 | |
|     {
 | |
|         /// <inheritdoc />
 | |
|         protected override void Up(MigrationBuilder migrationBuilder)
 | |
|         {
 | |
|             migrationBuilder.AlterDatabase()
 | |
|                 .Annotation("MySql:CharSet", "utf8mb4");
 | |
| 
 | |
|             migrationBuilder.CreateTable(
 | |
|                 name: "ActivityCheckLists",
 | |
|                 columns: table => new
 | |
|                 {
 | |
|                     Id = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci"),
 | |
|                     ActivityId = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci"),
 | |
|                     Description = table.Column<string>(type: "longtext", nullable: true)
 | |
|                         .Annotation("MySql:CharSet", "utf8mb4"),
 | |
|                     IsChecked = table.Column<bool>(type: "tinyint(1)", nullable: false),
 | |
|                     IsMandatory = table.Column<bool>(type: "tinyint(1)", nullable: false),
 | |
|                     TenantId = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci")
 | |
|                 },
 | |
|                 constraints: table =>
 | |
|                 {
 | |
|                     table.PrimaryKey("PK_ActivityCheckLists", x => x.Id);
 | |
|                 })
 | |
|                 .Annotation("MySql:CharSet", "utf8mb4");
 | |
| 
 | |
|             migrationBuilder.CreateTable(
 | |
|                 name: "AspNetRoles",
 | |
|                 columns: table => new
 | |
|                 {
 | |
|                     Id = table.Column<string>(type: "varchar(255)", nullable: false)
 | |
|                         .Annotation("MySql:CharSet", "utf8mb4"),
 | |
|                     Name = table.Column<string>(type: "varchar(256)", maxLength: 256, nullable: true)
 | |
|                         .Annotation("MySql:CharSet", "utf8mb4"),
 | |
|                     NormalizedName = table.Column<string>(type: "varchar(256)", maxLength: 256, nullable: true)
 | |
|                         .Annotation("MySql:CharSet", "utf8mb4"),
 | |
|                     ConcurrencyStamp = table.Column<string>(type: "longtext", nullable: true)
 | |
|                         .Annotation("MySql:CharSet", "utf8mb4")
 | |
|                 },
 | |
|                 constraints: table =>
 | |
|                 {
 | |
|                     table.PrimaryKey("PK_AspNetRoles", x => x.Id);
 | |
|                 })
 | |
|                 .Annotation("MySql:CharSet", "utf8mb4");
 | |
| 
 | |
|             migrationBuilder.CreateTable(
 | |
|                 name: "AspNetUsers",
 | |
|                 columns: table => new
 | |
|                 {
 | |
|                     Id = table.Column<string>(type: "varchar(255)", nullable: false)
 | |
|                         .Annotation("MySql:CharSet", "utf8mb4"),
 | |
|                     Discriminator = table.Column<string>(type: "varchar(21)", maxLength: 21, nullable: false)
 | |
|                         .Annotation("MySql:CharSet", "utf8mb4"),
 | |
|                     TenantId = table.Column<Guid>(type: "char(36)", nullable: true, collation: "ascii_general_ci"),
 | |
|                     IsRootUser = table.Column<bool>(type: "tinyint(1)", nullable: true),
 | |
|                     IsActive = table.Column<bool>(type: "tinyint(1)", nullable: true),
 | |
|                     UserName = table.Column<string>(type: "varchar(256)", maxLength: 256, nullable: true)
 | |
|                         .Annotation("MySql:CharSet", "utf8mb4"),
 | |
|                     NormalizedUserName = table.Column<string>(type: "varchar(256)", maxLength: 256, nullable: true)
 | |
|                         .Annotation("MySql:CharSet", "utf8mb4"),
 | |
|                     Email = table.Column<string>(type: "varchar(256)", maxLength: 256, nullable: true)
 | |
|                         .Annotation("MySql:CharSet", "utf8mb4"),
 | |
|                     NormalizedEmail = table.Column<string>(type: "varchar(256)", maxLength: 256, nullable: true)
 | |
|                         .Annotation("MySql:CharSet", "utf8mb4"),
 | |
|                     EmailConfirmed = table.Column<bool>(type: "tinyint(1)", nullable: false),
 | |
|                     PasswordHash = table.Column<string>(type: "longtext", nullable: true)
 | |
|                         .Annotation("MySql:CharSet", "utf8mb4"),
 | |
|                     SecurityStamp = table.Column<string>(type: "longtext", nullable: true)
 | |
|                         .Annotation("MySql:CharSet", "utf8mb4"),
 | |
|                     ConcurrencyStamp = table.Column<string>(type: "longtext", nullable: true)
 | |
|                         .Annotation("MySql:CharSet", "utf8mb4"),
 | |
|                     PhoneNumber = table.Column<string>(type: "longtext", nullable: true)
 | |
|                         .Annotation("MySql:CharSet", "utf8mb4"),
 | |
|                     PhoneNumberConfirmed = table.Column<bool>(type: "tinyint(1)", nullable: false),
 | |
|                     TwoFactorEnabled = table.Column<bool>(type: "tinyint(1)", nullable: false),
 | |
|                     LockoutEnd = table.Column<DateTimeOffset>(type: "datetime(6)", nullable: true),
 | |
|                     LockoutEnabled = table.Column<bool>(type: "tinyint(1)", nullable: false),
 | |
|                     AccessFailedCount = table.Column<int>(type: "int", nullable: false)
 | |
|                 },
 | |
|                 constraints: table =>
 | |
|                 {
 | |
|                     table.PrimaryKey("PK_AspNetUsers", x => x.Id);
 | |
|                 })
 | |
|                 .Annotation("MySql:CharSet", "utf8mb4");
 | |
| 
 | |
|             migrationBuilder.CreateTable(
 | |
|                 name: "CheckListMappings",
 | |
|                 columns: table => new
 | |
|                 {
 | |
|                     Id = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci"),
 | |
|                     TaskAllocationId = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci"),
 | |
|                     CheckListId = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci")
 | |
|                 },
 | |
|                 constraints: table =>
 | |
|                 {
 | |
|                     table.PrimaryKey("PK_CheckListMappings", x => x.Id);
 | |
|                 })
 | |
|                 .Annotation("MySql:CharSet", "utf8mb4");
 | |
| 
 | |
|             migrationBuilder.CreateTable(
 | |
|                 name: "Industries",
 | |
|                 columns: table => new
 | |
|                 {
 | |
|                     Id = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci"),
 | |
|                     Name = table.Column<string>(type: "longtext", nullable: true)
 | |
|                         .Annotation("MySql:CharSet", "utf8mb4")
 | |
|                 },
 | |
|                 constraints: table =>
 | |
|                 {
 | |
|                     table.PrimaryKey("PK_Industries", x => x.Id);
 | |
|                 })
 | |
|                 .Annotation("MySql:CharSet", "utf8mb4");
 | |
| 
 | |
|             migrationBuilder.CreateTable(
 | |
|                 name: "Inquiries",
 | |
|                 columns: table => new
 | |
|                 {
 | |
|                     Id = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci"),
 | |
|                     OrganizatioinName = table.Column<string>(type: "longtext", nullable: true)
 | |
|                         .Annotation("MySql:CharSet", "utf8mb4"),
 | |
|                     Email = table.Column<string>(type: "longtext", nullable: true)
 | |
|                         .Annotation("MySql:CharSet", "utf8mb4"),
 | |
|                     About = table.Column<string>(type: "longtext", nullable: true)
 | |
|                         .Annotation("MySql:CharSet", "utf8mb4"),
 | |
|                     OragnizationSize = table.Column<string>(type: "longtext", nullable: true)
 | |
|                         .Annotation("MySql:CharSet", "utf8mb4"),
 | |
|                     IndustryId = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci"),
 | |
|                     ContactPerson = table.Column<string>(type: "longtext", nullable: true)
 | |
|                         .Annotation("MySql:CharSet", "utf8mb4"),
 | |
|                     ContactNumber = table.Column<string>(type: "longtext", nullable: true)
 | |
|                         .Annotation("MySql:CharSet", "utf8mb4")
 | |
|                 },
 | |
|                 constraints: table =>
 | |
|                 {
 | |
|                     table.PrimaryKey("PK_Inquiries", x => x.Id);
 | |
|                 })
 | |
|                 .Annotation("MySql:CharSet", "utf8mb4");
 | |
| 
 | |
|             migrationBuilder.CreateTable(
 | |
|                 name: "Modules",
 | |
|                 columns: table => new
 | |
|                 {
 | |
|                     Id = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci"),
 | |
|                     Name = table.Column<string>(type: "longtext", nullable: false)
 | |
|                         .Annotation("MySql:CharSet", "utf8mb4"),
 | |
|                     Description = table.Column<string>(type: "longtext", nullable: true)
 | |
|                         .Annotation("MySql:CharSet", "utf8mb4"),
 | |
|                     Key = table.Column<string>(type: "longtext", nullable: false)
 | |
|                         .Annotation("MySql:CharSet", "utf8mb4")
 | |
|                 },
 | |
|                 constraints: table =>
 | |
|                 {
 | |
|                     table.PrimaryKey("PK_Modules", x => x.Id);
 | |
|                 })
 | |
|                 .Annotation("MySql:CharSet", "utf8mb4");
 | |
| 
 | |
|             migrationBuilder.CreateTable(
 | |
|                 name: "TicketPriorityMasters",
 | |
|                 columns: table => new
 | |
|                 {
 | |
|                     Id = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci"),
 | |
|                     Name = table.Column<string>(type: "longtext", nullable: false)
 | |
|                         .Annotation("MySql:CharSet", "utf8mb4"),
 | |
|                     Level = table.Column<int>(type: "int", nullable: false),
 | |
|                     ColorCode = table.Column<string>(type: "longtext", nullable: true)
 | |
|                         .Annotation("MySql:CharSet", "utf8mb4"),
 | |
|                     IsDefault = table.Column<bool>(type: "tinyint(1)", nullable: false),
 | |
|                     TenantId = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci")
 | |
|                 },
 | |
|                 constraints: table =>
 | |
|                 {
 | |
|                     table.PrimaryKey("PK_TicketPriorityMasters", x => x.Id);
 | |
|                 })
 | |
|                 .Annotation("MySql:CharSet", "utf8mb4");
 | |
| 
 | |
|             migrationBuilder.CreateTable(
 | |
|                 name: "TicketStatusMasters",
 | |
|                 columns: table => new
 | |
|                 {
 | |
|                     Id = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci"),
 | |
|                     Name = table.Column<string>(type: "longtext", nullable: false)
 | |
|                         .Annotation("MySql:CharSet", "utf8mb4"),
 | |
|                     Description = table.Column<string>(type: "longtext", nullable: true)
 | |
|                         .Annotation("MySql:CharSet", "utf8mb4"),
 | |
|                     ColorCode = table.Column<string>(type: "longtext", nullable: true)
 | |
|                         .Annotation("MySql:CharSet", "utf8mb4"),
 | |
|                     IsDefault = table.Column<bool>(type: "tinyint(1)", nullable: false),
 | |
|                     TenantId = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci")
 | |
|                 },
 | |
|                 constraints: table =>
 | |
|                 {
 | |
|                     table.PrimaryKey("PK_TicketStatusMasters", x => x.Id);
 | |
|                 })
 | |
|                 .Annotation("MySql:CharSet", "utf8mb4");
 | |
| 
 | |
|             migrationBuilder.CreateTable(
 | |
|                 name: "TicketTagMasters",
 | |
|                 columns: table => new
 | |
|                 {
 | |
|                     Id = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci"),
 | |
|                     Name = table.Column<string>(type: "longtext", nullable: false)
 | |
|                         .Annotation("MySql:CharSet", "utf8mb4"),
 | |
|                     ColorCode = table.Column<string>(type: "longtext", nullable: true)
 | |
|                         .Annotation("MySql:CharSet", "utf8mb4"),
 | |
|                     TenantId = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci"),
 | |
|                     IsDefault = table.Column<bool>(type: "tinyint(1)", nullable: false)
 | |
|                 },
 | |
|                 constraints: table =>
 | |
|                 {
 | |
|                     table.PrimaryKey("PK_TicketTagMasters", x => x.Id);
 | |
|                 })
 | |
|                 .Annotation("MySql:CharSet", "utf8mb4");
 | |
| 
 | |
|             migrationBuilder.CreateTable(
 | |
|                 name: "TicketTypeMasters",
 | |
|                 columns: table => new
 | |
|                 {
 | |
|                     Id = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci"),
 | |
|                     Name = table.Column<string>(type: "longtext", nullable: false)
 | |
|                         .Annotation("MySql:CharSet", "utf8mb4"),
 | |
|                     Description = table.Column<string>(type: "longtext", nullable: true)
 | |
|                         .Annotation("MySql:CharSet", "utf8mb4"),
 | |
|                     IsDefault = table.Column<bool>(type: "tinyint(1)", nullable: false),
 | |
|                     TenantId = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci")
 | |
|                 },
 | |
|                 constraints: table =>
 | |
|                 {
 | |
|                     table.PrimaryKey("PK_TicketTypeMasters", x => x.Id);
 | |
|                 })
 | |
|                 .Annotation("MySql:CharSet", "utf8mb4");
 | |
| 
 | |
|             migrationBuilder.CreateTable(
 | |
|                 name: "AspNetRoleClaims",
 | |
|                 columns: table => new
 | |
|                 {
 | |
|                     Id = table.Column<int>(type: "int", nullable: false)
 | |
|                         .Annotation("MySql:ValueGenerationStrategy", MySqlValueGenerationStrategy.IdentityColumn),
 | |
|                     RoleId = table.Column<string>(type: "varchar(255)", nullable: false)
 | |
|                         .Annotation("MySql:CharSet", "utf8mb4"),
 | |
|                     ClaimType = table.Column<string>(type: "longtext", nullable: true)
 | |
|                         .Annotation("MySql:CharSet", "utf8mb4"),
 | |
|                     ClaimValue = table.Column<string>(type: "longtext", nullable: true)
 | |
|                         .Annotation("MySql:CharSet", "utf8mb4")
 | |
|                 },
 | |
|                 constraints: table =>
 | |
|                 {
 | |
|                     table.PrimaryKey("PK_AspNetRoleClaims", x => x.Id);
 | |
|                     table.ForeignKey(
 | |
|                         name: "FK_AspNetRoleClaims_AspNetRoles_RoleId",
 | |
|                         column: x => x.RoleId,
 | |
|                         principalTable: "AspNetRoles",
 | |
|                         principalColumn: "Id",
 | |
|                         onDelete: ReferentialAction.Cascade);
 | |
|                 })
 | |
|                 .Annotation("MySql:CharSet", "utf8mb4");
 | |
| 
 | |
|             migrationBuilder.CreateTable(
 | |
|                 name: "AspNetUserClaims",
 | |
|                 columns: table => new
 | |
|                 {
 | |
|                     Id = table.Column<int>(type: "int", nullable: false)
 | |
|                         .Annotation("MySql:ValueGenerationStrategy", MySqlValueGenerationStrategy.IdentityColumn),
 | |
|                     UserId = table.Column<string>(type: "varchar(255)", nullable: false)
 | |
|                         .Annotation("MySql:CharSet", "utf8mb4"),
 | |
|                     ClaimType = table.Column<string>(type: "longtext", nullable: true)
 | |
|                         .Annotation("MySql:CharSet", "utf8mb4"),
 | |
|                     ClaimValue = table.Column<string>(type: "longtext", nullable: true)
 | |
|                         .Annotation("MySql:CharSet", "utf8mb4")
 | |
|                 },
 | |
|                 constraints: table =>
 | |
|                 {
 | |
|                     table.PrimaryKey("PK_AspNetUserClaims", x => x.Id);
 | |
|                     table.ForeignKey(
 | |
|                         name: "FK_AspNetUserClaims_AspNetUsers_UserId",
 | |
|                         column: x => x.UserId,
 | |
|                         principalTable: "AspNetUsers",
 | |
|                         principalColumn: "Id",
 | |
|                         onDelete: ReferentialAction.Cascade);
 | |
|                 })
 | |
|                 .Annotation("MySql:CharSet", "utf8mb4");
 | |
| 
 | |
|             migrationBuilder.CreateTable(
 | |
|                 name: "AspNetUserLogins",
 | |
|                 columns: table => new
 | |
|                 {
 | |
|                     LoginProvider = table.Column<string>(type: "varchar(255)", nullable: false)
 | |
|                         .Annotation("MySql:CharSet", "utf8mb4"),
 | |
|                     ProviderKey = table.Column<string>(type: "varchar(255)", nullable: false)
 | |
|                         .Annotation("MySql:CharSet", "utf8mb4"),
 | |
|                     ProviderDisplayName = table.Column<string>(type: "longtext", nullable: true)
 | |
|                         .Annotation("MySql:CharSet", "utf8mb4"),
 | |
|                     UserId = table.Column<string>(type: "varchar(255)", nullable: false)
 | |
|                         .Annotation("MySql:CharSet", "utf8mb4")
 | |
|                 },
 | |
|                 constraints: table =>
 | |
|                 {
 | |
|                     table.PrimaryKey("PK_AspNetUserLogins", x => new { x.LoginProvider, x.ProviderKey });
 | |
|                     table.ForeignKey(
 | |
|                         name: "FK_AspNetUserLogins_AspNetUsers_UserId",
 | |
|                         column: x => x.UserId,
 | |
|                         principalTable: "AspNetUsers",
 | |
|                         principalColumn: "Id",
 | |
|                         onDelete: ReferentialAction.Cascade);
 | |
|                 })
 | |
|                 .Annotation("MySql:CharSet", "utf8mb4");
 | |
| 
 | |
|             migrationBuilder.CreateTable(
 | |
|                 name: "AspNetUserRoles",
 | |
|                 columns: table => new
 | |
|                 {
 | |
|                     UserId = table.Column<string>(type: "varchar(255)", nullable: false)
 | |
|                         .Annotation("MySql:CharSet", "utf8mb4"),
 | |
|                     RoleId = table.Column<string>(type: "varchar(255)", nullable: false)
 | |
|                         .Annotation("MySql:CharSet", "utf8mb4")
 | |
|                 },
 | |
|                 constraints: table =>
 | |
|                 {
 | |
|                     table.PrimaryKey("PK_AspNetUserRoles", x => new { x.UserId, x.RoleId });
 | |
|                     table.ForeignKey(
 | |
|                         name: "FK_AspNetUserRoles_AspNetRoles_RoleId",
 | |
|                         column: x => x.RoleId,
 | |
|                         principalTable: "AspNetRoles",
 | |
|                         principalColumn: "Id",
 | |
|                         onDelete: ReferentialAction.Cascade);
 | |
|                     table.ForeignKey(
 | |
|                         name: "FK_AspNetUserRoles_AspNetUsers_UserId",
 | |
|                         column: x => x.UserId,
 | |
|                         principalTable: "AspNetUsers",
 | |
|                         principalColumn: "Id",
 | |
|                         onDelete: ReferentialAction.Cascade);
 | |
|                 })
 | |
|                 .Annotation("MySql:CharSet", "utf8mb4");
 | |
| 
 | |
|             migrationBuilder.CreateTable(
 | |
|                 name: "AspNetUserTokens",
 | |
|                 columns: table => new
 | |
|                 {
 | |
|                     UserId = table.Column<string>(type: "varchar(255)", nullable: false)
 | |
|                         .Annotation("MySql:CharSet", "utf8mb4"),
 | |
|                     LoginProvider = table.Column<string>(type: "varchar(255)", nullable: false)
 | |
|                         .Annotation("MySql:CharSet", "utf8mb4"),
 | |
|                     Name = table.Column<string>(type: "varchar(255)", nullable: false)
 | |
|                         .Annotation("MySql:CharSet", "utf8mb4"),
 | |
|                     Value = table.Column<string>(type: "longtext", nullable: true)
 | |
|                         .Annotation("MySql:CharSet", "utf8mb4")
 | |
|                 },
 | |
|                 constraints: table =>
 | |
|                 {
 | |
|                     table.PrimaryKey("PK_AspNetUserTokens", x => new { x.UserId, x.LoginProvider, x.Name });
 | |
|                     table.ForeignKey(
 | |
|                         name: "FK_AspNetUserTokens_AspNetUsers_UserId",
 | |
|                         column: x => x.UserId,
 | |
|                         principalTable: "AspNetUsers",
 | |
|                         principalColumn: "Id",
 | |
|                         onDelete: ReferentialAction.Cascade);
 | |
|                 })
 | |
|                 .Annotation("MySql:CharSet", "utf8mb4");
 | |
| 
 | |
|             migrationBuilder.CreateTable(
 | |
|                 name: "RefreshTokens",
 | |
|                 columns: table => new
 | |
|                 {
 | |
|                     Id = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci"),
 | |
|                     Token = table.Column<string>(type: "longtext", nullable: true)
 | |
|                         .Annotation("MySql:CharSet", "utf8mb4"),
 | |
|                     UserId = table.Column<string>(type: "varchar(255)", nullable: true)
 | |
|                         .Annotation("MySql:CharSet", "utf8mb4"),
 | |
|                     ExpiryDate = table.Column<DateTime>(type: "datetime(6)", nullable: false),
 | |
|                     IsRevoked = table.Column<bool>(type: "tinyint(1)", nullable: false),
 | |
|                     IsUsed = table.Column<bool>(type: "tinyint(1)", nullable: false),
 | |
|                     CreatedAt = table.Column<DateTime>(type: "datetime(6)", nullable: false),
 | |
|                     RevokedAt = table.Column<DateTime>(type: "datetime(6)", nullable: true)
 | |
|                 },
 | |
|                 constraints: table =>
 | |
|                 {
 | |
|                     table.PrimaryKey("PK_RefreshTokens", x => x.Id);
 | |
|                     table.ForeignKey(
 | |
|                         name: "FK_RefreshTokens_AspNetUsers_UserId",
 | |
|                         column: x => x.UserId,
 | |
|                         principalTable: "AspNetUsers",
 | |
|                         principalColumn: "Id",
 | |
|                         onDelete: ReferentialAction.Cascade);
 | |
|                 })
 | |
|                 .Annotation("MySql:CharSet", "utf8mb4");
 | |
| 
 | |
|             migrationBuilder.CreateTable(
 | |
|                 name: "Tenants",
 | |
|                 columns: table => new
 | |
|                 {
 | |
|                     Id = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci"),
 | |
|                     Name = table.Column<string>(type: "longtext", nullable: true)
 | |
|                         .Annotation("MySql:CharSet", "utf8mb4"),
 | |
|                     Description = table.Column<string>(type: "longtext", nullable: true)
 | |
|                         .Annotation("MySql:CharSet", "utf8mb4"),
 | |
|                     DomainName = table.Column<string>(type: "longtext", nullable: true)
 | |
|                         .Annotation("MySql:CharSet", "utf8mb4"),
 | |
|                     ContactName = table.Column<string>(type: "longtext", nullable: true)
 | |
|                         .Annotation("MySql:CharSet", "utf8mb4"),
 | |
|                     ContactNumber = table.Column<string>(type: "longtext", nullable: true)
 | |
|                         .Annotation("MySql:CharSet", "utf8mb4"),
 | |
|                     OnBoardingDate = table.Column<DateTime>(type: "datetime(6)", nullable: false),
 | |
|                     OragnizationSize = table.Column<string>(type: "longtext", nullable: true)
 | |
|                         .Annotation("MySql:CharSet", "utf8mb4"),
 | |
|                     IndustryId = table.Column<Guid>(type: "char(36)", nullable: true, collation: "ascii_general_ci"),
 | |
|                     IsActive = table.Column<bool>(type: "tinyint(1)", nullable: false)
 | |
|                 },
 | |
|                 constraints: table =>
 | |
|                 {
 | |
|                     table.PrimaryKey("PK_Tenants", x => x.Id);
 | |
|                     table.ForeignKey(
 | |
|                         name: "FK_Tenants_Industries_IndustryId",
 | |
|                         column: x => x.IndustryId,
 | |
|                         principalTable: "Industries",
 | |
|                         principalColumn: "Id");
 | |
|                 })
 | |
|                 .Annotation("MySql:CharSet", "utf8mb4");
 | |
| 
 | |
|             migrationBuilder.CreateTable(
 | |
|                 name: "Features",
 | |
|                 columns: table => new
 | |
|                 {
 | |
|                     Id = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci"),
 | |
|                     ModuleId = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci"),
 | |
|                     Name = table.Column<string>(type: "longtext", nullable: true)
 | |
|                         .Annotation("MySql:CharSet", "utf8mb4"),
 | |
|                     Description = table.Column<string>(type: "longtext", nullable: true)
 | |
|                         .Annotation("MySql:CharSet", "utf8mb4"),
 | |
|                     IsActive = table.Column<bool>(type: "tinyint(1)", nullable: false)
 | |
|                 },
 | |
|                 constraints: table =>
 | |
|                 {
 | |
|                     table.PrimaryKey("PK_Features", x => x.Id);
 | |
|                     table.ForeignKey(
 | |
|                         name: "FK_Features_Modules_ModuleId",
 | |
|                         column: x => x.ModuleId,
 | |
|                         principalTable: "Modules",
 | |
|                         principalColumn: "Id",
 | |
|                         onDelete: ReferentialAction.Cascade);
 | |
|                 })
 | |
|                 .Annotation("MySql:CharSet", "utf8mb4");
 | |
| 
 | |
|             migrationBuilder.CreateTable(
 | |
|                 name: "ActivityMasters",
 | |
|                 columns: table => new
 | |
|                 {
 | |
|                     Id = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci"),
 | |
|                     ActivityName = table.Column<string>(type: "longtext", nullable: true)
 | |
|                         .Annotation("MySql:CharSet", "utf8mb4"),
 | |
|                     UnitOfMeasurement = table.Column<string>(type: "longtext", nullable: true)
 | |
|                         .Annotation("MySql:CharSet", "utf8mb4"),
 | |
|                     IsActive = table.Column<bool>(type: "tinyint(1)", nullable: false),
 | |
|                     TenantId = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci")
 | |
|                 },
 | |
|                 constraints: table =>
 | |
|                 {
 | |
|                     table.PrimaryKey("PK_ActivityMasters", x => x.Id);
 | |
|                     table.ForeignKey(
 | |
|                         name: "FK_ActivityMasters_Tenants_TenantId",
 | |
|                         column: x => x.TenantId,
 | |
|                         principalTable: "Tenants",
 | |
|                         principalColumn: "Id",
 | |
|                         onDelete: ReferentialAction.Cascade);
 | |
|                 })
 | |
|                 .Annotation("MySql:CharSet", "utf8mb4");
 | |
| 
 | |
|             migrationBuilder.CreateTable(
 | |
|                 name: "ApplicationRoles",
 | |
|                 columns: table => new
 | |
|                 {
 | |
|                     Id = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci"),
 | |
|                     Role = table.Column<string>(type: "longtext", nullable: true)
 | |
|                         .Annotation("MySql:CharSet", "utf8mb4"),
 | |
|                     Description = table.Column<string>(type: "longtext", nullable: true)
 | |
|                         .Annotation("MySql:CharSet", "utf8mb4"),
 | |
|                     TenantId = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci")
 | |
|                 },
 | |
|                 constraints: table =>
 | |
|                 {
 | |
|                     table.PrimaryKey("PK_ApplicationRoles", x => x.Id);
 | |
|                     table.ForeignKey(
 | |
|                         name: "FK_ApplicationRoles_Tenants_TenantId",
 | |
|                         column: x => x.TenantId,
 | |
|                         principalTable: "Tenants",
 | |
|                         principalColumn: "Id",
 | |
|                         onDelete: ReferentialAction.Cascade);
 | |
|                 })
 | |
|                 .Annotation("MySql:CharSet", "utf8mb4");
 | |
| 
 | |
|             migrationBuilder.CreateTable(
 | |
|                 name: "Buildings",
 | |
|                 columns: table => new
 | |
|                 {
 | |
|                     Id = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci"),
 | |
|                     Name = table.Column<string>(type: "longtext", nullable: false)
 | |
|                         .Annotation("MySql:CharSet", "utf8mb4"),
 | |
|                     Description = table.Column<string>(type: "longtext", nullable: true)
 | |
|                         .Annotation("MySql:CharSet", "utf8mb4"),
 | |
|                     ProjectId = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci"),
 | |
|                     TenantId = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci")
 | |
|                 },
 | |
|                 constraints: table =>
 | |
|                 {
 | |
|                     table.PrimaryKey("PK_Buildings", x => x.Id);
 | |
|                     table.ForeignKey(
 | |
|                         name: "FK_Buildings_Tenants_TenantId",
 | |
|                         column: x => x.TenantId,
 | |
|                         principalTable: "Tenants",
 | |
|                         principalColumn: "Id",
 | |
|                         onDelete: ReferentialAction.Cascade);
 | |
|                 })
 | |
|                 .Annotation("MySql:CharSet", "utf8mb4");
 | |
| 
 | |
|             migrationBuilder.CreateTable(
 | |
|                 name: "Documents",
 | |
|                 columns: table => new
 | |
|                 {
 | |
|                     Id = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci"),
 | |
|                     BatchId = table.Column<Guid>(type: "char(36)", nullable: true, collation: "ascii_general_ci"),
 | |
|                     FileName = table.Column<string>(type: "longtext", nullable: false)
 | |
|                         .Annotation("MySql:CharSet", "utf8mb4"),
 | |
|                     S3Key = table.Column<string>(type: "longtext", nullable: false)
 | |
|                         .Annotation("MySql:CharSet", "utf8mb4"),
 | |
|                     ThumbS3Key = table.Column<string>(type: "longtext", nullable: true)
 | |
|                         .Annotation("MySql:CharSet", "utf8mb4"),
 | |
|                     Base64Data = table.Column<string>(type: "longtext", nullable: true)
 | |
|                         .Annotation("MySql:CharSet", "utf8mb4"),
 | |
|                     FileSize = table.Column<long>(type: "bigint", nullable: false),
 | |
|                     ContentType = table.Column<string>(type: "longtext", nullable: false)
 | |
|                         .Annotation("MySql:CharSet", "utf8mb4"),
 | |
|                     UploadedAt = table.Column<DateTime>(type: "datetime(6)", nullable: false),
 | |
|                     TenantId = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci")
 | |
|                 },
 | |
|                 constraints: table =>
 | |
|                 {
 | |
|                     table.PrimaryKey("PK_Documents", x => x.Id);
 | |
|                     table.ForeignKey(
 | |
|                         name: "FK_Documents_Tenants_TenantId",
 | |
|                         column: x => x.TenantId,
 | |
|                         principalTable: "Tenants",
 | |
|                         principalColumn: "Id",
 | |
|                         onDelete: ReferentialAction.Cascade);
 | |
|                 })
 | |
|                 .Annotation("MySql:CharSet", "utf8mb4");
 | |
| 
 | |
|             migrationBuilder.CreateTable(
 | |
|                 name: "JobRoles",
 | |
|                 columns: table => new
 | |
|                 {
 | |
|                     Id = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci"),
 | |
|                     Name = table.Column<string>(type: "longtext", nullable: true)
 | |
|                         .Annotation("MySql:CharSet", "utf8mb4"),
 | |
|                     Description = table.Column<string>(type: "longtext", nullable: true)
 | |
|                         .Annotation("MySql:CharSet", "utf8mb4"),
 | |
|                     TenantId = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci")
 | |
|                 },
 | |
|                 constraints: table =>
 | |
|                 {
 | |
|                     table.PrimaryKey("PK_JobRoles", x => x.Id);
 | |
|                     table.ForeignKey(
 | |
|                         name: "FK_JobRoles_Tenants_TenantId",
 | |
|                         column: x => x.TenantId,
 | |
|                         principalTable: "Tenants",
 | |
|                         principalColumn: "Id",
 | |
|                         onDelete: ReferentialAction.Cascade);
 | |
|                 })
 | |
|                 .Annotation("MySql:CharSet", "utf8mb4");
 | |
| 
 | |
|             migrationBuilder.CreateTable(
 | |
|                 name: "StatusMasters",
 | |
|                 columns: table => new
 | |
|                 {
 | |
|                     Id = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci"),
 | |
|                     Status = table.Column<string>(type: "longtext", nullable: true)
 | |
|                         .Annotation("MySql:CharSet", "utf8mb4"),
 | |
|                     TenantId = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci")
 | |
|                 },
 | |
|                 constraints: table =>
 | |
|                 {
 | |
|                     table.PrimaryKey("PK_StatusMasters", x => x.Id);
 | |
|                     table.ForeignKey(
 | |
|                         name: "FK_StatusMasters_Tenants_TenantId",
 | |
|                         column: x => x.TenantId,
 | |
|                         principalTable: "Tenants",
 | |
|                         principalColumn: "Id",
 | |
|                         onDelete: ReferentialAction.Cascade);
 | |
|                 })
 | |
|                 .Annotation("MySql:CharSet", "utf8mb4");
 | |
| 
 | |
|             migrationBuilder.CreateTable(
 | |
|                 name: "TicketComments",
 | |
|                 columns: table => new
 | |
|                 {
 | |
|                     Id = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci"),
 | |
|                     TicketId = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci"),
 | |
|                     AuthorId = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci"),
 | |
|                     MessageText = table.Column<string>(type: "longtext", nullable: false)
 | |
|                         .Annotation("MySql:CharSet", "utf8mb4"),
 | |
|                     SentAt = table.Column<DateTime>(type: "datetime(6)", nullable: false),
 | |
|                     ParentMessageId = table.Column<Guid>(type: "char(36)", nullable: true, collation: "ascii_general_ci"),
 | |
|                     TenantId = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci")
 | |
|                 },
 | |
|                 constraints: table =>
 | |
|                 {
 | |
|                     table.PrimaryKey("PK_TicketComments", x => x.Id);
 | |
|                     table.ForeignKey(
 | |
|                         name: "FK_TicketComments_Tenants_TenantId",
 | |
|                         column: x => x.TenantId,
 | |
|                         principalTable: "Tenants",
 | |
|                         principalColumn: "Id",
 | |
|                         onDelete: ReferentialAction.Cascade);
 | |
|                 })
 | |
|                 .Annotation("MySql:CharSet", "utf8mb4");
 | |
| 
 | |
|             migrationBuilder.CreateTable(
 | |
|                 name: "Tickets",
 | |
|                 columns: table => new
 | |
|                 {
 | |
|                     Id = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci"),
 | |
|                     Subject = table.Column<string>(type: "longtext", nullable: false)
 | |
|                         .Annotation("MySql:CharSet", "utf8mb4"),
 | |
|                     Description = table.Column<string>(type: "longtext", nullable: false)
 | |
|                         .Annotation("MySql:CharSet", "utf8mb4"),
 | |
|                     StatusId = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci"),
 | |
|                     TypeId = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci"),
 | |
|                     CreatedById = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci"),
 | |
|                     CreatedAt = table.Column<DateTime>(type: "datetime(6)", nullable: false),
 | |
|                     LinkedProjectId = table.Column<Guid>(type: "char(36)", nullable: true, collation: "ascii_general_ci"),
 | |
|                     LinkedActivityId = table.Column<Guid>(type: "char(36)", nullable: true, collation: "ascii_general_ci"),
 | |
|                     PriorityId = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci"),
 | |
|                     TenantId = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci")
 | |
|                 },
 | |
|                 constraints: table =>
 | |
|                 {
 | |
|                     table.PrimaryKey("PK_Tickets", x => x.Id);
 | |
|                     table.ForeignKey(
 | |
|                         name: "FK_Tickets_Tenants_TenantId",
 | |
|                         column: x => x.TenantId,
 | |
|                         principalTable: "Tenants",
 | |
|                         principalColumn: "Id",
 | |
|                         onDelete: ReferentialAction.Cascade);
 | |
|                     table.ForeignKey(
 | |
|                         name: "FK_Tickets_TicketPriorityMasters_PriorityId",
 | |
|                         column: x => x.PriorityId,
 | |
|                         principalTable: "TicketPriorityMasters",
 | |
|                         principalColumn: "Id",
 | |
|                         onDelete: ReferentialAction.Cascade);
 | |
|                     table.ForeignKey(
 | |
|                         name: "FK_Tickets_TicketStatusMasters_StatusId",
 | |
|                         column: x => x.StatusId,
 | |
|                         principalTable: "TicketStatusMasters",
 | |
|                         principalColumn: "Id",
 | |
|                         onDelete: ReferentialAction.Cascade);
 | |
|                     table.ForeignKey(
 | |
|                         name: "FK_Tickets_TicketTypeMasters_TypeId",
 | |
|                         column: x => x.TypeId,
 | |
|                         principalTable: "TicketTypeMasters",
 | |
|                         principalColumn: "Id",
 | |
|                         onDelete: ReferentialAction.Cascade);
 | |
|                 })
 | |
|                 .Annotation("MySql:CharSet", "utf8mb4");
 | |
| 
 | |
|             migrationBuilder.CreateTable(
 | |
|                 name: "WorkShifts",
 | |
|                 columns: table => new
 | |
|                 {
 | |
|                     Id = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci"),
 | |
|                     Name = table.Column<string>(type: "longtext", nullable: true)
 | |
|                         .Annotation("MySql:CharSet", "utf8mb4"),
 | |
|                     StartTime = table.Column<TimeOnly>(type: "time(6)", nullable: false),
 | |
|                     EndTime = table.Column<TimeOnly>(type: "time(6)", nullable: false),
 | |
|                     TenantId = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci")
 | |
|                 },
 | |
|                 constraints: table =>
 | |
|                 {
 | |
|                     table.PrimaryKey("PK_WorkShifts", x => x.Id);
 | |
|                     table.ForeignKey(
 | |
|                         name: "FK_WorkShifts_Tenants_TenantId",
 | |
|                         column: x => x.TenantId,
 | |
|                         principalTable: "Tenants",
 | |
|                         principalColumn: "Id",
 | |
|                         onDelete: ReferentialAction.Cascade);
 | |
|                 })
 | |
|                 .Annotation("MySql:CharSet", "utf8mb4");
 | |
| 
 | |
|             migrationBuilder.CreateTable(
 | |
|                 name: "FeaturePermissions",
 | |
|                 columns: table => new
 | |
|                 {
 | |
|                     Id = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci"),
 | |
|                     FeatureId = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci"),
 | |
|                     Name = table.Column<string>(type: "longtext", nullable: true)
 | |
|                         .Annotation("MySql:CharSet", "utf8mb4"),
 | |
|                     Description = table.Column<string>(type: "longtext", nullable: true)
 | |
|                         .Annotation("MySql:CharSet", "utf8mb4"),
 | |
|                     IsEnabled = table.Column<bool>(type: "tinyint(1)", nullable: false)
 | |
|                 },
 | |
|                 constraints: table =>
 | |
|                 {
 | |
|                     table.PrimaryKey("PK_FeaturePermissions", x => x.Id);
 | |
|                     table.ForeignKey(
 | |
|                         name: "FK_FeaturePermissions_Features_FeatureId",
 | |
|                         column: x => x.FeatureId,
 | |
|                         principalTable: "Features",
 | |
|                         principalColumn: "Id",
 | |
|                         onDelete: ReferentialAction.Cascade);
 | |
|                 })
 | |
|                 .Annotation("MySql:CharSet", "utf8mb4");
 | |
| 
 | |
|             migrationBuilder.CreateTable(
 | |
|                 name: "Floor",
 | |
|                 columns: table => new
 | |
|                 {
 | |
|                     Id = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci"),
 | |
|                     FloorName = table.Column<string>(type: "longtext", nullable: false)
 | |
|                         .Annotation("MySql:CharSet", "utf8mb4"),
 | |
|                     BuildingId = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci"),
 | |
|                     TenantId = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci")
 | |
|                 },
 | |
|                 constraints: table =>
 | |
|                 {
 | |
|                     table.PrimaryKey("PK_Floor", x => x.Id);
 | |
|                     table.ForeignKey(
 | |
|                         name: "FK_Floor_Buildings_BuildingId",
 | |
|                         column: x => x.BuildingId,
 | |
|                         principalTable: "Buildings",
 | |
|                         principalColumn: "Id",
 | |
|                         onDelete: ReferentialAction.Cascade);
 | |
|                     table.ForeignKey(
 | |
|                         name: "FK_Floor_Tenants_TenantId",
 | |
|                         column: x => x.TenantId,
 | |
|                         principalTable: "Tenants",
 | |
|                         principalColumn: "Id",
 | |
|                         onDelete: ReferentialAction.Cascade);
 | |
|                 })
 | |
|                 .Annotation("MySql:CharSet", "utf8mb4");
 | |
| 
 | |
|             migrationBuilder.CreateTable(
 | |
|                 name: "Employees",
 | |
|                 columns: table => new
 | |
|                 {
 | |
|                     Id = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci"),
 | |
|                     FirstName = table.Column<string>(type: "longtext", nullable: true)
 | |
|                         .Annotation("MySql:CharSet", "utf8mb4"),
 | |
|                     LastName = table.Column<string>(type: "longtext", nullable: true)
 | |
|                         .Annotation("MySql:CharSet", "utf8mb4"),
 | |
|                     MiddleName = table.Column<string>(type: "longtext", nullable: true)
 | |
|                         .Annotation("MySql:CharSet", "utf8mb4"),
 | |
|                     Email = table.Column<string>(type: "longtext", nullable: true)
 | |
|                         .Annotation("MySql:CharSet", "utf8mb4"),
 | |
|                     Gender = table.Column<string>(type: "longtext", nullable: true)
 | |
|                         .Annotation("MySql:CharSet", "utf8mb4"),
 | |
|                     BirthDate = table.Column<DateTime>(type: "datetime(6)", nullable: true),
 | |
|                     JoiningDate = table.Column<DateTime>(type: "datetime(6)", nullable: true),
 | |
|                     PermanentAddress = table.Column<string>(type: "longtext", nullable: true)
 | |
|                         .Annotation("MySql:CharSet", "utf8mb4"),
 | |
|                     CurrentAddress = table.Column<string>(type: "longtext", nullable: true)
 | |
|                         .Annotation("MySql:CharSet", "utf8mb4"),
 | |
|                     PhoneNumber = table.Column<string>(type: "longtext", nullable: true)
 | |
|                         .Annotation("MySql:CharSet", "utf8mb4"),
 | |
|                     EmergencyPhoneNumber = table.Column<string>(type: "longtext", nullable: true)
 | |
|                         .Annotation("MySql:CharSet", "utf8mb4"),
 | |
|                     EmergencyContactPerson = table.Column<string>(type: "longtext", nullable: true)
 | |
|                         .Annotation("MySql:CharSet", "utf8mb4"),
 | |
|                     AadharNumber = table.Column<string>(type: "longtext", nullable: true)
 | |
|                         .Annotation("MySql:CharSet", "utf8mb4"),
 | |
|                     PanNumber = table.Column<string>(type: "longtext", nullable: true)
 | |
|                         .Annotation("MySql:CharSet", "utf8mb4"),
 | |
|                     Photo = table.Column<byte[]>(type: "longblob", nullable: true),
 | |
|                     ApplicationUserId = table.Column<string>(type: "varchar(255)", nullable: true)
 | |
|                         .Annotation("MySql:CharSet", "utf8mb4"),
 | |
|                     IsActive = table.Column<bool>(type: "tinyint(1)", nullable: false),
 | |
|                     RoleId = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci"),
 | |
|                     JobRoleId = table.Column<Guid>(type: "char(36)", nullable: true, collation: "ascii_general_ci"),
 | |
|                     TenantId = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci")
 | |
|                 },
 | |
|                 constraints: table =>
 | |
|                 {
 | |
|                     table.PrimaryKey("PK_Employees", x => x.Id);
 | |
|                     table.ForeignKey(
 | |
|                         name: "FK_Employees_AspNetUsers_ApplicationUserId",
 | |
|                         column: x => x.ApplicationUserId,
 | |
|                         principalTable: "AspNetUsers",
 | |
|                         principalColumn: "Id");
 | |
|                     table.ForeignKey(
 | |
|                         name: "FK_Employees_JobRoles_JobRoleId",
 | |
|                         column: x => x.JobRoleId,
 | |
|                         principalTable: "JobRoles",
 | |
|                         principalColumn: "Id");
 | |
|                     table.ForeignKey(
 | |
|                         name: "FK_Employees_Tenants_TenantId",
 | |
|                         column: x => x.TenantId,
 | |
|                         principalTable: "Tenants",
 | |
|                         principalColumn: "Id",
 | |
|                         onDelete: ReferentialAction.Cascade);
 | |
|                 })
 | |
|                 .Annotation("MySql:CharSet", "utf8mb4");
 | |
| 
 | |
|             migrationBuilder.CreateTable(
 | |
|                 name: "Projects",
 | |
|                 columns: table => new
 | |
|                 {
 | |
|                     Id = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci"),
 | |
|                     Name = table.Column<string>(type: "longtext", nullable: false)
 | |
|                         .Annotation("MySql:CharSet", "utf8mb4"),
 | |
|                     ProjectAddress = table.Column<string>(type: "longtext", nullable: true)
 | |
|                         .Annotation("MySql:CharSet", "utf8mb4"),
 | |
|                     ContactPerson = table.Column<string>(type: "longtext", nullable: true)
 | |
|                         .Annotation("MySql:CharSet", "utf8mb4"),
 | |
|                     StartDate = table.Column<DateTime>(type: "datetime(6)", nullable: true),
 | |
|                     EndDate = table.Column<DateTime>(type: "datetime(6)", nullable: true),
 | |
|                     ProjectStatusId = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci"),
 | |
|                     TenantId = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci")
 | |
|                 },
 | |
|                 constraints: table =>
 | |
|                 {
 | |
|                     table.PrimaryKey("PK_Projects", x => x.Id);
 | |
|                     table.ForeignKey(
 | |
|                         name: "FK_Projects_StatusMasters_ProjectStatusId",
 | |
|                         column: x => x.ProjectStatusId,
 | |
|                         principalTable: "StatusMasters",
 | |
|                         principalColumn: "Id",
 | |
|                         onDelete: ReferentialAction.Cascade);
 | |
|                     table.ForeignKey(
 | |
|                         name: "FK_Projects_Tenants_TenantId",
 | |
|                         column: x => x.TenantId,
 | |
|                         principalTable: "Tenants",
 | |
|                         principalColumn: "Id",
 | |
|                         onDelete: ReferentialAction.Cascade);
 | |
|                 })
 | |
|                 .Annotation("MySql:CharSet", "utf8mb4");
 | |
| 
 | |
|             migrationBuilder.CreateTable(
 | |
|                 name: "TicketAttachments",
 | |
|                 columns: table => new
 | |
|                 {
 | |
|                     Id = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci"),
 | |
|                     TicketId = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci"),
 | |
|                     CommentId = table.Column<Guid>(type: "char(36)", nullable: true, collation: "ascii_general_ci"),
 | |
|                     FileName = table.Column<string>(type: "longtext", nullable: false)
 | |
|                         .Annotation("MySql:CharSet", "utf8mb4"),
 | |
|                     FileId = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci")
 | |
|                 },
 | |
|                 constraints: table =>
 | |
|                 {
 | |
|                     table.PrimaryKey("PK_TicketAttachments", x => x.Id);
 | |
|                     table.ForeignKey(
 | |
|                         name: "FK_TicketAttachments_TicketComments_CommentId",
 | |
|                         column: x => x.CommentId,
 | |
|                         principalTable: "TicketComments",
 | |
|                         principalColumn: "Id");
 | |
|                     table.ForeignKey(
 | |
|                         name: "FK_TicketAttachments_Tickets_TicketId",
 | |
|                         column: x => x.TicketId,
 | |
|                         principalTable: "Tickets",
 | |
|                         principalColumn: "Id",
 | |
|                         onDelete: ReferentialAction.Cascade);
 | |
|                 })
 | |
|                 .Annotation("MySql:CharSet", "utf8mb4");
 | |
| 
 | |
|             migrationBuilder.CreateTable(
 | |
|                 name: "TicketTags",
 | |
|                 columns: table => new
 | |
|                 {
 | |
|                     Id = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci"),
 | |
|                     TicketId = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci"),
 | |
|                     TagId = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci")
 | |
|                 },
 | |
|                 constraints: table =>
 | |
|                 {
 | |
|                     table.PrimaryKey("PK_TicketTags", x => x.Id);
 | |
|                     table.ForeignKey(
 | |
|                         name: "FK_TicketTags_TicketTagMasters_TagId",
 | |
|                         column: x => x.TagId,
 | |
|                         principalTable: "TicketTagMasters",
 | |
|                         principalColumn: "Id",
 | |
|                         onDelete: ReferentialAction.Cascade);
 | |
|                     table.ForeignKey(
 | |
|                         name: "FK_TicketTags_Tickets_TicketId",
 | |
|                         column: x => x.TicketId,
 | |
|                         principalTable: "Tickets",
 | |
|                         principalColumn: "Id",
 | |
|                         onDelete: ReferentialAction.Cascade);
 | |
|                 })
 | |
|                 .Annotation("MySql:CharSet", "utf8mb4");
 | |
| 
 | |
|             migrationBuilder.CreateTable(
 | |
|                 name: "RolePermissionMappings",
 | |
|                 columns: table => new
 | |
|                 {
 | |
|                     ApplicationRoleId = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci"),
 | |
|                     FeaturePermissionId = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci")
 | |
|                 },
 | |
|                 constraints: table =>
 | |
|                 {
 | |
|                     table.PrimaryKey("PK_RolePermissionMappings", x => new { x.ApplicationRoleId, x.FeaturePermissionId });
 | |
|                     table.ForeignKey(
 | |
|                         name: "FK_RolePermissionMappings_ApplicationRoles_ApplicationRoleId",
 | |
|                         column: x => x.ApplicationRoleId,
 | |
|                         principalTable: "ApplicationRoles",
 | |
|                         principalColumn: "Id",
 | |
|                         onDelete: ReferentialAction.Cascade);
 | |
|                     table.ForeignKey(
 | |
|                         name: "FK_RolePermissionMappings_FeaturePermissions_FeaturePermissionId",
 | |
|                         column: x => x.FeaturePermissionId,
 | |
|                         principalTable: "FeaturePermissions",
 | |
|                         principalColumn: "Id",
 | |
|                         onDelete: ReferentialAction.Cascade);
 | |
|                 })
 | |
|                 .Annotation("MySql:CharSet", "utf8mb4");
 | |
| 
 | |
|             migrationBuilder.CreateTable(
 | |
|                 name: "WorkAreas",
 | |
|                 columns: table => new
 | |
|                 {
 | |
|                     Id = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci"),
 | |
|                     AreaName = table.Column<string>(type: "longtext", nullable: false)
 | |
|                         .Annotation("MySql:CharSet", "utf8mb4"),
 | |
|                     FloorId = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci"),
 | |
|                     TenantId = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci")
 | |
|                 },
 | |
|                 constraints: table =>
 | |
|                 {
 | |
|                     table.PrimaryKey("PK_WorkAreas", x => x.Id);
 | |
|                     table.ForeignKey(
 | |
|                         name: "FK_WorkAreas_Floor_FloorId",
 | |
|                         column: x => x.FloorId,
 | |
|                         principalTable: "Floor",
 | |
|                         principalColumn: "Id",
 | |
|                         onDelete: ReferentialAction.Cascade);
 | |
|                     table.ForeignKey(
 | |
|                         name: "FK_WorkAreas_Tenants_TenantId",
 | |
|                         column: x => x.TenantId,
 | |
|                         principalTable: "Tenants",
 | |
|                         principalColumn: "Id",
 | |
|                         onDelete: ReferentialAction.Cascade);
 | |
|                 })
 | |
|                 .Annotation("MySql:CharSet", "utf8mb4");
 | |
| 
 | |
|             migrationBuilder.CreateTable(
 | |
|                 name: "Attendes",
 | |
|                 columns: table => new
 | |
|                 {
 | |
|                     Id = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci"),
 | |
|                     Comment = table.Column<string>(type: "longtext", nullable: false)
 | |
|                         .Annotation("MySql:CharSet", "utf8mb4"),
 | |
|                     EmployeeID = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci"),
 | |
|                     Date = table.Column<DateTime>(type: "datetime(6)", nullable: false),
 | |
|                     ProjectID = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci"),
 | |
|                     AttendanceDate = table.Column<DateTime>(type: "datetime(6)", nullable: false),
 | |
|                     InTime = table.Column<DateTime>(type: "datetime(6)", nullable: true),
 | |
|                     OutTime = table.Column<DateTime>(type: "datetime(6)", nullable: true),
 | |
|                     IsApproved = table.Column<bool>(type: "tinyint(1)", nullable: false),
 | |
|                     Activity = table.Column<int>(type: "int", nullable: false),
 | |
|                     ApprovedBy = table.Column<int>(type: "int", nullable: true),
 | |
|                     TenantId = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci")
 | |
|                 },
 | |
|                 constraints: table =>
 | |
|                 {
 | |
|                     table.PrimaryKey("PK_Attendes", x => x.Id);
 | |
|                     table.ForeignKey(
 | |
|                         name: "FK_Attendes_Employees_EmployeeID",
 | |
|                         column: x => x.EmployeeID,
 | |
|                         principalTable: "Employees",
 | |
|                         principalColumn: "Id",
 | |
|                         onDelete: ReferentialAction.Cascade);
 | |
|                     table.ForeignKey(
 | |
|                         name: "FK_Attendes_Tenants_TenantId",
 | |
|                         column: x => x.TenantId,
 | |
|                         principalTable: "Tenants",
 | |
|                         principalColumn: "Id",
 | |
|                         onDelete: ReferentialAction.Cascade);
 | |
|                 })
 | |
|                 .Annotation("MySql:CharSet", "utf8mb4");
 | |
| 
 | |
|             migrationBuilder.CreateTable(
 | |
|                 name: "EmployeeRoleMappings",
 | |
|                 columns: table => new
 | |
|                 {
 | |
|                     Id = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci"),
 | |
|                     EmployeeId = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci"),
 | |
|                     RoleId = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci"),
 | |
|                     IsEnabled = table.Column<bool>(type: "tinyint(1)", nullable: false),
 | |
|                     TenantId = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci")
 | |
|                 },
 | |
|                 constraints: table =>
 | |
|                 {
 | |
|                     table.PrimaryKey("PK_EmployeeRoleMappings", x => x.Id);
 | |
|                     table.ForeignKey(
 | |
|                         name: "FK_EmployeeRoleMappings_ApplicationRoles_RoleId",
 | |
|                         column: x => x.RoleId,
 | |
|                         principalTable: "ApplicationRoles",
 | |
|                         principalColumn: "Id",
 | |
|                         onDelete: ReferentialAction.Cascade);
 | |
|                     table.ForeignKey(
 | |
|                         name: "FK_EmployeeRoleMappings_Employees_EmployeeId",
 | |
|                         column: x => x.EmployeeId,
 | |
|                         principalTable: "Employees",
 | |
|                         principalColumn: "Id",
 | |
|                         onDelete: ReferentialAction.Cascade);
 | |
|                     table.ForeignKey(
 | |
|                         name: "FK_EmployeeRoleMappings_Tenants_TenantId",
 | |
|                         column: x => x.TenantId,
 | |
|                         principalTable: "Tenants",
 | |
|                         principalColumn: "Id",
 | |
|                         onDelete: ReferentialAction.Cascade);
 | |
|                 })
 | |
|                 .Annotation("MySql:CharSet", "utf8mb4");
 | |
| 
 | |
|             migrationBuilder.CreateTable(
 | |
|                 name: "ProjectAllocations",
 | |
|                 columns: table => new
 | |
|                 {
 | |
|                     Id = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci"),
 | |
|                     EmployeeId = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci"),
 | |
|                     JobRoleId = table.Column<Guid>(type: "char(36)", nullable: true, collation: "ascii_general_ci"),
 | |
|                     IsActive = table.Column<bool>(type: "tinyint(1)", nullable: false),
 | |
|                     ProjectId = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci"),
 | |
|                     AllocationDate = table.Column<DateTime>(type: "datetime(6)", nullable: false),
 | |
|                     ReAllocationDate = table.Column<DateTime>(type: "datetime(6)", nullable: true),
 | |
|                     TenantId = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci")
 | |
|                 },
 | |
|                 constraints: table =>
 | |
|                 {
 | |
|                     table.PrimaryKey("PK_ProjectAllocations", x => x.Id);
 | |
|                     table.ForeignKey(
 | |
|                         name: "FK_ProjectAllocations_Employees_EmployeeId",
 | |
|                         column: x => x.EmployeeId,
 | |
|                         principalTable: "Employees",
 | |
|                         principalColumn: "Id",
 | |
|                         onDelete: ReferentialAction.Cascade);
 | |
|                     table.ForeignKey(
 | |
|                         name: "FK_ProjectAllocations_Projects_ProjectId",
 | |
|                         column: x => x.ProjectId,
 | |
|                         principalTable: "Projects",
 | |
|                         principalColumn: "Id",
 | |
|                         onDelete: ReferentialAction.Cascade);
 | |
|                     table.ForeignKey(
 | |
|                         name: "FK_ProjectAllocations_Tenants_TenantId",
 | |
|                         column: x => x.TenantId,
 | |
|                         principalTable: "Tenants",
 | |
|                         principalColumn: "Id",
 | |
|                         onDelete: ReferentialAction.Cascade);
 | |
|                 })
 | |
|                 .Annotation("MySql:CharSet", "utf8mb4");
 | |
| 
 | |
|             migrationBuilder.CreateTable(
 | |
|                 name: "WorkItems",
 | |
|                 columns: table => new
 | |
|                 {
 | |
|                     Id = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci"),
 | |
|                     ActivityId = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci"),
 | |
|                     WorkAreaId = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci"),
 | |
|                     PlannedWork = table.Column<double>(type: "double", nullable: false),
 | |
|                     CompletedWork = table.Column<double>(type: "double", nullable: false),
 | |
|                     TaskDate = table.Column<DateTime>(type: "datetime(6)", nullable: false),
 | |
|                     TenantId = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci")
 | |
|                 },
 | |
|                 constraints: table =>
 | |
|                 {
 | |
|                     table.PrimaryKey("PK_WorkItems", x => x.Id);
 | |
|                     table.ForeignKey(
 | |
|                         name: "FK_WorkItems_ActivityMasters_ActivityId",
 | |
|                         column: x => x.ActivityId,
 | |
|                         principalTable: "ActivityMasters",
 | |
|                         principalColumn: "Id",
 | |
|                         onDelete: ReferentialAction.Cascade);
 | |
|                     table.ForeignKey(
 | |
|                         name: "FK_WorkItems_Tenants_TenantId",
 | |
|                         column: x => x.TenantId,
 | |
|                         principalTable: "Tenants",
 | |
|                         principalColumn: "Id",
 | |
|                         onDelete: ReferentialAction.Cascade);
 | |
|                     table.ForeignKey(
 | |
|                         name: "FK_WorkItems_WorkAreas_WorkAreaId",
 | |
|                         column: x => x.WorkAreaId,
 | |
|                         principalTable: "WorkAreas",
 | |
|                         principalColumn: "Id",
 | |
|                         onDelete: ReferentialAction.Cascade);
 | |
|                 })
 | |
|                 .Annotation("MySql:CharSet", "utf8mb4");
 | |
| 
 | |
|             migrationBuilder.CreateTable(
 | |
|                 name: "AttendanceLogs",
 | |
|                 columns: table => new
 | |
|                 {
 | |
|                     Id = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci"),
 | |
|                     Comment = table.Column<string>(type: "longtext", nullable: false)
 | |
|                         .Annotation("MySql:CharSet", "utf8mb4"),
 | |
|                     AttendanceId = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci"),
 | |
|                     EmployeeID = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci"),
 | |
|                     ActivityTime = table.Column<DateTime>(type: "datetime(6)", nullable: true),
 | |
|                     Activity = table.Column<int>(type: "int", nullable: false),
 | |
|                     Photo = table.Column<byte[]>(type: "longblob", nullable: true),
 | |
|                     Latitude = table.Column<string>(type: "longtext", nullable: true)
 | |
|                         .Annotation("MySql:CharSet", "utf8mb4"),
 | |
|                     Longitude = table.Column<string>(type: "longtext", nullable: true)
 | |
|                         .Annotation("MySql:CharSet", "utf8mb4"),
 | |
|                     UpdatedOn = table.Column<DateTime>(type: "datetime(6)", nullable: false),
 | |
|                     UpdatedBy = table.Column<Guid>(type: "char(36)", nullable: true, collation: "ascii_general_ci"),
 | |
|                     DocumentId = table.Column<Guid>(type: "char(36)", nullable: true, collation: "ascii_general_ci"),
 | |
|                     TenantId = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci")
 | |
|                 },
 | |
|                 constraints: table =>
 | |
|                 {
 | |
|                     table.PrimaryKey("PK_AttendanceLogs", x => x.Id);
 | |
|                     table.ForeignKey(
 | |
|                         name: "FK_AttendanceLogs_Attendes_AttendanceId",
 | |
|                         column: x => x.AttendanceId,
 | |
|                         principalTable: "Attendes",
 | |
|                         principalColumn: "Id",
 | |
|                         onDelete: ReferentialAction.Cascade);
 | |
|                     table.ForeignKey(
 | |
|                         name: "FK_AttendanceLogs_Documents_DocumentId",
 | |
|                         column: x => x.DocumentId,
 | |
|                         principalTable: "Documents",
 | |
|                         principalColumn: "Id");
 | |
|                     table.ForeignKey(
 | |
|                         name: "FK_AttendanceLogs_Employees_EmployeeID",
 | |
|                         column: x => x.EmployeeID,
 | |
|                         principalTable: "Employees",
 | |
|                         principalColumn: "Id",
 | |
|                         onDelete: ReferentialAction.Cascade);
 | |
|                     table.ForeignKey(
 | |
|                         name: "FK_AttendanceLogs_Employees_UpdatedBy",
 | |
|                         column: x => x.UpdatedBy,
 | |
|                         principalTable: "Employees",
 | |
|                         principalColumn: "Id");
 | |
|                     table.ForeignKey(
 | |
|                         name: "FK_AttendanceLogs_Tenants_TenantId",
 | |
|                         column: x => x.TenantId,
 | |
|                         principalTable: "Tenants",
 | |
|                         principalColumn: "Id",
 | |
|                         onDelete: ReferentialAction.Cascade);
 | |
|                 })
 | |
|                 .Annotation("MySql:CharSet", "utf8mb4");
 | |
| 
 | |
|             migrationBuilder.CreateTable(
 | |
|                 name: "TaskAllocations",
 | |
|                 columns: table => new
 | |
|                 {
 | |
|                     Id = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci"),
 | |
|                     AssignmentDate = table.Column<DateTime>(type: "datetime(6)", nullable: false),
 | |
|                     PlannedTask = table.Column<double>(type: "double", nullable: false),
 | |
|                     CompletedTask = table.Column<double>(type: "double", nullable: false),
 | |
|                     ReportedDate = table.Column<DateTime>(type: "datetime(6)", nullable: true),
 | |
|                     Description = table.Column<string>(type: "longtext", nullable: true)
 | |
|                         .Annotation("MySql:CharSet", "utf8mb4"),
 | |
|                     AssignedBy = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci"),
 | |
|                     WorkItemId = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci"),
 | |
|                     TenantId = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci")
 | |
|                 },
 | |
|                 constraints: table =>
 | |
|                 {
 | |
|                     table.PrimaryKey("PK_TaskAllocations", x => x.Id);
 | |
|                     table.ForeignKey(
 | |
|                         name: "FK_TaskAllocations_Employees_AssignedBy",
 | |
|                         column: x => x.AssignedBy,
 | |
|                         principalTable: "Employees",
 | |
|                         principalColumn: "Id",
 | |
|                         onDelete: ReferentialAction.Cascade);
 | |
|                     table.ForeignKey(
 | |
|                         name: "FK_TaskAllocations_Tenants_TenantId",
 | |
|                         column: x => x.TenantId,
 | |
|                         principalTable: "Tenants",
 | |
|                         principalColumn: "Id",
 | |
|                         onDelete: ReferentialAction.Cascade);
 | |
|                     table.ForeignKey(
 | |
|                         name: "FK_TaskAllocations_WorkItems_WorkItemId",
 | |
|                         column: x => x.WorkItemId,
 | |
|                         principalTable: "WorkItems",
 | |
|                         principalColumn: "Id",
 | |
|                         onDelete: ReferentialAction.Cascade);
 | |
|                 })
 | |
|                 .Annotation("MySql:CharSet", "utf8mb4");
 | |
| 
 | |
|             migrationBuilder.CreateTable(
 | |
|                 name: "TaskComments",
 | |
|                 columns: table => new
 | |
|                 {
 | |
|                     Id = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci"),
 | |
|                     TaskAllocationId = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci"),
 | |
|                     CommentDate = table.Column<DateTime>(type: "datetime(6)", nullable: false),
 | |
|                     Comment = table.Column<string>(type: "longtext", nullable: false)
 | |
|                         .Annotation("MySql:CharSet", "utf8mb4"),
 | |
|                     CommentedBy = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci"),
 | |
|                     TenantId = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci")
 | |
|                 },
 | |
|                 constraints: table =>
 | |
|                 {
 | |
|                     table.PrimaryKey("PK_TaskComments", x => x.Id);
 | |
|                     table.ForeignKey(
 | |
|                         name: "FK_TaskComments_Employees_CommentedBy",
 | |
|                         column: x => x.CommentedBy,
 | |
|                         principalTable: "Employees",
 | |
|                         principalColumn: "Id",
 | |
|                         onDelete: ReferentialAction.Cascade);
 | |
|                     table.ForeignKey(
 | |
|                         name: "FK_TaskComments_TaskAllocations_TaskAllocationId",
 | |
|                         column: x => x.TaskAllocationId,
 | |
|                         principalTable: "TaskAllocations",
 | |
|                         principalColumn: "Id",
 | |
|                         onDelete: ReferentialAction.Cascade);
 | |
|                     table.ForeignKey(
 | |
|                         name: "FK_TaskComments_Tenants_TenantId",
 | |
|                         column: x => x.TenantId,
 | |
|                         principalTable: "Tenants",
 | |
|                         principalColumn: "Id",
 | |
|                         onDelete: ReferentialAction.Cascade);
 | |
|                 })
 | |
|                 .Annotation("MySql:CharSet", "utf8mb4");
 | |
| 
 | |
|             migrationBuilder.CreateTable(
 | |
|                 name: "TaskMembers",
 | |
|                 columns: table => new
 | |
|                 {
 | |
|                     Id = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci"),
 | |
|                     TaskAllocationId = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci"),
 | |
|                     EmployeeId = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci"),
 | |
|                     TenantId = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci")
 | |
|                 },
 | |
|                 constraints: table =>
 | |
|                 {
 | |
|                     table.PrimaryKey("PK_TaskMembers", x => x.Id);
 | |
|                     table.ForeignKey(
 | |
|                         name: "FK_TaskMembers_Employees_EmployeeId",
 | |
|                         column: x => x.EmployeeId,
 | |
|                         principalTable: "Employees",
 | |
|                         principalColumn: "Id",
 | |
|                         onDelete: ReferentialAction.Cascade);
 | |
|                     table.ForeignKey(
 | |
|                         name: "FK_TaskMembers_TaskAllocations_TaskAllocationId",
 | |
|                         column: x => x.TaskAllocationId,
 | |
|                         principalTable: "TaskAllocations",
 | |
|                         principalColumn: "Id",
 | |
|                         onDelete: ReferentialAction.Cascade);
 | |
|                     table.ForeignKey(
 | |
|                         name: "FK_TaskMembers_Tenants_TenantId",
 | |
|                         column: x => x.TenantId,
 | |
|                         principalTable: "Tenants",
 | |
|                         principalColumn: "Id",
 | |
|                         onDelete: ReferentialAction.Cascade);
 | |
|                 })
 | |
|                 .Annotation("MySql:CharSet", "utf8mb4");
 | |
| 
 | |
|             migrationBuilder.InsertData(
 | |
|                 table: "Industries",
 | |
|                 columns: new[] { "Id", "Name" },
 | |
|                 values: new object[,]
 | |
|                 {
 | |
|                     { new Guid("0a63e657-2c5f-49b5-854b-42c978293154"), "Manufacturing & Production" },
 | |
|                     { new Guid("15436ee3-a650-469e-bfc2-59993f7514bb"), "Information Technology (IT) Services" },
 | |
|                     { new Guid("23608891-657e-40f0-bbd4-2b0a2ec1a76f"), "Social Services" },
 | |
|                     { new Guid("5ca200ac-00d7-415e-a410-b948e27ac9d2"), "Finance & Professional Services" },
 | |
|                     { new Guid("8a0d6134-2dbe-4e0a-b250-ff34cb7b9df0"), "Education & Training" },
 | |
|                     { new Guid("a493f4e3-16b1-4411-be3c-6bf2987a3168"), "Retail & Consumer Services" },
 | |
|                     { new Guid("bdc61e3b-69ea-4394-bab6-079ec135b5bd"), "Energy & Resources" },
 | |
|                     { new Guid("d5621700-cd87-441f-8cdb-6051ddfc83b4"), "Hospitals and Healthcare Services" },
 | |
|                     { new Guid("e9d8ce92-9371-4ed9-9831-83c07f78edec"), "Transportation & Logistics" }
 | |
|                 });
 | |
| 
 | |
|             migrationBuilder.InsertData(
 | |
|                 table: "Modules",
 | |
|                 columns: new[] { "Id", "Description", "Key", "Name" },
 | |
|                 values: new object[,]
 | |
|                 {
 | |
|                     { new Guid("2a231490-bcb1-4bdd-91f1-f25fb7f25b23"), "Employee Module", "0971c7fb-6ce1-458a-ae3f-8d3205893637", "Employee" },
 | |
|                     { new Guid("bf59fd88-b57a-4d67-bf01-3780f385896b"), "Project Module", "b04da7e9-0406-409c-ac7f-b97256e6ea02", "Project" },
 | |
|                     { new Guid("c43db8c7-ab73-47f4-9d3b-f83e81357924"), "Masters Module", "504ec132-e6a9-422f-8f85-050602cfce05", "Masters" }
 | |
|                 });
 | |
| 
 | |
|             migrationBuilder.InsertData(
 | |
|                 table: "TicketPriorityMasters",
 | |
|                 columns: new[] { "Id", "ColorCode", "IsDefault", "Level", "Name", "TenantId" },
 | |
|                 values: new object[,]
 | |
|                 {
 | |
|                     { new Guid("0919bc84-9f82-4ecf-98c7-962755dd9a97"), "FFFF00", true, 2, "Medium", new Guid("b3466e83-7e11-464c-b93a-daf047838b26") },
 | |
|                     { new Guid("188d29b3-10f3-42d0-9587-1a46ae7a0320"), "008000", true, 1, "Low", new Guid("b3466e83-7e11-464c-b93a-daf047838b26") },
 | |
|                     { new Guid("44a7b91d-a0dd-45d1-8616-4d2f71e16401"), "#FF0000", true, 5, "Urgent", new Guid("b3466e83-7e11-464c-b93a-daf047838b26") },
 | |
|                     { new Guid("a13b7e59-16fd-4665-b5cf-a97399e8445a"), "#FFA500", true, 3, "High", new Guid("b3466e83-7e11-464c-b93a-daf047838b26") },
 | |
|                     { new Guid("f340fbc3-c9fd-46aa-b063-0093418830e4"), "#FFA500", true, 4, "Critical", new Guid("b3466e83-7e11-464c-b93a-daf047838b26") }
 | |
|                 });
 | |
| 
 | |
|             migrationBuilder.InsertData(
 | |
|                 table: "TicketStatusMasters",
 | |
|                 columns: new[] { "Id", "ColorCode", "Description", "IsDefault", "Name", "TenantId" },
 | |
|                 values: new object[,]
 | |
|                 {
 | |
|                     { new Guid("5c72b630-6923-4215-bf2c-b1622afd76e7"), "#6c757d", "These issues are currently under review", true, "In Review", new Guid("b3466e83-7e11-464c-b93a-daf047838b26") },
 | |
|                     { new Guid("6b0c409b-3e80-4165-8b39-f3fcacb4c797"), "#FFCC99", "This is a newly created issue.", true, "New", new Guid("b3466e83-7e11-464c-b93a-daf047838b26") },
 | |
|                     { new Guid("6c5ac37d-5b7d-40f3-adec-2dabaa5cca86"), "#E6FF99", "Assigned to employee or team of employees", true, "Assigned", new Guid("b3466e83-7e11-464c-b93a-daf047838b26") },
 | |
|                     { new Guid("7f96bcd5-0c66-411b-8a1d-9d1a4785194e"), "#99E6FF", "These issues are currently in progress", true, "In Progress", new Guid("b3466e83-7e11-464c-b93a-daf047838b26") },
 | |
|                     { new Guid("8ff85685-a875-4f21-aa95-d99551315fcc"), "#B399FF", "The following issues are resolved and closed", true, "Done", new Guid("b3466e83-7e11-464c-b93a-daf047838b26") }
 | |
|                 });
 | |
| 
 | |
|             migrationBuilder.InsertData(
 | |
|                 table: "TicketTagMasters",
 | |
|                 columns: new[] { "Id", "ColorCode", "IsDefault", "Name", "TenantId" },
 | |
|                 values: new object[,]
 | |
|                 {
 | |
|                     { new Guid("5a168569-8ad7-4422-8db6-51ef25caddeb"), "#85c1e9", true, "Help Desk", new Guid("b3466e83-7e11-464c-b93a-daf047838b26") },
 | |
|                     { new Guid("ef6c2a65-f61d-4537-9650-a7ab7f8d98db"), "#e59866", true, "Quality Issue", new Guid("b3466e83-7e11-464c-b93a-daf047838b26") }
 | |
|                 });
 | |
| 
 | |
|             migrationBuilder.InsertData(
 | |
|                 table: "TicketTypeMasters",
 | |
|                 columns: new[] { "Id", "Description", "IsDefault", "Name", "TenantId" },
 | |
|                 values: new object[,]
 | |
|                 {
 | |
|                     { new Guid("c74e5480-2b71-483c-8f4a-1a9c69c32603"), "An identified problem that affects the performance, reliability, or standards of a product or service", true, "Quality Issue", new Guid("b3466e83-7e11-464c-b93a-daf047838b26") },
 | |
|                     { new Guid("d1f55eab-9898-4e46-9f03-b263e33e5d38"), "A support service that assists users with technical issues, requests, or inquiries.", true, "Help Desk", new Guid("b3466e83-7e11-464c-b93a-daf047838b26") }
 | |
|                 });
 | |
| 
 | |
|             migrationBuilder.InsertData(
 | |
|                 table: "Features",
 | |
|                 columns: new[] { "Id", "Description", "IsActive", "ModuleId", "Name" },
 | |
|                 values: new object[,]
 | |
|                 {
 | |
|                     { new Guid("39e66f81-efc6-446c-95bd-46bff6cfb606"), "Assign and Update Tasks Progress", true, new Guid("bf59fd88-b57a-4d67-bf01-3780f385896b"), "Assign and Update Tasks Progress" },
 | |
|                     { new Guid("52c9cf54-1eb2-44d2-81bb-524cf29c0a94"), "Attendance", true, new Guid("2a231490-bcb1-4bdd-91f1-f25fb7f25b23"), "Attendance" },
 | |
|                     { new Guid("53176ebf-c75d-42e5-839f-4508ffac3def"), "Manage Project", true, new Guid("bf59fd88-b57a-4d67-bf01-3780f385896b"), "Manage Project" },
 | |
|                     { new Guid("660131a4-788c-4739-a082-cbbf7879cbf2"), "Tenant Masters", true, new Guid("c43db8c7-ab73-47f4-9d3b-f83e81357924"), "Tenant Masters" },
 | |
|                     { new Guid("81ab8a87-8ccd-4015-a917-0627cee6a100"), "Manage Employee", true, new Guid("2a231490-bcb1-4bdd-91f1-f25fb7f25b23"), "Manage Employee" },
 | |
|                     { new Guid("9666de86-d7c7-4d3d-acaa-fcd6d6b81f3c"), "Manage Infra", true, new Guid("bf59fd88-b57a-4d67-bf01-3780f385896b"), "Manage Infra" },
 | |
|                     { new Guid("9d4b5489-2079-40b9-bd77-6e1bf90bc19f"), "Manage Tasks", true, new Guid("bf59fd88-b57a-4d67-bf01-3780f385896b"), "Manage Tasks" },
 | |
|                     { new Guid("be3b3afc-6ccf-4566-b9b6-aafcb65546be"), "Global Masters", true, new Guid("c43db8c7-ab73-47f4-9d3b-f83e81357924"), "Global Masters" }
 | |
|                 });
 | |
| 
 | |
|             migrationBuilder.InsertData(
 | |
|                 table: "Tenants",
 | |
|                 columns: new[] { "Id", "ContactName", "ContactNumber", "Description", "DomainName", "IndustryId", "IsActive", "Name", "OnBoardingDate", "OragnizationSize" },
 | |
|                 values: new object[] { new Guid("b3466e83-7e11-464c-b93a-daf047838b26"), "Admin", "123456789", "", "www.marcobms.org", new Guid("15436ee3-a650-469e-bfc2-59993f7514bb"), true, "MarcoBMS", new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), "100-200" });
 | |
| 
 | |
| 
 | |
|             migrationBuilder.InsertData(
 | |
|                 table: "FeaturePermissions",
 | |
|                 columns: new[] { "Id", "Description", "FeatureId", "IsEnabled", "Name" },
 | |
|                 values: new object[,]
 | |
|                 {
 | |
|                     { new Guid("08752f33-3b29-4816-b76b-ea8a968ed3c5"), "", new Guid("9d4b5489-2079-40b9-bd77-6e1bf90bc19f"), true, "Manage Task" },
 | |
|                     { new Guid("172fc9b6-755b-4f62-ab26-55c34a330614"), "", new Guid("53176ebf-c75d-42e5-839f-4508ffac3def"), true, "Manage Project" },
 | |
|                     { new Guid("57802c4a-00aa-4a1f-a048-fd2f70dd44b6"), "", new Guid("52c9cf54-1eb2-44d2-81bb-524cf29c0a94"), true, "Regularize Attendance" },
 | |
|                     { new Guid("588a8824-f924-4955-82d8-fc51956cf323"), "", new Guid("be3b3afc-6ccf-4566-b9b6-aafcb65546be"), true, "Manage Masters" },
 | |
|                     { new Guid("5ffbafe0-7ab0-48b1-bb50-c1bf76b65f9d"), "", new Guid("be3b3afc-6ccf-4566-b9b6-aafcb65546be"), true, "View Masters" },
 | |
|                     { new Guid("6b1a6d97-a951-4de5-9b19-709bac7c4f18"), "", new Guid("660131a4-788c-4739-a082-cbbf7879cbf2"), true, "Manage Masters" },
 | |
|                     { new Guid("6ea44136-987e-44ba-9e5d-1cf8f5837ebc"), "", new Guid("53176ebf-c75d-42e5-839f-4508ffac3def"), true, "View Project" },
 | |
|                     { new Guid("915e6bff-65f6-4e3f-aea8-3fd217d3ea9e"), "", new Guid("52c9cf54-1eb2-44d2-81bb-524cf29c0a94"), true, "Perform Attendance " },
 | |
|                     { new Guid("9fcc5f87-25e3-4846-90ac-67a71ab92e3c"), "", new Guid("9d4b5489-2079-40b9-bd77-6e1bf90bc19f"), true, "View Task" },
 | |
|                     { new Guid("a97d366a-c2bb-448d-be93-402bd2324566"), "", new Guid("81ab8a87-8ccd-4015-a917-0627cee6a100"), true, "Manage Employee" },
 | |
|                     { new Guid("b82d2b7e-0d52-45f3-997b-c008ea460e7f"), "", new Guid("81ab8a87-8ccd-4015-a917-0627cee6a100"), true, "View Employee" },
 | |
|                     { new Guid("b94802ce-0689-4643-9e1d-11c86950c35b"), "", new Guid("53176ebf-c75d-42e5-839f-4508ffac3def"), true, "Manage Team" },
 | |
|                     { new Guid("c7b68e33-72f0-474f-bd96-77636427ecc8"), "", new Guid("9666de86-d7c7-4d3d-acaa-fcd6d6b81f3c"), true, "View Project Infra" },
 | |
|                     { new Guid("cb8ec407-46d4-4467-930c-69127cda6dec"), "", new Guid("660131a4-788c-4739-a082-cbbf7879cbf2"), true, "View Masters" },
 | |
|                     { new Guid("d135a4b0-4f9a-4903-ab9c-4843839ebdee"), "", new Guid("39e66f81-efc6-446c-95bd-46bff6cfb606"), true, "Assign Task and Report Progress" },
 | |
|                     { new Guid("ed99ecd4-1bed-42e1-b7b3-d64c04493823"), "", new Guid("39e66f81-efc6-446c-95bd-46bff6cfb606"), true, "Approve Task" },
 | |
|                     { new Guid("f2aee20a-b754-4537-8166-f9507b44585b"), "", new Guid("9666de86-d7c7-4d3d-acaa-fcd6d6b81f3c"), true, "Manage Project Infra" },
 | |
|                     { new Guid("fbd213e0-0250-46f1-9f5f-4b2a1e6e76a3"), "", new Guid("81ab8a87-8ccd-4015-a917-0627cee6a100"), true, "Assign To Project" }
 | |
|                 });
 | |
| 
 | |
|             migrationBuilder.InsertData(
 | |
|                 table: "StatusMasters",
 | |
|                 columns: new[] { "Id", "Status", "TenantId" },
 | |
|                 values: new object[,]
 | |
|                 {
 | |
|                     { new Guid("33deaef9-9af1-4f2a-b443-681ea0d04f81"), "Completed", new Guid("b3466e83-7e11-464c-b93a-daf047838b26") },
 | |
|                     { new Guid("603e994b-a27f-4e5d-a251-f3d69b0498ba"), "In Progress", new Guid("b3466e83-7e11-464c-b93a-daf047838b26") },
 | |
|                     { new Guid("b74da4c2-d07e-46f2-9919-e75e49b12731"), "Active", new Guid("b3466e83-7e11-464c-b93a-daf047838b26") },
 | |
|                     { new Guid("ef1c356e-0fe0-42df-a5d3-8daee355492d"), "On Hold", new Guid("b3466e83-7e11-464c-b93a-daf047838b26") }
 | |
|                 });
 | |
| 
 | |
|             migrationBuilder.InsertData(
 | |
|                 table: "Projects",
 | |
|                 columns: new[] { "Id", "ContactPerson", "EndDate", "Name", "ProjectAddress", "ProjectStatusId", "StartDate", "TenantId" },
 | |
|                 values: new object[,]
 | |
|                 {
 | |
|                     { new Guid("85bf587b-7ca9-4685-b77c-d817f5847e85"), "Project 1 Contact Person", new DateTime(2026, 4, 20, 10, 11, 17, 588, DateTimeKind.Unspecified), "Project 1", "Project 1 Address", new Guid("b74da4c2-d07e-46f2-9919-e75e49b12731"), new DateTime(2025, 4, 20, 10, 11, 17, 588, DateTimeKind.Unspecified), new Guid("b3466e83-7e11-464c-b93a-daf047838b26") }
 | |
|                 });
 | |
| 
 | |
|             migrationBuilder.CreateIndex(
 | |
|                 name: "IX_ActivityMasters_TenantId",
 | |
|                 table: "ActivityMasters",
 | |
|                 column: "TenantId");
 | |
| 
 | |
|             migrationBuilder.CreateIndex(
 | |
|                 name: "IX_ApplicationRoles_TenantId",
 | |
|                 table: "ApplicationRoles",
 | |
|                 column: "TenantId");
 | |
| 
 | |
|             migrationBuilder.CreateIndex(
 | |
|                 name: "IX_AspNetRoleClaims_RoleId",
 | |
|                 table: "AspNetRoleClaims",
 | |
|                 column: "RoleId");
 | |
| 
 | |
|             migrationBuilder.CreateIndex(
 | |
|                 name: "RoleNameIndex",
 | |
|                 table: "AspNetRoles",
 | |
|                 column: "NormalizedName",
 | |
|                 unique: true);
 | |
| 
 | |
|             migrationBuilder.CreateIndex(
 | |
|                 name: "IX_AspNetUserClaims_UserId",
 | |
|                 table: "AspNetUserClaims",
 | |
|                 column: "UserId");
 | |
| 
 | |
|             migrationBuilder.CreateIndex(
 | |
|                 name: "IX_AspNetUserLogins_UserId",
 | |
|                 table: "AspNetUserLogins",
 | |
|                 column: "UserId");
 | |
| 
 | |
|             migrationBuilder.CreateIndex(
 | |
|                 name: "IX_AspNetUserRoles_RoleId",
 | |
|                 table: "AspNetUserRoles",
 | |
|                 column: "RoleId");
 | |
| 
 | |
|             migrationBuilder.CreateIndex(
 | |
|                 name: "EmailIndex",
 | |
|                 table: "AspNetUsers",
 | |
|                 column: "NormalizedEmail");
 | |
| 
 | |
|             migrationBuilder.CreateIndex(
 | |
|                 name: "UserNameIndex",
 | |
|                 table: "AspNetUsers",
 | |
|                 column: "NormalizedUserName",
 | |
|                 unique: true);
 | |
| 
 | |
|             migrationBuilder.CreateIndex(
 | |
|                 name: "IX_AttendanceLogs_AttendanceId",
 | |
|                 table: "AttendanceLogs",
 | |
|                 column: "AttendanceId");
 | |
| 
 | |
|             migrationBuilder.CreateIndex(
 | |
|                 name: "IX_AttendanceLogs_DocumentId",
 | |
|                 table: "AttendanceLogs",
 | |
|                 column: "DocumentId");
 | |
| 
 | |
|             migrationBuilder.CreateIndex(
 | |
|                 name: "IX_AttendanceLogs_EmployeeID",
 | |
|                 table: "AttendanceLogs",
 | |
|                 column: "EmployeeID");
 | |
| 
 | |
|             migrationBuilder.CreateIndex(
 | |
|                 name: "IX_AttendanceLogs_TenantId",
 | |
|                 table: "AttendanceLogs",
 | |
|                 column: "TenantId");
 | |
| 
 | |
|             migrationBuilder.CreateIndex(
 | |
|                 name: "IX_AttendanceLogs_UpdatedBy",
 | |
|                 table: "AttendanceLogs",
 | |
|                 column: "UpdatedBy");
 | |
| 
 | |
|             migrationBuilder.CreateIndex(
 | |
|                 name: "IX_Attendes_EmployeeID",
 | |
|                 table: "Attendes",
 | |
|                 column: "EmployeeID");
 | |
| 
 | |
|             migrationBuilder.CreateIndex(
 | |
|                 name: "IX_Attendes_TenantId",
 | |
|                 table: "Attendes",
 | |
|                 column: "TenantId");
 | |
| 
 | |
|             migrationBuilder.CreateIndex(
 | |
|                 name: "IX_Buildings_TenantId",
 | |
|                 table: "Buildings",
 | |
|                 column: "TenantId");
 | |
| 
 | |
|             migrationBuilder.CreateIndex(
 | |
|                 name: "IX_Documents_TenantId",
 | |
|                 table: "Documents",
 | |
|                 column: "TenantId");
 | |
| 
 | |
|             migrationBuilder.CreateIndex(
 | |
|                 name: "IX_EmployeeRoleMappings_EmployeeId",
 | |
|                 table: "EmployeeRoleMappings",
 | |
|                 column: "EmployeeId");
 | |
| 
 | |
|             migrationBuilder.CreateIndex(
 | |
|                 name: "IX_EmployeeRoleMappings_RoleId",
 | |
|                 table: "EmployeeRoleMappings",
 | |
|                 column: "RoleId");
 | |
| 
 | |
|             migrationBuilder.CreateIndex(
 | |
|                 name: "IX_EmployeeRoleMappings_TenantId",
 | |
|                 table: "EmployeeRoleMappings",
 | |
|                 column: "TenantId");
 | |
| 
 | |
|             migrationBuilder.CreateIndex(
 | |
|                 name: "IX_Employees_ApplicationUserId",
 | |
|                 table: "Employees",
 | |
|                 column: "ApplicationUserId");
 | |
| 
 | |
|             migrationBuilder.CreateIndex(
 | |
|                 name: "IX_Employees_JobRoleId",
 | |
|                 table: "Employees",
 | |
|                 column: "JobRoleId");
 | |
| 
 | |
|             migrationBuilder.CreateIndex(
 | |
|                 name: "IX_Employees_TenantId",
 | |
|                 table: "Employees",
 | |
|                 column: "TenantId");
 | |
| 
 | |
|             migrationBuilder.CreateIndex(
 | |
|                 name: "IX_FeaturePermissions_FeatureId",
 | |
|                 table: "FeaturePermissions",
 | |
|                 column: "FeatureId");
 | |
| 
 | |
|             migrationBuilder.CreateIndex(
 | |
|                 name: "IX_Features_ModuleId",
 | |
|                 table: "Features",
 | |
|                 column: "ModuleId");
 | |
| 
 | |
|             migrationBuilder.CreateIndex(
 | |
|                 name: "IX_Floor_BuildingId",
 | |
|                 table: "Floor",
 | |
|                 column: "BuildingId");
 | |
| 
 | |
|             migrationBuilder.CreateIndex(
 | |
|                 name: "IX_Floor_TenantId",
 | |
|                 table: "Floor",
 | |
|                 column: "TenantId");
 | |
| 
 | |
|             migrationBuilder.CreateIndex(
 | |
|                 name: "IX_JobRoles_TenantId",
 | |
|                 table: "JobRoles",
 | |
|                 column: "TenantId");
 | |
| 
 | |
|             migrationBuilder.CreateIndex(
 | |
|                 name: "IX_ProjectAllocations_EmployeeId",
 | |
|                 table: "ProjectAllocations",
 | |
|                 column: "EmployeeId");
 | |
| 
 | |
|             migrationBuilder.CreateIndex(
 | |
|                 name: "IX_ProjectAllocations_ProjectId",
 | |
|                 table: "ProjectAllocations",
 | |
|                 column: "ProjectId");
 | |
| 
 | |
|             migrationBuilder.CreateIndex(
 | |
|                 name: "IX_ProjectAllocations_TenantId",
 | |
|                 table: "ProjectAllocations",
 | |
|                 column: "TenantId");
 | |
| 
 | |
|             migrationBuilder.CreateIndex(
 | |
|                 name: "IX_Projects_ProjectStatusId",
 | |
|                 table: "Projects",
 | |
|                 column: "ProjectStatusId");
 | |
| 
 | |
|             migrationBuilder.CreateIndex(
 | |
|                 name: "IX_Projects_TenantId",
 | |
|                 table: "Projects",
 | |
|                 column: "TenantId");
 | |
| 
 | |
|             migrationBuilder.CreateIndex(
 | |
|                 name: "IX_RefreshTokens_UserId",
 | |
|                 table: "RefreshTokens",
 | |
|                 column: "UserId");
 | |
| 
 | |
|             migrationBuilder.CreateIndex(
 | |
|                 name: "IX_RolePermissionMappings_FeaturePermissionId",
 | |
|                 table: "RolePermissionMappings",
 | |
|                 column: "FeaturePermissionId");
 | |
| 
 | |
|             migrationBuilder.CreateIndex(
 | |
|                 name: "IX_StatusMasters_TenantId",
 | |
|                 table: "StatusMasters",
 | |
|                 column: "TenantId");
 | |
| 
 | |
|             migrationBuilder.CreateIndex(
 | |
|                 name: "IX_TaskAllocations_AssignedBy",
 | |
|                 table: "TaskAllocations",
 | |
|                 column: "AssignedBy");
 | |
| 
 | |
|             migrationBuilder.CreateIndex(
 | |
|                 name: "IX_TaskAllocations_TenantId",
 | |
|                 table: "TaskAllocations",
 | |
|                 column: "TenantId");
 | |
| 
 | |
|             migrationBuilder.CreateIndex(
 | |
|                 name: "IX_TaskAllocations_WorkItemId",
 | |
|                 table: "TaskAllocations",
 | |
|                 column: "WorkItemId");
 | |
| 
 | |
|             migrationBuilder.CreateIndex(
 | |
|                 name: "IX_TaskComments_CommentedBy",
 | |
|                 table: "TaskComments",
 | |
|                 column: "CommentedBy");
 | |
| 
 | |
|             migrationBuilder.CreateIndex(
 | |
|                 name: "IX_TaskComments_TaskAllocationId",
 | |
|                 table: "TaskComments",
 | |
|                 column: "TaskAllocationId");
 | |
| 
 | |
|             migrationBuilder.CreateIndex(
 | |
|                 name: "IX_TaskComments_TenantId",
 | |
|                 table: "TaskComments",
 | |
|                 column: "TenantId");
 | |
| 
 | |
|             migrationBuilder.CreateIndex(
 | |
|                 name: "IX_TaskMembers_EmployeeId",
 | |
|                 table: "TaskMembers",
 | |
|                 column: "EmployeeId");
 | |
| 
 | |
|             migrationBuilder.CreateIndex(
 | |
|                 name: "IX_TaskMembers_TaskAllocationId",
 | |
|                 table: "TaskMembers",
 | |
|                 column: "TaskAllocationId");
 | |
| 
 | |
|             migrationBuilder.CreateIndex(
 | |
|                 name: "IX_TaskMembers_TenantId",
 | |
|                 table: "TaskMembers",
 | |
|                 column: "TenantId");
 | |
| 
 | |
|             migrationBuilder.CreateIndex(
 | |
|                 name: "IX_Tenants_IndustryId",
 | |
|                 table: "Tenants",
 | |
|                 column: "IndustryId");
 | |
| 
 | |
|             migrationBuilder.CreateIndex(
 | |
|                 name: "IX_TicketAttachments_CommentId",
 | |
|                 table: "TicketAttachments",
 | |
|                 column: "CommentId");
 | |
| 
 | |
|             migrationBuilder.CreateIndex(
 | |
|                 name: "IX_TicketAttachments_TicketId",
 | |
|                 table: "TicketAttachments",
 | |
|                 column: "TicketId");
 | |
| 
 | |
|             migrationBuilder.CreateIndex(
 | |
|                 name: "IX_TicketComments_TenantId",
 | |
|                 table: "TicketComments",
 | |
|                 column: "TenantId");
 | |
| 
 | |
|             migrationBuilder.CreateIndex(
 | |
|                 name: "IX_Tickets_PriorityId",
 | |
|                 table: "Tickets",
 | |
|                 column: "PriorityId");
 | |
| 
 | |
|             migrationBuilder.CreateIndex(
 | |
|                 name: "IX_Tickets_StatusId",
 | |
|                 table: "Tickets",
 | |
|                 column: "StatusId");
 | |
| 
 | |
|             migrationBuilder.CreateIndex(
 | |
|                 name: "IX_Tickets_TenantId",
 | |
|                 table: "Tickets",
 | |
|                 column: "TenantId");
 | |
| 
 | |
|             migrationBuilder.CreateIndex(
 | |
|                 name: "IX_Tickets_TypeId",
 | |
|                 table: "Tickets",
 | |
|                 column: "TypeId");
 | |
| 
 | |
|             migrationBuilder.CreateIndex(
 | |
|                 name: "IX_TicketTags_TagId",
 | |
|                 table: "TicketTags",
 | |
|                 column: "TagId");
 | |
| 
 | |
|             migrationBuilder.CreateIndex(
 | |
|                 name: "IX_TicketTags_TicketId",
 | |
|                 table: "TicketTags",
 | |
|                 column: "TicketId");
 | |
| 
 | |
|             migrationBuilder.CreateIndex(
 | |
|                 name: "IX_WorkAreas_FloorId",
 | |
|                 table: "WorkAreas",
 | |
|                 column: "FloorId");
 | |
| 
 | |
|             migrationBuilder.CreateIndex(
 | |
|                 name: "IX_WorkAreas_TenantId",
 | |
|                 table: "WorkAreas",
 | |
|                 column: "TenantId");
 | |
| 
 | |
|             migrationBuilder.CreateIndex(
 | |
|                 name: "IX_WorkItems_ActivityId",
 | |
|                 table: "WorkItems",
 | |
|                 column: "ActivityId");
 | |
| 
 | |
|             migrationBuilder.CreateIndex(
 | |
|                 name: "IX_WorkItems_TenantId",
 | |
|                 table: "WorkItems",
 | |
|                 column: "TenantId");
 | |
| 
 | |
|             migrationBuilder.CreateIndex(
 | |
|                 name: "IX_WorkItems_WorkAreaId",
 | |
|                 table: "WorkItems",
 | |
|                 column: "WorkAreaId");
 | |
| 
 | |
|             migrationBuilder.CreateIndex(
 | |
|                 name: "IX_WorkShifts_TenantId",
 | |
|                 table: "WorkShifts",
 | |
|                 column: "TenantId");
 | |
|         }
 | |
| 
 | |
|         /// <inheritdoc />
 | |
|         protected override void Down(MigrationBuilder migrationBuilder)
 | |
|         {
 | |
|             migrationBuilder.DropTable(
 | |
|                 name: "ActivityCheckLists");
 | |
| 
 | |
|             migrationBuilder.DropTable(
 | |
|                 name: "AspNetRoleClaims");
 | |
| 
 | |
|             migrationBuilder.DropTable(
 | |
|                 name: "AspNetUserClaims");
 | |
| 
 | |
|             migrationBuilder.DropTable(
 | |
|                 name: "AspNetUserLogins");
 | |
| 
 | |
|             migrationBuilder.DropTable(
 | |
|                 name: "AspNetUserRoles");
 | |
| 
 | |
|             migrationBuilder.DropTable(
 | |
|                 name: "AspNetUserTokens");
 | |
| 
 | |
|             migrationBuilder.DropTable(
 | |
|                 name: "AttendanceLogs");
 | |
| 
 | |
|             migrationBuilder.DropTable(
 | |
|                 name: "CheckListMappings");
 | |
| 
 | |
|             migrationBuilder.DropTable(
 | |
|                 name: "EmployeeRoleMappings");
 | |
| 
 | |
|             migrationBuilder.DropTable(
 | |
|                 name: "Inquiries");
 | |
| 
 | |
|             migrationBuilder.DropTable(
 | |
|                 name: "ProjectAllocations");
 | |
| 
 | |
|             migrationBuilder.DropTable(
 | |
|                 name: "RefreshTokens");
 | |
| 
 | |
|             migrationBuilder.DropTable(
 | |
|                 name: "RolePermissionMappings");
 | |
| 
 | |
|             migrationBuilder.DropTable(
 | |
|                 name: "TaskComments");
 | |
| 
 | |
|             migrationBuilder.DropTable(
 | |
|                 name: "TaskMembers");
 | |
| 
 | |
|             migrationBuilder.DropTable(
 | |
|                 name: "TicketAttachments");
 | |
| 
 | |
|             migrationBuilder.DropTable(
 | |
|                 name: "TicketTags");
 | |
| 
 | |
|             migrationBuilder.DropTable(
 | |
|                 name: "WorkShifts");
 | |
| 
 | |
|             migrationBuilder.DropTable(
 | |
|                 name: "AspNetRoles");
 | |
| 
 | |
|             migrationBuilder.DropTable(
 | |
|                 name: "Attendes");
 | |
| 
 | |
|             migrationBuilder.DropTable(
 | |
|                 name: "Documents");
 | |
| 
 | |
|             migrationBuilder.DropTable(
 | |
|                 name: "Projects");
 | |
| 
 | |
|             migrationBuilder.DropTable(
 | |
|                 name: "ApplicationRoles");
 | |
| 
 | |
|             migrationBuilder.DropTable(
 | |
|                 name: "FeaturePermissions");
 | |
| 
 | |
|             migrationBuilder.DropTable(
 | |
|                 name: "TaskAllocations");
 | |
| 
 | |
|             migrationBuilder.DropTable(
 | |
|                 name: "TicketComments");
 | |
| 
 | |
|             migrationBuilder.DropTable(
 | |
|                 name: "TicketTagMasters");
 | |
| 
 | |
|             migrationBuilder.DropTable(
 | |
|                 name: "Tickets");
 | |
| 
 | |
|             migrationBuilder.DropTable(
 | |
|                 name: "StatusMasters");
 | |
| 
 | |
|             migrationBuilder.DropTable(
 | |
|                 name: "Features");
 | |
| 
 | |
|             migrationBuilder.DropTable(
 | |
|                 name: "Employees");
 | |
| 
 | |
|             migrationBuilder.DropTable(
 | |
|                 name: "WorkItems");
 | |
| 
 | |
|             migrationBuilder.DropTable(
 | |
|                 name: "TicketPriorityMasters");
 | |
| 
 | |
|             migrationBuilder.DropTable(
 | |
|                 name: "TicketStatusMasters");
 | |
| 
 | |
|             migrationBuilder.DropTable(
 | |
|                 name: "TicketTypeMasters");
 | |
| 
 | |
|             migrationBuilder.DropTable(
 | |
|                 name: "Modules");
 | |
| 
 | |
|             migrationBuilder.DropTable(
 | |
|                 name: "AspNetUsers");
 | |
| 
 | |
|             migrationBuilder.DropTable(
 | |
|                 name: "JobRoles");
 | |
| 
 | |
|             migrationBuilder.DropTable(
 | |
|                 name: "ActivityMasters");
 | |
| 
 | |
|             migrationBuilder.DropTable(
 | |
|                 name: "WorkAreas");
 | |
| 
 | |
|             migrationBuilder.DropTable(
 | |
|                 name: "Floor");
 | |
| 
 | |
|             migrationBuilder.DropTable(
 | |
|                 name: "Buildings");
 | |
| 
 | |
|             migrationBuilder.DropTable(
 | |
|                 name: "Tenants");
 | |
| 
 | |
|             migrationBuilder.DropTable(
 | |
|                 name: "Industries");
 | |
|         }
 | |
|     }
 | |
| }
 |