|
@@ -19,7 +19,7 @@ namespace CheckServer.Controllers
|
|
|
public class CheckController : BaseController
|
|
|
{
|
|
|
/// <summary>
|
|
|
- /// 信号检测(支持DAMA、IBS、能量检测)(需要先上传文件)
|
|
|
+ /// 信号检测(支持DAMA、IBS、能量检测)(需要先上传文件、会根据信号带宽自动对文件进行滤波)
|
|
|
/// </summary>
|
|
|
/// <param name="dto">信号检测参数</param>
|
|
|
/// <returns></returns>
|
|
@@ -28,8 +28,23 @@ namespace CheckServer.Controllers
|
|
|
{
|
|
|
try
|
|
|
{
|
|
|
- await LogHelper.Info($"正在检测文件{dto.file1}");
|
|
|
+ await LogHelper.Info($"正在对文件{dto.file1}执行滤波");
|
|
|
dto.file1 = GetLocalFile(dto.file1);
|
|
|
+ var bandHz = dto.band * 1e3;
|
|
|
+ string outFile = Path.Combine(AppDomain.CurrentDomain.BaseDirectory, "wwwroot", $"{Path.GetFileNameWithoutExtension(dto.file1)}_filter.dat");
|
|
|
+ dto.file1 = await SigFilterHelper.SigFilter(new SigFilterDto()
|
|
|
+ {
|
|
|
+ BandHz = bandHz,
|
|
|
+ File = dto.file1,
|
|
|
+ FsHz = dto.fsHz,
|
|
|
+ TimeoutSeconds = dto.TimeoutSeconds,
|
|
|
+
|
|
|
+ }, outFile);
|
|
|
+ if (!File.Exists(dto.file1))
|
|
|
+ {
|
|
|
+ return Error<List<DetectResDto>>("滤波后的文件未能生成");
|
|
|
+ }
|
|
|
+ await LogHelper.Info($"正在检测文件{dto.file1}");
|
|
|
List<DetectResDto> list = new List<DetectResDto>();
|
|
|
List<DmcResult> listRes = new List<DmcResult>();
|
|
|
List<DmcResult> dmcResults = new List<DmcResult>();
|
|
@@ -203,8 +218,6 @@ namespace CheckServer.Controllers
|
|
|
}
|
|
|
|
|
|
|
|
|
-
|
|
|
-
|
|
|
/// <summary>
|
|
|
/// 对信号文件进行滤波处理(需要先上传文件)
|
|
|
/// </summary>
|
|
@@ -213,34 +226,29 @@ namespace CheckServer.Controllers
|
|
|
[HttpPost]
|
|
|
public async Task<AjaxResult<SigFilterResponseDto>> SigFilterProc(SigFilterDto dto)
|
|
|
{
|
|
|
- await LogHelper.Info($"正在滤波处理文件{dto.File}");
|
|
|
- return await Task.Run(async () =>
|
|
|
+ try
|
|
|
{
|
|
|
- try
|
|
|
+ await LogHelper.Info($"正在滤波处理文件{dto.File}");
|
|
|
+ dto.File = GetLocalFile(dto.File);
|
|
|
+ string outFile = Path.Combine(AppDomain.CurrentDomain.BaseDirectory, "wwwroot", Guid.NewGuid() + "filter.dat");
|
|
|
+ outFile = await SigFilterHelper.SigFilter(dto, outFile);
|
|
|
+ if (!File.Exists(outFile))
|
|
|
{
|
|
|
- dto.File = GetLocalFile(dto.File);
|
|
|
- string outFile = Path.Combine(AppDomain.CurrentDomain.BaseDirectory, "wwwroot", Guid.NewGuid() + "filter.dat");
|
|
|
- SigFilterHelper sigFilter = new SigFilterHelper();
|
|
|
- await sigFilter.SigFilter(dto, outFile);
|
|
|
- if (!File.Exists(outFile))
|
|
|
- {
|
|
|
- return Error<SigFilterResponseDto>("滤波后的文件未能生成");
|
|
|
- }
|
|
|
- else
|
|
|
- {
|
|
|
- await LogHelper.Info($"文件{Path.GetFileName(dto.File)}滤波完成");
|
|
|
-
|
|
|
- return Success(new SigFilterResponseDto() { File = Path.GetFileName(outFile) });
|
|
|
- }
|
|
|
-
|
|
|
+ return Error<SigFilterResponseDto>("滤波后的文件未能生成");
|
|
|
}
|
|
|
- catch (Exception ex)
|
|
|
+ else
|
|
|
{
|
|
|
- await LogHelper.Error($"文件{Path.GetFileName(dto.File)}滤波异常", ex);
|
|
|
- return Error<SigFilterResponseDto>($"信号滤波算法执行异常");
|
|
|
+ await LogHelper.Info($"文件{Path.GetFileName(dto.File)}滤波完成");
|
|
|
+
|
|
|
+ return Success(new SigFilterResponseDto() { File = Path.GetFileName(outFile) });
|
|
|
}
|
|
|
- });
|
|
|
|
|
|
+ }
|
|
|
+ catch (Exception ex)
|
|
|
+ {
|
|
|
+ await LogHelper.Error($"文件{Path.GetFileName(dto.File)}滤波异常", ex);
|
|
|
+ return Error<SigFilterResponseDto>($"信号滤波算法执行异常");
|
|
|
+ }
|
|
|
}
|
|
|
|
|
|
|