private async void FindDiagnosis() { var panelgradient = new LinearGradientBrush() { StartPoint = new Point(0.5, 0), EndPoint = new Point(0.5, 1) }; panelgradient.GradientStops.Add(new GradientStop() {Color = Color.FromArgb(255, 255, 255, 255), Offset = 0}); panelgradient.GradientStops.Add(new GradientStop() {Color = Color.FromArgb(198, 250, 225, 4), Offset = 1}); var panelAllDiagnosis = new DockPanel { Background = panelgradient, Margin = new Thickness(15, 15, 15, 15), Visibility = Visibility.Hidden }; var labelstartdiagnosis = new Label { Content = "Діагнози", Foreground = Brushes.MediumBlue, FontWeight = FontWeights.Bold }; DockPanel.SetDock(labelstartdiagnosis, Dock.Top); panelAllDiagnosis.Children.Add(labelstartdiagnosis); DockPanel.SetDock(panelAllDiagnosis, Dock.Top); PatientPanel.Children.Add(panelAllDiagnosis); foreach (var disease in _listPatientDiagnosis.Where(disease => CheckBoxViewDiagnosisDepartment.IsChecked == null || (!CheckBoxViewDiagnosisDepartment.IsChecked.Value || disease.IdDepartment == Worker.IdDepartment))) { panelAllDiagnosis.Visibility = Visibility.Visible; if (disease.IdWorker == "0" && disease.Snp == "0") { WpfMessageBox.Show("Відсутнє підключення до сервера. \n Зверніться до адміністратора!"); Close(); } var paneldiagnosis1 = new DockPanel { Background = Brushes.LightSkyBlue, Margin = new Thickness(15, 15, 15, 15) }; var paneldiagnosis = new DockPanel { Background = Brushes.WhiteSmoke, Margin = new Thickness(3, 3, 3, 3) }; var photoDiagnosisScrollViewer = new ScrollViewer { VerticalScrollBarVisibility = ScrollBarVisibility.Disabled, HorizontalScrollBarVisibility = ScrollBarVisibility.Auto, CanContentScroll = true }; var paneldiagnosisphoto = new DockPanel { Background = Brushes.WhiteSmoke, Margin = new Thickness(3, 3, 3, 3) }; var disease2 = disease; foreach (var loadPhotoDiagnosis in LoadPhotoDiagnosis.PhotoDiagnosis.Where(loadPhotoDiagnosis => loadPhotoDiagnosis.IdDiagnosis == disease2.IdDiagnosis)) { var photo = await LoadPhoto(loadPhotoDiagnosis.Photo); var buttonPhotoDiagnosis = new Button { Background = new ImageBrush(photo), Foreground = Brushes.MediumBlue, FontWeight = FontWeights.Bold, Content = " ", Height = 160, Width = 160, HorizontalAlignment = HorizontalAlignment.Left, }; buttonPhotoDiagnosis.Click += (o, args) => { var form = new PhotoInfo(photo); form.Show(); }; DockPanel.SetDock(paneldiagnosisphoto, Dock.Top); paneldiagnosisphoto.Children.Add(buttonPhotoDiagnosis); } var labeldiagnosis = new Label { Content = string.Format( "Захворювання: {0} \n Діагноз: {1} \n Лікування: {2} \n Дата встановлення захворювання: {3}\n Лікар: {4}", disease.NameDisease, disease.Disease, disease.Treatment, disease.DateOnset, disease.Snp), Margin = new Thickness(10, 10, 10, 10), }; var panelallprocedure = new DockPanel { Background = Brushes.LightSkyBlue, Margin = new Thickness(0, 0, 0, 0), }; var intProcedure = 0; foreach (var procedure in Procedure.ListProcedure) { if (procedure.IdDiagnosis != disease.IdDiagnosis) continue; var panelprocedure1 = new DockPanel { Background = new SolidColorBrush(Color.FromRgb(244, 244, 40)), Margin = new Thickness(5, 5, 5, 5), }; var panelprocedure = new DockPanel { Background = Brushes.LightSteelBlue, Margin = new Thickness(3, 3, 3, 3), }; var photoProcedureScrollViewer = new ScrollViewer { VerticalScrollBarVisibility = ScrollBarVisibility.Disabled, HorizontalScrollBarVisibility = ScrollBarVisibility.Auto, CanContentScroll = true }; var panelprocedurephoto = new DockPanel { Background = Brushes.WhiteSmoke, Margin = new Thickness(3, 3, 3, 3) }; foreach (var loadPhotoProcedure in LoadPhotoProcedure.PhotoProcedures) { if (loadPhotoProcedure.IdProcedure != procedure.IdProcedure) { var photo = await LoadPhoto(loadPhotoProcedure.Photo); var buttonPhotoProcedure = new Button { Background = new ImageBrush(photo), Foreground = Brushes.MediumBlue, FontWeight = FontWeights.Bold, Content = " ", Height = 160, Width = 160, HorizontalAlignment = HorizontalAlignment.Left, }; buttonPhotoProcedure.Click += (o, args) => { var form = new PhotoInfo(photo); form.Show(); }; DockPanel.SetDock(buttonPhotoProcedure, Dock.Left); panelprocedurephoto.Children.Add(buttonPhotoProcedure); } } var labelprocedure = new Label { Content = string.Format( "Процедура: {0} \n Результат: {1} \n Дата: {2} \n Лікар: {3}", procedure.NameProcedure, procedure.Result, procedure.DateOnset, procedure.Snp), Margin = new Thickness(10, 10, 10, 10), }; intProcedure = intProcedure + 1; photoProcedureScrollViewer.Content = panelprocedurephoto; photoProcedureScrollViewer.PreviewMouseWheel += (o, args) => { if (args.Delta > 0) { ScrollViewerFull.ScrollToVerticalOffset(ScrollViewerFull.VerticalOffset - 48); } else { ScrollViewerFull.ScrollToVerticalOffset(ScrollViewerFull.VerticalOffset + 48); } }; DockPanel.SetDock(panelprocedurephoto, Dock.Top); DockPanel.SetDock(panelprocedure1, Dock.Top); DockPanel.SetDock(panelprocedure, Dock.Top); DockPanel.SetDock(labelprocedure, Dock.Top); panelprocedure.Children.Add(labelprocedure); panelprocedure.Children.Add(photoProcedureScrollViewer); panelprocedure1.Children.Add(panelprocedure); panelallprocedure.Children.Add(panelprocedure1); var procedure1 = procedure; labelprocedure.MouseDoubleClick += (o, args) => { var form = new WorkerInfo(procedure1.IdWorker); form.ShowDialog(); }; } if (intProcedure != 0) { var gradient = new LinearGradientBrush {StartPoint = new Point(0, 0), EndPoint = new Point(1, 1)}; var buttonopenprocedure = new Button { Background = gradient, Foreground = Brushes.MediumBlue, FontWeight = FontWeights.Bold, Content = "Переглянути процедури", Height = 20, Width = 450 }; gradient.GradientStops.Add(new GradientStop { Color = Color.FromArgb(255, 249, 249, 200), Offset = 0 }); gradient.GradientStops.Add(new GradientStop { Color = Color.FromArgb(255, 251, 228, 0), Offset = 1 }); DockPanel.SetDock(buttonopenprocedure, Dock.Bottom); paneldiagnosis1.Children.Add(buttonopenprocedure); panelallprocedure.Measure(new Size(double.PositiveInfinity, double.PositiveInfinity)); panelallprocedure.Arrange(new Rect(new Point(0, 0), panelallprocedure.DesiredSize)); var panelHeight = panelallprocedure.ActualHeight; panelallprocedure.Height = 0; var isToggle = new bool(); buttonopenprocedure.Click += (o, args) => { var da = new DoubleAnimation(); if (!isToggle) { da.From = 450; da.To = 800; da.Duration = TimeSpan.FromSeconds(0.5); buttonopenprocedure.BeginAnimation(WidthProperty, da); da.From = 0; da.To = panelHeight; da.Duration = TimeSpan.FromSeconds(0.5); panelallprocedure.BeginAnimation(HeightProperty, da); isToggle = true; buttonopenprocedure.Content = "Закрити"; } else { da.From = 800; da.To = 450; da.Duration = TimeSpan.FromSeconds(0.5); buttonopenprocedure.BeginAnimation(WidthProperty, da); da.From = panelHeight; da.To = 0; da.Duration = TimeSpan.FromSeconds(0.5); panelallprocedure.BeginAnimation(HeightProperty, da); isToggle = false; buttonopenprocedure.Content = "Переглянути процедури"; } }; } DockPanel.SetDock(paneldiagnosis1, Dock.Top); DockPanel.SetDock(panelallprocedure, Dock.Top); DockPanel.SetDock(paneldiagnosis, Dock.Top); photoDiagnosisScrollViewer.Content = paneldiagnosisphoto; photoDiagnosisScrollViewer.PreviewMouseWheel += (o, args) => { if (args.Delta > 0) { ScrollViewerFull.ScrollToVerticalOffset(ScrollViewerFull.VerticalOffset - 48); } else { ScrollViewerFull.ScrollToVerticalOffset(ScrollViewerFull.VerticalOffset + 48); } }; DockPanel.SetDock(paneldiagnosisphoto, Dock.Top); DockPanel.SetDock(labeldiagnosis, Dock.Top); paneldiagnosis.Children.Add(labeldiagnosis); paneldiagnosis.Children.Add(photoDiagnosisScrollViewer); paneldiagnosis1.Children.Add(paneldiagnosis); paneldiagnosis1.Children.Add(panelallprocedure); panelAllDiagnosis.Children.Add(paneldiagnosis1); var disease1 = disease; labeldiagnosis.MouseDoubleClick += (o, args) => { var form = new WorkerInfo(disease1.IdWorker); form.ShowDialog(); }; PatientPanel.Visibility = Visibility.Visible; } }
private async void FindVisit() { foreach (var acceptance in Acceptance.ListAcceptance) { if (DateTime.Parse(acceptance.Date).Date>= DateTime.Now.Date && acceptance.PatientIdPatient==Patient.IdPatient) { WpfMessageBox.Show("Пацієнт записаний на прийом!\n "+"Дата: "+acceptance.Date+" Час: "+acceptance.Time); } } var panelgradient = new LinearGradientBrush() { StartPoint = new Point(0.5, 0), EndPoint = new Point(0.5, 1) }; panelgradient.GradientStops.Add(new GradientStop {Color = Color.FromArgb(255, 255, 255, 255), Offset = 0}); panelgradient.GradientStops.Add(new GradientStop {Color = Color.FromArgb(128, 255, 255, 255), Offset = 1}); var panelAllVisit = new DockPanel { Margin = new Thickness(15, 15, 15, 15), Visibility = Visibility.Hidden, Background = panelgradient }; var labelstartvisit = new Label { Content = "Записи", Foreground = Brushes.MediumBlue, FontWeight = FontWeights.Bold }; DockPanel.SetDock(labelstartvisit, Dock.Top); panelAllVisit.Children.Add(labelstartvisit); DockPanel.SetDock(panelAllVisit, Dock.Top); PatientPanel.Children.Add(panelAllVisit); foreach (var visit in _listPatientVisits.Where(visit => CheckBoxViewDiagnosisDepartment.IsChecked == null || (!CheckBoxViewDiagnosisDepartment.IsChecked.Value || visit.IdDepartment == Worker.IdDepartment))) { panelAllVisit.Visibility = Visibility.Visible; if (visit.IdWorker == "0" && visit.Snp == "0") { WpfMessageBox.Show("Відсутнє підключення до сервера. \n Зверніться до адміністратора!"); Close(); } var panelvisit1 = new DockPanel { Background = Brushes.LightSkyBlue, Margin = new Thickness(15, 15, 15, 15), }; var panelvisit = new DockPanel { Background = Brushes.WhiteSmoke, Margin = new Thickness(3, 3, 3, 3), }; var photoVisitsScrollViewer = new ScrollViewer { VerticalScrollBarVisibility = ScrollBarVisibility.Disabled, HorizontalScrollBarVisibility = ScrollBarVisibility.Auto, CanContentScroll = true }; var panelvisitphoto = new DockPanel { Background = Brushes.WhiteSmoke, Margin = new Thickness(3, 3, 3, 3) }; var visit2 = visit; foreach (var loadPhotoVisits in LoadPhotoVisits.PhotoVisits.Where(loadPhotoVisits => loadPhotoVisits.IdVisits == visit2.IdVisit)) { var photo = await LoadPhoto(loadPhotoVisits.Photo); var buttonPhotoVisits = new Button { Background = new ImageBrush(photo), Foreground = Brushes.MediumBlue, FontWeight = FontWeights.Bold, Content = " ", Height = 160, Width = 160, HorizontalAlignment = HorizontalAlignment.Left }; buttonPhotoVisits.Click += (o, args) => { var form = new PhotoInfo(photo); form.Show(); }; DockPanel.SetDock(panelvisitphoto, Dock.Top); panelvisitphoto.Children.Add(buttonPhotoVisits); } var labelvisit = new Label { Content = string.Format( "Причина: {0} \n Скарги: {1} \n Огляд: {2} \n Дата: {3}\n Лікар: {4} ", visit.Reason, visit.Complaints, visit.Inspection, visit.VisitDateOnset, visit.Snp), Margin = new Thickness(10, 10, 10, 10), }; var panelallanalysis = new DockPanel { Background = Brushes.LightSkyBlue, Margin = new Thickness(0, 0, 0, 0), }; var intAnalysis = 0; foreach (var analysis in Analysis.ListAnalysis) { if (analysis.IdVisit != visit.IdVisit) continue; var panelanalysis1 = new DockPanel { Background = new SolidColorBrush(Color.FromRgb(244, 244, 40)), Margin = new Thickness(5, 5, 5, 5), }; var panelanalysis = new DockPanel { Background = Brushes.LightSteelBlue, Margin = new Thickness(3, 3, 3, 3), }; var photoAnalysisScrollViewer = new ScrollViewer { VerticalScrollBarVisibility = ScrollBarVisibility.Disabled, HorizontalScrollBarVisibility = ScrollBarVisibility.Auto, CanContentScroll = true }; var panelanalysisphoto = new DockPanel { Background = Brushes.WhiteSmoke, Margin = new Thickness(3, 3, 3, 3) }; foreach (var loadPhotoAnalysis in LoadPhotoAnalysis.PhotoAnalysis) { if (loadPhotoAnalysis.IdAnalysis == analysis.IdAnalysis) { var photo = await LoadPhoto(loadPhotoAnalysis.Photo); var buttonPhotoAnalysis = new Button { Background = new ImageBrush(photo), Foreground = Brushes.MediumBlue, FontWeight = FontWeights.Bold, Content = " ", Height = 160, Width = 160, HorizontalAlignment = HorizontalAlignment.Left, }; buttonPhotoAnalysis.Click += (o, args) => { var form = new PhotoInfo(photo); form.Show(); }; DockPanel.SetDock(buttonPhotoAnalysis, Dock.Left); panelanalysisphoto.Children.Add(buttonPhotoAnalysis); } } var labelanalysis = new Label { Content = string.Format( "Назва: {0} \n Показники: {1} \n Заключення: {2} \n Дата: {3} \n Лікар: {4}", analysis.NameAnalysis, analysis.Indicators, analysis.Result, analysis.AnalysisDateOnset, analysis.Snp), Margin = new Thickness(10, 10, 10, 10), }; intAnalysis = intAnalysis + 1; photoAnalysisScrollViewer.Content = panelanalysisphoto; photoAnalysisScrollViewer.PreviewMouseWheel += (o, args) => { if (args.Delta > 0) { ScrollViewerFull.ScrollToVerticalOffset(ScrollViewerFull.VerticalOffset - 48); } else { ScrollViewerFull.ScrollToVerticalOffset(ScrollViewerFull.VerticalOffset + 48); } }; DockPanel.SetDock(panelallanalysis, Dock.Top); DockPanel.SetDock(panelanalysis1, Dock.Top); DockPanel.SetDock(panelanalysis, Dock.Top); DockPanel.SetDock(labelanalysis, Dock.Top); panelanalysis.Children.Add(labelanalysis); panelanalysis.Children.Add(photoAnalysisScrollViewer); panelanalysis1.Children.Add(panelanalysis); panelallanalysis.Children.Add(panelanalysis1); var analysis1 = analysis; labelanalysis.MouseDoubleClick += (o, args) => { var form = new WorkerInfo(analysis1.IdWorker); form.ShowDialog(); }; } if (intAnalysis != 0) { var gradient = new LinearGradientBrush {StartPoint = new Point(0, 0), EndPoint = new Point(1, 1)}; var buttonopenanalisis = new Button { Background = gradient, Foreground = Brushes.MediumBlue, FontWeight = FontWeights.Bold, Content = "Переглянути аналізи", Height = 20, Width = 450 }; gradient.GradientStops.Add(new GradientStop { Color = Color.FromArgb(255, 249, 249, 200), Offset = 0 }); gradient.GradientStops.Add(new GradientStop { Color = Color.FromArgb(255, 251, 228, 0), Offset = 1 }); DockPanel.SetDock(buttonopenanalisis, Dock.Bottom); panelvisit1.Children.Add(buttonopenanalisis); panelallanalysis.Measure(new Size(double.PositiveInfinity, double.PositiveInfinity)); panelallanalysis.Arrange(new Rect(new Point(0, 0), panelallanalysis.DesiredSize)); var panelHeight = panelallanalysis.ActualHeight; panelallanalysis.Height = 0; var isToggle = new bool(); buttonopenanalisis.Click += (o, args) => { var da = new DoubleAnimation(); if (!isToggle) { da.From = 450; da.To = 800; da.Duration = TimeSpan.FromSeconds(0.5); buttonopenanalisis.BeginAnimation(WidthProperty, da); da.From = 0; da.To = panelHeight; da.Duration = TimeSpan.FromSeconds(0.5); panelallanalysis.BeginAnimation(HeightProperty, da); isToggle = true; buttonopenanalisis.Content = "Закрити"; } else { da.From = 800; da.To = 450; da.Duration = TimeSpan.FromSeconds(0.5); buttonopenanalisis.BeginAnimation(WidthProperty, da); da.From = panelHeight; da.To = 0; da.Duration = TimeSpan.FromSeconds(0.5); panelallanalysis.BeginAnimation(HeightProperty, da); isToggle = false; buttonopenanalisis.Content = "Переглянути аналізи"; } }; } DockPanel.SetDock(panelvisit1, Dock.Top); DockPanel.SetDock(panelallanalysis, Dock.Top); DockPanel.SetDock(panelvisit, Dock.Top); photoVisitsScrollViewer.Content = panelvisitphoto; photoVisitsScrollViewer.PreviewMouseWheel += (o, args) => { if (args.Delta > 0) { ScrollViewerFull.ScrollToVerticalOffset(ScrollViewerFull.VerticalOffset - 48); } else { ScrollViewerFull.ScrollToVerticalOffset(ScrollViewerFull.VerticalOffset + 48); } }; DockPanel.SetDock(panelvisitphoto, Dock.Top); DockPanel.SetDock(labelvisit, Dock.Top); panelvisit.Children.Add(labelvisit); panelvisit.Children.Add(photoVisitsScrollViewer); panelvisit1.Children.Add(panelvisit); panelvisit1.Children.Add(panelallanalysis); panelAllVisit.Children.Add(panelvisit1); var visit1 = visit; labelvisit.MouseDoubleClick += (o, args) => { var form = new WorkerInfo(visit1.IdWorker); form.ShowDialog(); }; PatientPanel.Visibility = Visibility.Visible; } }