public List <KeyValuePair <string, string> > GetItemStores(CartItem currItem) { var storeIds = HistItemQuery.GetStores(currItem); var storeData = storeIds.Select(s => StoreQuery.GetStoreHeader(s.Key, s.Value)).ToList(); return(storeData.Select(i => new KeyValuePair <string, string>($"{i.ChainId}-{i.StoreId}", $"{i.ChainName}-{i.StoreName}")).ToList()); }
public void SaveItemHistory(string currStore, CartItem currItem, string path) { using (var package = new ExcelPackage()) { List <string> storeId = currStore.Split('-').ToList(); StoreHeader storeData = StoreQuery.GetStoreHeader(Convert.ToInt64(storeId[0]), Convert.ToInt32(storeId[1])); var priceHist = HistItemQuery.GetItemHistory(currItem, storeData); var workbook = package.Workbook; var worksheet = workbook.Worksheets.Add("ItemHistory"); int currRow = 1; var dateHeadCell = worksheet.Cells[currRow, 1]; dateHeadCell.Value = "Date"; var priceHeadCell = worksheet.Cells[currRow, 2]; priceHeadCell.Value = "Price"; foreach (var record in priceHist) { currRow++; var dateCell = worksheet.Cells[currRow, 1]; dateCell.Value = record.Key.Date.ToString("dd/MM/yyyy"); var priceCell = worksheet.Cells[currRow, 2]; priceCell.Value = record.Value; } var chart = worksheet.Drawings.AddChart("chart", eChartType.ColumnStacked); var series = chart.Series.Add($"B2:B{currRow}", $"A2:A{currRow}"); series.Header = "Price"; package.SaveAs(new System.IO.FileInfo(path)); } }
public PricingLogicManager() { User = string.Empty; AccQuery = new AccountQuery(); ItemQuery = new ItemQuery(); StoreQuery = new StoreQuery(); HistItemQuery = new HistItemQuery(); userCart = new Cart(); }