public IEnumerable <FilloggDetaljDTO> HamtaHistorikForOrganisationRegisterPeriod(int orgId, int regId, string periodForReg) { var historikLista = new List <FilloggDetaljDTO>(); var sorteradHistorikLista = new List <FilloggDetaljDTO>(); var delregisterLista = _portalRepository.GetSubdirsForDirectory(regId); //var forvLevId = _portalRepository.get foreach (var delregister in delregisterLista) { //Hämta forvantadleveransid för delregister och period var forvLevId = _portalRepository.GetExpextedDeliveryIdForSubDirAndPeriod(delregister.Id, periodForReg); var senasteLeverans = new Leverans(); //kan org rapportera per enhet för aktuellt delregister? => hämta senaste leverans per enhet var uppgiftsskyldighet = _portalRepository.GetUppgiftsskyldighetForOrganisationAndRegister(orgId, delregister.Id); if (uppgiftsskyldighet != null) { if (uppgiftsskyldighet.RapporterarPerEnhet) { var orgEnhetsList = _portalRepository.GetOrgUnitsForOrg(orgId); foreach (var orgenhet in orgEnhetsList) { senasteLeverans = _portalRepository.GetLatestDeliveryForOrganisationSubDirectoryPeriodAndOrgUnit(orgId, delregister.Id, forvLevId, orgenhet.Id); if (senasteLeverans != null) { AddHistorikListItem(senasteLeverans, historikLista); } } } else { senasteLeverans = _portalRepository.GetLatestDeliveryForOrganisationSubDirectoryAndPeriod(orgId, delregister.Id, forvLevId); if (senasteLeverans != null) { AddHistorikListItem(senasteLeverans, historikLista); } } } } if (historikLista.Count > 0) { sorteradHistorikLista = historikLista.OrderBy(x => x.Enhetskod).ThenBy(x => x.RegisterKortnamn).ThenByDescending(x => x.Id).ToList(); } return(sorteradHistorikLista); }