//
using System;
using Marco.Pms.DataAccess.Data;
using Microsoft.EntityFrameworkCore;
using Microsoft.EntityFrameworkCore.Infrastructure;
using Microsoft.EntityFrameworkCore.Metadata;
using Microsoft.EntityFrameworkCore.Migrations;
using Microsoft.EntityFrameworkCore.Storage.ValueConversion;
#nullable disable
namespace Marco.Pms.DataAccess.Migrations
{
[DbContext(typeof(ApplicationDbContext))]
[Migration("20251014094816_Added_Comment_In_ReceivedInvoicePayment_Table")]
partial class Added_Comment_In_ReceivedInvoicePayment_Table
{
///
protected override void BuildTargetModel(ModelBuilder modelBuilder)
{
#pragma warning disable 612, 618
modelBuilder
.HasAnnotation("ProductVersion", "8.0.12")
.HasAnnotation("Relational:MaxIdentifierLength", 64);
//MySqlModelBuilderExtensions.AutoIncrementColumns(modelBuilder);
modelBuilder.Entity("Marco.Pms.Model.Activities.TaskAllocation", b =>
{
b.Property("Id")
.ValueGeneratedOnAdd()
.HasColumnType("char(36)");
b.Property("ApprovedById")
.HasColumnType("char(36)");
b.Property("ApprovedDate")
.HasColumnType("datetime(6)");
b.Property("AssignedBy")
.HasColumnType("char(36)");
b.Property("AssignmentDate")
.HasColumnType("datetime(6)");
b.Property("CompletedTask")
.HasColumnType("double");
b.Property("Description")
.HasColumnType("longtext");
b.Property("ParentTaskId")
.HasColumnType("char(36)");
b.Property("PlannedTask")
.HasColumnType("double");
b.Property("ReportedById")
.HasColumnType("char(36)");
b.Property("ReportedDate")
.HasColumnType("datetime(6)");
b.Property("ReportedTask")
.HasColumnType("double");
b.Property("TenantId")
.HasColumnType("char(36)");
b.Property("WorkItemId")
.HasColumnType("char(36)");
b.Property("WorkStatusId")
.HasColumnType("char(36)");
b.HasKey("Id");
b.HasIndex("ApprovedById");
b.HasIndex("AssignedBy");
b.HasIndex("ReportedById");
b.HasIndex("TenantId");
b.HasIndex("WorkItemId");
b.HasIndex("WorkStatusId");
b.ToTable("TaskAllocations");
});
modelBuilder.Entity("Marco.Pms.Model.Activities.TaskAttachment", b =>
{
b.Property("Id")
.ValueGeneratedOnAdd()
.HasColumnType("char(36)");
b.Property("DocumentId")
.HasColumnType("char(36)");
b.Property("ReferenceId")
.HasColumnType("char(36)");
b.HasKey("Id");
b.ToTable("TaskAttachments");
});
modelBuilder.Entity("Marco.Pms.Model.Activities.TaskComment", b =>
{
b.Property("Id")
.ValueGeneratedOnAdd()
.HasColumnType("char(36)");
b.Property("Comment")
.IsRequired()
.HasColumnType("longtext");
b.Property("CommentDate")
.HasColumnType("datetime(6)");
b.Property("CommentedBy")
.HasColumnType("char(36)");
b.Property("TaskAllocationId")
.HasColumnType("char(36)");
b.Property("TenantId")
.HasColumnType("char(36)");
b.HasKey("Id");
b.HasIndex("CommentedBy");
b.HasIndex("TaskAllocationId");
b.HasIndex("TenantId");
b.ToTable("TaskComments");
});
modelBuilder.Entity("Marco.Pms.Model.Activities.TaskMembers", b =>
{
b.Property("Id")
.ValueGeneratedOnAdd()
.HasColumnType("char(36)");
b.Property("EmployeeId")
.HasColumnType("char(36)");
b.Property("TaskAllocationId")
.HasColumnType("char(36)");
b.Property("TenantId")
.HasColumnType("char(36)");
b.HasKey("Id");
b.HasIndex("EmployeeId");
b.HasIndex("TaskAllocationId");
b.HasIndex("TenantId");
b.ToTable("TaskMembers");
});
modelBuilder.Entity("Marco.Pms.Model.AttendanceModule.Attendance", b =>
{
b.Property("Id")
.ValueGeneratedOnAdd()
.HasColumnType("char(36)");
b.Property("Activity")
.HasColumnType("int");
b.Property("ApprovedAt")
.HasColumnType("datetime(6)");
b.Property("ApprovedById")
.HasColumnType("char(36)");
b.Property("AttendanceDate")
.HasColumnType("datetime(6)");
b.Property("Comment")
.IsRequired()
.HasColumnType("longtext");
b.Property("Date")
.HasColumnType("datetime(6)");
b.Property("EmployeeId")
.HasColumnType("char(36)");
b.Property("InTime")
.HasColumnType("datetime(6)");
b.Property("IsApproved")
.HasColumnType("tinyint(1)");
b.Property("OutTime")
.HasColumnType("datetime(6)");
b.Property("ProjectID")
.HasColumnType("char(36)");
b.Property("RequestedAt")
.HasColumnType("datetime(6)");
b.Property("RequestedById")
.HasColumnType("char(36)");
b.Property("TenantId")
.HasColumnType("char(36)");
b.HasKey("Id");
b.HasIndex("ApprovedById");
b.HasIndex("EmployeeId");
b.HasIndex("RequestedById");
b.HasIndex("TenantId");
b.ToTable("Attendes");
});
modelBuilder.Entity("Marco.Pms.Model.AttendanceModule.AttendanceLog", b =>
{
b.Property("Id")
.ValueGeneratedOnAdd()
.HasColumnType("char(36)");
b.Property("Activity")
.HasColumnType("int");
b.Property("ActivityTime")
.HasColumnType("datetime(6)");
b.Property("AttendanceId")
.HasColumnType("char(36)");
b.Property("Comment")
.IsRequired()
.HasColumnType("longtext");
b.Property("DocumentId")
.HasColumnType("char(36)");
b.Property("EmployeeID")
.HasColumnType("char(36)");
b.Property("Latitude")
.HasColumnType("longtext");
b.Property("Longitude")
.HasColumnType("longtext");
b.Property("Photo")
.HasColumnType("longblob");
b.Property("TenantId")
.HasColumnType("char(36)");
b.Property("UpdatedBy")
.HasColumnType("char(36)");
b.Property("UpdatedOn")
.HasColumnType("datetime(6)");
b.HasKey("Id");
b.HasIndex("AttendanceId");
b.HasIndex("DocumentId");
b.HasIndex("EmployeeID");
b.HasIndex("TenantId");
b.HasIndex("UpdatedBy");
b.ToTable("AttendanceLogs");
});
modelBuilder.Entity("Marco.Pms.Model.Authentication.MPINDetails", b =>
{
b.Property("Id")
.ValueGeneratedOnAdd()
.HasColumnType("char(36)");
b.Property("MPIN")
.IsRequired()
.HasColumnType("longtext");
b.Property("MPINToken")
.IsRequired()
.HasColumnType("longtext");
b.Property("TimeStamp")
.HasColumnType("datetime(6)");
b.Property("UserId")
.HasColumnType("char(36)");
b.HasKey("Id");
b.ToTable("MPINDetails");
});
modelBuilder.Entity("Marco.Pms.Model.Authentication.OTPDetails", b =>
{
b.Property("Id")
.ValueGeneratedOnAdd()
.HasColumnType("char(36)");
b.Property("ExpriesInSec")
.HasColumnType("int");
b.Property("IsUsed")
.HasColumnType("tinyint(1)");
b.Property("OTP")
.IsRequired()
.HasColumnType("longtext");
b.Property("TimeStamp")
.HasColumnType("datetime(6)");
b.Property("UserId")
.HasColumnType("char(36)");
b.HasKey("Id");
b.ToTable("OTPDetails");
});
modelBuilder.Entity("Marco.Pms.Model.Authentication.RefreshToken", b =>
{
b.Property("Id")
.ValueGeneratedOnAdd()
.HasColumnType("char(36)");
b.Property("CreatedAt")
.HasColumnType("datetime(6)");
b.Property("ExpiryDate")
.HasColumnType("datetime(6)");
b.Property("IsRevoked")
.HasColumnType("tinyint(1)");
b.Property("IsUsed")
.HasColumnType("tinyint(1)");
b.Property("RevokedAt")
.HasColumnType("datetime(6)");
b.Property("Token")
.HasColumnType("longtext");
b.Property("UserId")
.HasColumnType("varchar(255)");
b.HasKey("Id");
b.HasIndex("UserId");
b.ToTable("RefreshTokens");
});
modelBuilder.Entity("Marco.Pms.Model.Collection.Invoice", b =>
{
b.Property("Id")
.ValueGeneratedOnAdd()
.HasColumnType("char(36)");
b.Property("BasicAmount")
.HasColumnType("double");
b.Property("ClientSubmitedDate")
.HasColumnType("datetime(6)");
b.Property("CreatedAt")
.HasColumnType("datetime(6)");
b.Property("CreatedById")
.HasColumnType("char(36)");
b.Property("Description")
.IsRequired()
.HasColumnType("longtext");
b.Property("EInvoiceNumber")
.HasColumnType("longtext");
b.Property("ExceptedPaymentDate")
.HasColumnType("datetime(6)");
b.Property("InvoiceDate")
.HasColumnType("datetime(6)");
b.Property("InvoiceNumber")
.IsRequired()
.HasColumnType("longtext");
b.Property("IsActive")
.HasColumnType("tinyint(1)");
b.Property("MarkAsCompleted")
.HasColumnType("tinyint(1)");
b.Property("ProjectId")
.HasColumnType("char(36)");
b.Property("TaxAmount")
.HasColumnType("double");
b.Property("TenantId")
.HasColumnType("char(36)");
b.Property("Title")
.IsRequired()
.HasColumnType("longtext");
b.Property("UpdatedAt")
.HasColumnType("datetime(6)");
b.Property("UpdatedById")
.HasColumnType("char(36)");
b.HasKey("Id");
b.HasIndex("CreatedById");
b.HasIndex("ProjectId");
b.HasIndex("TenantId");
b.HasIndex("UpdatedById");
b.ToTable("Invoices");
});
modelBuilder.Entity("Marco.Pms.Model.Collection.InvoiceAttachment", b =>
{
b.Property("Id")
.ValueGeneratedOnAdd()
.HasColumnType("char(36)");
b.Property("DocumentId")
.HasColumnType("char(36)");
b.Property("InvoiceId")
.HasColumnType("char(36)");
b.Property("TenantId")
.HasColumnType("char(36)");
b.HasKey("Id");
b.HasIndex("DocumentId");
b.HasIndex("InvoiceId");
b.HasIndex("TenantId");
b.ToTable("InvoiceAttachments");
});
modelBuilder.Entity("Marco.Pms.Model.Collection.InvoiceComment", b =>
{
b.Property("Id")
.ValueGeneratedOnAdd()
.HasColumnType("char(36)");
b.Property("Comment")
.IsRequired()
.HasColumnType("longtext");
b.Property("CreatedAt")
.HasColumnType("datetime(6)");
b.Property("CreatedById")
.HasColumnType("char(36)");
b.Property("InvoiceId")
.HasColumnType("char(36)");
b.Property("TenantId")
.HasColumnType("char(36)");
b.HasKey("Id");
b.HasIndex("CreatedById");
b.HasIndex("InvoiceId");
b.HasIndex("TenantId");
b.ToTable("InvoiceComments");
});
modelBuilder.Entity("Marco.Pms.Model.Collection.ReceivedInvoicePayment", b =>
{
b.Property("Id")
.ValueGeneratedOnAdd()
.HasColumnType("char(36)");
b.Property("Amount")
.HasColumnType("double");
b.Property("Comment")
.IsRequired()
.HasColumnType("longtext");
b.Property("CreatedAt")
.HasColumnType("datetime(6)");
b.Property("CreatedById")
.HasColumnType("char(36)");
b.Property("InvoiceId")
.HasColumnType("char(36)");
b.Property("IsActive")
.HasColumnType("tinyint(1)");
b.Property("PaymentReceivedDate")
.HasColumnType("datetime(6)");
b.Property("TenantId")
.HasColumnType("char(36)");
b.Property("TransactionId")
.IsRequired()
.HasColumnType("longtext");
b.HasKey("Id");
b.HasIndex("CreatedById");
b.HasIndex("InvoiceId");
b.HasIndex("TenantId");
b.ToTable("ReceivedInvoicePayments");
});
modelBuilder.Entity("Marco.Pms.Model.Directory.Bucket", b =>
{
b.Property("Id")
.ValueGeneratedOnAdd()
.HasColumnType("char(36)");
b.Property("CreatedAt")
.HasColumnType("datetime(6)");
b.Property("CreatedByID")
.HasColumnType("char(36)");
b.Property("Description")
.IsRequired()
.HasColumnType("longtext");
b.Property("Name")
.IsRequired()
.HasColumnType("longtext");
b.Property("TenantId")
.HasColumnType("char(36)");
b.HasKey("Id");
b.HasIndex("CreatedByID");
b.HasIndex("TenantId");
b.ToTable("Buckets");
});
modelBuilder.Entity("Marco.Pms.Model.Directory.Contact", b =>
{
b.Property("Id")
.ValueGeneratedOnAdd()
.HasColumnType("char(36)");
b.Property("Address")
.HasColumnType("longtext");
b.Property("ContactCategoryId")
.HasColumnType("char(36)");
b.Property("CreatedAt")
.HasColumnType("datetime(6)");
b.Property("CreatedById")
.HasColumnType("char(36)");
b.Property("Description")
.IsRequired()
.HasColumnType("longtext");
b.Property("Designation")
.IsRequired()
.HasColumnType("longtext");
b.Property("IsActive")
.HasColumnType("tinyint(1)");
b.Property("Name")
.IsRequired()
.HasColumnType("longtext");
b.Property("Organization")
.IsRequired()
.HasColumnType("longtext");
b.Property("TenantId")
.HasColumnType("char(36)");
b.Property("UpdatedAt")
.HasColumnType("datetime(6)");
b.Property("UpdatedById")
.HasColumnType("char(36)");
b.HasKey("Id");
b.HasIndex("ContactCategoryId");
b.HasIndex("CreatedById");
b.HasIndex("TenantId");
b.HasIndex("UpdatedById");
b.ToTable("Contacts");
});
modelBuilder.Entity("Marco.Pms.Model.Directory.ContactBucketMapping", b =>
{
b.Property("Id")
.ValueGeneratedOnAdd()
.HasColumnType("char(36)");
b.Property("BucketId")
.HasColumnType("char(36)");
b.Property("ContactId")
.HasColumnType("char(36)");
b.HasKey("Id");
b.HasIndex("BucketId");
b.HasIndex("ContactId");
b.ToTable("ContactBucketMappings");
});
modelBuilder.Entity("Marco.Pms.Model.Directory.ContactCategoryMaster", b =>
{
b.Property("Id")
.ValueGeneratedOnAdd()
.HasColumnType("char(36)");
b.Property("Description")
.IsRequired()
.HasColumnType("longtext");
b.Property("Name")
.IsRequired()
.HasColumnType("longtext");
b.Property("TenantId")
.HasColumnType("char(36)");
b.HasKey("Id");
b.HasIndex("TenantId");
b.ToTable("ContactCategoryMasters");
});
modelBuilder.Entity("Marco.Pms.Model.Directory.ContactEmail", b =>
{
b.Property("Id")
.ValueGeneratedOnAdd()
.HasColumnType("char(36)");
b.Property("ContactId")
.HasColumnType("char(36)");
b.Property("EmailAddress")
.IsRequired()
.HasColumnType("longtext");
b.Property("IsPrimary")
.HasColumnType("tinyint(1)");
b.Property("Label")
.IsRequired()
.HasColumnType("longtext");
b.Property("TenantId")
.HasColumnType("char(36)");
b.HasKey("Id");
b.HasIndex("ContactId");
b.ToTable("ContactsEmails");
});
modelBuilder.Entity("Marco.Pms.Model.Directory.ContactNote", b =>
{
b.Property("Id")
.ValueGeneratedOnAdd()
.HasColumnType("char(36)");
b.Property("ContactId")
.HasColumnType("char(36)");
b.Property("CreatedAt")
.HasColumnType("datetime(6)");
b.Property("CreatedById")
.HasColumnType("char(36)");
b.Property("IsActive")
.HasColumnType("tinyint(1)");
b.Property("Note")
.IsRequired()
.HasColumnType("longtext");
b.Property("TenantId")
.HasColumnType("char(36)");
b.Property("UpdatedAt")
.HasColumnType("datetime(6)");
b.Property("UpdatedById")
.HasColumnType("char(36)");
b.HasKey("Id");
b.HasIndex("ContactId");
b.HasIndex("CreatedById");
b.HasIndex("TenantId");
b.HasIndex("UpdatedById");
b.ToTable("ContactNotes");
});
modelBuilder.Entity("Marco.Pms.Model.Directory.ContactPhone", b =>
{
b.Property("Id")
.ValueGeneratedOnAdd()
.HasColumnType("char(36)");
b.Property("ContactId")
.HasColumnType("char(36)");
b.Property("IsPrimary")
.HasColumnType("tinyint(1)");
b.Property("Label")
.IsRequired()
.HasColumnType("longtext");
b.Property("PhoneNumber")
.IsRequired()
.HasColumnType("longtext");
b.Property("TenantId")
.HasColumnType("char(36)");
b.HasKey("Id");
b.HasIndex("ContactId");
b.ToTable("ContactsPhones");
});
modelBuilder.Entity("Marco.Pms.Model.Directory.ContactProjectMapping", b =>
{
b.Property("Id")
.ValueGeneratedOnAdd()
.HasColumnType("char(36)");
b.Property("ContactId")
.HasColumnType("char(36)");
b.Property("ProjectId")
.HasColumnType("char(36)");
b.Property("TenantId")
.HasColumnType("char(36)");
b.HasKey("Id");
b.HasIndex("ContactId");
b.HasIndex("ProjectId");
b.HasIndex("TenantId");
b.ToTable("ContactProjectMappings");
});
modelBuilder.Entity("Marco.Pms.Model.Directory.ContactTagMapping", b =>
{
b.Property("Id")
.ValueGeneratedOnAdd()
.HasColumnType("char(36)");
b.Property("ContactId")
.HasColumnType("char(36)");
b.Property("ContactTagId")
.HasColumnType("char(36)");
b.HasKey("Id");
b.HasIndex("ContactId");
b.HasIndex("ContactTagId");
b.ToTable("ContactTagMappings");
});
modelBuilder.Entity("Marco.Pms.Model.Directory.ContactTagMaster", b =>
{
b.Property("Id")
.ValueGeneratedOnAdd()
.HasColumnType("char(36)");
b.Property("Description")
.IsRequired()
.HasColumnType("longtext");
b.Property("Name")
.IsRequired()
.HasColumnType("longtext");
b.Property("TenantId")
.HasColumnType("char(36)");
b.HasKey("Id");
b.HasIndex("TenantId");
b.ToTable("ContactTagMasters");
});
modelBuilder.Entity("Marco.Pms.Model.Directory.DirectoryUpdateLog", b =>
{
b.Property("Id")
.ValueGeneratedOnAdd()
.HasColumnType("char(36)");
b.Property("RefereanceId")
.HasColumnType("char(36)");
b.Property("UpdateAt")
.HasColumnType("datetime(6)");
b.Property("UpdatedById")
.HasColumnType("char(36)");
b.HasKey("Id");
b.HasIndex("UpdatedById");
b.ToTable("DirectoryUpdateLogs");
});
modelBuilder.Entity("Marco.Pms.Model.Directory.EmployeeBucketMapping", b =>
{
b.Property("Id")
.ValueGeneratedOnAdd()
.HasColumnType("char(36)");
b.Property("BucketId")
.HasColumnType("char(36)");
b.Property("EmployeeId")
.HasColumnType("char(36)");
b.HasKey("Id");
b.HasIndex("BucketId");
b.HasIndex("EmployeeId");
b.ToTable("EmployeeBucketMappings");
});
modelBuilder.Entity("Marco.Pms.Model.DocumentManager.AttachmentTagMapping", b =>
{
b.Property("Id")
.ValueGeneratedOnAdd()
.HasColumnType("char(36)");
b.Property("AttachmentId")
.HasColumnType("char(36)");
b.Property("DocumentTagId")
.HasColumnType("char(36)");
b.Property("TenantId")
.HasColumnType("char(36)");
b.HasKey("Id");
b.HasIndex("AttachmentId");
b.HasIndex("DocumentTagId");
b.HasIndex("TenantId");
b.ToTable("AttachmentTagMappings");
});
modelBuilder.Entity("Marco.Pms.Model.DocumentManager.AttachmentVersionMapping", b =>
{
b.Property("Id")
.ValueGeneratedOnAdd()
.HasColumnType("char(36)");
b.Property("ChildAttachmentId")
.HasColumnType("char(36)");
b.Property("ParentAttachmentId")
.HasColumnType("char(36)");
b.Property("TenantId")
.HasColumnType("char(36)");
b.Property("Version")
.HasColumnType("int");
b.HasKey("Id");
b.HasIndex("ChildAttachmentId");
b.HasIndex("ParentAttachmentId");
b.HasIndex("TenantId");
b.ToTable("AttachmentVersionMappings");
});
modelBuilder.Entity("Marco.Pms.Model.DocumentManager.Document", b =>
{
b.Property("Id")
.ValueGeneratedOnAdd()
.HasColumnType("char(36)");
b.Property("Base64Data")
.HasColumnType("longtext");
b.Property("BatchId")
.HasColumnType("char(36)");
b.Property("ContentType")
.IsRequired()
.HasColumnType("longtext");
b.Property("FileName")
.IsRequired()
.HasColumnType("longtext");
b.Property("FileSize")
.HasColumnType("bigint");
b.Property("S3Key")
.IsRequired()
.HasColumnType("longtext");
b.Property("TenantId")
.HasColumnType("char(36)");
b.Property("ThumbS3Key")
.HasColumnType("longtext");
b.Property("UploadedAt")
.HasColumnType("datetime(6)");
b.Property("UploadedById")
.HasColumnType("char(36)");
b.HasKey("Id");
b.HasIndex("TenantId");
b.HasIndex("UploadedById");
b.ToTable("Documents");
});
modelBuilder.Entity("Marco.Pms.Model.DocumentManager.DocumentAttachment", b =>
{
b.Property("Id")
.ValueGeneratedOnAdd()
.HasColumnType("char(36)");
b.Property("Description")
.IsRequired()
.HasColumnType("longtext");
b.Property("DocumentDataId")
.HasColumnType("char(36)");
b.Property("DocumentId")
.HasColumnType("longtext");
b.Property("DocumentTypeId")
.HasColumnType("char(36)");
b.Property("EntityId")
.HasColumnType("char(36)");
b.Property("IsActive")
.HasColumnType("tinyint(1)");
b.Property("IsCurrentVersion")
.HasColumnType("tinyint(1)");
b.Property("IsVerified")
.HasColumnType("tinyint(1)");
b.Property("Name")
.IsRequired()
.HasColumnType("longtext");
b.Property("TenantId")
.HasColumnType("char(36)");
b.Property("UpdatedAt")
.HasColumnType("datetime(6)");
b.Property("UpdatedById")
.HasColumnType("char(36)");
b.Property("UploadedAt")
.HasColumnType("datetime(6)");
b.Property("UploadedById")
.HasColumnType("char(36)");
b.Property("VerifiedAt")
.HasColumnType("datetime(6)");
b.Property("VerifiedById")
.HasColumnType("char(36)");
b.HasKey("Id");
b.HasIndex("DocumentDataId");
b.HasIndex("DocumentTypeId");
b.HasIndex("TenantId");
b.HasIndex("UpdatedById");
b.HasIndex("UploadedById");
b.HasIndex("VerifiedById");
b.ToTable("DocumentAttachments");
});
modelBuilder.Entity("Marco.Pms.Model.DocumentManager.DocumentCategoryMaster", b =>
{
b.Property("Id")
.ValueGeneratedOnAdd()
.HasColumnType("char(36)");
b.Property("CreatedAt")
.HasColumnType("datetime(6)");
b.Property("Description")
.IsRequired()
.HasColumnType("longtext");
b.Property("EntityTypeId")
.HasColumnType("char(36)");
b.Property("Name")
.IsRequired()
.HasColumnType("longtext");
b.Property("TenantId")
.HasColumnType("char(36)");
b.HasKey("Id");
b.HasIndex("EntityTypeId");
b.HasIndex("TenantId");
b.ToTable("DocumentCategoryMasters");
b.HasData(
new
{
Id = new Guid("cfbff269-072b-477a-b48b-72cdc57dd1d3"),
CreatedAt = new DateTime(2025, 9, 15, 12, 42, 3, 202, DateTimeKind.Utc),
Description = "Project documents are formal records that outline the plans, progress, and details necessary to execute and manage a project effectively.",
EntityTypeId = new Guid("c8fe7115-aa27-43bc-99f4-7b05fabe436e"),
Name = "Project Documents",
TenantId = new Guid("b3466e83-7e11-464c-b93a-daf047838b26")
},
new
{
Id = new Guid("2d9fb9cf-db53-476b-a452-492e88e2b51f"),
CreatedAt = new DateTime(2025, 9, 15, 12, 42, 3, 202, DateTimeKind.Utc),
Description = "Employment details along with legal IDs like passports or driver’s licenses to verify identity and work authorization.",
EntityTypeId = new Guid("dbb9555a-7a0c-40f2-a9ed-f0463f1ceed7"),
Name = "Employee Documents",
TenantId = new Guid("b3466e83-7e11-464c-b93a-daf047838b26")
});
});
modelBuilder.Entity("Marco.Pms.Model.DocumentManager.DocumentTagMaster", b =>
{
b.Property("Id")
.ValueGeneratedOnAdd()
.HasColumnType("char(36)");
b.Property("Description")
.IsRequired()
.HasColumnType("longtext");
b.Property("Name")
.IsRequired()
.HasColumnType("longtext");
b.Property("TenantId")
.HasColumnType("char(36)");
b.HasKey("Id");
b.HasIndex("TenantId");
b.ToTable("DocumentTagMasters");
});
modelBuilder.Entity("Marco.Pms.Model.DocumentManager.DocumentTypeMaster", b =>
{
b.Property("Id")
.ValueGeneratedOnAdd()
.HasColumnType("char(36)");
b.Property("AllowedContentType")
.IsRequired()
.HasColumnType("longtext");
b.Property("CreatedAt")
.HasColumnType("datetime(6)");
b.Property("DocumentCategoryId")
.HasColumnType("char(36)");
b.Property("IsActive")
.HasColumnType("tinyint(1)");
b.Property("IsMandatory")
.HasColumnType("tinyint(1)");
b.Property("IsSystem")
.HasColumnType("tinyint(1)");
b.Property("IsValidationRequired")
.HasColumnType("tinyint(1)");
b.Property("MaxSizeAllowedInMB")
.HasColumnType("double");
b.Property("Name")
.IsRequired()
.HasColumnType("longtext");
b.Property("RegexExpression")
.HasColumnType("longtext");
b.Property("TenantId")
.HasColumnType("char(36)");
b.HasKey("Id");
b.HasIndex("DocumentCategoryId");
b.HasIndex("TenantId");
b.ToTable("DocumentTypeMasters");
b.HasData(
new
{
Id = new Guid("336225ac-67f3-4e14-ba7a-8fad03cf2832"),
AllowedContentType = "application/pdf,image/jpeg",
CreatedAt = new DateTime(2025, 9, 3, 10, 46, 49, 955, DateTimeKind.Utc),
DocumentCategoryId = new Guid("2d9fb9cf-db53-476b-a452-492e88e2b51f"),
IsActive = true,
IsMandatory = true,
IsSystem = true,
IsValidationRequired = true,
MaxSizeAllowedInMB = 2.0,
Name = "Aadhaar card",
RegexExpression = "^[2-9][0-9]{11}$",
TenantId = new Guid("b3466e83-7e11-464c-b93a-daf047838b26")
},
new
{
Id = new Guid("6344393b-9bb1-45f8-b620-9f6e279d012c"),
AllowedContentType = "application/pdf,image/jpeg",
CreatedAt = new DateTime(2025, 9, 3, 10, 46, 49, 955, DateTimeKind.Utc),
DocumentCategoryId = new Guid("2d9fb9cf-db53-476b-a452-492e88e2b51f"),
IsActive = true,
IsMandatory = true,
IsSystem = true,
IsValidationRequired = true,
MaxSizeAllowedInMB = 2.0,
Name = "Pan Card",
RegexExpression = "^[A-Z]{5}[0-9]{4}[A-Z]{1}$",
TenantId = new Guid("b3466e83-7e11-464c-b93a-daf047838b26")
},
new
{
Id = new Guid("2d1d7441-46a8-425e-9395-94d0956f8e91"),
AllowedContentType = "application/pdf,image/jpeg",
CreatedAt = new DateTime(2025, 9, 3, 10, 46, 49, 955, DateTimeKind.Utc),
DocumentCategoryId = new Guid("2d9fb9cf-db53-476b-a452-492e88e2b51f"),
IsActive = true,
IsMandatory = true,
IsSystem = true,
IsValidationRequired = true,
MaxSizeAllowedInMB = 2.0,
Name = "Voter Card",
RegexExpression = "^[A-Z]{3}[0-9]{7}$",
TenantId = new Guid("b3466e83-7e11-464c-b93a-daf047838b26")
},
new
{
Id = new Guid("16c40b80-c207-4a0c-a4d3-381414afe35a"),
AllowedContentType = "application/pdf,image/jpeg",
CreatedAt = new DateTime(2025, 9, 3, 10, 46, 49, 955, DateTimeKind.Utc),
DocumentCategoryId = new Guid("2d9fb9cf-db53-476b-a452-492e88e2b51f"),
IsActive = true,
IsMandatory = true,
IsSystem = true,
IsValidationRequired = true,
MaxSizeAllowedInMB = 2.0,
Name = "Passport",
RegexExpression = "^[A-PR-WY][1-9]\\d\\s?\\d{4}[1-9]$",
TenantId = new Guid("b3466e83-7e11-464c-b93a-daf047838b26")
},
new
{
Id = new Guid("f76d8215-d399-4f0e-b414-12e427f50be3"),
AllowedContentType = "application/pdf,image/jpeg",
CreatedAt = new DateTime(2025, 9, 3, 10, 46, 49, 955, DateTimeKind.Utc),
DocumentCategoryId = new Guid("2d9fb9cf-db53-476b-a452-492e88e2b51f"),
IsActive = true,
IsMandatory = true,
IsSystem = true,
IsValidationRequired = true,
MaxSizeAllowedInMB = 2.0,
Name = "Bank Passbook",
RegexExpression = "^\\d{9,18}$",
TenantId = new Guid("b3466e83-7e11-464c-b93a-daf047838b26")
},
new
{
Id = new Guid("260abd7e-c96d-4ae4-a29b-9b5bb5d24ebd"),
AllowedContentType = "application/pdf,application/msword,application/vnd.ms-excel,application/vnd.openxmlformats-officedocument.spreadsheetml.sheet,application/vnd.openxmlformats-officedocument.wordprocessingml.document",
CreatedAt = new DateTime(2025, 9, 3, 10, 46, 49, 955, DateTimeKind.Utc),
DocumentCategoryId = new Guid("cfbff269-072b-477a-b48b-72cdc57dd1d3"),
IsActive = true,
IsMandatory = false,
IsSystem = true,
IsValidationRequired = false,
MaxSizeAllowedInMB = 1.0,
Name = "Bill of Quantities (BOQ)",
TenantId = new Guid("b3466e83-7e11-464c-b93a-daf047838b26")
},
new
{
Id = new Guid("a1a190ba-c4a8-432f-b26d-1231ca1d44bc"),
AllowedContentType = "application/pdf,application/msword,application/vnd.ms-excel,application/vnd.openxmlformats-officedocument.spreadsheetml.sheet,application/vnd.openxmlformats-officedocument.wordprocessingml.document",
CreatedAt = new DateTime(2025, 9, 3, 10, 46, 49, 955, DateTimeKind.Utc),
DocumentCategoryId = new Guid("cfbff269-072b-477a-b48b-72cdc57dd1d3"),
IsActive = true,
IsMandatory = false,
IsSystem = true,
IsValidationRequired = false,
MaxSizeAllowedInMB = 1.0,
Name = "Work Order",
TenantId = new Guid("b3466e83-7e11-464c-b93a-daf047838b26")
},
new
{
Id = new Guid("07ca7182-9ac0-4407-b988-59901170cb86"),
AllowedContentType = "application/pdf,application/msword,application/vnd.ms-excel,application/vnd.openxmlformats-officedocument.spreadsheetml.sheet,application/vnd.openxmlformats-officedocument.wordprocessingml.document",
CreatedAt = new DateTime(2025, 9, 3, 10, 46, 49, 955, DateTimeKind.Utc),
DocumentCategoryId = new Guid("cfbff269-072b-477a-b48b-72cdc57dd1d3"),
IsActive = true,
IsMandatory = false,
IsSystem = true,
IsValidationRequired = false,
MaxSizeAllowedInMB = 1.0,
Name = "Letter of Agreement",
TenantId = new Guid("b3466e83-7e11-464c-b93a-daf047838b26")
},
new
{
Id = new Guid("846e89a9-5735-45ec-a21d-c97f85a94ada"),
AllowedContentType = "application/pdf,application/msword,application/vnd.ms-excel,application/vnd.openxmlformats-officedocument.spreadsheetml.sheet,application/vnd.openxmlformats-officedocument.wordprocessingml.document",
CreatedAt = new DateTime(2025, 9, 3, 10, 46, 49, 955, DateTimeKind.Utc),
DocumentCategoryId = new Guid("cfbff269-072b-477a-b48b-72cdc57dd1d3"),
IsActive = true,
IsMandatory = false,
IsSystem = true,
IsValidationRequired = false,
MaxSizeAllowedInMB = 1.0,
Name = "Health and Safety Document",
TenantId = new Guid("b3466e83-7e11-464c-b93a-daf047838b26")
},
new
{
Id = new Guid("7cc41c91-23cb-442b-badd-f932138d149f"),
AllowedContentType = "application/pdf,application/msword,application/vnd.ms-excel,application/vnd.openxmlformats-officedocument.spreadsheetml.sheet,application/vnd.openxmlformats-officedocument.wordprocessingml.document",
CreatedAt = new DateTime(2025, 9, 3, 10, 46, 49, 955, DateTimeKind.Utc),
DocumentCategoryId = new Guid("cfbff269-072b-477a-b48b-72cdc57dd1d3"),
IsActive = true,
IsMandatory = false,
IsSystem = true,
IsValidationRequired = false,
MaxSizeAllowedInMB = 1.0,
Name = "Standard Operating Procedure (SOP)",
TenantId = new Guid("b3466e83-7e11-464c-b93a-daf047838b26")
},
new
{
Id = new Guid("5668de00-5d84-47f7-b9b5-7fefd1219f05"),
AllowedContentType = "application/pdf,image/vnd.dwg,application/acad",
CreatedAt = new DateTime(2025, 9, 3, 10, 46, 49, 955, DateTimeKind.Utc),
DocumentCategoryId = new Guid("cfbff269-072b-477a-b48b-72cdc57dd1d3"),
IsActive = true,
IsMandatory = false,
IsSystem = true,
IsValidationRequired = false,
MaxSizeAllowedInMB = 20.0,
Name = "Drawings",
TenantId = new Guid("b3466e83-7e11-464c-b93a-daf047838b26")
});
});
modelBuilder.Entity("Marco.Pms.Model.Employees.Employee", b =>
{
b.Property("Id")
.ValueGeneratedOnAdd()
.HasColumnType("char(36)");
b.Property("ApplicationUserId")
.HasColumnType("varchar(255)");
b.Property("BirthDate")
.HasColumnType("datetime(6)");
b.Property("CurrentAddress")
.HasColumnType("longtext");
b.Property("Email")
.HasColumnType("longtext");
b.Property("EmergencyContactPerson")
.HasColumnType("longtext");
b.Property("EmergencyPhoneNumber")
.HasColumnType("longtext");
b.Property("FirstName")
.IsRequired()
.HasColumnType("longtext");
b.Property("Gender")
.HasColumnType("longtext");
b.Property("HasApplicationAccess")
.HasColumnType("tinyint(1)");
b.Property("IsActive")
.HasColumnType("tinyint(1)");
b.Property("IsPrimary")
.HasColumnType("tinyint(1)");
b.Property("IsSystem")
.HasColumnType("tinyint(1)");
b.Property("JobRoleId")
.HasColumnType("char(36)");
b.Property("JoiningDate")
.HasColumnType("datetime(6)");
b.Property("LastName")
.HasColumnType("longtext");
b.Property("MiddleName")
.HasColumnType("longtext");
b.Property