public async Task <Tuple <int, IEnumerable <OrdenTrabajoRemisionDTO> > > ConsultarOrdenDeTrabajoParaRemisionPorFiltro(OrdenTrabajoRemisionFiltroDTO ordenTrabajoRemision, UsuarioDTO usuario) { try { return(await _ordenTrabajoRepositorio.ConsultarOrdenDeTrabajoParaRemisionPorFiltro(ordenTrabajoRemision, usuario)); } catch (Exception) { throw; } }
public async Task <IActionResult> ConsultarOrdenDeTrabajoParaRemisionPorFiltro([FromQuery] OrdenTrabajoRemisionFiltroDTO ordenTrabajoRemision) { try { var result = await _ordenTrabajoServicio.ConsultarOrdenDeTrabajoParaRemisionPorFiltro(ordenTrabajoRemision, new UsuarioDTO()); return(Ok(new { CantidadRegistros = result.Item1, Listado = result.Item2.ToList() })); } catch (Exception) { throw; } }
public async Task <Tuple <int, IEnumerable <OrdenTrabajoRemisionDTO> > > ConsultarOrdenDeTrabajoParaRemisionPorFiltro(OrdenTrabajoRemisionFiltroDTO ordenTrabajoRemision, UsuarioDTO usuario) { try { var query = _context.OrdenTrabajo.Where(ot => ot.Estado.Valor == CanonicalConstants.Estados.OrdenTrabajo.Remision && ot.RemisionId == null && (string.IsNullOrEmpty(ordenTrabajoRemision.Id) || ot.Id.ToString().Contains(ordenTrabajoRemision.Id)) && (string.IsNullOrEmpty(ordenTrabajoRemision.Cliente) || ot.Cliente.NickName.Contains(ordenTrabajoRemision.Cliente)) && (string.IsNullOrEmpty(ordenTrabajoRemision.Linea) || ot.Linea.Nombre.Contains(ordenTrabajoRemision.Linea)) && (string.IsNullOrEmpty(ordenTrabajoRemision.Herramienta) || ot.Herramienta.Nombre.Contains(ordenTrabajoRemision.Herramienta)) && (string.IsNullOrEmpty(ordenTrabajoRemision.Fecha) || ot.FechaRegistro.ToString().Contains(ordenTrabajoRemision.Fecha))); var result = query.Select(ot => new OrdenTrabajoRemisionDTO { Id = ot.Id, Guid = ot.Guid, Cliente = ot.Cliente.NickName, Linea = ot.Linea.Nombre, Herramienta = ot.Herramienta.Nombre, Fecha = ot.FechaRegistro, ObservacionRemision = ot.ObservacionRemision }).OrderByDescending(c => c.Fecha) .Skip(ordenTrabajoRemision.RegistrosOmitir()) .Take(ordenTrabajoRemision.CantidadRegistros) .ToList(); var cantidad = await query.CountAsync(); return(new Tuple <int, IEnumerable <OrdenTrabajoRemisionDTO> >(cantidad, result)); } catch (Exception) { throw; } }