public async Task <IActionResult> GetByFilter(devicefilter filter) { if (filter.FilterAll == null) { return(new OkObjectResult(new { Success = true, Message = "All list", Data = await _context.devices.ToListAsync() })); } else { var Data = await _context.devices.Where(x => x.device_name.Contains(filter.FilterAll) || x.device_model_sn.Contains(filter.FilterAll) || x.device_content.Contains(filter.FilterAll) || x.device_location.Contains(filter.FilterAll) || x.device_other.Contains(filter.FilterAll) || x.device_status.Contains(filter.FilterAll) || x.device_user_report.Contains(filter.FilterAll)).ToArrayAsync(); return(new OkObjectResult(new { Success = true, Message = "Ok", Data = Data })); } }
public async Task <IActionResult> GetByFilter(devicefilter filter) { if (string.IsNullOrEmpty(filter.FilterAll)) { var Data = await _context.devices.Where(x => ( (string.IsNullOrEmpty(filter.device_name) || x.device_name.Contains(filter.device_name)) && (string.IsNullOrEmpty(filter.device_model_sn) || x.device_name.Contains(filter.device_model_sn)) && (string.IsNullOrEmpty(filter.device_content) || x.device_name.Contains(filter.device_content)) && (string.IsNullOrEmpty(filter.device_location) || x.device_name.Contains(filter.device_location)) && (string.IsNullOrEmpty(filter.device_other) || x.device_name.Contains(filter.device_other)) && (filter.device_project_id <= 0 || x.device_project_id == filter.device_project_id) && (filter.user_manager_id <= 0 || x.user_manager_id == filter.user_manager_id) && (filter.status <= 0 || x.status == filter.status) && (string.IsNullOrEmpty(filter.device_status) || x.device_name.Contains(filter.device_status)) && (string.IsNullOrEmpty(filter.device_user_report) || x.device_name.Contains(filter.device_user_report)))).ToArrayAsync(); return(new OkObjectResult(new { Success = true, Message = "Ok", Data = Data })); } else { var Data = await _context.devices.Where(x => x.device_name.Contains(filter.FilterAll) || x.device_model_sn.Contains(filter.FilterAll) || x.device_content.Contains(filter.FilterAll) || x.device_location.Contains(filter.FilterAll) || x.device_other.Contains(filter.FilterAll) || x.device_status.Contains(filter.FilterAll) || x.device_user_report.Contains(filter.FilterAll)).ToArrayAsync(); return(new OkObjectResult(new { Success = true, Message = "Ok", Data = Data })); } }