コード例 #1
0
ファイル: VOConstruct.cs プロジェクト: timsanc/HIS
        public clsT_OPR_LIS_APP_REPORT_VO m_objConstructAppReportVO(System.Data.DataRow p_objRow)
        {
            clsT_OPR_LIS_APP_REPORT_VO objAppReportVO = new clsT_OPR_LIS_APP_REPORT_VO();

            try
            {
                objAppReportVO.m_strAPPLICATION_ID_CHR  = p_objRow["APPLICATION_ID_CHR"].ToString().Trim();
                objAppReportVO.m_strREPORT_GROUP_ID_CHR = p_objRow["REPORT_GROUP_ID_CHR"].ToString().Trim();
                if (Microsoft.VisualBasic.Information.IsDate(p_objRow["MODIFY_DAT"]))
                {
                    objAppReportVO.m_strMODIFY_DAT = Convert.ToDateTime(p_objRow["MODIFY_DAT"]).ToString("yyyy-MM-dd HH:mm:ss").Trim();
                }
                objAppReportVO.m_strSUMMARY_VCHR     = p_objRow["SUMMARY_VCHR"].ToString().Trim();
                objAppReportVO.m_strOPERATOR_ID_CHR  = p_objRow["OPERATOR_ID_CHR"].ToString().Trim();
                objAppReportVO.m_intSTATUS_INT       = int.Parse(p_objRow["STATUS_INT"].ToString().Trim());
                objAppReportVO.m_strXML_SUMMARY_VCHR = p_objRow["XML_SUMMARY_VCHR"].ToString().Trim();
                if (Microsoft.VisualBasic.Information.IsDate(p_objRow["REPORT_DAT"]))
                {
                    objAppReportVO.m_strREPORT_DAT = Convert.ToDateTime(p_objRow["REPORT_DAT"]).ToString("yyyy-MM-dd HH:mm:ss").Trim();
                }
                objAppReportVO.m_strREPORTOR_ID_CHR = p_objRow["REPORTOR_ID_CHR"].ToString().Trim();
                if (Microsoft.VisualBasic.Information.IsDate(p_objRow["CONFIRM_DAT"]))
                {
                    objAppReportVO.m_strCONFIRM_DAT = Convert.ToDateTime(p_objRow["CONFIRM_DAT"]).ToString("yyyy-MM-dd HH:mm:ss").Trim();
                }
                objAppReportVO.m_strCONFIRMER_ID_CHR    = p_objRow["CONFIRMER_ID_CHR"].ToString().Trim();
                objAppReportVO.m_strXML_ANNOTATION_VCHR = p_objRow["XML_ANNOTATION_VCHR"].ToString().Trim();
                objAppReportVO.m_strANNOTATION_VCHR     = p_objRow["ANNOTATION_VCHR"].ToString().Trim();
            }
            catch
            {
                objAppReportVO = null;
            }
            return(objAppReportVO);
        }
コード例 #2
0
        private void AddReport(ref List <clsT_OPR_LIS_APP_REPORT_VO> lstReports, string unitId)
        {
            ApplyUnitDetail   detail           = m_dicApplyUnitDetail[unitId];
            clsReportGroup_VO objReportGroupVO = detail.ReportGroup;

            bool   isExist       = false;
            string reportGroupId = objReportGroupVO.strReportGroupID;

            foreach (clsT_OPR_LIS_APP_REPORT_VO report in lstReports)
            {
                if (report.m_strREPORT_GROUP_ID_CHR == reportGroupId)
                {
                    isExist = true;
                    break;
                }
            }

            if (!isExist)
            {
                clsT_OPR_LIS_APP_REPORT_VO reportVO = new clsT_OPR_LIS_APP_REPORT_VO();
                reportVO.m_strREPORT_GROUP_ID_CHR = reportGroupId;
                //初始化状态
                reportVO.m_intSTATUS_INT = 1;
                lstReports.Add(reportVO);
            }
        }
コード例 #3
0
ファイル: clsLisInterface.cs プロジェクト: ewin66/HIS
        /// <summary>
        /// 创建申请单的报告组【3】
        /// </summary>
        private void m_mthGenerateAppReports()
        {
            clsAppSampleGroupCollection objSampleGroups = m_objGenerateAppSampleGroups();

            foreach (clsLIS_AppSampleGroup objAppSampleGroup in objSampleGroups)
            {
                bool blnAppReportGroupExist = false;

                clsReportGroup_VO objReportGroupVO = null;
                long lngRes = clsReportGroupSmp.s_obj.m_lngGetReportGoupVO(objAppSampleGroup.m_ObjDataVO.m_strSAMPLE_GROUP_ID_CHR, out objReportGroupVO);

                if (lngRes > 0 && objReportGroupVO != null)
                {
                    objAppSampleGroup.m_ObjDataVO.m_strREPORT_GROUP_ID_CHR = objReportGroupVO.strReportGroupID;
                    foreach (clsLIS_AppCheckItem objAppCheckItem in objAppSampleGroup.m_ObjAppCheckItems)
                    {
                        objAppCheckItem.m_ObjDataVO.m_strREPORT_GROUP_ID_CHR = objReportGroupVO.strReportGroupID;
                    }

                    foreach (clsLIS_AppCheckReport objAppCheckReport in this.m_objAppReports)
                    {
                        if (objAppCheckReport.m_ObjCheckReport.m_ObjDataVO.strReportGroupID == objReportGroupVO.strReportGroupID)
                        {
                            objAppCheckReport.m_ObjAppSampleGroups.Add(objAppSampleGroup);
                            System.Collections.ArrayList arlSGID = new System.Collections.ArrayList();
                            if (objAppCheckReport.m_ObjDataVO.m_strSampleGroupIDArr != null)
                            {
                                arlSGID.AddRange(objAppCheckReport.m_ObjDataVO.m_strSampleGroupIDArr);
                            }
                            arlSGID.Add(objAppSampleGroup.m_StrSampleGroupID);
                            objAppCheckReport.m_ObjDataVO.m_strSampleGroupIDArr = (string[])arlSGID.ToArray(typeof(string));
                            blnAppReportGroupExist = true;
                            break;
                        }
                    }
                    if (!blnAppReportGroupExist)
                    {
                        clsLIS_CheckReport objCheckReport = new clsLIS_CheckReport();
                        objCheckReport.m_ObjDataVO = objReportGroupVO;
                        clsT_OPR_LIS_APP_REPORT_VO objAppReportVO = new clsT_OPR_LIS_APP_REPORT_VO();
                        clsLIS_AppCheckReport      objAppReport   = new clsLIS_AppCheckReport(objAppReportVO);
                        objAppReport.m_ObjCheckReport   = objCheckReport;
                        objAppReport.m_StrReportGroupID = objCheckReport.m_ObjDataVO.strReportGroupID;
                        objAppReport.m_ObjAppSampleGroups.Add(objAppSampleGroup);
                        objAppReport.m_ObjDataVO.m_strSampleGroupIDArr = new string[] { objAppSampleGroup.m_StrSampleGroupID };
                        objAppReport.m_IntStatus = 1;

                        m_objAppReports.Add(objAppReport);
                    }
                }
            }
        }
コード例 #4
0
ファイル: clsQueryAdvis2120Svc.cs プロジェクト: timsanc/HIS
        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);
                        }
                    }
                }
                //------------------------------------------------------------------------------------------->
            }
        }
コード例 #5
0
ファイル: frmLISResult.cs プロジェクト: ewin66/HIS
        private void listView1_Click(object sender, System.EventArgs e)
        {
            if (this.listView1.SelectedItems.Count <= 0)
            {
                return;
            }
            clsLISPatientCheckResultInfoVO obj = (clsLISPatientCheckResultInfoVO)this.listView1.SelectedItems[0].Tag;

            if (obj == null)
            {
                return;
            }
            clsLisApplMainVO AMVO = obj.m_objApp;

            if (AMVO != null)
            {
                try
                {
                    this.dateTimePicker1.Value = DateTime.Parse(AMVO.m_strAppl_Dat.ToString());
                }
                catch
                {
                    this.dateTimePicker1.Value = DateTime.Now;
                }
            }
            ///////////////////////////////////////////
            clsT_OPR_LIS_APP_REPORT_VO LARVO = obj.m_objAppReport;

            if (LARVO != null)
            {
                textBox2.Text = LARVO.m_strSUMMARY_VCHR;
                try
                {
                    this.dateTimePicker2.Value = DateTime.Parse(LARVO.m_strREPORT_DAT.ToString());
                }
                catch
                {
                    this.dateTimePicker2.Value = DateTime.Now;
                }
            }
///////////////////////////////////
            clsCheckResult_VO[] CRVO = obj.m_objResults;
            if (CRVO != null)
            {
                ListViewItem lv;
                listView2.Items.Clear();
                for (int i = 0; i < CRVO.Length; i++)
                {
                    if (CRVO[i] == null)
                    {
                        continue;
                    }

                    lv = new ListViewItem(CRVO[i].m_strCheck_Item_Name);
                    lv.SubItems.Add(CRVO[i].m_strUnit);
                    lv.SubItems.Add(CRVO[i].m_strResult);
                    lv.SubItems.Add(CRVO[i].m_strRefrange);
                    switch (CRVO[i].m_strUnit.Trim())
                    {
                    case "H":
                        lv.SubItems.Add("偏高");
                        lv.BackColor = Color.Red;
                        break;

                    case "L":
                        lv.SubItems.Add("偏低");
                        lv.BackColor = Color.Yellow;
                        break;

                    default:
                        lv.SubItems.Add("");
                        break;
                    }

                    listView2.Items.Add(lv);
                }
            }
        }