using Ips.Library.Basic; using Ips.Library.DxpLib; using Ips.Library.Entity; using Ips.Library.Signals; using Ips.Library.WebApi; using Microsoft.AspNetCore.Mvc; using System; using System.Collections.Generic; using System.IO; using System.Linq; using System.Text; using System.Threading.Tasks; namespace Ips.Service.GpuServer { /// /// 参估接口 /// public class CgController : BaseController { [Autowired] private CgService CgService { get; set; }//Service单例注入方式1 //private CgService CgServiceAutowired { get; set; }//Service单例注入方式2 /// /// 开始参估 /// /// 参估参数 /// [HttpPost] public async Task> Start(CorParams dto) { try { if (!AppConst.UseCg) { return Error($"GPU服务[{AppConst.SvrNo}]没有启用参数估计功能!"); } var res = await CgService.StartAsync(dto); IpsLogger.Info($"参估计算完成,相关峰个数={res.Count(p => p.Snr >= dto.Snr)}"); return Success(res); } catch (Exception ex) { IpsLogger.Error($"GPU服务[{AppConst.SvrNo}]参数估计计算异常,{ex.Message}", ex); return Error($"GPU服务[{AppConst.SvrNo}]参数估计计算异常"); } } /// /// 停止参估 /// /// [HttpPost] public async Task Stop() { var res = await Task.Run(() => { IpsLogger.Info($"接收{RemoteIp}下发的停止参估任务"); try { IpsLogger.Info("参估已停止"); return Success(); } catch (Exception ex) { IpsLogger.Error($"停止参估异常", ex); return Error("停止参估异常"); } }); return res; } } }