добавила реализацию мастера
This commit is contained in:
parent
022e547b87
commit
f59bac0c58
79
BeautySalon/BeautySalonDBModels/Implements/MasterDB.cs
Normal file
79
BeautySalon/BeautySalonDBModels/Implements/MasterDB.cs
Normal file
@ -0,0 +1,79 @@
|
||||
using BeautySalonDBModels.Models;
|
||||
using Npgsql;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace BeautySalonDBModels.Implements
|
||||
{
|
||||
public class MasterDB : AbstractWorkWithStorage<Master>
|
||||
{
|
||||
public override void Add(Master master)
|
||||
{
|
||||
using var conn = GetConnection();
|
||||
conn.Open();
|
||||
using var cmd = new NpgsqlCommand("INSERT INTO masters (specialisation_id, fio) VALUES (@SpecialisationId, @FIO)", conn);
|
||||
cmd.Parameters.AddWithValue("@SpecialisationId", master.SpecialisationId);
|
||||
cmd.Parameters.AddWithValue("@FIO", master.FIO);
|
||||
cmd.ExecuteNonQuery();
|
||||
}
|
||||
|
||||
public override Master? GetObject(int id)
|
||||
{
|
||||
using var conn = GetConnection();
|
||||
conn.Open();
|
||||
using var cmd = new NpgsqlCommand("SELECT * FROM masters WHERE master_id = {id}", conn);
|
||||
using var reader = cmd.ExecuteReader();
|
||||
if (reader.Read())
|
||||
{
|
||||
return new Master
|
||||
{
|
||||
MasterId = reader.GetInt32(0),
|
||||
SpecialisationId = reader.GetInt32(1),
|
||||
FIO = reader.GetString(2)
|
||||
};
|
||||
}
|
||||
return null;
|
||||
}
|
||||
|
||||
public override List<Master> GetObjects()
|
||||
{
|
||||
var masters = new List<Master>();
|
||||
using var conn = GetConnection();
|
||||
conn.Open();
|
||||
using var cmd = new NpgsqlCommand("SELECT * FROM masters order by master_id", conn);
|
||||
using var reader = cmd.ExecuteReader();
|
||||
while (reader.Read())
|
||||
{
|
||||
masters.Add(new Master
|
||||
{
|
||||
MasterId = reader.GetInt32(0),
|
||||
SpecialisationId = reader.GetInt32(1),
|
||||
FIO = reader.GetString(2)
|
||||
});
|
||||
}
|
||||
return masters;
|
||||
}
|
||||
|
||||
public override Master? Remove(int id)
|
||||
{
|
||||
var master = GetObject(id);
|
||||
using var conn = GetConnection();
|
||||
conn.Open();
|
||||
using var cmd = new NpgsqlCommand("delete from masters where master_id = {id}", conn);
|
||||
cmd.ExecuteNonQuery();
|
||||
return master;
|
||||
}
|
||||
|
||||
public override void Update(Master master)
|
||||
{
|
||||
using var conn = GetConnection();
|
||||
conn.Open();
|
||||
using var cmd = new NpgsqlCommand("update master set specialisation_id = {master.SpecialisationId}, " +
|
||||
"fio = {master.FIO} where master_id = {master.MasterId}", conn);
|
||||
cmd.ExecuteNonQuery();
|
||||
}
|
||||
}
|
||||
}
|
Loading…
x
Reference in New Issue
Block a user