Esempio n. 1
0
        public async Task <Result> Create([FromBody] RoleCreateRequestDto dto)
        {
            //验证请求数据合法性
            var result = dto.Valid();

            if (!result.Success)
            {
                return(result);
            }

            //调用领域服务
            int createOfAccountId = HttpContext.User.UserId();
            var createResult      = await this._serviceProvider.GetRequiredService <RoleCreateService>()
                                    .Create(dto.Name, dto.Description, createOfAccountId, dto.Permissions);

            if (!createResult.Success)
            {
                return(createResult);
            }

            //数据持久化
            _operateLog.Record(ASFPermissions.RoleCreate, dto, "Success");  //记录日志
            await _roleRepository.AddAsync(createResult.Data);

            await _unitOfWork.CommitAsync(autoRollback : true);

            return(Result.ReSuccess());
        }
        public virtual async Task <Result> Create(RoleCreateRequestDto dto)
        {
            //验证请求数据合法性
            var result = dto.Valid();

            if (!result.Success)
            {
                return(result);
            }

            //调用领域服务
            var createResult = await IocManager.Instance.Resolve <RoleCreateService>()
                               .Create(dto.Name, dto.RoleId, dto.Description, AuthContextService.CurrentUser.Guid, dto.Permissions);

            if (!createResult.Success)
            {
                return(createResult);
            }

            //数据持久化
            _operateLog.Record(ASFPermissions.RoleCreate, dto, "Success");  //记录日志
            await _roleRepository.AddAsync(createResult.Data);

            return(Result.ReSuccess());
        }
Esempio n. 3
0
        public async Task <IResponseOutput> Create([FromBody] RoleCreateRequestDto requestDto)
        {
            var role = _mapper.Map <Role>(requestDto);

            role.CreatedAt = DateTime.Now;
            var ret = await _fsql.Insert(role).ExecuteInsertedAsync();

            return(ResponseOutput.Ok(_mapper.Map <RoleResponseDto>(ret.FirstOrDefault())));
        }
Esempio n. 4
0
        public async Task <Result> Create([FromBody] RoleCreateRequestDto dto)
        {
            // 只有超级管理员才能选择租户创建
            long?tenancyId = HttpContext.User.IsSuperRole() ? dto.TenancyId : Convert.ToInt64(HttpContext.User.TenancyId());
            Role role      = _mapper.Map <Role>(dto);

            role.TenancyId = tenancyId;
            role.CreateId  = Convert.ToInt64(HttpContext.User.UserId());
            if (dto.PermissionId != null && dto.PermissionId.Count > 0)
            {
                dto.PermissionId.ForEach(item =>
                {
                    role.PermissionRole.Add(new PermissionRole()
                    {
                        PermissionId = item,
                        RoleId       = role.Id
                    });
                });
            }
            return(await _serviceProvider.GetRequiredService <RoleService>().Create(role));
        }