public IEnumerable <APILogHistory> GetLogHistory(APILogHistoryRequestDto req) { Expression <Func <APILogHistory, bool> > predicate = c => true; if (!string.IsNullOrEmpty(req.Method)) { predicate = predicate.And(p => p.Method == req.Method); } if (req.StatusCode != null) { predicate = predicate.And(p => p.StatusCode == req.StatusCode); } if (req.DateFrom != null && req.DateTo != null) { predicate = predicate.And(p => p.CreatedDate.Date >= req.DateFrom.Value.Date && p.CreatedDate.Date <= req.DateTo.Value.Date); } var data = this.GetMany(predicate).OrderByDescending(p => p.CreatedDate); return(data); }
public IActionResult GetHistoryLogRequest([FromBody] APILogHistoryRequestDto req) { var data = unitOfWork.APILogHistory.GetLogHistory(req); int pageSize = req.PageSize ?? configuration.GetValue <int>("PagingOptions:PageSize"); int pageNumber = req.PageNumber ?? configuration.GetValue <int>("PagingOptions:PageNumber"); APILogHistoryResponseDto response = new APILogHistoryResponseDto() { Data = mapper.Map <IEnumerable <APILogHistory>, IEnumerable <APILogHistoryDto> >(PagingList.Create(data, pageSize, pageNumber)), TotalRecord = data.Count(), IsSuccess = true, StatusCode = (int)HttpStatusCode.OK, ResponseMessage = "Request has been complited successfully" }; if (data == null) { return(NotFound(new BaseResponse(false, 404, "Previous request data was not found"))); } return(Ok(response)); }