예제 #1
0
        public override void LoadData()
        {
            foreach (object obj in Params.Objects.Where(obj => obj != null))
            {
                if (obj.GetType() == typeof(FormResultData))
                {
                    data = (FormResultData)obj;
                }
            }

            gifImage = new GifImage(Globals.GetPath(PathEnum.Image) + "\\" + Globals.DesignConfiguration.Settings.ButtonGetOxigen);
            gifImage.ReverseAtEnd = false; //dont reverse at end

            Globals.DesignConfiguration.Settings.LoadPictureBox(pBxReturnBack, Globals.DesignConfiguration.Settings.ButtonRetToMain);

            AmountServiceText.Text      = "Внесено: 0 руб.";
            AmountServiceText.ForeColor = System.Drawing.Color.Red;
            SecondMessageText.Text      = "";

            LabelNameService2.Text = Globals.ClientConfiguration.Settings.services[data.numberService].caption;

            TextPayBill.LoadFile(Globals.GetPath(PathEnum.Text) + "\\WaitPayCheck.rtf");

            // заменим обработчик событий
            data.drivers.ReceivedResponse += reciveResponse;

            // при старте сканер разбудим
            data.drivers.scaner.Request(ZebexCommandEnum.wakeUp);
        }
예제 #2
0
        public override void LoadData()
        {
            foreach (object obj in Params.Objects.Where(obj => obj != null))
            {
                if (obj.GetType() == typeof(FormResultData))
                {
                    data = (FormResultData)obj;
                }
            }

            data.log.Write(LogMessageType.Information, "========================НАЧАЛО ОБСЛУЖИВАНИЯ==========================");

            if (Globals.ClientConfiguration.Settings.style == 1)
            {
                gifImage = new GifImage(Globals.GetPath(PathEnum.Image) + "\\" + Globals.DesignConfiguration.Settings.ButtonGetOxigen);
                gifImage.ReverseAtEnd = false; //dont reverse at end
            }
            else
            {
                Globals.DesignConfiguration.Settings.LoadPictureBox(pBxGiveOxigen, Globals.DesignConfiguration.Settings.ButtonGetOxigen_style1);
            }

            //Globals.DesignConfiguration.Settings.LoadPictureBox(pBxGiveOxigen, Globals.DesignConfiguration.Settings.ButtonGetOxigen);
            Globals.DesignConfiguration.Settings.LoadPictureBox(pBxReturnBack, Globals.DesignConfiguration.Settings.ButtonRetToMain);

            AmountServiceText.Text      = "Внесено: 0 руб.";
            AmountServiceText.ForeColor = System.Drawing.Color.Red;
            SecondMessageText.Text      = "";

            LabelNameService2.Text = Globals.ClientConfiguration.Settings.services[data.numberService].caption;

            TextPayBill.LoadFile(Globals.GetPath(PathEnum.Text) + "\\WaitPayBill.rtf");

            // сразу проверим - если авторизовались и достаточно денег на счете - сразу списываем деньги со счета
            if (data.retLogin != "")
            {
                int sum = GlobalDb.GlobalBase.GetUserMoney(data.CurrentUserId);

                data.log.Write(LogMessageType.Information, "ACCOUNT: На счету у пользователя " + data.retLogin + " " + sum + " руб.");

                if (sum >= data.serv.price)
                {
                    // денег на счете достаточно
                    data.log.Write(LogMessageType.Information, "ACCOUNT: Оказываем услугу с денег со счета...");

                    amount += data.serv.price;

                    AmountServiceText.Text      = "Внесено: " + data.serv.price + " руб.";
                    AmountServiceText.ForeColor = System.Drawing.Color.Green;
                    SecondMessageText.Text      = "Остаток на счете: " + (sum - data.serv.price) + " руб.";

                    data.log.Write(LogMessageType.Information, "ACCOUNT: Внесли достаточную для оказания услуги сумму со счета.");

                    // все можно уже пользоваться
                    pBxGiveOxigen.Enabled = true;

                    moneyFixed   = false;
                    StopHardware = true;

                    // обновим счет
                    GlobalDb.GlobalBase.AddToAmount(data.CurrentUserId, 0 - data.serv.price);

                    pBxReturnBack.Enabled = false;

                    return;
                }
                else if (sum > 0)
                {
                    // денег не достаточно - все равно списываем все подчистую
                    data.log.Write(LogMessageType.Information, "ACCOUNT: Оказываем услугу с денег со счета...");

                    amount += sum;

                    AmountServiceText.Text = "Внесено: " + sum + " руб.";
                    SecondMessageText.Text = "Недостаточно денег для оказания услуги";

                    // обновим счет
                    GlobalDb.GlobalBase.AddToAmount(data.CurrentUserId, 0 - sum);

                    pBxReturnBack.Enabled = false;
                }
            }
            //

            // заменим обработчик событий
            data.drivers.ReceivedResponse += reciveResponse;

            if (data.serv.price == 0)
            {
                // может быть цена нулевая - и это демо режим - можно сразу без денег работать
                AmountServiceText.ForeColor = System.Drawing.Color.Green;
                pBxGiveOxigen.Enabled       = true;

                data.log.Write(LogMessageType.Information, "WAIT BILL: работаем в демо режиме.");
            }
            else if (Globals.ClientConfiguration.Settings.offHardware == 0)
            {
                // перейдем в режим ожидания купюр
                if (data.drivers.CCNETDriver.NoConnectBill == false)
                {
                    data.drivers.CCNETDriver.WaitBillEscrow();
                    data.log.Write(LogMessageType.Information, "WAIT BILL: запускаем режим ожидания купюр.");
                }

                // при старте сканер разбудим, если не отключена возможность оплаты чеком
                if (Globals.ClientConfiguration.Settings.offCheck != 1)
                {
                    data.drivers.scaner.Request(ZebexCommandEnum.wakeUp);
                    data.log.Write(LogMessageType.Information, "WAIT CHECK: запускаем режим ожидания чеков.");
                }
            }
        }