示例#1
0
        private void SelectedInvoicesContainer_MouseDoubleClick(object sender, MouseButtonEventArgs e)
        {
            var invoice = (ListViewItem)sender;
            var name    = SelectedInvoices.FirstOrDefault(x => x.Date == (((IInvoice)invoice.Content).Date)).FilePath;

            System.Diagnostics.Process.Start(name);
        }
示例#2
0
        private void AllContainerCB_Check(object sender, RoutedEventArgs e)
        {
            UpdateSelectAllCheckMark();
            var box = (CheckBox)sender;
            var inv = Array.Find(Analyser.Invoices, x => x.Date == DateTime.Parse((string)box.Content));

            if (box.IsChecked == true)
            {
                if (SelectedInvoices.Count == 0)
                {
                    SelectedInvoices.Add(inv);
                    return;
                }
                else if (inv.Date >= SelectedInvoices[SelectedInvoices.Count - 1].Date)
                {
                    SelectedInvoices.Add(inv);
                    return;
                }

                var index = SelectedInvoices.IndexOf(SelectedInvoices.FirstOrDefault(x => x.Date > inv.Date));

                SelectedInvoices.Insert(index, inv);
            }
            else
            {
                SelectedInvoices.Remove(inv);
            }
        }
示例#3
0
        private void RefreshTotalsProperties()
        {
            var ia = SelectedInvoices.ToArray();

            HoursWorked     = Analyser.HoursWorked(ia);
            OrdersDelivered = Analyser.OrdersDelivered(ia);
            DropFees        = Analyser.DropFees(ia);
            Tips            = Analyser.Tips(ia);
            Adjustments     = Analyser.Adjustments(ia);
            TransactionFees = Analyser.TransactionFees(ia);
            Total           = Analyser.Total(ia);
        }
示例#4
0
        private List <KeyValuePair <object, double> > GetAverageTotalData()
        {
            var      output = new List <KeyValuePair <object, double> >();
            DateTime sd     = new DateTime(2000, 01, 01);

            for (int i = 0; i < 12; i++)
            {
                var sum = Analyser.AverageTotal(SelectedInvoices.Where(x => x.Date.Month == sd.Month).ToArray());
                output.Add(new KeyValuePair <object, double>(sd.ToString("MMM"), (double)sum));
                sd = sd.AddMonths(1);
            }

            return(output);
        }
示例#5
0
        private List <KeyValuePair <object, double> > GetTipsData()
        {
            var      output = new List <KeyValuePair <object, double> >();
            DateTime sd     = new DateTime(2000, 01, 01);

            for (int i = 0; i < 12; i++)
            {
                var sum = SelectedInvoices.Where(x => x.Date.Month == sd.Month).Sum(y => y.Tips);
                output.Add(new KeyValuePair <object, double>(sd.ToString("MMM"), (double)sum));
                sd = sd.AddMonths(1);
            }

            return(output);
        }
示例#6
0
        private void RefreshSAProperties()
        {
            var ia = SelectedInvoices.ToArray();

            AverageHoursWorked     = Analyser.AverageHoursWorked(ia);
            AverageOrdersDelivered = Analyser.AverageOrdersPerInvoice(ia);
            AverageDropFees        = Analyser.AverageDropFees(ia);
            AverageTips            = Analyser.AverageTips(ia);
            AverageTotal           = Analyser.AverageTotal(ia);
            HourlyEarnings         = Analyser.HourlyEarnings(ia);
            OrdersPerHour          = Analyser.OrdersPerHour(ia);
            AverageOrderFee        = Analyser.AverageOrderFee(ia);
            AverageTipPerOrder     = Analyser.TipPerOrder(ia);
            OrdersPerTip           = Analyser.OrdersPerTip(ia);
            DaysWorked             = Analyser.DaysWorked(ia);
            AverageShiftDeliveries = Analyser.AverageOrdersPerShift(ia);
            AverageShiftLength     = Analyser.AverageShiftLength(ia);
        }