Exemple #1
0
        public void Update(EjCCTender pEvent)
        {
            switch (pEvent.PeekState())
            {
            //  case EjCCTender.ENTER_CARD_NAME:

            //		prompt.PromptText = pEvent.PromptText;
            //		prompt.InputText = "";
            //      prompt.StartInputAnimation();

            //		break;

            case EjCCTender.TENDER_FINAL:

                prompt.PromptText = pEvent.Desc + pEvent.ExtAmount;
                if (PosHardware.Instance.LineDisplay != null)

                {
                    PosHardware.Instance.LineDisplay.SetText(pEvent.Desc, 0, 0);
                }
                //      prompt.EndInputAnimation();
                break;

            default:
                break;
            }
        }
Exemple #2
0
        private void Process(ArrayList tracks)
        {
            Hashtable results = new Hashtable();

            if (!(PosEventStack.Instance.CurrentEvent is EjCCTender))
            {
                return;
            }

            foreach (object obj in tracks)
            {
                try
                {
                    string xTrack = obj as string;

                    foreach (object obj1 in PosContext.Instance.MsrFilters)
                    {
                        Filter filter = obj1 as Filter;
                        filter.Apply(xTrack, results);
                    }
                }
                catch (Exception ex)
                {
                    MessageBox.Show(ex.ToString());
                }
            }

            if (results.Count > 0)
            {
                try
                {
                    EjCCTender tender = (EjCCTender)PosEventStack.Instance.CurrentEvent;
                    tender.Desc       = (string)results[Filter.DISPLAY_NAME];
                    tender.CCNumber   = (string)results[Filter.ACCT_NO];
                    tender.ExprDate   = (string)results[Filter.EXPR_MONTH] + (string)results[Filter.EXPR_YEAR];
                    tender.Track1Data = tracks[0].ToString(); //Encoding.ASCII.GetString(msr.Track1Data);
                    tender.Track2Data = tracks[1].ToString(); // Encoding.ASCII.GetString(msr.Track2Data);
                    tender.FirstName  = Filter.FIRSTNAME;     //Filter.msr.FirstName;
                    tender.LastName   = Filter.SURNAME;       //msr.Surname;
                    tender.Mi         = "";                   //msr.MiddleInitial;
                    tender.Results    = results;
                    while (!tender.States().Peek().Equals(EjCCTender.TENDER_FINAL))
                    {
                        tender.States().PopPending();
                    }

                    tender.Engage(0);  // complete the tender
                }
                catch (Exception e)
                {
                    MessageBox.Show(e.ToString());
                }
            }
        }