This commit is contained in:
fuenmao
2026-08-26 15:30:31 +08:00
parent 9ae5e0bc54
commit db3d58bc99
16 changed files with 565 additions and 39 deletions
@@ -44,4 +44,35 @@ public class OnboardingPublicTaskController
var fileId = await _service.GetContractSourceFileId(input);
return await _fileService.Download(new BaseIdInput { Id = fileId });
}
/// <summary>
/// 通过任务 Token 内联输出候选人已上传的图片材料,供手机端预览。
/// </summary>
[HttpGet("material-source")]
public async Task<FileStreamResult> MaterialSource(
[FromQuery] OnboardingPublicMaterialSourceInput input)
{
var material = await _service.GetMaterialSource(input);
var source = await _fileService.Download(new BaseIdInput { Id = material.FileId })
?? throw Oops.Bah("上传文件不存在");
return new FileStreamResult(
source.FileStream,
GetImageContentType(material.FileSuffix));
}
/// <summary>
/// 根据图片扩展名设置浏览器可内联展示的响应类型。
/// </summary>
private static string GetImageContentType(string suffix)
{
return suffix?.TrimStart('.').ToLowerInvariant() switch
{
"png" => "image/png",
"jpg" or "jpeg" => "image/jpeg",
"gif" => "image/gif",
"bmp" => "image/bmp",
"webp" => "image/webp",
_ => "application/octet-stream"
};
}
}