public void DeleteGeodatalovDataset(GeodatalovDataset geodatalovDataset) { _dbContext.GeodatalovDatasets.Remove(geodatalovDataset); //Todo, må slette deliveryDataset? _dbContext.SaveChanges(); }
public GeodatalovDataset NewGeodatalovDataset(GeodatalovDatasetViewModel geodatalovViewModel, string parentregister, string registername) { var geodatalovDataset = new GeodatalovDataset(); geodatalovDataset.SystemId = Guid.NewGuid(); geodatalovDataset.Name = geodatalovViewModel.Name; geodatalovDataset.Seoname = RegisterUrls.MakeSeoFriendlyString(geodatalovDataset.Name); geodatalovDataset.Description = geodatalovViewModel.Description; geodatalovDataset.SubmitterId = _registerService.GetOrganizationIdByUserName(); geodatalovDataset.OwnerId = geodatalovViewModel.OwnerId; geodatalovDataset.DateSubmitted = DateTime.Now; geodatalovDataset.Modified = DateTime.Now; geodatalovDataset.RegisterId = _registerService.GetRegisterId(parentregister, registername); geodatalovDataset.VersioningId = _registerItemService.NewVersioningGroup(geodatalovDataset); geodatalovDataset.VersionNumber = 1; geodatalovDataset.StatusId = "Submitted"; geodatalovDataset.Uuid = geodatalovViewModel.Uuid; geodatalovDataset.Notes = geodatalovViewModel.Notes; geodatalovDataset.SpecificUsage = geodatalovViewModel.SpecificUsage; geodatalovDataset.ProductSheetUrl = geodatalovViewModel.ProductSheetUrl; geodatalovDataset.PresentationRulesUrl = geodatalovViewModel.PresentationRulesUrl; geodatalovDataset.ProductSpecificationUrl = geodatalovViewModel.ProductSpecificationUrl; geodatalovDataset.MetadataUrl = geodatalovViewModel.MetadataUrl; geodatalovDataset.DistributionFormat = geodatalovViewModel.DistributionFormat; geodatalovDataset.DistributionUrl = geodatalovViewModel.DistributionUrl; geodatalovDataset.DistributionArea = geodatalovViewModel.DistributionArea; geodatalovDataset.WmsUrl = geodatalovViewModel.WmsUrl; geodatalovDataset.ThemeGroupId = geodatalovViewModel.ThemeGroupId; geodatalovDataset.DatasetThumbnail = geodatalovViewModel.DatasetThumbnail; geodatalovDataset.DokStatusId = "Proposal"; geodatalovDataset.UuidService = geodatalovViewModel.UuidService; GetDeliveryStatuses(geodatalovViewModel, geodatalovDataset); geodatalovDataset.InspireTheme = geodatalovViewModel.InspireTheme; geodatalovDataset.Dok = geodatalovViewModel.Dok; geodatalovDataset.NationalDataset = geodatalovViewModel.NationalDataset; geodatalovDataset.Plan = geodatalovViewModel.Plan; geodatalovDataset.Geodatalov = geodatalovViewModel.Geodatalov; geodatalovDataset.MetadataStatusId = _datasetDeliveryService.CreateDatasetDelivery(geodatalovViewModel.MetadataStatusId, geodatalovViewModel.MetadataNote); geodatalovDataset.ProductSpesificationStatusId = _datasetDeliveryService.CreateDatasetDelivery(geodatalovViewModel.WmsStatusId, geodatalovViewModel.WmsNote); geodatalovDataset.SosiDataStatusId = _datasetDeliveryService.CreateDatasetDelivery(geodatalovViewModel.WmsStatusId, geodatalovViewModel.WmsNote); geodatalovDataset.GmlDataStatusId = _datasetDeliveryService.CreateDatasetDelivery(geodatalovViewModel.WmsStatusId, geodatalovViewModel.WmsNote); geodatalovDataset.WmsStatusId = _datasetDeliveryService.CreateDatasetDelivery(geodatalovViewModel.WmsStatusId, geodatalovViewModel.WmsNote); geodatalovDataset.WfsStatusId = _datasetDeliveryService.CreateDatasetDelivery(geodatalovViewModel.WfsStatusId, geodatalovViewModel.WfsNote); geodatalovDataset.AtomFeedStatusId = _datasetDeliveryService.CreateDatasetDelivery(geodatalovViewModel.AtomFeedStatusId, geodatalovViewModel.AtomFeedNote); geodatalovDataset.CommonStatusId = _datasetDeliveryService.CreateDatasetDelivery(geodatalovViewModel.WmsStatusId, geodatalovViewModel.WmsNote); _dbContext.GeodatalovDatasets.Add(geodatalovDataset); _dbContext.SaveChanges(); return(geodatalovDataset); }
public GeodatalovDatasetStatusReport(GeodatalovDataset geodatalovDataset) { if (geodatalovDataset != null) { UuidGeodatalovDataset = geodatalovDataset.Uuid; InspireTheme = geodatalovDataset.InspireTheme; Dok = geodatalovDataset.Dok; NationalDataset = geodatalovDataset.NationalDataset; Plan = geodatalovDataset.Plan; Geodatalov = geodatalovDataset.Geodatalov; if (geodatalovDataset.MetadataStatus != null) { MetadataGeodatalovDataset = geodatalovDataset.MetadataStatus.StatusId; } if (geodatalovDataset.ProductSpesificationStatus != null) { ProductSpesificationGeodatalovDataset = geodatalovDataset.ProductSpesificationStatus.StatusId; } if (geodatalovDataset.SosiDataStatus != null) { SosiDataGeodatalovDataset = geodatalovDataset.SosiDataStatus.StatusId; } if (geodatalovDataset.GmlDataStatus != null) { GmlDataGeodatalovDataset = geodatalovDataset.GmlDataStatus.StatusId; } if (geodatalovDataset.WmsStatus != null) { WmsGeodatalovDataset = geodatalovDataset.WmsStatus.StatusId; } if (geodatalovDataset.WfsStatus != null) { WfsGeodatalovDataset = geodatalovDataset.WfsStatus.StatusId; } if (geodatalovDataset.AtomFeedStatus != null) { AtomFeedGeodatalovDataset = geodatalovDataset.AtomFeedStatus.StatusId; } if (geodatalovDataset.CommonStatus != null) { CommonStatusGeodatalovDataset = geodatalovDataset.CommonStatus.StatusId; } } }
private void NewGeodatalovDatasetFromKartkatalogen(GeodatalovDataset geodatalovDataset) { if (!_registerItemService.ItemNameIsValid(geodatalovDataset)) { return; } geodatalovDataset.SystemId = Guid.NewGuid(); geodatalovDataset.Seoname = RegisterUrls.MakeSeoFriendlyString(geodatalovDataset.Name); geodatalovDataset.SubmitterId = _registerService.GetOrganizationIdByUserName(); geodatalovDataset.DateSubmitted = DateTime.Now; geodatalovDataset.Modified = DateTime.Now; geodatalovDataset.RegisterId = _registerService.GetGeodatalovStatusRegisterId(); geodatalovDataset.VersioningId = _registerItemService.NewVersioningGroup(geodatalovDataset); geodatalovDataset.VersionNumber = 1; geodatalovDataset.StatusId = "Submitted"; geodatalovDataset.DokStatusId = "Proposal"; //GetDeliveryStatuses(inspireDatasetViewModel, inspireDataset); var metadataStatusId = _datasetDeliveryService.GetMetadataStatus(geodatalovDataset.Uuid); var productSpesificationStatusId = _registerService.GetDOKStatus(geodatalovDataset.ProductSpecificationUrl, true, "deficient"); var sosiDataStatusId = _registerService.GetSosiRequirements(geodatalovDataset.Uuid, "", true, "deficient"); var gmlDataStatusId = _registerService.GetGmlRequirements(geodatalovDataset.Uuid, true, "deficient"); var wmsStatusId = _datasetDeliveryService.GetDokDeliveryServiceStatus(geodatalovDataset.Uuid, true, "deficient", geodatalovDataset.UuidService); var wfsStatusId = _datasetDeliveryService.GetWfsStatus(geodatalovDataset.Uuid); var atomFeedStatusId = _datasetDeliveryService.GetAtomFeedStatus(geodatalovDataset.Uuid); var commonStatusId = _datasetDeliveryService.GetDownloadRequirementsStatus(wfsStatusId, atomFeedStatusId); geodatalovDataset.MetadataStatusId = _datasetDeliveryService.CreateDatasetDelivery(metadataStatusId); geodatalovDataset.ProductSpesificationStatusId = _datasetDeliveryService.CreateDatasetDelivery(productSpesificationStatusId); geodatalovDataset.SosiDataStatusId = _datasetDeliveryService.CreateDatasetDelivery(sosiDataStatusId); geodatalovDataset.GmlDataStatusId = _datasetDeliveryService.CreateDatasetDelivery(gmlDataStatusId); geodatalovDataset.WmsStatusId = _datasetDeliveryService.CreateDatasetDelivery(wmsStatusId); geodatalovDataset.WfsStatusId = _datasetDeliveryService.CreateDatasetDelivery(wfsStatusId); geodatalovDataset.AtomFeedStatusId = _datasetDeliveryService.CreateDatasetDelivery(atomFeedStatusId); geodatalovDataset.CommonStatusId = _datasetDeliveryService.CreateDatasetDelivery(commonStatusId); _dbContext.GeodatalovDatasets.Add(geodatalovDataset); _dbContext.GeodatalovDatasets.Add(geodatalovDataset); _dbContext.SaveChanges(); }
public GeodatalovDataset FetchGeodatalovDatasetFromKartkatalogen(string uuid) { var geodatalovDataset = new GeodatalovDataset(); var url = WebConfigurationManager.AppSettings["KartkatalogenUrl"] + "api/getdata/" + uuid; var c = new System.Net.WebClient { Encoding = System.Text.Encoding.UTF8 }; try { var json = c.DownloadString(url); dynamic data = Newtonsoft.Json.Linq.JObject.Parse(json); if (data != null) { geodatalovDataset.Name = data.Title; geodatalovDataset.Description = data.Abstract; geodatalovDataset.PresentationRulesUrl = data.LegendDescriptionUrl; geodatalovDataset.ProductSheetUrl = data.ProductSheetUrl; geodatalovDataset.ProductSpecificationUrl = data.ProductSpecificationUrl; geodatalovDataset.SpecificUsage = data.SpecificUsage; geodatalovDataset.Uuid = data.Uuid; geodatalovDataset.MetadataUrl = WebConfigurationManager.AppSettings["KartkatalogenUrl"] + "metadata/uuid/" + geodatalovDataset.Uuid; var thumbnails = data.Thumbnails; if (thumbnails != null && thumbnails.Count > 0) { geodatalovDataset.DatasetThumbnail = thumbnails[0].URL.Value; } geodatalovDataset.OwnerId = mapOrganizationNameToId( data.ContactOwner != null && data.ContactOwner.Organization != null ? data.ContactOwner.Organization.Value : "Kartverket"); geodatalovDataset.ThemeGroupId = AddTheme(data.KeywordsNationalTheme != null && data.KeywordsNationalTheme.Count > 0 ? data.KeywordsNationalTheme[0].KeywordValue.Value : "Annen"); if (data.ServiceUuid != null) { geodatalovDataset.UuidService = data.ServiceUuid; } if (data.ServiceDistributionUrlForDataset != null) { geodatalovDataset.WmsUrl = data.ServiceDistributionUrlForDataset; } if (data.DistributionDetails != null) { geodatalovDataset.DistributionUrl = data.DistributionDetails.URL; } if (data.UnitsOfDistribution != null) { geodatalovDataset.DistributionArea = data.UnitsOfDistribution.Value; } var distributionFormat = data.DistributionFormat; if (distributionFormat != null) { if (distributionFormat.Name != null) { geodatalovDataset.DistributionFormat = distributionFormat.Name.Value; } } foreach (var keyword in data.KeywordsNationalInitiative) { if (keyword.KeywordValue == "Det offentlige kartgrunnlaget") { geodatalovDataset.Dok = true; } else if (keyword.KeywordValue == "geodataloven") { geodatalovDataset.Geodatalov = true; } else if (keyword.KeywordValue == "Norge digitalt") { geodatalovDataset.NationalDataset = true; } else if (keyword.KeywordValue == "Inspire") { geodatalovDataset.InspireTheme = true; } else if (keyword.KeywordValue == "arealplanerPBL") { geodatalovDataset.Plan = true; } } } } catch (Exception e) { System.Diagnostics.Debug.WriteLine(e); System.Diagnostics.Debug.WriteLine(url); return(null); } return(geodatalovDataset); }
private GeodatalovDataset UpdateGeodatalovDataset(GeodatalovDataset originalDataset, GeodatalovDataset geodatalovDatasetFromKartkatalogen) { originalDataset.Name = geodatalovDatasetFromKartkatalogen.Name; originalDataset.Seoname = RegisterUrls.MakeSeoFriendlyString(originalDataset.Name); originalDataset.Description = geodatalovDatasetFromKartkatalogen.Description; originalDataset.OwnerId = geodatalovDatasetFromKartkatalogen.OwnerId; originalDataset.Modified = DateTime.Now; originalDataset.Uuid = geodatalovDatasetFromKartkatalogen.Uuid; originalDataset.Notes = geodatalovDatasetFromKartkatalogen.Notes; originalDataset.SpecificUsage = geodatalovDatasetFromKartkatalogen.SpecificUsage; originalDataset.ProductSheetUrl = geodatalovDatasetFromKartkatalogen.ProductSheetUrl; originalDataset.PresentationRulesUrl = geodatalovDatasetFromKartkatalogen.PresentationRulesUrl; originalDataset.ProductSpecificationUrl = geodatalovDatasetFromKartkatalogen.ProductSpecificationUrl; originalDataset.MetadataUrl = geodatalovDatasetFromKartkatalogen.MetadataUrl; originalDataset.DistributionFormat = geodatalovDatasetFromKartkatalogen.DistributionFormat; originalDataset.DistributionUrl = geodatalovDatasetFromKartkatalogen.DistributionUrl; originalDataset.DistributionArea = geodatalovDatasetFromKartkatalogen.DistributionArea; originalDataset.WmsUrl = geodatalovDatasetFromKartkatalogen.WmsUrl; originalDataset.ThemeGroupId = geodatalovDatasetFromKartkatalogen.ThemeGroupId; originalDataset.DatasetThumbnail = geodatalovDatasetFromKartkatalogen.DatasetThumbnail; originalDataset.UuidService = geodatalovDatasetFromKartkatalogen.UuidService; originalDataset.InspireTheme = geodatalovDatasetFromKartkatalogen.InspireTheme; originalDataset.Dok = geodatalovDatasetFromKartkatalogen.Dok; originalDataset.NationalDataset = geodatalovDatasetFromKartkatalogen.NationalDataset; originalDataset.Plan = geodatalovDatasetFromKartkatalogen.Plan; originalDataset.Geodatalov = geodatalovDatasetFromKartkatalogen.Geodatalov; if (originalDataset.MetadataStatus != null) { originalDataset.MetadataStatus.StatusId = _datasetDeliveryService.GetMetadataStatus(geodatalovDatasetFromKartkatalogen.Uuid, true, originalDataset.MetadataStatus.StatusId); } if (originalDataset.ProductSpesificationStatus != null) { originalDataset.ProductSpesificationStatus.StatusId = _registerService.GetDOKStatus(geodatalovDatasetFromKartkatalogen.ProductSpecificationUrl, true, originalDataset.ProductSpesificationStatus.StatusId); } if (originalDataset.SosiDataStatus != null) { originalDataset.SosiDataStatus.StatusId = _registerService.GetSosiRequirements(geodatalovDatasetFromKartkatalogen.Uuid, originalDataset.ProductSpecificationUrl, true, originalDataset.SosiDataStatus.StatusId); } if (originalDataset.GmlDataStatus != null) { originalDataset.GmlDataStatus.StatusId = _registerService.GetGmlRequirements(geodatalovDatasetFromKartkatalogen.Uuid, true, originalDataset.GmlDataStatus.StatusId); } if (originalDataset.WmsStatus != null) { originalDataset.WmsStatus.StatusId = _datasetDeliveryService.GetDokDeliveryServiceStatus(geodatalovDatasetFromKartkatalogen.Uuid, true, originalDataset.WmsStatus.StatusId, geodatalovDatasetFromKartkatalogen.UuidService); } if (originalDataset.WfsStatus != null) { originalDataset.WfsStatus.StatusId = _datasetDeliveryService.GetWfsStatus(geodatalovDatasetFromKartkatalogen.Uuid, true, originalDataset.WfsStatus.StatusId); } if (originalDataset.AtomFeedStatus != null) { originalDataset.AtomFeedStatus.StatusId = _datasetDeliveryService.GetAtomFeedStatus(geodatalovDatasetFromKartkatalogen.Uuid, true, originalDataset.AtomFeedStatus.StatusId); } if (originalDataset.CommonStatus != null) { originalDataset.CommonStatus.StatusId = _datasetDeliveryService.GetDownloadRequirementsStatus(originalDataset.WfsStatus?.StatusId, originalDataset.AtomFeedStatus?.StatusId); } _dbContext.Entry(originalDataset).State = EntityState.Modified; _dbContext.SaveChanges(); return(originalDataset); }
public GeodatalovDataset UpdateGeodatalovDatasetFromKartkatalogen(GeodatalovDataset originalDataset) { var geodatalovDatasetFromKartkatalogen = _metadataService.FetchGeodatalovDatasetFromKartkatalogen(originalDataset.Uuid); return(geodatalovDatasetFromKartkatalogen == null ? originalDataset : UpdateGeodatalovDataset(originalDataset, geodatalovDatasetFromKartkatalogen)); }
private void GetDeliveryStatuses(GeodatalovDatasetViewModel geodatalovDatasetViewModel, GeodatalovDataset geodatalovDataset) { geodatalovDatasetViewModel.MetadataStatusId = _datasetDeliveryService.GetMetadataStatus(geodatalovDataset.Uuid, true, geodatalovDatasetViewModel.MetadataStatusId); geodatalovDatasetViewModel.ProductSpesificationStatusId = _registerService.GetDOKStatus(geodatalovDataset.ProductSpecificationUrl, true, geodatalovDatasetViewModel.ProductSpesificationStatusId); geodatalovDatasetViewModel.SosiDataStatusId = _registerService.GetSosiRequirements(geodatalovDataset.Uuid, geodatalovDatasetViewModel.ProductSpecificationUrl, true, geodatalovDatasetViewModel.SosiDataStatusId); geodatalovDatasetViewModel.GmlDataStatusId = _registerService.GetGmlRequirements(geodatalovDataset.Uuid, true, geodatalovDatasetViewModel.GmlDataStatusId); geodatalovDatasetViewModel.WmsStatusId = _datasetDeliveryService.GetDokDeliveryServiceStatus(geodatalovDataset.Uuid, true, geodatalovDatasetViewModel.WmsStatusId, geodatalovDataset.UuidService); geodatalovDatasetViewModel.WfsStatusId = _datasetDeliveryService.GetWfsStatus(geodatalovDataset.Uuid, true, geodatalovDatasetViewModel.WfsStatusId); geodatalovDatasetViewModel.AtomFeedStatusId = _datasetDeliveryService.GetAtomFeedStatus(geodatalovDataset.Uuid, true, geodatalovDatasetViewModel.AtomFeedStatusId); geodatalovDatasetViewModel.CommonStatusId = _datasetDeliveryService.GetDownloadRequirementsStatus(geodatalovDatasetViewModel.WfsStatusId, geodatalovDatasetViewModel.AtomFeedStatusId); }
public void Update(GeodatalovDataset geodatalovDataset) { if (geodatalovDataset != null) { InspireTheme = geodatalovDataset.InspireTheme; Dok = geodatalovDataset.Dok; NationalDataset = geodatalovDataset.NationalDataset; Plan = geodatalovDataset.Plan; Geodatalov = geodatalovDataset.Geodatalov; if (geodatalovDataset.MetadataStatus != null) { MetadataStatusId = geodatalovDataset.MetadataStatus.StatusId; MetadataStatus = geodatalovDataset.MetadataStatus.Status; MetadataNote = geodatalovDataset.MetadataStatus.Note; MetadataAutoUpdate = geodatalovDataset.MetadataStatus.AutoUpdate; } if (geodatalovDataset.ProductSpesificationStatus != null) { ProductSpesificationStatusId = geodatalovDataset.ProductSpesificationStatus.StatusId; ProductSpesificationStatus = geodatalovDataset.ProductSpesificationStatus.Status; ProduktspesifikasjonNote = geodatalovDataset.ProductSpesificationStatus.Note; ProduktspesifikasjonAutoUpdate = geodatalovDataset.ProductSpesificationStatus.AutoUpdate; } if (geodatalovDataset.SosiDataStatus != null) { SosiDataStatusId = geodatalovDataset.SosiDataStatus.StatusId; SosiDataStatus = geodatalovDataset.SosiDataStatus.Status; SosiDataNote = geodatalovDataset.SosiDataStatus.Note; SosiDataAutoUpdate = geodatalovDataset.SosiDataStatus.AutoUpdate; } if (geodatalovDataset.GmlDataStatus != null) { GmlDataStatusId = geodatalovDataset.GmlDataStatus.StatusId; GmlDataStatus = geodatalovDataset.GmlDataStatus.Status; GmlDataNote = geodatalovDataset.GmlDataStatus.Note; GmlDataAutoUpdate = geodatalovDataset.GmlDataStatus.AutoUpdate; } if (geodatalovDataset.WmsStatus != null) { WmsStatusId = geodatalovDataset.WmsStatus.StatusId; WmsStatus = geodatalovDataset.WmsStatus.Status; WmsNote = geodatalovDataset.WmsStatus.Note; WmsAutoUpdate = geodatalovDataset.WmsStatus.AutoUpdate; } if (geodatalovDataset.WfsStatus != null) { WfsStatusId = geodatalovDataset.WfsStatus.StatusId; WfsStatus = geodatalovDataset.WfsStatus.Status; WfsNote = geodatalovDataset.WfsStatus.Note; WfsAutoUpdate = geodatalovDataset.WfsStatus.AutoUpdate; } if (geodatalovDataset.AtomFeedStatus != null) { AtomFeedStatusId = geodatalovDataset.AtomFeedStatus.StatusId; AtomFeedStatus = geodatalovDataset.AtomFeedStatus.Status; AtomFeedNote = geodatalovDataset.AtomFeedStatus.Note; AtomFeedAutoUpdate = geodatalovDataset.AtomFeedStatus.AutoUpdate; } if (geodatalovDataset.CommonStatus != null) { CommonStatusId = geodatalovDataset.CommonStatus.StatusId; CommonStatus = geodatalovDataset.CommonStatus.Status; CommonNote = geodatalovDataset.CommonStatus.Note; CommonAutoUpdate = geodatalovDataset.CommonStatus.AutoUpdate; } UpdateDataset(geodatalovDataset); } }
public GeodatalovDatasetViewModel(GeodatalovDataset item) { Update(item); }