Ejemplo n.º 1
0
        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);
        }
Ejemplo n.º 2
0
        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);
        }
Ejemplo n.º 3
0
        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();
        }
Ejemplo n.º 4
0
        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());
        }
Ejemplo n.º 5
0
        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);
        }
Ejemplo n.º 6
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));
                }
            }
        }
Ejemplo n.º 7
0
        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);
        }
Ejemplo n.º 8
0
        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);
        }
Ejemplo n.º 9
0
        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);
        }