public List <IMappingProject> Get( string municipalityNumber, int officeId, MappingProjectState state, RelevantMappingProjectDeliveryType deliveryType, int year) { return(_repository.MappingProjects.Get(municipalityNumber, officeId, state, deliveryType, year)); }
public List <IMappingProject> Get( string municipalityNumber, int officeId, MappingProjectState state, RelevantMappingProjectDeliveryType deliveryType, int year) { IEnumerable <IMappingProject> projects = _dbContext.Set <DataAccess.Entities.KOS.MappingProject>() .Include(p => p.MappingProjectMunicipalityLinks).ThenInclude(mpm => mpm.Municipality) .Include(p => p.Office) .Include(p => p.Deliveries).ThenInclude(d => d.Type) .Include(p => p.ProjectActivities) .AsEnumerable() .Select(mp => Create(mp)) .Where(p => p.State != MappingProjectState.None); projects = projects.Where(d => d.Deliveries.Any()); if (municipalityNumber != null) { projects = projects.Where(p => p.Municipalities.FirstOrDefault(m => m.Number == municipalityNumber) != default); } if (officeId != default) { projects = projects.Where(p => p.Office.Id == officeId); } if (state != default) { projects = projects.Where(p => p.State == state); } if (deliveryType != default) { projects = projects.Where(p => p.Deliveries.FirstOrDefault(d => d.Type == deliveryType) != default); } if (year != default) { projects = projects.Where(p => p.Year == year); } return(projects.ToList()); }
public IActionResult Index( string municipalityNumber, int officeId, MappingProjectState state, RelevantMappingProjectDeliveryType deliveryType, int year) { MappingProjectViewModel model = new MappingProjectViewModel( _mappingProjectService.Get(municipalityNumber, officeId, state, deliveryType, year), _municipalityService.Get(), _offices.Get(), municipalityNumber, officeId, state, deliveryType, year); return(View("Views/MappingProjects/Geovekst/Projects/Projects.cshtml", model)); }
public MappingProjectViewModel( List <IMappingProject> mappingProjects, List <IMunicipality> municipalities, List <IOffice> offices, string selectedMunicipality, int selectedOffice, MappingProjectState selectedState, RelevantMappingProjectDeliveryType selectedDeliveryType, int selectedYear) { foreach (IMappingProject project in mappingProjects) { MappingProjects.Add(new ProjectListItem(project)); } Municipalities = municipalities; Municipalities.Sort((l, r) => l.Name.CompareTo(r.Name)); SelectedMunicipality = selectedMunicipality; Offices = offices; Offices.Sort((l, r) => l.Name.CompareTo(r.Name)); SelectedOffice = selectedOffice; foreach (var state in Enum.GetValues(typeof(MappingProjectState)).Cast <MappingProjectState>()) { States.Add(new KeyValuePair <MappingProjectState, string>(state, ProjectListItem.GetStateName(state, false))); } SelectedState = selectedState; foreach (var deliveryType in Enum.GetValues(typeof(RelevantMappingProjectDeliveryType)).Cast <RelevantMappingProjectDeliveryType>()) { DeliveryTypes.Add(new KeyValuePair <RelevantMappingProjectDeliveryType, string>(deliveryType, ProjectListItem.GetDeliveryTypeName(deliveryType, false))); } SelectedDeliveryType = selectedDeliveryType; const int startYear = 2010; Years = Enumerable.Range(startYear, DateTime.Now.Year - startYear + 1).Reverse().ToList(); SelectedYear = selectedYear; }
public static string GetDeliveryTypeName(RelevantMappingProjectDeliveryType type, bool defaultIsEmpty = true) { string name = null; switch (type) { case RelevantMappingProjectDeliveryType.OrthoPhoto: name = "Ortofoto"; break; case RelevantMappingProjectDeliveryType.Laser: name = "Laser"; break; case RelevantMappingProjectDeliveryType.Fkb: name = "FKB"; break; default: name = defaultIsEmpty ? "" : "Alle"; break; } return(name); }