public InspireDataService UpdateInspireDataService(InspireDataServiceViewModel viewModel) { var inspireDataService = GetInspireDataServiceById(viewModel.SystemId.ToString()); inspireDataService.Modified = DateTime.Now; inspireDataService.Requests = viewModel.Requests; if (inspireDataService.InspireDeliveryMetadata != null) { inspireDataService.InspireDeliveryMetadata.StatusId = viewModel.MetadataStatusId; inspireDataService.InspireDeliveryMetadata.Note = viewModel.MetadataNote; inspireDataService.InspireDeliveryMetadata.AutoUpdate = viewModel.MetadataAutoUpdate; } if (inspireDataService.InspireDeliveryMetadataInSearchService != null) { inspireDataService.InspireDeliveryMetadataInSearchService.StatusId = viewModel.MetadataInSearchServiceStatusId; inspireDataService.InspireDeliveryMetadataInSearchService.Note = viewModel.MetadataInSearchServiceNote; inspireDataService.InspireDeliveryMetadataInSearchService.AutoUpdate = viewModel.MetadataInSearchAutoUpdate; } if (inspireDataService.InspireDeliveryServiceStatus != null) { inspireDataService.InspireDeliveryServiceStatus.StatusId = viewModel.ServiceStatusId; inspireDataService.InspireDeliveryServiceStatus.Note = viewModel.ServiceStatusNote; inspireDataService.InspireDeliveryServiceStatus.AutoUpdate = viewModel.MetadataAutoUpdate; } _dbContext.Entry(inspireDataService).State = EntityState.Modified; _dbContext.SaveChanges(); return(inspireDataService); }
//[Route("inspire-data-service/{registername}/{itemowner}/{itemname}/rediger")] public ActionResult Edit(InspireDataServiceViewModel viewModel) { try { var updatedInspireDataService = _inspireDatasetService.UpdateInspireDataService(viewModel); return(Redirect(updatedInspireDataService.DetailPageUrl())); } catch { return(View()); } }
//[Route("inspire-data-service/{registername}/{itemowner}/{itemname}/rediger")] public ActionResult Edit(string registername, string itemname) { var inspireDataService = _inspireDatasetService.GetInspireDataServiceByName(registername, itemname); if (inspireDataService == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } if (_accessControlService.HasAccessTo(inspireDataService)) { inspireDataService = _inspireDatasetService.UpdateInspireDataServiceFromKartkatalogen(inspireDataService); var viewModel = new InspireDataServiceViewModel(inspireDataService); ViewBags(viewModel); return(View(viewModel)); } throw new HttpException(401, "Access Denied"); }
private RegisterItemV2ViewModel GetRegisterItemById(string parentregister, string registername, string systemId, string inspireRegistryType) { var register = _registerService.GetRegister(parentregister, registername); if (register.IsInspireStatusRegister()) { RegisterItemV2ViewModel viewModel = null; if (string.IsNullOrWhiteSpace(inspireRegistryType) || inspireRegistryType == "dataset") { var inspireDataset = _inspireDatasetService.GetInspireDatasetById(systemId); if (inspireDataset != null) { viewModel = new InspireDatasetViewModel(inspireDataset); } else { viewModel = new InspireDataServiceViewModel(_inspireDatasetService.GetInspireDataServiceById(systemId)); } } else { viewModel = new InspireDataServiceViewModel(_inspireDatasetService.GetInspireDataServiceById(systemId)); } return(viewModel); } if (register.IsGeodatalovStatusRegister()) { return(new GeodatalovDatasetViewModel(_geodatalovDatasetService.GetGeodatalovDatasetById(systemId))); } if (register.IsDokMunicipal()) { return(new RegisterItemV2ViewModel(_registerItemService.GetRegisterItemBySystemId(Guid.Parse(systemId)))); } if (register.ContainedItemClassIsDataset()) { return(new DokDatasetViewModel(_registerItemService.GetDatasetById(Guid.Parse(systemId), register.systemId))); } if (register.ContainedItemClassIsDocument()) { return(new DocumentViewModel((Document)_registerItemService.GetRegisterItemBySystemId(Guid.Parse(systemId)))); } return(new RegisterItemV2ViewModel(_registerItemService.GetRegisterItemBySystemId(Guid.Parse(systemId)))); }
private void ViewBags(InspireDataServiceViewModel viewModel) { ViewBag.MetadataStatusId = _datasetDeliveryService.GetDokDeliveryStatusesAsSelectlist(viewModel.MetadataStatusId); ViewBag.MetadataInSearchServiceStatusId = _datasetDeliveryService.GetDokDeliveryStatusesAsSelectlist(viewModel.MetadataInSearchServiceStatusId); ViewBag.ServiceStatusId = _datasetDeliveryService.GetDokDeliveryStatusesAsSelectlist(viewModel.ServiceStatusId); }