docs: add comments to DynamicMemory.LD_24
This commit is contained in:
parent
ba678342e4
commit
e7ee870298
@ -8,8 +8,16 @@ using System.Web;
|
|||||||
|
|
||||||
namespace LD_24.Code
|
namespace LD_24.Code
|
||||||
{
|
{
|
||||||
|
/// <summary>
|
||||||
|
/// Class used for reading and writing to files
|
||||||
|
/// </summary>
|
||||||
public static class InOutUtils
|
public static class InOutUtils
|
||||||
{
|
{
|
||||||
|
/// <summary>
|
||||||
|
/// Read lines from a file
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="filename">Target filename</param>
|
||||||
|
/// <returns>IEnumerable of all the lines</returns>
|
||||||
private static IEnumerable<string> ReadLines(string filename)
|
private static IEnumerable<string> ReadLines(string filename)
|
||||||
{
|
{
|
||||||
using (StreamReader reader = File.OpenText(filename))
|
using (StreamReader reader = File.OpenText(filename))
|
||||||
@ -21,6 +29,12 @@ namespace LD_24.Code
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Read products from a file
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="filename">Target file</param>
|
||||||
|
/// <returns>A list of products</returns>
|
||||||
public static ProductList ReadProducts(string filename)
|
public static ProductList ReadProducts(string filename)
|
||||||
{
|
{
|
||||||
ProductList products = new ProductList();
|
ProductList products = new ProductList();
|
||||||
@ -35,6 +49,11 @@ namespace LD_24.Code
|
|||||||
return products;
|
return products;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Read orders from a file
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="filename">Target file</param>
|
||||||
|
/// <returns>A list of orders</returns>
|
||||||
public static OrderList ReadOrders(string filename)
|
public static OrderList ReadOrders(string filename)
|
||||||
{
|
{
|
||||||
OrderList orders = new OrderList();
|
OrderList orders = new OrderList();
|
||||||
@ -50,6 +69,12 @@ namespace LD_24.Code
|
|||||||
return orders;
|
return orders;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Print a single table row to file
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="writer">Target file</param>
|
||||||
|
/// <param name="cells">Cell data</param>
|
||||||
|
/// <param name="widths">Cell widths</param>
|
||||||
private static void PrintTableRow(StreamWriter writer, List<string> cells, List<int> widths)
|
private static void PrintTableRow(StreamWriter writer, List<string> cells, List<int> widths)
|
||||||
{
|
{
|
||||||
for (int i = 0; i < widths.Count; i++)
|
for (int i = 0; i < widths.Count; i++)
|
||||||
@ -62,6 +87,14 @@ namespace LD_24.Code
|
|||||||
writer.WriteLine("|");
|
writer.WriteLine("|");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Print a table to a file
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="writer">Target file</param>
|
||||||
|
/// <param name="header">Header above table</param>
|
||||||
|
/// <param name="list">Target list</param>
|
||||||
|
/// <param name="columns">Column names</param>
|
||||||
|
/// <returns>A IEnumerable for inserting values for each row</returns>
|
||||||
private static IEnumerable<Tuple<object, List<String>>> PrintTable(StreamWriter writer, string header, IEnumerable list, params string[] columns)
|
private static IEnumerable<Tuple<object, List<String>>> PrintTable(StreamWriter writer, string header, IEnumerable list, params string[] columns)
|
||||||
{
|
{
|
||||||
// 0. Collect all the rows
|
// 0. Collect all the rows
|
||||||
@ -128,6 +161,12 @@ namespace LD_24.Code
|
|||||||
writer.WriteLine();
|
writer.WriteLine();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Print orders table to file
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="writer">Target file</param>
|
||||||
|
/// <param name="orders">List of orders</param>
|
||||||
|
/// <param name="header">Header above table</param>
|
||||||
public static void PrintOrders(StreamWriter writer, OrderList orders, string header)
|
public static void PrintOrders(StreamWriter writer, OrderList orders, string header)
|
||||||
{
|
{
|
||||||
foreach (var tuple in PrintTable(writer, header, orders, "Pavardė", "Vardas", "-Įtaisas", "-Įtaiso kiekis"))
|
foreach (var tuple in PrintTable(writer, header, orders, "Pavardė", "Vardas", "-Įtaisas", "-Įtaiso kiekis"))
|
||||||
@ -141,6 +180,13 @@ namespace LD_24.Code
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Print orders with prices table to file
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="writer">Target file</param>
|
||||||
|
/// <param name="orders">List of orders</param>
|
||||||
|
/// <param name="products">List of products</param>
|
||||||
|
/// <param name="header">Header above table</param>
|
||||||
public static void PrintOrdersWithPrices(StreamWriter writer, OrderList orders, ProductList products, string header)
|
public static void PrintOrdersWithPrices(StreamWriter writer, OrderList orders, ProductList products, string header)
|
||||||
{
|
{
|
||||||
foreach (var tuple in PrintTable(writer, header, orders, "Pavardė", "Vardas", "-Įtaiso kiekis, vnt.", "-Kaina, eur."))
|
foreach (var tuple in PrintTable(writer, header, orders, "Pavardė", "Vardas", "-Įtaiso kiekis, vnt.", "-Kaina, eur."))
|
||||||
@ -156,6 +202,12 @@ namespace LD_24.Code
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Print a products table to file
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="writer">Target file</param>
|
||||||
|
/// <param name="products">List of products</param>
|
||||||
|
/// <param name="header">Header above table</param>
|
||||||
public static void PrintProducts(StreamWriter writer, ProductList products, string header)
|
public static void PrintProducts(StreamWriter writer, ProductList products, string header)
|
||||||
{
|
{
|
||||||
foreach (var tuple in PrintTable(writer, header, products, "ID", "Vardas", "-Kaina"))
|
foreach (var tuple in PrintTable(writer, header, products, "ID", "Vardas", "-Kaina"))
|
||||||
@ -168,6 +220,13 @@ namespace LD_24.Code
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Print a table of most popular products to file
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="writer">Target file</param>
|
||||||
|
/// <param name="orders">List of orders</param>
|
||||||
|
/// <param name="popularProducts">List of most popular products</param>
|
||||||
|
/// <param name="header">Header above table</param>
|
||||||
public static void PrintMostPopularProducts(StreamWriter writer, OrderList orders, ProductList popularProducts, string header)
|
public static void PrintMostPopularProducts(StreamWriter writer, OrderList orders, ProductList popularProducts, string header)
|
||||||
{
|
{
|
||||||
foreach (var tuple in PrintTable(writer, header, popularProducts, "ID", "Vardas", "-Įtaisų kiekis, vnt.", "-Įtaisų kaina, eur."))
|
foreach (var tuple in PrintTable(writer, header, popularProducts, "ID", "Vardas", "-Įtaisų kiekis, vnt.", "-Įtaisų kaina, eur."))
|
||||||
|
@ -5,11 +5,26 @@ using System.Web;
|
|||||||
|
|
||||||
namespace LD_24.Code
|
namespace LD_24.Code
|
||||||
{
|
{
|
||||||
|
/// <summary>
|
||||||
|
/// Class used for storing a single order
|
||||||
|
/// </summary>
|
||||||
public class Order
|
public class Order
|
||||||
{
|
{
|
||||||
|
/// <summary>
|
||||||
|
/// Surname of customer who ordered
|
||||||
|
/// </summary>
|
||||||
public string CustomerSurname { get; set; }
|
public string CustomerSurname { get; set; }
|
||||||
|
/// <summary>
|
||||||
|
/// Name of customer who ordered
|
||||||
|
/// </summary>
|
||||||
public string CustomerName { get; set; }
|
public string CustomerName { get; set; }
|
||||||
|
/// <summary>
|
||||||
|
/// ID of ordered product
|
||||||
|
/// </summary>
|
||||||
public string ProductID { get; set; }
|
public string ProductID { get; set; }
|
||||||
|
/// <summary>
|
||||||
|
/// Amount of ordered products
|
||||||
|
/// </summary>
|
||||||
public int ProductAmount { get; set; }
|
public int ProductAmount { get; set; }
|
||||||
|
|
||||||
public Order(string customerSurname, string customerName, string productID, int productAmount)
|
public Order(string customerSurname, string customerName, string productID, int productAmount)
|
||||||
|
@ -6,6 +6,9 @@ using System.Web;
|
|||||||
|
|
||||||
namespace LD_24.Code
|
namespace LD_24.Code
|
||||||
{
|
{
|
||||||
|
/// <summary>
|
||||||
|
/// Stores a orders in a linked list
|
||||||
|
/// </summary>
|
||||||
public class OrderList : IEnumerable<Order>
|
public class OrderList : IEnumerable<Order>
|
||||||
{
|
{
|
||||||
class OrderNode
|
class OrderNode
|
||||||
@ -23,6 +26,10 @@ namespace LD_24.Code
|
|||||||
private OrderNode head;
|
private OrderNode head;
|
||||||
private OrderNode tail;
|
private OrderNode tail;
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Append a value to the end of the linked list
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="customer"></param>
|
||||||
public void AddToEnd(Order customer)
|
public void AddToEnd(Order customer)
|
||||||
{
|
{
|
||||||
OrderNode node = new OrderNode(customer);
|
OrderNode node = new OrderNode(customer);
|
||||||
@ -38,6 +45,10 @@ namespace LD_24.Code
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Insert a value to the start of the linked list
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="customer"></param>
|
||||||
public void AddToStart(Order customer)
|
public void AddToStart(Order customer)
|
||||||
{
|
{
|
||||||
OrderNode node = new OrderNode(customer);
|
OrderNode node = new OrderNode(customer);
|
||||||
@ -53,6 +64,10 @@ namespace LD_24.Code
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Get the number of values stored in linked list
|
||||||
|
/// </summary>
|
||||||
|
/// <returns>A count</returns>
|
||||||
public int Count()
|
public int Count()
|
||||||
{
|
{
|
||||||
int count = 0;
|
int count = 0;
|
||||||
@ -65,6 +80,9 @@ namespace LD_24.Code
|
|||||||
return count;
|
return count;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Sorts the linked list
|
||||||
|
/// </summary>
|
||||||
public void Sort()
|
public void Sort()
|
||||||
{
|
{
|
||||||
for (OrderNode nodeA = head; nodeA != null; nodeA = nodeA.Next)
|
for (OrderNode nodeA = head; nodeA != null; nodeA = nodeA.Next)
|
||||||
|
@ -23,12 +23,6 @@ namespace LD_24.Code
|
|||||||
/// </summary>
|
/// </summary>
|
||||||
public decimal Price { get; set; }
|
public decimal Price { get; set; }
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// Constructs a new product
|
|
||||||
/// </summary>
|
|
||||||
/// <param name="ID"></param>
|
|
||||||
/// <param name="name"></param>
|
|
||||||
/// <param name="price"></param>
|
|
||||||
public Product(string iD, string name, decimal price)
|
public Product(string iD, string name, decimal price)
|
||||||
{
|
{
|
||||||
ID = iD;
|
ID = iD;
|
||||||
|
@ -6,6 +6,9 @@ using System.Web;
|
|||||||
|
|
||||||
namespace LD_24.Code
|
namespace LD_24.Code
|
||||||
{
|
{
|
||||||
|
/// <summary>
|
||||||
|
/// Stores multiple products in a linked list
|
||||||
|
/// </summary>
|
||||||
public class ProductList : IEnumerable<Product>
|
public class ProductList : IEnumerable<Product>
|
||||||
{
|
{
|
||||||
class ProductNode
|
class ProductNode
|
||||||
@ -23,6 +26,10 @@ namespace LD_24.Code
|
|||||||
private ProductNode head;
|
private ProductNode head;
|
||||||
private ProductNode tail;
|
private ProductNode tail;
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Append a value to the end of the linked list
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="product"></param>
|
||||||
public void AddToEnd(Product product)
|
public void AddToEnd(Product product)
|
||||||
{
|
{
|
||||||
ProductNode node = new ProductNode(product);
|
ProductNode node = new ProductNode(product);
|
||||||
@ -38,6 +45,10 @@ namespace LD_24.Code
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Inserts a value to the start of the linked list
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="product"></param>
|
||||||
public void AddToStart(Product product)
|
public void AddToStart(Product product)
|
||||||
{
|
{
|
||||||
ProductNode node = new ProductNode(product);
|
ProductNode node = new ProductNode(product);
|
||||||
@ -53,6 +64,10 @@ namespace LD_24.Code
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Get the number of values stored in the linked list
|
||||||
|
/// </summary>
|
||||||
|
/// <returns>A count</returns>
|
||||||
public int Count()
|
public int Count()
|
||||||
{
|
{
|
||||||
int count = 0;
|
int count = 0;
|
||||||
|
@ -6,8 +6,16 @@ using System.Web;
|
|||||||
|
|
||||||
namespace LD_24.Code
|
namespace LD_24.Code
|
||||||
{
|
{
|
||||||
|
/// <summary>
|
||||||
|
/// Various functions for operations on data
|
||||||
|
/// </summary>
|
||||||
public static class TaskUtils
|
public static class TaskUtils
|
||||||
{
|
{
|
||||||
|
/// <summary>
|
||||||
|
/// Finds the most popular products by the number of sales
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="orders">List of orders</param>
|
||||||
|
/// <returns>List of products ids</returns>
|
||||||
public static List<string> FindMostPopularProducts(OrderList orders)
|
public static List<string> FindMostPopularProducts(OrderList orders)
|
||||||
{
|
{
|
||||||
Dictionary<string, int> productSales = new Dictionary<string, int>();
|
Dictionary<string, int> productSales = new Dictionary<string, int>();
|
||||||
@ -41,6 +49,12 @@ namespace LD_24.Code
|
|||||||
return mostPopularProducts;
|
return mostPopularProducts;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Counts the number of sales of a certain product
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="orders">List of products</param>
|
||||||
|
/// <param name="product">Target product id</param>
|
||||||
|
/// <returns>Sales</returns>
|
||||||
public static int CountProductSales(OrderList orders, string product)
|
public static int CountProductSales(OrderList orders, string product)
|
||||||
{
|
{
|
||||||
int sales = 0;
|
int sales = 0;
|
||||||
@ -54,19 +68,11 @@ namespace LD_24.Code
|
|||||||
return sales;
|
return sales;
|
||||||
}
|
}
|
||||||
|
|
||||||
public static OrderList FilterByProduct(OrderList orders, string product)
|
/// <summary>
|
||||||
{
|
/// Merge orders which have the same customer name, surname and product id into a single order.
|
||||||
OrderList filtered = new OrderList();
|
/// </summary>
|
||||||
foreach (Order order in orders)
|
/// <param name="orders">A list of orders</param>
|
||||||
{
|
/// <returns>A list of orders where same orders have been merged</returns>
|
||||||
if (order.ProductID == product)
|
|
||||||
{
|
|
||||||
filtered.AddToEnd(order);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
return filtered;
|
|
||||||
}
|
|
||||||
|
|
||||||
public static OrderList MergeOrders(OrderList orders)
|
public static OrderList MergeOrders(OrderList orders)
|
||||||
{
|
{
|
||||||
Dictionary<Tuple<string, string, string>, Order> ordersByName = new Dictionary<Tuple<string, string, string>, Order>();
|
Dictionary<Tuple<string, string, string>, Order> ordersByName = new Dictionary<Tuple<string, string, string>, Order>();
|
||||||
@ -90,6 +96,12 @@ namespace LD_24.Code
|
|||||||
return mergedOrders;
|
return mergedOrders;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Finds a product by it's id
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="products">List of products</param>
|
||||||
|
/// <param name="id">Target product id</param>
|
||||||
|
/// <returns>The product</returns>
|
||||||
public static Product FindByID(ProductList products, string id)
|
public static Product FindByID(ProductList products, string id)
|
||||||
{
|
{
|
||||||
foreach (Product product in products)
|
foreach (Product product in products)
|
||||||
@ -102,6 +114,12 @@ namespace LD_24.Code
|
|||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Find all products by their ids
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="products">List of products</param>
|
||||||
|
/// <param name="ids">List of product ids</param>
|
||||||
|
/// <returns>List of products</returns>
|
||||||
public static ProductList FindByID(ProductList products, List<string> ids)
|
public static ProductList FindByID(ProductList products, List<string> ids)
|
||||||
{
|
{
|
||||||
ProductList foundProducts = new ProductList();
|
ProductList foundProducts = new ProductList();
|
||||||
@ -112,14 +130,22 @@ namespace LD_24.Code
|
|||||||
return foundProducts;
|
return foundProducts;
|
||||||
}
|
}
|
||||||
|
|
||||||
public static ProductList FilterByQuantitySoldAndPrice(ProductList products, OrderList customers, int minSold, decimal maxPrice)
|
/// <summary>
|
||||||
|
/// Filter a list of products by sales and price.
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="products">List of products</param>
|
||||||
|
/// <param name="orders">List of orders</param>
|
||||||
|
/// <param name="minSold">Minimmum sales amount</param>
|
||||||
|
/// <param name="maxPrice">Max product price</param>
|
||||||
|
/// <returns>A list of filtered products</returns>
|
||||||
|
public static ProductList FilterByQuantitySoldAndPrice(ProductList products, OrderList orders, int minSold, decimal maxPrice)
|
||||||
{
|
{
|
||||||
ProductList filtered = new ProductList();
|
ProductList filtered = new ProductList();
|
||||||
foreach (Product product in products)
|
foreach (Product product in products)
|
||||||
{
|
{
|
||||||
if (product.Price < maxPrice)
|
if (product.Price < maxPrice)
|
||||||
{
|
{
|
||||||
int sold = CountProductSales(customers, product.ID);
|
int sold = CountProductSales(orders, product.ID);
|
||||||
if (sold >= minSold)
|
if (sold >= minSold)
|
||||||
{
|
{
|
||||||
filtered.AddToEnd(product);
|
filtered.AddToEnd(product);
|
||||||
@ -129,6 +155,11 @@ namespace LD_24.Code
|
|||||||
return filtered;
|
return filtered;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Find all customer which bought only 1 type of product
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="orders">List of orders</param>
|
||||||
|
/// <returns>A list of filtered orders</returns>
|
||||||
public static OrderList FindCustomerWithSingleProduct(OrderList orders)
|
public static OrderList FindCustomerWithSingleProduct(OrderList orders)
|
||||||
{
|
{
|
||||||
Dictionary<Tuple<string, string>, OrderList> ordersByCusomer = new Dictionary<Tuple<string, string>, OrderList>();
|
Dictionary<Tuple<string, string>, OrderList> ordersByCusomer = new Dictionary<Tuple<string, string>, OrderList>();
|
||||||
@ -152,6 +183,5 @@ namespace LD_24.Code
|
|||||||
}
|
}
|
||||||
return finalList;
|
return finalList;
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -9,9 +9,11 @@ using LD_24.Code;
|
|||||||
|
|
||||||
namespace LD_24
|
namespace LD_24
|
||||||
{
|
{
|
||||||
|
/// <summary>
|
||||||
|
/// Main form
|
||||||
|
/// </summary>
|
||||||
public partial class Forma1 : System.Web.UI.Page
|
public partial class Forma1 : System.Web.UI.Page
|
||||||
{
|
{
|
||||||
private const string targetProductID = "1";
|
|
||||||
private const string inputFileA = "App_Data/U24a.txt";
|
private const string inputFileA = "App_Data/U24a.txt";
|
||||||
private const string inputFileB = "App_Data/U24b.txt";
|
private const string inputFileB = "App_Data/U24b.txt";
|
||||||
private const string outputFilename = "App_Data/Rezultatai.txt";
|
private const string outputFilename = "App_Data/Rezultatai.txt";
|
||||||
|
@ -11,6 +11,13 @@ namespace LD_24
|
|||||||
{
|
{
|
||||||
public partial class Forma1 : System.Web.UI.Page
|
public partial class Forma1 : System.Web.UI.Page
|
||||||
{
|
{
|
||||||
|
/// <summary>
|
||||||
|
/// Show a list in a table
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="table">Target table</param>
|
||||||
|
/// <param name="list">Target list</param>
|
||||||
|
/// <param name="columns">Columns names</param>
|
||||||
|
/// <returns></returns>
|
||||||
private IEnumerable<Tuple<object, TableRow>> ShowTable(Table table, IEnumerable list, params string[] columns)
|
private IEnumerable<Tuple<object, TableRow>> ShowTable(Table table, IEnumerable list, params string[] columns)
|
||||||
{
|
{
|
||||||
TableRow header = new TableRow();
|
TableRow header = new TableRow();
|
||||||
@ -37,15 +44,11 @@ namespace LD_24
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
private IEnumerable<Tuple<object, TableRow>> ShowTable(Table table, string title, IEnumerable list, params string[] columns)
|
/// <summary>
|
||||||
{
|
/// Show a list of products in a table
|
||||||
TableRow row = new TableRow();
|
/// </summary>
|
||||||
row.Cells.Add(new TableCell { Text = title, ColumnSpan = columns.Length });
|
/// <param name="table">Target table</param>
|
||||||
table.Rows.Add(row);
|
/// <param name="products">Target products</param>
|
||||||
|
|
||||||
return ShowTable(table, list, columns);
|
|
||||||
}
|
|
||||||
|
|
||||||
public void ShowProducts(Table table, ProductList products)
|
public void ShowProducts(Table table, ProductList products)
|
||||||
{
|
{
|
||||||
foreach (var tuple in ShowTable(table, products, "ID", "Vardas", "Kaina, eur."))
|
foreach (var tuple in ShowTable(table, products, "ID", "Vardas", "Kaina, eur."))
|
||||||
@ -58,6 +61,11 @@ namespace LD_24
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Show a list of orders in a table
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="table">Target table</param>
|
||||||
|
/// <param name="orders">Target orders</param>
|
||||||
public void ShowOrders(Table table, OrderList orders)
|
public void ShowOrders(Table table, OrderList orders)
|
||||||
{
|
{
|
||||||
foreach (var tuple in ShowTable(table, orders, "Pavardė", "Vardas", "Įtaisas", "Įtaisų kiekis, vnt."))
|
foreach (var tuple in ShowTable(table, orders, "Pavardė", "Vardas", "Įtaisas", "Įtaisų kiekis, vnt."))
|
||||||
@ -71,6 +79,12 @@ namespace LD_24
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Show the most popular products in a table
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="table">Target table</param>
|
||||||
|
/// <param name="orders">Target orders</param>
|
||||||
|
/// <param name="popularProducts">List of most popular products</param>
|
||||||
public void ShowMostPopularProducts(Table table, OrderList orders, ProductList popularProducts)
|
public void ShowMostPopularProducts(Table table, OrderList orders, ProductList popularProducts)
|
||||||
{
|
{
|
||||||
foreach (var tuple in ShowTable(table, popularProducts, "ID", "Vardas", "Įtaisų kiekis, vnt.", "Įtaisų kaina, eur."))
|
foreach (var tuple in ShowTable(table, popularProducts, "ID", "Vardas", "Įtaisų kiekis, vnt.", "Įtaisų kaina, eur."))
|
||||||
@ -85,6 +99,12 @@ namespace LD_24
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Show a list of orders with their prices in a table
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="table">Target table</param>
|
||||||
|
/// <param name="orders">Target orders</param>
|
||||||
|
/// <param name="products">List of products</param>
|
||||||
public void ShowOrdersWithPrices(Table table, OrderList orders, ProductList products)
|
public void ShowOrdersWithPrices(Table table, OrderList orders, ProductList products)
|
||||||
{
|
{
|
||||||
foreach (var tuple in ShowTable(table, orders, "Pavardė", "Vardas", "Įtaisų kiekis, vnt.", "Sumokėta, eur."))
|
foreach (var tuple in ShowTable(table, orders, "Pavardė", "Vardas", "Įtaisų kiekis, vnt.", "Sumokėta, eur."))
|
||||||
|
@ -76,6 +76,9 @@
|
|||||||
<Content Include="tests\1\inputs\U24a.txt" />
|
<Content Include="tests\1\inputs\U24a.txt" />
|
||||||
<Content Include="tests\1\inputs\U24b.txt" />
|
<Content Include="tests\1\inputs\U24b.txt" />
|
||||||
<Content Include="tests\1\outputs\Rezultatai.txt" />
|
<Content Include="tests\1\outputs\Rezultatai.txt" />
|
||||||
|
<Content Include="tests\2\inputs\U24a.txt" />
|
||||||
|
<Content Include="tests\2\inputs\U24b.txt" />
|
||||||
|
<Content Include="tests\2\outputs\Rezultatai.txt" />
|
||||||
<Content Include="Web.config" />
|
<Content Include="Web.config" />
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
|
Loading…
Reference in New Issue
Block a user