/* * This file is part of FirmTracker - Server. * * FirmTracker - Server is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. * * FirmTracker - Server is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with FirmTracker - Server. If not, see . */ using FirmTracker_Server.Controllers; using FirmTracker_Server.nHibernate; using FirmTracker_Server.nHibernate.Products; using FirmTracker_Server.nHibernate.Transactions; using FirmTracker_Server.nHibernate.Expenses; using NHibernate; namespace FirmTracker_Server { public class TestClass { public static Product CreateProduct(string name, string description, decimal price, int type, int availability) { return new Product { Name = name, Description = description, Price = price, Type = type, Availability = availability }; } public void AddTestProduct() { // SessionFactory.Init(ConnectionString); var product = new nHibernate.Products.Product { Name = "Produkt test 1", Description = "testowy produkt", Price = 11.50m, Type = 1, Availability = 5 }; var product2 = new nHibernate.Products.Product { Name = "Usluga 1", Description = "testowa usluga", Price = 1120.00m, Type = 0, Availability = 0 }; var products = new List { CreateProduct("Tarta_truskawka", "produkt", 31.99m, 1, 10), CreateProduct("Tarta_czekolada", "produkt", 30.99m, 1, 8), CreateProduct("Tarta_agrest", "produkt", 32.90m, 1, 8), CreateProduct("Tarta_pistacja", "produkt", 35.99m, 1, 12), CreateProduct("Tarta_karmel", "produkt", 32.00m, 1, 12), CreateProduct("Rolada_beza", "produkt", 21.00m, 1, 5), CreateProduct("Rolada_róża", "produkt", 21.90m, 1, 10), CreateProduct("Kostka_truskawka", "produkt", 12.00m, 1, 11), CreateProduct("Kostka_lemonCurd", "produkt", 13.99m, 1, 13), CreateProduct("Kostka_hiszpańska", "produkt", 11.99m, 1, 8), CreateProduct("Kostka_wiosenna", "produkt", 11.99m, 1, 5), CreateProduct("Kostka_jabłka", "produkt", 12.00m, 1, 5), CreateProduct("Kostka_porzeczka", "produkt", 12.99m, 1, 5), CreateProduct("Kostka_królewska", "produkt", 13.50m, 1, 5), CreateProduct("Kostka_czekolada", "produkt", 14.50m, 1, 10), CreateProduct("Kostka_wiśnia", "produkt", 12.50m, 1, 5), CreateProduct("Kostka_beza", "produkt", 13.50m, 1, 20), CreateProduct("Kostka_leśna", "produkt", 12.00m, 1, 20), CreateProduct("Kostka_kawowa", "produkt", 12.00m, 1, 10), CreateProduct("Kostka_galaretka", "produkt", 12.50m, 1, 25), CreateProduct("Kostka_firmowa", "produkt", 12.50m, 1, 5), CreateProduct("Sernik_wiśnia", "produkt", 33.00m, 1, 6), CreateProduct("Sernik_truskawka", "produkt", 31.00m, 1, 5), CreateProduct("Sernik_pistacja", "produkt", 38.90m, 1, 5), CreateProduct("Sernik_fantazja", "produkt", 33.00m, 1, 7), CreateProduct("Sernik_rafaello", "produkt", 33.00m, 1, 5), CreateProduct("Sernik_nutella", "produkt", 35.50m, 1, 6), CreateProduct("Sernik_mango", "produkt", 33.00m, 1, 5), CreateProduct("Sernik_rabarbar", "produkt", 37.99m, 1, 5), CreateProduct("Sernik_biszkopt", "produkt", 39.00m, 1, 11), CreateProduct("Tartaletka", "produkt", 13.20m, 1, 30), CreateProduct("Strudel_jabłko", "produkt", 29.00m, 1, 20), CreateProduct("Placek_rabarbar", "produkt", 24.00m, 1, 18), CreateProduct("Placek_jogurt", "produkt", 23.00m, 1, 13), CreateProduct("Placek_śliwka", "produkt", 22.00m, 1, 14), CreateProduct("Placek_maślany", "produkt", 18.00m, 1,11), }; var transaction1 = new Transaction { Date = DateTime.Now.AddDays(-2), Description = "zamówienie telefon", Discount = 5, EmployeeId = 1, PaymentType = "Karta kredytowa", }; var transaction2 = new Transaction { Date = DateTime.Now.AddDays(-3), Description = "sprzedaż - kasa", Discount = 30, EmployeeId = 2, PaymentType = "Gotówka", }; var transaction3 = new Transaction { Date = DateTime.Now, Description = "sprzedaż - kasa", Discount = 15, EmployeeId = 1, PaymentType = "BLIK", }; var transaction4 = new Transaction { Date = DateTime.Now, Description = "zamówienie", Discount = 15, EmployeeId = 1, PaymentType = "BLIK", }; var expense1 = new Expense { Date = DateTime.Now, Value = 7999.9m, Description = "zakup maszyny do lodów FZ/2/6/2024" }; var expense2 = new Expense { Date = DateTime.Now, Value = 990.99m, Description = "naprawa pieca - 25.05.2024" }; var expense3 = new Expense { Date = DateTime.Now, Value = 1800.00m, Description = "zakup składników " }; try { FirmTracker_Server.nHibernate.Products.ProductCRUD productCrud = new ProductCRUD(); FirmTracker_Server.nHibernate.Transactions.TransactionCRUD transactionCrud = new nHibernate.Transactions.TransactionCRUD(); ExpenseCRUD expenseCrud = new ExpenseCRUD(); productCrud.AddProduct(product); productCrud.AddProduct(product2); // productCrud.AddProduct(product3); foreach(var clientProduct in products) { productCrud.AddProduct(clientProduct); } transactionCrud.AddTransaction(transaction1); transactionCrud.AddTransaction(transaction2); transactionCrud.AddTransaction(transaction3); transactionCrud.AddTransaction(transaction4); expenseCrud.AddExpense(expense1); expenseCrud.AddExpense(expense2); List testTransactionProducts = new List { new TransactionProduct { ProductID =17, Quantity = 10 }, new TransactionProduct { ProductID = 14, Quantity = 1 }, new TransactionProduct { ProductID = 1, Quantity = 2 }, }; foreach (var transactionProduct in testTransactionProducts) { transactionCrud.AddTransactionProductToTransaction(transaction1.Id, transactionProduct); } List testTransactionProducts2 = new List { new TransactionProduct { ProductID = 28, Quantity=5}, new TransactionProduct { ProductID = 22, Quantity=5} }; foreach (var transactionProduct in testTransactionProducts2) { transactionCrud.AddTransactionProductToTransaction(transaction2.Id, transactionProduct); } List testTransactionProducts3 = new List { new TransactionProduct { ProductID = 3, Quantity=12}, new TransactionProduct { ProductID = 2, Quantity=1} }; foreach (var transactionProduct in testTransactionProducts3) { transactionCrud.AddTransactionProductToTransaction(transaction3.Id, transactionProduct); } List testTransactionProducts4 = new List { new TransactionProduct { ProductID = 33, Quantity=12}, new TransactionProduct { ProductID = 12, Quantity=1} }; foreach (var transactionProduct in testTransactionProducts4) { transactionCrud.AddTransactionProductToTransaction(transaction4.Id, transactionProduct); } } catch(Exception ex) { Console.WriteLine(ex.ToString()); throw; } } } }