Ejemplo n.º 1
0
        /// <summary>МЕТОД Формируем дерево</summary>
        public override void MET_CreateTree()
        {
            // Преварительно чистим  дерево
            MyGlo.TreeView.Items.Clear();

            if (MyGlo.KL > 0)
            {
                // Чистим структуру протоколов
                UserProtokol.MET_ClearProtokol();
                // Загружаем все протоколы Protokol таблицы kdl, по KL пациента
                UserProtokol.MET_FactoryProtokolArray(eTipDocum.Kdl, MyGlo.KL, "KL");

                // ВЕТКА Общие сведенья
                VirtualNodes _Node = new UserNodes_Inform
                {
                    PROP_TipNodes   = eTipNodes.Main,
                    Name            = "eleTVItemObSved",
                    PROP_Text       = "Общие сведения",
                    PROP_ImageName  = "mnObSved",
                    PROP_ParentName = "",
                    IsExpanded      = true
                };
                _Node.PROP_Docum             = new UserDocument(_Node);
                _Node.PROP_Docum.PROP_Otchet = new UserOtcher_InformCreate {
                    PROP_Docum = _Node.PROP_Docum
                };
                _Node.MET_Inizial();
                {
                    // ВЕТКА Паспортная часть (Сразу ставим на нем фокус)
                    _Node = new UserNodes_Inform
                    {
                        PROP_TipNodes   = eTipNodes.Inform,
                        Name            = "eleTVItemPasp",
                        PROP_Text       = "Паспортная часть",
                        PROP_ImageName  = "mnPasp",
                        PROP_ParentName = "eleTVItemObSved"
                    };
                    // Если пациент умер, то пишем сообщение
                    if (Convert.ToString(MyGlo.HashKBOL["DSmerti"]) != "")
                    {
                        _Node.PROP_TextDown = "   Пациент Умер";
                    }
                    _Node.PROP_Docum             = new UserDocument(_Node);
                    _Node.PROP_Docum.PROP_Otchet = new UserOtcher_InformPasport {
                        PROP_Docum = _Node.PROP_Docum
                    };
                    _Node.MET_Inizial();
                    _Node.IsSelected = true;

                    // ВЕТКА Для лабораторных исследований (протоколы с 1000 по 1999)
                    _Node = new UserNodes_RootLaboratory
                    {
                        PROP_TipNodes    = eTipNodes.Kdl_RootsList,
                        Name             = "eleTVItem_Laboratory",
                        PROP_Text        = "Исследования",
                        PROP_TextDefault = "Исследования",
                        PROP_ImageName   = "mnKdl_green",
                        PROP_ParentName  = "eleTVItemObSved",
                        IsExpanded       = true
                    };
                    _Node.PROP_Docum             = new UserDocument(_Node);
                    _Node.PROP_Docum.PROP_Otchet = new UserOtchet_Roots {
                        PROP_Docum = _Node.PROP_Docum
                    };
                    _Node.MET_Inizial();
                }
            }
            else
            {
                VirtualUserWindow _WinSpr = new UserWindow_Laboratory();
                _WinSpr.PROP_Modal  = true;
                _WinSpr.WindowStyle = WindowStyle.ToolWindow;
                _WinSpr.ShowDialog();
                if (_WinSpr.PROP_Return)
                {
                    // Запуск программы MET_Window_Loaded()
                    MyGlo.Event_ReloadWindows?.Invoke(true);
                }
            }
        }
Ejemplo n.º 2
0
        /// <summary>МЕТОД Формируем дерево</summary>
        public virtual void MET_CreateTree()
        {
            // Преварительно чистим  дерево
            MyGlo.TreeView.Items.Clear();

            // Чистим структуру протоколов
            UserProtokol.MET_ClearProtokol();
            // Загружаем все протоколы Protokol таблицы kdl, по KL пациента
            UserProtokol.MET_FactoryProtokolArray(eTipDocum.Kdl, MyGlo.KL, "KL");

            // ВЕТКА Общие сведенья
            VirtualNodes _Node = new UserNodes_Inform
            {
                PROP_TipNodes   = eTipNodes.Main,
                Name            = "eleTVItemObSved",
                PROP_Text       = "Общие сведения",
                PROP_ImageName  = "mnObSved",
                PROP_ParentName = "",
                IsExpanded      = true
            };

            _Node.PROP_Docum             = new UserDocument(_Node);
            _Node.PROP_Docum.PROP_Otchet = new UserOtcher_InformCreate {
                PROP_Docum = _Node.PROP_Docum
            };
            _Node.MET_Inizial();
            {
                // ВЕТКА Паспортная часть (Сразу ставим на нем фокус)
                _Node = new UserNodes_Inform
                {
                    PROP_TipNodes   = eTipNodes.Inform,
                    Name            = "eleTVItemPasp",
                    PROP_Text       = "Паспортная часть",
                    PROP_ImageName  = "mnPasp",
                    PROP_ParentName = "eleTVItemObSved"
                };
                // Если пациент умер, то пишем сообщение
                if (Convert.ToString(MyGlo.HashKBOL["DSmerti"]) != "")
                {
                    _Node.PROP_ImageName = "mnAngel";
                    _Node.PROP_TextDown  = "   Пациент Умер";
                }
                _Node.PROP_Docum             = new UserDocument(_Node);
                _Node.PROP_Docum.PROP_Otchet = new UserOtcher_InformPasport {
                    PROP_Docum = _Node.PROP_Docum
                };
                _Node.MET_Inizial();
                _Node.IsSelected = true;

                // ВЕТКА История болезни
                _Node = new UserNodes_Inform
                {
                    PROP_TipNodes   = eTipNodes.Inform,
                    Name            = "eleTVItem_History",
                    PROP_Text       = "История болезни",
                    PROP_ImageName  = "mnHistory",
                    PROP_ParentName = "eleTVItemObSved"
                };
                _Node.PROP_Docum             = new UserDocument(_Node);
                _Node.PROP_Docum.PROP_Otchet = new UserOtcher_History {
                    PROP_Docum = _Node.PROP_Docum
                };
                ((UserOtcher_History)_Node.PROP_Docum.PROP_Otchet).PUB_Ban = PUB_Menu == 0;
                _Node.MET_Inizial();

                // ВЕТКА Канцер регистра
                if (MySql.MET_QueryBool(MyQuery.MET_varIfRakReg_Select_1(MyGlo.KL)))                // только если есть пациент в Канцер-Регистре
                {
                    _Node = new UserNodes_Inform
                    {
                        PROP_TipNodes   = eTipNodes.Inform,
                        Name            = "eleTVItem_KancerRegistr",
                        PROP_Text       = "Канцер-Регистр",
                        PROP_ImageName  = "mnRakReg",
                        PROP_ParentName = "eleTVItemObSved"
                    };
                    _Node.PROP_Docum             = new UserDocument(_Node);
                    _Node.PROP_Docum.PROP_Otchet = new UserOtcher_InformKancerRegistr {
                        PROP_Docum = _Node.PROP_Docum
                    };

                    _Node.MET_Inizial();
                }

                // ВЕТКА Общие документы
                _Node = new UserNodes_RootObDoсum
                {
                    PROP_TipNodes    = eTipNodes.Kdl_RootsList,
                    Name             = "eleTVItem_ObDocum",
                    PROP_Text        = "Общие документы",
                    PROP_TextDefault = "Общие документы",
                    PROP_ImageName   = "mnObDocum",
                    PROP_ParentName  = "eleTVItemObSved"
                };
                ((UserNodes_RootObDoсum)_Node).PROP_shaTipObsled = 140;
                _Node.PROP_Docum             = new UserDocument(_Node);
                _Node.PROP_Docum.PROP_Otchet = new UserOtchet_Roots {
                    PROP_Docum = _Node.PROP_Docum
                };
                _Node.MET_Inizial();

                bool _accessPdfView = false;
                // Для тех кто может смотреть, показываем только если есть протоколы
                if (MyPdf.PROP_AccessPdf == eAccessPdf.View)
                {
                    _accessPdfView = PUB_Protokol.Exists(p => p.PROP_TipProtokol.PROP_TipDocum == eTipDocum.Kdl &&
                                                         p.PROP_NumShablon == 2000 &&
                                                         p.PROP_xDelete == 0);
                }
                // Показываем админу, редактору в любом случае и просмоторщику если есть протоколы
                if (MyPdf.PROP_AccessPdf == eAccessPdf.Admin ||
                    MyPdf.PROP_AccessPdf == eAccessPdf.Edit ||
                    _accessPdfView)
                {
                    // ВЕТКА Pdf документы
                    _Node = new UserNodes_RootPdf
                    {
                        PROP_TipNodes    = eTipNodes.Kdl_RootsPdf,
                        Name             = "eleTVItem_Pdf",
                        PROP_Text        = "PDF документы",
                        PROP_TextDefault = "PDF документы",
                        PROP_ImageName   = "mnPdfMain",
                        PROP_ParentName  = "eleTVItemObSved"
                    };
                    ((UserNodes_RootPdf)_Node).PROP_shaTipObsled = 2;
                    _Node.PROP_Docum             = new UserDocument(_Node);
                    _Node.PROP_Docum.PROP_Otchet = new UserOtchet_RootsPdf {
                        PROP_Docum = _Node.PROP_Docum
                    };
                    _Node.MET_Inizial();
                }

                // ВЕТКА Телефоны
                _Node = new UserNodes_Inform
                {
                    Name             = "elePhone",
                    PROP_Text        = "Телефоны",
                    PROP_TextDefault = "Телефоны",
                    PROP_ImageName   = "mnPhone",
                    PROP_ParentName  = "",
                };
                _Node.PROP_Docum             = new UserDocument(_Node);
                _Node.PROP_Docum.PROP_Otchet = new UserOtcher_Phone {
                    PROP_Docum = _Node.PROP_Docum
                };
                _Node.MET_Inizial();

                // ВЕТКА Сотрудники (Только для админов)
                if (MyGlo.PROP_Admin)
                {
                    _Node = new UserNodes_Inform
                    {
                        Name             = "eleStaff",
                        PROP_Text        = "Сотрудники",
                        PROP_TextDefault = "Сотрудники",
                        PROP_ImageName   = "mnMen",
                        PROP_ParentName  = "",
                    };
                    _Node.PROP_Docum             = new UserDocument(_Node);
                    _Node.PROP_Docum.PROP_Otchet = new UserOtcher_Staff {
                        PROP_Docum = _Node.PROP_Docum
                    };
                    _Node.MET_Inizial();
                }
            }
        }
Ejemplo n.º 3
0
        /// <summary>МЕТОД Формируем дерево</summary>
        public override void MET_CreateTree()
        {
            // Преварительно чистим  дерево
            MyGlo.TreeView.Items.Clear();
            if (MyGlo.KL > 0)
            {
                // Чистим структуру протоколов
                UserProtokol.MET_ClearProtokol();
                // Загружаем все протоколы Protokol таблицы kdl, по KL пациента
                UserProtokol.MET_FactoryProtokolArray(eTipDocum.Kdl, MyGlo.KL, "KL");
                // Загружаем все протоколы Protokol таблицы Pol, по KL пациента
                UserProtokol.MET_FactoryProtokolArray(eTipDocum.Pol, MyGlo.KL, "KL");
                // Загружаем все протоколы Protokol таблицы Stac, по KL пациента
                UserProtokol.MET_FactoryProtokolArray(eTipDocum.Stac, MyGlo.KL, "KL");

                // ВЕТКА Общие сведенья
                VirtualNodes _Node = new UserNodes_Inform
                {
                    PROP_TipNodes   = eTipNodes.Main,
                    Name            = "eleTVItemObSved",
                    PROP_Text       = "Общие сведения",
                    PROP_ImageName  = "mnObSved",
                    PROP_ParentName = "",
                    IsExpanded      = true
                };
                _Node.PROP_Docum             = new UserDocument(_Node);
                _Node.PROP_Docum.PROP_Otchet = new UserOtcher_InformCreate {
                    PROP_Docum = _Node.PROP_Docum
                };
                _Node.MET_Inizial();
                {
                    // ВЕТКА Паспортная часть (Сразу ставим на нем фокус)
                    _Node = new UserNodes_Inform
                    {
                        PROP_TipNodes   = eTipNodes.Inform,
                        Name            = "eleTVItemPasp",
                        PROP_Text       = "Паспортная часть",
                        PROP_ImageName  = "mnPasp",
                        PROP_ParentName = "eleTVItemObSved"
                    };
                    // Если пациент умер, то пишем сообщение
                    if (Convert.ToString(MyGlo.HashKBOL["DSmerti"]) != "")
                    {
                        _Node.PROP_TextDown = "   Пациент Умер";
                    }
                    _Node.PROP_Docum             = new UserDocument(_Node);
                    _Node.PROP_Docum.PROP_Otchet = new UserOtcher_InformPasport {
                        PROP_Docum = _Node.PROP_Docum
                    };
                    _Node.MET_Inizial();
                    _Node.IsSelected = true;

                    // ВЕТКА История болезни
                    _Node = new UserNodes_Inform
                    {
                        PROP_TipNodes   = eTipNodes.Inform,
                        Name            = "eleTVItem_History",
                        PROP_Text       = "История болезни",
                        PROP_ImageName  = "mnHistory",
                        PROP_ParentName = "eleTVItemObSved"
                    };
                    _Node.PROP_Docum             = new UserDocument(_Node);
                    _Node.PROP_Docum.PROP_Otchet = new UserOtcher_History {
                        PROP_Docum = _Node.PROP_Docum
                    };
                    ((UserOtcher_History)_Node.PROP_Docum.PROP_Otchet).PUB_Ban = PUB_Menu == 0;
                    _Node.MET_Inizial();

                    // ВЕТКА Канцер регистра
                    if (MySql.MET_QueryBool(MyQuery.MET_varIfRakReg_Select_1(MyGlo.KL)))
                    // только если есть пациент в Канцер-Регистре
                    {
                        _Node = new UserNodes_Inform
                        {
                            PROP_TipNodes   = eTipNodes.Inform,
                            Name            = "eleTVItem_KancerRegistr",
                            PROP_Text       = "Канцер-Регистр",
                            PROP_ImageName  = "mnRakReg",
                            PROP_ParentName = "eleTVItemObSved"
                        };
                        _Node.PROP_Docum             = new UserDocument(_Node);
                        _Node.PROP_Docum.PROP_Otchet = new UserOtcher_InformKancerRegistr
                        {
                            PROP_Docum = _Node.PROP_Docum
                        };
                        _Node.MET_Inizial();
                    }

                    // ВЕТКА Для направлений
                    _Node = new UserNodes_RootNaprInOtherLpu
                    {
                        PROP_TipNodes    = eTipNodes.Pol_RootsList,
                        Name             = "eleTVItem_NaprOtherLpu",
                        PROP_Text        = "Направления",
                        PROP_TextDefault = "Направления",
                        PROP_ImageName   = "mnSelectPac",
                        PROP_ParentName  = "eleTVItemObSved",
                        IsExpanded       = true
                    };
                    _Node.PROP_Docum             = new UserDocument(_Node);
                    _Node.PROP_Docum.PROP_Otchet = new UserOtchet_Roots {
                        PROP_Docum = _Node.PROP_Docum
                    };
                    _Node.MET_Inizial();

                    // ВЕТКА Для документов - внешних ЛПУ
                    _Node = new UserNodes_OtherLpu
                    {
                        PROP_TipNodes    = eTipNodes.Kdl_RootsList,
                        Name             = "eleTVItem_OtherLpu",
                        PROP_Text        = "Документы",
                        PROP_TextDefault = "Документы",
                        PROP_ImageName   = "mnObDocum",
                        PROP_ParentName  = "eleTVItemObSved",
                        IsExpanded       = true
                    };
                    _Node.PROP_Docum             = new UserDocument(_Node);
                    _Node.PROP_Docum.PROP_Otchet = new UserOtchet_Roots {
                        PROP_Docum = _Node.PROP_Docum
                    };
                    _Node.MET_Inizial();
                }
            }
            else
            {
                VirtualUserWindow _WinSpr = new UserWindow_OtherLpu();
                _WinSpr.PROP_Modal  = true;
                _WinSpr.WindowStyle = WindowStyle.ToolWindow;
                _WinSpr.ShowDialog();
                if (_WinSpr.PROP_Return)
                {
                    // Запуск программы MET_Window_Loaded()
                    MyGlo.Event_ReloadWindows?.Invoke(true);
                }
            }
        }