Example #1
0
        private void GetCashReg() //Запрашивает сумму наличности из ККТ
        {
            decimal cash = ShtrihKKT.GetCashReg(Drv);

            label18.Text = "Сумма в денежном ящике = " + cash + " ₽";
            toolStripStatusLabel3.Text = "ДЯ = " + cash + " ₽";
        }
Example #2
0
        private void KKT_StatusCheck() //проверяет статус ОФД и ФН приотткрытии и закрытии смены
        {
            if (UpdateResult())
            {
                GetCashReg();
                DateTime dateTimePC = DateTime.Today;
                Drv.FNGetStatus();                                               //Запрос Статуса ФН
                string FNWarningFlags = Convert.ToString(Drv.FNWarningFlags, 2); //ФНФлагиПредупреждения
                FNWarningFlags = new string('0', 4 - FNWarningFlags.Length) + FNWarningFlags;
                toolStripStatus_FN.BackColor = WorkWithDKKT.CheckFNStatusInColor(FNWarningFlags);

                Drv.FNGetInfoExchangeStatus();                                       //Статус обмена с ОФД
                string ExchangeStatus = Convert.ToString(Drv.InfoExchangeStatus, 2); //СтатусИнфОбмена
                ExchangeStatus = new string('0', 5 - ExchangeStatus.Length) + ExchangeStatus;
                toolStripStatus_OFD.BackColor = WorkWithDKKT.CheckOFDStatusInColor(ExchangeStatus, dateTimePC, Drv.Date);

                Drv.GetECRStatus();                                                                                      //ПолучитьСостояниеККМ
                DateTime DateTime_KKT = DateTime.Parse(Drv.Date.Day + "." + Drv.Date.Month + "." + Drv.Date.Year + " "
                                                       + Drv.Time.Hour + ":" + Drv.Time.Minute + ":" + Drv.Time.Second); //Внутренняя дата время ККМ
                toolStripStatus_TimeKKT.BackColor = WorkWithDKKT.CheckTheTimeDiffereceInColor(DateTime.Now, DateTime_KKT);

                cB_FN_TaxType.Items.Clear();
                Undefiend.ConvertStringToItems(ShtrihKKT.GetTaxType(Drv), cB_FN_TaxType.Items);
            }
        }
Example #3
0
 private bool CheckId()
 {
     if (ShtrihKKT.GetINN(Drv) == Id)
     {
         return(true);
     }
     else
     {
         return(false);
     }
 }
Example #4
0
        private void ButtonCash_In_Outcome_Click(object sender, EventArgs e)
        {
            decimal cash      = ToDecimal(tbCash_In_Outcome.Text);
            string  operation = cB_In_OutCash.Text;

            if (ShtrihKKT.CashInOutCome(Drv, operation, cash))
            {
                cB_In_OutCash.BackColor = Color.Snow;
                tbCash_In_Outcome.Text  = cB_In_OutCash.Text = "";
                GetCashReg();
            }
            else
            {
                cB_In_OutCash.BackColor = Color.LightCoral;
            }
        }
Example #5
0
        ////////////Конец Блок МЕНЮ////////////////
        private void Button4_Click(object sender, EventArgs e) //Продажа товара
        {
            if (ToDecimal(tbSumm2.Text) > ToDecimal(tbSummAll.Text))
            {
                tbSumm2.BackColor = Color.LightCoral;
            }
            else
            {
                try
                {
                    Drv.Connect();
                    Drv.GetShortECRStatus();
                    if (Drv.ECRMode == 4)
                    {
                        ОткрытьСменуToolStripMenuItem_Click(sender, e);
                    }
                }
                catch
                { UpdateResult(); } //Если смена закрыта то Открыть как положено

                groupBox3.Visible = false;

                int     CheckType = EnterItems(labelCheckType.Text);
                int     PaymentItemSign_i;
                string  NameProduct_i;
                decimal Price_i;
                double  Quantity_i;
                int     Tax1_i;
                decimal Summ1_i;
                for (int i = 0; i < arrayCheckBox.Length; i++) //Регистрация позиций в чеке
                {
                    if (arrayCheckBox[i].Checked)
                    {
                        PaymentItemSign_i = EnterItems(arrayPaymentItemSign[i].Text);
                        NameProduct_i     = arrayNameProduct[i].Text;
                        Price_i           = ToDecimal(arrayPrice[i].Text);
                        Quantity_i        = Convert.ToDouble(arrayQuantity[i].Text);
                        Summ1_i           = ToDecimal(arraySumm[i].Text);
                        Tax1_i            = EnterItems(arrayTax[i].Text);
                        if (!ShtrihKKT.RegPosition(Drv, CheckType, PaymentItemSign_i, NameProduct_i, Price_i, Quantity_i, Tax1_i, Summ1_i))
                        {
                            break;
                        }
                    }
                }
                if (Drv.ResultCode == 0) //Если позиции пробитилсь то идем дальше
                {
                    ShtrihKKT.SendFIO(Drv, fioCasher, innCasher);

                    if (maskTBPhone.BackColor == Color.LightGreen)
                    {
                        ShtrihKKT.SendCustomerPhoneOrEmail(Drv, maskTBPhone.Text.Replace("(", "").Replace(")", "").Replace("-", "").Replace(" ", ""));
                    }
                    else if (tbEmail.BackColor == Color.LightGreen)
                    {
                        ShtrihKKT.SendCustomerPhoneOrEmail(Drv, tbEmail.Text);
                    }

                    if (tbCustomer.BackColor == Color.LightGreen && tbCustomerINN.BackColor == Color.LightGreen)
                    {
                        ShtrihKKT.SendCustomer(Drv, tbCustomer.Text, tbCustomerINN.Text);
                    }

                    decimal cashPayment       = ToDecimal(tbSumm1.Text);
                    decimal electronicPayment = ToDecimal(tbSumm2.Text);
                    int     TaxType           = EnterItems(cB_FN_TaxType.Text);
                    if (ShtrihKKT.CloseChek(Drv, cashPayment, electronicPayment, TaxType))
                    {
                        tbSumm1.Text       = "0,00";
                        tbSumm2.Text       = "0,00";
                        maskTBPhone.Text   = "";
                        tbEmail.Text       = "";
                        tbCustomer.Text    = "";
                        tbCustomerINN.Text = "";
                        InitialArrays();
                        labelCheckType.Text = "Приход";
                        tbSumm1.Visible     = false;
                        tbSumm2.Visible     = false;
                        GetCashReg();
                    }
                    else
                    {
                        UpdateResult();
                    }
                }
                else
                {
                    UpdateResult();
                }
                panel2.Visible = true;
            }
        }
Example #6
0
 private void XотчетToolStripMenuItem_Click(object sender, EventArgs e)
 {
     ShtrihKKT.TakeDalyReport(Drv);
     UpdateResult();
 }
Example #7
0
 private void ОтменаЧекаToolStripMenuItem_Click(object sender, EventArgs e)
 {
     ShtrihKKT.CancelCashReciept(Drv);
     UpdateResult();
 }
Example #8
0
 private void ЗакрытьСменуToolStripMenuItem_Click(object sender, EventArgs e)
 {
     ShtrihKKT.CloseShift(Drv, fioCasher, innCasher);
     UpdateResult();
 }
Example #9
0
 ///////////Начало Блок МЕНЮ////////////////
 private void ПодключитьФРToolStripMenuItem_Click(object sender, EventArgs e)
 {
     ShtrihKKT.ConnectToKKT(Drv);
     UpdateResult();
 }