public async Task ShoulFindPrePlanningBySearchCriteriaSuccess() { PrePlanningSearchCriteria criteria = new PrePlanningSearchCriteria(); var result = await _sut.FindPrePlanningBySearchCriteria(criteria); Assert.NotNull(result); }
public async Task <IActionResult> IndexPagingAsync(PrePlanningSearchCriteria criteria) { try { var committees = await _ApiClient.GetQueryResultAsync <PrePlanningModel>("PrePlanning/FindPrePlanningBySearchCriteria", criteria.ToDictionary()); return(Json(new PaginationModel(committees.Items, committees.TotalCount, committees.PageSize, committees.PageNumber, null))); } catch (AuthorizationException ex) { throw ex; } catch (BusinessRuleException ex) { return(JsonErrorMessage(ex.Message)); } catch (Exception ex) { _logger.LogError(ex.ToString(), ex); return(JsonErrorMessage(Resources.TenderResources.ErrorMessages.UnexpectedError)); } }
public async Task FindPrePlanningBySearchCriteria_Returns_Data() { var _prePlanningSearchCriteria = new PrePlanningSearchCriteria() { AgencyCode = "022001000000" }; _claims = new Claim[2] { new Claim(IdentityConfigs.Claims.isSemiGovAgency, "1"), new Claim(IdentityConfigs.Claims.SelectedCR, "022001000000") }; _prePlanningController = _prePlanningController.WithIdentity(_claims); var result = await _prePlanningController.FindPrePlanningBySearchCriteria(_prePlanningSearchCriteria); Assert.NotNull(result); Assert.IsType <QueryResult <PrePlanningModel> >(result); Assert.NotEmpty(result.Items); Assert.True(result.TotalCount > 0); Assert.True(result.PageNumber > 0); Assert.True(result.PageSize > 0); }
public async Task <QueryResult <PrePlanningModel> > FindPrePlanningBySearchCriteria(PrePlanningSearchCriteria criteria) { var result = await _context.PrePlannings .Where(x => x.IsActive == true) .WhereIf(criteria.StatusId != 0, x => x.StatusId == criteria.StatusId) .WhereIf(!string.IsNullOrEmpty(criteria.ProjectName), x => x.ProjectName.Contains(criteria.ProjectName)) .WhereIf(criteria.YearQuarterId != 0, x => x.YearQuarterId == criteria.YearQuarterId) .WhereIf(!string.IsNullOrEmpty(criteria.AgencyCode), x => x.AgencyCode == criteria.AgencyCode) .WhereIf(criteria.ProjectTypeId != 0, x => x.PrePlanningProjectTypes.FirstOrDefault().ActivityId == criteria.ProjectTypeId) .SortBy(criteria.Sort, criteria.SortDirection) .Select(x => new PrePlanningModel { StatusId = x.StatusId, StatusName = x.Status.NameAr, EncyptedPrePlanningId = Util.Encrypt(x.PrePlanningId), AgencyCode = x.AgencyCode, AgencyName = x.Agency.NameArabic, InsideKSA = x.InsideKSA, ProjectNature = x.ProjectNature, IsDeleteRequested = x.IsDeleteRequested, ProjectName = x.ProjectName, DeleteRejectionReason = x.DeleteRejectionReason, ProjectDescription = x.ProjectDescription, Duration = x.Duration, DurationInDays = x.DurationInDays, DurationInMonths = x.DurationInMonths, DurationInYears = x.DurationInYears, CreatedBy = x.CreatedBy, YearQuarterId = x.YearQuarterId, YearQuarterName = x.YearQuarter.NameAr, Year = x.CreatedAt.Year.ToString(), ProjectTypesIDs = x.PrePlanningProjectTypes.Select(a => a.ActivityId).ToList(), ProjectTypesList = _context.Activities.Where(r => x.PrePlanningProjectTypes.Select(s => s.ActivityId).Any(d => d == r.ActivityId)).Select(r => new SelectListItem { Value = r.ActivityId.ToString(), Text = r.NameAr }).ToList() }).ToQueryResult(criteria.PageNumber, criteria.PageSize); return(result); }
public async Task <QueryResult <PrePlanningModel> > FindPrePlanningBySearchCriteria(PrePlanningSearchCriteria criteria) { if (User.IsInRole(RoleNames.supplier)) { criteria.StatusId = (int)Enums.PrePlanningStatus.Approved; } else { criteria.AgencyCode = User.UserAgency(); } return(await _prePlanningAppService.FindPrePlanningBySearchCriteria(criteria)); }
public async Task <QueryResult <PrePlanningModel> > FindPrePlanningBySearchCriteria(PrePlanningSearchCriteria criteria) { return(await _prePlanningQueries.FindPrePlanningBySearchCriteria(criteria)); }