From 2f74782deee4081348525f7bc02a12af41de9317 Mon Sep 17 00:00:00 2001 From: student Date: Mon, 11 May 2026 11:20:29 +1000 Subject: [PATCH] Doctora --- .idea/.idea.Policlinica/.idea/avalonia.xml | 2 + Policlinica.sln.DotSettings.user | 4 +- Policlinica/DB/ServiceRepository.cs | 4 +- Policlinica/Program.cs | 4 + .../ViewModels/AdminWindowViewModel.cs | 12 +- Policlinica/ViewModels/DoctorViewModel.cs | 6 + .../ViewModels/RegistrationViewModel.cs | 2 +- Policlinica/ViewModels/ServiceViewModel.cs | 9 +- Policlinica/Views/AdminWindowView.axaml | 4 +- Policlinica/Views/DoctoraWindow.axaml | 9 + Policlinica/Views/DoctoraWindow.axaml.cs | 13 + Policlinica/Views/ServiceWindow.axaml.cs | 2 +- .../bin/Debug/net9.0/Policlinica.deps.json | 37 +- Policlinica/bin/Debug/net9.0/Policlinica.dll | Bin 243712 -> 246272 bytes Policlinica/bin/Debug/net9.0/Policlinica.pdb | Bin 42316 -> 43488 bytes .../net9.0/Avalonia/Resources.Inputs.cache | 2 +- .../obj/Debug/net9.0/Avalonia/references | 446 +++++++++--------- .../obj/Debug/net9.0/Avalonia/resources | Bin 184404 -> 184957 bytes .../Debug/net9.0/Policlinica.AssemblyInfo.cs | 2 +- .../Policlinica.AssemblyInfoInputs.cache | 2 +- ....GeneratedMSBuildEditorConfig.editorconfig | 21 +- .../obj/Debug/net9.0/Policlinica.assets.cache | Bin 48409 -> 46691 bytes ...Policlinica.csproj.AssemblyReference.cache | Bin 31267 -> 30510 bytes ...Policlinica.csproj.CoreCompileInputs.cache | 2 +- .../Policlinica.csproj.FileListAbsolute.txt | 342 +++++--------- Policlinica/obj/Debug/net9.0/Policlinica.dll | Bin 243712 -> 246272 bytes .../net9.0/Policlinica.genruntimeconfig.cache | 2 +- Policlinica/obj/Debug/net9.0/Policlinica.pdb | Bin 42316 -> 43488 bytes .../Debug/net9.0/Policlinica.sourcelink.json | 2 +- .../obj/Debug/net9.0/ref/Policlinica.dll | Bin 15360 -> 15872 bytes .../obj/Debug/net9.0/refint/Policlinica.dll | Bin 15360 -> 15872 bytes .../obj/Policlinica.csproj.nuget.dgspec.json | 37 +- .../obj/Policlinica.csproj.nuget.g.props | 20 +- .../obj/Policlinica.csproj.nuget.g.targets | 20 +- Policlinica/obj/project.assets.json | 35 +- Policlinica/obj/project.nuget.cache | 132 +++--- Policlinica/obj/project.packagespec.json | 2 +- .../obj/rider.project.model.nuget.info | 2 +- Policlinica/obj/rider.project.restore.info | 2 +- 39 files changed, 551 insertions(+), 628 deletions(-) create mode 100644 Policlinica/ViewModels/DoctorViewModel.cs create mode 100644 Policlinica/Views/DoctoraWindow.axaml create mode 100644 Policlinica/Views/DoctoraWindow.axaml.cs diff --git a/.idea/.idea.Policlinica/.idea/avalonia.xml b/.idea/.idea.Policlinica/.idea/avalonia.xml index 17fa493..713deb4 100644 --- a/.idea/.idea.Policlinica/.idea/avalonia.xml +++ b/.idea/.idea.Policlinica/.idea/avalonia.xml @@ -7,12 +7,14 @@ + + diff --git a/Policlinica.sln.DotSettings.user b/Policlinica.sln.DotSettings.user index 5cd1961..7ba50c0 100644 --- a/Policlinica.sln.DotSettings.user +++ b/Policlinica.sln.DotSettings.user @@ -1,2 +1,4 @@  - ForceIncluded \ No newline at end of file + ForceIncluded + ForceIncluded + ForceIncluded \ No newline at end of file diff --git a/Policlinica/DB/ServiceRepository.cs b/Policlinica/DB/ServiceRepository.cs index 28e8a6a..02b67b1 100644 --- a/Policlinica/DB/ServiceRepository.cs +++ b/Policlinica/DB/ServiceRepository.cs @@ -48,10 +48,10 @@ public class ServiceRepository : BaseRep return result; } - public List GetServicesByDoctors( Doctor selectedDoctor) + public List GetServicesByDoctors(int id) { List s = new List(); - string sql = "select * from services where doctor_id = " + selectedDoctor.Id; + string sql = "select * from services where doctor_id =@id"; try { connection.Open(); diff --git a/Policlinica/Program.cs b/Policlinica/Program.cs index f955da6..fc637f4 100644 --- a/Policlinica/Program.cs +++ b/Policlinica/Program.cs @@ -27,6 +27,7 @@ sealed class Program { s.Configure(c.Configuration. GetSection("DatabaseConnection")); + //окна s.AddTransient(); s.AddTransient(); @@ -46,6 +47,9 @@ sealed class Program s.AddTransient(); s.AddTransient(); + s.AddTransient(); + s.AddTransient(); + //Репозитории s.AddTransient(); diff --git a/Policlinica/ViewModels/AdminWindowViewModel.cs b/Policlinica/ViewModels/AdminWindowViewModel.cs index d1c88d8..236e556 100644 --- a/Policlinica/ViewModels/AdminWindowViewModel.cs +++ b/Policlinica/ViewModels/AdminWindowViewModel.cs @@ -12,7 +12,6 @@ namespace Policlinica.ViewModels; public partial class AdminWindowViewModel : ViewModelBase { - private readonly IServiceProvider _serviceProvider; private readonly Navigation _navigation; private readonly IServiceProvider _provider; private readonly RecordRep _recordRep; @@ -22,9 +21,9 @@ public partial class AdminWindowViewModel : ViewModelBase [ObservableProperty] ObservableCollection _recordsList = new(); [ObservableProperty] private Record _selectedRecord; - public AdminWindowViewModel(IServiceProvider serviceProvider, Navigation navigation, IServiceProvider provider, RecordRep recordRep) + public AdminWindowViewModel( Navigation navigation, IServiceProvider provider, RecordRep recordRep) { - _serviceProvider = serviceProvider; + _navigation = navigation; _provider = provider; _recordRep = recordRep; @@ -38,4 +37,11 @@ public partial class AdminWindowViewModel : ViewModelBase _recordRep.Delete(SelectedRecord.Id); RecordsList = new ObservableCollection(_recordRep.GetRecord()); } + + [RelayCommand] + void GoService() + { + var vm = _provider.GetRequiredService(); + _navigation.Navigate(vm); + } } \ No newline at end of file diff --git a/Policlinica/ViewModels/DoctorViewModel.cs b/Policlinica/ViewModels/DoctorViewModel.cs new file mode 100644 index 0000000..4f6a550 --- /dev/null +++ b/Policlinica/ViewModels/DoctorViewModel.cs @@ -0,0 +1,6 @@ +namespace Policlinica.ViewModels; + +public class DoctorViewModel +{ + +} \ No newline at end of file diff --git a/Policlinica/ViewModels/RegistrationViewModel.cs b/Policlinica/ViewModels/RegistrationViewModel.cs index 89b8379..00f6417 100644 --- a/Policlinica/ViewModels/RegistrationViewModel.cs +++ b/Policlinica/ViewModels/RegistrationViewModel.cs @@ -62,7 +62,7 @@ public partial class RegistrationViewModel : ViewModelBase //win.DataContext = vm; //win.Show(); //_navigation.Close(); - var vm = _serviceProvider.GetRequiredService(); + var vm = _serviceProvider.GetRequiredService(); _navigation.Navigate(vm); } } diff --git a/Policlinica/ViewModels/ServiceViewModel.cs b/Policlinica/ViewModels/ServiceViewModel.cs index bdff3a3..5929a34 100644 --- a/Policlinica/ViewModels/ServiceViewModel.cs +++ b/Policlinica/ViewModels/ServiceViewModel.cs @@ -12,6 +12,7 @@ namespace Policlinica.ViewModels; public partial class ServiceViewModel : ViewModelBase { + private readonly IServiceProvider _provider; private readonly Navigation _navigation; [ObservableProperty] List _services; @@ -25,7 +26,7 @@ public partial class ServiceViewModel : ViewModelBase _navigation = navigation; _selectedDoctor = selectedDoctor; _serviceRepository = repository; - Services = repository.GetServicesByDoctors(selectedDoctor).Select(service => new ServiceSelected(service)).ToList(); + //Services = repository.GetServicesByDoctors(selectedDoctor.Id).Select(service => new ServiceSelected(service)).ToList(); } @@ -34,13 +35,13 @@ public partial class ServiceViewModel : ViewModelBase public void Dobavlenie() { { - List works = new List(); + List services = new List(); foreach (ServiceSelected s in Services) { if (s.IsSelected == true) { - works.Add(s.Service); + services.Add(s.Service); } } @@ -52,7 +53,7 @@ public partial class ServiceViewModel : ViewModelBase var win = _provider.GetRequiredService(); // vm.SetClose(win.Close); win.DataContext = vm; - win.Show(); + // win.Show(); // close(); } diff --git a/Policlinica/Views/AdminWindowView.axaml b/Policlinica/Views/AdminWindowView.axaml index f74beb4..14ddabd 100644 --- a/Policlinica/Views/AdminWindowView.axaml +++ b/Policlinica/Views/AdminWindowView.axaml @@ -23,7 +23,9 @@