public objTerminalQueue()
 {
     id = 0;
     objTransactionQueue = new Transaction_Queue.objTransactionQueue();
     terminal_id         = 0;
     is_done             = true;
 }
Ejemplo n.º 2
0
        public rptQueueTicket(BOL.Transaction_Queue.objTransactionQueue trans_queue)
        {
            InitializeComponent();

            txtTransacrion.Value = trans_queue.objTransaction.name;
            txtNumber.Value      = trans_queue.ToString();
        }
        public static bool Set_Waiting_As_Current(BOL.Transaction_Queue.objTransactionQueue transaction_queue, BOL.Terminal.objTerminal terminal)
        {
            using (var conn = DAL.Base.ConnectionManager.Connection)
            {
                var statement = "UPDATE " +
                                "terminal_queue " +
                                "SET " +
                                "is_done = @previous_done " +
                                "WHERE " +
                                "terminal_id = @terminal_id";

                statement += ";INSERT INTO " +
                             "terminal_queue " +
                             "(terminal_id, transaction_queue_id, is_done) " +
                             "VALUES " +
                             "(@terminal_id, @transaction_queue_id, @is_done)";

                conn.Execute(statement,
                             new
                {
                    previous_done        = true,
                    transaction_id       = transaction_queue.objTransaction.id,
                    terminal_id          = terminal.id,
                    transaction_queue_id = transaction_queue.id,
                    is_done = false
                });

                conn.Close();
                conn.Dispose();

                return(true);
            }
        }
Ejemplo n.º 4
0
        public static void Print_Queue(BOL.Transaction_Queue.objTransactionQueue trans_queue)
        {
            BackgroundWorker bw = new BackgroundWorker();

            bw.DoWork += (s, arg) =>
            {
                try
                {
                    rptQueueTicket report = new rptQueueTicket(trans_queue)
                    {
                        Name = "Queue Ticket"
                    };

                    ReportSource report_source = new InstanceReportSource()
                    {
                        ReportDocument = report
                    };

                    // Obtain the settings of the default printer
                    System.Drawing.Printing.PrinterSettings printerSettings
                        = new System.Drawing.Printing.PrinterSettings();

                    // The standard print controller comes with no UI
                    System.Drawing.Printing.PrintController standardPrintController =
                        new System.Drawing.Printing.StandardPrintController();

                    // Print the report using the custom print controller
                    Telerik.Reporting.Processing.ReportProcessor reportProcessor
                        = new Telerik.Reporting.Processing.ReportProcessor();

                    reportProcessor.PrintController = standardPrintController;

                    //reportProcessor.PrintReport(typeReportSource, printerSettings);
                    reportProcessor.PrintReport(report_source, printerSettings);
                }
                catch (Exception ex)
                {
                    EventLog.WriteEntry("Report", ex.Message, EventLogEntryType.Error);
                }
            };

            //bw.RunWorkerCompleted += (s, arg) =>
            //{
            //    if (arg.Error == null)
            //    {

            //    }
            //    else
            //        throw new Exception(arg.Error.Message);
            //};
            bw.RunWorkerAsync();
        }
        public static BOL.Transaction_Queue.objTransactionQueue AddNew(BOL.Transaction.objTransaction trans)
        {
            using (var conn = DAL.Base.ConnectionManager.Connection)
            {
                var statement = "SELECT IFNULL(MAX(queue_number), 0) + 1 FROM transaction_queue WHERE transaction_id = @transaction_id AND DATE(date_time) = CURRENT_DATE() ";

                int next_queue = conn.Query <int>(statement,
                                                  new
                {
                    transaction_id = trans.id
                }).SingleOrDefault();

                statement = "INSERT INTO " +
                            "transaction_queue " +
                            "(transaction_id, queue_number, date_time) " +
                            "VALUES " +
                            "(@transaction_id, @queue_number, CURRENT_TIMESTAMP())";

                statement += ";SELECT " +
                             "TQ.*, T.* " +
                             "FROM " +
                             "transaction_queue TQ " +
                             "INNER JOIN transaction T ON TQ.transaction_id = T.id " +
                             "ORDER BY " +
                             "TQ.id DESC " +
                             "LIMIT 1";

                BOL.Transaction_Queue.objTransactionQueue TransQueue = conn.Query <BOL.Transaction_Queue.objTransactionQueue, BOL.Transaction.objTransaction, BOL.Transaction_Queue.objTransactionQueue>
                                                                           (statement,
                                                                           (TQ, T) => { TQ.objTransaction = T; return(TQ); },
                                                                           new
                {
                    transaction_id = trans.id,
                    queue_number   = next_queue
                }).SingleOrDefault();

                conn.Close();

                return(TransQueue);
            }
        }
        public override string ToString()
        {
            if (objTransactionQueue == null)
            {
                objTransactionQueue = new Transaction_Queue.objTransactionQueue();
            }

            if (objTransactionQueue.objTransaction == null)
            {
                objTransactionQueue.objTransaction = new Transaction.objTransaction();
            }

            if (id > 0)
            {
                return(String.Format("{0}{1:0000}", objTransactionQueue.objTransaction.prefix.Trim(), objTransactionQueue.queue_number));
            }
            else
            {
                return("");
            }
        }
        public static bool Next(BOL.Terminal.objTerminal terminal, BOL.Terminal_Queue.objTerminalQueue terminal_queue)
        {
            using (var conn = DAL.Base.ConnectionManager.Connection)
            {
                var statement = "UPDATE " +
                                "terminal_queue " +
                                "SET " +
                                "is_done = @is_done " +
                                "WHERE " +
                                "id = @id";

                conn.Execute(statement,
                             new
                {
                    id      = terminal_queue.id,
                    is_done = true
                });

                statement = "SELECT " +
                            "TQ.*, T.* " +
                            "FROM " +
                            "transaction_queue TQ " +
                            "INNER JOIN transaction T ON TQ.transaction_id = T.id " +
                            "WHERE " +
                            "TQ.terminal_id = @terminal_id AND TQ.id NOT IN (SELECT transaction_queue_id FROM terminal_queue) AND DATE(TQ.date_time) = CURRENT_DATE() " +
                            "ORDER BY " +
                            "TQ.id ASC " +
                            "LIMIT 1";

                BOL.Transaction_Queue.objTransactionQueue ForwardedQueue = conn.Query <BOL.Transaction_Queue.objTransactionQueue, BOL.Transaction.objTransaction, BOL.Transaction_Queue.objTransactionQueue>(statement,
                                                                                                                                                                                                             (TQ, T) => { TQ.objTransaction = T; return(TQ); },
                                                                                                                                                                                                             new
                {
                    terminal_id = terminal.id
                }).SingleOrDefault();

                if (ForwardedQueue == null)
                {
                    statement = "SELECT " +
                                "TQ.*, T.* " +
                                "FROM " +
                                "transaction_queue TQ " +
                                "INNER JOIN transaction T ON TQ.transaction_id = T.id " +
                                "INNER JOIN terminal_transaction TT ON T.id = TT.transaction_id " +
                                "WHERE " +
                                "TQ.id NOT IN (SELECT transaction_queue_id FROM terminal_queue) AND TT.terminal_id = @terminal_id AND TQ.terminal_id IS NULL AND DATE(TQ.date_time) = CURRENT_DATE() " +
                                "ORDER BY " +
                                "TT.priority_level ASC, TQ.queue_number ASC, TQ.id ASC " +
                                "LIMIT 1";

                    BOL.Transaction_Queue.objTransactionQueue TransQueue = conn.Query <BOL.Transaction_Queue.objTransactionQueue, BOL.Transaction.objTransaction, BOL.Transaction_Queue.objTransactionQueue>(statement,
                                                                                                                                                                                                             (TQ, T) => { TQ.objTransaction = T; return(TQ); },
                                                                                                                                                                                                             new
                    {
                        terminal_id = terminal.id
                    }).SingleOrDefault();

                    if (TransQueue == null)
                    {
                        return(false);
                    }

                    statement = "INSERT INTO " +
                                "terminal_queue " +
                                "(terminal_id, transaction_queue_id, is_done) " +
                                "VALUES " +
                                "(@terminal_id, @transaction_queue_id, @is_done)";

                    conn.Execute(statement,
                                 new
                    {
                        transaction_id       = TransQueue.objTransaction.id,
                        terminal_id          = terminal.id,
                        transaction_queue_id = TransQueue.id,
                        is_done = false
                    });

                    conn.Close();
                    conn.Dispose();

                    return(true);
                }

                statement = "INSERT INTO " +
                            "terminal_queue " +
                            "(terminal_id, transaction_queue_id, is_done) " +
                            "VALUES " +
                            "(@terminal_id, @transaction_queue_id, @is_done)";

                conn.Execute(statement,
                             new
                {
                    transaction_id       = ForwardedQueue.objTransaction.id,
                    terminal_id          = terminal.id,
                    transaction_queue_id = ForwardedQueue.id,
                    is_done = false
                });

                conn.Close();
                conn.Dispose();

                return(true);
            }
        }
Ejemplo n.º 8
0
 public vmPromptTicket(BOL.Transaction_Queue.objTransactionQueue transacton_queue)
 {
     TransactionQueue = transacton_queue;
     Delay_Prompt();
 }