namespace SimpleAdmin.Application;
///
/// 定义合同模板、DOCX 版本和自动识别变量的管理能力。
///
public interface IOnboardingContractTemplateService : ITransient
{
///
/// 分页查询合同模板主档案。
///
Task> Page(OnboardingContractTemplatePageInput input);
///
/// 查询合同模板详情。
///
Task Detail(BaseIdInput input);
///
/// 查询同时适用于指定公司、部门和全部已选岗位的启用合同模板。
///
Task> ListAvailable(OnboardingContractTemplateAvailableInput input);
///
/// 新增合同模板主档案。
///
Task Add(OnboardingContractTemplateAddInput input);
///
/// 编辑合同模板主档案。
///
Task Edit(OnboardingContractTemplateEditInput input);
///
/// 删除未被版本、入职模板或任务合同引用的模板。
///
Task Delete(BaseIdListInput input);
///
/// 分页查询指定合同模板的版本。
///
Task> VersionPage(OnboardingContractVersionPageInput input);
///
/// 新增合同模板 DOCX 版本并自动识别变量。
///
Task AddVersion(OnboardingContractVersionAddInput input);
///
/// 启用或停用合同模板版本。
///
Task SetVersionStatus(OnboardingContractVersionStatusInput input);
///
/// 修改合同模板版本的盖章配置,仅影响后续新建任务。
///
Task SetVersionSeals(OnboardingContractVersionSealInput input);
///
/// 删除未被入职模板或任务使用的合同版本。
///
Task DeleteVersion(BaseIdInput input);
///
/// 分页查询指定模板版本自动识别出的变量。
///
Task> VariablePage(OnboardingTemplateVariablePageInput input);
///
/// 编辑并确认模板版本中的变量定义。
///
Task EditVariable(OnboardingTemplateVariableEditInput input);
}