Removed null refreance warning from MOdel project

This commit is contained in:
ashutosh.nehete 2025-04-09 10:25:44 +05:30
parent 58bb684c4b
commit 52a67ba15b
67 changed files with 161 additions and 363 deletions

View File

@ -10,8 +10,8 @@ namespace Marco.Pms.Model.Activities
public long TaskAllocationId { get; set; } public long TaskAllocationId { get; set; }
[ValidateNever] [ValidateNever]
[ForeignKey(nameof(TaskAllocationId))] [ForeignKey(nameof(TaskAllocationId))]
public TaskAllocation TaskAllocation { get; set; } public TaskAllocation? TaskAllocation { get; set; }
public string ImagePath { get; set; } public string? ImagePath { get; set; }
} }
} }

View File

@ -1,9 +1,9 @@
using Marco.Pms.Model.Dtos.Attendance; using System.ComponentModel;
using System.ComponentModel.DataAnnotations.Schema;
using Marco.Pms.Model.Dtos.Attendance;
using Marco.Pms.Model.Employees; using Marco.Pms.Model.Employees;
using Marco.Pms.Model.Entitlements; using Marco.Pms.Model.Entitlements;
using Microsoft.AspNetCore.Mvc.ModelBinding.Validation; using Microsoft.AspNetCore.Mvc.ModelBinding.Validation;
using System.ComponentModel;
using System.ComponentModel.DataAnnotations.Schema;
namespace Marco.Pms.Model.AttendanceModule namespace Marco.Pms.Model.AttendanceModule

View File

@ -2,9 +2,9 @@
{ {
public class JwtSettings public class JwtSettings
{ {
public string Key { get; set; } public string? Key { get; set; }
public string Issuer { get; set; } public string? Issuer { get; set; }
public string Audience { get; set; } public string? Audience { get; set; }
public int ExpiresInMinutes { get; set; } public int ExpiresInMinutes { get; set; }
public int RefreshTokenExpiresInDays { get; set; } public int RefreshTokenExpiresInDays { get; set; }
} }

View File

@ -1,10 +1,8 @@
using System.ComponentModel; namespace Marco.Pms.Model.Dtos.Activities
namespace Marco.Pms.Model.Dtos.Activities
{ {
public class CreateActivityMasterDto public class CreateActivityMasterDto
{ {
public string ActivityName { get; set; } public string? ActivityName { get; set; }
public string UnitOfMeasurement { get; set; } public string? UnitOfMeasurement { get; set; }
} }
} }

View File

@ -5,7 +5,7 @@
public long TaskAllocationId { get; set; } public long TaskAllocationId { get; set; }
public DateTime CommentDate { get; set; } public DateTime CommentDate { get; set; }
public string Comment { get; set; } public string? Comment { get; set; }
} }
} }

View File

@ -5,6 +5,6 @@
public long Id { get; set; } public long Id { get; set; }
public double CompletedTask { get; set; } public double CompletedTask { get; set; }
public DateTime ReportedDate { get; set; } public DateTime ReportedDate { get; set; }
public string Comment { get; set; } public string? Comment { get; set; }
} }
} }

View File

@ -5,15 +5,15 @@ namespace Marco.Pms.Model.Dtos.Attendance
public class RecordAttendanceDot public class RecordAttendanceDot
{ {
public int? Id { get; set; } public int? Id { get; set; }
public string Comment { get; set; } public string? Comment { get; set; }
public int EmployeeID { get; set; } public int EmployeeID { get; set; }
public int ProjectID { get; set; } public int ProjectID { get; set; }
public DateTime Date { get; set; } public DateTime Date { get; set; }
public string? MarkTime { get; set; } public string? MarkTime { get; set; }
public string Latitude { get; set; } public string? Latitude { get; set; }
public string Longitude { get; set; } public string? Longitude { get; set; }
public ATTENDANCE_MARK_TYPE Action { get; set; } public ATTENDANCE_MARK_TYPE Action { get; set; }

View File

@ -16,7 +16,7 @@ namespace Marco.Pms.Model.Dtos.Employees
public DateTime? BirthDate { get; set; } public DateTime? BirthDate { get; set; }
public DateTime? JoiningDate { get; set; } public DateTime? JoiningDate { get; set; }
public string PeramnentAddress { get; set; } public string PermanentAddress { get; set; }
public string CurrentAddress { get; set; } public string CurrentAddress { get; set; }
public string PhoneNumber { get; set; } public string PhoneNumber { get; set; }

View File

@ -1,19 +1,8 @@
using Marco.Pms.Model.Employees; namespace Marco.Pms.Model.Dtos.Employees
using Marco.Pms.Model.Entitlements;
using Microsoft.AspNetCore.Mvc.ModelBinding.Validation;
using System;
using System.Collections.Generic;
using System.ComponentModel.DataAnnotations.Schema;
using System.ComponentModel;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace Marco.Pms.Model.Dtos.Employees
{ {
public class AttendanceDto public class AttendanceDto
{ {
public string Comment { get; set; } public string? Comment { get; set; }
public int EmployeeID { get; set; } public int EmployeeID { get; set; }
public DateTime? InTime { get; set; } public DateTime? InTime { get; set; }
public DateTime? OutTime { get; set; } public DateTime? OutTime { get; set; }

View File

@ -12,7 +12,7 @@
public string? BirthDate { get; set; } public string? BirthDate { get; set; }
public string? JoiningDate { get; set; } public string? JoiningDate { get; set; }
public string? PeramnentAddress { get; set; } public string? PermanentAddress { get; set; }
public string? CurrentAddress { get; set; } public string? CurrentAddress { get; set; }
public string? PhoneNumber { get; set; } public string? PhoneNumber { get; set; }

View File

@ -1,9 +1,4 @@
using System; using System.ComponentModel.DataAnnotations;
using System.Collections.Generic;
using System.ComponentModel.DataAnnotations;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace Marco.Pms.Model.Dtos namespace Marco.Pms.Model.Dtos
{ {
@ -11,6 +6,6 @@ namespace Marco.Pms.Model.Dtos
{ {
[Required] [Required]
[EmailAddress] [EmailAddress]
public string Email { get; set; } public string? Email { get; set; }
} }
} }

View File

@ -1,14 +1,8 @@
using System; namespace Marco.Pms.Model.Dtos
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace Marco.Pms.Model.Dtos
{ {
public class LoginDto public class LoginDto
{ {
public string Username { get; set; } public string? Username { get; set; }
public string Password { get; set; } public string? Password { get; set; }
} }
} }

View File

@ -2,6 +2,6 @@
namespace Marco.Pms.Model.Dtos namespace Marco.Pms.Model.Dtos
{ {
public class LogoutDto public class LogoutDto
{ public string RefreshToken { get; set; } { public string? RefreshToken { get; set; }
} }
} }

View File

@ -1,13 +1,5 @@
using Marco.Pms.Model.Entitlements; using System.ComponentModel;
using Microsoft.AspNetCore.Mvc.ModelBinding.Validation;
using System;
using System.Collections.Generic;
using System.ComponentModel.DataAnnotations.Schema;
using System.ComponentModel.DataAnnotations; using System.ComponentModel.DataAnnotations;
using System.ComponentModel;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace Marco.Pms.Model.Dtos.Project namespace Marco.Pms.Model.Dtos.Project
{ {
@ -17,7 +9,7 @@ namespace Marco.Pms.Model.Dtos.Project
public int Id { get; set; } public int Id { get; set; }
[Required] [Required]
[DisplayName("Building Name")] [DisplayName("Building Name")]
public string Name { get; set; } public string? Name { get; set; }
public string? Description { get; set; } public string? Description { get; set; }
public int ProjectId { get; set; } public int ProjectId { get; set; }

View File

@ -5,10 +5,10 @@ namespace Marco.Pms.Model.Dtos.Project
public class BuildingVM public class BuildingVM
{ {
public int Id { get; set; } public int Id { get; set; }
public string Name { get; set; } public string? Name { get; set; }
public string? Description { get; set; } public string? Description { get; set; }
public List<FloorsVM> Floors { get; set; } public List<FloorsVM>? Floors { get; set; }
} }
} }

View File

@ -8,15 +8,15 @@ namespace Marco.Pms.Model.Dtos.Project
//public int Id { get; set; } //public int Id { get; set; }
[Required(ErrorMessage = "Project Name is required!")] [Required(ErrorMessage = "Project Name is required!")]
[DisplayName("Project Name")] [DisplayName("Project Name")]
public string Name { get; set; } public string? Name { get; set; }
[DisplayName("Project Address")] [DisplayName("Project Address")]
[Required(ErrorMessage = "Project Address is required!")] [Required(ErrorMessage = "Project Address is required!")]
public string ProjectAddress { get; set; } public string? ProjectAddress { get; set; }
[DisplayName("Contact Person")] [DisplayName("Contact Person")]
public string ContactPerson { get; set; } public string? ContactPerson { get; set; }
public DateTime? StartDate { get; set; } public DateTime? StartDate { get; set; }

View File

@ -1,14 +1,5 @@
using Marco.Pms.Model.Entitlements; using System.ComponentModel;
using Marco.Pms.Model.Projects;
using Microsoft.AspNetCore.Mvc.ModelBinding.Validation;
using System;
using System.Collections.Generic;
using System.ComponentModel.DataAnnotations.Schema;
using System.ComponentModel.DataAnnotations; using System.ComponentModel.DataAnnotations;
using System.ComponentModel;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace Marco.Pms.Model.Dtos.Project namespace Marco.Pms.Model.Dtos.Project
{ {
@ -18,7 +9,7 @@ namespace Marco.Pms.Model.Dtos.Project
[Required] [Required]
[DisplayName("Floor Name")] [DisplayName("Floor Name")]
public string FloorName { get; set; } public string? FloorName { get; set; }
public int BuildingId { get; set; } public int BuildingId { get; set; }

View File

@ -1,10 +1,5 @@
using System; using System.ComponentModel;
using System.Collections.Generic;
using System.ComponentModel.DataAnnotations; using System.ComponentModel.DataAnnotations;
using System.ComponentModel;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace Marco.Pms.Model.Dtos.Project namespace Marco.Pms.Model.Dtos.Project
{ {
@ -14,9 +9,9 @@ namespace Marco.Pms.Model.Dtos.Project
[Required] [Required]
[DisplayName("Floor Name")] [DisplayName("Floor Name")]
public string FloorName { get; set; } public string? FloorName { get; set; }
public List<WorkAreaVM> WorkAreas { get; set; } public List<WorkAreaVM>? WorkAreas { get; set; }
} }
} }

View File

@ -1,11 +1,4 @@
using Marco.Pms.Model.Projects; namespace Marco.Pms.Model.Dtos.Project
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace Marco.Pms.Model.Dtos.Project
{ {
public class InfraDot public class InfraDot
{ {

View File

@ -1,14 +1,5 @@
using Marco.Pms.Model.Entitlements; using System.ComponentModel;
using Marco.Pms.Model.Projects;
using Microsoft.AspNetCore.Mvc.ModelBinding.Validation;
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.ComponentModel.DataAnnotations; using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace Marco.Pms.Model.Dtos.Project namespace Marco.Pms.Model.Dtos.Project
{ {
@ -17,15 +8,15 @@ namespace Marco.Pms.Model.Dtos.Project
public int Id { get; set; } public int Id { get; set; }
[Required(ErrorMessage = "Project Name is required!")] [Required(ErrorMessage = "Project Name is required!")]
[DisplayName("Project Name")] [DisplayName("Project Name")]
public string Name { get; set; } public string? Name { get; set; }
[DisplayName("Project Address")] [DisplayName("Project Address")]
[Required(ErrorMessage = "Project Address is required!")] [Required(ErrorMessage = "Project Address is required!")]
public string ProjectAddress { get; set; } public string? ProjectAddress { get; set; }
[DisplayName("Contact Person")] [DisplayName("Contact Person")]
public string ContactPerson { get; set; } public string? ContactPerson { get; set; }
public DateTime? StartDate { get; set; } public DateTime? StartDate { get; set; }

View File

@ -1,15 +1,8 @@
using Marco.Pms.Model.Projects; namespace Marco.Pms.Model.Dtos.Project
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace Marco.Pms.Model.Dtos.Project
{ {
public class ProjectVM : ProjectDto public class ProjectVM : ProjectDto
{ {
public List<BuildingVM> Buildings { get; set; } public List<BuildingVM>? Buildings { get; set; }
} }
} }

View File

@ -8,15 +8,15 @@ namespace Marco.Pms.Model.Dtos.Project
public int Id { get; set; } public int Id { get; set; }
[Required(ErrorMessage = "Project Name is required!")] [Required(ErrorMessage = "Project Name is required!")]
[DisplayName("Project Name")] [DisplayName("Project Name")]
public string Name { get; set; } public string? Name { get; set; }
[DisplayName("Project Address")] [DisplayName("Project Address")]
[Required(ErrorMessage = "Project Address is required!")] [Required(ErrorMessage = "Project Address is required!")]
public string ProjectAddress { get; set; } public string? ProjectAddress { get; set; }
[DisplayName("Contact Person")] [DisplayName("Contact Person")]
public string ContactPerson { get; set; } public string? ContactPerson { get; set; }
public DateTime? StartDate { get; set; } public DateTime? StartDate { get; set; }

View File

@ -1,14 +1,5 @@
using Marco.Pms.Model.Entitlements; using System.ComponentModel;
using Marco.Pms.Model.Projects;
using Microsoft.AspNetCore.Mvc.ModelBinding.Validation;
using System;
using System.Collections.Generic;
using System.ComponentModel.DataAnnotations.Schema;
using System.ComponentModel.DataAnnotations; using System.ComponentModel.DataAnnotations;
using System.ComponentModel;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace Marco.Pms.Model.Dtos.Project namespace Marco.Pms.Model.Dtos.Project
{ {
@ -19,7 +10,7 @@ namespace Marco.Pms.Model.Dtos.Project
[Required] [Required]
[DisplayName("Area Name")] [DisplayName("Area Name")]
public string AreaName { get; set; } public string? AreaName { get; set; }
public int FloorId { get; set; } public int FloorId { get; set; }

View File

@ -1,10 +1,5 @@
using System; using System.ComponentModel;
using System.Collections.Generic;
using System.ComponentModel.DataAnnotations; using System.ComponentModel.DataAnnotations;
using System.ComponentModel;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace Marco.Pms.Model.Dtos.Project namespace Marco.Pms.Model.Dtos.Project
{ {
@ -14,9 +9,9 @@ namespace Marco.Pms.Model.Dtos.Project
[Required] [Required]
[DisplayName("Area Name")] [DisplayName("Area Name")]
public string AreaName { get; set; } public string? AreaName { get; set; }
public List<WorkItemVM> WorkItems { get; set; } public List<WorkItemVM>? WorkItems { get; set; }
} }
} }

View File

@ -5,6 +5,6 @@ namespace Marco.Pms.Model.Dtos.Project
public class WorkItemVM public class WorkItemVM
{ {
public int WorkItemId { get; set; } public int WorkItemId { get; set; }
public WorkItem WorkItem { get; set; } public WorkItem? WorkItem { get; set; }
} }
} }

View File

@ -1,14 +1,8 @@
using System; namespace Marco.Pms.Model.Dtos
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace Marco.Pms.Model.Dtos
{ {
public class RefreshTokenDto public class RefreshTokenDto
{ {
public string Token { get; set; } public string? Token { get; set; }
public string RefreshToken { get; set; } public string? RefreshToken { get; set; }
} }
} }

View File

@ -1,26 +1,21 @@
using System; using System.ComponentModel.DataAnnotations;
using System.Collections.Generic;
using System.ComponentModel.DataAnnotations;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace Marco.Pms.Model.Dtos namespace Marco.Pms.Model.Dtos
{ {
public class RegisterDto public class RegisterDto
{ {
[Required] [Required]
public string Username { get; set; } public string? Username { get; set; }
[Required] [Required]
[EmailAddress] [EmailAddress]
public string Email { get; set; } public string? Email { get; set; }
[Required] [Required]
[MinLength(6)] [MinLength(6)]
public string Password { get; set; } public string? Password { get; set; }
[Compare("Password", ErrorMessage = "Passwords do not match.")] [Compare("Password", ErrorMessage = "Passwords do not match.")]
public string ConfirmPassword { get; set; } public string? ConfirmPassword { get; set; }
} }
} }

View File

@ -6,13 +6,13 @@ namespace Marco.Pms.Model.Dtos
{ {
[Required] [Required]
[EmailAddress] [EmailAddress]
public string Email { get; set; } public string? Email { get; set; }
[Required] [Required]
public string Token { get; set; } public string? Token { get; set; }
[Required] [Required]
[MinLength(6)] [MinLength(6)]
public string NewPassword { get; set; } public string? NewPassword { get; set; }
} }
} }

View File

@ -1,8 +1,5 @@
using Marco.Pms.Model.Entitlements; using System.ComponentModel;
using Microsoft.AspNetCore.Mvc.ModelBinding.Validation;
using System.ComponentModel;
using System.ComponentModel.DataAnnotations; using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema;
namespace Marco.Pms.Model.Dtos.Roles namespace Marco.Pms.Model.Dtos.Roles
{ {
@ -11,13 +8,13 @@ namespace Marco.Pms.Model.Dtos.Roles
[Required(ErrorMessage = "Role Name is required!")] [Required(ErrorMessage = "Role Name is required!")]
[DisplayName("Name")] [DisplayName("Name")]
public string Role { get; set; } public string? Role { get; set; }
[Required(ErrorMessage = "Role Description is required!")] [Required(ErrorMessage = "Role Description is required!")]
[DisplayName("Description")] [DisplayName("Description")]
public string Description { get; set; } public string? Description { get; set; }
public List<FeaturesPermissionDto> FeaturesPermission { get; set; } // Features assigned to this role public List<FeaturesPermissionDto>? FeaturesPermission { get; set; } // Features assigned to this role
} }
} }

View File

@ -1,14 +1,8 @@
using System; namespace Marco.Pms.Model.Dtos.Roles
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace Marco.Pms.Model.Dtos.Roles
{ {
public class CreateJobRoleDto public class CreateJobRoleDto
{ {
public string Name { get; set; } public string? Name { get; set; }
public string? Description { get; set; } public string? Description { get; set; }
} }
} }

View File

@ -1,5 +1,4 @@
using Marco.Pms.Model.Entitlements; using System.ComponentModel;
using System.ComponentModel;
using System.ComponentModel.DataAnnotations; using System.ComponentModel.DataAnnotations;
namespace Marco.Pms.Model.Dtos.Roles namespace Marco.Pms.Model.Dtos.Roles
@ -11,15 +10,15 @@ namespace Marco.Pms.Model.Dtos.Roles
[Required(ErrorMessage = "Role Name is required!")] [Required(ErrorMessage = "Role Name is required!")]
[DisplayName("Name")] [DisplayName("Name")]
public string Role { get; set; } public string? Role { get; set; }
[Required(ErrorMessage = "Role Description is required!")] [Required(ErrorMessage = "Role Description is required!")]
[DisplayName("Description")] [DisplayName("Description")]
public string Description { get; set; } public string? Description { get; set; }
public List<FeaturesPermissionDto> FeaturesPermission { get; set; } // Features assigned to this role public List<FeaturesPermissionDto>? FeaturesPermission { get; set; } // Features assigned to this role
} }
public class FeaturesPermissionDto public class FeaturesPermissionDto

View File

@ -1,15 +1,9 @@
using System; namespace Marco.Pms.Model.Dtos.Roles
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace Marco.Pms.Model.Dtos.Roles
{ {
public class UpdateJobRoleDto public class UpdateJobRoleDto
{ {
public int Id { get; set; } public int Id { get; set; }
public string Name { get; set; } public string? Name { get; set; }
public string? Description { get; set; } public string? Description { get; set; }
} }
} }

View File

@ -2,10 +2,10 @@
{ {
public class EmailDot public class EmailDot
{ {
public string ToEmail { get; set; } public string? ToEmail { get; set; }
public string FromEmail { get; set; } public string? FromEmail { get; set; }
public string MailBody { get; set; } public string? MailBody { get; set; }
public string MailSubject { get; set; } public string? MailSubject { get; set; }
} }
} }

View File

@ -1,10 +1,4 @@
using System; namespace Marco.Pms.Model.Employees
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace Marco.Pms.Model.Employees
{ {
public class EmployeeDetails : Employee public class EmployeeDetails : Employee
{ {

View File

@ -6,16 +6,16 @@ namespace Marco.Pms.Model.Employees
public class EmployeeDocument public class EmployeeDocument
{ {
public Guid Id { get; set; } // Unique identifier for the document public Guid Id { get; set; } // Unique identifier for the document
public string FileName { get; set; } // Original file name public string? FileName { get; set; } // Original file name
public string FilePath { get; set; } // Path to the stored file public string? FilePath { get; set; } // Path to the stored file
public string FileType { get; set; } // Type of the document (e.g., PDF, JPG) public string? FileType { get; set; } // Type of the document (e.g., PDF, JPG)
public long FileSize { get; set; } // File size in bytes public long FileSize { get; set; } // File size in bytes
public DateTime UploadedAt { get; set; } // Timestamp of upload public DateTime UploadedAt { get; set; } // Timestamp of upload
public Guid EmployeeId { get; set; } // Foreign key to Employee public Guid EmployeeId { get; set; } // Foreign key to Employee
[ValidateNever] [ValidateNever]
[ForeignKey(nameof(EmployeeId))] [ForeignKey(nameof(EmployeeId))]
public Employee Employee { get; set; } // Navigation property to Employee public Employee? Employee { get; set; } // Navigation property to Employee
} }

View File

@ -1,7 +1,6 @@
using Marco.Pms.Model.Employees; using System.ComponentModel.DataAnnotations.Schema;
using Microsoft.AspNetCore.Http; using Marco.Pms.Model.Employees;
using Microsoft.AspNetCore.Mvc.ModelBinding.Validation; using Microsoft.AspNetCore.Mvc.ModelBinding.Validation;
using System.ComponentModel.DataAnnotations.Schema;
namespace Marco.Pms.Model.Entitlements namespace Marco.Pms.Model.Entitlements
{ {

View File

@ -2,8 +2,7 @@
using Marco.Pms.Model.Dtos.Activities; using Marco.Pms.Model.Dtos.Activities;
using Marco.Pms.Model.Entitlements; using Marco.Pms.Model.Entitlements;
using Marco.Pms.Model.ViewModels.Activities; using Marco.Pms.Model.ViewModels.Activities;
using Microsoft.Extensions.DependencyModel; #nullable disable
namespace Marco.Pms.Model.Mapper namespace Marco.Pms.Model.Mapper
{ {
public static class ActivitiesMapper public static class ActivitiesMapper

View File

@ -1,7 +1,7 @@
using Marco.Pms.Model.Dtos.Roles; using Marco.Pms.Model.Dtos.Roles;
using Marco.Pms.Model.Entitlements; using Marco.Pms.Model.Entitlements;
using Marco.Pms.Model.ViewModels; using Marco.Pms.Model.ViewModels;
#nullable disable
namespace Marco.Pms.Model.Mapper namespace Marco.Pms.Model.Mapper
{ {
public static class ApplicationRoleMapper public static class ApplicationRoleMapper

View File

@ -24,7 +24,7 @@ namespace Marco.Pms.Model.Mapper
JobRole = (model.JobRole != null ? model.JobRole.Name : null), JobRole = (model.JobRole != null ? model.JobRole.Name : null),
JobRoleId = model.JobRoleId, JobRoleId = model.JobRoleId,
PanNumber = model.PanNumber, PanNumber = model.PanNumber,
PeramnentAddress = model.PeramnentAddress, PermanentAddress = model.PeramnentAddress,
PhoneNumber = model.PhoneNumber, PhoneNumber = model.PhoneNumber,
Photo = model.Photo, Photo = model.Photo,
IsActive = model.IsActive, IsActive = model.IsActive,

View File

@ -1,7 +1,5 @@
using Marco.Pms.Model.Dtos.Employees; using Marco.Pms.Model.Dtos.Employees;
using Marco.Pms.Model.Dtos.Roles;
using Marco.Pms.Model.Entitlements; using Marco.Pms.Model.Entitlements;
using Marco.Pms.Model.ViewModels;
namespace Marco.Pms.Model.Mapper namespace Marco.Pms.Model.Mapper
{ {

View File

@ -1,5 +1,4 @@
using Marco.Pms.Model.Dtos.Roles; using Marco.Pms.Model.Entitlements;
using Marco.Pms.Model.Entitlements;
using Marco.Pms.Model.ViewModels; using Marco.Pms.Model.ViewModels;
namespace Marco.Pms.Model.Mapper namespace Marco.Pms.Model.Mapper

View File

@ -1,6 +1,5 @@
using Marco.Pms.Model.Dtos.Project; using Marco.Pms.Model.Dtos.Project;
using Marco.Pms.Model.Projects; using Marco.Pms.Model.Projects;
using Marco.Pms.Model.ViewModels.Activities;
namespace Marco.Pms.Model.Mapper namespace Marco.Pms.Model.Mapper
{ {

View File

@ -7,12 +7,12 @@ namespace Marco.Pms.Model.Projects
public class PhotoGallary public class PhotoGallary
{ {
public int Id { get; set; } public int Id { get; set; }
public string Description { get; set; } public string? Description { get; set; }
public int ProjectId { get; set; } public int ProjectId { get; set; }
[ValidateNever] [ValidateNever]
[ForeignKey(nameof(ProjectId))] [ForeignKey(nameof(ProjectId))]
public Project? Project { get; set; } public Project? Project { get; set; }
public string AddedBy { get; set; } public string? AddedBy { get; set; }
[ValidateNever] [ValidateNever]
[ForeignKey(nameof(AddedBy))] [ForeignKey(nameof(AddedBy))]
public ApplicationUser? ApplicationUser { get; set; } public ApplicationUser? ApplicationUser { get; set; }

View File

@ -1,14 +1,8 @@
using Marco.Pms.Model.Entitlements; using System.ComponentModel;
using Microsoft.AspNetCore.Mvc.ModelBinding;
using Microsoft.AspNetCore.Mvc.ModelBinding.Validation;
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.ComponentModel.DataAnnotations; using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema; using System.ComponentModel.DataAnnotations.Schema;
using System.Linq; using Marco.Pms.Model.Entitlements;
using System.Text; using Microsoft.AspNetCore.Mvc.ModelBinding.Validation;
using System.Threading.Tasks;
namespace Marco.Pms.Model.Projects namespace Marco.Pms.Model.Projects
{ {

View File

@ -1,14 +1,8 @@
using Microsoft.AspNetCore.Mvc.ModelBinding.Validation; using System.ComponentModel;
using System;
using System.Collections.Generic;
using System.ComponentModel.DataAnnotations.Schema;
using System.ComponentModel.DataAnnotations; using System.ComponentModel.DataAnnotations;
using System.ComponentModel; using System.ComponentModel.DataAnnotations.Schema;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using Marco.Pms.Model.Entitlements; using Marco.Pms.Model.Entitlements;
using Marco.Pms.Model.Activities; using Microsoft.AspNetCore.Mvc.ModelBinding.Validation;
namespace Marco.Pms.Model.Projects namespace Marco.Pms.Model.Projects
{ {

View File

@ -11,18 +11,18 @@ namespace Marco.Pms.Model.Projects
public int WorkAreaId { get; set; } public int WorkAreaId { get; set; }
[ForeignKey("WorkAreaId")] [ForeignKey("WorkAreaId")]
[ValidateNever] [ValidateNever]
public WorkArea WorkArea { get; set; } public WorkArea? WorkArea { get; set; }
public int WorkItemId { get; set; } public int WorkItemId { get; set; }
[ForeignKey("WorkItemId")] [ForeignKey("WorkItemId")]
[ValidateNever] [ValidateNever]
public WorkItem WorkItem { get; set; } public WorkItem? WorkItem { get; set; }
[DisplayName("TenantId")] [DisplayName("TenantId")]
public int TenantId { get; set; } public int TenantId { get; set; }
[ValidateNever] [ValidateNever]
[ForeignKey(nameof(TenantId))] [ForeignKey(nameof(TenantId))]
public Tenant Tenant { get; set; } public Tenant? Tenant { get; set; }
} }
} }

View File

@ -1,10 +1,5 @@
using Microsoft.AspNetCore.Http; using Microsoft.AspNetCore.Http;
using System; #nullable disable
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace Marco.Pms.Model.Providers namespace Marco.Pms.Model.Providers
{ {
public sealed class TenantProvider public sealed class TenantProvider

View File

@ -1,9 +1,4 @@
using System; #nullable disable
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace Marco.Pms.Model.Utilities namespace Marco.Pms.Model.Utilities
{ {

View File

@ -1,16 +1,10 @@
using System; namespace Marco.Pms.Model.Utilities
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace Marco.Pms.Model.Utilities
{ {
public class AuthResponse public class AuthResponse
{ {
public string AccessToken { get; set; } public string? AccessToken { get; set; }
public string RefreshToken { get; set; } public string? RefreshToken { get; set; }
public int ExpiresIn { get; set; } public int ExpiresIn { get; set; }
public object User { get; set; } public object? User { get; set; }
} }
} }

View File

@ -9,13 +9,13 @@ namespace Marco.Pms.Model.Utilities
public class FileDetails public class FileDetails
{ {
public int Id { get; set; } public int Id { get; set; }
public byte[] FileData { get; set; } // Byte array for the file public byte[]? FileData { get; set; } // Byte array for the file
public string FileName { get; set; } public string? FileName { get; set; }
public string ContentType { get; set; } public string? ContentType { get; set; }
/// <summary> /// <summary>
/// Name of the file as stored on disk /// Name of the file as stored on disk
/// </summary> /// </summary>
public string StoredName { get; set; } public string? StoredName { get; set; }
} }
} }

View File

@ -1,17 +1,11 @@
using System; namespace Marco.Pms.Model.Utilities
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace Marco.Pms.Model.Utilities
{ {
public class FileUploadModel public class FileUploadModel
{ {
public string FileName { get; set; } // Name of the file (e.g., "image1.png") public string? FileName { get; set; } // Name of the file (e.g., "image1.png")
public string Base64Data { get; set; } // Base64-encoded string of the file public string? Base64Data { get; set; } // Base64-encoded string of the file
public string ContentType { get; set; } // MIME type (e.g., "image/png", "application/pdf") public string? ContentType { get; set; } // MIME type (e.g., "image/png", "application/pdf")
public long FileSize { get; set; } // File size in bytes public long FileSize { get; set; } // File size in bytes
public string Description { get; set; } // Optional: Description or purpose of the file public string? Description { get; set; } // Optional: Description or purpose of the file
} }
} }

View File

@ -2,11 +2,11 @@
{ {
public class SmtpSettings public class SmtpSettings
{ {
public string SmtpServer { get; set; } public string? SmtpServer { get; set; }
public int Port { get; set; } public int Port { get; set; }
public string SenderName { get; set; } public string? SenderName { get; set; }
public string SenderEmail { get; set; } public string? SenderEmail { get; set; }
public string Password { get; set; } public string? Password { get; set; }
} }
} }

View File

@ -7,7 +7,7 @@ namespace Marco.Pms.Model.ViewModels.Activities
public long Id { get; set; } public long Id { get; set; }
public long TaskAllocationId { get; set; } public long TaskAllocationId { get; set; }
public DateTime CommentDate { get; set; } public DateTime CommentDate { get; set; }
public string Comment { get; set; } public string? Comment { get; set; }
public int CommentedBy { get; set; } public int CommentedBy { get; set; }
public EmployeeVM? Employee { get; set; } public EmployeeVM? Employee { get; set; }
} }

View File

@ -13,7 +13,7 @@ namespace Marco.Pms.Model.ViewModels.Activities
public int WorkItemId { get; set; } public int WorkItemId { get; set; }
public WorkItem? WorkItem { get; set; } public WorkItem? WorkItem { get; set; }
public int TenantId { get; set; } public int TenantId { get; set; }
public List<EmployeeVM> teamMembers { get; set; } public List<EmployeeVM>? teamMembers { get; set; }
public List<CommentVM>? comments { get; set; } public List<CommentVM>? comments { get; set; }
} }
} }

View File

@ -3,7 +3,7 @@
public class TasksVM public class TasksVM
{ {
public long Id { get; set; } public long Id { get; set; }
public string ActivityName { get; set; } public string? ActivityName { get; set; }
public double TotalPlannedTask { get; set; } public double TotalPlannedTask { get; set; }
public double PlannedTask { get; set; } public double PlannedTask { get; set; }
public double CompletedTask { get; set; } public double CompletedTask { get; set; }

View File

@ -1,20 +1,10 @@
using Marco.Pms.Model.Entitlements; namespace Marco.Pms.Model.ViewModels
using Microsoft.AspNetCore.Mvc.ModelBinding.Validation;
using System;
using System.Collections.Generic;
using System.ComponentModel.DataAnnotations.Schema;
using System.ComponentModel;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace Marco.Pms.Model.ViewModels
{ {
public class ApplicationRolesVM public class ApplicationRolesVM
{ {
public Guid Id { get; set; } public Guid Id { get; set; }
public string Role { get; set; } public string? Role { get; set; }
public string Description { get; set; } public string? Description { get; set; }
public ICollection<FeaturePermissionVM> FeaturePermission { get; set; } public ICollection<FeaturePermissionVM>? FeaturePermission { get; set; }
} }
} }

View File

@ -2,9 +2,9 @@
{ {
public class EmployeeProfile public class EmployeeProfile
{ {
public EmployeeVM EmployeeInfo { get; set; } public EmployeeVM? EmployeeInfo { get; set; }
public string[] Projects { get; set; } public string[]? Projects { get; set; }
public string[] FeaturePermissions { get; set; } public string[]? FeaturePermissions { get; set; }
public string[] Features { get; set; } public string[]? Features { get; set; }
} }
} }

View File

@ -11,7 +11,7 @@
public string? Gender { get; set; } public string? Gender { get; set; }
public DateTime? BirthDate { get; set; } public DateTime? BirthDate { get; set; }
public DateTime? JoiningDate { get; set; } public DateTime? JoiningDate { get; set; }
public string? PeramnentAddress { get; set; } public string? PermanentAddress { get; set; }
public string? CurrentAddress { get; set; } public string? CurrentAddress { get; set; }
public string? PhoneNumber { get; set; } public string? PhoneNumber { get; set; }

View File

@ -1,15 +1,12 @@
using Marco.Pms.Model.Employees; namespace Marco.Pms.Model.ViewModels
using Marco.Pms.Model.Entitlements;
namespace Marco.Pms.Model.ViewModels
{ {
public class EmployeeRolesVM public class EmployeeRolesVM
{ {
public Guid Id { get; set; } public Guid Id { get; set; }
public int EmployeeId { get; set; } public int EmployeeId { get; set; }
public Guid RoleId { get; set; } public Guid RoleId { get; set; }
public string Name { get; set; } public string? Name { get; set; }
public string Description { get; set; } public string? Description { get; set; }
public bool IsEnabled { get; set; } public bool IsEnabled { get; set; }
} }
} }

View File

@ -1,13 +1,4 @@
using Marco.Pms.Model.Entitlements; namespace Marco.Pms.Model.ViewModels
using Microsoft.AspNetCore.Mvc.ModelBinding.Validation;
using System;
using System.Collections.Generic;
using System.ComponentModel.DataAnnotations.Schema;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace Marco.Pms.Model.ViewModels
{ {
public class FeaturePermissionVM public class FeaturePermissionVM
{ {
@ -16,8 +7,8 @@ namespace Marco.Pms.Model.ViewModels
public Guid FeatureId { get; set; } // Foreign key to Feature public Guid FeatureId { get; set; } // Foreign key to Feature
public string Name { get; set; } // Feature name public string? Name { get; set; } // Feature name
public string Description { get; set; } // Feature description public string? Description { get; set; } // Feature description
public bool IsEnabled { get; set; } // Whether the feature is enabled for this role public bool IsEnabled { get; set; } // Whether the feature is enabled for this role

View File

@ -1,26 +1,17 @@
using Marco.Pms.Model.Entitlements; namespace Marco.Pms.Model.ViewModels
using Microsoft.AspNetCore.Mvc.ModelBinding.Validation;
using System;
using System.Collections.Generic;
using System.ComponentModel.DataAnnotations.Schema;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace Marco.Pms.Model.ViewModels
{ {
public class FeatureVM public class FeatureVM
{ {
public Guid Id { get; set; } // Unique identifier for the permission public Guid Id { get; set; } // Unique identifier for the permission
public string Name { get; set; } // Feature name public string? Name { get; set; } // Feature name
public string Description { get; set; } // Feature description public string? Description { get; set; } // Feature description
public bool IsActive { get; set; } public bool IsActive { get; set; }
public int? ModuleId { get; set; } public int? ModuleId { get; set; }
public string? ModuleName { get; set; } public string? ModuleName { get; set; }
public string? ModuleKey { get; set; } public string? ModuleKey { get; set; }
public ICollection<FeaturePermissionVM> FeaturePermissions { get; set; } public ICollection<FeaturePermissionVM>? FeaturePermissions { get; set; }
} }
} }

View File

@ -1,9 +1,4 @@
using System; using Marco.Pms.Model.Projects;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using Marco.Pms.Model.Projects;
namespace Marco.Pms.Model.ViewModels namespace Marco.Pms.Model.ViewModels
{ {
@ -12,6 +7,6 @@ namespace Marco.Pms.Model.ViewModels
public Building? building { get; set; } public Building? building { get; set; }
public Floor? floor { get; set; } public Floor? floor { get; set; }
public WorkArea workArea { get; set; } public WorkArea? workArea { get; set; }
} }
} }

View File

@ -3,8 +3,8 @@
public class JobRoleVM public class JobRoleVM
{ {
public int Id { get; set; } public int? Id { get; set; }
public string Name { get; set; } public string? Name { get; set; }
public string? Description { get; set; } public string? Description { get; set; }
} }

View File

@ -6,14 +6,14 @@ namespace Marco.Pms.Model.ViewModels
{ {
public class ProjectDetailsVM public class ProjectDetailsVM
{ {
public Project project { get; set; } public Project? project { get; set; }
public List<TaskAllocation> employeeAllocation { get; set; } public List<TaskAllocation>? employeeAllocation { get; set; }
public List<EmployeeDetails> employees { get; set; } public List<EmployeeDetails>? employees { get; set; }
public List<Building> buildings { get; set; } public List<Building>? buildings { get; set; }
public List<Floor> floors { get; set; } public List<Floor>? floors { get; set; }
public List<WorkArea> workAreas { get; set; } public List<WorkArea>? workAreas { get; set; }
public List<WorkItem> workItems { get; set; } public List<WorkItem>? workItems { get; set; }
} }
} }

View File

@ -1,13 +1,11 @@
using Marco.Pms.Model.Entitlements; namespace Marco.Pms.Model.ViewModels
namespace Marco.Pms.Model.ViewModels
{ {
public class RolesVM public class RolesVM
{ {
public Guid Id { get; set; } public Guid Id { get; set; }
public string Role { get; set; } public string? Role { get; set; }
public ICollection<FeaturePermissionVM> FeaturePermissions { get; set; } public ICollection<FeaturePermissionVM>? FeaturePermissions { get; set; }
} }
} }

View File

@ -294,7 +294,7 @@ namespace MarcoBMS.Services.Controllers
Gender = model.Gender, Gender = model.Gender,
MiddleName = model.MiddleName, MiddleName = model.MiddleName,
PanNumber = model.PanNumber, PanNumber = model.PanNumber,
PeramnentAddress = model.PeramnentAddress, PeramnentAddress = model.PermanentAddress,
PhoneNumber = model.PhoneNumber, PhoneNumber = model.PhoneNumber,
Photo = null, // GetFileDetails(model.Photo).Result.FileData, Photo = null, // GetFileDetails(model.Photo).Result.FileData,
JobRoleId = Convert.ToInt32(model.JobRoleId), JobRoleId = Convert.ToInt32(model.JobRoleId),
@ -321,7 +321,7 @@ namespace MarcoBMS.Services.Controllers
existingEmployee.Gender = model.Gender; existingEmployee.Gender = model.Gender;
existingEmployee.MiddleName = model.MiddleName; existingEmployee.MiddleName = model.MiddleName;
existingEmployee.PanNumber = model.PanNumber; existingEmployee.PanNumber = model.PanNumber;
existingEmployee.PeramnentAddress = model.PeramnentAddress; existingEmployee.PeramnentAddress = model.PermanentAddress;
existingEmployee.PhoneNumber = model.PhoneNumber; existingEmployee.PhoneNumber = model.PhoneNumber;
existingEmployee.Photo = null; // GetFileDetails(model.Photo).Result.FileData, existingEmployee.Photo = null; // GetFileDetails(model.Photo).Result.FileData,
existingEmployee.JobRoleId = Convert.ToInt32(model.JobRoleId); existingEmployee.JobRoleId = Convert.ToInt32(model.JobRoleId);

View File

@ -1,12 +1,4 @@
using Microsoft.AspNetCore.Http; namespace Marco.Pms.Utility
using Newtonsoft.Json;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace Marco.Pms.Utility
{ {
public class SessionUtil public class SessionUtil
{ {