ย้ายมาออกรายงานผ่านระบบ

This commit is contained in:
Suphonchai Phoonsawat 2023-05-10 20:11:47 +07:00
parent 4987f7c5ad
commit b817b781d2
144 changed files with 5573 additions and 63 deletions

264
Models/HR/Profile.cs Normal file
View file

@ -0,0 +1,264 @@
using BMA.EHR.MetaData.Service.Models;
using BMA.EHR.Recruit.Service.Models.Documents;
using System.ComponentModel.DataAnnotations;
namespace BMA.EHR.Profile.Service.Models.HR
{
public class Profile : EntityBase
{
[Key]
public Guid Id { get; set; }
[MaxLength(13)]
public string? CitizenId { get; set; }
[MaxLength(50)]
public string? ProfileType { get; set; }
[MaxLength(20)]
public string? EmployeeType { get; set; }
[MaxLength(20)]
public string? EmployeeClass { get; set; }
public Guid? PrefixId { get; set; }
[MaxLength(100)]
[Required]
public string? FirstName { get; set; }
[MaxLength(100)]
[Required]
public string? LastName { get; set; }
[MaxLength(100)]
public string AvatarRef { get; set; }
public Guid? GenderId { get; set; }
[MaxLength(100)]
public string? Nationality { get; set; }
[MaxLength(100)]
public string? Race { get; set; }
public Guid? ReligionId { get; set; }
[Required]
public DateTime BirthDate { get; set; }
public Guid? BloodGroupId { get; set; }
public Guid? RelationshipId { get; set; }
[MaxLength(50)]
public string? TelephoneNumber { get; set; }
public bool? Couple { get; set; }
public Guid? CouplePrefixId { get; set; }
[MaxLength(100)]
public string? CoupleFirstName { get; set; }
[MaxLength(100)]
public string? CoupleLastName { get; set; }
[MaxLength(100)]
public string? CoupleCareer { get; set; }
public Guid? FatherPrefixId { get; set; }
[MaxLength(100)]
public string? FatherFirstName { get; set; }
[MaxLength(100)]
public string? FatherLastName { get; set; }
[MaxLength(100)]
public string? FatherCareer { get; set; }
public Guid? MotherPrefixId { get; set; }
[MaxLength(100)]
public string? MotherFirstName { get; set; }
[MaxLength(100)]
public string? MotherLastName { get; set; }
[MaxLength(100)]
public string? MotherCareer { get; set; }
[MaxLength(200)]
public string? CurrentAddress { get; set; }
public Guid? CurrentSubDistrictId { get; set; }
public Guid? CurrentDistrictId { get; set; }
public Guid? CurrentProvinceId { get; set; }
[MaxLength(5)]
public string? CurrentZipCode { get; set; }
public bool? RegistrationSame { get; set; } = false;
[MaxLength(200)]
public string? RegistrationAddress { get; set; }
public Guid? RegistrationSubDistrictId { get; set; }
public Guid? RegistrationDistrictId { get; set; }
public Guid? RegistrationProvinceId { get; set; }
[MaxLength(5)]
public string? RegistrationZipCode { get; set; }
public DateTime? DateAppoint { get; set; }
public DateTime? DateStart { get; set; }
public DateTime? DateRetire { get; set; }
public string? ReasonSameDate { get; set; }
// public Guid? AffiliationId { get; set; }
// public Guid? PositionId { get; set; }
// public Guid? WorkId { get; set; }
// public Guid? TypeId { get; set; }
// public Guid? LevelId { get; set; }
// public Guid? NumberId { get; set; }
// public Guid? BusinessId { get; set; }
public Guid? OcId { get; set; }
public string? Oc { get; set; }
public Guid? OrganizationShortNameId { get; set; }
public string? OrganizationShortName { get; set; }
public string? GovernmentCode { get; set; }
public Guid? OrganizationOrganizationId { get; set; }
public string? OrganizationOrganization { get; set; }
public Guid? PositionId { get; set; }
public string? Position { get; set; }
public Guid? PosNoId { get; set; }
public string? PosNo { get; set; }
public Guid? PositionLineId { get; set; }
public string? PositionLine { get; set; }
public Guid? PositionPathSideId { get; set; }
public string? PositionPathSide { get; set; }
public Guid? PositionTypeId { get; set; }
public string? PositionType { get; set; }
public Guid? PositionLevelId { get; set; }
public string? PositionLevel { get; set; }
public Guid? PositionExecutiveId { get; set; }
public string? PositionExecutive { get; set; }
public Guid? PositionExecutiveSideId { get; set; }
public string? PositionExecutiveSide { get; set; }
[MaxLength(100)]
public string Physical { get; set; }
[MaxLength(100)]
public string Ability { get; set; }
public bool IsActive { get; set; } = true;
public bool IsLeave { get; set; } = false;
public DateTime? LeaveDate { get; set; }
[MaxLength(1000)]
public string? LeaveReason { get; set; }
public DateTime? CreatedDate { get; set; }
public DateTime? ModifiedDate { get; set; }
[MaxLength(250)]
public string CreatedUser { get; set; } = string.Empty;
[MaxLength(5)]
public string EntryStatus { get; set; } = "st1"; // สถานะการตรวจสอบ st1 = create; st2 = pending
public bool IsTransfer { get; set; } = false;
public DateTime? TransferDate { get; set; }
public int GovAgeAbsent { get; set; } = 0;
public int GovAgePlus { get; set; } = 0;
// public OrganizationEntity? Organization { get; set; }
// public PositionNumberEntity PositionNumber { get; set; }
// public Position Position { get; set; }
// public PositionExecutive PositionExecutive { get; set; }
public bool IsVerified { get; set; } = false;
[MaxLength(100)]
public string VerifiedUser { get; set; } = string.Empty;
public DateTime? VerifiedDate { get; set; }
public Document? Avatar { get; set; }
public bool IsProbation { get; set; } = true;
// public PositionType PositionType { get; set; } // ประเภทตำแหน่ง
// public PositionLevel PositionLevel { get; set; } // ระดับ
// public OrganizationPositionEntity? OrganizationPosition { get; set; }
public virtual List<ProfileEducation> Educations { get; set; } = new List<ProfileEducation>();
public virtual List<ProfileHonor> Honors { get; set; } = new List<ProfileHonor>();
public virtual List<ProfileAssessment> Assessments { get; set; } = new List<ProfileAssessment>();
public virtual List<ProfileDiscipline> Disciplines { get; set; } = new List<ProfileDiscipline>();
public virtual List<ProfileCertificate> Certificates { get; set; } = new List<ProfileCertificate>();
public virtual List<ProfileTraining> Trainings { get; set; } = new List<ProfileTraining>();
public virtual List<ProfileInsignia> Insignias { get; set; } = new List<ProfileInsignia>();
public virtual List<ProfileSalary> Salaries { get; set; } = new List<ProfileSalary>();
public virtual List<ProfileHistory> ProfileHistory { get; set; } = new List<ProfileHistory>();
public virtual List<ProfileCoupleHistory> CoupleHistory { get; set; } = new List<ProfileCoupleHistory>();
public virtual List<ProfileFatherHistory> FatherHistory { get; set; } = new List<ProfileFatherHistory>();
public virtual List<ProfileMotherHistory> MotherHistory { get; set; } = new List<ProfileMotherHistory>();
public virtual List<ProfileFamilyHistory> FamilyHistory { get; set; } = new List<ProfileFamilyHistory>();
public virtual List<ProfileGovernmentHistory> GovernmentHistory { get; set; } = new List<ProfileGovernmentHistory>();
public virtual List<ProfileLeave> Leaves { get; set; } = new List<ProfileLeave>();
public virtual List<ProfileCurrentAddressHistory> CurrentAddressHistory { get; set; } = new List<ProfileCurrentAddressHistory>();
public virtual List<ProfileRegistrationAddressHistory> RegistrationAddressHistory { get; set; } = new List<ProfileRegistrationAddressHistory>();
public virtual List<ProfileAddressHistory> AddressHistory { get; set; } = new List<ProfileAddressHistory>();
public virtual List<ProfileOther> Others { get; set; } = new List<ProfileOther>();
public virtual List<ProfileAbility> Abilitys { get; set; } = new List<ProfileAbility>();
public virtual List<ProfileDuty> Dutys { get; set; } = new List<ProfileDuty>();
public virtual List<ProfileNopaid> Nopaids { get; set; } = new List<ProfileNopaid>();
public virtual List<ProfileAvatarHistory> AvatarHistory { get; set; } = new List<ProfileAvatarHistory>();
public virtual List<ProfilePaper> Papers { get; set; } = new List<ProfilePaper>();
public virtual List<ProfileChildren> Childrens { get; set; } = new List<ProfileChildren>();
}
}

View file

@ -0,0 +1,44 @@
using BMA.EHR.Report.Service.Models;
using System;
using System.ComponentModel.DataAnnotations;
namespace BMA.EHR.Profile.Service.Models.HR
{
public class ProfileAbility : EntityBase
{
/// <summary>
/// ด้าน (ใช้เฉพาะ ความสามารถพิเศษ)
/// </summary>
public string? Field { get; set; }
/// <summary>
/// รายละเอียด
/// </summary>
public string? Detail { get; set; }
/// <summary>
/// หมายเหตุ
/// </summary>
public string? Remark { get; set; }
/// <summary>
/// วันที่เริ่มต้น
/// </summary>
public DateTime? DateStart { get; set; }
/// <summary>
/// วันที่สิ้นสุด
/// </summary>
public DateTime? DateEnd { get; set; }
/// <summary>
/// เอกสารอ้างอิง
/// </summary>
public string? Reference { get; set; }
// public string? Side { get; set; }
// public string? Detail { get; set; }
// public string? Note { get; set; }
public virtual List<ProfileAbilityHistory> ProfileAbilityHistorys { get; set; } = new List<ProfileAbilityHistory>();
public virtual Profile? Profile { get; set; }
}
}

View file

@ -0,0 +1,43 @@
using System;
using System.ComponentModel.DataAnnotations;
using BMA.EHR.Report.Service.Models;
namespace BMA.EHR.Profile.Service.Models.HR
{
public class ProfileAbilityHistory : EntityBase
{
/// <summary>
/// ด้าน (ใช้เฉพาะ ความสามารถพิเศษ)
/// </summary>
public string? Field { get; set; }
/// <summary>
/// รายละเอียด
/// </summary>
public string? Detail { get; set; }
/// <summary>
/// หมายเหตุ
/// </summary>
public string? Remark { get; set; }
/// <summary>
/// วันที่เริ่มต้น
/// </summary>
public DateTime? DateStart { get; set; }
/// <summary>
/// วันที่สิ้นสุด
/// </summary>
public DateTime? DateEnd { get; set; }
/// <summary>
/// เอกสารอ้างอิง
/// </summary>
public string? Reference { get; set; }
// public string? Side { get; set; }
// public string? Detail { get; set; }
// public string? Note { get; set; }
public virtual ProfileAbility? ProfileAbility { get; set; }
}
}

View file

@ -0,0 +1,33 @@
using System;
using System.ComponentModel.DataAnnotations;
using BMA.EHR.Report.Service.Models;
namespace BMA.EHR.Profile.Service.Models.HR
{
public class ProfileAddressHistory : EntityBase
{
public bool? RegistrationSame { get; set; }
[MaxLength(200)]
public string? RegistrationAddress { get; set; }
public Guid? RegistrationSubDistrictId { get; set; }
public string? RegistrationSubDistrict { get; set; }
public Guid? RegistrationDistrictId { get; set; }
public string? RegistrationDistrict { get; set; }
public Guid? RegistrationProvinceId { get; set; }
public string? RegistrationProvince { get; set; }
[MaxLength(5)]
public string? RegistrationZipCode { get; set; }
[MaxLength(200)]
public string? CurrentAddress { get; set; }
public Guid? CurrentSubDistrictId { get; set; }
public string? CurrentSubDistrict { get; set; }
public Guid? CurrentDistrictId { get; set; }
public string? CurrentDistrict { get; set; }
public Guid? CurrentProvinceId { get; set; }
public string? CurrentProvince { get; set; }
[MaxLength(5)]
public string? CurrentZipCode { get; set; }
public virtual Profile? Profile { get; set; }
}
}

View file

@ -0,0 +1,15 @@
using System;
using System.ComponentModel.DataAnnotations;
using BMA.EHR.Report.Service.Models;
namespace BMA.EHR.Profile.Service.Models.HR
{
public class ProfileAssessment : EntityBase
{
public string? Name { get; set; }
public DateTime? Date { get; set; }
public double? Point { get; set; }
public virtual List<ProfileAssessmentHistory> ProfileAssessmentHistorys { get; set; } = new List<ProfileAssessmentHistory>();
public virtual Profile? Profile { get; set; }
}
}

View file

@ -0,0 +1,14 @@
using System;
using System.ComponentModel.DataAnnotations;
using BMA.EHR.Report.Service.Models;
namespace BMA.EHR.Profile.Service.Models.HR
{
public class ProfileAssessmentHistory : EntityBase
{
public string? Name { get; set; }
public DateTime? Date { get; set; }
public double? Point { get; set; }
public virtual ProfileAssessment? ProfileAssessment { get; set; }
}
}

View file

@ -0,0 +1,18 @@
using BMA.EHR.Recruit.Service.Models.Documents;
using BMA.EHR.Report.Service.Models;
using System.ComponentModel.DataAnnotations;
namespace BMA.EHR.Profile.Service.Models.HR
{
public class ProfileAvatarHistory : EntityBase
{
// [Key]
// public int Id { get; set; }
// public DateTime CreatedDate { get; set; } = DateTime.Now;
public Document AvatarFile { get; set; }
public Profile Profile { get; set; }
}
}

View file

@ -0,0 +1,28 @@
using System;
using System.ComponentModel.DataAnnotations;
using BMA.EHR.Report.Service.Models;
namespace BMA.EHR.Profile.Service.Models.HR
{
public class ProfileCertificate : EntityBase
{
// [Key]
// public int Id { get; set; }
// [Required]
// public int Order { get; set; }
[MaxLength(20)]
public string? CertificateNo { get; set; }
[MaxLength(200)]
public string? Issuer { get; set; }
public DateTime? IssueDate { get; set; }
public DateTime? ExpireDate { get; set; }
[MaxLength(100)]
public string? CertificateType { get; set; }
// public string? Name { get; set; }
// public string? CertiNumber { get; set; }
// public DateTime? Start { get; set; }
// public DateTime? End { get; set; }
public virtual List<ProfileCertificateHistory> ProfileCertificateHistorys { get; set; } = new List<ProfileCertificateHistory>();
public virtual Profile? Profile { get; set; }
}
}

View file

@ -0,0 +1,23 @@
using System;
using System.ComponentModel.DataAnnotations;
using BMA.EHR.Report.Service.Models;
namespace BMA.EHR.Profile.Service.Models.HR
{
public class ProfileCertificateHistory : EntityBase
{
[MaxLength(20)]
public string? CertificateNo { get; set; }
[MaxLength(200)]
public string? Issuer { get; set; }
public DateTime? IssueDate { get; set; }
public DateTime? ExpireDate { get; set; }
[MaxLength(100)]
public string? CertificateType { get; set; }
// public string? Name { get; set; }
// public string? CertiNumber { get; set; }
// public DateTime? Start { get; set; }
// public DateTime? End { get; set; }
public virtual ProfileCertificate? ProfileCertificate { get; set; }
}
}

View file

@ -0,0 +1,16 @@
using System.ComponentModel.DataAnnotations;
using BMA.EHR.Report.Service.Models;
namespace BMA.EHR.Profile.Service.Models.HR
{
public class ProfileChildren : EntityBase
{
public Guid? ChildrenPrefixId { get; set; }
public string? ChildrenPrefix { get; set; }
public string? ChildrenFirstName { get; set; }
public string? ChildrenLastName { get; set; }
public string? ChildrenCareer { get; set; }
public virtual List<ProfileChildrenHistory> ProfileChildrenHistorys { get; set; } = new List<ProfileChildrenHistory>();
public Profile? Profile { get; set; }
}
}

View file

@ -0,0 +1,14 @@
using System.ComponentModel.DataAnnotations;
using BMA.EHR.Report.Service.Models;
namespace BMA.EHR.Profile.Service.Models.HR
{
public class ProfileChildrenHistory : EntityBase
{
public Guid? ChildrenPrefixId { get; set; }
public string? ChildrenPrefix { get; set; }
public string? ChildrenFirstName { get; set; }
public string? ChildrenLastName { get; set; }
public string? ChildrenCareer { get; set; }
}
}

View file

@ -0,0 +1,30 @@
using System;
using System.ComponentModel.DataAnnotations;
namespace BMA.EHR.Profile.Service.Models.HR
{
public class ProfileCoupleHistory
{
[Key]
public int Id { get; set; }
[Required]
[MaxLength(50)]
public string Prefix { get; set; }
[Required]
[MaxLength(100)]
public string FirstName { get; set; }
[Required]
[MaxLength(100)]
public string LastName { get; set; }
[MaxLength(100)]
public string Career { get; set; }
public DateTime CreatedDate { get; set; } = DateTime.Now;
public Profile Profile { get; set; }
}
}

View file

@ -0,0 +1,33 @@
using System;
using System.ComponentModel.DataAnnotations;
namespace BMA.EHR.Profile.Service.Models.HR
{
public class ProfileCurrentAddressHistory
{
[Key]
public int Id { get; set; }
[MaxLength(200)]
[Required]
public string Address { get; set; }
[Required]
public Guid SubDistrictId { get; set; }
[Required]
public Guid DistrictId { get; set; }
[Required]
public Guid ProvinceId { get; set; }
[MaxLength(5)]
[Required]
public string ZipCode { get; set; }
public DateTime CreatedDate { get; set; } = DateTime.Now;
public Profile Profile { get; set; }
}
}

View file

@ -0,0 +1,28 @@
using System;
using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema;
using BMA.EHR.Report.Service.Models;
namespace BMA.EHR.Profile.Service.Models.HR
{
public class ProfileDiscipline : EntityBase
{
// [Key]
// public int Id { get; set; }
// [Required]
// public int Order { get; set; }
public string? Level { get; set; }
[Column(TypeName = "text")]
public string? Detail { get; set; }
public string? RefCommandNo { get; set; }
public DateTime? RefCommandDate { get; set; }
public DateTime? Date { get; set; }
// public DateTime? Date { get; set; }
// public string? Status { get; set; }
// public string? Level { get; set; }
// public string? RefNo { get; set; }
// public DateTime? RefDate { get; set; }
public virtual List<ProfileDisciplineHistory> ProfileDisciplineHistorys { get; set; } = new List<ProfileDisciplineHistory>();
public virtual Profile? Profile { get; set; }
}
}

View file

@ -0,0 +1,23 @@
using System;
using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema;
using BMA.EHR.Report.Service.Models;
namespace BMA.EHR.Profile.Service.Models.HR
{
public class ProfileDisciplineHistory : EntityBase
{
public string? Level { get; set; }
[Column(TypeName = "text")]
public string? Detail { get; set; }
public string? RefCommandNo { get; set; }
public DateTime? RefCommandDate { get; set; }
public DateTime? Date { get; set; }
// public DateTime? Date { get; set; }
// public string? Status { get; set; }
// public string? Level { get; set; }
// public string? RefNo { get; set; }
// public DateTime? RefDate { get; set; }
public virtual ProfileDiscipline? ProfileDiscipline { get; set; }
}
}

16
Models/HR/ProfileDuty.cs Normal file
View file

@ -0,0 +1,16 @@
using System;
using System.ComponentModel.DataAnnotations;
using BMA.EHR.Report.Service.Models;
namespace BMA.EHR.Profile.Service.Models.HR
{
public class ProfileDuty : EntityBase
{
public DateTime? DateStart { get; set; }
public DateTime? DateEnd { get; set; }
public string? Detail { get; set; }
public string? Reference { get; set; }
public virtual List<ProfileDutyHistory> ProfileDutyHistorys { get; set; } = new List<ProfileDutyHistory>();
public virtual Profile? Profile { get; set; }
}
}

View file

@ -0,0 +1,15 @@
using System;
using System.ComponentModel.DataAnnotations;
using BMA.EHR.Report.Service.Models;
namespace BMA.EHR.Profile.Service.Models.HR
{
public class ProfileDutyHistory : EntityBase
{
public DateTime? DateStart { get; set; }
public DateTime? DateEnd { get; set; }
public string? Detail { get; set; }
public string? Reference { get; set; }
public virtual ProfileDuty? ProfileDuty { get; set; }
}
}

View file

@ -0,0 +1,44 @@
using System.ComponentModel.DataAnnotations;
using BMA.EHR.MetaData.Service.Models;
namespace BMA.EHR.Profile.Service.Models.HR
{
public class ProfileEducation : EntityBase
{
// [Key]
// public int Id { get; set; }
// [Required]
// public int Order { get; set; }
[MaxLength(1000)]
public string? Institute { get; set; }
[MaxLength(200)]
public string? Degree { get; set; }
[MaxLength(200)]
public string? Field { get; set; }
[MaxLength(20)]
public string? Gpa { get; set; }
[MaxLength(1000)]
public string? Country { get; set; }
[MaxLength(1000)]
public string? Duration { get; set; }
[MaxLength(1000)]
public string? Other { get; set; }
[MaxLength(1000)]
public string? FundName { get; set; }
public int DurationYear { get; set; }
public DateTime? FinishDate { get; set; }
public DateTime? StartDate { get; set; }
public DateTime? EndDate { get; set; }
// public EducationLevel? EducationLevel { get; set; }
public string? EducationLevel { get; set; }
public Guid? EducationLevelId { get; set; }
// public string? Name { get; set; }
// public int? Start { get; set; }
// public int? End { get; set; }
// public string? Education { get; set; }
// public string? Major { get; set; }
public virtual List<ProfileEducationHistory> ProfileEducationHistorys { get; set; } = new List<ProfileEducationHistory>();
public virtual Profile? Profile { get; set; }
}
}

View file

@ -0,0 +1,32 @@
using System.ComponentModel.DataAnnotations;
using BMA.EHR.MetaData.Service.Models;
namespace BMA.EHR.Profile.Service.Models.HR
{
public class ProfileEducationHistory : EntityBase
{
[MaxLength(1000)]
public string? Institute { get; set; }//
[MaxLength(200)]
public string? Degree { get; set; }//
[MaxLength(200)]
public string? Field { get; set; }//
[MaxLength(20)]
public string? Gpa { get; set; }//
[MaxLength(1000)]
public string? Country { get; set; }//
[MaxLength(1000)]
public string? Duration { get; set; }//
[MaxLength(1000)]
public string? Other { get; set; }//
[MaxLength(1000)]
public string? FundName { get; set; }//
public int DurationYear { get; set; }//
public DateTime? FinishDate { get; set; }//
public DateTime? StartDate { get; set; }//
public DateTime? EndDate { get; set; }//
public string? EducationLevel { get; set; }
public Guid? EducationLevelId { get; set; }
public virtual ProfileEducation? ProfileEducation { get; set; }
}
}

View file

@ -0,0 +1,32 @@
using System;
using System.ComponentModel.DataAnnotations;
using BMA.EHR.Report.Service.Models;
namespace BMA.EHR.Profile.Service.Models.HR
{
public class ProfileFamilyHistory : EntityBase
{
public bool? Couple { get; set; }
public Guid? CouplePrefixId { get; set; }
public string? CouplePrefix { get; set; }
public string? CoupleFirstName { get; set; }
public string? CoupleLastName { get; set; }
public string? CoupleCareer { get; set; }
public Guid? FatherPrefixId { get; set; }
public string? FatherPrefix { get; set; }
public string? FatherFirstName { get; set; }
public string? FatherLastName { get; set; }
public string? FatherCareer { get; set; }
public Guid? MotherPrefixId { get; set; }
public string? MotherPrefix { get; set; }
public string? MotherFirstName { get; set; }
public string? MotherLastName { get; set; }
public string? MotherCareer { get; set; }
public virtual Profile? Profile { get; set; }
public virtual List<ProfileChildrenHistory> Childrens { get; set; } = new List<ProfileChildrenHistory>();
}
}

View file

@ -0,0 +1,30 @@
using System;
using System.ComponentModel.DataAnnotations;
namespace BMA.EHR.Profile.Service.Models.HR
{
public class ProfileFatherHistory
{
[Key]
public int Id { get; set; }
[Required]
[MaxLength(50)]
public string Prefix { get; set; }
[Required]
[MaxLength(100)]
public string FirstName { get; set; }
[Required]
[MaxLength(100)]
public string LastName { get; set; }
[MaxLength(100)]
public string Career { get; set; }
public DateTime CreatedDate { get; set; } = DateTime.Now;
public Profile Profile { get; set; }
}
}

View file

@ -0,0 +1,37 @@
using System;
using System.ComponentModel.DataAnnotations;
using BMA.EHR.Report.Service.Models;
namespace BMA.EHR.Profile.Service.Models.HR
{
public class ProfileGovernmentHistory : EntityBase
{
// public Guid? AffiliationId { get; set; }
// public Guid? PositionId { get; set; }
// public Guid? WorkId { get; set; }
// public Guid? TypeId { get; set; }
// public Guid? LevelId { get; set; }
// public Guid? NumberId { get; set; }
// public Guid? BusinessId { get; set; }
public string? ReasonSameDate { get; set; }
public Guid? OcId { get; set; }
public string? Oc { get; set; }
public Guid? PositionId { get; set; }
public string? Position { get; set; }
public Guid? PosNoId { get; set; }
public string? PosNo { get; set; }
public string? PositionLine { get; set; }
// public string? PositionPathSide { get; set; }
public string? PositionType { get; set; }
public string? PositionLevel { get; set; }
public string? PositionExecutive { get; set; }
// public string? PositionExecutiveSide { get; set; }
public DateTime? DateAppoint { get; set; }
public DateTime? DateStart { get; set; }
public string? RetireDate { get; set; }
public string? GovAge { get; set; }
public int? GovAgeAbsent { get; set; } = 0;
public int? GovAgePlus { get; set; } = 0;
public virtual Profile? Profile { get; set; }
}
}

View file

@ -0,0 +1,42 @@
using System;
using System.Collections.Generic;
using System.ComponentModel.DataAnnotations;
using BMA.EHR.Report.Service.Models;
namespace BMA.EHR.Profile.Service.Models.HR
{
public class ProfileHistory : EntityBase
{
[MaxLength(13)]
public string? CitizenId { get; set; }
public Guid? PrefixId { get; set; }
public string? Prefix { get; set; }
[MaxLength(100)]
[Required]
public string? FirstName { get; set; }
[MaxLength(100)]
[Required]
public string? LastName { get; set; }
public Guid? GenderId { get; set; }
public string? Gender { get; set; }
[MaxLength(100)]
public string? Nationality { get; set; }
[MaxLength(100)]
public string? Race { get; set; }
public Guid? ReligionId { get; set; }
public string? Religion { get; set; }
[Required]
public DateTime BirthDate { get; set; }
public Guid? BloodGroupId { get; set; }
public string? BloodGroup { get; set; }
public Guid? RelationshipId { get; set; }
public string? Relationship { get; set; }
[MaxLength(50)]
public string? TelephoneNumber { get; set; }
[MaxLength(20)]
public string? EmployeeType { get; set; }
[MaxLength(20)]
public string? EmployeeClass { get; set; }
public virtual Profile? Profile { get; set; }
}
}

28
Models/HR/ProfileHonor.cs Normal file
View file

@ -0,0 +1,28 @@
using System;
using System.ComponentModel.DataAnnotations;
using BMA.EHR.Report.Service.Models;
namespace BMA.EHR.Profile.Service.Models.HR
{
public class ProfileHonor : EntityBase
{
// [Key]
// public int Id { get; set; }
// [Required]
// public int Order { get; set; }
// [MaxLength(20)]
// public string? No { get; set; }
[MaxLength(200)]
public string? Issuer { get; set; }
[MaxLength(2000)]
public string? Detail { get; set; }
public DateTime? IssueDate { get; set; }
// public DateTime? ReceiveDate { get; set; }
// public string? Detail { get; set; }
// public Guid? OrganizationOrganizationId { get; set; }
// public string? OrganizationOrganization { get; set; }
public virtual List<ProfileHonorHistory> ProfileHonorHistorys { get; set; } = new List<ProfileHonorHistory>();
public virtual Profile? Profile { get; set; }
}
}

View file

@ -0,0 +1,21 @@
using System;
using System.ComponentModel.DataAnnotations;
using BMA.EHR.Report.Service.Models;
namespace BMA.EHR.Profile.Service.Models.HR
{
public class ProfileHonorHistory : EntityBase
{
[MaxLength(200)]
public string? Issuer { get; set; }
[MaxLength(2000)]
public string? Detail { get; set; }
public DateTime? IssueDate { get; set; }
// public DateTime? ReceiveDate { get; set; }
// public string? Detail { get; set; }
// public Guid? OrganizationOrganizationId { get; set; }
// public string? OrganizationOrganization { get; set; }
public virtual ProfileHonor? ProfileHonor { get; set; }
}
}

View file

@ -0,0 +1,50 @@
using BMA.EHR.MetaData.Service.Models;
using System.ComponentModel.DataAnnotations;
namespace BMA.EHR.Profile.Service.Models.HR
{
public class ProfileInsignia : EntityBase
{
// [Key]
// public int Id { get; set; }
// [Required]
// public int Order { get; set; }
// public Insignia Insignia { get; set; }
// public DateTime DateReceive { get; set; }
public int Year { get; set; }
// [MaxLength(300)]
// public string? Level { get; set; }
[MaxLength(20)]
public string? No { get; set; }
[MaxLength(300)]
public string? Issue { get; set; }
[MaxLength(30)]
public string? VolumeNo { get; set; }
[MaxLength(30)]
public string? Volume { get; set; }
[MaxLength(30)]
public string? Section { get; set; }
[MaxLength(30)]
public string? Page { get; set; }
// public DateTime? DateStamp { get; set; }
public DateTime? DateAnnounce { get; set; }
// public DateTime? EndDate { get; set; }
// public int? Year { get; set; }
public DateTime? ReceiveDate { get; set; }
public string? InsigniaType { get; set; }
// public InsigniaType? InsigniaType { get; set; }
public string? Insignia { get; set; }
public Guid? InsigniaId { get; set; }
// public Insignia? Insignia { get; set; }
// public string? No { get; set; }
// public string? GazetteNo { get; set; }
// public string? Volume { get; set; }
// public string? Book { get; set; }
// public string? Section { get; set; }
// public string? Page { get; set; }
public virtual List<ProfileInsigniaHistory> ProfileInsigniaHistorys { get; set; } = new List<ProfileInsigniaHistory>();
public virtual Profile? Profile { get; set; }
}
}

View file

@ -0,0 +1,40 @@
using BMA.EHR.MetaData.Service.Models;
using System.ComponentModel.DataAnnotations;
namespace BMA.EHR.Profile.Service.Models.HR
{
public class ProfileInsigniaHistory : EntityBase
{
public int Year { get; set; }
// [MaxLength(300)]
// public string? Level { get; set; }
[MaxLength(20)]
public string? No { get; set; }
[MaxLength(300)]
public string? Issue { get; set; }
[MaxLength(30)]
public string? VolumeNo { get; set; }
[MaxLength(30)]
public string? Volume { get; set; }
[MaxLength(30)]
public string? Section { get; set; }
[MaxLength(30)]
public string? Page { get; set; }
// public DateTime? DateStamp { get; set; }
public DateTime? DateAnnounce { get; set; }
// public DateTime? EndDate { get; set; }
// public int? Year { get; set; }
public DateTime? ReceiveDate { get; set; }
public string? InsigniaType { get; set; }
public string? Insignia { get; set; }
public Guid? InsigniaId { get; set; }
// public string? No { get; set; }
// public string? GazetteNo { get; set; }
// public string? Volume { get; set; }
// public string? Book { get; set; }
// public string? Section { get; set; }
// public string? Page { get; set; }
public virtual ProfileInsignia? ProfileInsignia { get; set; }
}
}

58
Models/HR/ProfileLeave.cs Normal file
View file

@ -0,0 +1,58 @@
using System.ComponentModel.DataAnnotations;
using BMA.EHR.Report.Service.Models;
namespace BMA.EHR.Profile.Service.Models.HR
{
public class ProfileLeave : EntityBase
{
// [Key]
// public int Id { get; set; }
// [Required]
// public int Order { get; set; }
public int Year { get; set; }
public double? RestCount { get; set; }
public double? RestDay { get; set; }
public double? SickCount { get; set; }
public double? SickDay { get; set; }
public double? AbsentCount { get; set; }
public double? AbsentDay { get; set; }
public double? LateCount { get; set; }
public double? LateDay { get; set; }
public double? OtherCount { get; set; }
public double? OtherDay { get; set; }
public double? PersonalCount { get; set; }
public double? PersonalDay { get; set; }
public double? MaternityCount { get; set; }
public double? MaternityDay { get; set; }
public double? WifeCount { get; set; }
public double? WifeDay { get; set; }
public double? OrdainCount { get; set; }
public double? OrdainDay { get; set; }
public double? MilitaryCount { get; set; }
public double? MilitaryDay { get; set; }
public double? StudyCount { get; set; }
public double? StudyDay { get; set; }
public double? AgencyCount { get; set; }
public double? AgencyDay { get; set; }
public double? CoupleCount { get; set; }
public double? CoupleDay { get; set; }
public double? TherapyCount { get; set; }
public double? TherapyDay { get; set; }
// public int? Year { get; set; }
// public double? Holiday { get; set; }
// public double? Sick { get; set; }
// public double? Government { get; set; }
// public double? Late { get; set; }
// public double? Other { get; set; }
// public double? Business { get; set; }
// public double? Maternity { get; set; }
// public double? HelpMaternity { get; set; }
// public double? Ordination { get; set; }
// public double? Study { get; set; }
// public double? International { get; set; }
// public double? Spouse { get; set; }
// public double? Rehabilitation { get; set; }
public virtual List<ProfileLeaveHistory> ProfileLeaveHistorys { get; set; } = new List<ProfileLeaveHistory>();
public virtual Profile? Profile { get; set; }
}
}

View file

@ -0,0 +1,53 @@
using System.ComponentModel.DataAnnotations;
using BMA.EHR.Report.Service.Models;
namespace BMA.EHR.Profile.Service.Models.HR
{
public class ProfileLeaveHistory : EntityBase
{
public int Year { get; set; }
public double? RestCount { get; set; }
public double? RestDay { get; set; }
public double? SickCount { get; set; }
public double? SickDay { get; set; }
public double? AbsentCount { get; set; }
public double? AbsentDay { get; set; }
public double? LateCount { get; set; }
public double? LateDay { get; set; }
public double? OtherCount { get; set; }
public double? OtherDay { get; set; }
public double? PersonalCount { get; set; }
public double? PersonalDay { get; set; }
public double? MaternityCount { get; set; }
public double? MaternityDay { get; set; }
public double? WifeCount { get; set; }
public double? WifeDay { get; set; }
public double? OrdainCount { get; set; }
public double? OrdainDay { get; set; }
public double? MilitaryCount { get; set; }
public double? MilitaryDay { get; set; }
public double? StudyCount { get; set; }
public double? StudyDay { get; set; }
public double? AgencyCount { get; set; }
public double? AgencyDay { get; set; }
public double? CoupleCount { get; set; }
public double? CoupleDay { get; set; }
public double? TherapyCount { get; set; }
public double? TherapyDay { get; set; }
// public int? Year { get; set; }
// public double? Holiday { get; set; }
// public double? Sick { get; set; }
// public double? Government { get; set; }
// public double? Late { get; set; }
// public double? Other { get; set; }
// public double? Business { get; set; }
// public double? Maternity { get; set; }
// public double? HelpMaternity { get; set; }
// public double? Ordination { get; set; }
// public double? Study { get; set; }
// public double? International { get; set; }
// public double? Spouse { get; set; }
// public double? Rehabilitation { get; set; }
public virtual ProfileLeave? ProfileLeave { get; set; }
}
}

View file

@ -0,0 +1,30 @@
using System;
using System.ComponentModel.DataAnnotations;
namespace BMA.EHR.Profile.Service.Models.HR
{
public class ProfileMotherHistory
{
[Key]
public int Id { get; set; }
[Required]
[MaxLength(50)]
public string Prefix { get; set; }
[Required]
[MaxLength(100)]
public string FirstName { get; set; }
[Required]
[MaxLength(100)]
public string LastName { get; set; }
[MaxLength(100)]
public string Career { get; set; }
public DateTime CreatedDate { get; set; } = DateTime.Now;
public Profile Profile { get; set; }
}
}

View file

@ -0,0 +1,26 @@
using System;
using System.ComponentModel.DataAnnotations;
using BMA.EHR.Report.Service.Models;
namespace BMA.EHR.Profile.Service.Models.HR
{
public class ProfileNopaid : EntityBase
{
// [Key]
// public int Id { get; set; }
// [Required]
// public int Order { get; set; }
// [MaxLength(20)]
// public string No { get; set; }
// [MaxLength(200)]
// public string Issuer { get; set; }
// [MaxLength(2000)]
// public string Detail { get; set; }
// public DateTime IssueDate { get; set; }
public DateTime? Date { get; set; }
public string? Detail { get; set; }
public string? Reference { get; set; }
public virtual List<ProfileNopaidHistory> ProfileNopaidHistorys { get; set; } = new List<ProfileNopaidHistory>();
public virtual Profile? Profile { get; set; }
}
}

View file

@ -0,0 +1,14 @@
using System;
using System.ComponentModel.DataAnnotations;
using BMA.EHR.Report.Service.Models;
namespace BMA.EHR.Profile.Service.Models.HR
{
public class ProfileNopaidHistory : EntityBase
{
public DateTime? Date { get; set; }
public string? Detail { get; set; }
public string? Reference { get; set; }
public virtual ProfileNopaid? ProfileNopaid { get; set; }
}
}

15
Models/HR/ProfileOther.cs Normal file
View file

@ -0,0 +1,15 @@
using System;
using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema;
using BMA.EHR.Report.Service.Models;
namespace BMA.EHR.Profile.Service.Models.HR
{
public class ProfileOther : EntityBase
{
public DateTime? Date { get; set; }
public string? Detail { get; set; }
public virtual List<ProfileOtherHistory> ProfileOtherHistorys { get; set; } = new List<ProfileOtherHistory>();
public Profile? Profile { get; set; }
}
}

View file

@ -0,0 +1,14 @@
using System;
using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema;
using BMA.EHR.Report.Service.Models;
namespace BMA.EHR.Profile.Service.Models.HR
{
public class ProfileOtherHistory : EntityBase
{
public DateTime? Date { get; set; }
public string? Detail { get; set; }
public ProfileOther? ProfileOther { get; set; }
}
}

18
Models/HR/ProfilePaper.cs Normal file
View file

@ -0,0 +1,18 @@
using BMA.EHR.Recruit.Service.Models.Documents;
using System.ComponentModel.DataAnnotations;
using BMA.EHR.Report.Service.Models;
namespace BMA.EHR.Profile.Service.Models.HR
{
public class ProfilePaper : EntityBase
{
// [Key]
// public int Id { get; set; }
[Required, MaxLength(255)]
public string? Detail { get; set; }
[Required, MaxLength(255)]
public string? CategoryName { get; set; }
public Document Document { get; set; }
public virtual Profile Profile { get; set; }
}
}

View file

@ -0,0 +1,33 @@
using System;
using System.ComponentModel.DataAnnotations;
namespace BMA.EHR.Profile.Service.Models.HR
{
public class ProfileRegistrationAddressHistory
{
[Key]
public int Id { get; set; }
[MaxLength(200)]
[Required]
public string Address { get; set; }
[Required]
public Guid SubDistrictId { get; set; }
[Required]
public Guid DistrictId { get; set; }
[Required]
public Guid ProvinceId { get; set; }
[MaxLength(5)]
[Required]
public string ZipCode { get; set; }
public DateTime CreatedDate { get; set; } = DateTime.Now;
public Profile Profile { get; set; }
}
}

View file

@ -0,0 +1,25 @@
using BMA.EHR.MetaData.Service.Models;
namespace BMA.EHR.Profile.Service.Models.HR
{
public class ProfileSalary : EntityBase
{
public DateTime? Date { get; set; }
public double? Amount { get; set; }
public double? PositionSalaryAmount { get; set; }
public Guid? OcId { get; set; }
public Guid? OrganizationShortNameId { get; set; }
public Guid? PositionId { get; set; }
public Guid? PosNoId { get; set; }
public Guid? PositionLineId { get; set; }
public Guid? PositionPathSideId { get; set; }
public Guid? PositionTypeId { get; set; }
public Guid? PositionLevelId { get; set; }
public Guid? PositionExecutiveId { get; set; }
public Guid? PositionExecutiveSideId { get; set; }
public string? SalaryClass { get; set; }
public string? SalaryRef { get; set; }
public virtual List<ProfileSalaryHistory> ProfileSalaryHistorys { get; set; } = new List<ProfileSalaryHistory>();
public virtual Profile? Profile { get; set; }
}
}

View file

@ -0,0 +1,34 @@
using BMA.EHR.MetaData.Service.Models;
namespace BMA.EHR.Profile.Service.Models.HR
{
public class ProfileSalaryHistory : EntityBase
{
public DateTime? Date { get; set; }
public double? Amount { get; set; }
public double? PositionSalaryAmount { get; set; }
public Guid? OcId { get; set; }
public string? Oc { get; set; }
public Guid? OrganizationShortNameId { get; set; }
public string? OrganizationShortName { get; set; }
public Guid? PositionId { get; set; }
public string? Position { get; set; }
public Guid? PosNoId { get; set; }
public string? PosNo { get; set; }
public Guid? PositionLineId { get; set; }
public string? PositionLine { get; set; }
public Guid? PositionPathSideId { get; set; }
public string? PositionPathSide { get; set; }
public Guid? PositionTypeId { get; set; }
public string? PositionType { get; set; }
public Guid? PositionLevelId { get; set; }
public string? PositionLevel { get; set; }
public Guid? PositionExecutiveId { get; set; }
public string? PositionExecutive { get; set; }
public Guid? PositionExecutiveSideId { get; set; }
public string? PositionExecutiveSide { get; set; }
public string? SalaryClass { get; set; }
public string? SalaryRef { get; set; }
public virtual ProfileSalary? ProfileSalary { get; set; }
}
}

View file

@ -0,0 +1,19 @@
using BMA.EHR.Profile.Service.Models;
using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema;
namespace BMA.EHR.Profile.Service.Models.HR
{
public class ProfileSalaryOrganization
{
[ForeignKey("ProfileSalary")]
public int Id { get; set; }
[MaxLength(200)]
public string Comment { get; set; }
// public OrganizationEntity Organization { get; set; }
// public ProfileSalary ProfileSalary { get; set; }
}
}

View file

@ -0,0 +1,19 @@
using BMA.EHR.MetaData.Service.Models;
using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema;
namespace BMA.EHR.Profile.Service.Models.HR
{
public class ProfileSalaryPosition
{
[ForeignKey("ProfileSalary")]
public int Id { get; set; }
[MaxLength(200)]
public string Comment { get; set; }
public Position Position { get; set; }
// public ProfileSalary ProfileSalary { get; set; }
}
}

View file

@ -0,0 +1,20 @@
using BMA.EHR.MetaData.Service.Models;
using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema;
namespace BMA.EHR.Profile.Service.Models.HR
{
public class ProfileSalaryPositionLevel
{
[ForeignKey("ProfileSalary")]
public int Id { get; set; }
[MaxLength(200)]
public string Comment { get; set; }
// public PositionLevel PositionLevel { get; set; }
// public ProfileSalary ProfileSalary { get; set; }
}
}

View file

@ -0,0 +1,19 @@
using BMA.EHR.Profile.Service.Models;
using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema;
namespace BMA.EHR.Profile.Service.Models.HR
{
public class ProfileSalaryPositionNumber
{
[ForeignKey("ProfileSalary")]
public int Id { get; set; }
[MaxLength(200)]
public string Comment { get; set; }
// public PositionNumberEntity PositionNumber { get; set; }
// public ProfileSalary ProfileSalary { get; set; }
}
}

View file

@ -0,0 +1,22 @@
using BMA.EHR.MetaData.Service.Models;
using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema;
namespace BMA.EHR.Profile.Service.Models.HR
{
public class ProfileSalaryPositionType
{
[ForeignKey("ProfileSalary")]
public int Id { get; set; }
[MaxLength(200)]
public string Comment { get; set; }
// public PositionType PositionType { get; set; }
// public ProfileSalary ProfileSalary { get; set; }
}
}

View file

@ -0,0 +1,34 @@
using System;
using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema;
using BMA.EHR.Report.Service.Models;
namespace BMA.EHR.Profile.Service.Models.HR
{
public class ProfileTraining : EntityBase
{
[MaxLength(100)]
public string? Subject { get; set; }
[Column(TypeName = "text")]
public string? Detail { get; set; }
[MaxLength(200)]
public string? Host { get; set; }
[MaxLength(200)]
public string? ClassName { get; set; }
[MaxLength(200)]
public string? Place { get; set; }
[MaxLength(50)]
public string? Reference { get; set; }
public DateTime? StartDate { get; set; }
public DateTime? EndDate { get; set; }
// public string? Course { get; set; }
// public DateTime? Start { get; set; }
// public DateTime? End { get; set; }
// public string? Location { get; set; }
// public string? Detail { get; set; }
// public string? Organize { get; set; }
// public string? Gen { get; set; }
public virtual List<ProfileTrainingHistory> ProfileTrainingHistorys { get; set; } = new List<ProfileTrainingHistory>();
public virtual Profile? Profile { get; set; }
}
}

View file

@ -0,0 +1,33 @@
using System;
using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema;
using BMA.EHR.Report.Service.Models;
namespace BMA.EHR.Profile.Service.Models.HR
{
public class ProfileTrainingHistory : EntityBase
{
[MaxLength(100)]
public string? Subject { get; set; }
[Column(TypeName = "text")]
public string? Detail { get; set; }
[MaxLength(200)]
public string? Host { get; set; }
[MaxLength(200)]
public string? ClassName { get; set; }
[MaxLength(200)]
public string? Place { get; set; }
[MaxLength(50)]
public string? Reference { get; set; }
public DateTime? StartDate { get; set; }
public DateTime? EndDate { get; set; }
// public string? Course { get; set; }
// public DateTime? Start { get; set; }
// public DateTime? End { get; set; }
// public string? Location { get; set; }
// public string? Detail { get; set; }
// public string? Organize { get; set; }
// public string? Gen { get; set; }
public virtual ProfileTraining? ProfileTraining { get; set; }
}
}