protected override bool OnServerSideEvaluate() { String aeTitle = GetControlValidationValue(ControlToValidate); if (String.IsNullOrEmpty(aeTitle)) { ErrorMessage = ValidationErrors.AETitleCannotBeEmpty; return false; } if (OriginalAeTitle.Equals(aeTitle)) return true; var controller = new ServerPartitionConfigController(); var criteria = new ServerPartitionSelectCriteria(); criteria.AeTitle.EqualTo(aeTitle); IList<ServerPartition> list = controller.GetPartitions(criteria); if (list.Count > 0) { ErrorMessage = String.Format(ValidationErrors.AETitleIsInUse, aeTitle); return false; } return true; }
protected void Initialize() { _controller = new ServerPartitionConfigController(); ServerPartitionPanel.Controller = _controller; SetPageTitle(Titles.ServerPartitionsPageTitle); SetupEventHandlers(); }
protected void Page_Load(object sender, EventArgs e) { ServerPartitionConfigController partitionController = new ServerPartitionConfigController(); IList<ServerPartition> partitions = partitionController.GetAllPartitions(); long totalStudies = 0; foreach(ServerPartition partition in partitions) { totalStudies += partition.StudyCount; } TotalStudiesLabel.Text = totalStudies.ToString("N0"); _partitions = partitions; StudiesDataList.DataSource = _partitions; DataBind(); }
protected override void OnInit(EventArgs e) { base.OnInit(e); ServerPartition activePartition = null; if (!IsPostBack && !Page.IsAsync) { string patientID = Request["PatientID"]; string patientName = Request["PatientName"]; string partitionKey = Request["PartitionKey"]; string reason = Request["Reason"]; if (!string.IsNullOrEmpty(patientID) && !string.IsNullOrEmpty(patientName) && !string.IsNullOrEmpty(partitionKey)) { if (!string.IsNullOrEmpty(partitionKey)) { var controller = new ServerPartitionConfigController(); activePartition = controller.GetPartition(new ServerEntityKey("ServerPartition", partitionKey)); } } if (string.IsNullOrEmpty(reason)) { if (!string.IsNullOrEmpty(partitionKey)) { var controller = new ServerPartitionConfigController(); activePartition = controller.GetPartition(new ServerEntityKey("ServerPartition", partitionKey)); } } } ServerPartitionSelector.PartitionChanged += delegate(ServerPartition partition) { SearchPanel.ServerPartition = partition; SearchPanel.Reset(); }; ServerPartitionSelector.SetUpdatePanel(PageContent); if (activePartition != null) { ServerPartitionSelector.SelectedPartition = activePartition; } SetPageTitle(Titles.StudyIntegrityQueuePageTitle); }
//TODO: Consolidate this and DeleteStudy? public void DeleteSeries(Study study, IList <Series> series, string reason) { // Load the Partition ServerPartitionConfigController partitionConfigController = new ServerPartitionConfigController(); ServerPartition partition = partitionConfigController.GetPartition(study.ServerPartitionKey); List <string> seriesUids = new List <string>(); foreach (Series s in series) { seriesUids.Add(s.SeriesInstanceUid); } using (IUpdateContext ctx = PersistentStoreRegistry.GetDefaultStore().OpenUpdateContext(UpdateContextSyncMode.Flush)) { StudyEditorHelper.DeleteSeries(ctx, partition, study.StudyInstanceUid, seriesUids, reason); ctx.Commit(); } }
protected void Page_Load(object sender, EventArgs e) { var criteria = new ServerPartitionSelectCriteria(); criteria.AeTitle.SortAsc(0); if (!Thread.CurrentPrincipal.IsInRole(AuthorityTokens.Vfs.ViewPartitions)) criteria.ServerPartitionTypeEnum.EqualTo(ServerPartitionTypeEnum.Standard); var partitionController = new ServerPartitionConfigController(); IList<ServerPartition> partitions = partitionController.GetPartitions(criteria); long totalStudies = 0; foreach(ServerPartition partition in partitions) { totalStudies += partition.StudyCount; } TotalStudiesLabel.Text = totalStudies.ToString("N0"); _partitions = partitions; StudiesDataList.DataSource = _partitions; DataBind(); }
protected override void OnInit(EventArgs e) { base.OnInit(e); StudyController studyController = new StudyController(); ServerPartitionConfigController partitionConfigController = new ServerPartitionConfigController(); string serverae = Request.QueryString[QUERY_KEY_SERVER_AE]; if (!String.IsNullOrEmpty(serverae)) { // Load the Partition ServerPartitionSelectCriteria partitionCriteria = new ServerPartitionSelectCriteria(); partitionCriteria.AeTitle.EqualTo(serverae); IList<ServerPartition> list = partitionConfigController.GetPartitions(partitionCriteria); this.Move.Partition = list[0]; for (int i = 1;; i++) { string studyuid = Request.QueryString[String.Format("{0}{1}", QUERY_KEY_STUDY_INSTANCE_UID, i)]; if (!String.IsNullOrEmpty(studyuid)) { _uids.Add(studyuid, serverae); StudySelectCriteria studyCriteria = new StudySelectCriteria(); studyCriteria.StudyInstanceUid.EqualTo(studyuid); studyCriteria.ServerPartitionKey.EqualTo(list[0].GetKey()); IList<Study> studyList = studyController.GetStudies(studyCriteria); this.Move.StudyGridView.StudyList.Add(studyList[0]); this.Move.StudyGridView.Partition = this.Move.Partition; } else break; } } SetPageTitle(Titles.MoveStudiesPageTitle); }
//TODO: Consolidate this and DeleteStudy? public void DeleteSeries(Study study, IList<Series> series, string reason) { // Load the Partition var partitionConfigController = new ServerPartitionConfigController(); ServerPartition partition = partitionConfigController.GetPartition(study.ServerPartitionKey); var seriesUids = new List<string>(); foreach (Series s in series) { seriesUids.Add(s.SeriesInstanceUid); } using (IUpdateContext ctx = PersistentStoreRegistry.GetDefaultStore().OpenUpdateContext(UpdateContextSyncMode.Flush)) { StudyDeleteHelper.DeleteSeries(ctx, partition, study.StudyInstanceUid, seriesUids, reason); ctx.Commit(); } }
protected void Page_Load(object sender, EventArgs e) { IList<RestoreQueueStatusEnum> statusItems = RestoreQueueStatusEnum.GetAll(); int prevSelectedIndex = StatusFilter.SelectedIndex; StatusFilter.Items.Clear(); StatusFilter.Items.Add(new ListItem(SR.All, "All")); foreach (RestoreQueueStatusEnum s in statusItems) StatusFilter.Items.Add(new ListItem(ServerEnumDescription.GetLocalizedDescription(s), s.Lookup)); StatusFilter.SelectedIndex = prevSelectedIndex; DeleteItemButton.Roles = AuthorityTokens.RestoreQueue.Delete; ViewStudyDetailsButton.Roles = AuthorityTokens.Study.View; if (!IsPostBack && !Page.IsAsync) { string patientID = Server.UrlDecode(Request["PatientID"]); string patientName = Server.UrlDecode(Request["PatientName"]); string partitionKey = Request["PartitionKey"]; if (patientID != null && patientName != null && partitionKey != null) { var controller = new ServerPartitionConfigController(); ServerPartition = controller.GetPartition(new ServerEntityKey("ServerPartition", partitionKey)); PatientId.Text = patientID; PatientName.Text = patientName; RestoreQueueItemList.SetDataSource(); RestoreQueueItemList.Refresh(); } } }
protected void Page_Load(object sender, EventArgs e) { ServerPartitionConfigController partitionConfigController = new ServerPartitionConfigController(); string serverae = Request.QueryString[ImageServerConstants.QueryStrings.ServerAE]; if (!String.IsNullOrEmpty(serverae)) { // Load the Partition ServerPartitionSelectCriteria partitionCriteria = new ServerPartitionSelectCriteria(); partitionCriteria.AeTitle.EqualTo(serverae); IList<ServerPartition> list = partitionConfigController.GetPartitions(partitionCriteria); Partition = list[0]; SeriesGridView.Partition = Partition; string studyuid = Request.QueryString[ImageServerConstants.QueryStrings.StudyUID]; if (!String.IsNullOrEmpty(studyuid) || Partition != null) { StudyController studyController = new StudyController(); StudySelectCriteria criteria = new StudySelectCriteria(); criteria.StudyInstanceUid.EqualTo(studyuid); criteria.ServerPartitionKey.EqualTo(Partition.Key); IList<Study> studyList = studyController.GetStudies(criteria); SelectedStudy = studyList[0]; SeriesGridView.Study = studyList[0]; PatientSummary.PatientSummary = PatientSummaryAssembler.CreatePatientSummary(studyList[0]); StudySummary.Study = studyList[0]; } } if (DHCPFilter.Items.Count == 0) { DHCPFilter.Items.Add(new ListItem(SR.All)); DHCPFilter.Items.Add(new ListItem(SR.DHCP)); DHCPFilter.Items.Add(new ListItem(SR.NoDHCP)); } IList<DeviceTypeEnum> deviceTypes = DeviceTypeEnum.GetAll(); if (DeviceTypeFilter.Items.Count == 0) { foreach (DeviceTypeEnum t in deviceTypes) { DeviceTypeFilter.Items.Add(new ListItem(ServerEnumDescription.GetLocalizedDescription(t), t.Lookup)); } } else { ListItem[] typeItems = new ListItem[DeviceTypeFilter.Items.Count]; DeviceTypeFilter.Items.CopyTo(typeItems, 0); DeviceTypeFilter.Items.Clear(); int count = 0; foreach (DeviceTypeEnum t in deviceTypes) { DeviceTypeFilter.Items.Add(new ListItem(ServerEnumDescription.GetLocalizedDescription(t), t.Lookup)); DeviceTypeFilter.Items[count].Selected = typeItems[count].Selected; count++; } } LoadSeries(); LoadDevices(); DataBind(); }
protected override void OnInit(EventArgs e) { base.OnInit(e); SearchPanel.EnclosingPage = this; RefreshTimer.AutoDisabled += RefreshTimer_AutoDisabled; ConfirmRescheduleDialog.Confirmed += ConfirmationContinueDialog_Confirmed; ScheduleWorkQueueDialog.WorkQueueUpdated += ScheduleWorkQueueDialog_OnWorkQueueUpdated; ScheduleWorkQueueDialog.OnShow += DisableRefresh; ScheduleWorkQueueDialog.OnHide += () => RefreshTimer.Reset(AutoRefresh); ResetWorkQueueDialog.WorkQueueItemReseted += ResetWorkQueueDialog_WorkQueueItemReseted; ResetWorkQueueDialog.OnShow += DisableRefresh; ResetWorkQueueDialog.OnHide += () => RefreshTimer.Reset(AutoRefresh); DeleteWorkQueueDialog.WorkQueueItemDeleted += DeleteWorkQueueDialog_WorkQueueItemDeleted; DeleteWorkQueueDialog.OnShow += DisableRefresh; DeleteWorkQueueDialog.OnHide += () => RefreshTimer.Reset(AutoRefresh); InformationDialog.OnShow += DisableRefresh; InformationDialog.OnHide += () => RefreshTimer.Reset(AutoRefresh); if (!Page.IsPostBack) { AutoRefresh = false; RefreshTimer.Enabled = false; RefreshTimer.Interval = (int)TimeSpan.FromSeconds(Math.Max(WorkQueueSettings.Default.NormalRefreshIntervalSeconds, 5)).TotalMilliseconds;// min refresh rate: every 5 sec RefreshRateTextBox.Text = TimeSpan.FromMilliseconds(RefreshTimer.Interval).TotalSeconds.ToString(CultureInfo.InvariantCulture); } string patientID = string.Empty; string patientName = string.Empty; string processorID = string.Empty; ServerPartition activePartition = null; if (!IsPostBack && !Page.IsAsync) { patientID = Server.UrlDecode(Request["PatientID"]); patientName = Server.UrlDecode(Request["PatientName"]); string partitionKey = Request["PartitionKey"]; processorID = Request["ProcessorID"]; if (!string.IsNullOrEmpty(partitionKey)) { var controller = new ServerPartitionConfigController(); activePartition = controller.GetPartition(new ServerEntityKey("ServerPartition", partitionKey)); } } ServerPartitionSelector.PartitionChanged += delegate(ServerPartition partition) { SearchPanel.ServerPartition = partition; SearchPanel.Reset(); }; ServerPartitionSelector.SetUpdatePanel(PageContent); SearchPanel.PatientNameFromUrl = patientName; SearchPanel.PatientIDFromUrl = patientID; SearchPanel.ProcessingServerFromUrl = processorID; if (activePartition != null) { ServerPartitionSelector.SelectedPartition = activePartition; } SetPageTitle(Titles.WorkQueuePageTitle); }
protected override void OnInit(EventArgs e) { base.OnInit(e); IList<ServiceLockTypeEnum> types = ServiceLockTypeEnum.GetAll(); TypeDropDownList.Items.Add(new ListItem(SR.All)); foreach (ServiceLockTypeEnum t in types) { TypeDropDownList.Items.Add(new ListItem(ServerEnumDescription.GetLocalizedDescription(t), t.Lookup)); } EditServiceLockDialog.ServiceLockUpdated += AddEditServiceLockDialog_ServiceLockUpdated; // setup child controls GridPagerTop.InitializeGridPager(SR.GridPagerServiceSingleItem, SR.GridPagerServiceMultipleItems, ServiceLockGridViewControl.TheGrid, () => ServiceLockGridViewControl.ServiceLocks != null ? ServiceLockGridViewControl.ServiceLocks.Count : 0, ImageServerConstants.GridViewPagerPosition.Top); ServiceLockGridViewControl.Pager = GridPagerTop; StatusFilter.Items.Add(new ListItem(SR.All)); StatusFilter.Items.Add(new ListItem(SR.Enabled)); StatusFilter.Items.Add(new ListItem(SR.Disabled)); var fileSystemController = new FileSystemsConfigurationController(); IList<Filesystem> fileSystems = fileSystemController.GetAllFileSystems(); foreach(Filesystem fs in fileSystems) { FileSystemFilter.Items.Add(new ListItem(fs.Description, fs.Key.ToString())); } var controller = new ServerPartitionConfigController(); IList<ServerPartition> partitions = controller.GetAllPartitions(); foreach (var partition in partitions) { PartitionFilter.Items.Add(new ListItem(partition.AeTitle, partition.Key.ToString())); } ConfirmEditDialog.Confirmed += ConfirmEditDialog_Confirmed; }