private void FillOrdersCollection(string[] columns) { int.TryParse(columns[1], out int id); if (id == 0 || Orders.FirstOrDefault(o => o.Id == id) != null) { return; } var order = new Order { Id = id, Salesman = Salesmen.FirstOrDefault(c => c.Name.Equals(columns[3])), Customer = columns.Length >= 5 ? Customers.FirstOrDefault(c => c.Name.Equals(columns[4])) : null }; var columnWithoutBrackets = Regex.Replace(columns[2], "[[]", string.Empty); columnWithoutBrackets = Regex.Replace(columnWithoutBrackets, "[]]", string.Empty); var lineItems = Regex.Split(columnWithoutBrackets, "[,]"); foreach (var lineItem in lineItems) { var columnItems = Regex.Split(lineItem, "[-]"); FillOrderItemsCollection(order, columnItems); } Orders.Add(order); }
public ReportsViewModel(Context context) { _context = context; SalesmanReportCommand = new DelegateCommand(SalesmanReport, () => ThroughDate >= FromDate && SelectedSalesman != null); GeneralReportCommand = new DelegateCommand(GeneralReport, () => ThroughDate >= FromDate); FromDate = DateTime.Today.AddDays(-14); ThroughDate = DateTime.Today.AddDays(1); Salesmen = context.Salesmen.ToList().Select(x => new SalesmanViewModel(x)).ToList(); SelectedSalesman = Salesmen.FirstOrDefault(); }
public SalesmanStatitic GetWorstSalesman() { var result = Sales .GroupBy(s => s.Salesman) .Select(s => new { Salesman = s.Key, Total = s.Sum(s => s.Total) }) .OrderBy(s => s.Total) .FirstOrDefault(); return(new SalesmanStatitic() { Salesman = Salesmen.FirstOrDefault(s => s.Name.Equals(result.Salesman, StringComparison.InvariantCultureIgnoreCase)), Total = result.Total }); }
private void FillSalesmenCollection(string[] columns) { var cpf = columns[1]; if (Salesmen.FirstOrDefault(s => s.CPF.Equals(cpf)) != null) { return; } var salesman = new Salesman() { CPF = cpf, Name = columns[2], Salary = decimal.TryParse(columns[3], NumberStyles.Any, _decimalConversionCulture, out decimal salary) ? salary : 0 }; Salesmen.Add(salesman); }