using System.ComponentModel.DataAnnotations; namespace SimpleAdmin.Application; /// /// 正式员工档案分页查询参数。 /// public class OnboardingEmployeePageInput : BasePageInput { /// /// 员工姓名。 /// public string EmployeeName { get; set; } /// /// 手机号码。 /// public string Phone { get; set; } /// /// 入职业务公司 Id。 /// public long? CompanyId { get; set; } /// /// 入职业务部门 Id。 /// public long? DepartmentId { get; set; } /// /// 岗位 Id。 /// public long? PositionId { get; set; } /// /// 用工类型。 /// public string EmploymentType { get; set; } /// /// 转正状态。 /// public string RegularizationStatus { get; set; } /// /// 社保状态。 /// public string SocialInsuranceStatus { get; set; } /// /// 合同即将到期筛选(30天内到期或已到期)。 /// public bool? ContractExpiringSoon { get; set; } } /// /// 正式员工档案分页数据及当前查询条件下的维度统计。 /// public class OnboardingEmployeePageOutput : SqlSugarPagedList { /// /// 不受快捷维度筛选影响的员工维度统计。 /// public OnboardingEmployeeStatisticsOutput Statistics { get; set; } = new(); } /// /// 正式员工档案维度统计。 /// public class OnboardingEmployeeStatisticsOutput { /// /// 在册总数。 /// public int Total { get; set; } /// /// 正式员工数量。 /// public int FullTime { get; set; } /// /// 兼职员工数量。 /// public int PartTime { get; set; } /// /// 试用期待转正数量。 /// public int Probation { get; set; } /// /// 社保已缴纳数量。 /// public int SocialPurchased { get; set; } /// /// 合同即将到期数量(30天内到期或已到期)。 /// public int ExpiringContract { get; set; } } /// /// 编辑员工人事信息。 /// public class OnboardingEmployeeHrUpdateInput { [IdNotNull(ErrorMessage = "员工Id不能为空")] public long Id { get; set; } [Required(ErrorMessage = "请选择用工类型")] public string EmploymentType { get; set; } public string ContractNature { get; set; } [Required(ErrorMessage = "请选择社保状态")] public string SocialInsuranceStatus { get; set; } public string SocialInsuranceCompany { get; set; } } /// /// 员工转正办理参数。 /// public class OnboardingEmployeeRegularizeInput { [IdNotNull(ErrorMessage = "员工Id不能为空")] public long Id { get; set; } [Required(ErrorMessage = "请选择转正日期")] public DateTime? RegularizationDate { get; set; } public string Remark { get; set; } public List FileIds { get; set; } = new(); } /// /// 撤销员工转正参数。 /// public class OnboardingEmployeeRegularizationRevokeInput { [IdNotNull(ErrorMessage = "员工Id不能为空")] public long Id { get; set; } [Required(ErrorMessage = "请填写撤销原因")] public string Remark { get; set; } } /// /// 正式员工档案导出结果。 /// public class OnboardingEmployeeExportFile { /// /// Excel 文件字节。 /// public byte[] FileBytes { get; set; } /// /// 下载文件名。 /// public string FileName { get; set; } } /// /// 正式员工档案详情输出。 /// public class OnboardingEmployeeDetailOutput { /// /// 正式员工档案。 /// public ObEmployee Employee { get; set; } /// /// 审核通过时对应的完整入职登记表。 /// public ObTaskEmployeeInfo EmployeeInfo { get; set; } /// /// 入职任务主数据。 /// public ObOnboardingTask Task { get; set; } /// /// 任务合同列表。 /// public List Contracts { get; set; } = new List(); /// /// 审核建档时冻结的员工合同业务快照,包含常用字段及全部自定义变量。 /// public List ContractSnapshots { get; set; } = new List(); /// /// 员工入职时上传的身份证、学历证明、体检报告等资料。 /// public List Materials { get; set; } = new List(); /// /// 契约锁签署文件与签署日志组成的完整归档 ZIP 文件 Id。 /// public long? ElectronicSignArchiveFileId { get; set; } /// /// 提交与审核记录列表。 /// public List Audits { get; set; } = new List(); /// /// 员工转正及人事维护历史。 /// public List ChangeRecords { get; set; } = new List(); }