Esempio n. 1
0
        /// <summary>
        /// 创建一个复合医疗单对象
        /// </summary>
        /// <param name="title"></param>
        /// <returns></returns>
        private TabEmsView CreateTabEmsView(String title)
        {
            var tabControl = new TabEmsView(this)
            {
                Dock = DockStyle.Fill, EmsTitle = title
            };

            int param = 0;

            try
            {
                param = this.Context.GetOrgParam <int>(ICiOrdNSysParamConst.SYS_PARAM_OpDocBillOperationMode);
            }
            catch (XapServiceException ex)
            {
                this.SetStatusMsg(ex.ErrorMsg.Message);
            }
            catch (System.Exception ex)
            {
                this.SetStatusMsg(ex.Message);
            }

            tabControl.CreateTabEmsView(ent4BannerDTO, param);

            tabControl.SelectedChanging     += OnTabEmsView_SelectedChanging;
            tabControl.SelectedIndexChanged += OnTabEmsView_SelectedChanged;

            return(tabControl);
        }
Esempio n. 2
0
        /// <summary>
        /// 多医疗单显示的情况下,切换方法
        /// </summary>
        /// <param name="o"></param>
        private void SwitchEmsContainer(TabEmsView o)
        {
            this.emsLayout.RenderControls.ToList().ForEach(ctrl =>
            {
                if (ctrl is TabEmsView)
                {
                    (ctrl as TabEmsView).Visible = false;
                }
            });
            o.Visible = true;

            o.SelectedIndex = 0;

            this.buttonGroupView.ShowEmsButtonGroup(o.GetEmsViewType(), o.AllowEdit());
            this.multiEmsGroup.SetButtonVisible(0, !(this.multiEmsGroup.ButtonCount == 1));
        }
Esempio n. 3
0
        /// <summary>
        /// 关闭医疗单
        /// </summary>
        /// <param name="emsView"></param>
        /// <returns></returns>
        protected bool  EventCloseEmsHandle(TabEmsView emsView)
        {
            if (emsView == null)
            {
                ClearEmsEditorView();

                hasOpenedOrderList.Clear();
            }
            else if (this.emsLayout.RenderControls.Contains(emsView))
            {
                // 如果当前只有一个医疗单视图,则复用该视图
                if (this.multiEmsGroup.ButtonCount == 1)
                {
                    emsView.OnEventHandle(this, AssToolEx.DictionaryEventArgsWith(EventCodeType.EVENT_EMS_CLOSE));
                    SwitchEmsContainer(emsView);
                }
                else   // 多个医疗单视图,将传入的医疗单删除
                {
                    this.multiEmsGroup.RemoveButton(this.multiEmsGroup.SelectedButton);
                    this.emsLayout.RemoveRender(emsView);

                    if (!String.IsNullOrEmpty(emsView.UID) && this.hasOpenedOrderList.Contains(emsView.UID))
                    {
                        this.hasOpenedOrderList.Remove(emsView.UID);
                    }

                    if (this.multiEmsGroup.ButtonCount > 0)
                    {
                        SwitchEmsContainer(GetSelectedEmsView());
                    }
                    emsView.Dispose();
                }
            }

            //if (this.multiEmsGroup.ButtonCount == 0)
            //{
            //    SwitchEmsContainer(AddEmsView());
            //}

            return(true);
        }