コード例 #1
0
        /// <summary>
        /// 带参数的构造函数
        /// </summary>
        /// <param name="deptCode">科室编码</param>
        /// <param name="terminalType">终端类型</param>
        public DrugTerminalClass(string deptCode, string terminalType)
        {
            //获取终端列表
            Neusoft.HISFC.BizLogic.Pharmacy.DrugStore drugStore = new Neusoft.HISFC.BizLogic.Pharmacy.DrugStore( );
            ArrayList al = drugStore.QueryDrugTerminalByDeptCode(deptCode, terminalType);

            string[] temp = new string[al.Count + 1];

            temp[0] = "无替代";

            for (int i = 1; i < al.Count; i++)
            {
                Neusoft.HISFC.Models.Pharmacy.DrugTerminal info = al[i] as Neusoft.HISFC.Models.Pharmacy.DrugTerminal;
                temp[i] = "<" + info.ID + ">" + info.Name;
            }

            ReplaceConverter.EnumString = temp;

            //获取发药窗口列表
            ArrayList tempAl = drugStore.QueryDrugTerminalByDeptCode(deptCode, "0");

            string[] tempStr = new string[tempAl.Count];

            for (int i = 0; i < tempAl.Count; i++)
            {
                Neusoft.HISFC.Models.Pharmacy.DrugTerminal info = tempAl[i] as Neusoft.HISFC.Models.Pharmacy.DrugTerminal;
                tempStr[i] = "<" + info.ID + ">" + info.Name;
            }

            SendWindowConverter.EnumString = tempStr;
        }
コード例 #2
0
        /// <summary>
        /// 克隆函数
        /// </summary>
        /// <returns>成功返回当前实例的副本</returns>
        public new DrugTerminal Clone()
        {
            DrugTerminal drugTerminal = base.Clone() as DrugTerminal;

            drugTerminal.Dept            = this.Dept.Clone();
            drugTerminal.ReplaceTerminal = this.ReplaceTerminal.Clone();
            drugTerminal.Oper            = this.Oper.Clone();
            drugTerminal.SendWindow      = this.sendWindow.Clone();

            return(drugTerminal);
        }
コード例 #3
0
        /// <summary>
        /// 门诊终端选择业务
        /// </summary>
        /// <param name="stockDept">操作库房科室</param>
        /// <param name="terminalType">门诊终端类别 0 发药窗口 1 配药台</param>
        /// <param name="isShowMessageBox">对相应的提示信息是否采用MessageBox弹出显示</param>
        /// <returns>成功返回 门诊终端实体 失败返回null</returns>
        public static Neusoft.HISFC.Models.Pharmacy.DrugTerminal TerminalSelect(string stockDept, Neusoft.HISFC.Models.Pharmacy.EnumTerminalType terminalType, bool isShowMessageBox)
        {
            Neusoft.HISFC.Models.Pharmacy.DrugTerminal terminal         = new DrugTerminal( );
            Neusoft.HISFC.BizLogic.Pharmacy.DrugStore  drugStoreManager = new Neusoft.HISFC.BizLogic.Pharmacy.DrugStore( );

            string    strErr             = "";
            bool      isShowTerminalList = true;
            ArrayList alValues           = Neusoft.FrameWork.WinForms.Classes.Function.GetDefaultValue("ClinicDrug", "TerminalCode", out strErr);

            if (alValues != null && alValues.Count > 0 && (alValues[0] as string) != "")
            {
                //根据配置文件内编码确定终端
                terminal = drugStoreManager.GetDrugTerminalById(alValues[0] as string);
                if (terminal != null)
                {
                    if (terminal.IsClose && isShowMessageBox)
                    {
                        System.Windows.Forms.MessageBox.Show(Neusoft.FrameWork.Management.Language.Msg("配置文件内设置的终端" + terminal.Name + "已关闭"));
                    }

                    if (terminal.TerminalType == terminalType)
                    {
                        isShowTerminalList = false;
                    }
                }
            }

            if (isShowTerminalList)
            {
                #region 配置文件内编码无效 弹出列表供人员选择

                ArrayList al = drugStoreManager.QueryDrugTerminalByDeptCode(stockDept, terminalType.GetHashCode( ).ToString( ));
                if (al == null && isShowMessageBox)
                {
                    System.Windows.Forms.MessageBox.Show(Neusoft.FrameWork.Management.Language.Msg("未获取终端列表") + drugStoreManager.Err);
                    return(null);
                }
                Neusoft.FrameWork.Models.NeuObject tempTerminal = new NeuObject( );
                if (Neusoft.FrameWork.WinForms.Classes.Function.ChooseItem(al, null, new bool[] { true, true, false, false, false, false, false, false }, null, ref tempTerminal) == 0)
                //if (Neusoft.FrameWork.WinForms.Classes.Function.ChooseItem(al, ref tempTerminal) == 0)
                {
                    return(null);
                }
                else
                {
                    terminal = tempTerminal as Neusoft.HISFC.Models.Pharmacy.DrugTerminal;
                }

                #endregion
            }

            if (terminal != null && terminal.TerminalType == EnumTerminalType.配药台)
            {
                Neusoft.HISFC.Models.Pharmacy.DrugTerminal sendTerminal = drugStoreManager.GetDrugTerminalById(terminal.SendWindow.ID);
                if (sendTerminal != null)
                {
                    terminal.SendWindow.Name = sendTerminal.Name;
                }
            }

            return(terminal);
        }