Example #1
0
        /// <summary>
        /// 根据Dr内数据对实体进行赋值
        /// </summary>
        /// <param name="dr">数据表</param>
        /// <param name="sysTime">当前时间</param>
        /// <param name="output">ref 出库实体信息</param>
        /// <returns>成功返回1 失败返回-1</returns>
        protected virtual int GetOutputFormDataRow(DataRow dr, DateTime sysTime, ref Neusoft.HISFC.Models.Material.Output output)
        {
            //出库数量
            if (this.isUseMinUnit)                      //使用最小单位
            {
                output.StoreBase.Quantity = NConvert.ToDecimal(dr["出库数量"]);
            }
            else
            {
                output.StoreBase.Quantity = NConvert.ToDecimal(dr["出库数量"]) * output.StoreBase.Item.PackQty;
            }

            output.StoreBase.Operation.Oper.ID       = this.outManager.OperInfo.ID;
            output.StoreBase.Operation.Oper.OperTime = sysTime;

            output.StoreBase.Operation.ExamOper = output.StoreBase.Operation.Oper;              //审批人
            output.StoreBase.Operation.ExamQty  = output.StoreBase.Quantity;

            output.Memo = dr["备注"].ToString();                                                                          //备注
            if (this.outManager.TargetPerson != null)                                                                   //领药人
            {
                output.GetPerson = this.outManager.TargetPerson;
            }

            output.StoreBase.PrivType   = this.outManager.PrivType.ID;             //出库类型
            output.StoreBase.SystemType = this.outManager.PrivType.Memo;           //系统类型
            output.StoreBase.StockDept  = this.outManager.DeptInfo;                //当前科室
            output.StoreBase.TargetDept = myDept.GetDeptmentById(dr["目标科室"].ToString());
            //this.outManager.TargetDept;              //目标科室

            //借方科目 暂时赋值为空
            output.Debit = "";

            return(1);
        }
        /// <summary>
        /// 修改人员
        /// </summary>
        public void ModifyEmployee()
        {
            try
            {
                if (this.tvDeptList1.SelectedNode.Level == 2)
                {
                    if (this.neuSpread1_Sheet1.RowCount <= 0)
                    {
                        return;
                    }
                    Neusoft.HISFC.Models.Base.Department dept = this.tvDeptList1.SelectedNode.Tag as Neusoft.HISFC.Models.Base.Department;
                    //获得当前结点科室ID
                    string deptId = dept.ID;
                    Neusoft.HISFC.Models.Base.Department department = departmentManager.GetDeptmentById(deptId);
                    if (department == null)
                    {
                        MessageBox.Show("选择的科室信息不存在!");
                        return;
                    }
                    //获得激活行对应的人员编码
                    string personId = this.neuSpread1_Sheet1.Cells[this.neuSpread1_Sheet1.ActiveRowIndex, 0].Text.Trim();
                    Neusoft.HISFC.Models.Base.Employee employee = personManager.GetPersonByID(personId);
                    if (employee == null)
                    {
                        MessageBox.Show("选择的人员信息不存在!");
                        return;
                    }

                    ucEmployeeInfoPanel ucEmployeeInfo = new ucEmployeeInfoPanel(employee);
                    ucEmployeeInfo.IsModify = true;
                    //{3BAA59AB-14DE-496e-B77A-E7C298D3245B}
                    ucEmployeeInfo.IsModifedlevelAndRemark = this.isModifedlevelAndRemark;
                    Neusoft.FrameWork.WinForms.Classes.Function.PopForm.Text = "修改人员信息";
                    DialogResult dia = Neusoft.FrameWork.WinForms.Classes.Function.PopShowControl(ucEmployeeInfo);
                    if (dia == DialogResult.OK)
                    {
                        //根据当前结点科室ID,获得该科室下的人员
                        LoadPersons(deptId);
                    }
                }
                else
                {
                    return;
                }
            }
            catch (Exception a)
            {
                MessageBox.Show(a.Message);
            }
        }
        /// <summary>
        /// 目标单位信息填充
        /// </summary>
        /// <param name="targetNO">目标单位编码</param>
        private int FillTargetInfo(string targetNO)
        {
            if (this.isPIDept)          //药库
            {
                Neusoft.HISFC.BizLogic.Pharmacy.Constant phaConsManager = new Neusoft.HISFC.BizLogic.Pharmacy.Constant();
                Neusoft.HISFC.Models.Pharmacy.Company    company        = phaConsManager.QueryCompanyByCompanyID(targetNO);
                if (company == null)
                {
                    MessageBox.Show(Language.Msg("无法获取该条供货单位信息"));
                    return(-1);
                }

                this.phaInManager.TargetDept      = company;
                this.phaInManager.TargetDept.Memo = "1";
            }
            else
            {
                Neusoft.HISFC.BizLogic.Manager.Department deptManager = new Neusoft.HISFC.BizLogic.Manager.Department();
                Neusoft.HISFC.Models.Base.Department      dept        = deptManager.GetDeptmentById(targetNO);
                if (dept == null)
                {
                    MessageBox.Show(Language.Msg("无法获取该条记录申请科室信息!"));
                    return(-1);
                }

                this.phaInManager.TargetDept      = dept;
                this.phaInManager.TargetDept.Memo = "0";
            }

            return(1);
        }
Example #4
0
        /// <summary>
        /// 初始化
        /// </summary>
        public void Init()
        {
            Neusoft.FrameWork.Management.DataBaseManger dataManager = new DataBaseManger();

            Neusoft.FrameWork.Models.NeuObject class2Priv = new Neusoft.FrameWork.Models.NeuObject();
            class2Priv.ID   = "0510";
            class2Priv.Name = "入库";
            this.Class2Priv = class2Priv;       //入库

            //由权限科室获取
            //this.DeptInfo = ((Neusoft.HISFC.Models.Base.Employee)dataManager.Operator).Dept;
            this.OperInfo      = dataManager.Operator;
            this.OperInfo.Memo = "in";

            Neusoft.HISFC.BizLogic.Manager.Department managerIntegrate = new Neusoft.HISFC.BizLogic.Manager.Department();
            Neusoft.HISFC.Models.Base.Department      dept             = managerIntegrate.GetDeptmentById(this.DeptInfo.ID);
            if (dept != null)
            {
                this.DeptInfo.Memo = dept.DeptType.ID.ToString();
            }

            if (this.FilePath == "")
            {
                this.FilePath = @"\Setting\PhaInSetting.xml";
            }

            if (this.SetPrivType(true) == -1)
            {
                return;
            }
            this.SetCancelVisible(false);
            this.GetInterface();
        }
Example #5
0
        private bool Check()
        {
            Neusoft.FrameWork.Models.NeuObject testPrivDept = new Neusoft.FrameWork.Models.NeuObject();
            int parma = Neusoft.HISFC.Components.Common.Classes.Function.ChoosePivDept("0501", ref testPrivDept);

            //暂时不进行权限判断

            if (parma == -1)            //无权限
            {
                MessageBox.Show("您无此窗口操作权限");
                return(false);
            }
            else if (parma == 0)       //用户选择取消
            {
                return(false);
            }
            base.OnStatusBarInfo(null, "操作科室: " + testPrivDept.Name);

            Neusoft.HISFC.BizLogic.Manager.Department deptManager = new Neusoft.HISFC.BizLogic.Manager.Department();
            Neusoft.HISFC.Models.Base.Department      deptObj     = deptManager.GetDeptmentById(testPrivDept.ID);
            if (deptObj == null || deptObj.ID == "")
            {
                testPrivDept.Memo = deptObj.DeptType.ID.ToString();
            }
            this.ucMaterialKindTree1.storagecode = testPrivDept.ID;
            this.ucMaterialKindTree1.InitTreeView();

            return(true);
        }
        private void btnOK_Click(object sender, EventArgs e)
        {
            if (this.lvGroup.SelectedItems.Count <= 0)
            {
                person.CurrentGroup = this.lvGroup.Items[0].Tag as Neusoft.FrameWork.Models.NeuObject;
            }
            else
            {
                person.CurrentGroup = this.lvGroup.SelectedItems[0].Tag as Neusoft.FrameWork.Models.NeuObject;
            }
            if (this.cmbDept.Text != "" && this.cmbDept.Tag.ToString() != "")
            {
                person.Dept.ID   = this.cmbDept.Tag.ToString();
                person.Dept.Name = this.cmbDept.Text;
                try
                {
                    Neusoft.HISFC.BizLogic.Manager.Department manager = new Neusoft.HISFC.BizLogic.Manager.Department();
                    #region {8A3560B5-9AAD-40fd-B876-3E98BB6B4386}
                    //当登录科室为病区时,病区代码就是选择的病区
                    Neusoft.HISFC.Models.Base.Department mydept = manager.GetDeptmentById(person.Dept.ID);

                    if (mydept.DeptType.ID.ToString() == "N")
                    {
                        person.Nurse.ID   = this.cmbDept.Tag.ToString();
                        person.Nurse.Name = this.cmbDept.Text;
                    }
                    else
                    {
                        System.Collections.ArrayList alNurse = manager.GetNurseStationFromDept(person.Dept);
                        if (alNurse != null && alNurse.Count > 0)
                        {
                            person.Nurse = alNurse[0] as Neusoft.FrameWork.Models.NeuObject;
                        }
                    }
                    #endregion
                }
                catch
                {
                }
            }
            foreach (Form f in Program.mainForm.MdiChildren)
            {
                f.Close();
            }
            Program.mainForm.Show();
            Program.mainForm.InitMenu();

            Program.mainForm.Text = "医院信息管理系统   -   " + Program.HosName;

            Neusoft.HISFC.Components.Manager.Classes.Function.HISMonitor();

            this.Close();
        }
Example #7
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);
            }
        }
        /// <summary>
        /// 将查询到的单据加入表格中
        /// </summary>
        /// <param name="alListInfo"></param>
        private void AddDataToSheet(ArrayList alListInfo)
        {
            Neusoft.HISFC.BizLogic.Manager.Department  deptManager      = new Neusoft.HISFC.BizLogic.Manager.Department();
            Neusoft.HISFC.BizProcess.Integrate.Manager managerIntegrate = new Neusoft.HISFC.BizProcess.Integrate.Manager();
            foreach (object obj in alListInfo)
            {
                if (this.rbtInputList.Checked)
                {
                    Neusoft.HISFC.Models.Material.Input input = obj as Neusoft.HISFC.Models.Material.Input;

                    this.neuSpread1_Sheet1.AddRows(this.neuSpread1_Sheet1.RowCount, 1);
                    this.neuSpread1_Sheet1.Cells[this.neuSpread1_Sheet1.RowCount - 1, (int)ColSheet1.ListNO].Text     = input.InListNO;
                    this.neuSpread1_Sheet1.Cells[this.neuSpread1_Sheet1.RowCount - 1, (int)ColSheet1.InvoiceNO].Text  = input.InvoiceNO;
                    this.neuSpread1_Sheet1.Cells[this.neuSpread1_Sheet1.RowCount - 1, (int)ColSheet1.OperType].Text   = input.StoreBase.Extend;
                    this.neuSpread1_Sheet1.Cells[this.neuSpread1_Sheet1.RowCount - 1, (int)ColSheet1.TargetDept].Text = input.StoreBase.TargetDept.ID;
                    this.neuSpread1_Sheet1.Cells[this.neuSpread1_Sheet1.RowCount - 1, (int)ColSheet1.OperDate].Text   = input.StoreBase.Operation.Oper.OperTime.ToString();

                    this.neuSpread1_Sheet1.Cells[this.neuSpread1_Sheet1.RowCount - 1, (int)ColSheet1.ListNO].Tag = cmbStorage.Tag.ToString();
                    this.neuSpread1_Sheet1.Rows[this.neuSpread1_Sheet1.RowCount - 1].Tag = "input";
                }
                else
                {
                    Neusoft.HISFC.Models.Material.Output output = obj as Neusoft.HISFC.Models.Material.Output;

                    this.neuSpread1_Sheet1.AddRows(this.neuSpread1_Sheet1.RowCount, 1);
                    this.neuSpread1_Sheet1.Cells[this.neuSpread1_Sheet1.RowCount - 1, (int)ColSheet1.ListNO].Text    = output.OutListNO;
                    this.neuSpread1_Sheet1.Cells[this.neuSpread1_Sheet1.RowCount - 1, (int)ColSheet1.InvoiceNO].Text = "";
                    this.neuSpread1_Sheet1.Cells[this.neuSpread1_Sheet1.RowCount - 1, (int)ColSheet1.OperType].Text  = output.StoreBase.Extend;

                    Neusoft.HISFC.Models.Base.Department dept = deptManager.GetDeptmentById(output.StoreBase.TargetDept.ID);
                    if (dept != null)
                    {
                        this.neuSpread1_Sheet1.Cells[this.neuSpread1_Sheet1.RowCount - 1, (int)ColSheet1.TargetDept].Text = dept.Name;
                    }
                    this.neuSpread1_Sheet1.Cells[this.neuSpread1_Sheet1.RowCount - 1, (int)ColSheet1.OperDate].Text = output.StoreBase.Operation.Oper.OperTime.ToString();

                    this.neuSpread1_Sheet1.Cells[this.neuSpread1_Sheet1.RowCount - 1, (int)ColSheet1.ListNO].Tag = cmbStorage.Tag.ToString();
                    this.neuSpread1_Sheet1.Rows[this.neuSpread1_Sheet1.RowCount - 1].Tag = "output";
                }
            }
        }
Example #9
0
        /// <summary>
        /// 打印函数
        /// </summary>
        /// <param name="al">打印数组</param>
        /// <param name="i">第几页</param>
        /// <param name="count">总页数</param>
        /// <param name="operCode">制单人</param>
        private void PrintStockplan(ArrayList al, int inow, int icount, string operCode)
        {
            if (al.Count <= 0)
            {
                MessageBox.Show("没有打印的数据!");
                return;
            }
            Neusoft.HISFC.BizLogic.Pharmacy.Constant    constant    = new Neusoft.HISFC.BizLogic.Pharmacy.Constant();
            Neusoft.HISFC.Models.Pharmacy.StockPlan     stockPlan   = (Neusoft.HISFC.Models.Pharmacy.StockPlan)al[0];
            Neusoft.HISFC.BizLogic.Manager.Constant     constantMgr = new Neusoft.HISFC.BizLogic.Manager.Constant();
            Neusoft.HISFC.BizLogic.Manager.Department   deptMgr     = new Neusoft.HISFC.BizLogic.Manager.Department();
            Neusoft.HISFC.BizProcess.Integrate.Pharmacy itemMgr     = new Neusoft.HISFC.BizProcess.Integrate.Pharmacy();

            string strHos   = constantMgr.GetHospitalName();
            string dosageID = string.Empty; //剂型


            if (stockPlan.State == "2")
            {
                this.lbl0.Text = strHos + "药品采购审批单";
            }
            else
            {
                this.lbl0.Text = strHos + "药品采购计划单";
                //label2.Visible = false;
            }

            #region label赋值

            if (this.IsReprint)
            {
                this.lbl0.Text = this.lbl0.Text + "(补打)";
            }

            //DateTime sysTime = this.itemMgr.GetDateTimeFromSysDateTime();
            //this.lb11.Text = "计划科室  " + inPlan.Dept+this.deptMgr.get + " 计划人  " + inPlan.PlanOper.ID;
            this.lb11.Text   = " 计划人:  " + stockPlan.Oper.Name;
            this.lb12.Text   = "计划日期:" + this.itemMgr.GetDateTimeFromSysDateTime().ToString("yyyy-MM-dd");
            this.label2.Text = "采购日期:" + stockPlan.StockOper.OperTime.ToString("yyyy-MM-dd");
            this.lb36.Text   = "第" + inow.ToString() + "页/共" + icount.ToString() + "页";
            this.label1.Text = "单据号:" + stockPlan.BillNO;
            this.label3.Text = "科室:" + deptMgr.GetDeptmentById(stockPlan.Dept.ID);

            #endregion

            #region farpoint赋值

            decimal sumNum5 = 0;
            decimal sumNum8 = 0;
            decimal sumNum9 = 0;
            this.sheetView1.RowCount = 0;

            #region {1EC17564-2FAD-4a77-97AC-4C57076888B2}
            FarPoint.Win.Spread.CellType.NumberCellType numberCellType1 = new FarPoint.Win.Spread.CellType.NumberCellType();
            numberCellType1.DecimalPlaces       = 4;
            this.sheetView1.Columns[6].CellType = numberCellType1;
            this.sheetView1.Columns[7].CellType = numberCellType1;
            this.sheetView1.Columns[8].CellType = numberCellType1;
            #endregion
            for (int i = 0; i < al.Count; i++)
            {
                this.sheetView1.AddRows(i, 1);
                Neusoft.HISFC.Models.Pharmacy.StockPlan info = al[i] as Neusoft.HISFC.Models.Pharmacy.StockPlan;


                this.sheetView1.Cells[i, 0].Text = info.Item.ID;    // info.Item.NameCollection.UserCode;//药品自定义码
                this.sheetView1.Cells[i, 1].Text = info.Item.Name;  //药品名称
                this.sheetView1.Cells[i, 2].Text = info.Item.Specs; //规格
                if (info.Item.PackQty == 0)
                {
                    info.Item.PackQty = 1;
                }

                decimal count = 0, count2 = 0, count3 = 0;
                count  = info.StockApproveQty / info.Item.PackQty;
                count2 = (info.StockApproveQty / info.Item.PackQty) * (info.Item.PriceCollection.PurchasePrice);
                count3 = (info.StockApproveQty / info.Item.PackQty) * (info.Item.PriceCollection.RetailPrice);
                this.sheetView1.Cells[i, 3].Text = info.Item.PackUnit;//单位

                // Neusoft.HISFC.BizProcess.Integrate.Pharmacy itemMgr = new Neusoft.HISFC.BizProcess.Integrate.Pharmacy();



                dosageID = ((Neusoft.HISFC.Models.Pharmacy.Item)itemMgr.GetItem(info.Item.ID)).DosageForm.ID;


                this.sheetView1.Cells[i, 4].Text = ((Neusoft.FrameWork.Models.NeuObject)constantMgr.GetConstant("DOSAGEFORM", dosageID)).Name; //info.Item.DosageForm.Name; //剂型
                this.sheetView1.Cells[i, 5].Text = (info.StockApproveQty / info.Item.PackQty).ToString();                                      //计划数量

                this.sheetView1.Cells[i, 6].Text = info.StockPrice.ToString();                                                                 //计划购入价      // info.Item.PackUnit;//
                this.sheetView1.Cells[i, 7].Text = info.Item.Price.ToString();                                                                 //参考零售价


                this.sheetView1.Cells[i, 8].Text = ((info.StockApproveQty / info.Item.PackQty) * (info.StockPrice)).ToString();                       //计划金额
                this.sheetView1.Cells[i, 9].Text = ((info.StockApproveQty / info.Item.PackQty) * (info.Item.PriceCollection.RetailPrice)).ToString(); //零售金额


                //if (info.Item.Product.Company.Name != "")
                //    this.sheetView1.Cells[i, 7].Text = info.Item.Product.Company.Name;         //供货公司;
                //else
                //    this.sheetView1.Cells[i, 7].Text = "未选择";

                if (info.Company.Name != "")
                {
                    this.sheetView1.Cells[i, 10].Text = info.Company.Name;         //供货公司;
                }
                else
                {
                    this.sheetView1.Cells[i, 10].Text = "未选择";
                }

                //if (info.Item.Product.Producer.Name != "")
                //    this.sheetView1.Cells[i, 8].Text = info.Item.Product.Producer.Name;        //生产厂家
                //else
                //    this.sheetView1.Cells[i, 8].Text = "未选择";

                sumNum5 = sumNum5 + count;
                sumNum8 = sumNum8 + count2;
                sumNum9 = sumNum9 + count3;
            }
            this.sheetView1.RowCount = al.Count + 1;
            this.sheetView1.Cells[al.Count, 0].Text = "合计";
            this.sheetView1.Cells[al.Count, 1].Text = "共" + al.Count + "行"; //行数;
            this.sheetView1.Cells[al.Count, 5].Text = sumNum5.ToString();   //购入数量合计
            this.sheetView1.Cells[al.Count, 8].Text = sumNum8.ToString();   //购入金额合计
            this.sheetView1.Cells[al.Count, 9].Text = sumNum9.ToString();   //零售金额合计

            //宽度
            //this.panel4.Width = this.Width - 3;
            this.fpSpread1.Width  = this.panel1.Width - 10;
            this.fpSpread1.Height = (int)this.sheetView1.RowHeader.Rows[0].Height +
                                    (int)(this.sheetView1.Rows[0].Height * (al.Count + 1)) + 10;

            #endregion

            #region 打印函数

            Neusoft.FrameWork.WinForms.Classes.Print p = new Neusoft.FrameWork.WinForms.Classes.Print();

            Neusoft.HISFC.Components.Common.Classes.Function.GetPageSize("PhaInplan", ref p);

            p.PrintPage(5, 0, this.panel1);

            #endregion
        }
        /// <summary>
        /// 控件初始化函数
        /// </summary>
        public void Init()
        {
            this.neuTabControl1.TabPages.Remove(this.tabPage2);
            this.neuTabControl1.TabPages.Remove(this.tabPage3);
            try
            {
                if (this.departmentStat.StatCode != "00")
                {
                    isAddDept = false;
                }
                //只有新增科室时,才可以选择科室,才可以操作是否是科室分类,才显示提示信息
                if (this.departmentStat.DeptCode == "")
                {
                    this.chbClass.Enabled = true;
                }
                else
                {
                    //修改科室时,不能修改科室分类,不能选择其他科室,不显示提示信息
                    this.chbClass.Enabled = false;
                }
                //将科室信息显示在控件中
                //节点类型:1终极科室,0科室分类。
                if (this.departmentStat.NodeKind == 1)
                {
                    this.chbClass.Checked = false;
                }
                else
                {
                    this.chbClass.Checked = true;
                }

                //获得全部正在使用的科室
                ArrayList deptList = deptMgr.GetDeptmentAll();

                //如果没有查到科室
                if (deptList == null)
                {
                    MessageBox.Show("获取科室信息失败" + deptMgr.Err);
                    return;
                }

                //查询Com_Department表 分别添加到2个ComboBox下
                this.comboDeptType.AddItems(Neusoft.HISFC.Models.Base.DepartmentTypeEnumService.List());
                this.comboDeptName.AddItems(deptList);


                //判断是虚科室还是实科室  虚科室的编码第一位是"S"
                if (this.departmentStat.DeptCode.IndexOf("S") > -1 && this.departmentStat.DeptCode.Substring(0, 1) == "S") //虚科室
                {
                    this.chbClass.Checked   = true;                                                                        //虚科室
                    this.txtDeptCode.Text   = this.departmentStat.DeptCode;
                    this.comboDeptName.Text = this.departmentStat.DeptName;
                    this.txtSpellCode.Text  = this.departmentStat.SpellCode;
                    this.txtWbCode.Text     = this.departmentStat.WBCode;
                    this.txtSortID.Text     = this.departmentStat.SortId.ToString();
                    this.txtMark.Text       = this.departmentStat.Memo;
                }
                else
                if (this.departmentStat.DeptCode == "")
                {
                    //初始化
                }
                else//实科室
                {
                    Neusoft.HISFC.Models.Base.Department objTemp = deptMgr.GetDeptmentById(this.departmentStat.DeptCode);
                    if (objTemp == null)
                    {
                        MessageBox.Show("查询科室信息失败" + deptMgr.Err);
                        return;
                    }

                    this.setInfo(objTemp);
                    this.txtMark.Text = this.departmentStat.Memo;//备注
                }

                #region 备用 维护出入库科室
                ////确定是否需要维护出入库科室 数据库表DeptStat中StatCode  03代表药..05
                //if (this.department.StatCode == "03" || this.department.StatCode == "05")
                //{
                //    //标识本统计大类需要维护出入库科室
                //    this.IsInOutDept = true;

                //    //取科室列表:全院科室Union科室结构中的自定义科室
                //    Neusoft.HISFC.BizLogic.Manager.DepartmentStatManager dept = new Neusoft.HISFC.BizLogic.Manager.DepartmentStatManager();
                //    this.alChooseDept = dept.LoadChildrenUnionDept(this.department.StatCode, "AAAA");
                //    if (this.alChooseDept == null)
                //    {
                //        MessageBox.Show("取科室列表错误:" + dept.Err, "提示");
                //        return;
                //    }
                //    //objHelper用于查找科室类型
                //    objHelper.ArrayObject = this.alChooseDept;

                //    //显示入库科室
                //    this.ShowInOutDept(this.neuSpread1_Sheet1, this.department.StatCode + "10");
                //    //if(this.fpSpread1_Sheet1.RowCount == 0)	this.btnDeleteInput.Enabled = false;

                //    //显示出库科室
                //    this.ShowInOutDept(this.neuSpread2_Sheet1, this.department.StatCode + "20");
                //    //if(this.fpSpread2_Sheet1.RowCount == 0)	this.btnDeleteOutput.Enabled = false;
                //}
                //else
                //{
                //    this.neuTabControl1.TabPages.Remove(this.tabPage2);
                //    this.neuTabControl1.TabPages.Remove(this.tabPage3);
                //}
                #endregion
            }
            catch (Exception a) { MessageBox.Show(a.Message); }
        }
Example #11
0
        private bool SetFeeInfo(string invoiceNO)
        {
            ArrayList alFee = outPatientManager.QueryFeeItemListsByInvoiceNO(invoiceNO);

            if (alFee == null)
            {
                MessageBox.Show("查询费用明细失败!" + outPatientManager.Err);
                return(false);
            }
            if (alFee.Count == 0)
            {
                MessageBox.Show("该发票号不存在,请重新输入!");
                this.txtInvoiceNO.Focus();
                this.txtInvoiceNO.SelectAll();
                return(false);
            }
            int     count = 0;
            decimal cost  = 0;

            Neusoft.HISFC.Models.Fee.Outpatient.FeeItemList tempf = null;
            foreach (Neusoft.HISFC.Models.Fee.Outpatient.FeeItemList f in alFee)
            {
                string  priceUnit = string.Empty;
                decimal price = 0m, qty = 0m;
                if (f.PayType == PayTypes.Balanced && f.CancelType == CancelTypes.Valid)
                {
                    price     = f.Item.Price;
                    priceUnit = f.Item.PriceUnit;
                    qty       = f.Item.Qty;
                    if (f.Item.ItemType == EnumItemType.Drug)
                    {
                        Neusoft.HISFC.Models.Pharmacy.Item item = phaManager.GetItem(f.Item.ID);
                        if (item == null)
                        {
                            MessageBox.Show("查询药品信息失败!" + phaManager.Err);
                            return(false);
                        }
                        if (item.SplitType == "0")
                        {
                            if (f.Item.PriceUnit != item.PackUnit)
                            {
                                price = Neusoft.FrameWork.Public.String.FormatNumber(f.Item.Price / f.Item.PackQty, 2);
                            }
                            else
                            {
                                qty       = qty / item.PackQty;
                                priceUnit = item.PackUnit;
                            }
                        }
                        else
                        {
                            qty       = Neusoft.FrameWork.Public.String.FormatNumber(f.Item.Qty / f.Item.PackQty, 2);
                            priceUnit = item.PackUnit;
                        }
                    }

                    count = this.neuSpread1_Sheet1.Rows.Count;
                    this.neuSpread1_Sheet1.Rows.Add(count, 1);
                    this.neuSpread1_Sheet1.Cells[count, 0].Text = f.Item.ID;
                    this.neuSpread1_Sheet1.Cells[count, 1].Text = f.Item.Name;
                    this.neuSpread1_Sheet1.Cells[count, 2].Text = f.Item.Specs;
                    this.neuSpread1_Sheet1.Cells[count, 3].Text = Neusoft.FrameWork.Public.String.FormatNumber(price, 2).ToString();
                    this.neuSpread1_Sheet1.Cells[count, 4].Text = priceUnit;
                    this.neuSpread1_Sheet1.Cells[count, 5].Text = Neusoft.FrameWork.Public.String.FormatNumber(qty, 2).ToString();
                    this.neuSpread1_Sheet1.Cells[count, 6].Text = (f.FT.OwnCost + f.FT.PubCost + f.FT.PayCost).ToString();
                    cost += f.FT.OwnCost + f.FT.PubCost + f.FT.PayCost;
                    if (tempf == null)
                    {
                        tempf = f;
                    }
                }
            }
            count = this.neuSpread1_Sheet1.Rows.Count;
            this.neuSpread1_Sheet1.Rows.Add(count, 1);
            this.neuSpread1_Sheet1.Cells[count, 0].Text = "合计";
            this.neuSpread1_Sheet1.Cells[count, 6].Text = cost.ToString();

            FrameWork.Models.NeuObject obj = perManager.GetPersonByID(tempf.RecipeOper.ID);
            if (obj != null)
            {
                lblDoct.Text = obj.Name;
            }

            obj = deptManager.GetDeptmentById(tempf.RecipeOper.Dept.ID);
            if (obj != null)
            {
                lblDept.Text = obj.Name;
            }

            return(true);
        }
Example #12
0
        /// <summary>
        ///
        /// </summary>
        /// <param name="userid"></param>
        /// <param name="currentGroup"></param>
        /// <param name="loginDept"></param>
        public static void SetLoginUser(User currentUser, Neusoft.FrameWork.Models.NeuObject currentGroup, string loginDeptId)
        {
            Neusoft.HISFC.Models.Base.Employee         user        = new Neusoft.HISFC.Models.Base.Employee();
            Neusoft.HISFC.BizLogic.Manager.Department  manager     = new Neusoft.HISFC.BizLogic.Manager.Department();
            Neusoft.HISFC.BizLogic.Manager.UserManager userManager = new Neusoft.HISFC.BizLogic.Manager.UserManager();

            //Neusoft.FrameWork.Public.ObjectHelper helper = new Neusoft.FrameWork.Public.ObjectHelper(manager.QueryValidDept());
            Neusoft.HISFC.Models.Base.Department dept = null;
            if (currentUser.Id.Trim().ToLower() == "admin")
            {
                user.ID        = "admin";
                user.Name      = "manager";
                user.IsManager = true;
            }
            else
            {
                user = userManager.GetPerson(currentUser.PersonId);
                if (user == null)
                {
                    MessageBox.Show("系统中已经没有该用户!");
                    Application.Exit();
                    return;
                }
                if (user.ValidState == Neusoft.HISFC.Models.Base.EnumValidState.Invalid)
                {
                    MessageBox.Show("该用户已经停用!");
                    Application.Exit();
                    return;
                }
                if (user.ValidState == Neusoft.HISFC.Models.Base.EnumValidState.Ignore)
                {
                    MessageBox.Show("该用户已经作废!");
                    Application.Exit();
                    return;
                }
                dept = manager.GetDeptmentById(loginDeptId);
                if (dept == null)
                {
                    MessageBox.Show("获得登录科室信息失败!");
                    Application.Exit();
                    return;
                }

                //if(manager.GetNurseStationFromDept(user.Dept).Count>0)
                //user.Nurse = manager.GetNurseStationFromDept(user.Dept)[0] as Neusoft.FrameWork.Models.NeuObject;
            }
            //user.IsManager = true;

            user.CurrentGroup = currentGroup;

            if (dept != null)
            {
                user.Dept = dept;
                if (dept.DeptType.ID.ToString() == "N")
                {
                    user.Nurse = dept;
                }
                else
                {
                    System.Collections.ArrayList al = manager.GetNurseStationFromDept(dept);
                    if (al != null && al.Count > 0)
                    {
                        user.Nurse = al[0] as Neusoft.FrameWork.Models.NeuObject;
                    }
                    else
                    {
                        user.Nurse = dept;
                    }
                }
            }

            //user.Dept = helper.GetObjectFromID(loginDeptId);
            //if (user.Dept == null)
            //    user.Dept = new Neusoft.FrameWork.Models.NeuObject();

            user.User01 = currentUser.Account;
            ////{D515E09B-E299-47e0-BF19-EDFDB6E4C775}
            //user.Password =Neusoft.HisDecrypt.Decrypt( currentUser.Password);
            user.Password = Neusoft.HisCrypto.DESCryptoService.DESDecrypt(currentUser.Password, Neusoft.FrameWork.Management.Connection.DESKey);
            Neusoft.FrameWork.Management.Connection.Operator = user;

            // #region 电子申请单初始化 addby zhangkj {A93EE0CA-F50E-4142-8477-761E257AC974}
            //// Neusoft.ApplyInterface.HisInterface applyInter = new Neusoft.ApplyInterface.HisInterface();
            // List<Neusoft.FrameWork.Models.NeuObject> parmsApply = new List<Neusoft.FrameWork.Models.NeuObject>();
            // NeuObject obj1 = new NeuObject();
            // obj1.ID = user.ID;
            // obj1.Name = user.Name;
            // parmsApply.Add(obj1);
            // parmsApply.Add(user.Dept);
            // parmsApply.Add(user.CurrentGroup);
            // //applyInter.InitHis50(parmsApply);
            // #endregion
            Neusoft.HISFC.Components.Manager.Classes.Function.HISMonitor();
        }