/// <summary> /// Revises the and calculate. /// </summary> /// <param name="howOftenYouDrinkNumber">The how often you drink number.</param> /// <param name="alcoholicDrinksPerDayNumber">The alcoholic drinks per day number.</param> /// <param name="howOftenYouHaveSixOrMoreDrinksNumber">The how often you have six or more drinks number.</param> public virtual void ReviseAndCalculate(int?howOftenYouDrinkNumber, int?alcoholicDrinksPerDayNumber, int?howOftenYouHaveSixOrMoreDrinksNumber) { Check.IsInRange(howOftenYouDrinkNumber, 0, 4, () => HowOftenYouDrinkNumber); Check.IsInRange(alcoholicDrinksPerDayNumber, 0, 4, () => AlcoholicDrinksPerDayNumber); Check.IsInRange(howOftenYouHaveSixOrMoreDrinksNumber, 0, 4, () => HowOftenYouHaveSixOrMoreDrinksNumber); HowOftenYouDrinkNumber = howOftenYouDrinkNumber; // NOTE: If the Patient never drinks, then the next answers are always 0. if (howOftenYouDrinkNumber == 0) { AlcoholicDrinksPerDayNumber = HowOftenYouHaveSixOrMoreDrinksNumber = 0; } else { AlcoholicDrinksPerDayNumber = alcoholicDrinksPerDayNumber; HowOftenYouHaveSixOrMoreDrinksNumber = howOftenYouHaveSixOrMoreDrinksNumber; } _auditCScore = HowOftenYouDrinkNumber.GetValueOrDefault() + AlcoholicDrinksPerDayNumber.GetValueOrDefault() + HowOftenYouHaveSixOrMoreDrinksNumber.GetValueOrDefault(); }
/// <summary> /// Revises the and calculate. /// </summary> /// <param name="howOftenYouDrinkNumber">The how often you drink number.</param> /// <param name="alcoholicDrinksPerDayNumber">The alcoholic drinks per day number.</param> /// <param name="howOftenYouHaveSixOrMoreDrinksNumber">The how often you have six or more drinks number.</param> /// <param name="pastYearHowOftenYouWereUnableToStopDrinkingNumber">The past year how often you were unable to stop drinking number.</param> /// <param name="pastYearHowOftenYouFailedNormalExpectationNumber">The past year how often you failed normal expectation number.</param> /// <param name="pastYearHowOftenYouDrinkInMorningNumber">The past year how often you drink in morning number.</param> /// <param name="pastYearHowOftenYouHadGuiltAfterDrinkingNumber">The past year how often you had guilt after drinking number.</param> /// <param name="pastYearHowOftenYouForgotNightBeforeNumber">The past year how often you forgot night before number.</param> /// <param name="youOrSomeoneInjuredDueToYourDrinkingNumber">You or someone injured due to your drinking number.</param> /// <param name="healthWorkerSuggestedToCutDownDrinkingNumber">The health worker suggested to cut down drinking number.</param> public virtual void ReviseAndCalculate(int?howOftenYouDrinkNumber, int?alcoholicDrinksPerDayNumber, int?howOftenYouHaveSixOrMoreDrinksNumber, int?pastYearHowOftenYouWereUnableToStopDrinkingNumber, int?pastYearHowOftenYouFailedNormalExpectationNumber, int?pastYearHowOftenYouDrinkInMorningNumber, int?pastYearHowOftenYouHadGuiltAfterDrinkingNumber, int?pastYearHowOftenYouForgotNightBeforeNumber, int?youOrSomeoneInjuredDueToYourDrinkingNumber, int?healthWorkerSuggestedToCutDownDrinkingNumber) { Check.IsInRange(howOftenYouDrinkNumber, 0, 4, () => HowOftenYouDrinkNumber); Check.IsInRange(alcoholicDrinksPerDayNumber, 0, 4, () => AlcoholicDrinksPerDayNumber); Check.IsInRange(howOftenYouHaveSixOrMoreDrinksNumber, 0, 4, () => HowOftenYouHaveSixOrMoreDrinksNumber); Check.IsInRange(pastYearHowOftenYouWereUnableToStopDrinkingNumber, 0, 4, () => PastYearHowOftenYouWereUnableToStopDrinkingNumber); Check.IsInRange(pastYearHowOftenYouFailedNormalExpectationNumber, 0, 4, () => PastYearHowOftenYouFailedNormalExpectationNumber); Check.IsInRange(pastYearHowOftenYouDrinkInMorningNumber, 0, 4, () => PastYearHowOftenYouDrinkInMorningNumber); Check.IsInRange(pastYearHowOftenYouHadGuiltAfterDrinkingNumber, 0, 4, () => PastYearHowOftenYouHadGuiltAfterDrinkingNumber); Check.IsInRange(pastYearHowOftenYouForgotNightBeforeNumber, 0, 4, () => PastYearHowOftenYouForgotNightBeforeNumber); Check.IsInList(youOrSomeoneInjuredDueToYourDrinkingNumber, new[] { 0, 2, 4 }, () => YouOrSomeoneInjuredDueToYourDrinkingNumber); Check.IsInList(healthWorkerSuggestedToCutDownDrinkingNumber, new[] { 0, 2, 4 }, () => HealthWorkerSuggestedToCutDownDrinkingNumber); HowOftenYouDrinkNumber = howOftenYouDrinkNumber; //NOTE: If the Patient never drinks, then the next answers are always 0. if (howOftenYouDrinkNumber == 0) { AlcoholicDrinksPerDayNumber = HowOftenYouHaveSixOrMoreDrinksNumber = PastYearHowOftenYouWereUnableToStopDrinkingNumber = PastYearHowOftenYouFailedNormalExpectationNumber = PastYearHowOftenYouDrinkInMorningNumber = PastYearHowOftenYouHadGuiltAfterDrinkingNumber = PastYearHowOftenYouForgotNightBeforeNumber = YouOrSomeoneInjuredDueToYourDrinkingNumber = HealthWorkerSuggestedToCutDownDrinkingNumber = 0; } else { AlcoholicDrinksPerDayNumber = alcoholicDrinksPerDayNumber; HowOftenYouHaveSixOrMoreDrinksNumber = howOftenYouHaveSixOrMoreDrinksNumber; PastYearHowOftenYouWereUnableToStopDrinkingNumber = pastYearHowOftenYouWereUnableToStopDrinkingNumber; PastYearHowOftenYouFailedNormalExpectationNumber = pastYearHowOftenYouFailedNormalExpectationNumber; PastYearHowOftenYouDrinkInMorningNumber = pastYearHowOftenYouDrinkInMorningNumber; PastYearHowOftenYouHadGuiltAfterDrinkingNumber = pastYearHowOftenYouHadGuiltAfterDrinkingNumber; PastYearHowOftenYouForgotNightBeforeNumber = pastYearHowOftenYouForgotNightBeforeNumber; YouOrSomeoneInjuredDueToYourDrinkingNumber = youOrSomeoneInjuredDueToYourDrinkingNumber; HealthWorkerSuggestedToCutDownDrinkingNumber = healthWorkerSuggestedToCutDownDrinkingNumber; } _auditScore = HowOftenYouDrinkNumber.GetValueOrDefault() + AlcoholicDrinksPerDayNumber.GetValueOrDefault() + HowOftenYouHaveSixOrMoreDrinksNumber.GetValueOrDefault() + PastYearHowOftenYouWereUnableToStopDrinkingNumber.GetValueOrDefault() + PastYearHowOftenYouFailedNormalExpectationNumber.GetValueOrDefault() + PastYearHowOftenYouDrinkInMorningNumber.GetValueOrDefault() + PastYearHowOftenYouHadGuiltAfterDrinkingNumber.GetValueOrDefault() + PastYearHowOftenYouForgotNightBeforeNumber.GetValueOrDefault() + YouOrSomeoneInjuredDueToYourDrinkingNumber.GetValueOrDefault() + HealthWorkerSuggestedToCutDownDrinkingNumber.GetValueOrDefault(); }