Пример #1
0
        /// <summary>
        /// 新增
        /// </summary>
        /// <param name="roleElementRequestDto"></param>
        /// <returns></returns>
        public async Task <bool> CreateAsync(RoleElementRequestDto roleElementRequestDto)
        {
            var roleElement = roleElementRequestDto.MapToCreateEntity <RoleElementRequestDto, RoleElement>();
            await RoleElementValidatorsFilter.DoValidationAsync(_roleElementRespository, roleElement, ValidatorTypeConstants.Create);

            return(await _roleElementRespository.InsertAsync(roleElement));
        }
Пример #2
0
        GetAddOrRemoveRoleElementRequest(RoleElementRequestDto roleElementRequestDto)
        {
            //查询该角色所有模块元素
            var allExitsEelments = await _roleElementAppService.GetElementByRoleIdsAsync(new List <string>
            {
                roleElementRequestDto.RoleId
            });

            var allExitsElementIds = allExitsEelments.Select(m => m.ElementId).ToList();

            var addMenuIds = roleElementRequestDto.ElementIds.Except(allExitsElementIds);
            var delMenuIds = allExitsElementIds.Except(roleElementRequestDto.ElementIds);
            var addDto     = addMenuIds.Select(m => new RoleElementRequestDto
            {
                Id             = Guid.NewGuid().ToString(),
                ElementId      = m,
                RoleId         = roleElementRequestDto.RoleId,
                CreateUserId   = roleElementRequestDto.CreateUserId,
                CreateUserName = roleElementRequestDto.CreateUserName,
            });
            var delDto = delMenuIds.Select(m =>
                                           new RoleElementRequestDto
            {
                ElementId      = m,
                RoleId         = roleElementRequestDto.RoleId,
                IsDelete       = true,
                ModifyUserId   = roleElementRequestDto.ModifyUserId,
                ModifyUserName = roleElementRequestDto.ModifyUserName,
                ModifyDate     = DateTime.Now
            });

            return(addDto.ToList(), delDto.ToList());
        }
Пример #3
0
        /// <summary>
        /// 修改
        /// </summary>
        /// <param name="roleElementRequestDto"></param>
        /// <returns></returns>
        public async Task <bool> ModifyAsync(RoleElementRequestDto roleElementRequestDto)
        {
            var roleElement = await _roleElementRespository.FirstOrDefaultAsync(e => e.Id == roleElementRequestDto.Id);

            var entity = roleElementRequestDto.MapToModifyEntity <RoleElementRequestDto, RoleElement>(roleElement);
            await RoleElementValidatorsFilter.DoValidationAsync(_roleElementRespository, entity, ValidatorTypeConstants.Modify);

            return(await _roleElementRespository.UpdateAsync(entity));
        }
Пример #4
0
        /// <summary>
        /// 获取机构模块元素信息
        /// </summary>
        /// <param name="input"></param>
        /// <returns></returns>
        public async Task <IList <PowerSelectViewResponse> > GetRoleModuleElement(RoleElementRequestDto input)
        {
            var roleElementDtos = await _roleElementAppService.GetElementByRoleIdsAsync(new List <string> {
                input.RoleId
            });

            return(roleElementDtos.Select(o => new PowerSelectViewResponse {
                Id = o.ElementId
            }).ToList());
        }
Пример #5
0
        /// <summary>
        /// 修改
        /// </summary>
        /// <param name="input"></param>
        /// <returns></returns>
        public async Task <JsonResponse> Modify(RoleElementRequestDto input)
        {
            input.InitModifyRequest();
            var resJson = await _applicationEnginee.TryTransactionAsync(async() =>
            {
                await _roleElementAppService.ModifyAsync(input);
            });

            return(resJson);
        }
Пример #6
0
        /// <summary>
        /// 保存角色模块元素
        /// </summary>
        /// <param name="input"></param>
        /// <returns></returns>
        public async Task <JsonResponse> SaveRoleModuleElement(RoleElementRequestDto input)
        {
            var result = await GetAddOrRemoveRoleElementRequest(input);

            var resJson = await _applicationEnginee.TryTransactionAsync(async() =>
            {
                await _roleElementAppService.BatchCreateAsync(result.Item1);
                await _roleElementAppService.BatchRemoveAsync(result.Item2);
            });

            return(resJson);
        }
Пример #7
0
 /// <summary>
 /// 获取角色模块元素信息
 /// </summary>
 /// <param name="input"></param>
 /// <returns></returns>
 public async Task <IList <PowerSelectViewResponse> > GetRoleModuleElement(RoleElementRequestDto input)
 {
     return(await _moduleElementDomainService.GetRoleModuleElement(input));
 }
Пример #8
0
 /// <summary>
 /// 保存角色模块元素
 /// </summary>
 /// <param name="input"></param>
 /// <returns></returns>
 public async Task <JsonResponse> SaveRoleModuleElement(RoleElementRequestDto input)
 {
     input.InitCreateRequest();
     input.InitModifyRequest();
     return(await _moduleElementDomainService.SaveRoleModuleElement(input));
 }