コード例 #1
0
        public Object GetTicketTransaction([FromBody] SupportInput si)
        {
            TicketTransactionOutput fdop = new TicketTransactionOutput();
            DataSet SelectedSlots        = new DataSet();
            string  sJSONResponse        = "";

            DataTable dt_TicketTypes = new DataTable();

            List <TicketTransaction> ttdetails = new List <TicketTransaction>();

            try
            {
                dt_TicketTypes = getdata(string.Format("Select ID,TicketId,RequestTypeId,BranchCode,MemberShipCode,MemberName,StatusId,StatusName,PostPoneDate,Comments from TicketTransaction where BranchCode='" + si.BranchCode + "' and PostPoneDate between '" + si.FromDate + "' and '" + si.ToDate + "'"));

                for (int i = 0; i < dt_TicketTypes.Rows.Count; i++)
                {
                    TicketTransaction fd = new TicketTransaction {
                        ID = Convert.ToInt32(dt_TicketTypes.Rows[i]["ID"].ToString()), TicketId = dt_TicketTypes.Rows[i]["TicketId"].ToString(), RequestTypeId = Convert.ToInt32(dt_TicketTypes.Rows[i]["RequestTypeId"].ToString()), BranchCode = dt_TicketTypes.Rows[i]["BranchCode"].ToString(), MemberShipCode = dt_TicketTypes.Rows[i]["MemberShipCode"].ToString(), MemberName = dt_TicketTypes.Rows[i]["MemberName"].ToString(), Comments = dt_TicketTypes.Rows[i]["Comments"].ToString(), StatusId = dt_TicketTypes.Rows[i]["StatusId"].ToString(), StatusName = dt_TicketTypes.Rows[i]["StatusName"].ToString()
                    };
                    ttdetails.Add(fd);
                }

                fdop.status   = "success";
                fdop.value    = ttdetails;
                sJSONResponse = JsonConvert.SerializeObject(fdop);
            }
            catch (Exception ec)
            {
                fdop.status   = "fail";
                sJSONResponse = JsonConvert.SerializeObject(fdop);
            }
            return(sJSONResponse);
        }
コード例 #2
0
        /// <summary>
        /// On GoToPayment-buttonclick, the shippinginformation stored in TicketBuyer is sent to SQL and given a TransactionID. Then we loop the Shoppingcart in three steps:
        /// Adding a seatID to the ticketeventdate. Adding a ticketID to the seatID. Last, connecting the ticketID to the TransactionID.
        /// </summary>
        /// <param name="ticketBuyer"></param>
        /// <returns>Returns an orderconfirmation.</returns>
        public IActionResult GoToPayment(TicketTransaction ticketBuyer)
        {
            value.TicketBuyer = ticketApi.TicketTransactionAdd(ticketBuyer);  // Lägger till köpare = TransactionID

            foreach (EventSummary id in value.CartSummary)
            {
                SeatsAtEventDate e = ticketApi.PurchasedSeats(id);  // Lägger till SeatID
                Tickets          x = ticketApi.PurchasedTickets(e); // Lägger till TicketID

                TicketToTransaction ticketToTransaction = new TicketToTransaction();
                ticketToTransaction.TransactionID = value.TicketBuyer.TransactionID;
                ticketToTransaction.TicketID      = x.TicketId;

                ticketApi.AddTicketBuyer(ticketToTransaction);  // Kopplar TicketID + TransactionID
            }

            Mail   m = new Mail();
            string s = "";
            string z = "<h1> Here is a summary of your beautiful order!</h1>";

            foreach (EventSummary e in value.CartSummary)
            {
                s = s + "<h2>" + e.EventName + "</h2>" + "[ " + e.VenueName + " - " + e.EventStartDateTime + " ] </li>";
            }
            s = z + s;
            m.SendEmail(ticketBuyer.BuyerEmail, ticketBuyer.BuyerFirstName, s);
            return(View("PurchaseCompleted", value));
        }
コード例 #3
0
        public TicketTransaction addTicketTransaction(TicketTransaction transaction)
        {
            Connection con = Connection.getConnection();

            con.db.TicketTransaction.Add(transaction);
            con.db.SaveChanges();

            return(transaction);
        }
コード例 #4
0
        /// <summary>
        /// Updates a chosen TicketTransaction, based on selected TransactionID.
        /// </summary>
        /// <param name="id">TransactionID</param>
        /// <param name="ticketTransaction">TransactionID, BuyerLastName, BuyerFirstName, BuyerAddress, BuyerCity, BuyerEmail, PaymentStatus, PaymentReferenceId</param>
        public void TicketTransactionUpdate(int id, TicketTransaction ticketTransaction)
        {
            var output  = JsonConvert.SerializeObject(ticketTransaction);
            var client  = new RestClient(localhost);
            var request = new RestRequest("TicketTransactions/{id}", Method.PUT);

            request.AddUrlSegment("id", id);
            request.AddParameter("application/json", output, ParameterType.RequestBody);
            var response = client.Execute <TicketTransaction>(request);
        }
コード例 #5
0
        public static void insertRecordTicketTransaction(DateTime date, int qty)
        {
            TicketTransaction newTct = new TicketTransaction();

            newTct.TicketDate        = date;
            newTct.Quantity          = qty;
            newTct.TransactionStauts = "Active";

            DatabaseSingleton.GetInstance().TicketTransactions.Add(newTct);
            DatabaseSingleton.GetInstance().SaveChanges();
        }
コード例 #6
0
        public static void printTicket(TicketTransaction tct)
        {
            int qty = tct.Quantity;

            for (int i = 0; i < qty; i++)
            {
                ticketId = generateTicketId();
                createQR();
                saveQR();
            }
        }
コード例 #7
0
        public int getLastID()
        {
            Connection        con         = Connection.getConnection();
            TicketTransaction transaction = (from t in con.db.TicketTransaction orderby t.transactionID descending select t).FirstOrDefault();

            if (transaction == null)
            {
                return(0);
            }
            return(transaction.transactionID);
        }
コード例 #8
0
 public TicketTransaction TicketTransactionUpdate(int id, TicketTransaction ticketTransaction)
 {
     using (var connection = new SqlConnection(connectionString))
     {
         string queryString = "UPDATE TicketTransactions SET BuyerLastName = @LastName, " + "BuyerFirstName = @FirstName, " + "BuyerAddress = @Address, "
                              + "BuyerCity = @City, " + "PaymentStatus = @Status, " + "PaymentReferenceId = @ReferenceID " + "WHERE TransactionID = @ID";
         connection.Open();
         connection.Query(queryString, new { LastName = ticketTransaction.BuyerLastName, FirstName = ticketTransaction.BuyerFirstName, Address = ticketTransaction.BuyerAddress, City = ticketTransaction.BuyerAddress, Status = ticketTransaction.PaymentStatus, ReferenceID = ticketTransaction.PaymentReferenceId, ID = id });
         return(connection.Query <TicketTransaction>("SELECT * FROM TicketTransactions WHERE TransactionID=@Id", new { ID = id }).First());
     }
 }
コード例 #9
0
        /// <summary>
        /// Adds a new TicketTransaction to the database.
        /// </summary>
        /// <param name="ticketTransaction">TransactionID, BuyerLastName, BuyerFirstName, BuyerAddress, BuyerCity, BuyerEmail, PaymentStatus, PaymentReferenceId</param>
        /// <returns>TransactionID, BuyerLastName, BuyerFirstName, BuyerAddress, BuyerCity, BuyerEmail, PaymentStatus, PaymentReferenceId</returns>
        public TicketTransaction TicketTransactionAdd(TicketTransaction ticketTransaction)
        {
            var output  = JsonConvert.SerializeObject(ticketTransaction);
            var client  = new RestClient(localhost);
            var request = new RestRequest("TicketTransactions", Method.POST);

            request.AddParameter("application/json", output, ParameterType.RequestBody);
            var response = client.Execute <TicketTransaction>(request);

            return(response.Data);
        }
コード例 #10
0
        public static TicketTransaction create(int employeeId, int quantity)
        {
            TicketTransaction t = new TicketTransaction();

            t.EmployeeId = employeeId;
            t.Date       = DateTime.Now;
            t.Quantity   = quantity;
            t.TotalPrice = quantity * 100000;

            return(t);
        }
コード例 #11
0
        private void inputPaymentBtn_Click(object sender, RoutedEventArgs e)
        {
            string paymentStr = paymentTxt.Text.Trim();
            int    payment;

            bool success = int.TryParse(paymentStr, out payment);

            if (!success)
            {
                errorLbl.Text = "Payment must be a number!";
            }
            else
            {
                int change = totalPrice - payment;
                if (change > 0)
                {
                    errorLbl.Text = "Payment is not enough!";
                }
                else
                {
                    TicketMediator mediator = new TicketMediator();
                    TicketFactory  factory  = new TicketFactory();

                    changeLbl.Text = "Change = \t\tRp. " + Math.Abs(change).ToString();

                    ticketList = new List <Ticket>();

                    for (int i = 0; i < quantity; i++)
                    {
                        ticketList.Add(mediator.addTicket(factory.generateTicket()));
                    }

                    TicketTransactionMediator tmediator = new TicketTransactionMediator();
                    TicketTransactionFactory  tfactory  = new TicketTransactionFactory();

                    foreach (Ticket ticket in ticketList)
                    {
                        TicketTransaction transaction = tmediator.addTicketTransaction(tfactory.createNewTicketTransaction(ticket.ticketID));
                        if (transaction == null)
                        {
                            MessageBox.Show("Buy ticket failed!");
                            return;
                        }
                    }

                    MessageBox.Show("Buy ticket success!");
                    nextBarcodeBtn.Visibility = Visibility.Visible;
                    qr = new QRCode(ticketList.ElementAt(counter));
                    qr.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen;
                    qr.Show();
                }
            }
        }
        public static void insertRecordTicketTransaction(int empId, DateTime date, int qty)
        {
            TicketTransaction newTct = new TicketTransaction();

            newTct.EmployeeId              = empId;
            newTct.TicketTransactionDate   = date;
            newTct.TicketQuantity          = qty;
            newTct.TicketTransactionStatus = "Pending";

            DatabaseConnectionHandler.GetInstance().TicketTransaction.Add(newTct);
            DatabaseConnectionHandler.GetInstance().SaveChanges();
        }
        public static void printTicket()
        {
            TicketTransaction tct = DatabaseConnectionHandler.GetInstance().TicketTransaction.ToArray().LastOrDefault();
            int qty = tct.TicketQuantity;

            for (int i = 0; i < qty; i++)
            {
                ticketId = generateTicketId();
                createQR();
                saveQR();
            }
        }
コード例 #14
0
 public TicketTransaction TicketTransactionsAdd(TicketTransaction ticketTransaction)
 {
     using (var connection = new SqlConnection(connectionString))
     {
         string queryString = "INSERT INTO TicketTransactions(BuyerLastName, BuyerFirstName, BuyerAddress, BuyerCity)" +
                              "VALUES (@LastName, @FirstName, @Address, @City)";
         connection.Open();
         connection.Query(queryString, new { LastName = ticketTransaction.BuyerLastName, FirstName = ticketTransaction.BuyerFirstName, Address = ticketTransaction.BuyerAddress, City = ticketTransaction.BuyerCity });
         var addedTicketEventDateQuery = connection.Query <int>("SELECT IDENT_CURRENT ('TicketTransactions') AS Current_Identity").First();
         return(connection.Query <TicketTransaction>("SELECT * FROM TicketTransactions WHERE TransactionID=@Id", new { Id = addedTicketEventDateQuery }).First());
     }
 }
コード例 #15
0
        public TicketTransaction createNewTicketTransaction(int ticketID)
        {
            TicketTransactionMediator mediator = new TicketTransactionMediator();

            TicketTransaction transaction = new TicketTransaction();

            transaction.transactionID = mediator.getLastID() + 1;
            transaction.ticketID      = ticketID;
            transaction.purchaseDate  = DateTime.Now;
            transaction.employeeID    = Session.getSession().employee.employeeID;

            return(transaction);
        }
コード例 #16
0
        public static int getTransactionId()
        {
            TicketTransaction tct = DatabaseSingleton.GetInstance().TicketTransactions.ToArray().LastOrDefault();

            return(tct.TicketTransactionID);
        }
コード例 #17
0
        public TicketTransaction addTicketTransaction(TicketTransaction transaction)
        {
            TicketTransactionRepository repository = new TicketTransactionRepository();

            return(repository.addTicketTransaction(transaction));
        }
        public static int getTransactionId()
        {
            TicketTransaction tct = DatabaseConnectionHandler.GetInstance().TicketTransaction.ToArray().LastOrDefault();

            return(tct.TicketTransactionId);
        }
コード例 #19
0
 public static void add(TicketTransaction t)
 {
     db.TicketTransactions.Add(t);
     db.SaveChanges();
 }
コード例 #20
0
 public TicketTransaction Post([FromBody] TicketTransaction ticketTransaction)
 {
     return(tdb.TicketTransactionsAdd(ticketTransaction));
 }
コード例 #21
0
 public TicketTransaction Put(int id, [FromBody] TicketTransaction ticketTransaction)
 {
     return(tdb.TicketTransactionUpdate(id, ticketTransaction));
 }
コード例 #22
0
        public void add(int employeeId, int quantity)
        {
            TicketTransaction t = TicketTransactionFactory.create(employeeId, quantity);

            TicketTransactionRepository.add(t);
        }