public IEnumerable <Case> Find(CaseSearchModel caseQuery) { IQueryable <Case> cases = _gcsdb.Cases.AsQueryable(); DateTime beginDate; DateTime endDate; if (caseQuery.BeginDate.Length > 0) { if (DateTime.TryParse(caseQuery.BeginDate, out beginDate)) { String.Format("{0:yyyy/MM/dd}", beginDate); if (caseQuery.EndDate.Length == 0) { cases = _unitOfWork.Cases.Find(c => c.ResolvedDate >= beginDate).AsQueryable <Case>(); } else if (DateTime.TryParse(caseQuery.EndDate, out endDate)) { cases = _unitOfWork.Cases.Find(c => c.ResolvedDate >= beginDate && c.ResolvedDate <= endDate).AsQueryable <Case>(); } if (caseQuery.Customer > 0) { cases = cases.Where <Case>(c => c.Customer == caseQuery.Customer).AsQueryable <Case>(); } if (caseQuery.Employee > 0) { cases = cases.Where <Case>(c => c.AssignedTo == caseQuery.Employee).AsQueryable <Case>(); } } } return(cases); }
public IActionResult Get(string bDate, [FromQuery] CaseSearchModel querySearch) { //var allCases = _unitOfWork.Cases.GetAll(); IEnumerable <Case> cases; CaseServices caseServices = new CaseServices(_unitOfWork); querySearch.BeginDate = bDate; cases = caseServices.Find(querySearch); if (cases.Count() > 0) { return(Ok(Mapper.Map <IEnumerable <CaseViewModel> >(cases))); } else { return(NotFound()); } }