public static PNHResult GetResult(PNHTestOrder pnhTestOrder, YellowstonePathology.Business.Test.AccessionOrder accessionOrder) { PNHResult result = new PNHResult(); List<YellowstonePathology.Business.Test.AccessionOrder> accessionOrders = result.GetPreviousAccessions(accessionOrder.PatientId); result.SetTotals(pnhTestOrder); if (result.IsNegativeWithPreviousPositiveResult(accessionOrders, pnhTestOrder.MasterAccessionNo, pnhTestOrder.OrderDate.Value) == true) { result = new PNHNegativeWithPreviousPositiveResult(); } else if (result.IsPersistentResult(accessionOrders, pnhTestOrder.MasterAccessionNo, pnhTestOrder.OrderDate.Value) == true) { result = new PNHPersistentPositiveResult(); } else if (result.IsNegativeResult == true) { result = new PNHNegativeResult(); } else if (result.IsSmallPositiveResult == true) { result = new PNHSmallPositiveResult(); } else if (result.IsSignificantPositiveResult == true) { result = new PNHSignificantPositiveResult(); } else if (result.IsGpiDeficientResult == true) { result = new PNHGpiDeficientResult(); } result.SetTotals(pnhTestOrder); return result; }
public static PNHResult GetResult(PNHTestOrder pnhTestOrder, YellowstonePathology.Business.Test.AccessionOrder accessionOrder) { PNHResult result = new PNHResult(); List <YellowstonePathology.Business.Test.AccessionOrder> accessionOrders = result.GetPreviousAccessions(accessionOrder.PatientId); result.SetTotals(pnhTestOrder); if (result.IsNegativeWithPreviousPositiveResult(accessionOrders, pnhTestOrder.MasterAccessionNo, pnhTestOrder.OrderDate.Value) == true) { result = new PNHNegativeWithPreviousPositiveResult(); } else if (result.IsPersistentResult(accessionOrders, pnhTestOrder.MasterAccessionNo, pnhTestOrder.OrderDate.Value) == true) { result = new PNHPersistentPositiveResult(); } else if (result.IsNegativeResult == true) { result = new PNHNegativeResult(); } else if (result.IsSmallPositiveResult == true) { result = new PNHSmallPositiveResult(); } else if (result.IsSignificantPositiveResult == true) { result = new PNHSignificantPositiveResult(); } else if (result.IsGpiDeficientResult == true) { result = new PNHGpiDeficientResult(); } result.SetTotals(pnhTestOrder); return(result); }