public bool ValidateData()
        {
            bool   result = true;
            string err    = "";

            if (!Org.IsCorrectRegNumber(regNumOrgBox.Text))
            {
                err   += "\nНекорректный регистрационный номер (пример: У000123).";
                result = false;
            }

            if (String.IsNullOrEmpty(nameorgBox.Text.Trim()))
            {
                err   += "\nНекорректное наименование.";
                result = false;
            }

            if (Org.IsDuplicate(regNumOrgBox.Text, _orgId, _connection))
            {
                err   += "\nОрганизация с таким регистрационным номером уже существует.";
                result = false;
            }

            if (!result)
            {
                MainForm.ShowWarningMessage("Были обнаружены следующие некорректные данные:" + err,
                                            "Введены некорректные данные");
            }

            return(result);
        }
Exemple #2
0
        public bool ValidateData()
        {
            bool   result = true;
            string err    = "";

            if (!Org.IsCorrectRegNumber(regNumOrgBox.Text))
            {
                err   += "\nНекорректный регистрационный номер (пример: У000123).";
                result = false;
            }

            if (String.IsNullOrEmpty(yearBox.Value.ToString().Trim()))
            {
                err   += "\nНекорректный отчетный год.";
                result = false;
            }

            if (String.IsNullOrEmpty(pathTextBox.Text.Trim()) || !Directory.Exists(_directoryPath))
            {
                err   += "\nНекорректный путь к папке с ЭДО.";
                result = false;
            }
            else
            {
                _directoryPath = pathTextBox.Text.Trim();
            }

            if (String.IsNullOrEmpty(passwordTextBox.Text.Trim()))
            {
                err   += "\nНе указан пароль.";
                result = false;
            }

            if (!File.Exists(Path.Combine(_directoryPath, _mdcName)))
            {
                err   += "\nФайл с контрольной суммой контейнера отсутствует в каталоге " + _directoryPath + ".";
                result = false;
            }

            string containerFullPath = Path.Combine(_directoryPath, _containerName);

            try
            {
                var fi = new FileInfo(containerFullPath);
                if (!fi.Exists)
                {
                    err   += "\nФайл контейнера отсутствует в каталоге " + _directoryPath + ".";
                    result = false;
                }
                else if (fi.Length <= 0)
                {
                    err   += "\nФайл контейнера пуст - " + containerFullPath + ".";
                    result = false;
                }
                else
                {
                    byte[] buf        = new byte[8];
                    var    fileStream = fi.OpenRead();
                    fileStream.Read(buf, 0, 8);
                    fileStream.Close();
                    byte[] testBuf = { 0xD0, 0xCF, 0x11, 0xE0, 0xA1, 0xB1, 0x1A, 0xE1 };

                    if (Encoding.Default.GetString(buf) != Encoding.Default.GetString(testBuf))
                    {
                        err   += "\nУказанный файл не является контейнером - " + containerFullPath + ".";
                        result = false;
                    }
                }
            }
            catch (Exception ex)
            {
                //err += "\nУказанный файл не является контейнером - " + containerFullPath + ".\n" + ex.Message;
                err   += "\n" + ex.Message;
                result = false;
            }

            if (!result)
            {
                MainForm.ShowErrorFlexMessage("Были обнаружены следующие некорректные данные:" + err,
                                              "Введены некорректные данные");
            }

            return(result);
        }