Пример #1
0
        private void AddSampleGroup(ref List <clsT_OPR_LIS_APP_SAMPLE_VO> lstSamples, string unitId)
        {
            ApplyUnitDetail   detail        = m_dicApplyUnitDetail[unitId];
            clsSampleGroup_VO sampleGroup   = detail.SampleGroup;
            string            sampleGroupId = sampleGroup.strSampleGroupID;

            clsT_OPR_LIS_APP_SAMPLE_VO sampleGroupVO = new clsT_OPR_LIS_APP_SAMPLE_VO();

            sampleGroupVO.m_strSAMPLE_GROUP_ID_CHR = sampleGroupId;

            bool isExist = false;

            foreach (clsT_OPR_LIS_APP_SAMPLE_VO sample in lstSamples)
            {
                if (sample.m_strSAMPLE_GROUP_ID_CHR == sampleGroupId)
                {
                    isExist = true;
                    break;
                }
            }

            if (!isExist)
            {
                sampleGroupVO.m_strREPORT_GROUP_ID_CHR = detail.ReportGroup.strReportGroupID;
                lstSamples.Add(sampleGroupVO);
            }
        }
Пример #2
0
        public long m_lngAddNewAppSampleGroup(clsT_OPR_LIS_APP_SAMPLE_VO[] p_objRecordVOArr)
        {
            long   lngRes  = 0;
            long   lngReff = 0;
            string sql     = @" insert into t_opr_lis_app_sample (
                                                              application_id_chr,
                                                              sample_group_id_chr,
                                                              report_group_id_chr,
                                                              sample_id_chr
                                                             ) 
                                                      values (?,?,?,?) ";

            try
            {
                clsHRPTableService objHRPSvc = new clsHRPTableService();

                bool isNull = p_objRecordVOArr == null || p_objRecordVOArr.Length == 0;
                if (isNull)
                {
                    throw new Exception(string.Format("要生成的申请单下要做的标本组为空!{0}", clsTip.ErrorMessageTip));
                }

                #region 循环赋值


                for (int i = 0; i < p_objRecordVOArr.Length; i++)
                {
                    clsT_OPR_LIS_APP_SAMPLE_VO sampleVO = p_objRecordVOArr[i];
                    if (sampleVO != null)
                    {
                        lngRes = 0;
                        IDataParameter[] arrParams = null;
                        objHRPSvc.CreateDatabaseParameter(4, out arrParams);

                        arrParams[0].Value = sampleVO.m_strAPPLICATION_ID_CHR;
                        arrParams[1].Value = sampleVO.m_strSAMPLE_GROUP_ID_CHR;
                        arrParams[2].Value = sampleVO.m_strREPORT_GROUP_ID_CHR;
                        arrParams[3].Value = sampleVO.m_strSAMPLE_ID_CHR;

                        lngRes = objHRPSvc.lngExecuteParameterSQL(sql, ref lngReff, arrParams);
                    }
                }

                #endregion

                objHRPSvc.Dispose();
            }
            catch (Exception objEx)
            {
                new clsLogText().LogError(objEx);
            }
            return(lngRes);
        }
Пример #3
0
        /// <summary>
        /// 形成申请单报告组的标本组【4】
        /// </summary>
        /// <returns></returns>
        private clsAppSampleGroupCollection m_objGenerateAppSampleGroups()
        {
            m_objGenerateAppUnitItems();

            clsAppSampleGroupCollection objSampleGroups = new clsAppSampleGroupCollection();

            foreach (clsLIS_AppApplyUnit objAppUnit in m_objAppApplyUnits)
            {
                // 样本组是否存在
                bool blnAppSampleGroupExist = false;

                clsSampleGroup_VO objSampleGroupVO = null;
                long lngRes = clsSampleGroupSmp.s_obj.m_lngGetSampleGoupVO(objAppUnit.m_StrApplyUnitID, out objSampleGroupVO);

                if (lngRes > 0 && objSampleGroupVO != null)
                {
                    clsLIS_AppSampleGroup objAppSampleGroup = null;
                    foreach (clsLIS_AppSampleGroup obj in objSampleGroups)
                    {
                        if (obj.m_ObjSampleGroup.m_ObjDataVO.strSampleGroupID == objSampleGroupVO.strSampleGroupID)
                        {
                            objAppSampleGroup      = obj;
                            blnAppSampleGroupExist = true;
                            break;
                        }
                    }

                    if (!blnAppSampleGroupExist)
                    {
                        clsLIS_SampleGroup objSampleGroup = new clsLIS_SampleGroup();
                        objSampleGroup.m_ObjDataVO = objSampleGroupVO;
                        clsT_OPR_LIS_APP_SAMPLE_VO objAppSampleGroupVO = new clsT_OPR_LIS_APP_SAMPLE_VO();
                        clsLIS_AppSampleGroup      objAppSGroup        = new clsLIS_AppSampleGroup(objAppSampleGroupVO);
                        objAppSGroup.m_ObjSampleGroup   = objSampleGroup;
                        objAppSGroup.m_StrSampleGroupID = objSampleGroup.m_ObjDataVO.strSampleGroupID;
                        objSampleGroups.Add(objAppSGroup);
                        objAppSampleGroup = objAppSGroup;
                    }

                    System.Collections.ArrayList arlSU = new System.Collections.ArrayList();

                    if (objAppSampleGroup.m_ObjAppUnitArr != null)
                    {
                        arlSU.AddRange(objAppSampleGroup.m_ObjAppUnitArr);
                    }

                    arlSU.Add(objAppUnit);
                    objAppSampleGroup.m_ObjAppUnitArr = (clsLIS_AppApplyUnit[])arlSU.ToArray(typeof(clsLIS_AppApplyUnit));

                    for (int i = 0; i < objAppUnit.m_ObjItemArr.Length; i++)
                    {
                        bool blnItemExist = false;
                        foreach (clsLIS_AppCheckItem objAppItem in objAppSampleGroup.m_ObjAppCheckItems)
                        {
                            if (objAppItem.m_StrCheckItemID == objAppUnit.m_ObjItemArr[i].m_strCHECK_ITEM_ID_CHR)
                            {
                                blnItemExist = true;
                                break;
                            }
                        }
                        if (!blnItemExist)
                        {
                            clsT_OPR_LIS_APP_CHECK_ITEM_VO objAppItemVO    = new clsT_OPR_LIS_APP_CHECK_ITEM_VO();
                            clsLIS_AppCheckItem            objAppCheckItem = new clsLIS_AppCheckItem(objAppItemVO);

                            objAppCheckItem.m_StrCheckItemID   = objAppUnit.m_ObjItemArr[i].m_strCHECK_ITEM_ID_CHR;
                            objAppCheckItem.m_StrSampleGroupID = objAppSampleGroup.m_StrSampleGroupID;
                            objAppSampleGroup.m_ObjAppCheckItems.Add(objAppCheckItem);
                        }
                    }
                }
            }
            return(objSampleGroups);
        }