namespace SimpleAdmin.Web.Core;
///
/// 提供员工端入职任务访问相关 HTTP 接口。
///
[ApiDescriptionSettings("Application", Tag = "员工入职填写")]
[Route("open/onboarding")]
[AllowAnonymous]
public class OnboardingPublicTaskController
{
private readonly IOnboardingPublicTaskService _service;
private readonly IFileService _fileService;
public OnboardingPublicTaskController(IOnboardingPublicTaskService service, IFileService fileService)
{
_service = service;
_fileService = fileService;
}
///
/// 通过 Token 获取员工端入职任务详情。
///
[HttpPost("detail")]
public async Task Detail([FromBody] OnboardingTaskPublicAccessInput input)
{
return await _service.Detail(input);
}
///
/// 保存候选人固定基础信息。
///
[HttpPost("save-employee-info")]
public async Task SaveEmployeeInfo([FromBody] OnboardingTaskPublicSaveInput input)
{
await _service.SaveEmployeeInfo(input);
}
///
/// 下载当前任务锁定的合同模板源文件。
///
[HttpGet("contract-source")]
public async Task ContractSource([FromQuery] OnboardingPublicContractSourceInput input)
{
var fileId = await _service.GetContractSourceFileId(input);
return await _fileService.Download(new BaseIdInput { Id = fileId });
}
}