Exemple #1
0
        public virtual async Task CreateAsync(TreeUnit treeUnit)
        {
            treeUnit.Code = await GetNextChildCodeAsync(treeUnit.ParentId);
            await ValidateTreeUnitAsync(treeUnit);

            await TreeUnitRepository.InsertAsync(treeUnit);
        }
Exemple #2
0
        protected virtual async Task ValidateTreeUnitAsync(TreeUnit treeUnit)
        {
            var siblings = (await FindChildrenAsync(treeUnit.ParentId))
                           .Where(ou => ou.Id != treeUnit.Id)
                           .ToList();

            if (siblings.Any(ou => ou.DisplayName == treeUnit.DisplayName))
            {
                throw new UserFriendlyException(L("TreeUnitDuplicateDisplayNameWarning", treeUnit.DisplayName));
            }
        }
Exemple #3
0
        public virtual async Task UpdateAsync(TreeUnit treeUnit)
        {
            await ValidateTreeUnitAsync(treeUnit);

            await TreeUnitRepository.UpdateAsync(treeUnit);
        }