From 0c59a3f9c08b624fe09061ffadde7a7e2c7d2b89 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=D0=95=D0=BB=D0=B5=D0=BD=D0=B0=20=D0=91=D0=B0=D0=BA=D0=B0?= =?UTF-8?q?=D0=BB=D1=8C=D1=81=D0=BA=D0=B0=D1=8F?= Date: Wed, 8 May 2024 12:36:17 +0400 Subject: [PATCH] =?UTF-8?q?=D0=B4=D0=BE=D0=B1=D0=B0=D0=B2=D0=B8=D0=BB?= =?UTF-8?q?=D0=B0=20=D0=B2=20=D1=80=D0=B5=D0=B0=D0=BB=D0=B8=D0=B7=D0=B0?= =?UTF-8?q?=D1=86=D0=B8=D1=8F=D1=85=20=D1=85=D1=80=D0=B0=D0=BD=D0=B8=D0=BB?= =?UTF-8?q?=D0=B8=D1=89=D0=B5=D0=B9=20=D0=B4=D0=BB=D1=8F=20=D0=BF=D1=80?= =?UTF-8?q?=D0=B8=D0=B5=D0=BC=D0=B0=20=D0=B8=20=D1=83=D1=81=D0=BB=D1=83?= =?UTF-8?q?=D0=B3=D0=B8=20=D0=B4=D0=BE=D0=BF=20=D0=BC=D0=B5=D1=82=D0=BE?= =?UTF-8?q?=D0=B4=D1=8B=20=D0=B4=D0=BB=D1=8F=20=D0=BF=D0=BE=D0=B8=D1=81?= =?UTF-8?q?=D0=BA=D0=B0=20=D0=B8=D0=BC=D0=B5=D0=BD=D0=B8=20=D0=B8=20=D0=B4?= =?UTF-8?q?=D0=BB=D1=8F=20=D0=BF=D0=BE=D0=B8=D1=81=D0=BA=D0=B0=20=D0=BC?= =?UTF-8?q?=D0=B0=D1=81=D1=82=D0=B5=D1=80=D0=BE=D0=B2=20=D0=BF=D0=BE=20?= =?UTF-8?q?=D0=B2=D1=8B=D0=B1=D1=80=D0=B0=D0=BD=D0=BD=D0=BE=D0=B9=20=D1=83?= =?UTF-8?q?=D1=81=D0=BB=D1=83=D0=B3=D0=B5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Implements/ReceptionDatabase.cs | 37 +++++++++++++++---- .../Implements/ServiceDatabase.cs | 25 +++++++++++++ 2 files changed, 55 insertions(+), 7 deletions(-) diff --git a/BeautySalon/BeautySalonDBModels/Implements/ReceptionDatabase.cs b/BeautySalon/BeautySalonDBModels/Implements/ReceptionDatabase.cs index e41d3d7..c005cae 100644 --- a/BeautySalon/BeautySalonDBModels/Implements/ReceptionDatabase.cs +++ b/BeautySalon/BeautySalonDBModels/Implements/ReceptionDatabase.cs @@ -1,10 +1,5 @@ using BeautySalonDBModels.Models; using Npgsql; -using System; -using System.Collections.Generic; -using System.Linq; -using System.Text; -using System.Threading.Tasks; namespace BeautySalonDBModels.Implements { @@ -15,7 +10,7 @@ namespace BeautySalonDBModels.Implements using var conn = GetConnection(); conn.Open(); using var cmd = new NpgsqlCommand("INSERT INTO receptions (reception_id, master_id, service_id, date_reception) " + - "VALUES ((nextval('seq_reception'), @MasterId, @ServiceId, @DateReception)", conn); + "VALUES ((nextval('seq_reception')), @MasterId, @ServiceId, @DateReception)", conn); cmd.Parameters.AddWithValue("@MasterId", reception.MasterId); cmd.Parameters.AddWithValue("@ServiceId", reception.ServiceId); cmd.Parameters.AddWithValue("@DateReception", reception.DateReception); @@ -77,7 +72,7 @@ namespace BeautySalonDBModels.Implements { using var conn = GetConnection(); conn.Open(); - using var cmd = new NpgsqlCommand("update reception set master_id = @MasterId, " + + using var cmd = new NpgsqlCommand("update receptions set master_id = @MasterId, " + "service_id = @ServiceId, date_reception = @DateReception where reception_id = @ReceptionId", conn); cmd.Parameters.AddWithValue("@MasterId", reception.MasterId); cmd.Parameters.AddWithValue("@ServiceId", reception.ServiceId); @@ -86,5 +81,33 @@ namespace BeautySalonDBModels.Implements cmd.ExecuteNonQuery(); } + + public string GetMasterFio(Reception reception) + { + MasterDatabase db = new MasterDatabase(); + int masterId = reception.MasterId; + + List masters = db.GetObjects(); + + foreach (Master master in masters) + { + if (master.MasterId == masterId) return master.FIO.ToString(); + } + return string.Empty; + } + + public string GetServiceName(Reception reception) + { + ServiceDatabase db = new ServiceDatabase(); + int serviceId = reception.ServiceId; + + List services = db.GetObjects(); + + foreach (Service service in services) + { + if (service.ServiceId == serviceId) return service.ServiceName.ToString(); + } + return string.Empty; + } } } diff --git a/BeautySalon/BeautySalonDBModels/Implements/ServiceDatabase.cs b/BeautySalon/BeautySalonDBModels/Implements/ServiceDatabase.cs index abc2f48..be9d59a 100644 --- a/BeautySalon/BeautySalonDBModels/Implements/ServiceDatabase.cs +++ b/BeautySalon/BeautySalonDBModels/Implements/ServiceDatabase.cs @@ -98,5 +98,30 @@ namespace BeautySalonDBModels.Implements } return string.Empty; } + + public List GetFilteredListByService(int serviceId) + { + var list = new List(); + var service = GetObject(serviceId); + if(service != null) + { + int specId = service.SpecialisationId; + using var conn = GetConnection(); + conn.Open(); + using var cmd = new NpgsqlCommand("select * from masters where specialisation_id = @specId", conn); + cmd.Parameters.AddWithValue("@specId", specId); + using var reader = cmd.ExecuteReader(); + while (reader.Read()) + { + list.Add(new Master + { + MasterId = reader.GetInt32(0), + SpecialisationId = reader.GetInt32(1), + FIO = reader.GetString(2) + }); + } + } + return list; + } } }