Beispiel #1
0
        /// <summary>
        /// 检索药品信息
        /// </summary>
        private void RetrieveData( )
        {
            //显示等待信息
            Neusoft.NFC.Interface.Classes.Function.ShowWaitForm(Language.Msg("正在检索药品信息..."));
            Application.DoEvents( );

            //取药品数据
            List <Neusoft.HISFC.Object.Pharmacy.Item> al = item.QueryItemList(true);

            if (al == null)
            {
                MessageBox.Show(item.Err);
                Neusoft.NFC.Interface.Classes.Function.HideWaitForm( );
                return;
            }

            //取药品类型数组
            Neusoft.HISFC.Integrate.Manager manager = new Neusoft.HISFC.Integrate.Manager( );
            this.drugTypeHelper.ArrayObject = manager.GetConstantList(Neusoft.HISFC.Object.Base.EnumConstant.ITEMTYPE);
            this.qualityHelper.ArrayObject  = manager.GetConstantList(Neusoft.HISFC.Object.Base.EnumConstant.DRUGQUALITY);

            //显示药品数据
            Neusoft.HISFC.Object.Pharmacy.Item info;
            for (int i = 0; i < al.Count; i++)
            {
                info = al[i] as Neusoft.HISFC.Object.Pharmacy.Item;
                this.dsDrug.Tables[0].Rows.Add(new Object[] {
                    false,                                                                                                                                //是否添加
                    info.Name,                                                                                                                            //药品名称
                    info.Specs,                                                                                                                           //药品规格
                    info.PriceCollection.RetailPrice,                                                                                                     //零售价
                    qualityHelper.GetName(info.Quality.ID),                                                                                               //药品性质
                    info.PackUnit,                                                                                                                        //包装单位
                    info.PackQty,                                                                                                                         //包装数量
                    info.MinUnit,                                                                                                                         //最小单位
                    info.ID,                                                                                                                              //药品编码
                    drugTypeHelper.GetName(info.Type.ID),                                                                                                 //药品类型
                    info.NameCollection.SpellCode,                                                                                                        //拼音码
                    info.NameCollection.WBCode,                                                                                                           //五笔码
                    info.NameCollection.UserCode,                                                                                                         //自定义码
                    info.NameCollection.RegularName,                                                                                                      //通用名
                    info.NameCollection.SpellCode,                                                                                                        //通用名拼音码
                    info.NameCollection.WBCode,                                                                                                           //通用名五笔码
                });
                //设置格式
                this.SetFormat( );
                Neusoft.NFC.Interface.Classes.Function.ShowWaitForm(i, al.Count);
                Application.DoEvents( );
            }

            Neusoft.NFC.Interface.Classes.Function.HideWaitForm( );
        }
        /// <summary>
        /// 查询诊断信息并且填充的表中

        /// </summary>
        private void AddInfoToFP(ArrayList alReturn)
        {
            bool Result = false;

            if ((this.frmType == Neusoft.HISFC.Object.HealthRecord.EnumServer.frmTypes.DOC && this.patient.CaseState == "2") || (this.frmType == Neusoft.HISFC.Object.HealthRecord.EnumServer.frmTypes.CAS && this.patient.CaseState == "3"))
            {
                Result = true;
            }
            //清空以前的数据

            if (this.fpEnter1_Sheet1.RowCount > 0)
            {
                this.fpEnter1_Sheet1.Rows.Remove(0, this.fpEnter1_Sheet1.Rows.Count);
            }
            //循环插入信息
            foreach (Neusoft.HISFC.Object.HealthRecord.Diagnose info in alReturn)
            {
                this.fpEnter1_Sheet1.Rows.Add(0, 1);
                this.fpEnter1_Sheet1.Cells[0, (int)Cols.diagType].Text    = diagnoseTypeHelper.GetName(info.DiagInfo.DiagType.ID); //0
                this.fpEnter1_Sheet1.Cells[0, (int)Cols.ICDName].Text     = info.DiagInfo.ICD10.Name;                              //1
                this.fpEnter1_Sheet1.Cells[0, (int)Cols.ICDCode].Text     = info.DiagInfo.ICD10.ID;                                //2
                this.fpEnter1_Sheet1.Cells[0, (int)Cols.outState].Text    = diagOutStateListHelper.GetName(info.DiagOutState);     //3
                this.fpEnter1_Sheet1.Cells[0, (int)Cols.Operation].Text   = OperListHelper.GetName(info.OperationFlag);
                this.fpEnter1_Sheet1.Cells[0, (int)Cols.disease].Value    = Neusoft.NFC.Function.NConvert.ToBoolean(info.Is30Disease);
                this.fpEnter1_Sheet1.Cells[0, (int)Cols.clpa].Value       = Neusoft.NFC.Function.NConvert.ToBoolean(info.CLPA);
                this.fpEnter1_Sheet1.Cells[0, (int)Cols.levelCode].Text   = LeveListHelper.GetName(info.LevelCode);    //7
                this.fpEnter1_Sheet1.Cells[0, (int)Cols.perionCode].Text  = PeriorListHelper.GetName(info.PeriorCode); //8
                this.fpEnter1_Sheet1.Cells[0, (int)Cols.dubdiag].Value    = Neusoft.NFC.Function.NConvert.ToBoolean(info.DubDiagFlag);
                this.fpEnter1_Sheet1.Cells[0, (int)Cols.mainDiag].Value   = info.DiagInfo.IsMain;
                this.fpEnter1_Sheet1.Cells[0, (int)Cols.happenNo].Text    = info.DiagInfo.HappenNo.ToString();
                this.fpEnter1_Sheet1.Cells[0, (int)Cols.diagTime].Text    = info.DiagInfo.DiagDate.ToString();
                this.fpEnter1_Sheet1.Cells[0, (int)Cols.inTime].Text      = patient.PVisit.InTime.ToString();
                this.fpEnter1_Sheet1.Cells[0, (int)Cols.outTime].Text     = patient.PVisit.OutTime.ToString();
                this.fpEnter1_Sheet1.Cells[0, (int)Cols.diagDocCode].Text = info.DiagInfo.Doctor.ID;
                this.fpEnter1_Sheet1.Cells[0, (int)Cols.diagDocName].Text = info.DiagInfo.Doctor.Name;
                this.fpEnter1_Sheet1.Cells[0, 0].Tag = info;
            }
            LockFpEnter();
        }