Ejemplo n.º 1
0
        public async Task <ActionResult <UserGroupResult> > CreateUserGroup(UserGroup group)
        {
            UserGroupResult result = new UserGroupResult();

            var user = await _userProvider.GetUserAsync();

            group.OwnerId = user.Id;
            try
            {
                var createdGroup = await _userGroups.CreateAsync(group);

                result.IsSuccessful = true;
                result.ResultData.Add(createdGroup);
            }
            catch (ItemAlreadyExistsException e)
            {
                result.IsSuccessful = false;
                result.ErrorMessages.Add("Item already exists");
                result.ErrorMessages.Add(e.Message);
                return(Conflict(result));
            }
            catch (Exception e)
            {
                result.IsSuccessful = false;
                result.ErrorMessages.Add("Internal server error");
                result.ErrorMessages.Add(e.Message);
                throw e;
            }

            return(Ok(result));
        }