Пример #1
0
        private void NextToScanTrayButton_Click(object sender, EventArgs e)
        {
            CheckTray.AddEvent(false, -1, -1, -1, -1, string.Empty, string.Empty, "Нажата кнопка Далее; CheckPackagesPanel;");

            if (CheckTray.ScanPackgesCount == 0)
            {
                CheckTray.AddEvent(true, -1, -1, -1, -1, string.Empty, string.Empty, "Не отсканировано ни одной этикетки; CheckPackagesPanel; return");
                Infinium.LightMessageBox.Show(ref TopForm, false, "Не отсканировано ни одной этикетки", "Внимание");
                return;
            }

            if (CheckTray.ExcessGroup)
            {
                CheckTray.AddEvent(true, -1, -1, -1, -1, string.Empty, string.Empty, "На поддоне имеются лишние упаковки; CheckPackagesPanel; return");
                Infinium.LightMessageBox.Show(ref TopForm, false,
                                              "Удалите лишние упаковки с поддона", "Ошибка");
                return;
            }

            CheckTray.AddEvent(false, -1, -1, -1, -1, string.Empty, string.Empty, "Формирование поддона продолжено; CheckPackagesPanel; ScanTrayPanel.BringToFront()");
            ScanTrayPanel.BringToFront();
            TrayBarcodeTextBox.Focus();
        }
Пример #2
0
        private void TrayBarcodeTextBox_KeyDown(object sender, KeyEventArgs e)
        {
            if (e.KeyCode == Keys.Enter)
            {
                bCheckTray               = false;
                TrayBarcodeLabel.Text    = "";
                TrayCheckPicture.Visible = false;

                if (TrayBarcodeTextBox.Text.Length < 12)
                {
                    CheckTray.AddEvent(true, -1, -1, -1, -1, string.Empty, string.Empty, "Ошибка: неверный штрихкод " + TrayBarcodeTextBox.Text);
                    TrayBarcodeTextBox.Clear();
                    return;
                }

                TrayBarcodeLabel.Text = TrayBarcodeTextBox.Text;

                TrayBarcodeTextBox.Clear();

                int    GroupType = 0;
                int    TrayID    = Convert.ToInt32(TrayBarcodeLabel.Text.Substring(3, 9));
                string Prefix    = TrayBarcodeLabel.Text.Substring(0, 3);

                if (Prefix != "005" && Prefix != "006")
                {
                    CheckTray.AddEvent(true, -1, -1, TrayID, -1, string.Empty, string.Empty, "Сканирование поддона. Неверный префикс штрихкода! Ожидалась этикетка поддона");
                    ErrorTrayLabel.Visible = true;
                    ErrorTrayLabel.Text    = "Штрихкод имеет неверный префикс. Допустимые префиксы 005 и 006";
                }

                if (Prefix == "005")
                {
                    GroupType = 1;
                }
                if (Prefix == "006")
                {
                    GroupType = 2;
                }

                if (CheckTray.CheckTrayBarcode(TrayBarcodeLabel.Text))
                {
                    ScanTrayID = TrayID;

                    if (GroupType != CheckTray.CurrentGroupType)
                    {
                        CheckTray.AddEvent(true, GroupType, -1, TrayID, -1, string.Empty, string.Empty, "Сканирование поддона. Неверная группа!");

                        TrayCheckPicture.Visible   = true;
                        TrayCheckPicture.Image     = Properties.Resources.cancel;
                        TrayBarcodeLabel.ForeColor = Color.FromArgb(240, 0, 0);
                        ErrorTrayLabel.ForeColor   = Color.FromArgb(240, 0, 0);
                        if (CheckTray.CurrentGroupType == 1)
                        {
                            ErrorTrayLabel.Text = "Неверная группа: ожидалась этикетка ЗОВ";
                        }
                        if (CheckTray.CurrentGroupType == 2)
                        {
                            ErrorTrayLabel.Text = "Неверная группа: ожидалась этикетка Маркетинг";
                        }
                        ErrorTrayLabel.Visible = true;
                        bCheckTray             = false;
                        return;
                    }

                    //Если добавляются упаковки на поддон
                    if (!CheckTray.IsNewTray && TrayID != CheckTray.CurrentTrayID)
                    {
                        CheckTray.AddEvent(true, GroupType, -1, TrayID, -1, string.Empty, string.Empty, "Добавление на поддон. Неверная этикетка!");

                        TrayCheckPicture.Visible   = true;
                        TrayCheckPicture.Image     = Properties.Resources.cancel;
                        TrayBarcodeLabel.ForeColor = Color.FromArgb(240, 0, 0);
                        ErrorTrayLabel.ForeColor   = Color.FromArgb(240, 0, 0);
                        ErrorTrayLabel.Text        = "Неверная этикетка: ожидалась этикетка " + CheckTray.CurrentTrayID;
                        ErrorTrayLabel.Visible     = true;
                        bCheckTray = false;
                        return;
                    }

                    //Если формируется новый поддон
                    if (CheckTray.IsNewTray && CheckTray.IsTrayNotEmpty(TrayBarcodeLabel.Text))
                    {
                        CheckTray.AddEvent(true, GroupType, -1, TrayID, -1, string.Empty, string.Empty, "Сканирование этикетки поддона. Поддон уже сформирован!");

                        TrayCheckPicture.Visible   = true;
                        TrayCheckPicture.Image     = Properties.Resources.cancel;
                        TrayBarcodeLabel.ForeColor = Color.FromArgb(240, 0, 0);
                        ErrorTrayLabel.ForeColor   = Color.FromArgb(240, 0, 0);
                        ErrorTrayLabel.Text        = "Этот поддон уже сформирован. Выберите новую этикетку";
                        ErrorTrayLabel.Visible     = true;
                        bCheckTray = false;
                        return;
                    }

                    CheckTray.AddEvent(false, GroupType, -1, TrayID, -1, string.Empty, string.Empty, "Поддон сформирован");

                    TrayCheckPicture.Visible   = true;
                    TrayCheckPicture.Image     = Properties.Resources.OK;
                    TrayBarcodeLabel.ForeColor = Color.FromArgb(82, 169, 24);
                    ErrorTrayLabel.ForeColor   = Color.FromArgb(82, 169, 24);
                    ErrorTrayLabel.Text        = "Формирование поддона завершено. Для продолжения нажмите Сохранить";
                    ErrorTrayLabel.Visible     = true;
                    bCheckTray = true;
                    return;
                }
                else
                {
                    TrayCheckPicture.Visible = true;
                    TrayCheckPicture.Image   = Properties.Resources.cancel;
                    ErrorTrayLabel.Visible   = true;
                    ErrorTrayLabel.Text      = "Данной этикетки не существует в базе. Распечатайте новую этикетку";
                    ErrorTrayLabel.ForeColor = Color.FromArgb(240, 0, 0);
                }
            }
        }