298 lines
7.3 KiB
C#
298 lines
7.3 KiB
C#
namespace SimpleAdmin.Application;
|
|
|
|
/// <summary>
|
|
/// 员工端通过 Token 访问任务参数。
|
|
/// </summary>
|
|
public class OnboardingTaskPublicAccessInput
|
|
{
|
|
/// <summary>
|
|
/// 员工填写链接中的明文 Token。
|
|
/// </summary>
|
|
[global::System.ComponentModel.DataAnnotations.Required]
|
|
public string Token { get; set; }
|
|
}
|
|
|
|
/// <summary>
|
|
/// 员工端获取合同源文件参数。
|
|
/// </summary>
|
|
public class OnboardingPublicContractSourceInput
|
|
{
|
|
/// <summary>
|
|
/// 员工填写链接中的明文 Token。
|
|
/// </summary>
|
|
[global::System.ComponentModel.DataAnnotations.Required]
|
|
public string Token { get; set; }
|
|
|
|
/// <summary>
|
|
/// 任务合同 Id。
|
|
/// </summary>
|
|
[IdNotNull(ErrorMessage = "任务合同Id不能为空")]
|
|
public long TaskContractId { get; set; }
|
|
|
|
/// <summary>
|
|
/// 当前生成文件的版本标识,仅用于区分手机下载缓存,不参与文件权限判断。
|
|
/// </summary>
|
|
public long? Version { get; set; }
|
|
}
|
|
|
|
/// <summary>
|
|
/// 员工端合同准备结果。
|
|
/// </summary>
|
|
public class OnboardingPublicContractPrepareOutput
|
|
{
|
|
/// <summary>
|
|
/// 当前已经生成并可下载的系统文件 Id,同时作为客户端下载版本号。
|
|
/// </summary>
|
|
public long FileId { get; set; }
|
|
|
|
/// <summary>
|
|
/// 合同文件生成时间;复用现有文件时返回原生成时间。
|
|
/// </summary>
|
|
public DateTime? GeneratedAt { get; set; }
|
|
}
|
|
|
|
/// <summary>
|
|
/// 员工端预览已上传材料参数。
|
|
/// </summary>
|
|
public class OnboardingPublicMaterialSourceInput
|
|
{
|
|
/// <summary>
|
|
/// 员工填写链接中的明文 Token。
|
|
/// </summary>
|
|
[global::System.ComponentModel.DataAnnotations.Required]
|
|
public string Token { get; set; }
|
|
|
|
/// <summary>
|
|
/// 任务材料记录 Id。
|
|
/// </summary>
|
|
[IdNotNull(ErrorMessage = "任务材料Id不能为空")]
|
|
public long TaskMaterialId { get; set; }
|
|
}
|
|
|
|
/// <summary>
|
|
/// 员工端保存固定基础信息参数。
|
|
/// </summary>
|
|
public class OnboardingTaskPublicSaveInput : ObTaskEmployeeInfo
|
|
{
|
|
/// <summary>
|
|
/// 员工填写链接中的明文 Token。
|
|
/// </summary>
|
|
[global::System.ComponentModel.DataAnnotations.Required]
|
|
public string Token { get; set; }
|
|
}
|
|
|
|
/// <summary>
|
|
/// 员工端动态字段展示信息。
|
|
/// </summary>
|
|
public class OnboardingPublicFormFieldOutput
|
|
{
|
|
/// <summary>
|
|
/// 动态字段 Id。
|
|
/// </summary>
|
|
public long FieldId { get; set; }
|
|
|
|
/// <summary>
|
|
/// 动态字段编码。
|
|
/// </summary>
|
|
public string FieldCode { get; set; }
|
|
|
|
/// <summary>
|
|
/// 动态字段名称。
|
|
/// </summary>
|
|
public string FieldName { get; set; }
|
|
|
|
/// <summary>
|
|
/// 字段或变量数据类型。
|
|
/// </summary>
|
|
public string DataType { get; set; }
|
|
|
|
/// <summary>
|
|
/// 可选项 JSON。
|
|
/// </summary>
|
|
public string OptionsJson { get; set; }
|
|
|
|
/// <summary>
|
|
/// 是否必填、必传或必签。
|
|
/// </summary>
|
|
public bool Required { get; set; }
|
|
}
|
|
|
|
/// <summary>
|
|
/// 员工端需要填写的合同员工变量。
|
|
/// </summary>
|
|
public class OnboardingPublicContractVariableOutput
|
|
{
|
|
/// <summary>
|
|
/// 合同变量编码。
|
|
/// </summary>
|
|
public string VariableCode { get; set; }
|
|
|
|
/// <summary>
|
|
/// 合同变量显示名称。
|
|
/// </summary>
|
|
public string VariableName { get; set; }
|
|
|
|
/// <summary>
|
|
/// 变量来源类型。
|
|
/// </summary>
|
|
public string VariableType { get; set; }
|
|
|
|
/// <summary>
|
|
/// 变量数据类型。
|
|
/// </summary>
|
|
public string DataType { get; set; }
|
|
|
|
/// <summary>
|
|
/// 变量默认值。
|
|
/// </summary>
|
|
public string DefaultValue { get; set; }
|
|
|
|
/// <summary>
|
|
/// 选择型变量的可选项 JSON。
|
|
/// </summary>
|
|
public string OptionsJson { get; set; }
|
|
|
|
/// <summary>
|
|
/// 是否必填。
|
|
/// </summary>
|
|
public bool Required { get; set; }
|
|
}
|
|
|
|
/// <summary>
|
|
/// 员工端材料上传要求。
|
|
/// </summary>
|
|
public class OnboardingPublicMaterialOutput
|
|
{
|
|
/// <summary>
|
|
/// 材料类型 Id。
|
|
/// </summary>
|
|
public long MaterialTypeId { get; set; }
|
|
|
|
/// <summary>
|
|
/// 材料名称。
|
|
/// </summary>
|
|
public string MaterialName { get; set; }
|
|
|
|
/// <summary>
|
|
/// 允许上传的文件扩展名。
|
|
/// </summary>
|
|
public string AllowedExtensions { get; set; }
|
|
|
|
/// <summary>
|
|
/// 允许上传的最大文件数量。
|
|
/// </summary>
|
|
public int MaxFileCount { get; set; }
|
|
|
|
/// <summary>
|
|
/// 单个文件最大大小,单位为 MB;为空表示不限制。
|
|
/// </summary>
|
|
public int? MaxFileSizeMb { get; set; }
|
|
|
|
/// <summary>
|
|
/// 是否必填、必传或必签。
|
|
/// </summary>
|
|
public bool Required { get; set; }
|
|
}
|
|
|
|
/// <summary>
|
|
/// 员工端已上传材料展示信息。
|
|
/// </summary>
|
|
public class OnboardingPublicTaskMaterialOutput
|
|
{
|
|
/// <summary>
|
|
/// 任务材料记录 Id。
|
|
/// </summary>
|
|
public long Id { get; set; }
|
|
|
|
/// <summary>
|
|
/// 材料类型 Id。
|
|
/// </summary>
|
|
public long MaterialTypeId { get; set; }
|
|
|
|
/// <summary>
|
|
/// 材料显示名称。
|
|
/// </summary>
|
|
public string MaterialName { get; set; }
|
|
|
|
/// <summary>
|
|
/// 系统文件 Id。
|
|
/// </summary>
|
|
public long FileId { get; set; }
|
|
|
|
/// <summary>
|
|
/// 用户上传时的原始文件名。
|
|
/// </summary>
|
|
public string FileName { get; set; }
|
|
|
|
/// <summary>
|
|
/// 文件扩展名,不包含点号。
|
|
/// </summary>
|
|
public string FileSuffix { get; set; }
|
|
|
|
/// <summary>
|
|
/// 格式化后的文件大小。
|
|
/// </summary>
|
|
public string FileSizeInfo { get; set; }
|
|
|
|
/// <summary>
|
|
/// 材料上传时间。
|
|
/// </summary>
|
|
public DateTime UploadedAt { get; set; }
|
|
|
|
/// <summary>
|
|
/// 材料审核状态。
|
|
/// </summary>
|
|
public string ReviewStatus { get; set; }
|
|
|
|
/// <summary>
|
|
/// 材料审核意见。
|
|
/// </summary>
|
|
public string ReviewRemark { get; set; }
|
|
}
|
|
|
|
/// <summary>
|
|
/// 员工端入职任务完整详情。
|
|
/// </summary>
|
|
public class OnboardingTaskPublicDetailOutput
|
|
{
|
|
/// <summary>
|
|
/// 入职任务主数据。
|
|
/// </summary>
|
|
public ObOnboardingTask Task { get; set; }
|
|
|
|
/// <summary>
|
|
/// 候选人固定基础信息。
|
|
/// </summary>
|
|
public ObTaskEmployeeInfo EmployeeInfo { get; set; }
|
|
|
|
/// <summary>
|
|
/// 任务合同列表。
|
|
/// </summary>
|
|
public List<ObTaskContract> Contracts { get; set; }
|
|
|
|
/// <summary>
|
|
/// 候选人已保存的动态字段值。
|
|
/// </summary>
|
|
public List<ObTaskFormValue> DynamicValues { get; set; }
|
|
|
|
/// <summary>
|
|
/// 员工端需要展示的动态字段。
|
|
/// </summary>
|
|
public List<OnboardingPublicFormFieldOutput> FormFields { get; set; }
|
|
|
|
/// <summary>
|
|
/// 员工端需要展示的材料要求。
|
|
/// </summary>
|
|
public List<OnboardingPublicMaterialOutput> MaterialRequirements { get; set; }
|
|
|
|
/// <summary>
|
|
/// 候选人已上传材料列表。
|
|
/// </summary>
|
|
public List<OnboardingPublicTaskMaterialOutput> Materials { get; set; }
|
|
|
|
/// <summary>
|
|
/// 合同中由员工填写的扩展变量。
|
|
/// </summary>
|
|
public List<OnboardingPublicContractVariableOutput> ContractVariables { get; set; }
|
|
}
|