protected override FlowDocument GetReport() { var report = new SimpleReport("8cm"); report.AddHeader("Samba POS"); report.AddHeader(Resources.InventoryReport); report.AddHeader(string.Format(Resources.As_f, DateTime.Now)); var lastPeriodicConsumption = ReportContext.GetCurrentPeriodicConsumption(); var consumptionItems = lastPeriodicConsumption.PeriodicConsumptionItems; if (consumptionItems.Any()) { report.AddColumTextAlignment("InventoryTable", TextAlignment.Left, TextAlignment.Left, TextAlignment.Right); report.AddColumnLength("InventoryTable", "45*", "30*", "35*"); report.AddTable("InventoryTable", Resources.InventoryItem, Resources.Unit, Resources.Quantity); foreach (var costItem in consumptionItems) { report.AddRow("InventoryTable", costItem.InventoryItem.Name, costItem.InventoryItem.TransactionUnit ?? costItem.InventoryItem.BaseUnit, costItem.GetPhysicalInventory().ToString("#,#0.##")); } } else { report.AddHeader(Resources.ThereAreNoCostTransactionsInThisPeriod); } return(report.Document); }
public FlowDocument CreateReport(string reportHeader, bool? returnReceivables, bool selectInternalAccounts) { var report = new SimpleReport("8cm"); report.AddHeader("Vero"); report.AddHeader(reportHeader); report.AddHeader(string.Format(Resources.As_f, DateTime.Now)); var accounts = GetBalancedAccounts(selectInternalAccounts); if (returnReceivables != null) accounts = returnReceivables.GetValueOrDefault(false) ? accounts.Where(x => x.Amount < 0) : accounts.Where(x => x.Amount > 0); report.AddColumTextAlignment("Tablo", TextAlignment.Left, TextAlignment.Left, TextAlignment.Right); report.AddColumnLength("Tablo", "35*", "35*", "30*"); if (accounts.Count() > 0) { report.AddTable("Tablo", Resources.Accounts, "", ""); var total = 0m; foreach (var account in accounts) { total += Math.Abs(account.Amount); report.AddRow("Tablo", account.PhoneNumber, account.CustomerName, Math.Abs(account.Amount).ToString(ReportContext.CurrencyFormat)); } report.AddRow("Tablo", Resources.GrandTotal, "", total); } else { report.AddHeader(string.Format(Resources.NoTransactionsFoundFor_f, reportHeader)); } return report.Document; }
protected override FlowDocument GetReport() { var report = new SimpleReport("8cm"); report.AddHeader("Samba POS"); report.AddHeader(Resources.InventoryReport); report.AddHeader(string.Format(Resources.As_f, DateTime.Now)); var lastPeriodicConsumption = ReportContext.GetCurrentPeriodicConsumption(); var consumptionItems = lastPeriodicConsumption.PeriodicConsumptionItems; if (consumptionItems.Count() > 0) { report.AddColumTextAlignment("InventoryTable", TextAlignment.Left, TextAlignment.Left, TextAlignment.Right); report.AddColumnLength("InventoryTable", "45*", "30*", "35*"); report.AddTable("InventoryTable", Resources.InventoryItem, Resources.Unit, Resources.Quantity); foreach (var costItem in consumptionItems) { report.AddRow("InventoryTable", costItem.InventoryItem.Name, costItem.InventoryItem.TransactionUnit??costItem.InventoryItem.BaseUnit, costItem.GetPhysicalInventory().ToString("#,#0.##")); } } else report.AddHeader(Resources.ThereAreNoCostTransactionsInThisPeriod); return report.Document; }
protected override FlowDocument GetReport() { var report = new SimpleReport("8cm"); AddDefaultReportHeader(report, ReportContext.CurrentWorkPeriod, Resources.InventoryPurchaseReport); var transactionGroups = ReportContext.Transactions.SelectMany(x => x.TransactionItems) .GroupBy(x => new { x.InventoryItem.GroupCode }) .Select(x => new { ItemName = x.Key.GroupCode, Total = x.Sum(y => (y.Price * y.Quantity)) }); if (transactionGroups.Count() > 0) { report.AddColumTextAlignment("GrupToplam", TextAlignment.Left, TextAlignment.Right); report.AddColumnLength("GrupToplam", "60*", "40*"); report.AddTable("GrupToplam", Resources.InventoryGroup, Resources.Total); if (transactionGroups.Count() > 1) { foreach (var transactionItem in transactionGroups) { report.AddRow("GrupToplam", !string.IsNullOrEmpty(transactionItem.ItemName) ? transactionItem.ItemName : Resources.UndefinedWithBrackets, transactionItem.Total.ToString(ReportContext.CurrencyFormat)); } } report.AddRow("GrupToplam", Resources.Total, transactionGroups.Sum(x => x.Total).ToString(ReportContext.CurrencyFormat)); } var transactionItems = ReportContext.Transactions.SelectMany(x => x.TransactionItems) .GroupBy(x => new { x.InventoryItem.Name, x.Unit }) .Select(x => new { ItemName = x.Key.Name, Quantity = x.Sum(y => y.Quantity), x.Key.Unit, Total = x.Sum(y => y.Price * y.Quantity) }); if (transactionItems.Count() > 0) { report.AddColumTextAlignment("Alımlar", TextAlignment.Left, TextAlignment.Right, TextAlignment.Left, TextAlignment.Right); report.AddColumnLength("Alımlar", "40*", "20*", "15*", "25*"); report.AddTable("Alımlar", Resources.InventoryItem, Resources.Quantity, Resources.Unit, Resources.AveragePrice_ab); foreach (var transactionItem in transactionItems) { report.AddRow("Alımlar", transactionItem.ItemName, transactionItem.Quantity.ToString("#,#0.##"), transactionItem.Unit, (transactionItem.Total / transactionItem.Quantity).ToString(ReportContext.CurrencyFormat)); } } else { report.AddHeader(""); report.AddHeader(Resources.NoPurchaseTransactionInCurrentDateRange); } return(report.Document); }
protected override FlowDocument GetReport() { var report = new SimpleReport("8cm"); AddDefaultReportHeader(report, ReportContext.CurrentWorkPeriod, Resources.InventoryPurchaseReport); var transactionGroups = ReportContext.Transactions.SelectMany(x => x.TransactionItems) .GroupBy(x => new { x.InventoryItem.GroupCode }) .Select(x => new { ItemName = x.Key.GroupCode, Total = x.Sum(y => (y.Price * y.Quantity)) }); if (transactionGroups.Count() > 0) { report.AddColumTextAlignment("GrupToplam", TextAlignment.Left, TextAlignment.Right); report.AddColumnLength("GrupToplam", "60*", "40*"); report.AddTable("GrupToplam", Resources.InventoryGroup, Resources.Total); if (transactionGroups.Count() > 1) { foreach (var transactionItem in transactionGroups) { report.AddRow("GrupToplam", !string.IsNullOrEmpty(transactionItem.ItemName) ? transactionItem.ItemName : Resources.UndefinedWithBrackets, transactionItem.Total.ToString(ReportContext.CurrencyFormat)); } } report.AddRow("GrupToplam", Resources.Total, transactionGroups.Sum(x => x.Total).ToString(ReportContext.CurrencyFormat)); } var transactionItems = ReportContext.Transactions.SelectMany(x => x.TransactionItems) .GroupBy(x => new { x.InventoryItem.Name, x.Unit }) .Select(x => new { ItemName = x.Key.Name, Quantity = x.Sum(y => y.Quantity), x.Key.Unit, Total = x.Sum(y => y.Price * y.Quantity) }); if (transactionItems.Count() > 0) { report.AddColumTextAlignment("Alımlar", TextAlignment.Left, TextAlignment.Right, TextAlignment.Left, TextAlignment.Right); report.AddColumnLength("Alımlar", "40*", "20*", "15*", "25*"); report.AddTable("Alımlar", Resources.InventoryItem, Resources.Quantity, Resources.Unit, Resources.AveragePrice_ab); foreach (var transactionItem in transactionItems) { report.AddRow("Alımlar", transactionItem.ItemName, transactionItem.Quantity.ToString("#,#0.##"), transactionItem.Unit, (transactionItem.Total / transactionItem.Quantity).ToString(ReportContext.CurrencyFormat)); } } else { report.AddHeader(""); report.AddHeader(Resources.NoPurchaseTransactionInCurrentDateRange); } return report.Document; }
protected override FlowDocument GetReport() { var currentPeriod = ReportContext.CurrentWorkPeriod; var report = new SimpleReport("8cm"); AddDefaultReportHeader(report, currentPeriod, Resources.CsvBuilder); report.Header.TextAlignment = TextAlignment.Left; report.AddHeader(""); report.AddHeader(Resources.ClickLinksToExportData); report.AddHeader(""); report.AddLink(Resources.ExportSalesData); HandleLink(Resources.ExportSalesData); return report.Document; }
protected override FlowDocument GetReport() { var currentPeriod = ReportContext.CurrentWorkPeriod; var report = new SimpleReport("8cm"); AddDefaultReportHeader(report, currentPeriod, Resources.CsvBuilder); report.Header.TextAlignment = TextAlignment.Left; report.AddHeader(""); report.AddHeader(Resources.ClickLinksToExportData); report.AddHeader(""); report.AddLink(Resources.ExportSalesData); HandleLink(Resources.ExportSalesData); return(report.Document); }
protected override FlowDocument GetReport() { var report = new SimpleReport("8cm"); AddDefaultReportHeader(report, ReportContext.CurrentWorkPeriod, Resources.CostReport); var costItems = ReportContext.PeriodicConsumptions.SelectMany(x => x.CostItems) .GroupBy(x => new { ItemName = x.Name, PortionName = x.Portion.Name }) .Select(x => new { x.Key.ItemName, x.Key.PortionName, TotalQuantity = x.Sum(y => y.Quantity), TotalCost = x.Sum(y => y.Cost * y.Quantity) }); if (costItems.Count() > 0) { report.AddColumTextAlignment("Maliyet", TextAlignment.Left, TextAlignment.Left, TextAlignment.Right, TextAlignment.Right); report.AddColumnLength("Maliyet", "38*", "20*", "17*", "25*"); report.AddTable("Maliyet", Resources.MenuItem, Resources.Portion, Resources.Quantity, Resources.AverageCost); foreach (var costItem in costItems) { report.AddRow("Maliyet", costItem.ItemName, costItem.PortionName, costItem.TotalQuantity.ToString("#,#0.##"), (costItem.TotalCost / costItem.TotalQuantity).ToString(ReportContext.CurrencyFormat)); } report.AddRow("Maliyet", Resources.Total, "", "", costItems.Sum(x => x.TotalCost).ToString(ReportContext.CurrencyFormat)); } else report.AddHeader(Resources.ThereAreNoCostTransactionsInThisPeriod); return report.Document; }
protected override FlowDocument GetReport() { var report = new SimpleReport("8cm"); AddDefaultReportHeader(report, ReportContext.CurrentWorkPeriod, Resources.CostReport); var costItems = ReportContext.PeriodicConsumptions.SelectMany(x => x.WarehouseConsumptions).SelectMany(x => x.CostItems) .GroupBy(x => new { ItemName = x.Name, x.PortionName }) .Select(x => new { x.Key.ItemName, x.Key.PortionName, TotalQuantity = x.Sum(y => y.Quantity), TotalCost = x.Sum(y => y.Cost * y.Quantity) }).ToList(); if (costItems.Any()) { report.AddColumTextAlignment("Maliyet", TextAlignment.Left, TextAlignment.Left, TextAlignment.Right, TextAlignment.Right); report.AddColumnLength("Maliyet", "38*", "20*", "17*", "25*"); report.AddTable("Maliyet", Resources.MenuItem, Resources.Portion, Resources.Quantity, Resources.AverageCost); foreach (var costItem in costItems) { report.AddRow("Maliyet", costItem.ItemName, costItem.PortionName, costItem.TotalQuantity.ToString("#,#0.##"), (costItem.TotalCost / costItem.TotalQuantity).ToString(ReportContext.CurrencyFormat)); } report.AddRow("Maliyet", Resources.Total, "", "", costItems.Sum(x => x.TotalCost).ToString(ReportContext.CurrencyFormat)); } else { report.AddHeader(Resources.ThereAreNoCostTransactionsInThisPeriod); } return(report.Document); }
public void AddDefaultReportHeader(SimpleReport report, WorkPeriod workPeriod, string caption) { var userInfo = _settingService.ProgramSettings.UserInfo; report.AddHeader(!string.IsNullOrEmpty(userInfo) ? userInfo : "MagentixPOS"); report.AddHeader(caption); if (workPeriod.EndDate > workPeriod.StartDate) { report.AddHeader(workPeriod.StartDate.ToString("dd MMMM yyyy HH:mm") + " - " + workPeriod.EndDate.ToString("dd MMMM yyyy HH:mm")); } else { report.AddHeader(workPeriod.StartDate.ToString("dd MMMM yyyy HH:mm") + " - " + DateTime.Now.ToString("dd MMMM yyyy HH:mm")); } }
public FlowDocument CreateReport(string reportHeader, bool?returnReceivables, bool selectInternalAccounts) { var report = new SimpleReport("8cm"); report.AddHeader("Samba POS"); report.AddHeader(reportHeader); report.AddHeader(string.Format(Resources.As_f, DateTime.Now)); var accounts = GetBalancedAccounts(selectInternalAccounts).ToList(); if (returnReceivables != null) { accounts = returnReceivables.GetValueOrDefault(false) ? accounts.Where(x => x.Amount < 0).ToList() : accounts.Where(x => x.Amount > 0).ToList(); } report.AddColumTextAlignment("Tablo", TextAlignment.Left, TextAlignment.Left, TextAlignment.Right); report.AddColumnLength("Tablo", "35*", "35*", "30*"); if (accounts.Any()) { report.AddTable("Tablo", Resources.Accounts, "", ""); var total = 0m; foreach (var account in accounts) { total += Math.Abs(account.Amount); report.AddRow("Tablo", account.PhoneNumber, account.AccountName, Math.Abs(account.Amount).ToString(ReportContext.CurrencyFormat)); } report.AddRow("Tablo", Resources.GrandTotal, "", total.ToString(ReportContext.CurrencyFormat)); } else { report.AddHeader(string.Format(Resources.NoTransactionsFoundFor_f, reportHeader)); } return(report.Document); }
protected override FlowDocument GetReport() { var report = new SimpleReport("8cm"); report.AddHeader("Magentix POS"); report.AddHeader(Resources.InventoryReport); report.AddHeader(string.Format(Resources.As_f, DateTime.Now)); var lastPeriodicConsumption = ReportContext.GetCurrentPeriodicConsumption(); foreach (var warehouseConsumption in lastPeriodicConsumption.WarehouseConsumptions.OrderBy(GetWarehouseOrder)) { if (warehouseConsumption.PeriodicConsumptionItems.Any()) { var warehouse = _cacheService.GetWarehouses().SingleOrDefault(x => x.Id == warehouseConsumption.WarehouseId) ?? Warehouse.Undefined; var inventoryTableSlug = "InventoryTable_" + warehouseConsumption.WarehouseId; report.AddColumTextAlignment(inventoryTableSlug, TextAlignment.Left, TextAlignment.Left, TextAlignment.Right); report.AddColumnLength(inventoryTableSlug, "5*", "*", "*"); report.AddTable(inventoryTableSlug, warehouse.Name, "", ""); foreach (var periodicConsumptionItem in warehouseConsumption.PeriodicConsumptionItems) { report.AddRow(inventoryTableSlug, periodicConsumptionItem.InventoryItemName, periodicConsumptionItem.UnitName, periodicConsumptionItem.GetPhysicalInventory().ToString(LocalSettings.ReportQuantityFormat)); } } } return(report.Document); }
public void AddDefaultReportHeader(SimpleReport report, WorkPeriod workPeriod, string caption) { var userInfo = _settingService.ProgramSettings.UserInfo; report.AddHeader(!string.IsNullOrEmpty(userInfo) ? userInfo : "SambaPOS"); report.AddHeader(caption); if (workPeriod.EndDate > workPeriod.StartDate) report.AddHeader(workPeriod.StartDate.ToString("dd MMMM yyyy HH:mm") + " - " + workPeriod.EndDate.ToString("dd MMMM yyyy HH:mm")); else { report.AddHeader(workPeriod.StartDate.ToString("dd MMMM yyyy HH:mm") + " - " + DateTime.Now.ToString("dd MMMM yyyy HH:mm")); } }
protected override FlowDocument GetReport() { var report = new SimpleReport("8cm"); AddDefaultReportHeader(report, ReportContext.CurrentWorkPeriod, Resources.CashReport); if (ReportContext.CurrentWorkPeriod.Id == 0) { report.AddHeader(" "); report.AddHeader(Resources.DateRangeIsNotActiveWorkPeriod); report.AddHeader(Resources.ReportDoesNotContainsCashState); } var cashExpenseTotal = ReportContext.CashTransactions .Where(x => x.PaymentType == (int)PaymentType.Cash && x.TransactionType == (int)TransactionType.Expense) .Sum(x => x.Amount); var creditCardExpenseTotal = ReportContext.CashTransactions .Where(x => x.PaymentType == (int)PaymentType.CreditCard && x.TransactionType == (int)TransactionType.Expense) .Sum(x => x.Amount); var ticketExpenseTotal = ReportContext.CashTransactions .Where(x => x.PaymentType == (int)PaymentType.Ticket && x.TransactionType == (int)TransactionType.Expense) .Sum(x => x.Amount); var cashIncomeTotal = ReportContext.CashTransactions .Where(x => x.PaymentType == (int)PaymentType.Cash && x.TransactionType == (int)TransactionType.Income) .Sum(x => x.Amount); var ticketIncomeTotal = ReportContext.CashTransactions .Where(x => x.PaymentType == (int)PaymentType.Ticket && x.TransactionType == (int)TransactionType.Income) .Sum(x => x.Amount); var creditCardIncomeTotal = ReportContext.CashTransactions .Where(x => x.PaymentType == (int)PaymentType.CreditCard && x.TransactionType == (int)TransactionType.Income) .Sum(x => x.Amount); var expenseTransactions = ReportContext.CashTransactions.Where(x => x.TransactionType == (int)TransactionType.Expense); if (expenseTransactions.Count() > 0) { report.AddColumTextAlignment("Gider", TextAlignment.Left, TextAlignment.Left, TextAlignment.Right); report.AddColumnLength("Gider", "15*", "Auto", "25*"); report.AddTable("Gider", Resources.Expenses, "", ""); report.AddBoldRow("Gider", Resources.CashTransactions.ToUpper(), "", ""); foreach (var cashTransaction in expenseTransactions) { report.AddRow("Gider", GetPaymentString(cashTransaction.PaymentType), Fct(cashTransaction), Fs(cashTransaction.Amount)); } report.AddBoldRow("Gider", Resources.Totals.ToUpper(), "", ""); report.AddRow("Gider", GetPaymentString(0), Resources.TotalExpense, Fs(cashExpenseTotal)); report.AddRow("Gider", GetPaymentString(1), Resources.TotalExpense, Fs(creditCardExpenseTotal)); report.AddRow("Gider", GetPaymentString(2), Resources.TotalExpense, Fs(ticketExpenseTotal)); report.AddRow("Gider", Resources.GrandTotal.ToUpper(), "", Fs(cashExpenseTotal + creditCardExpenseTotal + ticketExpenseTotal)); } var ac = ReportContext.GetOperationalAmountCalculator(); report.AddColumTextAlignment("Gelir", TextAlignment.Left, TextAlignment.Left, TextAlignment.Right); report.AddColumnLength("Gelir", "15*", "Auto", "25*"); report.AddTable("Gelir", Resources.Incomes, "", ""); if (ReportContext.CurrentWorkPeriod.Id > 0) //devreden rakamları aktif çalışma dönemlerinden biri seçildiyse çalışır { var total = ReportContext.CurrentWorkPeriod.CashAmount + ReportContext.CurrentWorkPeriod.CreditCardAmount + ReportContext.CurrentWorkPeriod.TicketAmount; if (total > 0) { report.AddBoldRow("Gelir", Resources.StartAmount.ToUpper(), "", ""); if (ReportContext.CurrentWorkPeriod.CashAmount > 0) report.AddRow("Gelir", GetPaymentString(0) + " " + Resources.StartAmount, "", Fs(ReportContext.CurrentWorkPeriod.CashAmount)); if (ReportContext.CurrentWorkPeriod.CreditCardAmount > 0) report.AddRow("Gelir", GetPaymentString(1) + " " + Resources.StartAmount, "", Fs(ReportContext.CurrentWorkPeriod.CreditCardAmount)); if (ReportContext.CurrentWorkPeriod.TicketAmount > 0) report.AddRow("Gelir", GetPaymentString(2) + " " + Resources.StartAmount, "", Fs(ReportContext.CurrentWorkPeriod.TicketAmount)); report.AddRow("Gelir", Resources.Total.ToUpper(), "", Fs(total)); } } var incomeTransactions = ReportContext.CashTransactions.Where(x => x.TransactionType == (int)TransactionType.Income); if (incomeTransactions.Count() > 0) { report.AddBoldRow("Gelir", Resources.SalesIncome.ToUpper(), "", ""); if (ac.CashTotal > 0) report.AddRow("Gelir", GetPaymentString(0) + " " + Resources.SalesIncome, "", Fs(ac.CashTotal)); if (ac.CreditCardTotal > 0) report.AddRow("Gelir", GetPaymentString(1) + " " + Resources.SalesIncome, "", Fs(ac.CreditCardTotal)); if (ac.TicketTotal > 0) report.AddRow("Gelir", GetPaymentString(2) + " " + Resources.SalesIncome, "", Fs(ac.TicketTotal)); report.AddRow("Gelir", Resources.Total.ToUpper(), "", Fs(ac.CashTotal + ac.CreditCardTotal + ac.TicketTotal)); report.AddBoldRow("Gelir", Resources.CashTransactions.ToUpper(), "", ""); var it = 0m; foreach (var cashTransaction in incomeTransactions) { it += cashTransaction.Amount; report.AddRow("Gelir", GetPaymentString(cashTransaction.PaymentType), Fct(cashTransaction), Fs(cashTransaction.Amount)); } report.AddRow("Gelir", Resources.Total.ToUpper(), "", Fs(it)); } var totalCashIncome = cashIncomeTotal + ac.CashTotal + ReportContext.CurrentWorkPeriod.CashAmount; var totalCreditCardIncome = creditCardIncomeTotal + ac.CreditCardTotal + ReportContext.CurrentWorkPeriod.CreditCardAmount; var totalTicketIncome = ticketIncomeTotal + ac.TicketTotal + ReportContext.CurrentWorkPeriod.TicketAmount; report.AddBoldRow("Gelir", Resources.Income.ToUpper() + " " + Resources.Totals.ToUpper(), "", ""); report.AddRow("Gelir", GetPaymentString(0), Resources.TotalIncome, Fs(totalCashIncome)); report.AddRow("Gelir", GetPaymentString(1), Resources.TotalIncome, Fs(totalCreditCardIncome)); report.AddRow("Gelir", GetPaymentString(2), Resources.TotalIncome, Fs(totalTicketIncome)); report.AddRow("Gelir", Resources.GrandTotal.ToUpper(), "", Fs(totalCashIncome + totalCreditCardIncome + totalTicketIncome)); //-------------------- report.AddColumTextAlignment("Toplam", TextAlignment.Left, TextAlignment.Right); report.AddColumnLength("Toplam", "Auto", "25*"); report.AddTable("Toplam", Resources.CashStatus, ""); report.AddRow("Toplam", Resources.Cash, Fs(totalCashIncome - cashExpenseTotal)); report.AddRow("Toplam", Resources.CreditCard, Fs(totalCreditCardIncome - creditCardExpenseTotal)); report.AddRow("Toplam", Resources.Voucher, Fs(totalTicketIncome - ticketExpenseTotal)); report.AddRow("Toplam", Resources.GrandTotal.ToUpper(), Fs((totalCashIncome - cashExpenseTotal) + (totalCreditCardIncome - creditCardExpenseTotal) + (totalTicketIncome - ticketExpenseTotal))); return report.Document; }
public void AddDefaultReportHeader(SimpleReport report, WorkPeriod workPeriod, string caption) { report.AddHeader("Samba POS"); report.AddHeader(caption); if (workPeriod.EndDate > workPeriod.StartDate) report.AddHeader(workPeriod.StartDate.ToString("dd MMMM yyyy HH:mm") + " - " + workPeriod.EndDate.ToString("dd MMMM yyyy HH:mm")); else { report.AddHeader(workPeriod.StartDate.ToString("dd MMMM yyyy HH:mm") + " - " + DateTime.Now.ToString("dd MMMM yyyy HH:mm")); } }
protected override FlowDocument GetReport() { var report = new SimpleReport("8cm"); AddDefaultReportHeader(report, ReportContext.CurrentWorkPeriod, Resources.CashReport); if (ReportContext.CurrentWorkPeriod.Id == 0) { report.AddHeader(" "); report.AddHeader(Resources.DateRangeIsNotActiveWorkPeriod); report.AddHeader(Resources.ReportDoesNotContainsCashState); } var cashExpenseTotal = ReportContext.CashTransactions .Where(x => x.PaymentType == (int)PaymentType.Cash && x.TransactionType == (int)TransactionType.Expense) .Sum(x => x.Amount); var creditCardExpenseTotal = ReportContext.CashTransactions .Where(x => x.PaymentType == (int)PaymentType.CreditCard && x.TransactionType == (int)TransactionType.Expense) .Sum(x => x.Amount); var ticketExpenseTotal = ReportContext.CashTransactions .Where(x => x.PaymentType == (int)PaymentType.Ticket && x.TransactionType == (int)TransactionType.Expense) .Sum(x => x.Amount); var cashIncomeTotal = ReportContext.CashTransactions .Where(x => x.PaymentType == (int)PaymentType.Cash && x.TransactionType == (int)TransactionType.Income) .Sum(x => x.Amount); var ticketIncomeTotal = ReportContext.CashTransactions .Where(x => x.PaymentType == (int)PaymentType.Ticket && x.TransactionType == (int)TransactionType.Income) .Sum(x => x.Amount); var creditCardIncomeTotal = ReportContext.CashTransactions .Where(x => x.PaymentType == (int)PaymentType.CreditCard && x.TransactionType == (int)TransactionType.Income) .Sum(x => x.Amount); var expenseTransactions = ReportContext.CashTransactions.Where(x => x.TransactionType == (int)TransactionType.Expense); if (expenseTransactions.Count() > 0) { report.AddColumTextAlignment("Gider", TextAlignment.Left, TextAlignment.Left, TextAlignment.Right); report.AddColumnLength("Gider", "15*", "Auto", "25*"); report.AddTable("Gider", Resources.Expenses, "", ""); report.AddBoldRow("Gider", Resources.CashTransactions.ToUpper(), "", ""); foreach (var cashTransaction in expenseTransactions) { report.AddRow("Gider", GetPaymentString(cashTransaction.PaymentType), Fct(cashTransaction), Fs(cashTransaction.Amount)); } report.AddBoldRow("Gider", Resources.Totals.ToUpper(), "", ""); report.AddRow("Gider", GetPaymentString(0), Resources.TotalExpense, Fs(cashExpenseTotal)); report.AddRow("Gider", GetPaymentString(1), Resources.TotalExpense, Fs(creditCardExpenseTotal)); report.AddRow("Gider", GetPaymentString(2), Resources.TotalExpense, Fs(ticketExpenseTotal)); report.AddRow("Gider", Resources.GrandTotal.ToUpper(), "", Fs(cashExpenseTotal + creditCardExpenseTotal + ticketExpenseTotal)); } var ac = ReportContext.GetOperationalAmountCalculator(); report.AddColumTextAlignment("Gelir", TextAlignment.Left, TextAlignment.Left, TextAlignment.Right); report.AddColumnLength("Gelir", "15*", "Auto", "25*"); report.AddTable("Gelir", Resources.Incomes, "", ""); if (ReportContext.CurrentWorkPeriod.Id > 0) //devreden rakamları aktif çalışma dönemlerinden biri seçildiyse çalışır { var total = ReportContext.CurrentWorkPeriod.CashAmount + ReportContext.CurrentWorkPeriod.CreditCardAmount + ReportContext.CurrentWorkPeriod.TicketAmount; if (total > 0) { report.AddBoldRow("Gelir", Resources.StartAmount.ToUpper(), "", ""); if (ReportContext.CurrentWorkPeriod.CashAmount > 0) { report.AddRow("Gelir", GetPaymentString(0) + " " + Resources.StartAmount, "", Fs(ReportContext.CurrentWorkPeriod.CashAmount)); } if (ReportContext.CurrentWorkPeriod.CreditCardAmount > 0) { report.AddRow("Gelir", GetPaymentString(1) + " " + Resources.StartAmount, "", Fs(ReportContext.CurrentWorkPeriod.CreditCardAmount)); } if (ReportContext.CurrentWorkPeriod.TicketAmount > 0) { report.AddRow("Gelir", GetPaymentString(2) + " " + Resources.StartAmount, "", Fs(ReportContext.CurrentWorkPeriod.TicketAmount)); } report.AddRow("Gelir", Resources.Total.ToUpper(), "", Fs(total)); } } var incomeTransactions = ReportContext.CashTransactions.Where(x => x.TransactionType == (int)TransactionType.Income); if (incomeTransactions.Count() > 0) { report.AddBoldRow("Gelir", Resources.SalesIncome.ToUpper(), "", ""); if (ac.CashTotal > 0) { report.AddRow("Gelir", GetPaymentString(0) + " " + Resources.SalesIncome, "", Fs(ac.CashTotal)); } if (ac.CreditCardTotal > 0) { report.AddRow("Gelir", GetPaymentString(1) + " " + Resources.SalesIncome, "", Fs(ac.CreditCardTotal)); } if (ac.TicketTotal > 0) { report.AddRow("Gelir", GetPaymentString(2) + " " + Resources.SalesIncome, "", Fs(ac.TicketTotal)); } report.AddRow("Gelir", Resources.Total.ToUpper(), "", Fs(ac.CashTotal + ac.CreditCardTotal + ac.TicketTotal)); report.AddBoldRow("Gelir", Resources.CashTransactions.ToUpper(), "", ""); var it = 0m; foreach (var cashTransaction in incomeTransactions) { it += cashTransaction.Amount; report.AddRow("Gelir", GetPaymentString(cashTransaction.PaymentType), Fct(cashTransaction), Fs(cashTransaction.Amount)); } report.AddRow("Gelir", Resources.Total.ToUpper(), "", Fs(it)); } var totalCashIncome = cashIncomeTotal + ac.CashTotal + ReportContext.CurrentWorkPeriod.CashAmount; var totalCreditCardIncome = creditCardIncomeTotal + ac.CreditCardTotal + ReportContext.CurrentWorkPeriod.CreditCardAmount; var totalTicketIncome = ticketIncomeTotal + ac.TicketTotal + ReportContext.CurrentWorkPeriod.TicketAmount; report.AddBoldRow("Gelir", Resources.Income.ToUpper() + " " + Resources.Totals.ToUpper(), "", ""); report.AddRow("Gelir", GetPaymentString(0), Resources.TotalIncome, Fs(totalCashIncome)); report.AddRow("Gelir", GetPaymentString(1), Resources.TotalIncome, Fs(totalCreditCardIncome)); report.AddRow("Gelir", GetPaymentString(2), Resources.TotalIncome, Fs(totalTicketIncome)); report.AddRow("Gelir", Resources.GrandTotal.ToUpper(), "", Fs(totalCashIncome + totalCreditCardIncome + totalTicketIncome)); //-------------------- report.AddColumTextAlignment("Toplam", TextAlignment.Left, TextAlignment.Right); report.AddColumnLength("Toplam", "Auto", "25*"); report.AddTable("Toplam", Resources.CashStatus, ""); report.AddRow("Toplam", Resources.Cash, Fs(totalCashIncome - cashExpenseTotal)); report.AddRow("Toplam", Resources.CreditCard, Fs(totalCreditCardIncome - creditCardExpenseTotal)); report.AddRow("Toplam", Resources.Voucher, Fs(totalTicketIncome - ticketExpenseTotal)); report.AddRow("Toplam", Resources.GrandTotal.ToUpper(), Fs((totalCashIncome - cashExpenseTotal) + (totalCreditCardIncome - creditCardExpenseTotal) + (totalTicketIncome - ticketExpenseTotal))); return(report.Document); }
public void AddDefaultReportHeader(SimpleReport report, WorkPeriod workPeriod, string caption) { report.AddHeader("Vero"); report.AddHeader(caption); if (workPeriod.EndDate > workPeriod.StartDate) report.AddHeader(workPeriod.StartDate.ToString("dd MMMM yyyy HH:mm") + " - " + workPeriod.EndDate.ToString("dd MMMM yyyy HH:mm")); else { report.AddHeader(workPeriod.StartDate.ToString("dd MMMM yyyy HH:mm") + " - " + DateTime.Now.ToString("dd MMMM yyyy HH:mm")); } if (!string.IsNullOrEmpty(workPeriod.Description)) report.AddHeader(workPeriod.Description); }