示例#1
0
        /// <summary>
        /// 查询各分类ICD10
        /// </summary>
        /// <param name="DiagnoseType"></param>
        /// <returns></returns>
        public ArrayList ICD10Query(DiagnoseType DiagnoseType)
        {
            #region 接口说明
            /////RADT.Diagnose.ICD10Query.2
            ///传入:0诊断分类
            ///传出:ICD10诊断信息
            #endregion
            ArrayList al = new ArrayList();
            string    sql1 = "", sql2 = "";

            sql1 = ICD10QuerySelect();
            if (sql1 == null)
            {
                return(null);
            }

            if (this.Sql.GetSql("RADT.Diagnose.ICD10Query.2", ref sql2) == -1)
            {
                this.Err     = "没有找到RADT.Diagnose.ICD10Query.2字段!";
                this.ErrCode = "-1";
                return(null);
            }
            sql1 = sql1 + " " + string.Format(sql2, DiagnoseType.ID);
            return(this.myICD10Query(sql1));
        }
示例#2
0
        private async void Diagnose()
        {
            DiagnoseType diagnoseType = this.rbNotNullWithEmpty.Checked ? DiagnoseType.NotNullWithEmpty : DiagnoseType.SelfReferenceSame;

            try
            {
                this.btnStart.Enabled = false;

                DiagnoseResult result = await dbManager.Diagnose(this.DatabaseType, this.ConnectionInfo, diagnoseType);

                if (result.Details.Count > 0)
                {
                    frmDiagnoseResult frmResult = new frmDiagnoseResult()
                    {
                        DatabaseType   = this.DatabaseType,
                        ConnectionInfo = this.ConnectionInfo
                    };

                    frmResult.LoadResult(result);
                    frmResult.ShowDialog();
                }
                else
                {
                    MessageBox.Show("Diagnosis finished, no invalid data found.");
                }
            }
            catch (Exception ex)
            {
                MessageBox.Show(ExceptionHelper.GetExceptionDetails(ex), "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
            }
            finally
            {
                this.btnStart.Enabled = true;
            }
        }
        public virtual Task <DiagnoseResult> Diagnose(DiagnoseType diagnoseType)
        {
            if (diagnoseType == DiagnoseType.SelfReferenceSame)
            {
                return(this.DiagnoseSelfReferenceSame());
            }
            else if (diagnoseType == DiagnoseType.NotNullWithEmpty)
            {
                return(this.DiagnoseNotNullWithEmpty());
            }

            throw new NotSupportedException($"Not support diagnose for {diagnoseType}");
        }
 public DiagnoseOutputEntry(DateTime timeStamp, long gap, long duration, int processId, int threadNumber,
                            DiagnoseType type, string domain, string application, string component, string module,
                            string code, string text, string metaInformation)
 {
     TimeStamp = timeStamp;
     Gap = gap;
     Duration = duration;
     ProcessId = processId;
     ThreadNumber = threadNumber;
     Type = type;
     Domain = domain;
     Application = application;
     Component = component;
     Module = module;
     Code = code;
     Text = text;
     MetaInformation = metaInformation;
 }
示例#5
0
 public DiagnoseOutputEntry(DateTime timeStamp, long gap, long duration, int processId, int threadNumber,
                            DiagnoseType type, string domain, string application, string component, string module,
                            string code, string text, string metaInformation)
 {
     TimeStamp       = timeStamp;
     Gap             = gap;
     Duration        = duration;
     ProcessId       = processId;
     ThreadNumber    = threadNumber;
     Type            = type;
     Domain          = domain;
     Application     = application;
     Component       = component;
     Module          = module;
     Code            = code;
     Text            = text;
     MetaInformation = metaInformation;
 }
示例#6
0
        //私有函数,查询患者基本信息
        private ArrayList myPatientQuery(string SQLPatient)
        {
            ArrayList al = new ArrayList();

            neusoft.HISFC.Object.RADT.Diagnose Diagnose;
            this.ProgressBarText  = "正在查询患者诊断...";
            this.ProgressBarValue = 0;

            this.ExecQuery(SQLPatient);
            try
            {
                while (this.Reader.Read())
                {
                    Diagnose = new neusoft.HISFC.Object.RADT.Diagnose();
                    #region "接口说明"
                    // 0  --住院流水号, 1 --发生序号      2   --病历号   ,     3   --诊断类别  ,4   --诊断编码
                    // 5  --诊断名称,   6   --诊断时间   ,7   --诊断医生编码  ,8   --医生名称 , 9   --是否有效
                    // 10 --诊断科室ID 11   --是否主诊断 12   --备注          13   --操作员    14   --操作时间
                    #endregion
                    try
                    {
                        Diagnose.Patient.ID = this.Reader[0].ToString();                        // 住院流水号
                    }
                    catch (Exception ex)
                    {
                        this.Err = ex.Message;
                        this.WriteErr();
                    }
                    try
                    {
                        Diagnose.HappenNo = neusoft.neuFC.Function.NConvert.ToInt32(this.Reader[1].ToString());                        //  发生序号
                    }
                    catch (Exception ex)
                    {
                        this.Err = ex.Message;
                        this.WriteErr();
                    }
                    try
                    {
                        Diagnose.Patient.PID.CardNo = this.Reader[2].ToString();                        //病历号
                    }
                    catch (Exception ex)
                    {
                        this.Err = ex.Message;
                        this.WriteErr();
                    }
                    try
                    {
                        Diagnose.DiagType.ID = this.Reader[3].ToString();                        //诊断类别
                        DiagnoseType diagnosetype = new DiagnoseType();
                        diagnosetype.ID        = Diagnose.DiagType.ID;
                        Diagnose.DiagType.Name = diagnosetype.Name;                        //获得诊断名称
                    }
                    catch (Exception ex)
                    {
                        this.Err = ex.Message;
                        this.WriteErr();
                    }
                    try
                    {
                        Diagnose.ID       = this.Reader[4].ToString();                                  //诊断代码
                        Diagnose.ICD10.ID = this.Reader[4].ToString();
                    }
                    catch (Exception ex)
                    {
                        this.Err = ex.Message;
                        this.WriteErr();
                    }
                    try
                    {
                        Diagnose.Name       = this.Reader[5].ToString();                                //诊断名称
                        Diagnose.ICD10.Name = this.Reader[5].ToString();
                    }
                    catch (Exception ex)
                    {
                        this.Err = ex.Message;
                        this.WriteErr();
                    }

                    try
                    {
                        Diagnose.DiagDate = neusoft.neuFC.Function.NConvert.ToDateTime(this.Reader[6].ToString());
                    }
                    catch (Exception ex)
                    {
                        this.Err = ex.Message;
                        this.WriteErr();
                    }
                    try
                    {
                        Diagnose.Doctor.ID = this.Reader[7].ToString();
                    }
                    catch (Exception ex)
                    {
                        this.Err = ex.Message;
                        this.WriteErr();
                    }
                    try
                    {
                        Diagnose.Doctor.Name = this.Reader[8].ToString();
                    }
                    catch (Exception ex)
                    {
                        this.Err = ex.Message;
                        this.WriteErr();
                    }
                    try
                    {
                        Diagnose.IsValid = neusoft.neuFC.Function.NConvert.ToBoolean(this.Reader[9]);
                    }
                    catch (Exception ex)
                    {
                        this.Err = ex.Message;
                        this.WriteErr();
                    }
                    try
                    {
                        Diagnose.Dept.ID = this.Reader[10].ToString();
                    }
                    catch (Exception ex)
                    {
                        this.Err = ex.Message;
                        this.WriteErr();
                    }
                    try
                    {
                        Diagnose.IsMain = neusoft.neuFC.Function.NConvert.ToBoolean(this.Reader[11]);
                    }
                    catch (Exception ex)
                    {
                        this.Err = ex.Message;
                        this.WriteErr();
                    }
                    try
                    {
                        Diagnose.Memo = this.Reader[12].ToString();
                    }
                    catch (Exception ex)
                    {
                        this.Err = ex.Message;
                        this.WriteErr();
                    }
                    try
                    {
                        Diagnose.User01 = this.Reader[13].ToString();
                    }
                    catch (Exception ex)
                    {
                        this.Err = ex.Message;
                        this.WriteErr();
                    }
                    try
                    {
                        Diagnose.User02 = this.Reader[14].ToString();
                    }
                    catch (Exception ex)
                    {
                        this.Err = ex.Message;
                        this.WriteErr();
                    }
                    al.Add(Diagnose);
                }
            }
            catch (Exception ex)
            {
                this.Err     = "获得患者诊断信息出错!" + ex.Message;
                this.ErrCode = "-1";
                this.WriteErr();
                return(al);
            }
            this.Reader.Close();

            this.ProgressBarValue = -1;
            return(al);
        }
示例#7
0
        public async Task <DiagnoseResult> Diagnose(DatabaseType databaseType, ConnectionInfo connectionInfo, DiagnoseType diagnoseType)
        {
            DbDiagnosis dbDiagnosis = DbDiagnosis.GetInstance(databaseType, connectionInfo);

            dbDiagnosis.OnFeedback += this.Feedback;

            DiagnoseResult result = await dbDiagnosis.Diagnose(diagnoseType);

            return(result);
        }