Ejemplo n.º 1
0
        internal static bool RunOper(Check Ch, int LastTr, bool AllChecks, FiskInfo mfi, int PaymentId)
        {
            string  inStr = "";
            decimal Sum   = 0;

            if (AllChecks)
            {
                foreach (Check Ch2 in Ch.ChecksOnTable)
                {
                    if (Ch2.AlohaCheckNum != Ch.AlohaCheckNum)
                    {
                        AlohaTSClass.ApplyCardPayment(Ch2.AlohaCheckNum, Ch2.Summ);
                        AlohaTSClass.SetPaymentAttr(Ch2.AlohaCheckNum, LastTr);
                    }
                    Sum += Ch2.Summ;
                }
            }
            else
            {
                Sum = Ch.Summ;
            }
            Utils.ToCardLog("Arcus Транзакция старт " + inStr);
            try
            {
                if (TrPosXMessageForm != null)
                {
                    TrPosXMessageForm.Close();
                }
            }
            catch (Exception e)
            {
                Utils.ToCardLog("[Error] При попытке закрыть старое окно. " + e.Message);
                try
                {
                    TrPosXMessageForm.Dispose();
                }
                catch
                {}
            }

            TrPosXMessageForm = new FTrposxRunComplited();
            //Button1State = 0;
            TrPosXMessageForm.button2.Text    = "Свернуть";
            TrPosXMessageForm.button1.Visible = false;
            TrPosXMessageForm.button2.Visible = true;
            TrPosXMessageForm.button3.Visible = false;
            TrPosXMessageForm.Init("Операция на терминале пластиковых карт.", "");
            TrPosXMessageForm.button1.Click += new EventHandler(button1_Click);
            TrPosXMessageForm.button2.Click += new EventHandler(button2_Click);

            //TrPosXClass.RunOperationAsinc(inStr);
            if (!Ch.Vozvr)
            {
                ArcusClass.RunPaymentAsinc(Sum);
            }
            else
            {
                ArcusClass.RunVozvrAsinc(Sum);
            }

            TrPosXMessageForm.TopMost = true;
            TrPosXMessageForm.Show();

            return(true);
        }
Ejemplo n.º 2
0
        internal static bool RunOper(Check Ch, int LastTr, bool AllChecks, FiskInfo mfi, int PaymentId)
        {
            if (TrPosXClass.OperInProcess)
            {
                return(false);
            }

            _PaymentId = PaymentId;
            KKmNum     = MainClass.IsWiFi;
            //ToShtrih.Disconnect();
            string  inStr = "";
            decimal Sum   = 0;

            if (AllChecks)
            {
                foreach (Check Ch2 in Ch.ChecksOnTable)
                {
                    if (Ch2.AlohaCheckNum != Ch.AlohaCheckNum)
                    {
                        AlohaTSClass.ApplyCardPayment(Ch2.AlohaCheckNum, Ch2.Summ);
                        AlohaTSClass.SetPaymentAttr(Ch2.AlohaCheckNum, LastTr);
                    }
                    Sum += Ch2.Summ;
                }
            }
            else
            {
                Sum = Ch.Summ;
            }


            if (!Ch.Vozvr)
            {
                string TrNumStr = LastTr.ToString().PadLeft(10, "0"[0]);
                inStr = "MessageID=PUR" + Environment.NewLine +
                        //   inStr = "MessageID=SRV" + Environment.NewLine +
                        "ECRReceiptNumber=" + TrNumStr + Environment.NewLine +
                        "ECRNumber=" + KKmNum + Environment.NewLine +
                        "TransactionAmount=" + (Sum * 100).ToString("0") + Environment.NewLine;
            }
            else
            {
                VF = new VoidFrm(Sum);
                VF.ShowDialog();
                if (VF.Cancel)
                {
                    return(false);
                }
                string chNum = VF.ChNum.ToString().PadLeft(10, "0"[0]);

                inStr = "MessageID=VOI" + Environment.NewLine +
                        "ECRReceiptNumber=" + chNum + Environment.NewLine +
                        "ECRNumber=" + KKmNum + Environment.NewLine;
            }



            Utils.ToCardLog("Транзакция старт " + inStr);



            // TrPosXClass.RunOperationAsincComplited += new TrPosXClass.RunOperationAsincDelegate(TrPosXClass_RunOperationAsincComplited);
            if (TrPosXMessageForm != null)
            {
                TrPosXMessageForm.Close();
            }
            TrPosXMessageForm = new FTrposxRunComplited();
            Button1State      = 0;
            TrPosXMessageForm.button2.Text    = "Свернуть";
            TrPosXMessageForm.button1.Visible = false;
            TrPosXMessageForm.button2.Visible = true;
            TrPosXMessageForm.button3.Visible = false;
            TrPosXMessageForm.Init("Операция на терминале пластиковых карт.", "");
            TrPosXMessageForm.button1.Click += new EventHandler(button1_Click);
            TrPosXMessageForm.button2.Click += new EventHandler(button2_Click);

            TrPosXClass.RunOperationAsinc(inStr);
            TrPosXMessageForm.TopMost = true;
            TrPosXMessageForm.Show();

            return(true);
        }