public bool HasPostGDPRMerchandisingCodes(IContactPreference preference)
        {
            var code = $"{preference.ContPrefType}{preference.ContPrefCode}";

            return(code.CaseInsensitiveEquals(ContactPreference.AgreesContactCoursesOrOpportunitiesPostGDPR) ||
                   code.CaseInsensitiveEquals(ContactPreference.AgreesContactSurveysAndResearchPostGDPR));
        }
Exemplo n.º 2
0
 public IEnumerable <IErrorMessageParameter> BuildMessageParametersFor(IContactPreference thisPreference)
 {
     return(new[]
     {
         BuildErrorMessageParameter(PropertyNameConstants.ContPrefType, thisPreference.ContPrefType),
         BuildErrorMessageParameter(PropertyNameConstants.ContPrefCode, thisPreference.ContPrefCode)
     });
 }
Exemplo n.º 3
0
 public IEnumerable <IErrorMessageParameter> BuildMessageParametersFor(IContactPreference thisPreference, DateTime disqualifyingStart)
 {
     return(new[]
     {
         BuildErrorMessageParameter(PropertyNameConstants.DerivedData_06, disqualifyingStart),
         BuildErrorMessageParameter(PropertyNameConstants.ContPrefType, thisPreference.ContPrefType),
         BuildErrorMessageParameter(PropertyNameConstants.ContPrefCode, thisPreference.ContPrefCode)
     });
 }
        /// <summary>
        /// Raises the validation message.
        /// </summary>
        /// <param name="learnRefNumber">The learn reference number.</param>
        /// <param name="thisPreference">this preference.</param>
        public void RaiseValidationMessage(string learnRefNumber, IContactPreference thisPreference)
        {
            var parameters = Collection.Empty <IErrorMessageParameter>();

            parameters.Add(_messageHandler.BuildErrorMessageParameter(nameof(thisPreference.ContPrefType), thisPreference.ContPrefType));
            parameters.Add(_messageHandler.BuildErrorMessageParameter(nameof(thisPreference.ContPrefCode), thisPreference.ContPrefCode));

            _messageHandler.Handle(RuleName, learnRefNumber, null, parameters);
        }
Exemplo n.º 5
0
 public ContactPreference BuildContactPreference(int ukprn, ILearner learner, IContactPreference contactPreference)
 {
     return(new ContactPreference
     {
         UKPRN = ukprn,
         LearnRefNumber = learner.LearnRefNumber,
         ContPrefCode = contactPreference.ContPrefCode,
         ContPrefType = contactPreference.ContPrefType
     });
 }
        public void RaiseValidationMessage(string learnRefNumber, IContactPreference thisPreference)
        {
            var parameters = new List <IErrorMessageParameter>
            {
                _messageHandler.BuildErrorMessageParameter(nameof(thisPreference.ContPrefType), thisPreference.ContPrefType),
                _messageHandler.BuildErrorMessageParameter(nameof(thisPreference.ContPrefCode), thisPreference.ContPrefCode)
            };

            _messageHandler.Handle(RuleName, learnRefNumber, null, parameters);
        }
 /// <summary>
 /// Determines whether [has disqualifying contact indicator] [the specified preference].
 /// </summary>
 /// <param name="preference">The preference.</param>
 /// <returns>
 ///   <c>true</c> if [has disqualifying contact indicator] [the specified preference]; otherwise, <c>false</c>.
 /// </returns>
 public bool HasDisqualifyingContactIndicator(IContactPreference preference) =>
 It.IsInRange(
     $"{preference.ContPrefType}{preference.ContPrefCode}",
     ContactPreference.NoContactByPostPreGDPR,
     ContactPreference.NoContactByPhonePreGDPR,
     ContactPreference.NoContactByEmailPreGDPR,
     ContactPreference.AgreesContactByPostPostGDPR,
     ContactPreference.AgreesContactByPhonePostGDPR,
     ContactPreference.AgreesContactByEmailPostGDPR,
     ContactPreference.NoContactCoursesOrOpportunitiesPreGDPR,
     ContactPreference.NoContactSurveysAndResearchPreGDPR,
     ContactPreference.AgreesContactCoursesOrOpportunitiesPostGDPR,
     ContactPreference.AgreesContactSurveysAndResearchPostGDPR);
 public static ContactPreference BuildInvalidContactPreference(
     int ukprn,
     ILearner ilrLearner,
     IContactPreference contactPreference,
     int learnerId,
     int contactPreferenceId)
 {
     return(new ContactPreference
     {
         ContactPreference_Id = contactPreferenceId,
         Learner_Id = learnerId,
         UKPRN = ukprn,
         LearnRefNumber = ilrLearner.LearnRefNumber,
         ContPrefCode = contactPreference.ContPrefCode,
         ContPrefType = contactPreference.ContPrefType
     });
 }
Exemplo n.º 9
0
 public bool IsNotValid(IContactPreference preference, DateTime earliestStart) =>
 HasDisqualifyingContactPreference(preference, earliestStart);
Exemplo n.º 10
0
 public bool HasDisqualifyingContactPreference(IContactPreference preference, DateTime candidate) =>
 !_lookups.IsCurrent(TypeOfLimitedLifeLookup.ContPrefType, $"{preference.ContPrefType}{preference.ContPrefCode}", candidate);
Exemplo n.º 11
0
 public void RaiseValidationMessage(string learnRefNumber, IContactPreference thisPreference)
 {
     HandleValidationError(learnRefNumber, null, BuildMessageParametersFor(thisPreference));
 }
Exemplo n.º 12
0
 public bool IsNotValid(IContactPreference preference) =>
 HasDisqualifyingContactPreference(preference);
Exemplo n.º 13
0
 public bool HasDisqualifyingContactPreference(IContactPreference preference) =>
 !_lookups.Contains(TypeOfLimitedLifeLookup.ContPrefType, $"{preference.ContPrefType}{preference.ContPrefCode}");
 public bool HasDisqualifyingContactIndicator(IContactPreference preference) =>
 _contactPreferences.Contains($"{preference.ContPrefType}{preference.ContPrefCode}");
 private void PopulateContactPreferences(int ukprn, ILearner learner, IContactPreference contactPreference, ValidLearnerData validLearnerData)
 {
     validLearnerData.RecordsValidContactPreferences.Add(ContactPreferenceBuilder.BuildValidContactPreference(ukprn, learner, contactPreference));
 }
 public bool HasRestrictedContactIndicator(IContactPreference preference) =>
 _contactRestrictions.Contains($"{preference.ContPrefType}{preference.ContPrefCode}");
Exemplo n.º 17
0
 public void RaiseValidationMessage(string learnRefNumber, IContactPreference thisPreference, DateTime disqualifyingStart)
 {
     HandleValidationError(learnRefNumber, null, BuildMessageParametersFor(thisPreference, disqualifyingStart));
 }
Exemplo n.º 18
0
 private void PopulateContactPreferences(int ukprn, ILearner learner, IContactPreference contactPreference, int learnerId, int contactPreferenceId, InvalidLearnerData invalidLearnerData)
 {
     invalidLearnerData.RecordsInvalidContactPreferences.Add(ContactPreferenceBuilder.BuildInvalidContactPreference(ukprn, learner, contactPreference, learnerId, contactPreferenceId));
 }
 /// <summary>
 /// Determines whether [has restricted contact indicator] [the specified preference].
 /// </summary>
 /// <param name="preference">The preference.</param>
 /// <returns>
 ///   <c>true</c> if [has restricted contact indicator] [the specified preference]; otherwise, <c>false</c>.
 /// </returns>
 public bool HasRestrictedContactIndicator(IContactPreference preference) =>
 It.IsInRange(
     $"{preference.ContPrefType}{preference.ContPrefCode}",
     ContactPreference.NoContactIllnessOrDied_ValidTo20130731,
     ContactPreference.NoContactDueToIllness,
     ContactPreference.NoContactDueToDeath);
 /// <summary>
 /// Determines whether [has post GDPR merchandising codes] [the specified preference].
 /// </summary>
 /// <param name="preference">The preference.</param>
 /// <returns>
 ///   <c>true</c> if [has post GDPR merchandising codes] [the specified preference]; otherwise, <c>false</c>.
 /// </returns>
 public bool HasPostGDPRMerchandisingCodes(IContactPreference preference) =>
 It.IsInRange(
     $"{preference.ContPrefType}{preference.ContPrefCode}",
     ContactPreference.AgreesContactCoursesOrOpportunitiesPostGDPR,
     ContactPreference.AgreesContactSurveysAndResearchPostGDPR);