Exemple #1
0
        private clsT_OPR_LIS_SAMPLE_VO ConstructSampleVO(clsLisApplMainVO p_objLisApplMainVO, string strBarcode)
        {
            clsT_OPR_LIS_SAMPLE_VO sampleVO = new clsT_OPR_LIS_SAMPLE_VO();

            sampleVO.m_strAPPL_DAT                 = p_objLisApplMainVO.m_strAppl_Dat;
            sampleVO.m_strSEX_CHR                  = p_objLisApplMainVO.m_strSex;
            sampleVO.m_strPATIENT_NAME_VCHR        = p_objLisApplMainVO.m_strPatient_Name;
            sampleVO.m_strPATIENT_SUBNO_CHR        = p_objLisApplMainVO.m_strPatient_SubNO;
            sampleVO.m_strAGE_CHR                  = p_objLisApplMainVO.m_strAge;
            sampleVO.m_strPATIENT_TYPE_CHR         = p_objLisApplMainVO.m_strPatientType;
            sampleVO.m_strDIAGNOSE_VCHR            = p_objLisApplMainVO.m_strDiagnose;
            sampleVO.m_strBEDNO_CHR                = p_objLisApplMainVO.m_strBedNO;
            sampleVO.m_strICD_VCHR                 = p_objLisApplMainVO.m_strICD;
            sampleVO.m_strPATIENTCARDID_CHR        = p_objLisApplMainVO.m_strPatientcardID;
            sampleVO.m_strPATIENTID_CHR            = p_objLisApplMainVO.m_strPatientID;
            sampleVO.m_strAPPL_EMPID_CHR           = p_objLisApplMainVO.m_strAppl_EmpID;
            sampleVO.m_strAPPL_DEPTID_CHR          = p_objLisApplMainVO.m_strAppl_DeptID;
            sampleVO.m_strAPPLICATION_ID_CHR       = p_objLisApplMainVO.m_strAPPLICATION_ID;
            sampleVO.m_strPATIENT_INHOSPITALNO_CHR = p_objLisApplMainVO.m_strPatient_inhospitalno_chr;
            sampleVO.m_strSAMPLE_TYPE_ID_CHR       = p_objLisApplMainVO.m_strSampleTypeID;
            sampleVO.m_strSAMPLETYPE_VCHR          = p_objLisApplMainVO.m_strSampleType;
            sampleVO.m_intSTATUS_INT               = 3;
            sampleVO.m_strQCSAMPLEID_CHR           = "-1";
            sampleVO.m_strSAMPLEKIND_CHR           = "1";
            sampleVO.m_strSAMPLE_ID_CHR            = null;
            sampleVO.m_strSAMPLESTATE_VCHR         = "";
            sampleVO.m_strBARCODE_VCHR             = strBarcode;
            sampleVO.m_strOPERATOR_ID_CHR          = p_objLisApplMainVO.m_strOperator_ID;
            sampleVO.m_strSAMPLING_DATE_DAT        = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss");
            sampleVO.m_strCOLLECTOR_ID_CHR         = null;
            sampleVO.m_strACCEPTOR_ID_CHR          = p_objLisApplMainVO.m_strOperator_ID;
            sampleVO.m_strACCEPT_DAT               = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss");

            return(sampleVO);
        }
Exemple #2
0
        public long m_lngGetReceptedSampleInfoByBarCode(string p_strBarCode, out clsT_OPR_LIS_SAMPLE_VO p_objRecord)
        {
            long lngRes = 0;

            com.digitalwave.iCare.middletier.LIS.clsQuerySampleSvc objSvc =
                (com.digitalwave.iCare.middletier.LIS.clsQuerySampleSvc)com.digitalwave.iCare.common.clsObjectGenerator.objCreatorObjectByType(typeof(com.digitalwave.iCare.middletier.LIS.clsQuerySampleSvc));
            lngRes = objSvc.m_lngGetReceptedSampleInfoByBarCode(objPrincipal, p_strBarCode, out p_objRecord);
//			objSvc.Dispose();
            return(lngRes);
        }
Exemple #3
0
        public long m_lngReceptSample(clsT_OPR_LIS_SAMPLE_VO p_objSampleVO, clsT_LIS_DeviceRelationVO p_objDeviceRelationVO)
        {
            long lngRes = 0;

            com.digitalwave.iCare.middletier.LIS.clsSampleSvc objSvc =
                (com.digitalwave.iCare.middletier.LIS.clsSampleSvc)com.digitalwave.iCare.common.clsObjectGenerator.objCreatorObjectByType(typeof(com.digitalwave.iCare.middletier.LIS.clsSampleSvc));
            lngRes = objSvc.m_lngReceptSample(objPrincipal, p_objSampleVO, p_objDeviceRelationVO);
//			objSvc.Dispose();
            return(lngRes);
        }
Exemple #4
0
        /// <summary>
        /// 增加一个样本,同时修改申请样本组
        /// </summary>
        /// <param name="p_objPrincipal"></param>
        /// <param name="p_strAppID"></param>
        /// <param name="p_objRecordVO"></param>
        /// <returns></returns>
        public long m_lngAddNewSampleAndModifyAppSampleGroup(
            string p_strAppID, ref clsT_OPR_LIS_SAMPLE_VO p_objRecordVO)
        {
            long lngRes = 0;

            com.digitalwave.iCare.middletier.LIS.clsSampleSvc objSvc =
                (com.digitalwave.iCare.middletier.LIS.clsSampleSvc)com.digitalwave.iCare.common.clsObjectGenerator.objCreatorObjectByType(typeof(com.digitalwave.iCare.middletier.LIS.clsSampleSvc));
            lngRes = objSvc.m_lngAddNewSampleAndModifyAppSampleGroup(objPrincipal,
                                                                     p_strAppID, ref p_objRecordVO);
            objSvc.Dispose();
            return(lngRes);
        }
Exemple #5
0
        /// <summary>
        /// 保存样本信息
        /// </summary>
        public long m_lngSave(string p_strAppID, ref clsT_OPR_LIS_SAMPLE_VO p_objSampleVO)
        {
            long lngRes = 0;

            try
            {
                lngRes = new clsDomainController_SampleManage().m_lngAddNewSampleAndModifyAppSampleGroup(p_strAppID, ref p_objSampleVO);
            }
            catch
            {
                lngRes = 0;
            }
            return(lngRes);
        }
Exemple #6
0
        /// <summary>
        /// 作废医嘱
        /// </summary>
        /// <param name="orderId">医嘱号</param>
        /// <param name="objSample">样本</param>
        public void GetLisSample(string orderId, ref clsT_OPR_LIS_SAMPLE_VO objSample)
        {
            objSample = null;
            clsLisApplMainVO patientInfo = null;
            long             lngRes      = clsLisServiceSmp.s_obj.m_lngGetApplVO(orderId, out patientInfo);

            if (patientInfo == null)
            {
                return;
            }

            if (!string.IsNullOrEmpty(patientInfo.m_strSampleID))
            {
                objSample = GetSample(patientInfo.m_strSampleID);
            }
        }
Exemple #7
0
        private void CheckSampleStatus(string sampleId)
        {
            clsT_OPR_LIS_SAMPLE_VO sample = GetSample(sampleId);

            if (sample != null)
            {
                int status = sample.m_intSTATUS_INT;
                // 4002开关:是否跳过样本的采集和核收
                // 0=不跳过, 1=跳过,2=跳过采集不跳过核收
                int intConfig = clsLisSetting.IsSkipCollectionReceive();

                switch (intConfig)
                {
                case 0:
                    if (status == 2)
                    {
                        if (!string.IsNullOrEmpty(sample.m_strBARCODE_VCHR))
                        {
                            throw new LisCreateApplyException("不允许删除已绑定条码的标本!");
                        }
                        else
                        {
                            //没有条码的样本的处理
                        }
                    }
                    if (status >= 3)
                    {
                        throw new LisCreateApplyException("不允许删除已经核收的标本!");
                    }
                    break;

                case 1:
                    if (status == 6)
                    {
                        throw new LisCreateApplyException("不允许删除已经审核的检验报告记录!");
                    }
                    break;

                case 2:
                    if (status >= 3)
                    {
                        throw new LisCreateApplyException("不允许删除已经核收的标本!");
                    }
                    break;
                }
            }
        }
Exemple #8
0
        public long m_lngFindSample(string strSampleID, out clsT_OPR_LIS_SAMPLE_VO sample)
        {
            long lngRes = 0;

            sample = null;

            clsQuerySampleSvc objSvc =
                (clsQuerySampleSvc)com.digitalwave.iCare.common.clsObjectGenerator.objCreatorObjectByType(typeof(clsQuerySampleSvc));

            clsT_OPR_LIS_SAMPLE_VO[] samples;
            lngRes = objSvc.m_lngGetSampleVOArrBySampleID(this.objPrincipal, strSampleID, out samples);
            if (samples != null && samples.Length > 0)
            {
                sample = samples[0];
            }

            return(lngRes);
        }
Exemple #9
0
        /// <summary>
        /// 根据样本Id获取样本VO
        /// </summary>
        /// <param name="p_strSampleID"></param>
        /// <param name="p_objSampleVO"></param>
        /// <returns></returns>
        public long m_lngGetSampleBySampleID(string p_strSampleID, out clsT_OPR_LIS_SAMPLE_VO p_objSampleVO)
        {
            long lngRes = 0;

            p_objSampleVO = null;
            clsT_OPR_LIS_SAMPLE_VO[] objSampleVOArr = null;
            try
            {
                lngRes = new clsDomainController_SampleManage().m_lngGetSampleVOArrBySampleID(p_strSampleID, out objSampleVOArr);
                if (lngRes > 0 && objSampleVOArr != null && objSampleVOArr.Length > 0)
                {
                    p_objSampleVO = objSampleVOArr[0];
                }
            }
            catch
            {
                lngRes        = 0;
                p_objSampleVO = null;
            }
            return(lngRes);
        }
Exemple #10
0
        public clsT_OPR_LIS_SAMPLE_VO m_objConstructSampleVO(DataRow objRow)
        {
            clsT_OPR_LIS_SAMPLE_VO objSampleVO = null;

            try
            {
                objSampleVO = new clsT_OPR_LIS_SAMPLE_VO();
                if (Microsoft.VisualBasic.Information.IsDate(objRow["APPL_DAT"]))
                {
                    objSampleVO.m_strAPPL_DAT = Convert.ToDateTime(objRow["APPL_DAT"]).ToString("yyyy-MM-dd HH:mm:ss").Trim();
                }
                objSampleVO.m_strSEX_CHR           = objRow["SEX_CHR"].ToString().Trim();
                objSampleVO.m_strPATIENT_NAME_VCHR = objRow["PATIENT_NAME_VCHR"].ToString().Trim();
                objSampleVO.m_strPATIENT_SUBNO_CHR = objRow["PATIENT_SUBNO_CHR"].ToString().Trim();
                objSampleVO.m_strAGE_CHR           = objRow["AGE_CHR"].ToString().Trim();
                objSampleVO.m_strPATIENT_TYPE_CHR  = objRow["PATIENT_TYPE_CHR"].ToString().Trim();
                objSampleVO.m_strDIAGNOSE_VCHR     = objRow["DIAGNOSE_VCHR"].ToString().Trim();
                objSampleVO.m_strSAMPLETYPE_VCHR   = objRow["SAMPLETYPE_VCHR"].ToString().Trim();
                objSampleVO.m_strSAMPLESTATE_VCHR  = objRow["SAMPLESTATE_VCHR"].ToString().Trim();
                objSampleVO.m_strBEDNO_CHR         = objRow["BEDNO_CHR"].ToString().Trim();
                objSampleVO.m_strICD_VCHR          = objRow["ICD_VCHR"].ToString().Trim();
                objSampleVO.m_strPATIENTCARDID_CHR = objRow["PATIENTCARDID_CHR"].ToString().Trim();
                objSampleVO.m_strBARCODE_VCHR      = objRow["BARCODE_VCHR"].ToString().Trim();
                objSampleVO.m_strSAMPLE_ID_CHR     = objRow["SAMPLE_ID_CHR"].ToString().Trim();
                objSampleVO.m_strPATIENTID_CHR     = objRow["PATIENTID_CHR"].ToString().Trim();
                if (Microsoft.VisualBasic.Information.IsDate(objRow["SAMPLING_DATE_DAT"]))
                {
                    objSampleVO.m_strSAMPLING_DATE_DAT = Convert.ToDateTime(objRow["SAMPLING_DATE_DAT"]).ToString("yyyy-MM-dd HH:mm:ss").Trim();
                }
                objSampleVO.m_strOPERATOR_ID_CHR = objRow["OPERATOR_ID_CHR"].ToString().Trim();
                if (Microsoft.VisualBasic.Information.IsDate(objRow["MODIFY_DAT"]))
                {
                    objSampleVO.m_strMODIFY_DAT = Convert.ToDateTime(objRow["MODIFY_DAT"]).ToString("yyyy-MM-dd HH:mm:ss").Trim();
                }
                objSampleVO.m_strAPPL_EMPID_CHR     = objRow["APPL_EMPID_CHR"].ToString().Trim();
                objSampleVO.m_strAPPL_DEPTID_CHR    = objRow["APPL_DEPTID_CHR"].ToString().Trim();
                objSampleVO.m_intSTATUS_INT         = Convert.ToInt32(objRow["STATUS_INT"].ToString().Trim());
                objSampleVO.m_strSAMPLE_TYPE_ID_CHR = objRow["SAMPLE_TYPE_ID_CHR"].ToString().Trim();
                objSampleVO.m_strQCSAMPLEID_CHR     = objRow["QCSAMPLEID_CHR"].ToString().Trim();
                objSampleVO.m_strSAMPLEKIND_CHR     = objRow["SAMPLEKIND_CHR"].ToString().Trim();
                if (Microsoft.VisualBasic.Information.IsDate(objRow["CHECK_DATE_DAT"]))
                {
                    objSampleVO.m_strCHECK_DATE_DAT = Convert.ToDateTime(objRow["CHECK_DATE_DAT"]).ToString("yyyy-MM-dd HH:mm:ss").Trim();
                }
                if (Microsoft.VisualBasic.Information.IsDate(objRow["ACCEPT_DAT"]))
                {
                    objSampleVO.m_strACCEPT_DAT = Convert.ToDateTime(objRow["ACCEPT_DAT"]).ToString("yyyy-MM-dd HH:mm:ss").Trim();
                }
                objSampleVO.m_strACCEPTOR_ID_CHR          = objRow["ACCEPTOR_ID_CHR"].ToString().Trim();
                objSampleVO.m_strAPPLICATION_ID_CHR       = objRow["APPLICATION_ID_CHR"].ToString().Trim();
                objSampleVO.m_strPATIENT_INHOSPITALNO_CHR = objRow["PATIENT_INHOSPITALNO_CHR"].ToString().Trim();
                if (Microsoft.VisualBasic.Information.IsDate(objRow["CONFIRM_DAT"]))
                {
                    objSampleVO.m_strCONFIRM_DAT = Convert.ToDateTime(objRow["CONFIRM_DAT"]).ToString("yyyy-MM-dd HH:mm:ss").Trim();
                }
                objSampleVO.m_strCONFIRMER_ID_CHR     = objRow["CONFIRMER_ID_CHR"].ToString().Trim();
                objSampleVO.m_strCOLLECTOR_ID_CHR     = objRow["COLLECTOR_ID_CHR"].ToString().Trim();
                objSampleVO.m_strCHECKER_ID_CHR       = objRow["CHECKER_ID_CHR"].ToString().Trim();
                objSampleVO.m_strSendsample_empid_chr = objRow["sendsample_empid_chr"].ToString().Trim();
            }
            catch
            {
                objSampleVO = null;
            }
            return(objSampleVO);
        }
Exemple #11
0
        public long m_lngAddNewAppAndSampleInfoWithBarcode(
            IPrincipal principal,
            clsLisApplMainVO applMain, out clsLisApplMainVO applMainOut,
            clsT_OPR_LIS_APP_REPORT_VO[] arrReports, clsT_OPR_LIS_APP_SAMPLE_VO[] arrSamples,
            clsT_OPR_LIS_APP_CHECK_ITEM_VO[] arrCheckItems, clsT_OPR_LIS_APP_APPLY_UNIT_VO[] arrApplyUnits,
            clsLisAppUnitItemVO[] arrUnitItemRelations)
        {
            applMainOut = applMain;
            long lngRes  = 0;
            long lngReff = 0;

            if (applMain == null)
            {
                return(-2);
            }

            try
            {
                lngRes   = 0;
                lngRes   = m_lngAddNewAppl(applMain, out applMainOut);
                applMain = applMainOut;

                if (lngRes > 0)
                {
                    #region 赋申请单ID
                    for (int i = 0; i < arrReports.Length; i++)
                    {
                        arrReports[i].m_strAPPLICATION_ID_CHR = applMain.m_strAPPLICATION_ID;
                    }
                    for (int i = 0; i < arrSamples.Length; i++)
                    {
                        arrSamples[i].m_strAPPLICATION_ID_CHR = applMain.m_strAPPLICATION_ID;
                    }
                    for (int i = 0; i < arrCheckItems.Length; i++)
                    {
                        arrCheckItems[i].m_strAPPLICATION_ID_CHR = applMain.m_strAPPLICATION_ID;
                    }
                    for (int i = 0; i < arrApplyUnits.Length; i++)
                    {
                        arrApplyUnits[i].m_strAPPLICATION_ID_CHR = applMain.m_strAPPLICATION_ID;
                    }
                    for (int i = 0; i < arrUnitItemRelations.Length; i++)
                    {
                        arrUnitItemRelations[i].m_strAPPLICATION_ID_CHR = applMain.m_strAPPLICATION_ID;
                    }
                    #endregion
                }
                if (lngRes > 0)
                {
                    lngRes = 0;
                    lngRes = m_lngAddNewReportGroup(arrReports);
                }
                if (lngRes > 0)
                {
                    lngRes = 0;
                    lngRes = m_lngAddNewAppSampleGroup(arrSamples);
                }
                if (lngRes > 0)
                {
                    lngRes = 0;
                    lngRes = m_lngAddNewAppCheckItem(arrCheckItems);
                }
                if (lngRes > 0)
                {
                    lngRes = 0;
                    lngRes = m_lngAddNewAppApplyUint(arrApplyUnits);
                }
                if (lngRes > 0)
                {
                    lngRes = 0;
                    lngRes = m_lngAddNewAppUintItemArr(arrUnitItemRelations);
                }
                if (lngRes > 0)
                {
                    //自动生成barcode号
                    clsHRPTableService objHRPSvc  = new clsHRPTableService();
                    string             strSQL     = @"select seq_lis_barcode.nextval from dual";
                    DataTable          dtResult   = new DataTable();
                    string             strBarcode = "";
                    lngRes = 0;
                    lngRes = objHRPSvc.lngGetDataTableWithoutParameters(strSQL, ref dtResult);
                    if (lngRes > 0)
                    {
                        if (dtResult.Rows[0][0] == System.DBNull.Value)
                        {
                            strBarcode = "";
                        }
                        else
                        {
                            strBarcode = dtResult.Rows[0][0].ToString();
                        }
                    }
                    dtResult  = null;
                    objHRPSvc = null;

                    clsT_OPR_LIS_SAMPLE_VO objSampleVO = new clsT_OPR_LIS_SAMPLE_VO();

                    #region 构造SampleVO

                    objSampleVO.m_strAPPL_DAT                 = applMain.m_strAppl_Dat;
                    objSampleVO.m_strSEX_CHR                  = applMain.m_strSex;
                    objSampleVO.m_strPATIENT_NAME_VCHR        = applMain.m_strPatient_Name;
                    objSampleVO.m_strPATIENT_SUBNO_CHR        = applMain.m_strPatient_SubNO;
                    objSampleVO.m_strAGE_CHR                  = applMain.m_strAge;
                    objSampleVO.m_strPATIENT_TYPE_CHR         = applMain.m_strPatientType;
                    objSampleVO.m_strDIAGNOSE_VCHR            = applMain.m_strDiagnose;
                    objSampleVO.m_strBEDNO_CHR                = applMain.m_strBedNO;
                    objSampleVO.m_strICD_VCHR                 = applMain.m_strICD;
                    objSampleVO.m_strPATIENTCARDID_CHR        = applMain.m_strPatientcardID;
                    objSampleVO.m_strPATIENTID_CHR            = applMain.m_strPatientID;
                    objSampleVO.m_strAPPL_EMPID_CHR           = applMain.m_strAppl_EmpID;
                    objSampleVO.m_strAPPL_DEPTID_CHR          = applMain.m_strAppl_DeptID;
                    objSampleVO.m_strAPPLICATION_ID_CHR       = applMain.m_strAPPLICATION_ID;
                    objSampleVO.m_strPATIENT_INHOSPITALNO_CHR = applMain.m_strPatient_inhospitalno_chr;
                    objSampleVO.m_strSAMPLE_TYPE_ID_CHR       = applMain.m_strSampleTypeID;
                    objSampleVO.m_strSAMPLETYPE_VCHR          = applMain.m_strSampleType;
                    objSampleVO.m_intSTATUS_INT               = 3;
                    objSampleVO.m_strQCSAMPLEID_CHR           = "-1";

                    objSampleVO.m_strSAMPLEKIND_CHR = "1";
                    objSampleVO.m_strSAMPLE_ID_CHR  = null;

                    objSampleVO.m_strSAMPLESTATE_VCHR = "";

                    if (strBarcode.Trim() != "")
                    {
                        strBarcode = strBarcode.PadLeft(9, '0');
                    }

                    objSampleVO.m_strBARCODE_VCHR = strBarcode;

                    objSampleVO.m_strOPERATOR_ID_CHR = applMain.m_strOperator_ID;

                    objSampleVO.m_strSAMPLING_DATE_DAT = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss");

                    objSampleVO.m_strCOLLECTOR_ID_CHR = null;

                    objSampleVO.m_strACCEPTOR_ID_CHR = applMain.m_strOperator_ID;

                    objSampleVO.m_strACCEPT_DAT = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss");

                    #endregion

                    lngRes = 0;
                    lngRes = new clsSampleSvc().m_lngAddNewSampleAndModifyAppSampleGroup(principal, objSampleVO.m_strAPPLICATION_ID_CHR, objSampleVO);
                    for (int i = 0; i < arrSamples.Length; i++)
                    {
                        arrSamples[i].m_strSAMPLE_ID_CHR = objSampleVO.m_strSAMPLE_ID_CHR;
                    }
                }
                if (lngRes <= 0)
                {
                    throw new Exception(string.Empty);
                }
            }
            catch (Exception objEx)
            {
                new clsLogText().LogError(objEx);
                throw objEx;
            }

            return(lngRes);
        }
Exemple #12
0
        public long m_lngAddNewAppAndSampleInfoWithBarcode(IPrincipal p_objPrincipal, clsLisApplMainVO p_objLisApplMainVO,
                                                           out clsLisApplMainVO p_objLisApplMainOutVO, clsT_OPR_LIS_APP_REPORT_VO[] p_objReportArr,
                                                           clsT_OPR_LIS_APP_SAMPLE_VO[] p_objAppSampleArr, clsT_OPR_LIS_APP_CHECK_ITEM_VO[] p_objAppItemArr,
                                                           clsT_OPR_LIS_APP_APPLY_UNIT_VO[] p_objAppUnitArr, clsLisAppUnitItemVO[] p_objAppUnitItemArr)
        {
            p_objLisApplMainOutVO = p_objLisApplMainVO;
            long lngRes = 0;

            if (p_objLisApplMainVO == null)
            {
                throw new Exception("检验申请单信息为空!");
            }

            try
            {
                lngRes = 0;
                lngRes = m_lngAddNewAppl(p_objLisApplMainVO, out p_objLisApplMainOutVO);

                p_objLisApplMainVO = p_objLisApplMainOutVO;

                #region 赋申请单ID

                if (lngRes > 0)
                {
                    for (int i = 0; i < p_objReportArr.Length; i++)
                    {
                        p_objReportArr[i].m_strAPPLICATION_ID_CHR = p_objLisApplMainVO.m_strAPPLICATION_ID;
                    }

                    for (int i = 0; i < p_objAppSampleArr.Length; i++)
                    {
                        p_objAppSampleArr[i].m_strAPPLICATION_ID_CHR = p_objLisApplMainVO.m_strAPPLICATION_ID;
                    }

                    for (int i = 0; i < p_objAppItemArr.Length; i++)
                    {
                        p_objAppItemArr[i].m_strAPPLICATION_ID_CHR = p_objLisApplMainVO.m_strAPPLICATION_ID;
                    }

                    for (int i = 0; i < p_objAppUnitArr.Length; i++)
                    {
                        p_objAppUnitArr[i].m_strAPPLICATION_ID_CHR = p_objLisApplMainVO.m_strAPPLICATION_ID;
                    }

                    for (int i = 0; i < p_objAppUnitItemArr.Length; i++)
                    {
                        p_objAppUnitItemArr[i].m_strAPPLICATION_ID_CHR = p_objLisApplMainVO.m_strAPPLICATION_ID;
                    }
                }

                #endregion

                #region 生成报告单、样本组、检验项目表信息

                if (lngRes > 0)
                {
                    lngRes = 0;
                    lngRes = m_lngInsertAppReportRecord(p_objReportArr);
                }
                if (lngRes > 0)
                {
                    lngRes = 0;
                    lngRes = m_lngAddNewAppSampleGroup(p_objAppSampleArr);
                }
                if (lngRes > 0)
                {
                    lngRes = 0;
                    lngRes = m_lngAddNewAppCheckItem(p_objAppItemArr);
                }
                if (lngRes > 0)
                {
                    lngRes = 0;
                    lngRes = m_lngAddNewAppApplyUint(p_objAppUnitArr);
                }
                if (lngRes > 0)
                {
                    lngRes = 0;
                    lngRes = m_lngAddNewAppUintItemArr(p_objAppUnitItemArr);
                }

                #endregion

                if (lngRes > 0)
                {
                    //自动生成barcode号

                    clsHRPTableService objHRPSvc  = new clsHRPTableService();
                    string             strSQL     = @"select seq_lis_barcode.NEXTVAL from dual";
                    DataTable          dtResult   = new DataTable();
                    string             strBarcode = "";

                    lngRes = 0;
                    lngRes = objHRPSvc.lngGetDataTableWithoutParameters(strSQL, ref dtResult);
                    if (lngRes > 0)
                    {
                        if (dtResult.Rows[0][0] == System.DBNull.Value)
                        {
                            strBarcode = "";
                        }
                        else
                        {
                            strBarcode = dtResult.Rows[0][0].ToString();
                        }
                    }

                    clsT_OPR_LIS_SAMPLE_VO objSampleVO = ConstructSampleVO(p_objLisApplMainVO, strBarcode);

                    lngRes = new clsSampleSvc().m_lngAddNewSampleAndModifyAppSampleGroup(p_objPrincipal, objSampleVO.m_strAPPLICATION_ID_CHR, objSampleVO);

                    for (int i = 0; i < p_objAppSampleArr.Length; i++)
                    {
                        p_objAppSampleArr[i].m_strSAMPLE_ID_CHR = objSampleVO.m_strSAMPLE_ID_CHR;
                    }
                }

                if (lngRes <= 0)
                {
                    throw new Exception("生成申请单失败!");
                }
            }
            catch (Exception ex)
            {
                ThrowException(ex);
            }

            return(lngRes);
        }
Exemple #13
0
 public void m_mthGetLisSample(string p_orderId, out clsT_OPR_LIS_SAMPLE_VO p_objSample)
 {
     p_objSample = null;
     service.GetLisSample(p_orderId, ref p_objSample);
 }