public override async Task <ResourceUserDto> CreateAsync(CreateUpdateResourceUserDto input)
        {
            var resource = await _resourceRepository.GetAsync(input.ResourceId);

            await _categoryDataPermissionProvider.CheckCurrentUserAllowedToManageAsync(resource.CategoryId);

            return(await base.CreateAsync(input));
        }
Exemplo n.º 2
0
        public override async Task <CategoryDto> UpdateAsync(Guid id, CreateUpdateCategoryDto input)
        {
            await CheckUpdatePolicyAsync();

            await _categoryDataPermissionProvider.CheckCurrentUserAllowedToManageAsync(id);

            var category = await GetEntityByIdAsync(id);

            if (input.SetToCommon && await _categoryDataPermissionProvider.IsCurrentUserHasGlobalManagePermissionAsync())
            {
                await _categoryOwnerManager.GetOrAddCategoryOwnerAsync(category.Id, null);
            }

            MapToEntity(input, category);

            await Repository.UpdateAsync(category, autoSave : true);

            return(MapToGetOutputDto(category));
        }
Exemplo n.º 3
0
        public override async Task <CategoryDto> CreateAsync(CreateUpdateCategoryDto input)
        {
            await CheckCreatePolicyAsync();

            if (input.ParentCategoryId.HasValue)
            {
                await _categoryDataPermissionProvider.CheckCurrentUserAllowedToManageAsync(input.ParentCategoryId.Value);
            }

            var category = await MapToEntityAsync(input);

            TryToSetTenantId(category);

            await Repository.InsertAsync(category, autoSave : true);

            await _categoryOwnerManager.AddCategoryOwnerAsync(category.Id, CurrentUser.GetId());

            if (input.SetToCommon && await _categoryDataPermissionProvider.IsCurrentUserHasGlobalManagePermissionAsync())
            {
                await _categoryOwnerManager.AddCategoryOwnerAsync(category.Id, null);
            }

            return(await MapToGetOutputDtoAsync(category));
        }
Exemplo n.º 4
0
        public override async Task <ResourceDto> CreateAsync(CreateUpdateResourceDto input)
        {
            await _categoryDataPermissionProvider.CheckCurrentUserAllowedToManageAsync(input.CategoryId);

            return(await base.CreateAsync(input));
        }