コード例 #1
0
        /// <summary>Комплектующее отсканировано, нужно начать редактирование</summary>
        /// <param name="Barcode">ШтрихКод</param>
        public override sealed void OnBarcode(string barcode)
        {
            //Если это штрих-код комплектующего
            if (barcode.IsValidBarcode())
            {
                if (groupRegistration)
                {
                    groupRegistrationOnBarcode(barcode);
                    return;
                }
                MainProcess.ClearControls();
                this.barcode = barcode;
                bool accesoryIsExist = !string.IsNullOrEmpty(barcode) && BarcodeWorker.IsBarcodeExist(barcode);

                //Если в системе уже существует штрихкод
                if (!existMode && accesoryIsExist)
                {
                    //Тип комплектующего штрихкода
                    TypeOfAccessories typesOfAccessories = BarcodeWorker.GetTypeOfAccessoriesByBarcode(barcode);
                    //Является ли тип комплектующего (существующий) = типу который нужно отредактировать (отсканированный)
                    bool isTypeLikeCurrent = typesOfAccessories.ToString() + 's' != currentType.Name;

                    //Если типы не совпадают - "Выход"
                    if (isTypeLikeCurrent)
                    {
                        ShowMessage("Штрихкод уже используется в другом типе комплектующего!");
                        OnHotKey(KeyAction.Esc);
                        return;
                    }
                }

                showData(accesoryIsExist, barcode);
            }
            //Если это штрих-код позиции
            else if (barcode.IsValidPositionBarcode())
            {
                Cases cases = accessory as Cases;

                if (cases != null)
                {
                    long map;
                    int  register;
                    int  position;
                    BarcodeWorker.GetPositionData(barcode, out map, out register, out position);

                    cases.Map      = map;
                    cases.Register = register;
                    cases.Position = position;
                    cases.Status   = TypesOfLampsStatus.IsWorking;
                    MainProcess.ClearControls();
                    showData(cases.Id == 0, cases.BarCode);
                }
            }
            //Во всех других случаях
            else
            {
                ShowMessage("Невірний формат штрихкоду!");
                OnHotKey(KeyAction.Esc);
            }
        }
コード例 #2
0
ファイル: Cases.cs プロジェクト: AramisIT/Lamps
        /// <summary>Інформація для реєстрації запису в "Переміщення"</summary>
        /// <param name="accessory">Тип комплектуючого</param>
        /// <param name="caseBarcode">Штрихкод корпусу</param>
        /// <param name="barcode">Штрихкод комплектуючого</param>
        /// <param name="syncRef">SyncRef комплектуючого</param>
        /// <returns>Чи наявний такий тип комплектуючого в даному корпусі</returns>
        public static bool GetMovementInfo(TypeOfAccessories accessory, string caseBarcode, out string barcode, out string syncRef)
            {
            string command = string.Format(@"
SELECT s.{0}, s.{1}
FROM Cases c 
JOIN {2}s s ON s.Id=c.{2}
WHERE RTRIM(c.{0})=RTRIM(@{0})",
                 BARCODE_NAME,
                 SYNCREF_NAME,
                 accessory.ToString());
            using (SqlCeCommand query = dbWorker.NewQuery(command))
                {
                query.AddParameter(BARCODE_NAME, caseBarcode);
                SqlCeDataReader reader = query.ExecuteReader();

                if (reader != null && reader.Read())
                    {
                    barcode = reader[BARCODE_NAME].ToString();
                    syncRef = reader[SYNCREF_NAME].ToString();
                    return true;
                    }

                barcode = string.Empty;
                syncRef = string.Empty;
                return false;
                }
            }
コード例 #3
0
ファイル: Cases.cs プロジェクト: AramisIT/Lamps
        /// <summary>���������� ��� ��������� ������ � "����������"</summary>
        /// <param name="accessory">��� ��������������</param>
        /// <param name="caseBarcode">�������� �������</param>
        /// <param name="barcode">�������� ��������������</param>
        /// <param name="syncRef">SyncRef ��������������</param>
        /// <returns>�� ������� ����� ��� �������������� � ������ ������</returns>
        public static bool GetMovementInfo(TypeOfAccessories accessory, string caseBarcode, out string barcode, out string syncRef)
        {
            string command = string.Format(@"
            SELECT s.{0}, s.{1}
            FROM Cases c
            JOIN {2}s s ON s.Id=c.{2}
            WHERE RTRIM(c.{0})=RTRIM(@{0})",
                 BARCODE_NAME,
                 SYNCREF_NAME,
                 accessory.ToString());
            using (SqlCeCommand query = dbWorker.NewQuery(command))
                {
                query.AddParameter(BARCODE_NAME, caseBarcode);
                SqlCeDataReader reader = query.ExecuteReader();

                if (reader != null && reader.Read())
                    {
                    barcode = reader[BARCODE_NAME].ToString();
                    syncRef = reader[SYNCREF_NAME].ToString();
                    return true;
                    }

                barcode = string.Empty;
                syncRef = string.Empty;
                return false;
                }
        }
コード例 #4
0
ファイル: Cases.cs プロジェクト: AramisIT/Lamps
 /// <summary>Отримати назву колонки по типу</summary>
 /// <param name="type">Тип комплектуючого</param>
 /// <returns>Назва колонки комплектуючого</returns>
 public static string GetColumnOfAccessory(TypeOfAccessories type)
     {
     return type.ToString();
     }
コード例 #5
0
ファイル: Cases.cs プロジェクト: AramisIT/Lamps
 /// <summary>�������� ����� ������� �� ����</summary>
 /// <param name="type">��� ��������������</param>
 /// <returns>����� ������� ��������������</returns>
 public static string GetColumnOfAccessory(TypeOfAccessories type)
 {
     return type.ToString();
 }