public override int Print(object sender, object neuObject)
        {
            Neusoft.HISFC.BizLogic.Pharmacy.DrugStore drugManager = new Neusoft.HISFC.BizLogic.Pharmacy.DrugStore();

            if (this.neuSpread1_Sheet1.ActiveCell == null)
            {
                MessageBox.Show("没有查询出相关数据,打印无效!...");
                return(1);
            }
            else
            {
                Neusoft.HISFC.Models.Pharmacy.DrugRecipe info = drugManager.GetDrugRecipe(this.operDept.ID, this.neuSpread1_Sheet1.Cells[this.neuSpread1_Sheet1.ActiveRow.Index, 0].Text);
                string detailState = "0";

                if (info.RecipeState == "0" || info.RecipeState == "1")
                {
                    detailState = "0";
                }
                else if (info.RecipeState == "2")
                {
                    detailState = "1";
                }
                else
                {
                    detailState = "2";
                }

                ArrayList alInfo = new ArrayList();
                alInfo = this.itemManager.QueryApplyOutListForClinic(this.operDept.ID, "M1", detailState, info.RecipeNO);

                Print(info, alInfo);

                return(base.Print(sender, neuObject));
            }
        }
        /// <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;
        }
Beispiel #3
0
        /// <summary>
        /// 显示本科室全部摆药台列表
        /// </summary>
        public virtual void ShowControlList(string deptCode)
        {
            //清除当前显示的摆药台
            this.neuSpread1_Sheet1.Rows.Count = 0;

            //判断科室编码是否存在
            if (deptCode == "")
            {
                MessageBox.Show(Language.Msg("无效的摆药科室!没有可以选择的摆药台"));
                return;
            }

            //定义药房管理类
            Neusoft.HISFC.BizLogic.Pharmacy.DrugStore drugStoreManager = new Neusoft.HISFC.BizLogic.Pharmacy.DrugStore();

            //取本科室全部摆药台列表
            ArrayList al = drugStoreManager.QueryDrugControlList(deptCode);

            //{50CAFFB7-1E18-4b0d-95D6-CEC019D4C35D} 权限控制摆药台 add by guanyx
            al = this.FliterControl(al);

            if (al == null)
            {
                MessageBox.Show(drugStoreManager.Err);
                return;
            }
            if (al.Count == 0)
            {
                MessageBox.Show(Language.Msg("您所在的科室没有设置摆药台,请先检查本科室的摆药台。\n\r或者您没有操作摆药台的权限,请检查您的权限"));
                return;
            }

            this.neuSpread1_Sheet1.Rows.Add(0, al.Count);
            Neusoft.HISFC.Models.Pharmacy.DrugControl drugControl;
            for (int i = 0; i < al.Count; i++)
            {
                drugControl = al[i] as Neusoft.HISFC.Models.Pharmacy.DrugControl;

                FarPoint.Win.Spread.CellType.ButtonCellType btnType = new FarPoint.Win.Spread.CellType.ButtonCellType();
                btnType.ButtonColor = System.Drawing.Color.FromArgb(((System.Byte)(192)), ((System.Byte)(225)), ((System.Byte)(243)));
                btnType.Text        = drugControl.Name;
                btnType.TextDown    = drugControl.Name;
                this.neuSpread1_Sheet1.Cells[i, 0].CellType = btnType;
                this.neuSpread1_Sheet1.Cells[i, 1].Text     = drugControl.SendType == 0 ? "全部" : (drugControl.SendType == 1 ? "集中" : "临时");
                this.neuSpread1_Sheet1.Cells[i, 2].Text     = drugControl.ShowLevel == 0 ? "显示科室汇总" : (drugControl.ShowLevel == 1 ? "显示科室明细" : "显示患者明细");
                this.neuSpread1_Sheet1.Rows[i].Tag          = drugControl;
            }

            if (al.Count == 1)
            {
                this.drugControl = al[0] as Neusoft.HISFC.Models.Pharmacy.DrugControl;

                if (this.SelectControlEvent != null)
                {
                    this.SelectControlEvent(this.drugControl);
                }
                return;
            }
        }
Beispiel #4
0
        /// <summary>
        /// 列表初始化
        /// </summary>
        public void InitList()
        {
            Neusoft.HISFC.BizLogic.Manager.Department deptManager = new Neusoft.HISFC.BizLogic.Manager.Department();

            Neusoft.HISFC.BizLogic.Pharmacy.DrugStore drugStoreManager = new Neusoft.HISFC.BizLogic.Pharmacy.DrugStore();

            ArrayList alTermianalList = drugStoreManager.QueryDrugTerminalByTerminalType("0");

            if (alTermianalList == null)
            {
                MessageBox.Show(Neusoft.FrameWork.Management.Language.Msg("加载所有终端列表发生错误") + drugStoreManager.Err);
                return;
            }

            this.tvList.ImageList = this.tvList.groupImageList;

            string   privDeptCode = "";
            TreeNode deptNode     = null;

            foreach (Neusoft.HISFC.Models.Pharmacy.DrugTerminal info in alTermianalList)
            {
                if (privDeptCode != info.Dept.ID)
                {
                    Neusoft.HISFC.Models.Base.Department dept = deptManager.GetDeptmentById(info.Dept.ID);
                    if (dept == null)
                    {
                        continue;
                    }
                    info.Dept = dept;

                    deptNode                    = new TreeNode(dept.Name);
                    deptNode.ImageIndex         = 0;
                    deptNode.SelectedImageIndex = 0;
                    deptNode.Tag                = null;

                    privDeptCode = info.Dept.ID;

                    this.tvList.Nodes.Add(deptNode);
                }

                TreeNode terminalNode = new TreeNode(info.Name);
                terminalNode.ImageIndex         = 1;
                terminalNode.SelectedImageIndex = 1;
                terminalNode.Tag = info;

                deptNode.Nodes.Add(terminalNode);
            }
        }
 private void frmOutpatientDrug_FormClosed(object sender, FormClosedEventArgs e)
 {
     if (!this.isCancel)
     {
         if (this.funMode == Neusoft.HISFC.Components.DrugStore.OutpatientFun.Drug)
         {
             Neusoft.HISFC.BizLogic.Pharmacy.DrugStore drugStoreManager = new Neusoft.HISFC.BizLogic.Pharmacy.DrugStore();
             this.Terminal      = drugStoreManager.GetDrugTerminalById(this.Terminal.ID);
             this.Terminal.Memo = "";
             if (drugStoreManager.UpdateDrugTerminal(this.Terminal) == -1)
             {
                 MessageBox.Show(Neusoft.FrameWork.Management.Language.Msg("更新配药终端为可用标记失败"));
                 return;
             }
         }
     }
 }
        /// <summary>
        /// 初始化摆药单信息
        /// </summary>
        protected virtual void InitListView( )
        {
            if (this.DesignMode)
            {
                return;
            }
            this.SuspendLayout( );
            this.Columns.Clear( );
            this.Items.Clear( );

            this.Columns.Add("摆药单名称", 160, HorizontalAlignment.Left);
            this.Columns.Add("打印类型", 70, HorizontalAlignment.Center);
            this.Columns.Add("是否有效", 70, HorizontalAlignment.Center);
            this.Columns.Add("备注", 200, HorizontalAlignment.Left);

            try
            {
                Neusoft.HISFC.BizLogic.Pharmacy.DrugStore drugStore = new Neusoft.HISFC.BizLogic.Pharmacy.DrugStore();
                ArrayList drugBillClassList = new ArrayList();
                drugBillClassList = drugStore.QueryDrugBillClassList();

                bool isHaveRBill = false;
                bool isHavePBill = false;

                foreach (DrugBillClass billClass in drugBillClassList)
                {
                    if (billClass.ID == "R")
                    {
                        isHaveRBill = true;
                    }
                    if (billClass.ID == "P")
                    {
                        isHavePBill = true;
                    }

                    this.AddItem(billClass, false);
                }

                this.SaveDefaultBill(!isHavePBill, !isHaveRBill);
            }
            catch
            {
            }
            this.ResumeLayout( );
        }
        /// <summary>
        /// 默认摆药单保存
        /// </summary>
        protected virtual void SaveDefaultBill(bool isP, bool isR)
        {
            if (isR)            //设置退药摆药单
            {
                Neusoft.HISFC.Models.Pharmacy.DrugBillClass pDrugBill = new DrugBillClass();

                pDrugBill.ID               = "R";
                pDrugBill.Name             = "退药单";                            //摆药分类名称
                pDrugBill.PrintType.ID     = BillPrintType.enuBillPrintType.D; //打印类型
                pDrugBill.DrugAttribute.ID = DrugAttribute.enuDrugAttribute.T; //摆药类型
                pDrugBill.IsValid          = true;                             //是否有效
                pDrugBill.Memo             = "退药单不需维护明细";                      //备注

                Neusoft.HISFC.BizLogic.Pharmacy.DrugStore drugStoreManager = new Neusoft.HISFC.BizLogic.Pharmacy.DrugStore();

                if (drugStoreManager.InsertDrugBillClass(pDrugBill) == -1)
                {
                    MessageBox.Show(Neusoft.FrameWork.Management.Language.Msg("保存特殊摆药单失败"));
                    return;
                }
            }

            if (isP)            //设置非医嘱摆药单
            {
                Neusoft.HISFC.Models.Pharmacy.DrugBillClass pDrugBill = new DrugBillClass();

                pDrugBill.ID               = "P";
                pDrugBill.Name             = "非医嘱摆药单";                         //摆药分类名称
                pDrugBill.PrintType.ID     = BillPrintType.enuBillPrintType.D; //打印类型
                pDrugBill.DrugAttribute.ID = DrugAttribute.enuDrugAttribute.T; //摆药类型
                pDrugBill.IsValid          = true;                             //是否有效
                pDrugBill.Memo             = "非医嘱摆药单不需维护明细";                   //备注

                Neusoft.HISFC.BizLogic.Pharmacy.DrugStore drugStoreManager = new Neusoft.HISFC.BizLogic.Pharmacy.DrugStore();

                if (drugStoreManager.InsertDrugBillClass(pDrugBill) == -1)
                {
                    MessageBox.Show(Neusoft.FrameWork.Management.Language.Msg("保存特殊摆药单失败"));
                    return;
                }
            }
        }
        /// <summary>
        /// 终端初始化  暂时写死使用配药台
        /// </summary>
        protected int InitTerminal()
        {
            if (this.funMode == Neusoft.HISFC.Components.DrugStore.OutpatientFun.Drug)
            {
                this.Terminal = Neusoft.HISFC.Components.DrugStore.Function.TerminalSelect(this.OperDept.ID, Neusoft.HISFC.Models.Pharmacy.EnumTerminalType.配药台, true);
            }
            else
            {
                this.Terminal = Neusoft.HISFC.Components.DrugStore.Function.TerminalSelect(this.OperDept.ID, Neusoft.HISFC.Models.Pharmacy.EnumTerminalType.发药窗口, true);
            }

            if (this.Terminal == null)
            {
                return(-1);
            }

            if (this.funMode == Neusoft.HISFC.Components.DrugStore.OutpatientFun.Drug)
            {
                if (this.Terminal.Memo == "1")
                {
                    DialogResult rs = MessageBox.Show(Neusoft.FrameWork.Management.Language.Msg("该终端已在其他电脑登陆,不能再次使用,您确认登陆此配药终端吗?\n 注意:如果强行登陆后容易造成配药清单打印混乱!"), "", MessageBoxButtons.YesNo, MessageBoxIcon.Warning);
                    if (rs == DialogResult.No)
                    {
                        this.isCancel = true;
                        return(-1);
                    }
                }
                Neusoft.HISFC.BizLogic.Pharmacy.DrugStore drugStoreManager = new Neusoft.HISFC.BizLogic.Pharmacy.DrugStore();
                this.Terminal.Memo = "1";
                if (drugStoreManager.UpdateDrugTerminal(this.Terminal) == -1)
                {
                    MessageBox.Show(Neusoft.FrameWork.Management.Language.Msg("更新配药终端为已在用标记失败"));
                    this.isCancel = true;
                    return(-1);
                }
            }

            this.statusBar1.Panels[3].Text = this.statusBar1.Panels[3].Text + " - " + this.OperDept.Name + this.Terminal.Name + "[" + this.Terminal.ID + "]";

            return(1);
        }
Beispiel #9
0
        protected override void OnLoad(EventArgs e)
        {
            base.OnLoad(e);

            Neusoft.HISFC.BizLogic.Pharmacy.DrugStore drugStoreManager = new Neusoft.HISFC.BizLogic.Pharmacy.DrugStore();

            Neusoft.FrameWork.Models.NeuObject operDept = ((Neusoft.HISFC.Models.Base.Employee)drugStoreManager.Operator).Dept.Clone();

            this.SetArkDept(ref operDept);

            if (this.Tag.ToString() != "1")
            {
                //不显示科室列表
                this.ucChooseDrugControl1.IsShowDept = false;
                this.ucChooseDrugControl1.ShowControlList(operDept.ID);
            }
            else
            {
                this.ucChooseDrugControl1.IsShowDept = true;
                this.ucChooseDrugControl1.InitDeptList();
            }
        }
Beispiel #10
0
        /// <summary>
        /// 初始化
        /// </summary>
        protected virtual void Init()
        {
            this.InitControlParam();

            //取医嘱类型,用于将编码转换成名称
            Neusoft.HISFC.BizLogic.Manager.OrderType orderManager = new Neusoft.HISFC.BizLogic.Manager.OrderType();
            this.orderTypeHelper.ArrayObject = orderManager.GetList();

            //合并重复值的列
            this.neuSpread1_DetailSheet.SetColumnMerge(0, FarPoint.Win.Spread.Model.MergePolicy.Always);
            this.neuSpread1_DetailSheet.SetColumnMerge(1, FarPoint.Win.Spread.Model.MergePolicy.Always);

            this.neuSpread2_PatientDetailSheet.SetColumnMerge(0, FarPoint.Win.Spread.Model.MergePolicy.Always);
            this.neuSpread2_PatientDetailSheet.SetColumnMerge(1, FarPoint.Win.Spread.Model.MergePolicy.Always);


            this.neuSpread1_DetailSheet.SetColumnAllowAutoSort(-1, false);

            Neusoft.FrameWork.WinForms.Classes.MarkCellType.NumCellType numCellType = new Neusoft.FrameWork.WinForms.Classes.MarkCellType.NumCellType();
            numCellType.DecimalPlaces = 0;
            this.neuSpread3_DeptDetailSheet.Columns[4].CellType = numCellType;

            Neusoft.HISFC.BizLogic.Pharmacy.DrugStore drugStoreManager = new Neusoft.HISFC.BizLogic.Pharmacy.DrugStore();
            ArrayList alDrugBillClass = drugStoreManager.QueryDrugBillClassList();

            if (alDrugBillClass == null)
            {
                MessageBox.Show(Language.Msg(""));
                return;
            }

            foreach (Neusoft.HISFC.Models.Pharmacy.DrugBillClass info in alDrugBillClass)
            {
                this.hsDrugBillClass.Add(info.ID, info.PrintType);
            }

            //集中发送方式选择摆药导致打印单子混乱,先封掉 {C388ED06-DFF8-4a9a-9359-1929F95CEEB7} wbo 2010-11-27
            this.neuSpread1_DetailSheet.Columns[2].Locked = true;
        }
Beispiel #11
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);
        }
        /// <summary>
        /// 根据登陆人的权限,过滤摆药台
        /// </summary>
        /// <param name="al"></param>
        /// <returns></returns>
        private ArrayList FliterControl(ArrayList al)
        {
            //人员权限分配明细管理
            Neusoft.HISFC.BizLogic.Manager.UserPowerDetailManager privManager = new Neusoft.HISFC.BizLogic.Manager.UserPowerDetailManager();

            string operCode = privManager.Operator.ID;
            string deptCode = ((Neusoft.HISFC.Models.Base.Employee)privManager.Operator).Dept.ID;

            //定义药房管理类
            Neusoft.HISFC.BizLogic.Pharmacy.DrugStore drugStoreManager = new Neusoft.HISFC.BizLogic.Pharmacy.DrugStore();

            //取操作员的药房权限
            ArrayList alPriv = privManager.LoadByUserCode(operCode, "03", deptCode);
            string    priv   = "";

            for (int i = 0; i < alPriv.Count; i++)
            {
                Neusoft.HISFC.Models.Admin.UserPowerDetail no = alPriv[i] as Neusoft.HISFC.Models.Admin.UserPowerDetail;
                if (no.PowerLevelClass.Class3Code == "Z1")
                {
                    priv += "B";
                }
                if (no.PowerLevelClass.Class3Code == "Z2")
                {
                    priv += "T";
                }
            }
            if (al == null)
            {
                MessageBox.Show(drugStoreManager.Err);
                return(al);
            }
            if (al.Count == 0)
            {
                MessageBox.Show(Language.Msg("您所在的科室没有设置摆药台,请先设置本科室的摆药台。"));
                return(al);
            }
            Neusoft.HISFC.Models.Pharmacy.DrugControl control;
            Neusoft.HISFC.Models.Pharmacy.DrugControl QuitDrugControl = new Neusoft.HISFC.Models.Pharmacy.DrugControl();
            for (int i = 0; i < al.Count; i++)
            {
                control = al[i] as Neusoft.HISFC.Models.Pharmacy.DrugControl;
                if (control.Name == "退药台")
                {
                    QuitDrugControl = control;
                }
            }
            if (priv.Length == 1)
            {
                if (priv == "B")
                {
                    al.Remove(QuitDrugControl);
                }
                else
                {
                    al.Clear();
                    al.Add(QuitDrugControl);
                }
                return(al);
            }
            else if (priv.Length == 0)
            {
                al.Clear();
                return(al);
            }
            return(al);
        }
        public override int Print(object sender, object neuObject)
        {
            Neusoft.HISFC.BizLogic.Pharmacy.DrugStore drugManager = new Neusoft.HISFC.BizLogic.Pharmacy.DrugStore();
            Neusoft.HISFC.Models.Pharmacy.DrugRecipe  info        = drugManager.GetDrugRecipe(this.operDept.ID, this.neuSpread1_Sheet1.Cells[this.neuSpread1_Sheet1.ActiveRow.Index, 0].Text);
            string detailState = "0";

            if (info.RecipeState == "0" || info.RecipeState == "1")
            {
                detailState = "0";
            }
            else if (info.RecipeState == "2")
            {
                detailState = "1";
            }
            else
            {
                detailState = "2";
            }

            ArrayList alInfo = new ArrayList();

            alInfo = this.itemManager.QueryApplyOutListForClinic(this.operDept.ID, "M1", detailState, info.RecipeNO);
            if (alInfo == null)
            {
                MessageBox.Show(itemManager.Err);
                return(-1);
            }

            //{9FA792B0-A60F-48d8-A3F5-1C52450C44A5}  获取打印类型
            Neusoft.HISFC.Models.Pharmacy.DrugTerminal terminal = drugManager.GetDrugTerminal(info.DrugTerminal.ID);
            if (terminal == null)
            {
                MessageBox.Show("获取配药终端信息发生错误" + drugManager.Err);
                return(-1);
            }
            if (terminal.TerimalPrintType == Neusoft.HISFC.Models.Pharmacy.EnumClinicPrintType.标签)
            {
                this.isSendAllData = false;
            }
            else
            {
                this.isSendAllData = true;
            }

            if (this.factory == null)
            {
                MessageBox.Show("未设置配药台补打单据方式,无法进行打印", "", MessageBoxButtons.OK, MessageBoxIcon.Information);
                return(-1);
            }

            Neusoft.HISFC.Components.DrugStore.Function.IDrugPrint = factory.GetInstance(terminal);

            if (Neusoft.HISFC.Components.DrugStore.Function.IDrugPrint == null)
            {
                MessageBox.Show("未设置当前选择配药台的打印方式,无法进行打印", "", MessageBoxButtons.OK, MessageBoxIcon.Information);
                return(-1);
            }

            //{F1C6EB10-A23D-4249-BD0C-47329421B78B} 发药窗口号赋值
            string sendWindow = "";

            Neusoft.HISFC.Models.Pharmacy.DrugTerminal sendTerminal = drugManager.GetDrugTerminal(info.SendTerminal.ID);
            if (sendTerminal != null)
            {
                sendWindow = sendTerminal.Name;
            }
            ////{9FA792B0-A60F-48d8-A3F5-1C52450C44A5}  获取打印类型

            Print(info, alInfo, sendWindow);

            return(base.Print(sender, neuObject));
        }
Beispiel #14
0
        /// <summary>
        /// 初始化
        /// </summary>
        public virtual void Init()
        {
            Neusoft.FrameWork.WinForms.Classes.Function.ShowWaitForm(Neusoft.FrameWork.Management.Language.Msg("正在加载单据打印基础数据..."));
            Application.DoEvents();

            #region 获取常数信息 用于界面数据显示

            //获得所有频次信息
            Neusoft.HISFC.BizLogic.Manager.Frequency frequencyManagement = new Neusoft.HISFC.BizLogic.Manager.Frequency();
            ArrayList alFrequency = frequencyManagement.GetAll("Root");
            this.frequencyHelper = new Neusoft.FrameWork.Public.ObjectHelper(alFrequency);
            //获取所用用法
            Neusoft.HISFC.BizLogic.Manager.Constant c = new Neusoft.HISFC.BizLogic.Manager.Constant();
            ArrayList alUsage = c.GetList(Neusoft.HISFC.Models.Base.EnumConstant.USAGE);
            if (alUsage == null)
            {
                MessageBox.Show("获取用法列表出错!");
                return;
            }
            this.usageHelper = new Neusoft.FrameWork.Public.ObjectHelper(alUsage);

            Neusoft.HISFC.BizProcess.Integrate.Manager managerIntegrate = new Neusoft.HISFC.BizProcess.Integrate.Manager();
            //获取所有人员
            ArrayList alEmployee = managerIntegrate.QueryEmployeeAll();
            this.personHelper = new Neusoft.FrameWork.Public.ObjectHelper(alEmployee);
            //获取所有科室
            ArrayList alDept = managerIntegrate.GetDepartment();
            this.deptHelper = new Neusoft.FrameWork.Public.ObjectHelper(alDept);

            //获取所有门诊终端
            Neusoft.HISFC.BizLogic.Pharmacy.DrugStore drugStoreManager = new Neusoft.HISFC.BizLogic.Pharmacy.DrugStore();
            ArrayList alDruged = drugStoreManager.QueryDrugTerminalByDeptCode(this.OperDept.ID, "0");
            ArrayList alSend   = drugStoreManager.QueryDrugTerminalByDeptCode(this.OperDept.ID, "1");
            alDruged.AddRange(alSend);
            this.terminalHelper = new Neusoft.FrameWork.Public.ObjectHelper(alDruged);

            #endregion

            #region 获取控制参数信息 用于控制调剂参数更新方式

            Neusoft.FrameWork.Management.ExtendParam extManager = new Neusoft.FrameWork.Management.ExtendParam();
            try
            {
                Neusoft.HISFC.Models.Base.ExtendInfo deptExt = extManager.GetComExtInfo(Neusoft.HISFC.Models.Base.EnumExtendClass.DEPT, "AdjustGist", this.OperDept.ID);
                if (deptExt == null)
                {
                    MessageBox.Show(Neusoft.FrameWork.Management.Language.Msg("获取科室扩展属性内配药调剂参数失败!"));
                }

                if (deptExt.StringProperty == "1")              //发药
                {
                    this.isAdjustInDrug = false;
                }
                else
                {
                    this.isAdjustInDrug = true;                 //配药
                }
            }
            catch { }

            #endregion

            Neusoft.FrameWork.WinForms.Classes.Function.HideWaitForm();

            this.IntiControlParam();
        }