예제 #1
0
        /// <summary>СОБЫТИЕ Нажали на кнопку Загрузить справочник врачей</summary>
        private void PART_ButtonNewOKATO_Click(object sender, RoutedEventArgs e)
        {
            newOKATO = PART_TextBoxNewOKATO.Text;
            if (newOKATO == "" || oldOKATO == "")
            {
                PART_RichTextBox.AppendText("Введите в поле правильный Новый номер ОКАТО\n");
                return;
            }
            if (newOKATO.Length != 11)
            {
                PART_RichTextBox.AppendText($"Должно быть 11 символов, а у вас их {newOKATO.Length}\n");
                return;
            }
            if (newOKATO == oldOKATO)
            {
                PART_RichTextBox.AppendText($"Ни чё что они у вас равны!?!\n");
                return;
            }

            bool _isUpdate = MySql.MET_QueryNo($"update Bazis.dbo.KLADR set OCATD = {newOKATO} where OCATD = {oldOKATO}");

            if (_isUpdate)
            {
                PART_RichTextBox.AppendText($"Успех, поменял {oldOKATO} нa {newOKATO}\n\n");
                PART_ButtonNewOKATO.IsEnabled = false;
                oldOKATO = "";
                newOKATO = "";
                PART_TextBoxOldOKATO.Text = "";
                PART_TextBoxNewOKATO.Text = "";
            }
            else
            {
                PART_RichTextBox.AppendText($"БЯДА! Не получилось поменять {oldOKATO} нa {newOKATO}\n");
            }
        }
예제 #2
0
        /// <summary>СОБЫТИЕ Нажали на кнопку Загрузить справочник врачей</summary>
        private void PART_ButtonLoadFile_Click(object sender, RoutedEventArgs e)
        {
            PART_ButtonLoadFile.IsEnabled = false;
            PART_ButtonOpenXML.IsEnabled  = false;

            // Грузим данные локально
            DataSet   dataSet = new DataSet();
            DataTable dataTable;

            try
            {
                // Загружаем XML файл в таблицу 0
                dataSet.ReadXml(PRI_FileName);

                dataTable = dataSet.Tables[0];
                // Удаляем всех НЕ наших врачей
                var query = dataTable.AsEnumerable().Where(r => r.Field <string>("mcod") != "555509");
                foreach (var row in query.ToList())
                {
                    row.Delete();
                }
                dataTable.AcceptChanges();
            }
            catch
            {
                PART_RichTextBox.AppendText("Ошибка загрузки XML файла");
                return;
            }
            // Грузим в Sql
            try
            {
                // Удаляем старые данные
                MySql.MET_QueryNo("delete Bazis.dbo.StrahVrachMIAC");

                // Копируем в Sql
                foreach (DataRow row in dataTable.Rows)
                {
                    if (!MET_SaveSql(row))
                    {
                        throw new Exception();
                    }
                }
            }
            catch
            {
                PART_RichTextBox.AppendText("Ошибка копирования файла в SQL - ну т.е. всё плохо");
                return;
            }
            PART_RichTextBox.AppendText($"Загрузил {dataTable.Rows.Count} записей!");
        }
예제 #3
0
        /// <summary>СОБЫТИЕ Выбор XML файла</summary>
        private void PART_ButtonOpenXML_Click(object sender, RoutedEventArgs e)
        {
            // Находим нужный файл
            var _DialogFileOpen = new Microsoft.Win32.OpenFileDialog
            {
                DefaultExt = ".xml",
                Filter     = "XML file|spr_medspec.xml"
            };

            if (_DialogFileOpen.ShowDialog() != true)
            {
                return;
            }
            PART_RichTextBox.AppendText($"Выбран файл: {_DialogFileOpen.FileName}\n");
            PRI_FileName = _DialogFileOpen.FileName;
            PART_ButtonLoadFile.IsEnabled = true;
        }
예제 #4
0
        /// <summary>СОБЫТИЕ Нажали на кнопку Проверить старый ОКАТО</summary>
        private void PART_ButtonOldOKATO_Click(object sender, RoutedEventArgs e)
        {
            oldOKATO = PART_TextBoxOldOKATO.Text;
            if (oldOKATO == "")
            {
                PART_RichTextBox.AppendText("Введите в поле Старый номер ОКАТО\n");
                return;
            }

            // Ищем старый ОКАТО
            string _oldAdres = MySql.MET_QueryStr($"select isnull((select SOCR + '. ' + NAME + '; ' from Bazis.dbo.KLADR where  OCATD = {oldOKATO} for xml path('')), 'не нашел')");

            PART_RichTextBox.AppendText($"### Старый ОКАТО: {oldOKATO}\n");
            PART_RichTextBox.AppendText($"Адреса: {_oldAdres}\n");
            if (_oldAdres == "не нашел" || _oldAdres == "")
            {
                PART_ButtonNewOKATO.IsEnabled = false;
                newOKATO = "";
                return;
            }
            PART_ButtonNewOKATO.IsEnabled = true;
        }
예제 #5
0
        /// <summary>СОБЫТИЕ Нажали на кнопку Обновить Страховые компании</summary>
        private void PART_ButtonLoadFile_Click(object sender, RoutedEventArgs e)
        {
            string _Tf_okato = "";
            int    _Smocod   = 0;
            string _Nam_smok = "";
            string _D_end    = "";
            string _Ogrn     = "";

            PRI_Context = new StarahReestrDataContext(MySql.MET_ConSql());
            ((Paragraph)PART_RichTextBox.Document.Blocks.FirstBlock).LineHeight = 2;
            XmlTextReader _TextReader = new XmlTextReader(PRI_FileName);

            while (_TextReader.Read())
            {
                if (_TextReader.NodeType == XmlNodeType.Element)
                {
                    switch (_TextReader.Name)
                    {
                    case "tf_okato":
                        _TextReader.Read();
                        _Tf_okato = _TextReader.Value;
                        break;

                    case "smocod":
                        _TextReader.Read();
                        _Smocod = Convert.ToInt32(_TextReader.Value);
                        break;

                    case "nam_smok":
                        _TextReader.Read();
                        _Nam_smok = _TextReader.Value;
                        break;

                    case "d_end":
                        _TextReader.Read();
                        _D_end = _TextReader.Value == "" ? "" : "old";

                        break;

                    case "Ogrn":
                        _TextReader.Read();
                        _Ogrn = _TextReader.Value;
                        break;
                    }
                }
                if (_TextReader.NodeType == XmlNodeType.EndElement && _TextReader.Name == "insCompany")
                {
                    // Связь с SQL, в принципе не очень то и нужен, только для разового сохраниения в  StrahFile
                    try
                    {
                        bool _Er = false;
                        PRI_StrahComp = PRI_Context.s_StrahComp.Single(n => n.KOD == _Smocod);
                        if (_Nam_smok != PRI_StrahComp.TKOD)
                        {
                            _Er = true;
                            PART_RichTextBox.AppendText("Несовпадает название:\n");
                        }
                        if (_Ogrn != PRI_StrahComp.OGRN)
                        {
                            _Er = true;
                            PART_RichTextBox.AppendText("Несовпадает ОГРН:\n");
                        }
                        if (_D_end != PRI_StrahComp.NewTKod)
                        {
                            _Er = true;
                            PART_RichTextBox.AppendText("Несовпадает дата закрытия:\n");
                        }
                        if (_Er)
                        {
                            PART_RichTextBox.AppendText(_Smocod + "\n");
                            PART_RichTextBox.AppendText("ОГРН старое/новое: " + PRI_StrahComp.OGRN + " / " + _Ogrn + "\n");
                            PART_RichTextBox.AppendText("Устаревшее старое/новое: " + PRI_StrahComp.NewTKod + " / " + _D_end + "\n");
                            PART_RichTextBox.AppendText("старое:" + PRI_StrahComp.TKOD + "\n");
                            PART_RichTextBox.AppendText("новое: " + _Nam_smok + "\n\n");
                            PRI_StrahComp.OGRN    = _Ogrn;
                            PRI_StrahComp.NewTKod = _D_end;
                            PRI_StrahComp.TKOD    = _Nam_smok;
                        }
                        //// Запись файла  StrahFile
                        //PRI_StrahFile = new StrahFile
                        //{
                        //    Cod = PRI_Context.StrahFile.Max(e => e.Cod + 1),
                        //    DateN = PROP_DateN,
                        //    DateK = PROP_DateK,
                        //    Korekt = PROP_Korekt,
                        //    StrahComp = (byte?)PRI_Strah,
                        //    SUMMAV = 0,
                        //    Tip = 1,
                        //    YEAR = PROP_DateK.Year,
                        //    MONTH = PROP_DateK.Month,
                        //    NSCHET = PROP_Schet,
                        //    DSCHET = PROP_DateSchet,
                        //    pHide = 0,
                        //    pParent = PROP_Parent
                        //};
                    }
                    catch (InvalidOperationException)
                    {
                        PART_RichTextBox.AppendText("Новая компания:\n");
                        PART_RichTextBox.AppendText(_Smocod + "  " + _Ogrn + "   " + _D_end + "\n");
                        PART_RichTextBox.AppendText(_Nam_smok + "\n");
                        PRI_StrahComp.KOD     = _Smocod;
                        PRI_StrahComp.OGRN    = _Ogrn;
                        PRI_StrahComp.NewTKod = _D_end;
                        PRI_StrahComp.TKOD    = _Nam_smok;
                        try
                        {
                            PRI_Oblast = PRI_Context.s_Oblast.Single(n => n.NewKod == _Tf_okato);
                            PART_RichTextBox.AppendText("ОКАТО: " + _Tf_okato + " область:" + PRI_Oblast.kod + " / " + PRI_Oblast.NAIM + "\n\n");
                        }
                        catch (InvalidOperationException)
                        {
                            PART_RichTextBox.AppendText("область НЕ найдена \n\n");
                        }
                    }
                    catch
                    {
                        //
                    }
                }
            }
            PART_RichTextBox.AppendText("Усё");
        }