Exemple #1
0
        /// <summary>
        /// 通过Id获取菜单信息进行编辑或修改
        /// </summary>
        public async Task <GetMenuForEditOutput> GetMenuForEditAsync(NullableIdDto <int> input)
        {
            var output = new GetMenuForEditOutput();

            MenuEditDto          menuEditDto;
            List <DictionaryDto> result = AppConsts.StaticPermissions;

            if (input.Id.HasValue)
            {
                var entity = await _menuRepository.GetAsync(input.Id.Value);

                menuEditDto = entity.MapTo <MenuEditDto>();
                if (entity.RequiresAuthentication && !entity.RequiredPermissions.IsNullOrWhiteSpace() && !entity.Url.IsNullOrWhiteSpace())
                {
                    var filterName = $"{entity.RequiredPermissions}";
                    var ps         = await _permissionRepository.GetAllListAsync(c => c.Name.Contains(filterName));

                    result = ps.Select(c => new DictionaryDto()
                    {
                        DisplayName = c.DisplayName,
                        Name        = c.Name.Replace(filterName, string.Empty),
                        IsCheck     = true
                    }).ToList();
                    output.PermissionTypes = result;
                }
            }
            else
            {
                menuEditDto            = new MenuEditDto();
                output.PermissionTypes = result;
            }

            output.Menu = menuEditDto;
            return(output);
        }
        public async Task <GetMenuForEditOutput> GetMenuForEdit(EntityDto input)
        {
            var menu = await _menuRepository.FirstOrDefaultAsync(input.Id);

            var output = new GetMenuForEditOutput {
                Menu = ObjectMapper.Map <CreateOrEditMenuDto>(menu)
            };

            return(output);
        }
Exemple #3
0
        /// <summary>
        /// 通过Id获取菜单信息进行编辑或修改
        /// </summary>
        public async Task <GetMenuForEditOutput> GetMenuForEditAsync(NullableIdDto <long> input)
        {
            var output = new GetMenuForEditOutput();

            MenuEditDto menuEditDto;

            if (input.Id.HasValue)
            {
                var entity = await _menuRepository.GetAsync(input.Id.Value);

                menuEditDto = entity.MapTo <MenuEditDto>();
            }
            else
            {
                menuEditDto = new MenuEditDto();
            }

            output.Menu = menuEditDto;
            return(output);
        }