initial commit
This commit is contained in:
@@ -0,0 +1,16 @@
|
||||
using Indotalent.Data.Interfaces;
|
||||
using Indotalent.Shared.Utils;
|
||||
using System.ComponentModel.DataAnnotations;
|
||||
|
||||
namespace Indotalent.Data.Abstracts;
|
||||
|
||||
public abstract class BaseEntity : IHasAudit, IHasIsDeleted
|
||||
{
|
||||
[Key]
|
||||
public string Id { get; set; } = SequentialGuidGenerator.NewSequentialId();
|
||||
public DateTimeOffset? CreatedAt { get; set; }
|
||||
public string? CreatedBy { get; set; }
|
||||
public DateTimeOffset? UpdatedAt { get; set; }
|
||||
public string? UpdatedBy { get; set; }
|
||||
public bool IsDeleted { get; set; } = false;
|
||||
}
|
||||
@@ -0,0 +1,41 @@
|
||||
using Indotalent.Data.Interfaces;
|
||||
using Microsoft.AspNetCore.Identity;
|
||||
|
||||
namespace Indotalent.Data.Entities;
|
||||
|
||||
public class ApplicationUser : IdentityUser, IHasIsDeleted
|
||||
{
|
||||
public string? FullName { get; set; }
|
||||
public string? FirstName { get; set; }
|
||||
public string? LastName { get; set; }
|
||||
public string? ShortBio { get; set; }
|
||||
public string? JobTitle { get; set; }
|
||||
public DateTime DateOfBirth { get; set; }
|
||||
public string? StreetAddress { get; set; }
|
||||
public string? City { get; set; }
|
||||
public string? StateProvince { get; set; }
|
||||
public string? ZipCode { get; set; }
|
||||
public string? Country { get; set; }
|
||||
public string SocialMediaLinkedIn { get; set; } = string.Empty;
|
||||
public string SocialMediaX { get; set; } = string.Empty;
|
||||
public string SocialMediaFacebook { get; set; } = string.Empty;
|
||||
public string SocialMediaInstagram { get; set; } = string.Empty;
|
||||
public string SocialMediaTikTok { get; set; } = string.Empty;
|
||||
public string OtherInformation1 { get; set; } = string.Empty;
|
||||
public string OtherInformation2 { get; set; } = string.Empty;
|
||||
public string OtherInformation3 { get; set; } = string.Empty;
|
||||
public string? SsoIdFirebase { get; set; }
|
||||
public string? SsoIdKeycloak { get; set; }
|
||||
public string? SsoIdAzure { get; set; }
|
||||
public string? SsoIdAws { get; set; }
|
||||
public string? SsoIdOther1 { get; set; }
|
||||
public string? SsoIdOther2 { get; set; }
|
||||
public string? SsoIdOther3 { get; set; }
|
||||
public DateTime CreatedAt { get; set; } = DateTime.Now;
|
||||
public DateTime? LastLoginAt { get; set; }
|
||||
public DateTime? UpdatedAt { get; set; }
|
||||
public bool IsActive { get; set; } = true;
|
||||
public bool IsDeleted { get; set; } = false;
|
||||
public string? AvatarFile { get; set; }
|
||||
public string? RefreshToken { get; set; }
|
||||
}
|
||||
@@ -0,0 +1,19 @@
|
||||
using Indotalent.Data.Abstracts;
|
||||
using Indotalent.Data.Interfaces;
|
||||
|
||||
namespace Indotalent.Data.Entities;
|
||||
|
||||
public class Appraisal : BaseEntity, IHasAutoNumber
|
||||
{
|
||||
public string? AutoNumber { get; set; }
|
||||
public string EmployeeId { get; set; } = string.Empty;
|
||||
public Employee? Employee { get; set; }
|
||||
public string LastRating { get; set; } = string.Empty;
|
||||
public decimal CurrentSalary { get; set; }
|
||||
public decimal IncrementPercentage { get; set; }
|
||||
public decimal NewSalary { get; set; }
|
||||
public string AppraisalType { get; set; } = string.Empty;
|
||||
public DateTime EffectiveDate { get; set; }
|
||||
public string AppraisalNote { get; set; } = string.Empty;
|
||||
public string Status { get; set; } = string.Empty;
|
||||
}
|
||||
@@ -0,0 +1,15 @@
|
||||
using Indotalent.Data.Abstracts;
|
||||
using Indotalent.Infrastructure.AutoNumberGenerator;
|
||||
|
||||
namespace Indotalent.Data.Entities;
|
||||
|
||||
public class AutoNumberSequence : BaseEntity, IAutoNumberGenerator
|
||||
{
|
||||
public string? EntityName { get; set; }
|
||||
public int? Year { get; set; }
|
||||
public int? Month { get; set; }
|
||||
public long? CurrentSequence { get; set; }
|
||||
public string? PrefixTemplate { get; set; }
|
||||
public string? SuffixTemplate { get; set; }
|
||||
public int? PaddingLength { get; set; }
|
||||
}
|
||||
@@ -0,0 +1,21 @@
|
||||
using Indotalent.Data.Abstracts;
|
||||
using Indotalent.Data.Interfaces;
|
||||
|
||||
namespace Indotalent.Data.Entities;
|
||||
|
||||
public class Branch : BaseEntity, IHasAutoNumber
|
||||
{
|
||||
public string? AutoNumber { get; set; }
|
||||
public string? Code { get; set; }
|
||||
public string? Name { get; set; }
|
||||
public string? Description { get; set; }
|
||||
public string StreetAddress { get; set; } = string.Empty;
|
||||
public string City { get; set; } = string.Empty;
|
||||
public string StateProvince { get; set; } = string.Empty;
|
||||
public string ZipCode { get; set; } = string.Empty;
|
||||
public string Phone { get; set; } = string.Empty;
|
||||
public string Email { get; set; } = string.Empty;
|
||||
public string OtherInformation1 { get; set; } = string.Empty;
|
||||
public string OtherInformation2 { get; set; } = string.Empty;
|
||||
public string OtherInformation3 { get; set; } = string.Empty;
|
||||
}
|
||||
@@ -0,0 +1,31 @@
|
||||
using Indotalent.Data.Abstracts;
|
||||
using Indotalent.Data.Interfaces;
|
||||
|
||||
namespace Indotalent.Data.Entities;
|
||||
|
||||
public class Company : BaseEntity, IHasAutoNumber
|
||||
{
|
||||
public string? AutoNumber { get; set; }
|
||||
public string Name { get; set; } = string.Empty;
|
||||
public string Description { get; set; } = string.Empty;
|
||||
public bool IsDefault { get; set; } = false;
|
||||
public string CurrencyId { get; set; } = string.Empty; //lookup to Currency
|
||||
public Currency? Currency { get; set; }
|
||||
public string TaxIdentification { get; set; } = string.Empty;
|
||||
public string BusinessLicense { get; set; } = string.Empty;
|
||||
public string CompanyLogo { get; set; } = string.Empty;
|
||||
public string StreetAddress { get; set; } = string.Empty;
|
||||
public string City { get; set; } = string.Empty;
|
||||
public string StateProvince { get; set; } = string.Empty;
|
||||
public string ZipCode { get; set; } = string.Empty;
|
||||
public string Phone { get; set; } = string.Empty;
|
||||
public string Email { get; set; } = string.Empty;
|
||||
public string SocialMediaLinkedIn { get; set; } = string.Empty;
|
||||
public string SocialMediaX { get; set; } = string.Empty;
|
||||
public string SocialMediaFacebook { get; set; } = string.Empty;
|
||||
public string SocialMediaInstagram { get; set; } = string.Empty;
|
||||
public string SocialMediaTikTok { get; set; } = string.Empty;
|
||||
public string OtherInformation1 { get; set; } = string.Empty;
|
||||
public string OtherInformation2 { get; set; } = string.Empty;
|
||||
public string OtherInformation3 { get; set; } = string.Empty;
|
||||
}
|
||||
@@ -0,0 +1,14 @@
|
||||
using Indotalent.Data.Abstracts;
|
||||
using Indotalent.Data.Interfaces;
|
||||
|
||||
namespace Indotalent.Data.Entities;
|
||||
|
||||
public class Currency : BaseEntity, IHasAutoNumber
|
||||
{
|
||||
public string? AutoNumber { get; set; }
|
||||
public string? Name { get; set; }
|
||||
public string? Description { get; set; }
|
||||
public string? Code { get; set; }
|
||||
public string? Symbol { get; set; }
|
||||
public string? CountryOwner { get; set; }
|
||||
}
|
||||
@@ -0,0 +1,16 @@
|
||||
using Indotalent.Data.Abstracts;
|
||||
using Indotalent.Data.Interfaces;
|
||||
|
||||
namespace Indotalent.Data.Entities;
|
||||
|
||||
public class Deduction : BaseEntity, IHasAutoNumber
|
||||
{
|
||||
public string? AutoNumber { get; set; }
|
||||
public string? Code { get; set; }
|
||||
public string? Name { get; set; }
|
||||
public string? Description { get; set; }
|
||||
public string? Category { get; set; }
|
||||
public bool PreTax { get; set; } = false;
|
||||
public string? CalculationMethod { get; set; }
|
||||
public string? Status { get; set; } = "Active";
|
||||
}
|
||||
@@ -0,0 +1,16 @@
|
||||
using Indotalent.Data.Abstracts;
|
||||
using Indotalent.Data.Interfaces;
|
||||
|
||||
namespace Indotalent.Data.Entities;
|
||||
|
||||
public class Department : BaseEntity, IHasAutoNumber
|
||||
{
|
||||
public string? AutoNumber { get; set; }
|
||||
public string? CostCenter { get; set; }
|
||||
public string? Name { get; set; }
|
||||
public string? Description { get; set; }
|
||||
public string HeadOfDeptartment { get; set; } = string.Empty;
|
||||
public string OtherInformation1 { get; set; } = string.Empty;
|
||||
public string OtherInformation2 { get; set; } = string.Empty;
|
||||
public string OtherInformation3 { get; set; } = string.Empty;
|
||||
}
|
||||
@@ -0,0 +1,16 @@
|
||||
using Indotalent.Data.Abstracts;
|
||||
using Indotalent.Data.Interfaces;
|
||||
|
||||
namespace Indotalent.Data.Entities;
|
||||
|
||||
public class Designation : BaseEntity, IHasAutoNumber
|
||||
{
|
||||
public string? AutoNumber { get; set; }
|
||||
public string? Code { get; set; }
|
||||
public string? Name { get; set; }
|
||||
public string? Description { get; set; }
|
||||
public string? Level { get; set; }
|
||||
public string OtherInformation1 { get; set; } = string.Empty;
|
||||
public string OtherInformation2 { get; set; } = string.Empty;
|
||||
public string OtherInformation3 { get; set; } = string.Empty;
|
||||
}
|
||||
@@ -0,0 +1,56 @@
|
||||
using Indotalent.Data.Abstracts;
|
||||
using Indotalent.Data.Interfaces;
|
||||
|
||||
namespace Indotalent.Data.Entities;
|
||||
|
||||
public class Employee : BaseEntity, IHasAutoNumber
|
||||
{
|
||||
public string? AutoNumber { get; set; }
|
||||
public string Code { get; set; } = string.Empty;
|
||||
public string FirstName { get; set; } = string.Empty;
|
||||
public string MiddleName { get; set; } = string.Empty;
|
||||
public string LastName { get; set; } = string.Empty;
|
||||
public string JobDescription { get; set; } = string.Empty;
|
||||
public string? GradeId { get; set; }
|
||||
public Grade? Grade { get; set; }
|
||||
public decimal BasicSalary { get; set; }
|
||||
public string SalaryBankName { get; set; } = string.Empty;
|
||||
public string SalaryBankAccountName { get; set; } = string.Empty;
|
||||
public string SalaryBankAccountNumber { get; set; } = string.Empty;
|
||||
public string PlaceOfBirth { get; set; } = string.Empty;
|
||||
public DateTime? DateOfBirth { get; set; }
|
||||
public string Gender { get; set; } = string.Empty;
|
||||
public string MaritalStatus { get; set; } = string.Empty;
|
||||
public string Religion { get; set; } = string.Empty;
|
||||
public string BloodType { get; set; } = string.Empty;
|
||||
public string IdentityNumber { get; set; } = string.Empty;
|
||||
public string TaxNumber { get; set; } = string.Empty;
|
||||
public string LastEducation { get; set; } = string.Empty;
|
||||
public DateTime? JoinedDate { get; set; }
|
||||
public DateTime? ResignedDate { get; set; }
|
||||
public string EmployeeStatus { get; set; } = string.Empty;
|
||||
public string EmploymentType { get; set; } = string.Empty;
|
||||
public string StreetAddress { get; set; } = string.Empty;
|
||||
public string City { get; set; } = string.Empty;
|
||||
public string StateProvince { get; set; } = string.Empty;
|
||||
public string ZipCode { get; set; } = string.Empty;
|
||||
public string Phone { get; set; } = string.Empty;
|
||||
public string Email { get; set; } = string.Empty;
|
||||
public string BranchId { get; set; } = string.Empty;
|
||||
public Branch? Branch { get; set; }
|
||||
public string DepartmentId { get; set; } = string.Empty;
|
||||
public Department? Department { get; set; }
|
||||
public string DesignationId { get; set; } = string.Empty;
|
||||
public Designation? Designation { get; set; }
|
||||
public string SocialMediaLinkedIn { get; set; } = string.Empty;
|
||||
public string SocialMediaX { get; set; } = string.Empty;
|
||||
public string SocialMediaFacebook { get; set; } = string.Empty;
|
||||
public string SocialMediaInstagram { get; set; } = string.Empty;
|
||||
public string SocialMediaTikTok { get; set; } = string.Empty;
|
||||
public string OtherInformation1 { get; set; } = string.Empty;
|
||||
public string OtherInformation2 { get; set; } = string.Empty;
|
||||
public string OtherInformation3 { get; set; } = string.Empty;
|
||||
|
||||
public virtual ICollection<EmployeeIncome> EmployeeIncome { get; set; } = new List<EmployeeIncome>();
|
||||
public virtual ICollection<EmployeeDeduction> EmployeeDeduction { get; set; } = new List<EmployeeDeduction>();
|
||||
}
|
||||
@@ -0,0 +1,16 @@
|
||||
using Indotalent.Data.Abstracts;
|
||||
using Indotalent.Data.Interfaces;
|
||||
|
||||
namespace Indotalent.Data.Entities;
|
||||
|
||||
public class EmployeeDeduction : BaseEntity, IHasAutoNumber
|
||||
{
|
||||
public string? AutoNumber { get; set; }
|
||||
public string? EmployeeId { get; set; }
|
||||
public Employee? Employee { get; set; }
|
||||
public string? DeductionId { get; set; }
|
||||
public Deduction? Deduction { get; set; }
|
||||
public decimal Amount { get; set; }
|
||||
public string? Description { get; set; }
|
||||
public bool IsActive { get; set; } = true;
|
||||
}
|
||||
@@ -0,0 +1,16 @@
|
||||
using Indotalent.Data.Abstracts;
|
||||
using Indotalent.Data.Interfaces;
|
||||
|
||||
namespace Indotalent.Data.Entities;
|
||||
|
||||
public class EmployeeIncome : BaseEntity, IHasAutoNumber
|
||||
{
|
||||
public string? AutoNumber { get; set; }
|
||||
public string? EmployeeId { get; set; }
|
||||
public Employee? Employee { get; set; }
|
||||
public string? IncomeId { get; set; }
|
||||
public Income? Income { get; set; }
|
||||
public decimal Amount { get; set; }
|
||||
public string? Description { get; set; }
|
||||
public bool IsActive { get; set; } = true;
|
||||
}
|
||||
@@ -0,0 +1,19 @@
|
||||
using Indotalent.Data.Abstracts;
|
||||
using Indotalent.Data.Interfaces;
|
||||
|
||||
namespace Indotalent.Data.Entities;
|
||||
|
||||
public class Evaluation : BaseEntity, IHasAutoNumber
|
||||
{
|
||||
public string? AutoNumber { get; set; }
|
||||
public string EmployeeId { get; set; } = string.Empty;
|
||||
public Employee? Employee { get; set; }
|
||||
public string Period { get; set; } = string.Empty;
|
||||
public string FinalScore { get; set; } = string.Empty;
|
||||
public string Rating { get; set; } = string.Empty;
|
||||
public string EvaluatorId { get; set; } = string.Empty;
|
||||
public Employee? Evaluator { get; set; }
|
||||
public DateTime EvaluationDate { get; set; }
|
||||
public string EvaluationNote { get; set; } = string.Empty;
|
||||
public string Status { get; set; } = string.Empty;
|
||||
}
|
||||
@@ -0,0 +1,16 @@
|
||||
using Indotalent.Data.Abstracts;
|
||||
using Indotalent.Data.Interfaces;
|
||||
|
||||
namespace Indotalent.Data.Entities;
|
||||
|
||||
public class Grade : BaseEntity, IHasAutoNumber
|
||||
{
|
||||
public string? AutoNumber { get; set; }
|
||||
public string? Code { get; set; }
|
||||
public string? Name { get; set; }
|
||||
public string? Description { get; set; }
|
||||
public decimal SalaryFrom { get; set; }
|
||||
public decimal SalaryTo { get; set; }
|
||||
public bool IsOverTimeEligible { get; set; } = true;
|
||||
public string? Status { get; set; } = "Active";
|
||||
}
|
||||
@@ -0,0 +1,16 @@
|
||||
using Indotalent.Data.Abstracts;
|
||||
using Indotalent.Data.Interfaces;
|
||||
|
||||
namespace Indotalent.Data.Entities;
|
||||
|
||||
public class Income : BaseEntity, IHasAutoNumber
|
||||
{
|
||||
public string? AutoNumber { get; set; }
|
||||
public string? Code { get; set; }
|
||||
public string? Name { get; set; }
|
||||
public string? Description { get; set; }
|
||||
public string? Type { get; set; }
|
||||
public bool IsTaxable { get; set; } = true;
|
||||
public string? CalculationBase { get; set; }
|
||||
public string? Status { get; set; } = "Active";
|
||||
}
|
||||
@@ -0,0 +1,22 @@
|
||||
using Indotalent.Data.Abstracts;
|
||||
using Indotalent.Data.Interfaces;
|
||||
|
||||
namespace Indotalent.Data.Entities;
|
||||
|
||||
public class LeaveBalance : BaseEntity, IHasAutoNumber
|
||||
{
|
||||
public string? AutoNumber { get; set; }
|
||||
|
||||
public string EmployeeId { get; set; } = string.Empty;
|
||||
public Employee? Employee { get; set; }
|
||||
public string LeaveCategoryId { get; set; } = string.Empty;
|
||||
public LeaveCategory? LeaveCategory { get; set; }
|
||||
public int Entitlement { get; set; }
|
||||
public int Used { get; set; }
|
||||
public int Pending { get; set; }
|
||||
public int Remaining { get; set; }
|
||||
public int Year { get; set; }
|
||||
public DateTime ValidFrom { get; set; }
|
||||
public DateTime ValidTo { get; set; }
|
||||
public int CarryForward { get; set; }
|
||||
}
|
||||
@@ -0,0 +1,19 @@
|
||||
using Indotalent.Data.Abstracts;
|
||||
using Indotalent.Data.Interfaces;
|
||||
|
||||
namespace Indotalent.Data.Entities;
|
||||
|
||||
|
||||
public class LeaveCategory : BaseEntity, IHasAutoNumber
|
||||
{
|
||||
public string? AutoNumber { get; set; }
|
||||
public string Code { get; set; } = string.Empty;
|
||||
public string Name { get; set; } = string.Empty;
|
||||
public int Quota { get; set; }
|
||||
public bool IsPaidLeave { get; set; }
|
||||
public string Description { get; set; } = string.Empty;
|
||||
public string Status { get; set; } = string.Empty;
|
||||
public bool AllowCarryForward { get; set; }
|
||||
public int MaxCarryForward { get; set; }
|
||||
public int MinServiceMonths { get; set; }
|
||||
}
|
||||
@@ -0,0 +1,22 @@
|
||||
using Indotalent.Data.Abstracts;
|
||||
using Indotalent.Data.Interfaces;
|
||||
|
||||
namespace Indotalent.Data.Entities;
|
||||
|
||||
public class LeaveRequest : BaseEntity, IHasAutoNumber
|
||||
{
|
||||
public string? AutoNumber { get; set; }
|
||||
public string EmployeeId { get; set; } = string.Empty;
|
||||
public Employee? Employee { get; set; }
|
||||
public string LeaveCategoryId { get; set; } = string.Empty;
|
||||
public LeaveCategory? LeaveCategory { get; set; }
|
||||
public DateTime StartDate { get; set; }
|
||||
public DateTime EndDate { get; set; }
|
||||
public double Days { get; set; }
|
||||
public string Reason { get; set; } = string.Empty;
|
||||
public string Status { get; set; } = string.Empty; // Pending, Approved, Rejected, Cancelled
|
||||
public string? AttachmentPath { get; set; }
|
||||
public string? ApproverId { get; set; }
|
||||
public DateTime? ActionDate { get; set; }
|
||||
public string? RejectReason { get; set; }
|
||||
}
|
||||
@@ -0,0 +1,13 @@
|
||||
using Indotalent.Data.Abstracts;
|
||||
|
||||
namespace Indotalent.Data.Entities;
|
||||
|
||||
public class PayrollComponent : BaseEntity
|
||||
{
|
||||
public string? PayrollDetailId { get; set; }
|
||||
public PayrollDetail? PayrollDetail { get; set; }
|
||||
public string? ComponentName { get; set; }
|
||||
public string? ComponentType { get; set; }
|
||||
public decimal Amount { get; set; }
|
||||
public string? Description { get; set; }
|
||||
}
|
||||
@@ -0,0 +1,18 @@
|
||||
using Indotalent.Data.Abstracts;
|
||||
|
||||
namespace Indotalent.Data.Entities;
|
||||
|
||||
public class PayrollDetail : BaseEntity
|
||||
{
|
||||
public string? PayrollProcessId { get; set; }
|
||||
public PayrollProcess? PayrollProcess { get; set; }
|
||||
public string? EmployeeId { get; set; }
|
||||
public Employee? Employee { get; set; }
|
||||
public string? EmployeeCode { get; set; }
|
||||
public string? EmployeeName { get; set; }
|
||||
public decimal BasicSalary { get; set; }
|
||||
public decimal TotalIncome { get; set; }
|
||||
public decimal TotalDeduction { get; set; }
|
||||
public decimal TakeHomePay { get; set; }
|
||||
public virtual ICollection<PayrollComponent> Components { get; set; } = new List<PayrollComponent>();
|
||||
}
|
||||
@@ -0,0 +1,22 @@
|
||||
using Indotalent.Data.Abstracts;
|
||||
using Indotalent.Data.Interfaces;
|
||||
|
||||
namespace Indotalent.Data.Entities;
|
||||
|
||||
public class PayrollProcess : BaseEntity, IHasAutoNumber
|
||||
{
|
||||
public string? AutoNumber { get; set; }
|
||||
public string? PeriodName { get; set; }
|
||||
public DateTime FromDate { get; set; }
|
||||
public DateTime ToDate { get; set; }
|
||||
public int TotalEmployees { get; set; }
|
||||
public decimal TotalBasicSalary { get; set; }
|
||||
public decimal TotalIncome { get; set; }
|
||||
public decimal TotalDeduction { get; set; }
|
||||
public decimal TotalGross { get; set; }
|
||||
public decimal TotalTakeHomePay { get; set; }
|
||||
public string? Status { get; set; }
|
||||
public string? ProcessedBy { get; set; }
|
||||
public DateTime ProcessedAt { get; set; }
|
||||
public string? Description { get; set; }
|
||||
}
|
||||
@@ -0,0 +1,16 @@
|
||||
using Indotalent.Data.Abstracts;
|
||||
using Indotalent.Data.Interfaces;
|
||||
|
||||
namespace Indotalent.Data.Entities;
|
||||
|
||||
public class Promotion : BaseEntity, IHasAutoNumber
|
||||
{
|
||||
public string? AutoNumber { get; set; }
|
||||
public string EmployeeId { get; set; } = string.Empty;
|
||||
public Employee? Employee { get; set; }
|
||||
public string FromGrade { get; set; } = string.Empty;
|
||||
public string ToGrade { get; set; } = string.Empty;
|
||||
public DateTime? EffectiveDate { get; set; }
|
||||
public string PromotionNote { get; set; } = string.Empty;
|
||||
public string Status { get; set; } = string.Empty;
|
||||
}
|
||||
@@ -0,0 +1,16 @@
|
||||
using System.ComponentModel.DataAnnotations;
|
||||
|
||||
namespace Indotalent.Data.Entities;
|
||||
|
||||
public class SerilogLogs
|
||||
{
|
||||
[Key]
|
||||
public int Id { get; set; }
|
||||
public string? Message { get; set; }
|
||||
public string? MessageTemplate { get; set; }
|
||||
public string? Level { get; set; }
|
||||
public DateTimeOffset TimeStamp { get; set; }
|
||||
public string? Exception { get; set; }
|
||||
public string? Properties { get; set; }
|
||||
public string? LogEvent { get; set; }
|
||||
}
|
||||
@@ -0,0 +1,14 @@
|
||||
using Indotalent.Data.Abstracts;
|
||||
using Indotalent.Data.Interfaces;
|
||||
|
||||
namespace Indotalent.Data.Entities;
|
||||
|
||||
public class Tax : BaseEntity, IHasAutoNumber
|
||||
{
|
||||
public string? AutoNumber { get; set; }
|
||||
public string? Name { get; set; }
|
||||
public string? Description { get; set; }
|
||||
public string? Code { get; set; }
|
||||
public decimal PercentageValue { get; set; }
|
||||
public string? Category { get; set; }
|
||||
}
|
||||
@@ -0,0 +1,26 @@
|
||||
using Indotalent.Data.Abstracts;
|
||||
using Indotalent.Data.Interfaces;
|
||||
|
||||
namespace Indotalent.Data.Entities;
|
||||
|
||||
public class Transfer : BaseEntity, IHasAutoNumber
|
||||
{
|
||||
public string? AutoNumber { get; set; }
|
||||
public string EmployeeId { get; set; } = string.Empty;
|
||||
public Employee? Employee { get; set; }
|
||||
public string FromBranchId { get; set; } = string.Empty;
|
||||
public Branch? FromBranch { get; set; }
|
||||
public string FromDepartmentId { get; set; } = string.Empty;
|
||||
public Department? FromDepartment { get; set; }
|
||||
public string FromDesignationId { get; set; } = string.Empty;
|
||||
public Designation? FromDesignation { get; set; }
|
||||
public string ToBranchId { get; set; } = string.Empty;
|
||||
public Branch? ToBranch { get; set; }
|
||||
public string ToDepartmentId { get; set; } = string.Empty;
|
||||
public Department? ToDepartment { get; set; }
|
||||
public string ToDesignationId { get; set; } = string.Empty;
|
||||
public Designation? ToDesignation { get; set; }
|
||||
public DateTime? TransferDate { get; set; }
|
||||
public string TransferNote { get; set; } = string.Empty;
|
||||
public string Status { get; set; } = string.Empty;
|
||||
}
|
||||
@@ -0,0 +1,9 @@
|
||||
namespace Indotalent.Data.Interfaces;
|
||||
|
||||
public interface IHasAudit
|
||||
{
|
||||
DateTimeOffset? CreatedAt { get; set; }
|
||||
string? CreatedBy { get; set; }
|
||||
DateTimeOffset? UpdatedAt { get; set; }
|
||||
string? UpdatedBy { get; set; }
|
||||
}
|
||||
@@ -0,0 +1,6 @@
|
||||
namespace Indotalent.Data.Interfaces;
|
||||
|
||||
public interface IHasAutoNumber
|
||||
{
|
||||
string? AutoNumber { get; set; }
|
||||
}
|
||||
@@ -0,0 +1,6 @@
|
||||
namespace Indotalent.Data.Interfaces;
|
||||
|
||||
public interface IHasIsDeleted
|
||||
{
|
||||
bool IsDeleted { get; set; }
|
||||
}
|
||||
Reference in New Issue
Block a user