Exemple #1
0
 public override FinalizeTestResult Finish(AccessionOrder accessionOrder)
 {
     HER2AnalysisSummary.HER2AnalysisSummaryTest      test      = new HER2AnalysisSummary.HER2AnalysisSummaryTest();
     HER2AnalysisSummary.HER2AnalysisSummaryTestOrder testOrder = (HER2AnalysisSummary.HER2AnalysisSummaryTestOrder)accessionOrder.PanelSetOrderCollection.GetPanelSetOrder(test.PanelSetId, this.m_OrderedOnId, true);
     testOrder.SetValues(accessionOrder);
     return(base.Finish(accessionOrder));
 }
Exemple #2
0
        public override AuditResult IsOkToFinalize(AccessionOrder accessionOrder)
        {
            AuditResult result = new AuditResult();

            result.Status = AuditStatusEnum.OK;
            Rules.MethodResult methodResult = base.IsOkToFinalize();
            if (methodResult.Success == false)
            {
                result.Status  = AuditStatusEnum.Failure;
                result.Message = methodResult.Message;
            }

            if (result.Status == AuditStatusEnum.OK)
            {
                if (this.m_CellsCounted == 0)
                {
                    result.Status  = AuditStatusEnum.Failure;
                    result.Message = "Unable to final as Total Cells Counted is not set.";
                }
            }

            if (result.Status == AuditStatusEnum.OK)
            {
                if (this.m_Her2SignalsCounted == 0)
                {
                    result.Status  = AuditStatusEnum.Failure;
                    result.Message = "Unable to final as HER2 Signals Counted is not set.";
                }
            }

            if (result.Status == AuditStatusEnum.OK)
            {
                if (this.m_Chr17SignalsCounted == 0)
                {
                    result.Status  = AuditStatusEnum.Failure;
                    result.Message = "Unable to final as Chr17 Signals Counted is not set.";
                }
            }

            if (result.Status == AuditStatusEnum.OK)
            {
                HER2AnalysisSummary.HER2AnalysisSummaryTest test = new HER2AnalysisSummary.HER2AnalysisSummaryTest();
                if (accessionOrder.PanelSetOrderCollection.Exists(test.PanelSetId, this.m_OrderedOnId, true) == false)
                {
                    result.Status  = AuditStatusEnum.Failure;
                    result.Message = "Unable to finalize as a " + test.PanelSetName + " is required.";
                }
            }

            return(result);
        }
Exemple #3
0
 public override FinalizeTestResult Finish(AccessionOrder accessionOrder)
 {
     if (this.m_Score.Contains("2+") == false)
     {
         HER2AnalysisSummary.HER2AnalysisSummaryTest test = new HER2AnalysisSummary.HER2AnalysisSummaryTest();
         if (accessionOrder.PanelSetOrderCollection.Exists(test.PanelSetId, this.m_OrderedOnId, true) == true)
         {
             this.Distribute = false;
             HER2AnalysisSummary.HER2AnalysisSummaryTestOrder testOrder = (HER2AnalysisSummary.HER2AnalysisSummaryTestOrder)accessionOrder.PanelSetOrderCollection.GetPanelSetOrder(test.PanelSetId, this.m_OrderedOnId, true);
             testOrder.SetValues(accessionOrder);
         }
     }
     return(base.Finish(accessionOrder));
 }
        public override AuditResult IsOkToFinalize(AccessionOrder accessionOrder)
        {
            AuditResult result = new AuditResult();

            result.Status = AuditStatusEnum.OK;
            Rules.MethodResult methodResult = base.IsOkToFinalize();
            if (methodResult.Success == false)
            {
                result.Status  = AuditStatusEnum.Failure;
                result.Message = methodResult.Message;
            }

            if (result.Status == AuditStatusEnum.OK)
            {
                if (string.IsNullOrEmpty(this.m_Result) == true)
                {
                    result.Status  = AuditStatusEnum.Failure;
                    result.Message = "Unable to final as the result is not set.";
                }
            }

            if (result.Status == AuditStatusEnum.OK)
            {
                if (this.m_Result == HER2AmplificationResultEnum.Equivocal.ToString())
                {
                    Test.Her2AmplificationByIHC.Her2AmplificationByIHCTest her2AmplificationByIHCTest   = new Her2AmplificationByIHC.Her2AmplificationByIHCTest();
                    HER2AnalysisSummary.HER2AnalysisSummaryTest            her2AmplificationSummaryTest = new HER2AnalysisSummary.HER2AnalysisSummaryTest();
                    if (accessionOrder.PanelSetOrderCollection.Exists(her2AmplificationByIHCTest.PanelSetId, this.OrderedOnId, true) == false)
                    {
                        result.Status  = AuditStatusEnum.Warning;
                        result.Message = "This test will be finalized but not distributed as a " + her2AmplificationByIHCTest.PanelSetName +
                                         " is needed to determine the actual result and will be ordered." + Environment.NewLine + "A " + her2AmplificationSummaryTest.PanelSetName +
                                         " will be also be ordered and set for distribution.";
                    }
                }
            }

            return(result);
        }