EchoTex_Payroll/HRM.UI/Controllers/MobileAPI/Models/UserTModel.cs
2024-10-14 10:01:49 +06:00

103 lines
3.2 KiB
C#

using HRM.BO;
using System.Security.Claims;
using System;
using System.Net.Mail;
namespace HRM.UI.MODELS
{
public class CurrentMobileUser
{
private int? _pKID;
public int? PKID
{
get
{
if (this._pKID == null)
{
throw new Exception("Employee-ID cann't be null, Self-service login");
}
return this._pKID;
}
set { _pKID = value; }
}
public string EmployeeNo { get; set; }
public string EmailAddress { get; set; }
public string Name { get; set; }
public string Designation { get; set; }
public int? PayrollTypeID { get; set; }
public CurrentMobileUser()
{
this.PKID = null;
this.EmployeeNo = null;
this.EmailAddress = null;
this.Name = null;
this.Designation = null;
this.PayrollTypeID = null;
}
public static CurrentMobileUser GetCurrentUser(ClaimsPrincipal principal)
{
if (principal == null || principal.Identity == null || principal.Identity.IsAuthenticated == false)
return null;
CurrentMobileUser oUser = new CurrentMobileUser();
foreach (Claim item in principal.Claims)
{
if (item.Type == "PKID")
oUser.PKID = Convert.ToInt32(item.Value);
if (item.Type == "EmployeeNo")
oUser.EmployeeNo = item.Value;
if (item.Type == "EmailAddress")
oUser.EmailAddress = item.Value;
if (item.Type == "Name")
oUser.Name = item.Value;
if (item.Type == "Designation")
oUser.Designation = item.Value;
if (item.Type == "PayrollTypeID" && item.Value != "0")
oUser.PayrollTypeID = Convert.ToInt32(item.Value);
}
return oUser;
}
}
public class UserTModel : AuditTrailBase
{
public UserTModel()
{
Designation = string.Empty;
Name = string.Empty;
EmployeeNo = string.Empty;
EmailAddress = string.Empty;
Image = string.Empty;
IsLoggedIn = false;
Token = string.Empty;
MobileMenu = "1,2,3,4,5,6,7,8,9";
}
public int PKID { get; set; }
public string EmailAddress { get; set; }
public string Name { get; set; }
public string Designation { get; set; }
public string EmployeeNo { get; set; }
public int? PayrollTypeID { get; set; }
public string Image { get; set; }
public bool IsLoggedIn { get; set; }
public string Token { get; set; }
public string MobileMenu { get; set; }
public string Department { get; set; }
public string Location { get; set; }
public DateTime JoiningDate { get; set; }
public string FatherName { get; set; }
public string MotherName { get; set; }
public string Gender { get; set; }
public DateTime BirthDate { get; set; }
}
}