예제 #1
0
        /// <summary>
        /// 取消作废
        /// </summary>
        /// <returns>成功返回1 失败返回-1</returns>
        protected int UnCancelApply()
        {
            //Neusoft.FrameWork.Management.Transaction t = new Transaction(Neusoft.FrameWork.Management.Connection.Instance);
            //t.BeginTransaction();
            Neusoft.FrameWork.Management.PublicTrans.BeginTransaction();
            Neusoft.HISFC.BizLogic.Pharmacy.Item itemManager = new Neusoft.HISFC.BizLogic.Pharmacy.Item();
            //itemManager.SetTrans(t.Trans);

            //{E8849BB0-3C69-4d60-8771-C201E445BD5D}  预扣库存的判断处理
            Neusoft.HISFC.BizProcess.Integrate.Common.ControlParam ctrlIntegrate = new Neusoft.HISFC.BizProcess.Integrate.Common.ControlParam();
            bool isPreOut = ctrlIntegrate.GetControlParam <bool>(Neusoft.HISFC.BizProcess.Integrate.PharmacyConstant.InDrug_Pre_Out, false, true);

            string applyID = this.fpCancelApply_Sheet1.Cells[this.fpCancelApply_Sheet1.ActiveRowIndex, (int)ColumnSet.ColID].Text;

            Neusoft.HISFC.Models.Pharmacy.ApplyOut applyOut = this.hsApply[applyID] as Neusoft.HISFC.Models.Pharmacy.ApplyOut;

            //取消作废摆药申请
            //{E8849BB0-3C69-4d60-8771-C201E445BD5D}  传入参数调整
            if (itemManager.UndoCancelApplyOutByID(applyOut.ID, isPreOut) == -1)
            {
                Neusoft.FrameWork.Management.PublicTrans.RollBack();
                MessageBox.Show(Language.Msg("取消作废摆药申请失败"));
                return(-1);
            }

            //取消作废医嘱执行档

            Neusoft.FrameWork.Management.PublicTrans.Commit();

            MessageBox.Show(Language.Msg("取消作废申请成功"));

            this.AddRemoveCancelApply(false);

            return(1);
        }
예제 #2
0
        /// <summary>
        /// 初始化
        /// </summary>
        private void Init()
        {
            Neusoft.HISFC.BizLogic.Pharmacy.Item      itemManager = new Neusoft.HISFC.BizLogic.Pharmacy.Item();
            List <Neusoft.HISFC.Models.Pharmacy.Item> itemList    = itemManager.QueryItemList(true);

            if (itemList == null)
            {
                MessageBox.Show(Language.Msg("基础数据初始化 加载药品列表发生错误") + itemManager.Err);
                return;
            }

            foreach (Neusoft.HISFC.Models.Pharmacy.Item item in itemList)
            {
                item.Memo = item.Specs;
            }

            this.cmbDrug.AddItems(new ArrayList(itemList.ToArray()));

            itemList.Clear();
            itemList = null;

            DateTime sysTime = itemManager.GetDateTimeFromSysDateTime();

            this.dtEnd.Value   = sysTime.AddHours(1);
            this.dtBegin.Value = sysTime.AddDays(-7);
        }
예제 #3
0
        public void AddBackFeeItem(int iIndex, Neusoft.HISFC.Models.Fee.Outpatient.FeeItemList infoItem)
        {
            //this.Clear();
            Neusoft.HISFC.BizLogic.Pharmacy.Item con  = new Neusoft.HISFC.BizLogic.Pharmacy.Item();
            Neusoft.HISFC.Models.Pharmacy.Item   item = con.GetItem(infoItem.Item.ID);
            this.GetRecipeLabelItem(infoItem.FeeOper.Dept.ID, infoItem.Item.ID, ref item);
            //设置患者信息显示、发药信息
            this.SetPatiAndSendInfo(infoItem);
            if (infoItem.Item.Qty < 0)
            {
                this.neuLabel1.Text = "无锡市妇幼保健院退药清单";
            }
            //退改药标志
            this.fpSpread1_Sheet1.AddRows(iIndex * 2, 2);
            this.fpSpread1_Sheet1.Rows[this.fpSpread1_Sheet1.Rows.Count - 1].Font     = new System.Drawing.Font("宋体", 9.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
            this.fpSpread1_Sheet1.Cells[this.fpSpread1_Sheet1.Rows.Count - 2, 0].Text = item.NameCollection.RegularName;
            this.fpSpread1_Sheet1.Cells[this.fpSpread1_Sheet1.Rows.Count - 1, 0].Text = "     [" + item.Name + "]";
            this.fpSpread1_Sheet1.Cells[this.fpSpread1_Sheet1.Rows.Count - 2, 1].Text = item.Specs;
            this.fpSpread1_Sheet1.Cells[this.fpSpread1_Sheet1.Rows.Count - 1, 1].Text = " ";
            this.fpSpread1_Sheet1.Cells[this.fpSpread1_Sheet1.Rows.Count - 2, 2].Text = infoItem.Item.Qty + infoItem.Item.PriceUnit;

            this.fpSpread1_Sheet1.Cells[this.fpSpread1_Sheet1.Rows.Count - 2, 3].Text = " ";

            this.fpSpread1_Sheet1.Cells[this.fpSpread1_Sheet1.Rows.Count - 2, 4].Text = infoItem.Item.Price.ToString();
            this.fpSpread1_Sheet1.Cells[this.fpSpread1_Sheet1.Rows.Count - 2, 5].Text = "80%";
            TotCost += infoItem.Item.Qty * infoItem.Item.Price;
            this.lblTotCost.Text = TotCost.ToString();
        }
예제 #4
0
        /// <summary>
        /// 申请明细信息加载
        /// </summary>
        /// <returns></returns>
        protected int QueryApplyDetail(int rowIndex)
        {
            Neusoft.FrameWork.Models.NeuObject info = this.fsApplyData_List.Rows[rowIndex].Tag as Neusoft.FrameWork.Models.NeuObject;
            string listNO = this.fsApplyData_List.Cells[rowIndex, 1].Text;

            Neusoft.HISFC.BizLogic.Pharmacy.Item itemManager = new Neusoft.HISFC.BizLogic.Pharmacy.Item();
            ArrayList alDetail = itemManager.QueryApplyOutInfoByListCode(info.Memo, listNO, "0");

            if (alDetail == null)
            {
                System.Windows.Forms.MessageBox.Show(Language.Msg("未正确获取内部入库申请信息" + itemManager.Err));
                return(-1);
            }

            this.fsApplyData_Detail.Rows.Count = 0;
            foreach (Neusoft.HISFC.Models.Pharmacy.ApplyOut applyOut in alDetail)
            {
                this.fsApplyData_Detail.Rows.Add(0, 1);
                this.fsApplyData_Detail.Cells[0, 0].Text = applyOut.Item.Name;
                this.fsApplyData_Detail.Cells[0, 1].Text = applyOut.Item.Specs;
                this.fsApplyData_Detail.Cells[0, 2].Text = applyOut.Operation.ApplyQty.ToString();
                this.fsApplyData_Detail.Cells[0, 3].Text = applyOut.Operation.ApproveQty.ToString();
                this.fsApplyData_Detail.Cells[0, 4].Text = applyOut.Item.MinUnit;
            }

            return(1);
        }
예제 #5
0
        public ucDrugStoreQuery(string drugCode) : this()
        {
            this.neuSpread1_Sheet1.Rows.Count = 0;

            Neusoft.HISFC.BizLogic.Pharmacy.Item itemManager = new Neusoft.HISFC.BizLogic.Pharmacy.Item();

            ArrayList alStorage = itemManager.QueryStoreDeptList(drugCode);

            if (alStorage == null)
            {
                MessageBox.Show(Neusoft.FrameWork.Management.Language.Msg("根据药品编码检索库存信息失败"));
                return;
            }

            foreach (Neusoft.HISFC.Models.Pharmacy.Storage storage in alStorage)
            {
                this.neuSpread1_Sheet1.Rows.Add(0, 1);

                this.neuSpread1_Sheet1.Cells[0, 0].Text = storage.StockDept.Name;
                this.neuSpread1_Sheet1.Cells[0, 1].Text = storage.Item.Name;
                this.neuSpread1_Sheet1.Cells[0, 2].Text = storage.Item.Specs;
                this.neuSpread1_Sheet1.Cells[0, 3].Text = storage.BatchNO;
                this.neuSpread1_Sheet1.Cells[0, 4].Text = storage.Item.Product.Producer.ID;
                this.neuSpread1_Sheet1.Cells[0, 5].Text = storage.StoreQty.ToString("N");
                this.neuSpread1_Sheet1.Cells[0, 6].Text = storage.Item.MinUnit;
            }
        }
        private void neuSpread1_CellClick(object sender, FarPoint.Win.Spread.CellClickEventArgs e)
        {
            string strCode = this.fpDrugList.Cells[e.Row, 0].Text;

            Neusoft.HISFC.BizLogic.Pharmacy.Item Pitem = new Neusoft.HISFC.BizLogic.Pharmacy.Item();
            Neusoft.HISFC.Models.Pharmacy.Item   al    = new Neusoft.HISFC.Models.Pharmacy.Item();
            al = Pitem.GetItem(strCode);
            this.neutext.Text = al.Product.Manual;
        }
예제 #7
0
        /// <summary>
        /// 初始化基本数据
        /// </summary>
        private void InitConstant( )
        {
            //获取药品简单信息列表
            Neusoft.HISFC.BizLogic.Pharmacy.Item item = new Neusoft.HISFC.BizLogic.Pharmacy.Item( );

            List <Neusoft.HISFC.Models.Pharmacy.Item> alDrug = item.QueryItemAvailableList( );

            if (alDrug == null)
            {
                MessageBox.Show(item.Err);
                return;
            }
            else //转换成ArrayList
            {
                this.drugItemList = new ArrayList(alDrug.ToArray( ));
            }

            //获取科室信息列表
            this.deptList = manager.GetDepartment(Neusoft.HISFC.Models.Base.EnumDepartmentType.C);
            if (deptList == null)
            {
                MessageBox.Show(manager.Err);
                return;
            }

            //获取结算类别
            //this.feeItemList = manager.GetConstantList( Neusoft.HISFC.Models.Base.EnumConstant.PACTUNIT );
            Neusoft.HISFC.BizProcess.Integrate.Fee feeIntegrate = new Neusoft.HISFC.BizProcess.Integrate.Fee();
            this.feeItemList = feeIntegrate.QueryPactUnitAll();
            if (feeItemList == null)
            {
                MessageBox.Show(feeIntegrate.Err);
                return;
            }

            //获取人员列表
            ArrayList al = manager.QueryEmployeeAll( );

            if (al == null)
            {
                MessageBox.Show(manager.Err);
                return;
            }
            this.personHelper.ArrayObject = al;

            //获取挂号级别(暂时屏蔽)
            //Neusoft.HISFC.BizLogic.Registration.RegLevel regLevelManager = new Neusoft.HISFC.BizLogic.Registration.RegLevel( );
            //this.regLevelList = regLevelManager.Query( );
            //if( this.regLevelList == null )
            //{
            //    MessageBox.Show( "获取挂号级别出错" + regLevelManager.Err );
            //    return -1;
            //}

            return;
        }
예제 #8
0
        /// <summary>
        /// 入库计划单据列表
        /// </summary>
        /// <param name="privDept">权限科室</param>
        /// <param name="planState">计划状态</param>
        public void ShowInPlanList(Neusoft.FrameWork.Models.NeuObject privDept, string planState)
        {
            this.Nodes.Clear();

            Neusoft.HISFC.BizLogic.Pharmacy.Item itemManager = new Neusoft.HISFC.BizLogic.Pharmacy.Item();

            ArrayList alList = itemManager.QueryInPLanList(privDept.ID, "0");

            if (alList == null)
            {
                System.Windows.Forms.MessageBox.Show(Neusoft.FrameWork.Management.Language.Msg("获取入库计划单列表发生错误" + itemManager.Err));
                return;
            }

            if (alList.Count == 0)
            {
                this.Nodes.Add(new System.Windows.Forms.TreeNode("没有入库计划单", 0, 0));
            }
            else
            {
                System.Windows.Forms.TreeNode parentNode = new System.Windows.Forms.TreeNode("入库计划单列表", 0, 0);
                this.Nodes.Add(parentNode);

                System.Windows.Forms.TreeNode node;
                string temp = "";
                foreach (Neusoft.FrameWork.Models.NeuObject info in alList)
                {
                    node = new System.Windows.Forms.TreeNode();

                    if (planState == "0")
                    {
                        node.Text = info.ID + "  【计划单】";
                    }
                    else
                    {
                        node.Text = info.ID + "  【采购单】";
                    }

                    node.ImageIndex         = 2;
                    node.SelectedImageIndex = 4;

                    info.Memo = planState;

                    node.Tag = info;

                    if (temp != info.ID)
                    {
                        parentNode.Nodes.Add(node);
                    }

                    temp = info.ID;
                }
                this.Nodes[0].ExpandAll();
                this.SelectedNode = this.Nodes[0];
            }
        }
예제 #9
0
        private void Query()
        {
            ArrayList al = new ArrayList();

            string state = "1";

            switch (this.cmbState.Text)
            {
            case "申请":
                state = "0";
                break;

            case "审批":
                state = "1";
                break;

            case "核准":
                state = "2";
                break;
            }

            Neusoft.HISFC.BizLogic.Pharmacy.Item itemManager = new Neusoft.HISFC.BizLogic.Pharmacy.Item();
            if (this.noType == "0")
            {
                al = itemManager.QueryInputInfoByInvoice(this.deptInfo.ID, this.txtNO.Text, state);
                if (al == null)
                {
                    MessageBox.Show("根据发票号获取入库信息发生错误");
                    return;
                }
            }
            else
            {
                al = itemManager.QueryInputInfoByListID(this.deptInfo.ID, this.txtNO.Text, "AAAA", state);
                if (al == null)
                {
                    MessageBox.Show("根据单据号获取入库信息发生错误");
                    return;
                }
            }

            this.neuSpread1_Sheet1.Rows.Count = 0;

            foreach (Neusoft.HISFC.Models.Pharmacy.Input info in al)
            {
                this.neuSpread1_Sheet1.Rows.Add(0, 1);
                this.neuSpread1_Sheet1.Cells[0, 0].Value = true;
                this.neuSpread1_Sheet1.Cells[0, 1].Text  = info.InListNO;
                this.neuSpread1_Sheet1.Cells[0, 2].Text  = info.InvoiceNO;
                this.neuSpread1_Sheet1.Cells[0, 3].Text  = this.companyHerlper.GetName(info.Company.ID);
                this.neuSpread1_Sheet1.Cells[0, 4].Text  = info.Item.Name + "【" + info.Item.Specs + "】";
                this.neuSpread1_Sheet1.Cells[0, 5].Text  = (info.Quantity / info.Item.PackQty).ToString("N");
                this.neuSpread1_Sheet1.Cells[0, 6].Text  = info.Item.PackUnit;
                this.neuSpread1_Sheet1.Rows[0].Tag       = info;
            }
        }
        public int GetItemExtendInfo(string ItemID, ref string ExtendInfoTxt, ref System.Collections.ArrayList AlExtendInfo)
        {
            string    txtReturn = string.Empty;
            ArrayList al        = new ArrayList();

            Neusoft.HISFC.BizLogic.Fee.Item          itemMgr      = new Neusoft.HISFC.BizLogic.Fee.Item();
            Neusoft.HISFC.BizLogic.Fee.UndrugPackAge undrugPkgMgr = new Neusoft.HISFC.BizLogic.Fee.UndrugPackAge();
            Neusoft.HISFC.BizLogic.Pharmacy.Item     phaMgr       = new Neusoft.HISFC.BizLogic.Pharmacy.Item();
            //{A79FEAFD-BD92-4bff-A74B-A41055D8D15F}
            Neusoft.HISFC.BizLogic.Fee.Interface feeInterface = new Neusoft.HISFC.BizLogic.Fee.Interface();
            if (this.itemType == Neusoft.HISFC.Models.Base.EnumItemType.Drug)
            {
                Neusoft.HISFC.Models.Pharmacy.Item drug = null;
                #region addby xuewj 2010-9-15 {A79FEAFD-BD92-4bff-A74B-A41055D8D15F}
                drug = phaMgr.GetItem(ItemID);
                #region addby xuewj 2010-10-1 {EA10BA8E-CBF4-4348-8BCE-9AD0D193CAE1}
                string rtnindication = feeInterface.ShowItemIndicationByPactAndItemCode(this.pactInfo.ID, ItemID);
                #endregion
                string baseDrugInfo = drug.ExtendData2;
                string rtn          = feeInterface.ShowItemGradeByPactAndItemCode(this.pactInfo.ID, ItemID);
                txtReturn = "药品编码:" + drug.ID + "\r\n" + "药品名称:" + drug.Name + "\r\n" + "自负比例:" + rtn + "\r\n" +
                            "国家基本药物编码:" + baseDrugInfo + "\r\n" +
                            "适应症:" + rtnindication + "\r\n" + "使用限制等级:" + "" + "\r\n" +//{EA10BA8E-CBF4-4348-8BCE-9AD0D193CAE1}
                            "说明书:" + drug.Product.Manual + "\r\n";
                #endregion
            }

            if (this.itemType == Neusoft.HISFC.Models.Base.EnumItemType.UnDrug)
            {
                Neusoft.HISFC.Models.Fee.Item.Undrug undrug = null;

                undrug = itemMgr.GetValidItemByUndrugCode(ItemID);

                #region {A79FEAFD-BD92-4bff-A74B-A41055D8D15F}
                //if (undrug != null && undrug.UnitFlag == "1")
                //{
                //    al = undrugPkgMgr.QueryUndrugPackagesBypackageCode(undrug.ID);
                //}
                if (undrug != null)
                {
                    #region addby xuewj 2010-10-1 {EA10BA8E-CBF4-4348-8BCE-9AD0D193CAE1}
                    string rtnindication = feeInterface.ShowItemIndicationByPactAndItemCode(this.pactInfo.ID, ItemID);
                    #endregion
                    string rtn = feeInterface.ShowItemGradeByPactAndItemCode(this.pactInfo.ID, ItemID);
                    txtReturn = "非药品编码:" + undrug.ID.Trim() + "  " + "非药品名称:" + undrug.Name.Trim() + "  " + "自负比例:" + rtn + "  "
                                + "适应症:" + rtnindication.Trim();
                }
                #endregion
            }

            ExtendInfoTxt = txtReturn;
            AlExtendInfo  = al;

            return(1);
        }
예제 #11
0
        /// <summary>
        /// ³õʼ»¯
        /// </summary>
        private void Init()
        {
            Neusoft.HISFC.BizLogic.Pharmacy.Item      itemManager = new Neusoft.HISFC.BizLogic.Pharmacy.Item();
            List <Neusoft.HISFC.Models.Pharmacy.Item> itemList    = itemManager.QueryItemList(true);

            //this.cmbDrug.AddItems(new ArrayList(itemList.ToArray()));


            Neusoft.HISFC.BizLogic.Manager.Department deptManager = new Neusoft.HISFC.BizLogic.Manager.Department();
            ArrayList alDept = deptManager.GetDeptmentAll();

            this.deptHelper = new Neusoft.FrameWork.Public.ObjectHelper(alDept);

            #region ¼ÓÔØSql

            this.sql1 = @"
select s.trade_name Ò©Æ·Ãû³Æ,s.specs ¹æ¸ñ, 
        s.pack_unit µ¥Î»,
       s.spell_code Æ´ÒôÂë,s.wb_code Îå±ÊÂë,s.custom_code ×Ô¶¨ÒåÂë,
     s.DRUG_CODE Ò©Æ·±àÂë, s.valid_state Í£ÓÃ
from  pha_com_baseinfo s
where  s.VALID_STATE = '1'";

//            this.sql1 = @"
//select s.trade_name Ò©Æ·Ãû³Æ,s.specs ¹æ¸ñ,t.drug_dept_code ¿â´æ¿ÆÊÒ,
//       round(t.store_sum / t.pack_qty,2) ¿â´æÁ¿,s.pack_unit µ¥Î»,
//       s.spell_code Æ´ÒôÂë,s.wb_code Îå±ÊÂë,s.custom_code ×Ô¶¨ÒåÂë,
//	   t.drug_code Ò©Æ·±àÂë,t.drug_dept_code ¿â´æ±àÂë,t.valid_state Í£ÓÃ
//from   pha_com_stockinfo t,pha_com_baseinfo s
//where  t.drug_code = s.drug_code";

//            this.sql2 = @"
//select s.trade_name Ò©Æ·Ãû³Æ,s.specs ¹æ¸ñ,t.drug_dept_code ¿â´æ¿ÆÊÒ,
//       round(t.store_sum / t.pack_qty,2) ¿â´æÁ¿,s.pack_unit µ¥Î»,
//       s.spell_code Æ´ÒôÂë,s.wb_code Îå±ÊÂë,s.custom_code ×Ô¶¨ÒåÂë,
//	   t.drug_code Ò©Æ·±àÂë,t.drug_dept_code ¿â´æ±àÂë,t.valid_state Í£ÓÃ
//from   pha_com_stockinfo t,pha_com_baseinfo s
//where  t.drug_code = '{0}'
//and    t.drug_code = s.drug_code";

//            this.sql3 = @"select t.group_code Åú´Î,t.batch_no ÅúºÅ,s.trade_name Ò©Æ·Ãû³Æ,s.specs ¹æ¸ñ,
//       round(t.store_sum / t.pack_qty,2) ¿â´æÁ¿,s.pack_unit µ¥Î»,
//       s.spell_code Æ´ÒôÂë,s.wb_code Îå±ÊÂë,s.custom_code ×Ô¶¨ÒåÂë,
//       t.drug_code Ò©Æ·±àÂë,t.drug_dept_code ¿â´æ±àÂë
//from   pha_com_storage t,pha_com_baseinfo s
//where  t.drug_code = '{0}'
//and    t.drug_dept_code = '{1}'
//and    t.drug_code = s.drug_code
//";

            #endregion

            this.neuSpread1_Sheet1.DefaultStyle.Locked = true;
            this.neuSpread1_Sheet2.DefaultStyle.Locked = true;
        }
예제 #12
0
        /// <summary>
        /// 初始化  外部调用初始化
        /// </summary>
        /// <returns>成功返回1 发生错误返回-1</returns>
        public int Init()
        {
            Neusoft.HISFC.BizLogic.Manager.Department deptMgr = new Neusoft.HISFC.BizLogic.Manager.Department();
            ArrayList al = deptMgr.GetDeptmentAll();

            if (al == null)
            {
                MessageBox.Show(Language.Msg("获取药房列表发生错误" + deptMgr.Err));
                return(-1);
            }
            ArrayList alDept = new ArrayList();

            foreach (Neusoft.HISFC.Models.Base.Department info in al)
            {
                if (info.DeptType.ID.ToString() == "P" || info.DeptType.ID.ToString() == "PI")
                {
                    alDept.Add(info);
                }
            }

            Neusoft.FrameWork.Models.NeuObject deptAll = new Neusoft.FrameWork.Models.NeuObject();
            deptAll.ID   = "AAAA";
            deptAll.Name = "全部";
            alDept.Insert(0, deptAll);

            this.cmbDept.AddItems(alDept);
            this.deptHelper = new Neusoft.FrameWork.Public.ObjectHelper(alDept);

            Neusoft.HISFC.BizLogic.Pharmacy.Item      itemMgr  = new Neusoft.HISFC.BizLogic.Pharmacy.Item();
            List <Neusoft.HISFC.Models.Pharmacy.Item> listDrug = itemMgr.QueryItemAvailableList(true);

            if (listDrug == null)
            {
                MessageBox.Show(Language.Msg("获取药品列表发生错误" + itemMgr.Err));
                return(-1);
            }
            ArrayList alDrug = new ArrayList();

            Neusoft.FrameWork.Models.NeuObject drugInfo = new Neusoft.FrameWork.Models.NeuObject();
            foreach (Neusoft.HISFC.Models.Pharmacy.Item info in listDrug)
            {
                drugInfo        = new Neusoft.FrameWork.Models.NeuObject();
                drugInfo.ID     = info.ID;
                drugInfo.Name   = info.Name;
                drugInfo.Memo   = info.Specs;
                drugInfo.User01 = info.MinUnit;

                alDrug.Add(drugInfo);
            }

            this.cmbItem.AddItems(alDrug);
            this.drugHelpter = new Neusoft.FrameWork.Public.ObjectHelper(alDrug);
            return(1);
        }
예제 #13
0
        private void neuSpread1_CellClick(object sender, FarPoint.Win.Spread.CellClickEventArgs e)
        {
            string strCode = this.fpDrugList.Cells[e.Row, 0].Text;

            Neusoft.HISFC.BizLogic.Pharmacy.Item Pitem = new Neusoft.HISFC.BizLogic.Pharmacy.Item();
            Neusoft.HISFC.Models.Pharmacy.Item   item  = new Neusoft.HISFC.Models.Pharmacy.Item();
            item = Pitem.GetItem(strCode);

            this.tpDescription.Text = item.Name + " [ " + item.Specs + " ] 药品详细信息";

            this.neutext.Text = item.Product.Manual;
        }
예제 #14
0
        /// <summary>
        /// 向FarPoint内加入数据

        /// 添加了货位好的显示

        /// add by zengft 2007-4-30
        /// </summary>
        /// <param name="item">药品实体</param>
        public void AddData(Neusoft.HISFC.Models.Pharmacy.Item item, string deptCode)
        {
            if (item == null)
            {
                return;
            }


            //add by zengft 2007-4-30
            Neusoft.HISFC.BizLogic.Pharmacy.Item  itm = new Neusoft.HISFC.BizLogic.Pharmacy.Item();
            Neusoft.HISFC.Models.Pharmacy.Storage s   = new Neusoft.HISFC.Models.Pharmacy.Storage();
            s = itm.GetStockInfoByDrugCode(deptCode, item.ID);
            //end add

            int iRow = this.fpSpread1_Sheet1.Rows.Count;

            this.fpSpread1_Sheet1.Rows.Add(iRow, 1);
            this.fpSpread1_Sheet1.Cells[iRow, (int)ColEnum.ColTradeName].Text = item.Name;
            this.fpSpread1_Sheet1.Cells[iRow, (int)ColEnum.ColSpecs].Text     = item.Specs;
            if (item.PackQty == 0)
            {
                item.PackQty = 1;
            }
            if (item.Type.ID == "C")
            {
                this.fpSpread1_Sheet1.Cells[iRow, (int)ColEnum.ColPrice].Text = System.Math.Round((item.PriceCollection.RetailPrice / item.PackQty), 4).ToString();
            }
            else
            {
                this.fpSpread1_Sheet1.Cells[iRow, (int)ColEnum.ColPrice].Text = System.Math.Round((item.PriceCollection.RetailPrice / item.PackQty), 2).ToString();
            }

            if (IsClinic)
            {
                if (item.SplitType.Equals(0))
                {
                    this.fpSpread1_Sheet1.Cells[iRow, (int)ColEnum.ColUnit].Text = item.MinUnit;
                }
                else
                {
                    this.fpSpread1_Sheet1.Cells[iRow, (int)ColEnum.ColUnit].Text = item.PackUnit;
                }
            }
            else
            {
                this.fpSpread1_Sheet1.Cells[iRow, (int)ColEnum.ColUnit].Text = item.MinUnit;
            }

            this.fpSpread1_Sheet1.Rows[iRow].Tag = item;

            this.fpSpread1_Sheet1.Cells[iRow, (int)ColEnum.ColPlace].Text = s.PlaceNO;
        }
예제 #15
0
 /// <summary>
 /// 获取指定行的Item实体
 /// </summary>
 /// <param name="rowIndex">指定行索引</param>
 /// <returns>成功返回Item实体 失败返回null</returns>
 protected Item GetItem(int rowIndex)
 {
     try
     {
         Neusoft.HISFC.BizLogic.Pharmacy.Item itemManager = new Neusoft.HISFC.BizLogic.Pharmacy.Item();
         return(itemManager.GetItem(this.neuSpread1_Sheet1.Cells[rowIndex, 0].Text));
     }
     catch (Exception ex)
     {
         MessageBox.Show("由FarPoint读取实体信息进行赋值时发生异常\n" + ex.Message);
         return(null);
     }
 }
예제 #16
0
        /// <summary>
        /// 入库单据查询
        /// </summary>
        protected override void QueryIn()
        {
            Neusoft.HISFC.BizLogic.Pharmacy.Item itemManager = new Neusoft.HISFC.BizLogic.Pharmacy.Item();

            ArrayList alList = itemManager.QueryInputList(this.DeptInfo.ID, "AAAA", this.State, this.BeginDate, this.EndDate);

            if (alList == null)
            {
                MessageBox.Show(Language.Msg("查询单据列表发生错误" + itemManager.Err));
            }

            this.neuSpread1_Sheet1.Rows.Count = 0;

            foreach (Neusoft.HISFC.Models.Pharmacy.Input info in alList)
            {
                if (this.MarkPrivType != null)
                {
                    if (this.MarkPrivType.ContainsKey(info.PrivType))       //对于过滤的权限不显示
                    {
                        continue;
                    }
                }

                this.neuSpread1_Sheet1.Rows.Add(0, 1);

                this.neuSpread1_Sheet1.Cells[0, 0].Text = info.InListNO;
                this.neuSpread1_Sheet1.Cells[0, 1].Text = info.DeliveryNO;
                this.neuSpread1_Sheet1.Cells[0, 2].Text = this.inTypeHelper.GetName(info.PrivType);

                Neusoft.HISFC.Models.Pharmacy.Company company = new Neusoft.HISFC.Models.Pharmacy.Company();

                if (info.Company.ID != "None")
                {
                    Neusoft.HISFC.BizLogic.Pharmacy.Constant constant = new Neusoft.HISFC.BizLogic.Pharmacy.Constant();
                    company = constant.QueryCompanyByCompanyID(info.Company.ID);
                    if (company == null)
                    {
                        MessageBox.Show(Language.Msg(constant.Err));
                        return;
                    }
                }
                else
                {
                    company.ID   = "None";
                    company.Name = "无供货公司";
                }

                this.neuSpread1_Sheet1.Cells[0, 3].Text = company.Name;
                this.neuSpread1_Sheet1.Cells[0, (int)ColumnSet.ColTargetID].Text = company.ID;
            }
        }
예제 #17
0
        /// <summary>
        /// 查询
        /// </summary>
        public int Query()
        {
            if (this.dept == null)
            {
                MessageBox.Show(Language.Msg("请设置查询药房"));
                return(-1);
            }
            if (this.drug == null)
            {
                MessageBox.Show(Language.Msg("请设置查询药品"));
                return(-1);
            }
            if (this.deptHelper != null)
            {
                this.dept = this.deptHelper.GetObjectFromID(this.cmbDept.Tag.ToString());
            }
            if (this.drugHelpter != null)
            {
                this.drug = this.drugHelpter.GetObjectFromID(this.cmbItem.Tag.ToString());
            }

            int intervalDays = (this.DtEnd - this.DtBegin).Days;

            this.lbItemInfo.Text = string.Format("药品编码:{0} 规格:{1} 单位:{2}", this.drug.Name, this.drug.Memo, this.drug.User01);

            Neusoft.HISFC.BizLogic.Pharmacy.Item itemMgr = new Neusoft.HISFC.BizLogic.Pharmacy.Item();
            decimal totOutNum    = 0;
            decimal perDayOutNum = 0;

            if (this.isOnlyPatientInOut)
            {
                if (itemMgr.FindByExpand(this.dept.ID, this.drug.ID, intervalDays, this.DtEnd, true, out totOutNum, out perDayOutNum) == -1)
                {
                    MessageBox.Show("统计药品日消耗信息失败!" + itemMgr.Err);
                    return(-1);
                }
            }
            else
            {
                if (itemMgr.FindByExpand(this.dept.ID, this.drug.ID, intervalDays, this.DtEnd, out totOutNum, out perDayOutNum) == -1)
                {
                    MessageBox.Show("统计药品日消耗信息失败!" + itemMgr.Err);
                    return(-1);
                }
            }

            this.lbExpandInfo.Text = string.Format("参考天数:{0}天 出库总量:{1} 日消耗:{2}", intervalDays.ToString(), totOutNum.ToString("N"), perDayOutNum.ToString("N"));

            return(1);
        }
예제 #18
0
        /// <summary>
        /// 申请信息检索
        /// </summary>
        /// <returns></returns>
        internal int QueryApply()
        {
            if (this.applyPatient == null)
            {
                MessageBox.Show(Language.Msg("请输入住院号回车选择退费患者"));
                return(0);
            }

            Neusoft.HISFC.BizLogic.Pharmacy.Item itemManager = new Neusoft.HISFC.BizLogic.Pharmacy.Item();

            ArrayList alApply = itemManager.GetPatientApply(this.applyPatient.ID, "AAAA", this.operDept.ID, this.BeginDate, this.EndDate, "0");

            if (alApply == null)
            {
                MessageBox.Show(Language.Msg("患者获取申请信息失败") + itemManager.Err);
                return(-1);
            }

            this.dtNormalApply.Rows.Clear();

            this.dtCancelApply.Rows.Clear();

            this.hsApply = new Hashtable();

            foreach (Neusoft.HISFC.Models.Pharmacy.ApplyOut applyOut in alApply)
            {
                if (applyOut.State != "0")
                {
                    continue;
                }
                //不显示退药申请
                if (applyOut.SystemType == Neusoft.HISFC.Models.Base.EnumIMAOutTypeService.GetNameFromEnum(Neusoft.HISFC.Models.Base.EnumIMAOutType.InpatientBackOutput))
                {
                    continue;
                }
                //1有效 0 无效
                if (applyOut.ValidState == Neusoft.HISFC.Models.Base.EnumValidState.Valid)
                {
                    this.SetNormalApply(applyOut);
                }
                else
                {
                    this.SetCancelApply(applyOut);
                }

                this.hsApply.Add(applyOut.ID, applyOut);
            }

            return(1);
        }
예제 #19
0
        private void ucDrugList1_ChooseDataEvent(FarPoint.Win.Spread.SheetView sv, int activeRow)
        {
            if (sv != null && activeRow >= 0)
            {
                string drugID;
                drugID = sv.Cells[activeRow, 0].Value.ToString();
                //取药品字典信息
                Neusoft.HISFC.BizLogic.Pharmacy.Item itemManager = new Neusoft.HISFC.BizLogic.Pharmacy.Item();
                this.item = itemManager.GetItem(drugID);
                if (this.item != null)
                {
                    //{E49F9CEA-2E6D-4b2e-919F-99145BEE3E68}  协定处方校验 对于未维护明细的协定处方,不能进行入库操作
                    if (this.item.IsNostrum == true)
                    {
                        List <Neusoft.HISFC.Models.Pharmacy.Nostrum> nostrumList = itemManager.QueryNostrumDetail(this.item.ID);
                        if (nostrumList == null || nostrumList.Count <= 0)
                        {
                            MessageBox.Show(this.item.Name + " 为协定处方,但尚未进行明细内容维护,不能进行入库操作");
                            return;
                        }
                    }
                    this.Clear(true);
                    //标志是否已新加的药品
                    this.item.User01 = "1";

                    if (Function.SetPrice(this.privDept.ID, this.item.ID, ref this.item) == -1)
                    {
                        return;
                    }

                    //添加数据
                    this.SetItem(this.item);

                    this.ntbInQty.Focus();

                    //{9E7FB328-89B3-4f43-A417-2EC3ACFC7093}
                    //双击清空键值
                    if (this.ClearPriKey != null)
                    {
                        Neusoft.FrameWork.Models.NeuObject obj = new Neusoft.FrameWork.Models.NeuObject();
                        this.ClearPriKey(ref obj);
                    }
                }
                else
                {
                    MessageBox.Show(Language.Msg("检索药品基本信息失败"));
                    this.ucDrugList1.SetFocusSelect();
                }
            }
        }
예제 #20
0
        /// <summary>
        /// 删除
        /// </summary>
        /// <param name="sv">需执行删除的Fp</param>
        /// <param name="delRowIndex">需删除的行索引</param>
        /// <returns>成功返回1 失败返回-1</returns>
        public virtual int Delete(FarPoint.Win.Spread.SheetView sv, int delRowIndex)
        {
            try
            {
                if (sv != null && delRowIndex >= 0)
                {
                    string[] keys = new string[] {
                        sv.Cells[delRowIndex, (int)ColumnSet.ColDrugID].Text,
                        sv.Cells[delRowIndex, (int)ColumnSet.ColBatchNO].Text
                    };
                    DataRow dr = this.dt.Rows.Find(keys);
                    if (dr != null)
                    {
                        Neusoft.HISFC.Models.Pharmacy.Input input = this.hsInputData[dr["药品编码"].ToString() + dr["批号"].ToString()] as Neusoft.HISFC.Models.Pharmacy.Input;

                        //增加直接删除外部入库申请功能 by Sunjh 2010-8-23 {EB33BF6F-D122-4330-8D89-BB8695DD5A48}
                        if (MessageBox.Show("是否删除当前申请信息,是则直接提交保存", "提示", MessageBoxButtons.YesNo) == DialogResult.Yes)
                        {
                            Neusoft.HISFC.BizLogic.Pharmacy.Item itemManager = new Neusoft.HISFC.BizLogic.Pharmacy.Item();
                            if (itemManager.DeleteApplyIn(input.ID) == -1)
                            {
                                MessageBox.Show("删除失败!");
                            }
                        }
                        else
                        {
                            return(-1);
                        }

                        this.hsInputData.Remove(dr["药品编码"].ToString() + dr["批号"].ToString());

                        this.dt.Rows.Remove(dr);
                        //合计计算
                        this.CompuateSum();
                    }
                }
            }
            catch (System.Data.DataException e)
            {
                System.Windows.Forms.MessageBox.Show(Neusoft.FrameWork.Management.Language.Msg("对数据表执行删除操作发生错误" + e.Message));
                return(-1);
            }
            catch (Exception ex)
            {
                System.Windows.Forms.MessageBox.Show(Neusoft.FrameWork.Management.Language.Msg("对数据表执行删除操作发生错误" + ex.Message));
                return(-1);
            }

            return(1);
        }
예제 #21
0
        /// <summary>
        /// 作废用药申请
        /// </summary>
        /// <returns>成功返回1 失败返回-1</returns>
        internal int CancelApply()
        {
            if (this.fpCancelApply_Sheet1.Rows.Count <= 0)
            {
                return(0);
            }

            Neusoft.FrameWork.Management.PublicTrans.BeginTransaction();

            //Neusoft.FrameWork.Management.Transaction t = new Transaction(Neusoft.FrameWork.Management.Connection.Instance);
            //t.BeginTransaction();

            Neusoft.HISFC.BizLogic.Pharmacy.Item itemManager = new Neusoft.HISFC.BizLogic.Pharmacy.Item();
            //itemManager.SetTrans(t.Trans);
            //{E8849BB0-3C69-4d60-8771-C201E445BD5D}  预扣库存的判断处理
            Neusoft.HISFC.BizProcess.Integrate.Common.ControlParam ctrlIntegrate = new Neusoft.HISFC.BizProcess.Integrate.Common.ControlParam();
            bool isPreOut = ctrlIntegrate.GetControlParam <bool>(Neusoft.HISFC.BizProcess.Integrate.PharmacyConstant.InDrug_Pre_Out, false, true);

            for (int i = 0; i < this.fpCancelApply_Sheet1.Rows.Count; i++)
            {
                string applyID = this.fpCancelApply_Sheet1.Cells[i, (int)ColumnSet.ColID].Text;

                Neusoft.HISFC.Models.Pharmacy.ApplyOut applyOut = this.hsApply[applyID] as Neusoft.HISFC.Models.Pharmacy.ApplyOut;

                //对已经无效的数据 不重复保存
                if (applyOut.ValidState == Neusoft.HISFC.Models.Base.EnumValidState.Invalid)
                {
                    continue;
                }

                //作废摆药申请
                //{E8849BB0-3C69-4d60-8771-C201E445BD5D}  传入参数调整
                if (itemManager.CancelApplyOutByID(applyOut.ID, isPreOut) == -1)
                {
                    Neusoft.FrameWork.Management.PublicTrans.RollBack();
                    MessageBox.Show(Language.Msg("作废摆药申请失败"));
                    return(-1);
                }

                //作废医嘱执行档
            }

            Neusoft.FrameWork.Management.PublicTrans.Commit();

            MessageBox.Show(Language.Msg("作废申请成功"));

            this.Clear();

            return(1);
        }
예제 #22
0
        /// <summary>
        /// 根据药品编码加入数据
        /// </summary>
        /// <param name="drugNO">药品编码</param>
        /// <param name="outBillNO">出库流水号</param>
        /// <returns></returns>
        private int AddDrugData(string drugNO, string outBillNO, decimal applyQty)
        {
            //取药品字典信息
            Neusoft.HISFC.BizLogic.Pharmacy.Item itemManager = new Neusoft.HISFC.BizLogic.Pharmacy.Item();
            Neusoft.HISFC.Models.Pharmacy.Item   item        = itemManager.GetItem(drugNO);
            if (item == null)
            {
                MessageBox.Show(Language.Msg("检索药品基本信息失败"));
                return(-1);
            }

            Neusoft.HISFC.Models.Pharmacy.ApplyOut applyOut = new Neusoft.HISFC.Models.Pharmacy.ApplyOut();

            applyOut.Item = item;

            if (outBillNO != null)
            {
                applyOut.OutBillNO = outBillNO;
            }

            if (this.hsApplyData.Contains(this.GetKey(applyOut)))
            {
                MessageBox.Show(Language.Msg("该药品已添加"));
                return(0);
            }

            applyOut.Days       = 1;
            applyOut.ApplyDept  = this.phaInManager.DeptInfo;       //申请科室
            applyOut.StockDept  = this.phaInManager.TargetDept;     //库存科室 (目标科室)
            applyOut.State      = "0";                              //状态 申请
            applyOut.SystemType = this.phaInManager.PrivType.Memo;
            applyOut.PrivType   = this.phaInManager.PrivType.ID;

            if (applyQty != -1)
            {
                applyOut.Operation.ApplyQty = applyQty;
            }

            if (this.AddDataToTable(applyOut, "1") == 1)
            {
                this.hsApplyData.Add(this.GetKey(applyOut), applyOut);

                this.SetFormat();

                this.SetFocusSelect();
            }

            return(1);
        }
예제 #23
0
        private void ucDrugList1_ChooseDataEvent(FarPoint.Win.Spread.SheetView sv, int activeRow)
        {
            string drugCode = sv.Cells[activeRow, 0].Text;

            Neusoft.HISFC.BizLogic.Pharmacy.Item itemManager = new Neusoft.HISFC.BizLogic.Pharmacy.Item();
            Neusoft.HISFC.Models.Pharmacy.Item   item        = itemManager.GetItem(drugCode);

            if (item == null)
            {
                MessageBox.Show(Language.Msg("获取药品信息失败") + itemManager.Err);
            }

            this.AddItem(item);

            this.SetFocus(true);
        }
예제 #24
0
        /// <summary>
        /// 初始化
        /// </summary>
        /// <returns></returns>
        private int Init()
        {
            Neusoft.HISFC.BizLogic.Pharmacy.Item      itemManager = new Neusoft.HISFC.BizLogic.Pharmacy.Item();
            List <Neusoft.HISFC.Models.Pharmacy.Item> alList      = itemManager.QueryItemList(true);

            if (alList == null)
            {
                MessageBox.Show(Language.Msg("获取药品列表发生错误") + itemManager.Err);
                return(-1);
            }
            foreach (Neusoft.HISFC.Models.Pharmacy.Item item in alList)
            {
                item.Memo = item.Specs;
            }
            this.alItem = new ArrayList(alList.ToArray());

            Neusoft.HISFC.BizLogic.Manager.Department deptManager = new Neusoft.HISFC.BizLogic.Manager.Department();
            this.alDept = deptManager.GetDeptmentAll();
            if (this.alDept == null)
            {
                MessageBox.Show(Language.Msg("获取科室列表发生错误") + deptManager.Err);
                return(-1);
            }

            this.tvDeptList.ImageList = this.tvDeptList.groupImageList;

            this.parentNode = new TreeNode("基数药病区", 0, 0);

            this.tvDeptList.Nodes.Add(this.parentNode);

            #region 屏蔽Fp回车/换行键

            FarPoint.Win.Spread.InputMap im;

            im = this.neuSpread1.GetInputMap(FarPoint.Win.Spread.InputMapMode.WhenAncestorOfFocused);
            im.Put(new FarPoint.Win.Spread.Keystroke(Keys.Enter, Keys.None), FarPoint.Win.Spread.SpreadActions.None);

            im = this.neuSpread1.GetInputMap(FarPoint.Win.Spread.InputMapMode.WhenAncestorOfFocused);
            im.Put(new FarPoint.Win.Spread.Keystroke(Keys.Space, Keys.None), FarPoint.Win.Spread.SpreadActions.None);

            #endregion

            this.neuSpread1.EditModeReplace = true;

            return(1);
        }
예제 #25
0
        /// <summary>
        /// 采购计划单据列表
        /// </summary>
        /// <param name="privDept">权限科室</param>
        /// <param name="stockState">采购状态</param>
        public void ShowStockPlanList(Neusoft.FrameWork.Models.NeuObject privDept, string stockState)
        {
            //清空列表
            this.Nodes.Clear();

            Neusoft.HISFC.BizLogic.Pharmacy.Item itemManager = new Neusoft.HISFC.BizLogic.Pharmacy.Item();

            //显示采购单列表  0 状态为入库计划单
            ArrayList alList = itemManager.QueryStockPLanCompanayList(privDept.ID, stockState);

            if (alList == null)
            {
                System.Windows.Forms.MessageBox.Show(Neusoft.FrameWork.Management.Language.Msg("获取采购计划单列表发生错误" + itemManager.Err));
                return;
            }

            if (alList.Count == 0)
            {
                this.Nodes.Add(new System.Windows.Forms.TreeNode("没有采购计划单", 0, 0));
            }
            else
            {
                this.Nodes.Add(new System.Windows.Forms.TreeNode("采购计划单列表", 0, 0));
                foreach (Neusoft.FrameWork.Models.NeuObject info in alList)
                {
                    System.Windows.Forms.TreeNode node = new System.Windows.Forms.TreeNode();

                    node.Text               = "【" + info.ID + "】" + info.Name;//【入库计划单号】+供货公司名称
                    node.ImageIndex         = 2;
                    node.SelectedImageIndex = 4;

                    //初始入库计划制定时指定供货公司编码为'0000000000'
                    if (info.User01 == null || info.User01.Trim() == "")
                    {
                        info.User01 = "0000000000";
                    }

                    node.Tag = info;   //入库计划单号+供货公司ID

                    this.Nodes[0].Nodes.Add(node);
                }
                this.Nodes[0].ExpandAll();
                this.SelectedNode = this.Nodes[0];
            }
        }
예제 #26
0
        /// <summary>
        /// 根据批次流水号检索
        /// </summary>
        /// <param name="compoundGroup">批次流水号</param>
        protected void QueryCompound(string compoundGroup)
        {
            if (compoundGroup == null || compoundGroup == "")
            {
                return;
            }

            Neusoft.HISFC.BizLogic.Pharmacy.Item itemManager = new Neusoft.HISFC.BizLogic.Pharmacy.Item();
            ArrayList alList = itemManager.QueryCompoundApplyOut(compoundGroup);

            if (alList == null)
            {
                MessageBox.Show(Language.Msg("根据批次流水号获取配置数据发生错误") + itemManager.Err);
                return;
            }

            this.AddDataToFp(alList);
        }
예제 #27
0
        /// <summary>
        /// 保存申请
        /// </summary>
        /// <returns></returns>
        public virtual int SaveApply()
        {
            ArrayList alCheck = this.GetCheckData();

            if (alCheck.Count == 0)
            {
                return(0);
            }

            Neusoft.HISFC.BizLogic.Pharmacy.Item itemManager = new Neusoft.HISFC.BizLogic.Pharmacy.Item();

            DateTime sysTime = itemManager.GetDateTimeFromSysDateTime();

            Neusoft.FrameWork.Management.PublicTrans.BeginTransaction();

            //Neusoft.FrameWork.Management.Transaction t = new Transaction(Neusoft.FrameWork.Management.Connection.Instance);
            //t.BeginTransaction();

            itemManager.SetTrans(Neusoft.FrameWork.Management.PublicTrans.Trans);

            //暂时不处理药柜问题

            Neusoft.HISFC.Models.Base.OperEnvironment compoundOper = new Neusoft.HISFC.Models.Base.OperEnvironment();
            compoundOper.OperTime = sysTime;
            compoundOper.ID       = this.approveOper.ID;

            foreach (Neusoft.HISFC.Models.Pharmacy.ApplyOut info in alCheck)
            {
                if (itemManager.UpdateCompoundApplyOut(info, compoundOper, true) == -1)
                {
                    Neusoft.FrameWork.Management.PublicTrans.RollBack();
                    MessageBox.Show(Language.Msg("更新配置确认信息发生错误") + itemManager.Err);
                    return(-1);
                }
            }
            Neusoft.FrameWork.Management.PublicTrans.Commit();

            MessageBox.Show(Language.Msg("保存成功"));

            this.ShowList();

            return(1);
        }
예제 #28
0
        /// <summary>
        /// 增加申请数据
        /// </summary>
        /// <param name="listCode">申请单号</param>
        /// <param name="state">状态</param>
        /// <returns>成功返回1 </失败返回-1returns>
        protected virtual int AddApplyData(string listCode, string state)
        {
            Neusoft.HISFC.BizLogic.Pharmacy.Item itemManager = new Neusoft.HISFC.BizLogic.Pharmacy.Item();
            ArrayList al = itemManager.QueryApplyIn(this.phaInManager.DeptInfo.ID, listCode, "0");

            if (al == null)
            {
                System.Windows.Forms.MessageBox.Show(Language.Msg("未正确获取外部入库申请信息" + itemManager.Err));
                return(-1);
            }

            this.Clear();

            Neusoft.FrameWork.Models.NeuObject applyCompany = new Neusoft.FrameWork.Models.NeuObject();

            foreach (Neusoft.HISFC.Models.Pharmacy.Input input in al)
            {
                Neusoft.HISFC.Models.Pharmacy.Item tempItem = itemManager.GetItem(input.Item.ID);

                input.Item     = tempItem;                           //药品实体信息
                input.Quantity = input.Operation.ApplyQty;

                if (this.AddDataToTable(input) == 1)
                {
                    this.hsInputData.Add(input.Item.ID + input.BatchNO, input);
                }

                applyCompany = input.Company;
            }

            Neusoft.HISFC.BizLogic.Pharmacy.Constant consManager = new Neusoft.HISFC.BizLogic.Pharmacy.Constant();
            Neusoft.HISFC.Models.Pharmacy.Company    compay      = consManager.QueryCompanyByCompanyID(applyCompany.ID);
            applyCompany.Name = compay.Name;
            applyCompany.Memo = "1";

            this.phaInManager.TargetDept = applyCompany;

            this.CompuateSum();

            this.SetFormat();

            return(1);
        }
예제 #29
0
        protected override void OnAfterLabelEdit(System.Windows.Forms.NodeLabelEditEventArgs e)
        {
            if (e.Label != null)
            {
                if (e.Label.Length > 0)
                {
                    if (e.Label.IndexOfAny(new char[] { '@', '.', ',', '!' }) == -1)
                    {
                        e.Node.EndEdit(false);
                    }
                    else
                    {
                        e.CancelEdit = true;
                        System.Windows.Forms.MessageBox.Show(Language.Msg("存在无效字符!请重新命名"));
                        e.Node.BeginEdit();
                    }
                }
                else
                {
                    e.CancelEdit = true;
                    System.Windows.Forms.MessageBox.Show(Language.Msg("模板名称不能为空"));
                    e.Node.BeginEdit();
                }

                Neusoft.HISFC.Models.Pharmacy.Check check = e.Node.Tag as Neusoft.HISFC.Models.Pharmacy.Check;

                Neusoft.HISFC.BizLogic.Pharmacy.Item itemManager = new Neusoft.HISFC.BizLogic.Pharmacy.Item();

                check.CheckName = e.Label;

                if (check.CheckNO != "")
                {
                    if (itemManager.UpdateCheckListName(this.privDept.ID, check.CheckNO, e.Label) == -1)
                    {
                        System.Windows.Forms.MessageBox.Show(Language.Msg("更新盘点统计信息中盘点单名称出错"));
                        return;
                    }
                }
            }

            base.OnAfterLabelEdit(e);
        }
예제 #30
0
        /// <summary>
        /// 确认参数设置 日消耗处理
        ///
        /// {F4D82F23-CCDC-45a6-86A1-95D41EF856B8} 更改函数名称及调用函数
        /// </summary>
        protected void QueryDayAlterList()
        {
            if (this.SaveValid())
            {
                Neusoft.FrameWork.WinForms.Classes.Function.ShowWaitForm("正在按照日消耗进行检索 请稍候...");
                Application.DoEvents();

                Neusoft.HISFC.BizLogic.Pharmacy.Item itemMgr = new Neusoft.HISFC.BizLogic.Pharmacy.Item();

                this.alInfo = itemMgr.QueryDrugListByDayAlter(this.deptCode, this.DtBegin, this.DtEnd, this.MaxAlterDays, this.MinAlterDays, this.rbAllDept.Checked);
                if (this.alInfo == null)
                {
                    Neusoft.FrameWork.WinForms.Classes.Function.HideWaitForm();
                    MessageBox.Show("检索日消耗信息发生错误" + itemMgr.Err);
                    return;
                }

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