public static CloseTicket Close() { var document = XDocument.Load(PathCheck); var closeTicket = CloseTicket.FromCheckXElement(document.GetXElement("checks")); closeTicket.DateClose = DateTime.Now; document.GetXAttribute("checks", "closeDate").SetValue(closeTicket.DateClose.ToString(Config.DateFormat)); File.WriteAllText(PathCheck, document.ToString()); var payProducts = new List <PayProduct>(); var closeTicketCheckDiscounts = new List <CloseTicketCheckDiscount>(); foreach (var check in closeTicket.ChecksTicket) { payProducts.AddRange(check.PayProducts); if (check.CheckDiscount != null) { closeTicketCheckDiscounts.Add(check.CheckDiscount); } } Add(closeTicket); RepositoryCheckTicket.AddRange(closeTicket.ChecksTicket); RepositoryPayProduct.AddRange(payProducts); RepositoryCloseTicketCheckDiscount.AddRange(closeTicketCheckDiscounts); return(closeTicket); }
public static List <PrintTva> GetPrintTvases(CloseTicket closeTicket) { var mtvases = new List <PrintTva>(); foreach (var tva in RepositoryTva.Tvases) { var mtva = new PrintTva(tva, 0, 0, 0); foreach (var check in closeTicket.ChecksTicket) { foreach (var product in check.PayProducts) { if (product.Tva == tva.Value) { var ht = (product.Total / (100 + product.Tva)) * 100; mtva.Ht += ht; mtva.Ttc += product.Total; mtva.TvaDecimal += (product.Total / (100 + product.Tva) * product.Tva); } } } mtvases.Add(mtva); } return(mtvases); }
public static void PrintCloseTicket(CloseTicket closeTicket, string nameTicketWindow) { var typePay = PrintTypePay.GetPrintTypePays(closeTicket); _templateCloseTicket = new TemplateCloseTicket(typePay, nameTicketWindow); var pd = new PrintDocument(); pd.PrintPage += PrintPageCloseTicket; pd.Print(); }
private static void SaveFile() { var root = new XElement("CloseTickets"); foreach (var closeTicket in CloseTickets) { root.Add(CloseTicket.ToXElement(closeTicket)); } File.WriteAllText(Path, new XDocument(root).ToString()); }
public static int Add(CloseTicket closeTicket) { CloseTickets.Add(closeTicket); SaveFile(); if (SyncData.IsConnect) { using (var connection = ConnectionFactory.CreateConnection()) return(connection.Execute(InsertQuery, closeTicket)); } return(0); }
private static void LoadFile() { if (File.Exists(Path)) { var document = XDocument.Load(Path); CloseTickets.Clear(); foreach (var element in document.GetXElements("CloseTickets", "rec")) { CloseTickets.Add(CloseTicket.FromXElement(element)); } } }
public void Throws_onWrongId() { const int WrongId = -1; var command = new CloseTicket { TicketId = WrongId }; var handler = new CloseTicketHandler(_context); string errorMsg = $"Entity \"Ticket\" ({WrongId}) was not found."; var act = Assert.ThrowsAsync <NotFoundException>(async() => await handler.Handle(command, new CancellationToken())); StringAssert.AreEqualIgnoringCase(errorMsg, act.Message); }
public async Task CanCloseTicket() { var ticket = _context .Tickets .Where(t => t.TicketStatus == TicketStatus.Open) .FirstOrDefault(); var command = new CloseTicket() { TicketId = ticket.Id }; await new CloseTicketHandler(_context).Handle(command, new CancellationToken()); Assert.AreEqual(TicketStatus.Closed, ticket.TicketStatus); }
public static List <PrintTypePay> GetPrintTypePays(CloseTicket closeTicket) { var typePays = new List <PrintTypePay>(); if (closeTicket.PayCash > 0) { typePays.Add(new PrintTypePay(RepositoryTypePay.TypePays.Find(tp => tp.NameCourt == "Cash"), closeTicket.PayCash)); } if (closeTicket.PayBankCards > 0) { typePays.Add(new PrintTypePay(RepositoryTypePay.TypePays.Find(tp => tp.NameCourt == "BankCards"), closeTicket.PayBankCards)); } if (closeTicket.PayBankChecks > 0) { typePays.Add(new PrintTypePay(RepositoryTypePay.TypePays.Find(tp => tp.NameCourt == "BankChecks"), closeTicket.PayBankChecks)); } if (closeTicket.PayResto > 0) { typePays.Add(new PrintTypePay(RepositoryTypePay.TypePays.Find(tp => tp.NameCourt == "Resto"), closeTicket.PayResto)); } if (closeTicket.Pay1 > 0) { typePays.Add(new PrintTypePay(RepositoryTypePay.TypePays.Find(tp => tp.NameCourt == "1"), closeTicket.Pay1)); } if (closeTicket.Pay2 > 0) { typePays.Add(new PrintTypePay(RepositoryTypePay.TypePays.Find(tp => tp.NameCourt == "2"), closeTicket.Pay2)); } if (closeTicket.Pay3 > 0) { typePays.Add(new PrintTypePay(RepositoryTypePay.TypePays.Find(tp => tp.NameCourt == "3"), closeTicket.Pay3)); } if (closeTicket.Pay4 > 0) { typePays.Add(new PrintTypePay(RepositoryTypePay.TypePays.Find(tp => tp.NameCourt == "4"), closeTicket.Pay4)); } if (closeTicket.Pay5 > 0) { typePays.Add(new PrintTypePay(RepositoryTypePay.TypePays.Find(tp => tp.NameCourt == "5"), closeTicket.Pay5)); } if (closeTicket.Pay6 > 0) { typePays.Add(new PrintTypePay(RepositoryTypePay.TypePays.Find(tp => tp.NameCourt == "6"), closeTicket.Pay6)); } if (closeTicket.Pay7 > 0) { typePays.Add(new PrintTypePay(RepositoryTypePay.TypePays.Find(tp => tp.NameCourt == "7"), closeTicket.Pay7)); } if (closeTicket.Pay8 > 0) { typePays.Add(new PrintTypePay(RepositoryTypePay.TypePays.Find(tp => tp.NameCourt == "8"), closeTicket.Pay8)); } if (closeTicket.Pay9 > 0) { typePays.Add(new PrintTypePay(RepositoryTypePay.TypePays.Find(tp => tp.NameCourt == "9"), closeTicket.Pay9)); } if (closeTicket.Pay10 > 0) { typePays.Add(new PrintTypePay(RepositoryTypePay.TypePays.Find(tp => tp.NameCourt == "10"), closeTicket.Pay10)); } if (closeTicket.Pay11 > 0) { typePays.Add(new PrintTypePay(RepositoryTypePay.TypePays.Find(tp => tp.NameCourt == "11"), closeTicket.Pay11)); } if (closeTicket.Pay12 > 0) { typePays.Add(new PrintTypePay(RepositoryTypePay.TypePays.Find(tp => tp.NameCourt == "12"), closeTicket.Pay12)); } if (closeTicket.Pay13 > 0) { typePays.Add(new PrintTypePay(RepositoryTypePay.TypePays.Find(tp => tp.NameCourt == "13"), closeTicket.Pay13)); } if (closeTicket.Pay14 > 0) { typePays.Add(new PrintTypePay(RepositoryTypePay.TypePays.Find(tp => tp.NameCourt == "14"), closeTicket.Pay14)); } if (closeTicket.Pay15 > 0) { typePays.Add(new PrintTypePay(RepositoryTypePay.TypePays.Find(tp => tp.NameCourt == "15"), closeTicket.Pay15)); } if (closeTicket.Pay16 > 0) { typePays.Add(new PrintTypePay(RepositoryTypePay.TypePays.Find(tp => tp.NameCourt == "16"), closeTicket.Pay16)); } if (closeTicket.Pay17 > 0) { typePays.Add(new PrintTypePay(RepositoryTypePay.TypePays.Find(tp => tp.NameCourt == "17"), closeTicket.Pay17)); } if (closeTicket.Pay18 > 0) { typePays.Add(new PrintTypePay(RepositoryTypePay.TypePays.Find(tp => tp.NameCourt == "18"), closeTicket.Pay18)); } if (closeTicket.Pay19 > 0) { typePays.Add(new PrintTypePay(RepositoryTypePay.TypePays.Find(tp => tp.NameCourt == "19"), closeTicket.Pay19)); } if (closeTicket.Pay20 > 0) { typePays.Add(new PrintTypePay(RepositoryTypePay.TypePays.Find(tp => tp.NameCourt == "20"), closeTicket.Pay20)); } return(typePays); }