Чинит строку подключения и добавляет sql запросы к сущностям-справочникам

This commit is contained in:
grishazagidulin 2024-12-01 02:35:18 +04:00
parent 76bf13257f
commit 6d2c12b419
4 changed files with 58 additions and 17 deletions

View File

@ -9,5 +9,5 @@ namespace Workshop.Repositories.Implementations;
public class ConnectionString : IConnectionString
{
string IConnectionString.ConnectionString => "Server=localhost;Port=5432;Database=grishazagidulin;User Id=grishazagidulin;Password=;";
string IConnectionString.ConnectionString => "Server=10.211.55.2;Port=5432;Database=grishazagidulin;Username=grishazagidulin;Password=;";
}

View File

@ -31,7 +31,9 @@ internal class MasterRepository : IMasterRepository
try
{
using var connection = new NpgsqlConnection(_connectionString.ConnectionString);
var queryInsert = @"";
var queryInsert = @"
INSERT INTO MASTER (Name, LastName, Age, Position)
VALUES (@Name, @LastName, @Age, @Position)";
connection.Execute(queryInsert, master);
}
catch (Exception ex)
@ -48,7 +50,9 @@ internal class MasterRepository : IMasterRepository
try
{
using var connection = new NpgsqlConnection(_connectionString.ConnectionString);
var queryDelete = @"";
var queryDelete = @"
DELETE FROM MASTER
WHERE Id=@id";
connection.Execute(queryDelete, new { id });
}
catch (Exception ex)
@ -65,7 +69,9 @@ internal class MasterRepository : IMasterRepository
try
{
using var connection = new NpgsqlConnection(_connectionString.ConnectionString);
var querySelect = @"";
var querySelect = @"
SELECT * FROM MASTER
WHERE Id=@id";
var master = connection.QueryFirst<Master>(querySelect, new { id });
_logger.LogDebug("Найденный объект: {json}", JsonConvert.SerializeObject(master));
return master;
@ -83,7 +89,7 @@ internal class MasterRepository : IMasterRepository
try
{
using var connection = new NpgsqlConnection(_connectionString.ConnectionString);
var querySelect = "";
var querySelect = "SELECT * FROM MASTER";
var masters = connection.Query<Master>(querySelect);
_logger.LogDebug("Полученные объекты: {json}", JsonConvert.SerializeObject(masters));
return masters;
@ -105,7 +111,14 @@ internal class MasterRepository : IMasterRepository
{
using var connection = new
NpgsqlConnection(_connectionString.ConnectionString);
var queryUpdate = @"";
var queryUpdate = @"
UPDATE MASTER
SET
Name=@Name,
LastName=@LastName,
Age=@Age,
Position=@Position
WHERE [Id]=@Id";
connection.Execute(queryUpdate, master);
}
catch (Exception ex)

View File

@ -31,7 +31,9 @@ internal class MaterialRepository : IMaterialRepository
try
{
using var connection = new NpgsqlConnection(_connectionString.ConnectionString);
var queryInsert = @"";
var queryInsert = @"
INSERT INTO MATERIAL (Name, WarehouseAmount, Price)
VALUES (@Name, @WarehouseAmount, @Price)";
connection.Execute(queryInsert, material);
}
catch (Exception ex)
@ -48,7 +50,9 @@ internal class MaterialRepository : IMaterialRepository
try
{
using var connection = new NpgsqlConnection(_connectionString.ConnectionString);
var queryDelete = @"";
var queryDelete = @"
DELETE FROM MATERIAL
WHERE Id=@id";
connection.Execute(queryDelete, new { id });
}
catch (Exception ex)
@ -65,7 +69,9 @@ internal class MaterialRepository : IMaterialRepository
try
{
using var connection = new NpgsqlConnection(_connectionString.ConnectionString);
var querySelect = @"";
var querySelect = @"
SELECT * FROM MATERIAL
WHERE Id=@id";
var material = connection.QueryFirst<Material>(querySelect, new { id });
_logger.LogDebug("Найденный объект: {json}", JsonConvert.SerializeObject(material));
return material;
@ -83,7 +89,7 @@ internal class MaterialRepository : IMaterialRepository
try
{
using var connection = new NpgsqlConnection(_connectionString.ConnectionString);
var querySelect = "";
var querySelect = "SELECT * FROM MATERIAL";
var materials = connection.Query <Material>(querySelect);
_logger.LogDebug("Полученные объекты: {json}", JsonConvert.SerializeObject(materials));
return materials;
@ -105,7 +111,13 @@ internal class MaterialRepository : IMaterialRepository
{
using var connection = new
NpgsqlConnection(_connectionString.ConnectionString);
var queryUpdate = @"";
var queryUpdate = @"
UPDATE MATERIAL
SET
Name=@Name,
WarehouseAmount=@WarehouseAmount,
Price=@Price
WHERE [Id]=@Id";
connection.Execute(queryUpdate, material);
}
catch (Exception ex)

View File

@ -33,9 +33,14 @@ JsonConvert.SerializeObject(product));
using var connection = new NpgsqlConnection(_connectionString.ConnectionString);
connection.Open();
using var transaction = connection.BeginTransaction();
var queryInsert = @"";
var queryInsert = @"
INSERT INTO PRODUCT (Name, Price, WarehouseAmount, Type)
VALUES (@Name, @Price, @WarehouseAmount, @Category);
SELECT MAX(Id) FROM PRODUCT";
var productId = connection.QueryFirst<int>(queryInsert, product, transaction);
var querySubInsert = @"";
var querySubInsert = @"
INSERT INTO PRODUCT_MATERIAL (ProductID, MaterialID, Count)
VALUES (@ProductId, @MaterialId, @Count)";
foreach (var elem in product.Materials)
{
connection.Execute(querySubInsert, new { productId, elem.ProductId, elem.Count });
@ -55,7 +60,9 @@ JsonConvert.SerializeObject(product));
try
{
using var connection = new NpgsqlConnection(_connectionString.ConnectionString);
var queryDelete = @"";
var queryDelete = @"
DELETE FROM PRODUCT
WHERE Id=@id";
connection.Execute(queryDelete, new { id });
}
catch (Exception ex)
@ -73,7 +80,9 @@ JsonConvert.SerializeObject(product));
try
{
using var connection = new NpgsqlConnection(_connectionString.ConnectionString);
var querySelect = @"";
var querySelect = @"
SELECT * FROM PRODUCT
WHERE Id=@id";
var product = connection.QueryFirst<Product>(querySelect, new { id });
_logger.LogDebug("Найденный объект: {json}", JsonConvert.SerializeObject(product));
return product;
@ -91,7 +100,7 @@ JsonConvert.SerializeObject(product));
try
{
using var connection = new NpgsqlConnection(_connectionString.ConnectionString);
var querySelect = "";
var querySelect = "SELECT * FROM PRODUCT";
var products = connection.Query<Product>(querySelect);
_logger.LogDebug("Полученные объекты: {json}", JsonConvert.SerializeObject(products));
return products;
@ -112,7 +121,14 @@ JsonConvert.SerializeObject(product));
try
{
using var connection = new NpgsqlConnection(_connectionString.ConnectionString);
var queryUpdate = @"";
var queryUpdate = @"
UPDATE PRODUCT
SET
Name=@Name,
Price=@Price,
WarehouseAmount=@WarehouseAmount,
Category=@Category
WHERE [Id]=@Id";
connection.Execute(queryUpdate, product);
}
catch (Exception ex)