public static KRASStandardReflexResult GetResult(string reportNo, YellowstonePathology.Business.Test.AccessionOrder accessionOrder) { KRASStandardReflexResult result = null; YellowstonePathology.Business.Test.KRASStandardReflex.KRASStandardReflexTestOrder krasStandardReflexTestOrder = (YellowstonePathology.Business.Test.KRASStandardReflex.KRASStandardReflexTestOrder)accessionOrder.PanelSetOrderCollection.GetPanelSetOrder(reportNo); YellowstonePathology.Business.Test.KRASStandard.KRASStandardTest krasStandardTest = new KRASStandard.KRASStandardTest(); YellowstonePathology.Business.Test.KRASStandard.KRASStandardTestOrder krasStandardTestOrder = (YellowstonePathology.Business.Test.KRASStandard.KRASStandardTestOrder)accessionOrder.PanelSetOrderCollection.GetPanelSetOrder(krasStandardTest.PanelSetId, krasStandardReflexTestOrder.OrderedOnId, true); YellowstonePathology.Business.Test.BRAFV600EK.BRAFV600EKTest brafV600EKTest = new BRAFV600EK.BRAFV600EKTest(); if (accessionOrder.PanelSetOrderCollection.Exists(brafV600EKTest.PanelSetId, krasStandardReflexTestOrder.OrderedOnId, true) == false) { result = new KRASStandardReflexKRASOnlyResult(reportNo, accessionOrder); } else { YellowstonePathology.Business.Test.BRAFV600EK.BRAFV600EKTestOrder brafV600EKTestOrder = (YellowstonePathology.Business.Test.BRAFV600EK.BRAFV600EKTestOrder)accessionOrder.PanelSetOrderCollection.GetPanelSetOrder(brafV600EKTest.PanelSetId, krasStandardReflexTestOrder.OrderedOnId, true); YellowstonePathology.Business.Test.BRAFV600EK.BRAFV600EKNotDetectedResult brafV600EKNotDetectedResult = new BRAFV600EK.BRAFV600EKNotDetectedResult(); YellowstonePathology.Business.Test.KRASStandard.KRASStandardNotDetectedResult krasStandardNotDetectedResult = new KRASStandard.KRASStandardNotDetectedResult(); YellowstonePathology.Business.Test.BRAFV600EK.BRAFV600EKDetectedResult brafV600EKDetectedResult = new BRAFV600EK.BRAFV600EKDetectedResult(); if (krasStandardTestOrder.ResultCode == krasStandardNotDetectedResult.ResultCode && brafV600EKTestOrder.ResultCode == brafV600EKNotDetectedResult.ResultCode) { result = new KRASStandardReflexBothNotDetectedResult(reportNo, accessionOrder); } else if (krasStandardTestOrder.ResultCode == krasStandardNotDetectedResult.ResultCode && brafV600EKTestOrder.ResultCode == brafV600EKDetectedResult.ResultCode) { result = new KRASStandardReflexKRASNotDetecedBRAFDetectedResult(reportNo, accessionOrder); } else { result = new KRASStandardReflexKRASWithBRAFResult(reportNo, accessionOrder); } } return(result); }
public static KRASStandardReflexResult GetResult(string reportNo, YellowstonePathology.Business.Test.AccessionOrder accessionOrder) { KRASStandardReflexResult result = null; YellowstonePathology.Business.Test.KRASStandardReflex.KRASStandardReflexTestOrder krasStandardReflexTestOrder = (YellowstonePathology.Business.Test.KRASStandardReflex.KRASStandardReflexTestOrder)accessionOrder.PanelSetOrderCollection.GetPanelSetOrder(reportNo); YellowstonePathology.Business.Test.KRASStandard.KRASStandardTest krasStandardTest = new KRASStandard.KRASStandardTest(); YellowstonePathology.Business.Test.KRASStandard.KRASStandardTestOrder krasStandardTestOrder = (YellowstonePathology.Business.Test.KRASStandard.KRASStandardTestOrder)accessionOrder.PanelSetOrderCollection.GetPanelSetOrder(krasStandardTest.PanelSetId, krasStandardReflexTestOrder.OrderedOnId, true); YellowstonePathology.Business.Test.BRAFV600EK.BRAFV600EKTest brafV600EKTest = new BRAFV600EK.BRAFV600EKTest(); if (accessionOrder.PanelSetOrderCollection.Exists(brafV600EKTest.PanelSetId, krasStandardReflexTestOrder.OrderedOnId, true) == false) { result = new KRASStandardReflexKRASOnlyResult(reportNo, accessionOrder); } else { YellowstonePathology.Business.Test.BRAFV600EK.BRAFV600EKTestOrder brafV600EKTestOrder = (YellowstonePathology.Business.Test.BRAFV600EK.BRAFV600EKTestOrder)accessionOrder.PanelSetOrderCollection.GetPanelSetOrder(brafV600EKTest.PanelSetId, krasStandardReflexTestOrder.OrderedOnId, true); YellowstonePathology.Business.Test.BRAFV600EK.BRAFV600EKNotDetectedResult brafV600EKNotDetectedResult = new BRAFV600EK.BRAFV600EKNotDetectedResult(); YellowstonePathology.Business.Test.KRASStandard.KRASStandardNotDetectedResult krasStandardNotDetectedResult = new KRASStandard.KRASStandardNotDetectedResult(); YellowstonePathology.Business.Test.BRAFV600EK.BRAFV600EKDetectedResult brafV600EKDetectedResult = new BRAFV600EK.BRAFV600EKDetectedResult(); if (krasStandardTestOrder.ResultCode == krasStandardNotDetectedResult.ResultCode && brafV600EKTestOrder.ResultCode == brafV600EKNotDetectedResult.ResultCode) { result = new KRASStandardReflexBothNotDetectedResult(reportNo, accessionOrder); } else if (krasStandardTestOrder.ResultCode == krasStandardNotDetectedResult.ResultCode && brafV600EKTestOrder.ResultCode == brafV600EKDetectedResult.ResultCode) { result = new KRASStandardReflexKRASNotDetecedBRAFDetectedResult(reportNo, accessionOrder); } else { result = new KRASStandardReflexKRASWithBRAFResult(reportNo, accessionOrder); } } return result; }