Ejemplo n.º 1
0
        private int? GetRockFamily( Model.Family f )
        {
            RockMaps.GroupMap groupMap = new RockMaps.GroupMap( Service );
            Dictionary<string, object> rockFamily = groupMap.GetFamilyGroupByForeignId( f.family_id.ToString() );

            if ( rockFamily != null )
            {
                return (int?)rockFamily["Id"];
            }
            else
            {
                if(f == null)
                {
                    return null;
                }

                int? arenaCampusId = GetArenaFamilyCampusId( f.family_id );
                int? rockCampusId = (int?) (new RockMaps.CampusMap(Service).GetByForeignId( arenaCampusId.ToString() )["Id"]);
                int? rockFamilyId = groupMap.SaveFamily( rockCampusId, f.family_name, null, f.family_id.ToString() );

                return rockFamilyId;
            }
        }
Ejemplo n.º 2
0
        private int? AddIndividualFamily( int? rockPersonId, Person arenaPerson, int modelRockFamilyId )
        {
            RockMaps.GroupMap groupMap = new RockMaps.GroupMap( Service );

            Dictionary<string, object> modelFamily = groupMap.GetGroupById( modelRockFamilyId );
            var modelFamilyMembers = groupMap.GetGroupMemberByGroupIdPersonId( (int)modelFamily["Id"], (int)rockPersonId );

            int roleId = 0;

            if ( modelFamilyMembers != null && modelFamilyMembers.Count > 0 )
            {
                roleId = (int)modelFamilyMembers.First().Value["GroupRoleId"];
            }

            string groupDescription = string.Format( "Individual \"family\" for {0} {1}", arenaPerson.nick_name, arenaPerson.last_name );
            int? individualFamilyId = groupMap.SaveFamily( (int?)modelFamily["CampusId"], modelFamily["Name"].ToString(), description: groupDescription );

            if ( individualFamilyId != null )
            {
                groupMap.SaveGroupMember( (int)individualFamilyId, (int)rockPersonId, roleId );
            }

            return individualFamilyId;
        }