コード例 #1
0
        /// <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();
        }
コード例 #2
0
ファイル: Audit.cs プロジェクト: girish66/REM
        /// <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();
        }