public void Setup()
 {
     _referralRequestResult = new ITKConfirmationViewModel()
     {
         OutcomeGroup = new OutcomeGroup()
     };
 }
        public ReferralResultViewModel BuildDuplicateResult(ITKConfirmationViewModel itkConfirmationViewModel)
        {
            if (itkConfirmationViewModel == null)
            {
                throw new ArgumentNullException("itkConfirmationViewModel");
            }

            if (itkConfirmationViewModel.OutcomeGroup != null)
            {
                if (itkConfirmationViewModel.OutcomeGroup.Is999NonUrgent)
                {
                    return(new Call999DuplicateReferralResultViewModel(itkConfirmationViewModel));
                }

                if (itkConfirmationViewModel.OutcomeGroup.IsEDCallback)
                {
                    return(new AccidentAndEmergencyDuplicateReferralResultViewModel(itkConfirmationViewModel));
                }

                if (itkConfirmationViewModel.OutcomeGroup.IsClinicianCallback)
                {
                    return(new ClinicianDuplicateReferralResultViewModel(itkConfirmationViewModel));
                }

                if (itkConfirmationViewModel.OutcomeGroup.IsServiceFirst)
                {
                    //Temporarily removed until status of Dupe bug is known https://trello.com/c/5hqJVLDv
                    return(new TemporaryServiceFirstDuplicateReferralResultViewModel(itkConfirmationViewModel));
                }

                if (itkConfirmationViewModel.OutcomeGroup.IsPharmacy)
                {
                    return(new PharmacyReferralDuplicateResultViewModel(itkConfirmationViewModel));
                }

                if (itkConfirmationViewModel.OutcomeGroup.IsAccidentAndEmergencySexualAssault)
                {
                    return(new AccidentAndEmergencySexualAssaultDuplicateReferralResultViewModel(itkConfirmationViewModel));
                }
            }
            //Temporarily removed until status of Dupe bug is known https://trello.com/c/5hqJVLDv
            // return new DuplicateReferralResultViewModel(itkConfirmationViewModel); Temporarily removed until status of Dupe bug is known
            return(new TemporaryReferralDuplicateReferralResultViewModel(itkConfirmationViewModel));
        }
        public ReferralResultViewModel BuildFailureResult(ITKConfirmationViewModel itkConfirmationViewModel)
        {
            if (itkConfirmationViewModel == null)
            {
                throw new ArgumentNullException("itkConfirmationViewModel");
            }

            if (itkConfirmationViewModel.OutcomeGroup != null)
            {
                if (itkConfirmationViewModel.OutcomeGroup.Is999NonUrgent)
                {
                    return(new Call999ReferralFailureResultViewModel(itkConfirmationViewModel));
                }
                if (itkConfirmationViewModel.OutcomeGroup.IsEDCallback)
                {
                    return(new AccidentAndEmergencyReferralFailureResultViewModel(itkConfirmationViewModel));
                }
                if (itkConfirmationViewModel.OutcomeGroup.IsClinicianCallback)
                {
                    return(new ClinicianReferralFailureResultViewModel(itkConfirmationViewModel));
                }
                if (itkConfirmationViewModel.OutcomeGroup.IsCoronaVirusCallback)
                {
                    return(new Coronavirus111CallbackReferralFailureResultViewModel(itkConfirmationViewModel));
                }
                if (itkConfirmationViewModel.OutcomeGroup.IsServiceFirst)
                {
                    return(new ServiceFirstReferralFailureResultViewModel(itkConfirmationViewModel));
                }
                if (itkConfirmationViewModel.OutcomeGroup.IsPharmacy)
                {
                    return(new PharmacyReferralFailureResultsViewModel(itkConfirmationViewModel));
                }
                if (itkConfirmationViewModel.OutcomeGroup.IsAccidentAndEmergencySexualAssault)
                {
                    return(new AccidentAndEmergencySexualAssaultReferralFailureResultViewModel(itkConfirmationViewModel));
                }
            }

            return(new ReferralFailureResultViewModel(itkConfirmationViewModel));
        }
        public ReferralResultViewModel Build(ITKConfirmationViewModel itkConfirmationViewModel)
        {
            if (itkConfirmationViewModel == null)
            {
                throw new ArgumentNullException("outcomeModel");
            }

            if (itkConfirmationViewModel.HasAcceptedCallbackOffer.HasValue && itkConfirmationViewModel.HasAcceptedCallbackOffer.Value)
            {
                itkConfirmationViewModel.WaitTimeText = _dx334WaitTimeText; //todo data drive the 334 outcome
            }
            if (itkConfirmationViewModel.ItkSendSuccess.HasValue && itkConfirmationViewModel.ItkSendSuccess.Value)
            {
                return(BuildConfirmationResult(itkConfirmationViewModel));
            }

            if (itkConfirmationViewModel.ItkDuplicate.HasValue && itkConfirmationViewModel.ItkDuplicate.Value)
            {
                return(BuildDuplicateResult(itkConfirmationViewModel));
            }

            return(BuildFailureResult(itkConfirmationViewModel));
        }
Exemplo n.º 5
0
 public CoronaReferralConfirmationResultViewModel(ITKConfirmationViewModel itkConfirmationViewModel) : base(itkConfirmationViewModel)
 {
     AnalyticsDataLayer = new CoronaReferralFailureAnalyticsDataLayer(this);
 }
Exemplo n.º 6
0
 public TemporaryServiceFirstDuplicateReferralResultViewModel(
     ITKConfirmationViewModel itkConfirmationViewModel)
     : base(itkConfirmationViewModel)
 {
     AnalyticsDataLayer = new ServiceFirstDuplicateReferralAnalyticsDataLayer(this);
 }
 public ClinicianDuplicateReferralResultViewModel(ITKConfirmationViewModel itkConfirmationViewModel)
     : base(itkConfirmationViewModel)
 {
     AnalyticsDataLayer = new ClinicianDuplicateReferralAnalyticsDataLayer(this);
 }
 public ServiceFirstReferralConfirmationResultsViewModel(ITKConfirmationViewModel itkConfirmationViewModel)
     : base(itkConfirmationViewModel)
 {
     AnalyticsDataLayer = new ServiceFirstReferralConfirmationAnalyticsDataLayer(this);
 }
Exemplo n.º 9
0
 public PharmacyReferralFailureResultsViewModel(ITKConfirmationViewModel itkConfirmationViewModel)
     : base(itkConfirmationViewModel)
 {
     AnalyticsDataLayer = new PharmacyReferralFailureAnalyticsDataLayer(this);
 }
 public AccidentAndEmergencySexualAssaultReferralConfirmationResultViewModel(ITKConfirmationViewModel itkConfirmationViewModel)
     : base(itkConfirmationViewModel)
 {
     AnalyticsDataLayer = new AccidentAndEmergencySexualAssaultReferralConfirmationAnalyticsDataLayer(this);
 }
Exemplo n.º 11
0
 public ClinicianCallbackReferralConfirmationResultViewModel(ITKConfirmationViewModel itkConfirmationViewModel)
     : base(itkConfirmationViewModel)
 {
     AnalyticsDataLayer = new ClinicianCallbackReferralConfirmationAnalyticsDataLayer(this);
 }
 public Coronavirus111CallbackReferralConfirmationResultsViewModel(ITKConfirmationViewModel itkConfirmationViewModel)
     : base(itkConfirmationViewModel)
 {
     AnalyticsDataLayer = new Coronavirus111CallbackReferralConfirmationAnalyticsDataLayer(this);
 }
 public AccidentAndEmergencyDuplicateReferralResultViewModel(ITKConfirmationViewModel itkConfirmationViewModel)
     : base(itkConfirmationViewModel)
 {
     AnalyticsDataLayer = new AccidentAndEmergencyDuplicateReferralAnalyticsDataLayer(this);
 }
 public ReferralConfirmationResultViewModel(ITKConfirmationViewModel itkConfirmationViewModel)
     : base(itkConfirmationViewModel)
 {
     AnalyticsDataLayer = new ReferralConfirmationResultAnalyticsDataLayer(this);
 }