public IEnumerable <OperationDTO> GetAllOperations(int productId, SortOperationState sortOrder) { IQueryable <Operation> operations = uow.OperationRepository.GetOperations(productId); operations = SortOperations(operations, sortOrder); return(mapper.Map <IEnumerable <OperationDTO> >(operations.AsEnumerable())); }
public IQueryable <Operation> SortOperations(IQueryable <Operation> operations, SortOperationState sortOrder) { switch (sortOrder) { case SortOperationState.UserAsc: operations = operations.OrderBy(s => s.AppUser.UserName); break; case SortOperationState.UserDesc: operations = operations.OrderByDescending(s => s.AppUser.UserName); break; case SortOperationState.TypeAsc: operations = operations.OrderBy(s => s.OperationType); break; case SortOperationState.TypeDesc: operations = operations.OrderByDescending(s => s.OperationType); break; case SortOperationState.AmountAsc: operations = operations.OrderBy(s => s.Amount); break; case SortOperationState.AmountDesc: operations = operations.OrderByDescending(s => s.Amount); break; case SortOperationState.DateAsc: operations = operations.OrderBy(s => s.DateTime); break; default: operations = operations.OrderByDescending(s => s.DateTime); break; } return(operations); }
//GET: api/Operation/id public IEnumerable <OperationDTO> GetOperations(int id, [FromQuery] SortOperationState sortOrder) { return(operationService.GetAllOperations(id, sortOrder)); }