Exemplo n.º 1
0
        private void ОбработкаГрузовыхМест_Load(object sender, EventArgs e)
        {
            if (Данные.ВосстановитьИзФайла())
            {
                foreach (var str in Данные.СписокГрузовыхМест)
                {
                    string[] row = { str.МестоНомер, str.МестоАналог };

                    var НоваяСтрока = СписокГрузовыхМест.Items.Add(new ListViewItem(row));
                }

                СписокГрузовыхМест.Focus();
            }
            else
            {
                // получим текущего пользователя
                ОтветСервера = Обмен.ПослатьСтроку("ОбработкаГрузовыхМест_ПолучитьТекущегоПользователя");

                if (ОтветСервера != null && ОтветСервера[0][0] == "ДобавитьСотрудника")
                {
                    Данные.Сотрудники.Добавить(ОтветСервера[0][1], ОтветСервера[0][2], ОтветСервера[0][3]);

                    ОбщиеФункции.ДобавитьТекущуюОперацию("ОбработкаГрузовыхМест", Данные.Сотрудники);
                }
            }

            УстановитьДоступностьЭлементовФормы();
            УстановитьТекстПодсказки();
        }
Exemplo n.º 2
0
        private void СписокНайденныхГрузовыхМестОбработкаВыбора()
        {
            ListViewItem ТекущаяСтрока = СписокНайденныхГрузовыхМест.FocusedItem;

            if (ТекущаяСтрока == null)
            {
                return;
            }

            string НомерТекущегоМеста = ТекущаяСтрока.SubItems[0].Text;

            // очистка

            СписокНайденныхГрузовыхМест.Items.Clear();
            ТекстДляПоискаМест.Text = "";

            // переводим на страницу Места

            ОсновнаяПанель.SelectedIndex = 0; // страница места
            СписокГрузовыхМест.Focus();

            // добавляем место в список

            ОбработкаВводаМеста("mst" + НомерТекущегоМеста);
        }
Exemplo n.º 3
0
        private void ОбработкаВводаМеста(string _Данные)
        {
            // проверим, что это место

            if (!_Данные.Substring(0, 3).Equals("mst"))
            {
                Инфо.Ошибка("Необходимо сосканировать ШК грузового места.");
                return;
            }

            string ТекущиеМесто = _Данные.Substring(3);

            // проверим, что место еще не добавлено

            foreach (ListViewItem item in СписокГрузовыхМест.Items)
            {
                if (String.Equals(item.SubItems[0].Text, ТекущиеМесто))
                {
                    Инфо.Ошибка("Грузовое место уже присутствует в списке.");

                    // установить курсор на место, которое добавляем повторно
                    СписокГрузовыхМест.EnsureVisible(item.Index);

                    item.Focused = true;

                    return;
                }
            }

            // проверка места на сервере

            Cursor.Current = Cursors.WaitCursor;
            ОтветСервера   = Обмен.ПослатьСтроку("ПогрузкаСканированиеГрузовогоМеста", ТекущиеМесто, ТТНСсылка, ФилиалСсылка);
            Cursor.Current = Cursors.Default;

            if (ОтветСервера == null)
            {
                return;
            }

            if (ОтветСервера[0][0] == "ГрузовоеМестоДобавлено")
            {
                int iter = СписокГрузовыхМест.Items.Count + 1;

                string[] row = { iter.ToString(), ТекущиеМесто, ОтветСервера[0][1] };

                СписокГрузовыхМест.Items.Add(new ListViewItem(row));
                аботаСоСканером.Звук.Ок();
            }
        }
Exemplo n.º 4
0
        private void ОсновнаяПанель_SelectedIndexChanged(object sender, EventArgs e)
        {
            УстановитьДоступностьЭлементовФормы();

            УстановитьТекстПодсказки();

            // Установить фокус

            if (ОсновнаяПанель.SelectedIndex == 0) // СтраницаМеста
            {
                СписокГрузовыхМест.Focus();
            }

            if (ОсновнаяПанель.SelectedIndex == 1) // СтраницаПоиск
            {
                ТекстДляПоискаМест.Focus();
            }
        }
Exemplo n.º 5
0
        private void ФормаПогрузкаТерминал_Load(object sender, EventArgs e)
        {
            // заполним подсказку пользователю

            ПодсказкаПользователю.Text = НомерТС + "\n" + ФилиалНаименование + "\nСКАНИРУЙТЕ ШК ГМ";

            // получим количество уже погруженного

            Cursor.Current = Cursors.WaitCursor;
            ОтветСервера   = Обмен.ПослатьСтроку("ПогрузкаПолучитьПогруженное", ТТНСсылка, ФилиалСсылка);
            Cursor.Current = Cursors.Default;

            if (ОтветСервера == null)
            {
                return;
            }

            try
            {
                int iter = 1;

                foreach (var str in ОтветСервера)
                {
                    string[] row = { iter.ToString(), str[0], str[1] };

                    СписокГрузовыхМест.Items.Add(new ListViewItem(row));

                    iter++;
                }
            }
            catch { return; }

            // установим курсор в первую строку

            if (СписокГрузовыхМест.Items.Count > 0)
            {
                СписокГрузовыхМест.Focus();

                СписокГрузовыхМест.Items[0].Focused  = true;
                СписокГрузовыхМест.Items[0].Selected = true;
            }
        }
Exemplo n.º 6
0
        private void ФормаПриемГрузовыхМест_Load(object sender, EventArgs e)
        {
            if (Данные.ВосстановитьИзФайла())
            {
                foreach (var str in Данные.СписокГрузовыхМест)
                {
                    string[] row = { str.НомерМеста };

                    var НоваяСтрока = СписокГрузовыхМест.Items.Add(new ListViewItem(row));

                    if (str.ЛишнееМесто == "1")
                    {
                        НоваяСтрока.BackColor = Color.LightPink;
                    }
                }

                СписокГрузовыхМест.Focus();
            }

            УстановитьДоступностьЭлементовФормы();
            УстановитьТекстПодсказки();
        }
Exemplo n.º 7
0
        private void ОбработкаВводаМеста(string _Данные)
        {
            // установим фокус на список мест

            СписокГрузовыхМест.Focus();

            // проверим, что это место

            if (!_Данные.Substring(0, 3).Equals("mst"))
            {
                Инфо.Ошибка("Необходимо сосканировать ШК грузового места.");
                return;
            }

            // снять выделение с других строк

            foreach (ListViewItem item in СписокГрузовыхМест.Items)
            {
                item.Selected = false;
            }

            string ТекущиеМесто = _Данные.Substring(3);

            // проверим, что место еще не добавлено

            foreach (ListViewItem item in СписокГрузовыхМест.Items)
            {
                if (String.Equals(item.SubItems[0].Text, ТекущиеМесто))
                {
                    Инфо.Ошибка("Грузовое место уже присутствует в списке.");

                    // установить курсор на место, которое добавляем повторно
                    СписокГрузовыхМест.EnsureVisible(item.Index);

                    item.Focused = true;

                    return;
                }
            }

            // проверка места на сервере
            Cursor.Current = Cursors.WaitCursor;
            ОтветСервера   = Обмен.Послать("СканированиеГрузовогоМеста", Обмен.ПодготовитьСтроку(ТекущиеМесто));
            Cursor.Current = Cursors.Default;

            if (ОтветСервера == null)
            {
                return;
            }

            // обработка ответа сервера

            string ЛишнееМесто = "1"; // истина по умолчанию

            foreach (string[] str in ОтветСервера)
            {
                if (str[0] == "ЛишнееМесто")
                {
                    ЛишнееМесто = str[1];
                }
            }

            // добавим строку и спозиционируемся на ней

            string[] row         = { ТекущиеМесто };
            var      НоваяСтрока = СписокГрузовыхМест.Items.Add(new ListViewItem(row));

            СписокГрузовыхМест.EnsureVisible(НоваяСтрока.Index);
            НоваяСтрока.Focused = true;

            // подать сигнал о успешном добавлении

            аботаСоСканером.Звук.Ок();

            if (ЛишнееМесто == "1")
            {
                НоваяСтрока.BackColor = Color.LightPink;

                // подать сигнал, что место не ждем
                аботаСоСканером.Звук.Ошибка();
            }
            else
            {
                // подать сигнал, что место наше
                аботаСоСканером.Звук.Ок();
            }

            УстановитьДоступностьЭлементовФормы();
            УстановитьТекстПодсказки();
            Данные.СписокГрузовыхМестДобавить(ТекущиеМесто, ЛишнееМесто);
        }
Exemplo n.º 8
0
        private void ОбработкаВводаМеста(string _Данные)
        {
            // установим фокус на список мест

            СписокГрузовыхМест.Focus();

            // проверим, что это место

            if (!_Данные.Substring(0, 3).Equals("mst"))
            {
                Инфо.Ошибка("Необходимо сканировать ШК грузового места.");
                return;
            }

            // снять выделение с других строк

            foreach (ListViewItem item in СписокГрузовыхМест.Items)
            {
                item.Selected = false;
            }

            string ТекущиеМесто = _Данные.Substring(3);

            // проверим, что место еще не добавлено

            foreach (ListViewItem item in СписокГрузовыхМест.Items)
            {
                if (String.Equals(item.SubItems[0].Text, ТекущиеМесто))
                {
                    Инфо.Ошибка("Грузовое место уже присутствует в списке.");

                    // установить курсор на место, которое добавляем повторно
                    СписокГрузовыхМест.EnsureVisible(item.Index);

                    item.Focused  = true;
                    item.Selected = true;

                    return;
                }
            }

            // проверка места на сервере

            Cursor.Current = Cursors.WaitCursor;
            ОтветСервера   = Обмен.ПослатьСтроку("ОбработкаГрузовыхМест_Сканирование", ТекущиеМесто);
            Cursor.Current = Cursors.Default;

            if (ОтветСервера == null)
            {
                return;
            }

            if (ОтветСервера[0][0] == "ГрузовоеМестоДобавлено")
            {
                string[] row = { ТекущиеМесто, ОтветСервера[0][1] };

                ListViewItem item = СписокГрузовыхМест.Items.Add(new ListViewItem(row));

                Данные.СписокГрузовыхМестДобавить(ТекущиеМесто, ОтветСервера[0][1], ОтветСервера[0][2]);

                СписокГрузовыхМест.EnsureVisible(item.Index);

                item.Focused  = true;
                item.Selected = true;

                аботаСоСканером.Звук.Ок();
            }

            УстановитьДоступностьЭлементовФормы();
            УстановитьТекстПодсказки();
        }