diff --git a/LanSheng/LanShengAPI/Controllers/DeviceController.cs b/LanSheng/LanShengAPI/Controllers/DeviceController.cs index 3c1f7b4..eb23ada 100644 --- a/LanSheng/LanShengAPI/Controllers/DeviceController.cs +++ b/LanSheng/LanShengAPI/Controllers/DeviceController.cs @@ -103,11 +103,11 @@ namespace LanShengAPI.Controllers [HttpGet("DeviceErrorList")] - public async Task DeviceErrorList() + public async Task DeviceErrorList([FromQuery] string search = "") { try { - return Ok(await DeviceService.GetErrorList()); + return Ok(await DeviceService.GetErrorList(search)); } catch (BadRequestException ex) { diff --git a/LanSheng/LanShengInterface/IDeviceService.cs b/LanSheng/LanShengInterface/IDeviceService.cs index 3cd8a4f..dd07642 100644 --- a/LanSheng/LanShengInterface/IDeviceService.cs +++ b/LanSheng/LanShengInterface/IDeviceService.cs @@ -39,6 +39,6 @@ namespace LanShengInterface /// Task GetDeviceErrorReport(DeviceErrorReport report); - Task> GetErrorList(); + Task> GetErrorList(string search); } } diff --git a/LanSheng/LanShengService/DeviceService.cs b/LanSheng/LanShengService/DeviceService.cs index 65e5dc1..e5b3f16 100644 --- a/LanSheng/LanShengService/DeviceService.cs +++ b/LanSheng/LanShengService/DeviceService.cs @@ -1423,15 +1423,24 @@ namespace LanShengService return Task.FromResult(result); } - public async Task> GetErrorList() { - return await Db.Queryable() + public async Task> GetErrorList(string search) { + var _Query = Db.Queryable() + .WhereIF(!string.IsNullOrWhiteSpace(search), x => x.ErrCode!.Contains(search) || x.ErrMsg!.Contains(search)) + .Distinct() .Select(x => new DeviceError { ErrCode = x.ErrCode, ErrMsg = x.ErrMsg - }).Distinct() + }) .SplitTable(DateTime.Now.AddYears(-1), DateTime.Now) - .ToListAsync(); + .Distinct() + .Select(x => new DeviceError + { + ErrCode = x.ErrCode, + ErrMsg = x.ErrMsg + }); + var _Sql = _Query.ToSqlString(); + return await _Query.ToListAsync(); } #endregion }