public CreateUserGroupResponse Post(CreateUserGroupRequest request) { CreateUserGroupResponse resp; using (var con = this.TenantDbFactory.ObjectsDB.GetNewConnection()) { con.Open(); string sql = ""; if (request.Id > 0) { sql = @"UPDATE eb_usergroup SET name = @name,description = @description WHERE id = @id; INSERT INTO eb_user2usergroup(userid,groupid) SELECT uid,@id FROM UNNEST(array(SELECT unnest(@users) except SELECT UNNEST(array(SELECT userid from eb_user2usergroup WHERE groupid = @id AND eb_del = FALSE)))) as uid; UPDATE eb_user2usergroup SET eb_del = true WHERE userid IN( SELECT UNNEST(array(SELECT userid from eb_user2usergroup WHERE groupid = @id AND eb_del = FALSE)) except SELECT UNNEST(@users));"; } else { sql = @"INSERT INTO eb_usergroup (name,description) VALUES (@name,@description) RETURNING id; INSERT INTO eb_user2usergroup (userid,groupid) SELECT id, (CURRVAL('eb_usergroup_id_seq')) FROM UNNEST(@users) AS id"; } var cmd = this.TenantDbFactory.ObjectsDB.GetNewCommand(con, sql); int[] emptyarr = new int[] { }; cmd.Parameters.Add(this.TenantDbFactory.ObjectsDB.GetNewParameter("name", System.Data.DbType.String, request.Colvalues["groupname"])); cmd.Parameters.Add(this.TenantDbFactory.ObjectsDB.GetNewParameter("description", System.Data.DbType.String, request.Colvalues["description"])); cmd.Parameters.Add(this.TenantDbFactory.ObjectsDB.GetNewParameter("users", NpgsqlTypes.NpgsqlDbType.Array | NpgsqlTypes.NpgsqlDbType.Integer, (request.Colvalues["userlist"].ToString() != string.Empty) ? request.Colvalues["userlist"].ToString().Split(',').Select(n => Convert.ToInt32(n)).ToArray() : emptyarr)); cmd.Parameters.Add(this.TenantDbFactory.ObjectsDB.GetNewParameter("id", System.Data.DbType.Int32, request.Id)); resp = new CreateUserGroupResponse { id = Convert.ToInt32(cmd.ExecuteScalar()) }; } return(resp); } //user group creation
public IUserGroup CreateUserGroup(string userGroupName) { CreateUserGroupRequest request = new CreateUserGroupRequest(userGroupName); connection.Put(request); return(new UserGroup(userGroupName, connection)); }
public async Task <CreateUserGroupResponse> CreateUserGroup(CreateUserGroupRequest o) { var result = new CreateUserGroupResponse(o.RequestId); result.Application = o.Application; result.Id = await Server.CreateUserGroup(o.Application, o.Name, o.Description); return(result); }
public async Task <bool> Handle(CreateUserGroupRequest message, IOutputPort <CreateUserGroupResponse> outputPort) { var entity = await _groupRepository.Create(message.Name, message.Description, message.Role, message.Members); //var response = await _userRepository.Create(message.FirstName, message.LastName,message.Email, message.UserName, message.Password); //outputPort.Handle(response.Success ? new CreateUserGroupResponse(response.Id, true) : new CreateUserGroupResponse(response.Errors.Select(e => e.Description))); outputPort.Handle(new CreateUserGroupResponse(entity.guid.ToString(), true)); return(true); }
private void ValidateForCreating(CreateUserGroupRequest request) { if (string.IsNullOrWhiteSpace(request.Name)) { throw new App.Common.Validation.ValidationException("security.addOrUpdateUserGroup.validation.nameIsRequire"); } IUserGroupRepository repo = IoC.Container.Resolve <IUserGroupRepository>(); if (repo.GetByName(request.Name) != null) { throw new App.Common.Validation.ValidationException("security.addOrUpdateUserGroup.validation.nameAlreadyExist"); } }
public CreateUserGroupResponse Create(CreateUserGroupRequest request) { this.ValidateCreateRequest(request); using (App.Common.Data.IUnitOfWork uow = new App.Common.Data.UnitOfWork(RepositoryType.MSSQL)) { IUserGroupRepository userGroupRepository = IoC.Container.Resolve <IUserGroupRepository>(uow); IPermissionRepository permissionRepo = IoC.Container.Resolve <IPermissionRepository>(uow); IList <Permission> permissions = permissionRepo.GetPermissions(request.PermissionIds); UserGroup userGroup = new UserGroup(request.Name, request.Description, permissions); userGroupRepository.Add(userGroup); uow.Commit(); return(new CreateUserGroupResponse(userGroup)); } }
/// <summary> /// 新建用户组 /// </summary> /// <param name="req"><see cref="CreateUserGroupRequest"/></param> /// <returns><see cref="CreateUserGroupResponse"/></returns> public CreateUserGroupResponse CreateUserGroupSync(CreateUserGroupRequest req) { JsonResponseModel <CreateUserGroupResponse> rsp = null; try { var strResp = this.InternalRequestSync(req, "CreateUserGroup"); rsp = JsonConvert.DeserializeObject <JsonResponseModel <CreateUserGroupResponse> >(strResp); } catch (JsonSerializationException e) { throw new TencentCloudSDKException(e.Message); } return(rsp.Response); }
public IResponseData <CreateUserGroupResponse> CreateUserGroup(CreateUserGroupRequest request) { IResponseData <CreateUserGroupResponse> response = new ResponseData <CreateUserGroupResponse>(); try { IUserGroupService userGroupService = IoC.Container.Resolve <IUserGroupService>(); CreateUserGroupResponse userGroupResponse = userGroupService.Create(request); response.SetData(userGroupResponse); } catch (ValidationException ex) { response.SetErrors(ex.Errors); response.SetStatus(System.Net.HttpStatusCode.PreconditionFailed); } return(response); }
public async Task <IActionResult> Post([FromRoute] Request route, [FromBody] CreateUserGroupRequest request) { IActionResult result = null; var id = await Server.CreateUserGroup(route.Application, request.Name, request.Description); if (id != Guid.Empty) { result = Factory.CreateSuccessResponse(id); } else { result = Factory.CreateNoContentResponse(); } return(result); }
public CreateUserGroupResponse CreateUserGroup(CreateUserGroupRequest request) { IUserGroupService userGroupService = IoC.Container.Resolve <IUserGroupService>(); return(userGroupService.Create(request)); }
public ActionResult AddUserGroup(CreateUserGroupRequest createRequest) { var newUserGroup = _repository.AddUserGroup(createRequest.UserEmail, createRequest.GroupId); return(Created($"api/userGroup/{newUserGroup.Id}", newUserGroup)); }