/// <summary>
        /// 药柜处理
        /// </summary>
        private void SetArkDept(ref Neusoft.FrameWork.Models.NeuObject operDept)
        {
            Neusoft.HISFC.BizLogic.Pharmacy.Constant   phaConsManager = new Neusoft.HISFC.BizLogic.Pharmacy.Constant();
            Neusoft.HISFC.Models.Pharmacy.DeptConstant deptCons       = phaConsManager.QueryDeptConstant(operDept.ID);
            if (deptCons == null)
            {
                MessageBox.Show(Language.Msg("根据科室编码获取科室常数信息发生错误") + phaConsManager.Err);
                return;
            }

            operDept.Memo = Neusoft.FrameWork.Function.NConvert.ToInt32(deptCons.IsArk).ToString();
            if (this.tvDrugMessage1.StockMarkDept == null || (this.tvDrugMessage1.StockMarkDept.ID != operDept.ID))
            {
                this.tvDrugMessage1.StockMarkDept = operDept.Clone();
            }

            if (deptCons.IsArk)         //对药柜管理科室进行以下处理
            {
                #region 药柜处理

                Neusoft.HISFC.BizProcess.Integrate.Manager managerIntegrate = new Neusoft.HISFC.BizProcess.Integrate.Manager();
                ArrayList al = managerIntegrate.LoadPhaParentByChildren(operDept.ID);
                if (al == null || al.Count == 0)
                {
                    MessageBox.Show(Language.Msg("获取科室结构信息发生错误") + managerIntegrate.Err);
                    return;
                }

                Neusoft.HISFC.Models.Base.DepartmentStat deptStat = al[0] as Neusoft.HISFC.Models.Base.DepartmentStat;
                if (deptStat.PardepCode.Substring(0, 1) == "S")     //上级节点为分类编码 不进行处理
                {
                    return;
                }
                else
                {
                    this.ucDrugDetail1.ArkDept  = operDept.Clone();
                    this.ucDrugMessage1.ArkDept = operDept.Clone();

                    //核准扣库科室为药柜所属药房
                    this.ucDrugDetail1.ApproveDept      = new Neusoft.FrameWork.Models.NeuObject();
                    this.ucDrugDetail1.ApproveDept.ID   = deptStat.PardepCode;
                    this.ucDrugDetail1.ApproveDept.Name = deptStat.PardepName;

                    this.ucDrugMessage1.ApproveDept      = new Neusoft.FrameWork.Models.NeuObject();
                    this.ucDrugMessage1.ApproveDept.ID   = deptStat.PardepCode;
                    this.ucDrugMessage1.ApproveDept.Name = deptStat.PardepName;

                    operDept.ID   = deptStat.PardepCode;
                    operDept.Name = deptStat.PardepName;
                }

                #endregion

                this.isArkDept = true;
            }
        }
        public int ShowMaterial(Neusoft.FrameWork.Models.NeuObject product)
        {
            this.fsMaterial_Sheet1.Rows.Count = 0;

            List <Neusoft.HISFC.Models.Preparation.PrescriptionBase> al = this.preparationManager.QueryPrescription(product.ID, this.itemType, Neusoft.HISFC.Models.Preparation.EnumMaterialType.Material);

            if (al == null)
            {
                MessageBox.Show(Language.Msg("获取当前选择成品的配制处方信息出错\n" + product.ID));
                return(-1);
            }
            foreach (Neusoft.HISFC.Models.Preparation.PrescriptionBase info in al)
            {
                int i = this.fsMaterial_Sheet1.Rows.Count;

                this.fsMaterial_Sheet1.Rows.Add(i, 1);

                this.fsMaterial_Sheet1.Cells[i, (int)MaterialColumnSet.ColMaterialID].Text    = info.Material.ID;
                this.fsMaterial_Sheet1.Cells[i, (int)MaterialColumnSet.ColMaterialName].Text  = info.Material.Name;
                this.fsMaterial_Sheet1.Cells[i, (int)MaterialColumnSet.ColMaterialSpecs].Text = info.Specs;
                this.fsMaterial_Sheet1.Cells[i, (int)MaterialColumnSet.ColPrice].Text         = info.Price.ToString();
                this.fsMaterial_Sheet1.Cells[i, (int)MaterialColumnSet.ColQty].Text           = info.NormativeQty.ToString();
                this.fsMaterial_Sheet1.Cells[i, (int)MaterialColumnSet.ColMemo].Text          = info.Memo;
                this.fsMaterial_Sheet1.Cells[i, (int)MaterialColumnSet.ColUnit].Text          = info.NormativeUnit;

                this.fsMaterial_Sheet1.Rows[i].Tag = info.Material;
            }

            this.operProduct = product.Clone();

            return(1);
        }
Example #3
0
        /// <summary>
        /// 获得选中项
        /// </summary>
        /// <param name="item"></param>
        /// <returns></returns>
        public int GetSelectedItem(out Neusoft.FrameWork.Models.NeuObject item)
        {
            int index = base.SelectedIndex;

            if (index < 0 || index > base.Items.Count - 1)
            {
                item = new Neusoft.FrameWork.Models.NeuObject();
                return(-1);
            }

            //获得ID
            string itemname = base.SelectedItem.ToString();
            string ID       = itemname.Substring(0, itemname.IndexOf(". ", 0));

            for (int i = 0; i < alItems.Count; i++)
            {
                Neusoft.FrameWork.Models.NeuObject obj = (Neusoft.FrameWork.Models.NeuObject)alItems[i];
                if (obj.ID == ID)
                {
                    item = obj.Clone();
                    return(1);
                }
            }
            item = new Neusoft.FrameWork.Models.NeuObject();
            return(-1);
        }
Example #4
0
        /// <summary>
        /// 入库科室、设置信息选择
        /// </summary>
        /// <param name="stockDept">库存科室</param>
        /// <param name="inTargetDept">入库目标科室</param>
        /// <param name="isNeedApply">是否需要发送申请</param>
        /// <returns>成功返回1 失败返回-1</returns>
        internal static int ChooseInputTargetData(Neusoft.FrameWork.Models.NeuObject stockDept, ref Neusoft.FrameWork.Models.NeuObject inTargetDept, out bool isNeedApply)
        {
            isNeedApply = false;

            if (alTargetDeptList == null)
            {
                Neusoft.HISFC.BizProcess.Integrate.Manager privInOutManager = new Neusoft.HISFC.BizProcess.Integrate.Manager();
                alTargetDeptList = privInOutManager.GetPrivInOutDeptList(stockDept.ID, "0320");
                if (alTargetDeptList == null)
                {
                    MessageBox.Show(Neusoft.FrameWork.Management.Language.Msg(privInOutManager.Err));
                    return(-1);
                }
            }

            ArrayList alTarget = new ArrayList();

            foreach (Neusoft.HISFC.Models.Base.PrivInOutDept privInOutDept in alTargetDeptList)
            {
                Neusoft.FrameWork.Models.NeuObject offerInfo = new Neusoft.FrameWork.Models.NeuObject();
                offerInfo.ID   = privInOutDept.Dept.ID;             //供货单位编码
                offerInfo.Name = privInOutDept.Dept.Name;           //供货单位名称
                offerInfo.Memo = privInOutDept.Memo;                //备注

                alTarget.Add(offerInfo.Clone());
            }

            alTarget.Add(inTargetDept.Clone());

            using (ucChooseData uc = new ucChooseData())
            {
                uc.ComboxLabel     = "入库目标科室";
                uc.ComboxData      = alTarget;
                uc.ComboxSelectTag = inTargetDept.ID;

                uc.CheckLabel         = "仅发送入库申请而不是直接入库";
                uc.CheckChooseChecked = isNeedApply;

                Neusoft.FrameWork.WinForms.Classes.Function.PopForm.Text = "入库信息设置";
                Neusoft.FrameWork.WinForms.Classes.Function.PopShowControl(uc);

                if (uc.Result == DialogResult.OK)
                {
                    inTargetDept.ID   = uc.ComboxSelectTag.ToString();
                    inTargetDept.Name = uc.ComboxSelectText;

                    isNeedApply = uc.CheckChooseChecked;
                }
                else
                {
                    return(-1);
                }
            }

            return(1);
        }
Example #5
0
        /// <summary>
        /// 克隆函数实现
        /// </summary>
        /// <returns></returns>
        public new DrugSpecial Clone()
        {
            DrugSpecial drugSpe = base.Clone() as DrugSpecial;

            drugSpe.speItem = speItem.Clone();

            drugSpe.item = item.Clone();

            drugSpe.oper = oper.Clone();

            return(drugSpe);
        }
        /// <summary>
        /// 克隆
        /// </summary>
        /// <returns></returns>
        public new ShiftProperty Clone()
        {
            ShiftProperty sf = base.Clone() as ShiftProperty;

            sf.reflectType = reflectType.Clone();

            sf.property = property.Clone();

            sf.oper = oper.Clone();

            return(sf);
        }
Example #7
0
        /// <summary>
        /// 初始化
        /// </summary>
        public void InitWin()
        {
            if (this.m_objOpsApp == null)
            {
                return;
            }
            //姓名
            this.txtName.Text = this.m_objOpsApp.PatientInfo.Name;
            //科室
            this.txtDept.Text = deptManager.GetDepartment(m_objOpsApp.PatientInfo.PVisit.PatientLocation.Dept.ID.ToString()).Name;
            //住院号/门诊号
            this.txtPatientNo.Text = m_objOpsApp.PatientInfo.PID.ID.ToString();
            //原手术室
            if (m_objOpsApp.OperateRoom != null)
            {
                this.txtOldOpsRoom.Tag  = m_objOpsApp.OperateRoom.ID.ToString();
                this.txtOldOpsRoom.Text = m_objOpsApp.OperateRoom.Name;
                strNewOpsRoomID         = m_objOpsApp.OperateRoom.ID.ToString();
            }
            else
            {
                this.txtOldOpsRoom.Text = Environment.GetDept(m_objOpsApp.PatientInfo.PVisit.PatientLocation.Dept.ID).Name;
                //this.txtOldOpsRoom.Text = dept.GetDeptmentById(this.var.User.Dept.ID.ToString()).Name;
                //this.txtOldOpsRoom.Tag = this.var.User.Dept.ID.ToString();
                this.txtOldOpsRoom.Tag = m_objOpsApp.PatientInfo.PVisit.PatientLocation.Dept.ID;
            }
            //手术预约时间
            if (m_objOpsApp.PreDate != DateTime.MinValue)
            {
                this.dtpPreDate.Value = m_objOpsApp.PreDate;
            }
            else
            {
                this.dtpPreDate.Value = this.m_objOpsManager.GetDateTimeFromSysDateTime();
            }
            //手术室combox列表
            this.cmbOpsRoom.Items.Clear();
            ArrayList OpsRoomAl = new ArrayList();

            OpsRoomAl = deptManager.GetDeptmentByType("1");//"1"表示手术类型的科室
            this.cmbOpsRoom.AddItems(OpsRoomAl);
            //缺省选中原手术室
            this.cmbOpsRoom.Tag = this.m_objOpsApp.OperateRoom.ID.ToString();
            //手术台类型combox列表
            ArrayList alTableType = new ArrayList();

            //neusoft.neNeusoft.HISFC.Components.Object.neuObject obj = new neusoft.neNeusoft.HISFC.Components.Object.neuObject();
            Neusoft.FrameWork.Models.NeuObject obj = new Neusoft.FrameWork.Models.NeuObject();
            obj.ID   = "1";
            obj.Name = "正台";
            alTableType.Add(obj.Clone());
            obj.ID   = "2";
            obj.Name = "加台";
            alTableType.Add(obj.Clone());
            obj.ID   = "3";
            obj.Name = "点台";
            alTableType.Add(obj.Clone());
            this.cmbTableType.AddItems((ArrayList)(alTableType.Clone()));
            //缺省选中“正台”
            cmbTableType.SelectedIndex = 0;
        }
Example #8
0
        /// <summary>
        /// 初始化
        /// </summary>
        public void Init()
        {
            string type = "All";

            if (this.Tag != null && string.IsNullOrEmpty(this.Tag.ToString()))
            {
                type = this.Tag.ToString();
            }
            string deptCode = ((Neusoft.HISFC.Models.Base.Employee) this.dbMgr.Operator).Dept.ID;
            //获取所有可用视图
            List <TreeNode> lsParentNodes = this.getObject("Local.CustomQuery.GetViewInfo", this.dbMgr.Operator.ID, type);

            this.ImageList = this.deptImageList;
            //将自定义查询按照试图分类显示
            foreach (TreeNode ParentNode in lsParentNodes)
            {
                ParentNode.ImageIndex         = 0;
                ParentNode.SelectedImageIndex = 1;

                this.Nodes.Add(ParentNode);

                Neusoft.FrameWork.Models.NeuObject obj = ParentNode.Tag as Neusoft.FrameWork.Models.NeuObject;

                List <TreeNode> lsNode = this.getObject("Local.CustomQuery.GetDefineInfo", obj.ID, dbMgr.Operator.ID, deptCode);

                TreeNode typeNode = new TreeNode();
                typeNode.Tag = obj.Clone();
                string customType = obj.Name;
                foreach (TreeNode node in lsNode)
                {
                    node.ImageIndex         = 4;
                    node.SelectedImageIndex = 5;

                    Neusoft.FrameWork.Models.NeuObject o = node.Tag as Neusoft.FrameWork.Models.NeuObject;

                    //和预定义的视图类型[说明]不同时,说明用户进行了归类
                    if (o.Name != obj.Name)
                    {
                        //用户归类可能有多个,结点按照类型排序后只要遇到不相同的就新增一个类型
                        if (o.Name != customType)
                        {
                            typeNode   = new TreeNode();
                            customType = o.Name;

                            Neusoft.FrameWork.Models.NeuObject typeObject = obj.Clone();
                            typeObject.Name = customType;//类型赋值
                            typeNode.Tag    = typeObject;

                            typeNode.Text               = o.Name;
                            typeNode.ImageIndex         = 2;
                            typeNode.SelectedImageIndex = 3;
                            ParentNode.Nodes.Add(typeNode);
                        }
                        typeNode.Nodes.Add(node);
                    }
                    else
                    {
                        ParentNode.Nodes.Add(node);
                    }
                }
            }
        }
Example #9
0
 //显示人员事件
 private void frmShowPerson_SelectedItem(Neusoft.FrameWork.Models.NeuObject sender)
 {
     curSign           = sender.Clone();   // as Neusoft.HISFC.Models.RADT.Person;
     this.txtID.Text   = curSign.ID;
     this.txtName.Text = curSign.Name;
 }