public void CreateGroup(EditGroupMessage groupMessage) { if (string.IsNullOrWhiteSpace(groupMessage.Name)) { throw new ArgumentException("Group should have a name"); } if (groupMessage.GroupAdminId == 0) { throw new ArgumentException("Group should have an admin user"); } var newGroup = new Group { Name = groupMessage.Name, Description = groupMessage.Description, GroupPhoto = groupMessage.GroupPhoto }; newGroup.GroupAdmins = new List <GroupAdmin> { new GroupAdmin { UserId = groupMessage.GroupAdminId } }; _dbContext.Groups.Add(newGroup); _dbContext.SaveChanges(); // Creator is the natural member of the group AddUserToGroup(newGroup.GroupId, groupMessage.GroupAdminId); }
public IActionResult CreateGroup(EditGroupMessage groupMessage) { try { _groupService.CreateGroup(groupMessage); } catch (Exception ex) { _logger.LogError(ex.Message, groupMessage); return(BadRequest(ex.Message)); } return(Ok("Group created successfully")); }
public IActionResult SetUserAsGroupAdmin(EditGroupMessage groupMessage) { if (groupMessage == null) { _logger.LogError("groupMessage is null", groupMessage); return(BadRequest("Invalid input parameters")); } try { _groupService.SetUserAsGroupAdmin(groupMessage.GroupId, groupMessage.UserId); } catch (Exception ex) { _logger.LogError(ex.Message, groupMessage); return(BadRequest(ex.Message)); } return(Ok("User added to admins of the group successfully")); }
public IActionResult RemoveUserFromGroup(EditGroupMessage groupMessage) { if (groupMessage == null) { _logger.LogError("groupMessage is null", groupMessage); return(BadRequest("Invalid input parameters")); } try { _groupService.RemoveUserFromGroup(groupMessage.GroupId, groupMessage.UserId); } catch (Exception ex) { _logger.LogError(ex.Message, groupMessage); return(BadRequest(ex.Message)); } return(Ok("User removed from group successfully")); }