Ejemplo n.º 1
0
        public clsCheckResult_VO m_objConstructCheckResultVO(System.Data.DataRow p_objRow)
        {
            clsCheckResult_VO objResultVO = new clsCheckResult_VO();

            try
            {
                objResultVO.m_strResult = p_objRow["RESULT_VCHR"].ToString().Trim();
                objResultVO.m_strUnit   = p_objRow["UNIT_VCHR"].ToString().Trim();
                objResultVO.m_strDevice_Check_Item_Name = p_objRow["DEVICE_CHECK_ITEM_NAME_VCHR"].ToString().Trim();
                if (Microsoft.VisualBasic.Information.IsDate(p_objRow["MODIFY_DAT"]))
                {
                    objResultVO.m_strModify_Dat = Convert.ToDateTime(p_objRow["MODIFY_DAT"]).ToString("yyyy-MM-dd HH:mm:ss").Trim();
                }
                objResultVO.m_strRefrange                = p_objRow["REFRANGE_VCHR"].ToString().Trim();
                objResultVO.m_strCheck_Item_Name         = p_objRow["CHECK_ITEM_NAME_VCHR"].ToString().Trim();
                objResultVO.m_strCheck_Item_English_Name = p_objRow["CHECK_ITEM_ENGLISH_NAME_VCHR"].ToString().Trim();
                objResultVO.m_strMin_Val       = p_objRow["MIN_VAL_DEC"].ToString().Trim();
                objResultVO.m_strMax_Val       = p_objRow["MAX_VAL_DEC"].ToString().Trim();
                objResultVO.m_strAbnormal_Flag = p_objRow["ABNORMAL_FLAG_CHR"].ToString().Trim();
                if (Microsoft.VisualBasic.Information.IsDate(p_objRow["CHECK_DAT"]))
                {
                    objResultVO.m_strCheck_Dat = Convert.ToDateTime(p_objRow["CHECK_DAT"]).ToString("yyyy-MM-dd HH:mm:ss").Trim();
                }
                objResultVO.m_strClinicApp = p_objRow["CLINICAPP_VCHR"].ToString().Trim();
                objResultVO.m_strMemo      = p_objRow["MEMO_VCHR"].ToString().Trim();
                if (Microsoft.VisualBasic.Information.IsDate(p_objRow["CONFIRM_DAT"]))
                {
                    objResultVO.m_strConfirm_Dat = Convert.ToDateTime(p_objRow["CONFIRM_DAT"]).ToString("yyyy-MM-dd HH:mm:ss").Trim();
                }
                objResultVO.m_strDeviceID       = p_objRow["DEVICEID_CHR"].ToString().Trim();
                objResultVO.m_strPointliststr   = p_objRow["POINTLISTSTR_VCHR"].ToString().Trim();
                objResultVO.m_strSummary        = p_objRow["SUMMARY_VCHR"].ToString().Trim();
                objResultVO.m_intStatus         = Convert.ToInt32(p_objRow["STATUS_INT"].ToString().Trim());
                objResultVO.m_strChecker1       = p_objRow["CHECKER1_CHR"].ToString().Trim();
                objResultVO.m_strChecker2       = p_objRow["CHECKER2_CHR"].ToString().Trim();
                objResultVO.m_strConfirm_Person = p_objRow["CONFIRM_PERSON_CHR"].ToString().Trim();
                objResultVO.m_strOperator_ID    = p_objRow["OPERATOR_ID_CHR"].ToString().Trim();
                objResultVO.m_strCheck_DeptID   = p_objRow["CHECK_DEPTID_CHR"].ToString().Trim();
                objResultVO.m_strGroupID        = p_objRow["GROUPID_CHR"].ToString().Trim();
                objResultVO.m_strCheck_Item_ID  = p_objRow["CHECK_ITEM_ID_CHR"].ToString().Trim();
                objResultVO.m_strSample_ID      = p_objRow["SAMPLE_ID_CHR"].ToString().Trim();
                objResultVO.strGraphFormatName  = p_objRow["GRAPH_FORMAT_NAME_VCHR"].ToString().Trim();
                if (p_objRow["IS_GRAPH_RESULT_NUM"] != DBNull.Value)
                {
                    objResultVO.intIsGraphResult = Convert.ToInt32(p_objRow["IS_GRAPH_RESULT_NUM"]);
                }
                if (p_objRow["GRAPH_IMG"] != DBNull.Value)
                {
                    objResultVO.m_byaGraph = (byte[])p_objRow["GRAPH_IMG"];
                }
            }
            catch
            {
                objResultVO = null;
            }
            return(objResultVO);
        }
Ejemplo n.º 2
0
        /// <summary>
        /// 查询得到  CheckResultVO
        /// </summary>
        /// <param name="p_objPrincipal"></param>
        /// <param name="p_strSampleID"></param>
        /// <param name="p_strCheckItemID"></param>
        /// <param name="p_objResultVO"></param>
        /// <returns></returns>

        public long m_lngGetCheckResultVO(string p_strSampleID,
                                          string p_strCheckItemID, out clsCheckResult_VO p_objResultVO)
        {
            long lngRes = 0;

            p_objResultVO = null;

            com.digitalwave.iCare.middletier.LIS.clsQueryCheckResultSvc objSvc =
                (com.digitalwave.iCare.middletier.LIS.clsQueryCheckResultSvc)com.digitalwave.iCare.common.clsObjectGenerator.objCreatorObjectByType(typeof(com.digitalwave.iCare.middletier.LIS.clsQueryCheckResultSvc));
            lngRes = objSvc.m_lngGetCheckResultVO(
                objPrincipal, p_strSampleID, p_strCheckItemID, out p_objResultVO);
            //			objSvc.Dispose();

            return(lngRes);
        }
Ejemplo n.º 3
0
        public void m_mthContructResultVO(int p_intNum, List <clsAdvia2120ResultInf_VO> p_objResultList, out List <clsCheckResult_VO> p_objCheckResultVO, out List <clsT_OPR_LIS_APP_REPORT_VO> p_objRecordVOList, out List <string> p_strSampleIDArr, ref string p_strOriginDate)
        {
            p_objCheckResultVO = new List <clsCheckResult_VO>();
            p_objRecordVOList  = new List <clsT_OPR_LIS_APP_REPORT_VO>();
            p_strSampleIDArr   = new List <string>();
            p_strOriginDate    = DateTime.Now.ToString();
            if (p_objResultList.Count > 0)
            {
                #region 生成检验编号,并根据检验编号查出对应信息


                //根据酶标仪传入的样本号生成检验编号

                string strSQL1 = @"select a.application_id_chr, a.application_dat, a.application_form_no_chr,
                                          a.oringin_dat, b.sample_group_id_chr, a.modify_dat, b.sample_id_chr,
                                          c.check_item_id_chr, d.report_group_id_chr, e.check_item_name_vchr,
                                          e.check_item_name_vchr, e.check_item_english_name_vchr, e.unit_chr,
                                          f_getitemref_low (c.check_item_id_chr,
                                                            trim (a.age_chr),
                                                            trim (a.sex_chr),
                                                            'menses'
                                                           ) ref_min_val_vchr,
                                          f_getitemref_up (c.check_item_id_chr,
                                                           trim (a.age_chr),
                                                           trim (a.sex_chr),
                                                           'menses'
                                                          ) ref_max_val_vchr,
                                          f_getitemref_range (c.check_item_id_chr,
                                                              trim (a.age_chr),
                                                              trim (a.sex_chr),
                                                              'menses'
                                                             ) ref_value_range_vchr,
                                          f.device_check_item_id_chr, f.device_model_id_chr
                                    from t_opr_lis_application a,
                                         t_opr_lis_app_sample b,
                                         t_opr_lis_app_check_item c,
                                         t_opr_lis_app_report d,
                                         t_bse_lis_check_item e,
                                         t_bse_lis_check_item_dev_item f
                                    where a.application_id_chr = b.application_id_chr
                                      and a.application_id_chr = c.application_id_chr
                                      and a.application_id_chr = d.application_id_chr
                                      and a.application_id_chr = d.application_id_chr
                                      and a.application_form_no_chr in (";
                string strSQL2 = @")
                                      and a.pstatus_int > 0
                                      and c.check_item_id_chr = e.check_item_id_chr
                                      and d.status_int > 0
                                      and e.check_item_id_chr = f.check_item_id_chr(+)";


                clsHRPTableService           objHRPSvc   = new clsHRPTableService();
                DataTable                    dtResult    = new DataTable();
                System.Data.IDataParameter[] objParamArr = null;
                objHRPSvc.CreateDatabaseParameter(p_intNum, out objParamArr);
                System.Text.StringBuilder    sb  = new System.Text.StringBuilder();
                System.Collections.Hashtable has = new System.Collections.Hashtable();
                int n = 0;

                for (int i2 = 0; i2 < p_objResultList.Count; i2++)
                {
                    if (!has.ContainsKey(p_objResultList[i2].strCode))
                    {
                        has.Add(p_objResultList[i2].strCode, p_objResultList[i2].strCode);
                        sb.Append("?,");
                        objParamArr[n++].Value = p_objResultList[i2].strCode;                                  //参数
                    }
                }
                sb.Remove(sb.Length - 1, 1);
                string strSQL3 = sb.ToString();
                string strSQL  = strSQL1 + strSQL3 + strSQL2;                            //生成SQL语句
                objHRPSvc.lngGetDataTableWithParameters(strSQL, ref dtResult, objParamArr);
                DataView dv = new DataView(dtResult);
                has = new System.Collections.Hashtable();     //保存申请单下报告组的信息
                //<-----------------------------新增一个临时表 add in 11.28
                DataTable dtTmp = new DataTable();
                dtTmp.Columns.Add("application_id_chr");
                dtTmp.Columns.Add("check_item_id_chr");
                DataRow dr = null;
                //------------------------------------------->
                clsT_OPR_LIS_APP_REPORT_VO objReportTmp = null;

                #endregion

                clsCheckResult_VO objTemp = null;

                for (int i1 = 0; i1 < p_objResultList.Count; i1++)
                {
                    string strDeviceItemCode = ((p_objResultList[i1].m_strItemid.Length > 4) ? p_objResultList[i1].m_strItemid.Substring(0, 4) : p_objResultList[i1].m_strItemid);   //字符长度为4
                    dv.RowFilter = "application_form_no_chr = '" + p_objResultList[i1].strCode + "' and device_check_item_id_chr = '" + strDeviceItemCode + "' and device_model_id_chr = '" + p_objResultList[i1].strDeviceID + "'";
                    dv.Sort      = "application_dat desc";
                    if (dv.Count == 0)
                    {
                        p_objResultList.RemoveAt(i1);
                        i1--;
                        continue;
                    }

                    objTemp = new clsCheckResult_VO();
                    switch (p_objResultList[i1].intDataFormat)
                    {
                    case 1:
                        objTemp.intIsGraphResult   = 0;                                             //*  (-- *为必填)
                        objTemp.strGraphFormatName = null;
                        objTemp.m_byaGraph         = null;                                          //存放图像结果
                        objTemp.m_strResult        = p_objResultList[i1].num_value.ToString();
                        break;

                    case 0:
                        objTemp.intIsGraphResult   = 0;
                        objTemp.strGraphFormatName = null;
                        objTemp.m_byaGraph         = null;
                        objTemp.m_strResult        = p_objResultList[i1].chr_value;
                        break;

                    default:
                        objTemp.intIsGraphResult   = 1;
                        objTemp.strGraphFormatName = "lisb";
                        objTemp.m_byaGraph         = p_objResultList[i1].m_byaGraph;
                        objTemp.m_strResult        = null;
                        break;
                    }
                    objTemp.m_strModify_Dat             = DateTime.Now.ToString();                 //*
                    objTemp.m_strGroupID                = dv[0]["sample_group_id_chr"].ToString(); //检验组合编号(报告组)(*)
                    objTemp.m_strCheck_Item_ID          = dv[0]["check_item_id_chr"].ToString();   //检验项目编号(*)
                    objTemp.m_strSample_ID              = dv[0]["sample_id_chr"].ToString();       //样本联号:指样本中心的顺序编号(*)
                    objTemp.m_strUnit                   = dv[0]["unit_chr"].ToString();
                    objTemp.m_strDeviceID               = p_objResultList[i1].strDeviceID;
                    objTemp.m_strDevice_Check_Item_Name = p_objResultList[i1].strItemCode;   //检验仪器输出的检验结果的名称,或缩写。

                    objTemp.m_strRefrange = dv[0]["ref_value_range_vchr"].ToString();        //参考值范围

                    objTemp.m_strCheck_Item_Name = dv[0]["check_item_name_vchr"].ToString(); //检验项目名称

                    objTemp.m_strCheck_Item_English_Name = dv[0]["check_item_english_name_vchr"].ToString();
                    objTemp.m_strMin_Val        = dv[0]["ref_min_val_vchr"].ToString();
                    objTemp.m_strMax_Val        = dv[0]["ref_max_val_vchr"].ToString();
                    objTemp.m_strAbnormal_Flag  = null;
                    objTemp.m_strCheck_Dat      = p_objResultList[i1].strInputDate;
                    objTemp.m_strClinicApp      = null;
                    objTemp.m_strMemo           = null;
                    objTemp.m_strConfirm_Dat    = null;
                    objTemp.m_strPointliststr   = null;
                    objTemp.m_strSummary        = null;
                    objTemp.m_intStatus         = 1;                                        // 1-当前有效记录
                    objTemp.m_strChecker1       = null;
                    objTemp.m_strChecker2       = null;
                    objTemp.m_strConfirm_Person = null;
                    objTemp.m_strOperator_ID    = p_objResultList[i1].m_strOperator_ID;        //操作员工ID
                    objTemp.m_strCheck_DeptID   = null;
                    dr = dtTmp.NewRow();
                    dr["application_id_chr"] = dv[0]["application_id_chr"].ToString();
                    dr["check_item_id_chr"]  = dv[0]["check_item_id_chr"].ToString();
                    if (!has.ContainsKey(dv[0]["application_id_chr"].ToString()))
                    {
                        has.Add(dv[0]["application_id_chr"].ToString(), dv[0]["application_id_chr"].ToString());
                        objReportTmp = new clsT_OPR_LIS_APP_REPORT_VO();
                        objReportTmp.m_strREPORTOR_ID_CHR     = p_objResultList[i1].m_strOperator_ID;
                        objReportTmp.m_strSUMMARY_VCHR        = "";
                        objReportTmp.m_strXML_SUMMARY_VCHR    = "<r><D /><U /><S /></r>";
                        objReportTmp.m_strANNOTATION_VCHR     = "";
                        objReportTmp.m_strXML_ANNOTATION_VCHR = "<r><D /><U /><S /></r>";
                        objReportTmp.m_strREPORT_DAT          = DateTime.Now.ToString();
                        objReportTmp.m_intSTATUS_INT          = 1;
                        objReportTmp.m_strAPPLICATION_ID_CHR  = dv[0]["application_id_chr"].ToString();
                        objReportTmp.m_strCONFIRM_DAT         = null;
                        objReportTmp.m_strCONFIRMER_ID_CHR    = "";
                        objReportTmp.m_strOPERATOR_ID_CHR     = p_objResultList[i1].m_strOperator_ID;
                        objReportTmp.m_strREPORT_GROUP_ID_CHR = dv[0]["report_group_id_chr"].ToString();
                        p_strSampleIDArr.Add(dv[0]["sample_id_chr"].ToString());
                        if (DateTime.Parse(dv[0]["oringin_dat"].ToString()) < DateTime.Parse(p_strOriginDate))
                        {
                            p_strOriginDate = dv[0]["oringin_dat"].ToString();
                        }
                        p_objRecordVOList.Add(objReportTmp);
                    }
                    p_objCheckResultVO.Add(objTemp);
                    dtTmp.Rows.Add(dr);
                }
                //<-------------------------------------------------------------------------add in 11.29 插入没有结果的项目
                dtTmp.AcceptChanges();
                DataView dvTmp = new DataView(dtTmp);
                dv.RowFilter = "1=1";
                foreach (DataRowView objdv1 in dv)
                {
                    dvTmp.RowFilter = "application_id_chr = '" + objdv1["application_id_chr"].ToString() + "'";
                    if (dvTmp.Count > 0)
                    {
                        dvTmp.RowFilter = "application_id_chr = '" + objdv1["application_id_chr"].ToString() + "'and check_item_id_chr = '" + objdv1["check_item_id_chr"].ToString() + "'";
                        if (dvTmp.Count > 0)
                        {
                            continue;
                        }
                        else
                        {
                            objTemp = new clsCheckResult_VO();
                            objTemp.intIsGraphResult             = 0;
                            objTemp.strGraphFormatName           = null;
                            objTemp.m_byaGraph                   = null;
                            objTemp.m_strResult                  = null;
                            objTemp.m_strModify_Dat              = DateTime.Now.ToString();
                            objTemp.m_strGroupID                 = objdv1["sample_group_id_chr"].ToString();
                            objTemp.m_strCheck_Item_ID           = objdv1["check_item_id_chr"].ToString();
                            objTemp.m_strSample_ID               = objdv1["sample_id_chr"].ToString();
                            objTemp.m_strUnit                    = objdv1["unit_chr"].ToString();
                            objTemp.m_strDeviceID                = null;
                            objTemp.m_strDevice_Check_Item_Name  = null;
                            objTemp.m_strRefrange                = objdv1["ref_value_range_vchr"].ToString();
                            objTemp.m_strCheck_Item_Name         = objdv1["check_item_name_vchr"].ToString();
                            objTemp.m_strCheck_Item_English_Name = objdv1["check_item_english_name_vchr"].ToString();
                            objTemp.m_strMin_Val                 = objdv1["ref_min_val_vchr"].ToString();
                            objTemp.m_strMax_Val                 = objdv1["ref_max_val_vchr"].ToString();
                            objTemp.m_strAbnormal_Flag           = null;
                            objTemp.m_strCheck_Dat               = null;
                            objTemp.m_strClinicApp               = null;
                            objTemp.m_strMemo                    = null;
                            objTemp.m_strConfirm_Dat             = null;
                            objTemp.m_strPointliststr            = null;
                            objTemp.m_strSummary                 = null;
                            objTemp.m_intStatus                  = 1;
                            objTemp.m_strChecker1                = null;
                            objTemp.m_strChecker2                = null;
                            objTemp.m_strConfirm_Person          = null;
                            objTemp.m_strOperator_ID             = p_objResultList[0].m_strOperator_ID;
                            objTemp.m_strCheck_DeptID            = null;
                            p_objCheckResultVO.Add(objTemp);
                        }
                    }
                }
                //------------------------------------------------------------------------------------------->
            }
        }
Ejemplo n.º 4
0
        private void m_mthContructResultVO(int instrumentFlag, System.Collections.Generic.List <clsMBY2010VO> objResultArr, out clsCheckResult_VO[] p_objCheckResultVO, out List <string> p_strSampleIDArr, ref string p_strOriginDate)
        {
            p_objCheckResultVO = null;
            p_strSampleIDArr   = new List <string>();
            if (objResultArr.Count > 0)
            {
                #region 生成检验编号,并根据检验编号查出对应信息

                //根据酶标仪传入的样本号生成检验编号
                string strSQL1 = @"select a.application_id_chr, a.application_form_no_chr, a.oringin_dat,
                                          b.sample_group_id_chr, to_char (a.modify_dat, 'yyyymmdd') as sampdate,
                                          b.sample_id_chr, c.check_item_id_chr, d.report_group_id_chr,
                                          e.check_item_name_vchr,
                                          lower (e.check_item_name_vchr) as check_item_name, e.unit_chr,
                                          e.ref_value_range_vchr, e.ref_max_val_vchr, e.ref_min_val_vchr
                                     from t_opr_lis_application a,
                                          t_opr_lis_app_sample b,
                                          t_opr_lis_app_check_item c,
                                          t_opr_lis_app_report d,
                                          t_bse_lis_check_item e
                                    where a.application_id_chr = b.application_id_chr
                                      and a.application_id_chr = c.application_id_chr
                                      and a.application_id_chr = d.application_id_chr
                                      and a.application_id_chr = d.application_id_chr
                                      and a.application_form_no_chr in (";
                string strSQL2 = @")
                               and a.pstatus_int > 0
                               and c.check_item_id_chr = e.check_item_id_chr
                               and d.status_int > 0
                               and trunc (a.modify_dat) = trunc (to_date (?, 'yyyy-mm-dd hh24:mi:ss '))";


                clsHRPTableService           objHRPSvc   = new clsHRPTableService();
                DataTable                    dtResult    = new DataTable();
                System.Data.IDataParameter[] objParamArr = null;
                string strCheckNO = "";
                System.Collections.Hashtable has = new System.Collections.Hashtable();
                System.Text.StringBuilder    sb  = new System.Text.StringBuilder();

                if (instrumentFlag == 0)
                {
                    for (int i2 = 0; i2 < objResultArr.Count; i2++)
                    {
                        if (!has.ContainsKey(objResultArr[i2].m_strSampleId))
                        {
                            int intLength = objResultArr[i2].m_strSampleId.Length;
                            if (intLength < 11)
                            {
                                return;
                            }
                            string strTmp = "";
                            strTmp     = objResultArr[i2].m_strSampleId.Substring(intLength - 3, 3);
                            strCheckNO = objResultArr[i2].m_strDeviceId + strTmp;

                            objResultArr[i2].m_strApplication_From_NO = strCheckNO;
                            has.Add(objResultArr[i2].m_strSampleId, strCheckNO);
                        }
                    }
                    objHRPSvc.CreateDatabaseParameter(has.Count + 1, out objParamArr);
                    int i3 = 0;
                    foreach (object obj in has.Values)
                    {
                        sb.Append("?,");
                        objParamArr[i3++].Value = obj.ToString();
                    }
                    objParamArr[has.Count].Value = Convert.ToDateTime(objResultArr[0].m_strSampleId.Substring(objResultArr[0].m_strSampleId.Length - 11, 8)).ToShortDateString();
                    sb.Remove(sb.Length - 1, 1);
                    string strSQL3 = sb.ToString();
                    string strSQL  = strSQL1 + strSQL3 + strSQL2;                            //生成SQL语句
                    objHRPSvc.lngGetDataTableWithParameters(strSQL, ref dtResult, objParamArr);
                    DataView dv = new DataView(dtResult);

                    #endregion

                    has = new System.Collections.Hashtable();
                    p_objCheckResultVO = new clsCheckResult_VO[objResultArr.Count];
                    for (int i1 = 0; i1 < objResultArr.Count; i1++)
                    {
                        dv.RowFilter = "application_form_no_chr = '" + objResultArr[i1].m_strApplication_From_NO + "' and check_item_name like '%" + objResultArr[i1].m_strItemName.Substring(0, 5).ToLower() + "%' and sampdate = '" + objResultArr[i1].m_strSampleId.Substring(objResultArr[i1].m_strSampleId.Length - 11, 8) + "'";
                        if (dv.Count == 0)
                        {
                            objResultArr.RemoveAt(i1);
                            i1--;
                            continue;
                        }
                        p_objCheckResultVO[i1] = new clsCheckResult_VO();
                        p_objCheckResultVO[i1].intIsGraphResult             = 0;                                       //*  (-- *为必填)
                        p_objCheckResultVO[i1].strGraphFormatName           = null;
                        p_objCheckResultVO[i1].m_strModify_Dat              = DateTime.Now.ToString();                 //*
                        p_objCheckResultVO[i1].m_strGroupID                 = dv[0]["report_group_id_chr"].ToString(); //检验组合编号(报告组)(*)
                        p_objCheckResultVO[i1].m_strCheck_Item_ID           = dv[0]["check_item_id_chr"].ToString();   //检验项目编号(*)
                        p_objCheckResultVO[i1].m_strSample_ID               = dv[0]["sample_id_chr"].ToString();       //样本联号:指样本中心的顺序编号(*)
                        p_objCheckResultVO[i1].m_strResult                  = objResultArr[i1].m_strResult;
                        p_objCheckResultVO[i1].m_strUnit                    = dv[0]["unit_chr"].ToString();
                        p_objCheckResultVO[i1].m_strDeviceID                = objResultArr[i1].m_strDeviceId;
                        p_objCheckResultVO[i1].m_strDevice_Check_Item_Name  = objResultArr[i1].m_strItemName;           //检验仪器输出的检验结果的名称,或缩写。
                        p_objCheckResultVO[i1].m_strRefrange                = dv[0]["ref_value_range_vchr"].ToString(); //参考值范围
                        p_objCheckResultVO[i1].m_strCheck_Item_Name         = dv[0]["check_item_name_vchr"].ToString(); //检验项目名称
                        p_objCheckResultVO[i1].m_strCheck_Item_English_Name = null;
                        p_objCheckResultVO[i1].m_strMin_Val                 = dv[0]["ref_min_val_vchr"].ToString();
                        p_objCheckResultVO[i1].m_strMax_Val                 = dv[0]["ref_max_val_vchr"].ToString();
                        p_objCheckResultVO[i1].m_strAbnormal_Flag           = null;
                        p_objCheckResultVO[i1].m_strCheck_Dat               = null;
                        p_objCheckResultVO[i1].m_strClinicApp               = null;
                        p_objCheckResultVO[i1].m_strMemo                    = null;
                        p_objCheckResultVO[i1].m_strConfirm_Dat             = null;
                        p_objCheckResultVO[i1].m_strPointliststr            = null;
                        p_objCheckResultVO[i1].m_strSummary                 = null;
                        p_objCheckResultVO[i1].m_byaGraph                   = null;                            //存放图像结果
                        p_objCheckResultVO[i1].m_intStatus                  = 1;                               // 1-当前有效记录
                        p_objCheckResultVO[i1].m_strChecker1                = null;
                        p_objCheckResultVO[i1].m_strChecker2                = null;
                        p_objCheckResultVO[i1].m_strConfirm_Person          = null;
                        p_objCheckResultVO[i1].m_strOperator_ID             = objResultArr[i1].m_strOperator_ID; //操作员工ID
                        p_objCheckResultVO[i1].m_strCheck_DeptID            = null;
                        if (!has.ContainsKey(dv[0]["application_id_chr"].ToString()))
                        {
                            has.Add(dv[0]["application_id_chr"].ToString(), dv[0]["application_id_chr"].ToString());
                            p_strSampleIDArr.Add(dv[0]["sample_id_chr"].ToString());
                            if (DateTime.Parse(dv[0]["oringin_dat"].ToString()) < DateTime.Parse(p_strOriginDate))
                            {
                                p_strOriginDate = dv[0]["oringin_dat"].ToString();
                            }
                        }
                    }
                }
                else if (instrumentFlag == 1)
                {
                    for (int i2 = 0; i2 < objResultArr.Count; i2++)
                    {
                        if (!has.ContainsKey(objResultArr[i2].m_strSampleId))
                        {
                            string strTmp = "";
                            strTmp     = objResultArr[i2].m_strSampleId;
                            strCheckNO = objResultArr[i2].m_strDeviceId + strTmp;
                            objResultArr[i2].m_strApplication_From_NO = strCheckNO;
                            has.Add(objResultArr[i2].m_strSampleId, strCheckNO);
                        }
                        else
                        {
                            objResultArr[i2].m_strApplication_From_NO = strCheckNO;
                        }
                    }
                    objHRPSvc.CreateDatabaseParameter(has.Count + 1, out objParamArr);
                    int i3 = 0;
                    foreach (object obj in has.Values)
                    {
                        sb.Append("?,");
                        objParamArr[i3++].Value = obj.ToString();
                    }
                    objParamArr[has.Count].Value = p_strOriginDate;
                    sb.Remove(sb.Length - 1, 1);
                    string strSQL3 = sb.ToString();
                    string strSQL  = strSQL1 + strSQL3 + strSQL2;                            //生成SQL语句
                    objHRPSvc.lngGetDataTableWithParameters(strSQL, ref dtResult, objParamArr);
                    DataView dv = new DataView(dtResult);

                    has = new System.Collections.Hashtable();
                    System.Collections.ArrayList arrCheckRes = new System.Collections.ArrayList();
                    clsCheckResult_VO            objRes_VO   = null;
                    for (int i1 = 0; i1 < objResultArr.Count; i1++)
                    {
                        dv.RowFilter = "application_form_no_chr = '" + objResultArr[i1].m_strApplication_From_NO + "' and check_item_name like '%" + objResultArr[i1].m_strItemCode.ToLower() + "%'";
                        if (dv.Count == 0)
                        {
                            objResultArr.RemoveAt(i1);
                            i1--;
                            continue;
                        }
                        objRes_VO = new clsCheckResult_VO();
                        objRes_VO.intIsGraphResult             = 0;                                       //*  (-- *为必填)
                        objRes_VO.strGraphFormatName           = null;
                        objRes_VO.m_strModify_Dat              = DateTime.Now.ToString();                 //*
                        objRes_VO.m_strGroupID                 = dv[0]["sample_group_id_chr"].ToString(); //检验组合编号(报告组)(*)
                        objRes_VO.m_strCheck_Item_ID           = dv[0]["check_item_id_chr"].ToString();   //检验项目编号(*)
                        objRes_VO.m_strSample_ID               = dv[0]["sample_id_chr"].ToString();       //样本联号:指样本中心的顺序编号(*)
                        objRes_VO.m_strResult                  = objResultArr[i1].m_strResult;
                        objRes_VO.m_strUnit                    = dv[0]["unit_chr"].ToString();
                        objRes_VO.m_strDeviceID                = objResultArr[i1].m_strDeviceId;
                        objRes_VO.m_strDevice_Check_Item_Name  = objResultArr[i1].m_strItemName;           //检验仪器输出的检验结果的名称,或缩写。
                        objRes_VO.m_strRefrange                = dv[0]["ref_value_range_vchr"].ToString(); //参考值范围
                        objRes_VO.m_strCheck_Item_Name         = dv[0]["check_item_name_vchr"].ToString(); //检验项目名称
                        objRes_VO.m_strCheck_Item_English_Name = null;
                        objRes_VO.m_strMin_Val                 = dv[0]["ref_min_val_vchr"].ToString();
                        objRes_VO.m_strMax_Val                 = dv[0]["ref_max_val_vchr"].ToString();
                        objRes_VO.m_strAbnormal_Flag           = null;
                        objRes_VO.m_strCheck_Dat               = null;
                        objRes_VO.m_strClinicApp               = null;
                        objRes_VO.m_strMemo                    = null;
                        objRes_VO.m_strConfirm_Dat             = null;
                        objRes_VO.m_strPointliststr            = null;
                        objRes_VO.m_strSummary                 = null;
                        objRes_VO.m_byaGraph                   = null;                            //存放图像结果
                        objRes_VO.m_intStatus                  = 1;                               // 1-当前有效记录
                        objRes_VO.m_strChecker1                = null;
                        objRes_VO.m_strChecker2                = null;
                        objRes_VO.m_strConfirm_Person          = null;
                        objRes_VO.m_strOperator_ID             = objResultArr[i1].m_strOperator_ID; //操作员工ID
                        objRes_VO.m_strCheck_DeptID            = null;
                        arrCheckRes.Add(objRes_VO);
                        if (!has.ContainsKey(dv[0]["application_id_chr"].ToString()))
                        {
                            has.Add(dv[0]["application_id_chr"].ToString(), dv[0]["application_id_chr"].ToString());
                            p_strSampleIDArr.Add(dv[0]["sample_id_chr"].ToString());
                            if (DateTime.Parse(dv[0]["oringin_dat"].ToString()) < DateTime.Parse(p_strOriginDate))
                            {
                                p_strOriginDate = dv[0]["oringin_dat"].ToString();
                            }
                        }
                    }
                    p_objCheckResultVO = (clsCheckResult_VO[])arrCheckRes.ToArray(typeof(clsCheckResult_VO));
                }
                else
                {
                }
            }
        }