コード例 #1
0
ファイル: DiscService.cs プロジェクト: waldo2590/Rock
        /// <summary>
        /// Saves Assessment results to a Person's PersonProperties
        /// </summary>
        /// <param name="person"></param>
        /// <param name="ABd">Adaptive Behavior D</param>
        /// <param name="ABi">Adaptive Behavior I</param>
        /// <param name="ABs">Adaptive Behavior S</param>
        /// <param name="ABc">Adaptive Behavior C</param>
        /// <param name="NBd">Natural Behavior D</param>
        /// <param name="NBi">Natural Behavior I</param>
        /// <param name="NBs">Natural Behavior S</param>
        /// <param name="NBc">Natural Behavior C</param>
        /// <param name="personalityType">One or two letters of DISC that represents the personality.</param>
        static public void SaveAssessmentResults(Person person, string ABd, string ABi, string ABs, string ABc, string NBd, string NBi, string NBs, string NBc, string personalityType)
        {
            person.LoadAttributes();

            var discAttributes = person.Attributes.Values.Where(a => a.Categories.Any(c => c.Guid == SystemGuid.Category.PERSON_ATTRIBUTES_DISC.AsGuid() || c.Guid == SystemGuid.Category.PERSON_ATTRIBUTES_PERSONALITY_ASSESSMENT_DATA.AsGuid())).Select(a => a.Key);

            foreach (string attrib in discAttributes)
            {
                switch (attrib)
                {
                case AttributeKeys.AdaptiveD:
                    Rock.Attribute.Helper.SaveAttributeValue(person, person.Attributes[attrib], ABd);
                    break;

                case AttributeKeys.AdaptiveI:
                    Rock.Attribute.Helper.SaveAttributeValue(person, person.Attributes[attrib], ABi);
                    break;

                case AttributeKeys.AdaptiveS:
                    Rock.Attribute.Helper.SaveAttributeValue(person, person.Attributes[attrib], ABs);
                    break;

                case AttributeKeys.AdaptiveC:
                    Rock.Attribute.Helper.SaveAttributeValue(person, person.Attributes[attrib], ABc);
                    break;

                case AttributeKeys.NaturalD:
                    Rock.Attribute.Helper.SaveAttributeValue(person, person.Attributes[attrib], NBd);
                    break;

                case AttributeKeys.NaturalI:
                    Rock.Attribute.Helper.SaveAttributeValue(person, person.Attributes[attrib], NBi);
                    break;

                case AttributeKeys.NaturalS:
                    Rock.Attribute.Helper.SaveAttributeValue(person, person.Attributes[attrib], NBs);
                    break;

                case AttributeKeys.NaturalC:
                    Rock.Attribute.Helper.SaveAttributeValue(person, person.Attributes[attrib], NBc);
                    break;

                case AttributeKeys.PersonalityType:
                    Rock.Attribute.Helper.SaveAttributeValue(person, person.Attributes[attrib], personalityType);
                    break;

                case AttributeKeys.LastSaveDate:
                    Rock.Attribute.Helper.SaveAttributeValue(person, person.Attributes[attrib], RockDateTime.Now.ToString("o"));
                    break;

                case AttributeKeys.DISCProfile:
                    var definedValueCache = LookupPersonalityTypeProfile(personalityType);
                    Rock.Attribute.Helper.SaveAttributeValue(person, person.Attributes[attrib], definedValueCache.Guid.ToStringSafe());
                    break;
                }
            }

            person.SaveAttributeValues();
        }
コード例 #2
0
        /// <summary>
        /// Saves Assessment results to a Person's PersonProperties
        /// </summary>
        /// <param name="person">The person.</param>
        /// <param name="assessmentResults">The assessment results.</param>
        static public void SaveAssessmentResults(Person person, AssessmentResults assessmentResults)
        {
            person.LoadAttributes();

            person.SetAttributeValue(ATTRIBUTE_DOMINANT_GIFTS, assessmentResults.DominantGifts.AsDelimited(","));
            person.SetAttributeValue(ATTRIBUTE_SUPPORTIVE_GIFTS, assessmentResults.SupportiveGifts.AsDelimited(","));
            person.SetAttributeValue(ATTRIBUTE_OTHER_GIFTS, assessmentResults.OtherGifts.AsDelimited(","));
            person.SetAttributeValue(ATTRIBUTE_LAST_SAVE_DATE, assessmentResults.LastSaveDate);
            person.SaveAttributeValues();
        }
コード例 #3
0
        /// <summary>
        /// Saves Assessment results to a Person's PersonProperties
        /// </summary>
        /// <param name="person"></param>
        /// <param name="ABd">Adaptive Behavior D</param>
        /// <param name="ABi">Adaptive Behavior I</param>
        /// <param name="ABs">Adaptive Behavior S</param>
        /// <param name="ABc">Adaptive Behavior C</param>
        /// <param name="NBd">Natural Behavior D</param>
        /// <param name="NBi">Natural Behavior I</param>
        /// <param name="NBs">Natural Behavior S</param>
        /// <param name="NBc">Natural Behavior C</param>
        /// <param name="personalityType">One or two letters of DISC that represents the personality.</param>
        static public void SaveAssessmentResults(Person person, string ABd, string ABi, string ABs, string ABc, string NBd, string NBi, string NBs, string NBc, string personalityType)
        {
            person.LoadAttributes();

            var discAttributes = person.Attributes.Values.Where(a => a.Categories.Any(c => c.Guid == new Guid("0B187C81-2106-4875-82B6-FBF1277AE23B"))).Select(a => a.Key);

            foreach (string attrib in discAttributes)
            {
                switch (attrib)
                {
                case AttributeKeys.AdaptiveD:
                    Rock.Attribute.Helper.SaveAttributeValue(person, person.Attributes[attrib], ABd);
                    break;

                case AttributeKeys.AdaptiveI:
                    Rock.Attribute.Helper.SaveAttributeValue(person, person.Attributes[attrib], ABi);
                    break;

                case AttributeKeys.AdaptiveS:
                    Rock.Attribute.Helper.SaveAttributeValue(person, person.Attributes[attrib], ABs);
                    break;

                case AttributeKeys.AdaptiveC:
                    Rock.Attribute.Helper.SaveAttributeValue(person, person.Attributes[attrib], ABc);
                    break;

                case AttributeKeys.NaturalD:
                    Rock.Attribute.Helper.SaveAttributeValue(person, person.Attributes[attrib], NBd);
                    break;

                case AttributeKeys.NaturalI:
                    Rock.Attribute.Helper.SaveAttributeValue(person, person.Attributes[attrib], NBi);
                    break;

                case AttributeKeys.NaturalS:
                    Rock.Attribute.Helper.SaveAttributeValue(person, person.Attributes[attrib], NBs);
                    break;

                case AttributeKeys.NaturalC:
                    Rock.Attribute.Helper.SaveAttributeValue(person, person.Attributes[attrib], NBc);
                    break;

                case AttributeKeys.PersonalityType:
                    Rock.Attribute.Helper.SaveAttributeValue(person, person.Attributes[attrib], personalityType);
                    break;

                case AttributeKeys.LastSaveDate:
                    Rock.Attribute.Helper.SaveAttributeValue(person, person.Attributes[attrib], RockDateTime.Now.ToString("o"));
                    break;
                }
            }

            person.SaveAttributeValues();
        }
コード例 #4
0
ファイル: EQInventoryService.cs プロジェクト: waldo2590/Rock
        /// <summary>
        /// Saves Assessment results to a Person's PersonProperties
        /// </summary>
        /// <param name="person">The person.</param>
        /// <param name="assessmentResults">The assessment results.</param>
        static public void SaveAssessmentResults(Person person, AssessmentResults assessmentResults)
        {
            person.LoadAttributes();

            person.SetAttributeValue(ATTRIBUTE_EQ_CONSTRUCTS_SELF_AWARENESS, assessmentResults.SelfAwareConstruct);
            person.SetAttributeValue(ATTRIBUTE_EQ_CONSTRUCTS_SELF_REGULATING, assessmentResults.SelfRegulatingConstruct);
            person.SetAttributeValue(ATTRIBUTE_EQ_CONSTRUCTS_OTHERS_AWARENESS, assessmentResults.OtherAwarenessContruct);
            person.SetAttributeValue(ATTRIBUTE_EQ_CONSTRUCTS_OTHERS_REGULATING, assessmentResults.OthersRegulatingConstruct);
            person.SetAttributeValue(ATTRIBUTE_EQ_SCALES_PROBLEM_SOLVING, assessmentResults.EQ_ProblemSolvingScale);
            person.SetAttributeValue(ATTRIBUTE_EQ_SCALES_UNDER_STRESS, assessmentResults.EQ_UnderStressScale);
            person.SaveAttributeValues();
        }
コード例 #5
0
        /// <summary>
        /// Saves Assessment results to a Person's PersonProperties
        /// </summary>
        /// <param name="person">The person.</param>
        /// <param name="assessmentResults">The assessment results.</param>
        static public void SaveAssessmentResults(Person person, AssessmentResults assessmentResults)
        {
            person.LoadAttributes();

            person.SetAttributeValue(ATTRIBUTE_MODE_WINNING, assessmentResults.ModeWinningScore);
            person.SetAttributeValue(ATTRIBUTE_MODE_RESOLVING, assessmentResults.ModeResolvingScore);
            person.SetAttributeValue(ATTRIBUTE_MODE_COMPROMISING, assessmentResults.ModeCompromisingScore);
            person.SetAttributeValue(ATTRIBUTE_MODE_AVOIDING, assessmentResults.ModeAvoidingScore);
            person.SetAttributeValue(ATTRIBUTE_MODE_YEILDING, assessmentResults.ModeYieldingScore);
            person.SetAttributeValue(ATTRIBUTE_THEME_ACCOMMODATING, assessmentResults.EngagementAccommodatingScore);
            person.SetAttributeValue(ATTRIBUTE_THEME_WINNING, assessmentResults.EngagementWinningScore);
            person.SetAttributeValue(ATTRIBUTE_THEME_SOLVING, assessmentResults.EngagementSolvingScore);
            person.SaveAttributeValues();
        }
コード例 #6
0
        /// <summary>
        /// Saves Assessment results to a Person's PersonProperties
        /// </summary>
        /// <param name="person">The person.</param>
        /// <param name="assessmentResults">The assessment results.</param>
        static public void SaveAssessmentResults(Person person, AssessmentResults assessmentResults)
        {
            person.LoadAttributes();

            var topFiveMotivatorScores = assessmentResults.MotivatorScores.OrderByDescending(x => x.Value).Take(5).Select(x => x.DefinedValue.Guid).ToList().AsDelimited(",");

            person.SetAttributeValue(ATTRIBUTE_MOTIVATOR_TOP_5_MOTIVATORS, topFiveMotivatorScores);

            //var motivatorTypes = DefinedTypeCache.Get( SystemGuid.DefinedType.MOTIVATOR_TYPE.AsGuid() );
            foreach (var motivatorScore in assessmentResults.MotivatorScores)
            {
                var scoreKey = motivatorScore.DefinedValue.GetAttributeValue("AttributeScoreKey");
                person.SetAttributeValue(scoreKey, motivatorScore.Value);
            }

            //var motivatorClusterTypes = DefinedTypeCache.Get( SystemGuid.DefinedType.MOTIVATOR_THEME_TYPE.AsGuid() );
            foreach (var motivatorThemeScore in assessmentResults.MotivatorThemeScores)
            {
                var scoreKey = motivatorThemeScore.DefinedValue.GetAttributeValue("AttributeScoreKey");
                person.SetAttributeValue(scoreKey, motivatorThemeScore.Value);
            }

            person.SaveAttributeValues();
        }