Пример #1
0
        private PersonsRelatedItems Collect(Group group, List <int> modifiedPersonIds)
        {
            var keys = group.GetInnerGroupKeys(modifiedPersonIds);

            var relatedItems = new PersonsRelatedItems();

            keys.ForEach(n => GetInnerGroupRelatedItems(n, group, modifiedPersonIds, relatedItems));

            return(relatedItems);
        }
Пример #2
0
        private void GetInnerGroupRelatedItems(Guid innerGroupKey, Group group, List <int> idsToExclude, PersonsRelatedItems relatedItems)
        {
            var members = group.GetRelatedInnerGroupMemebers(innerGroupKey, idsToExclude);

            if (members.Count == 0 || members.Count == 1)                   // nie wiem dlaczego .Count == 0?
            {
                relatedItems.InnerGroupsToDelete.Add(innerGroupKey);
            }

            if (members.Count == 1)
            {
                relatedItems.PersonsToModify.Add(new PersonItem {
                    Id = members.First().Id, InnerGroupKey = innerGroupKey
                });
            }
        }