补充注释

This commit is contained in:
fuenmao
2026-08-24 15:32:50 +08:00
parent b8b2d7e3fa
commit 22a7df5bec
84 changed files with 5913 additions and 45 deletions
@@ -1,43 +1,125 @@
namespace SimpleAdmin.Application;
/// <summary>
/// 查询任务合同变量参数。
/// </summary>
public class OnboardingTaskContractVariableQueryInput
{
/// <summary>
/// 入职任务 Id。
/// </summary>
[IdNotNull(ErrorMessage = "入职任务Id不能为空")]
public long TaskId { get; set; }
}
/// <summary>
/// 批量保存任务合同变量参数。
/// </summary>
public class OnboardingTaskContractVariableSaveInput
{
/// <summary>
/// 任务合同 Id。
/// </summary>
[IdNotNull(ErrorMessage = "任务合同Id不能为空")]
public long TaskContractId { get; set; }
/// <summary>
/// 待保存的字段或变量值集合。
/// </summary>
[global::System.ComponentModel.DataAnnotations.Required(ErrorMessage = "变量不能为空")]
public List<OnboardingTaskContractVariableValueInput> Values { get; set; } = new List<OnboardingTaskContractVariableValueInput>();
}
/// <summary>
/// 单个任务合同变量保存值。
/// </summary>
public class OnboardingTaskContractVariableValueInput
{
/// <summary>
/// 业务数据 Id。
/// </summary>
[IdNotNull(ErrorMessage = "变量Id不能为空")]
public long Id { get; set; }
/// <summary>
/// 任务合同变量最终值。
/// </summary>
public string VariableValue { get; set; }
}
/// <summary>
/// 单份任务合同及其变量输出。
/// </summary>
public class OnboardingTaskContractVariableOutput
{
/// <summary>
/// 任务合同 Id。
/// </summary>
public long TaskContractId { get; set; }
/// <summary>
/// 任务合同名称。
/// </summary>
public string ContractName { get; set; }
/// <summary>
/// 合同类型。
/// </summary>
public string ContractType { get; set; }
/// <summary>
/// 任务合同变量列表。
/// </summary>
public List<OnboardingTaskContractVariableItemOutput> Variables { get; set; } = new List<OnboardingTaskContractVariableItemOutput>();
}
/// <summary>
/// 单个任务合同变量输出。
/// </summary>
public class OnboardingTaskContractVariableItemOutput
{
/// <summary>
/// 业务数据 Id。
/// </summary>
public long Id { get; set; }
/// <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 VariableValue { get; set; }
/// <summary>
/// 是否必填、必传或必签。
/// </summary>
public bool Required { get; set; }
/// <summary>
/// 人事是否可以编辑。
/// </summary>
public bool HrEditable { get; set; }
/// <summary>
/// 当前用户是否可以编辑该变量。
/// </summary>
public bool Editable { get; set; }
}
}
@@ -1,7 +1,16 @@
namespace SimpleAdmin.Application;
/// <summary>
/// 定义任务合同变量维护业务能力。
/// </summary>
public interface IOnboardingTaskContractVariableService : ITransient
{
/// <summary>
/// 查询任务下全部合同及其变量当前值。
/// </summary>
Task<List<OnboardingTaskContractVariableOutput>> List(OnboardingTaskContractVariableQueryInput input);
/// <summary>
/// 保存允许人事编辑的任务合同变量值。
/// </summary>
Task Save(OnboardingTaskContractVariableSaveInput input);
}
}
@@ -10,6 +10,9 @@ public class OnboardingTaskContractVariableService : IOnboardingTaskContractVari
public OnboardingTaskContractVariableService()
=> _db = DbContext.DB;
/// <summary>
/// 查询任务下全部合同及其变量当前值。
/// </summary>
public async Task<List<OnboardingTaskContractVariableOutput>> List(
OnboardingTaskContractVariableQueryInput input)
{
@@ -68,6 +71,9 @@ public class OnboardingTaskContractVariableService : IOnboardingTaskContractVari
}).ToList();
}
/// <summary>
/// 保存允许人事编辑的任务合同变量值。
/// </summary>
public async Task Save(OnboardingTaskContractVariableSaveInput input)
{
var contract = await _db.Queryable<ObTaskContract>()
@@ -127,6 +133,7 @@ public class OnboardingTaskContractVariableService : IOnboardingTaskContractVari
row.VariableValue = inputValue.VariableValue;
row.SourceType = ContractVariableSourceType.HrInput;
// 标记为手工覆盖后,后续刷新员工或公司自动变量时保留该值。
row.IsManualOverride = true;
}
@@ -137,4 +144,3 @@ public class OnboardingTaskContractVariableService : IOnboardingTaskContractVari
}
}
}