livia-test/iBrain/Models/BuptIBrainServerHandler.cs
2025-03-28 14:31:53 +08:00

28 lines
1.1 KiB
C#

using System.IO;
using Livia.Models;
using Livia.Models.Data;
using Livia.Utility.DependencyInjection;
using Microsoft.Extensions.DependencyInjection;
using Microsoft.Extensions.Logging;
namespace iBrain.Models;
internal class BuptIBrainServerHandler(ILogger logger, LiviaHttpClientFactory liviaHttpClientFactory) : ServerHandler(logger, liviaHttpClientFactory)
{
private readonly ILogger _logger = logger;
public override Task<(bool success, string messageIndex)> SelectReportModule(string fileName, SelectReportModuleJson json, CancellationToken token)
{
try
{
IDataBlockLoader dataBlockLoader = ActivatorUtilities.GetServiceOrCreateInstance<IDataBlockLoader>(ServiceProviderFactory.ServiceProvider);
File.Copy(Path.Join(dataBlockLoader.CurrentDisplayingDataBlock?.ResultPath, "T1ImgCSAR", "report.pdf"), fileName, true);
return Task.FromResult((true, "DownloadReportSuccess"));
}
catch (Exception e)
{
_logger.LogError(e, "Error ReportModule");
return Task.FromResult((false, "ExportFailed"));
}
}
}