добавила в реализациях хранилищей для приема и услуги доп методы для поиска имени и для поиска мастеров по выбранной услуге
This commit is contained in:
parent
e6621ffa08
commit
0c59a3f9c0
@ -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<Master> 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<Service> services = db.GetObjects();
|
||||
|
||||
foreach (Service service in services)
|
||||
{
|
||||
if (service.ServiceId == serviceId) return service.ServiceName.ToString();
|
||||
}
|
||||
return string.Empty;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -98,5 +98,30 @@ namespace BeautySalonDBModels.Implements
|
||||
}
|
||||
return string.Empty;
|
||||
}
|
||||
|
||||
public List<Master> GetFilteredListByService(int serviceId)
|
||||
{
|
||||
var list = new List<Master>();
|
||||
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;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user