public IActionResult Patch(string id, [FromBody] JsonPatchDocument <UserTeamJoin> userTeamPatch)
        {
            try
            {
                if (Guid.TryParse(id, out Guid parsedId))
                {
                    var userId = User.FindFirstValue(ClaimTypes.NameIdentifier);

                    UserTeam userTeam = _unitOfWork.UserTeams.Get(parsedId);

                    UserTeamJoin userTeamJoin = _mapper.Map <UserTeamJoin>(userTeam);

                    userTeamPatch.ApplyTo(userTeamJoin);

                    _mapper.Map(userTeamJoin, userTeam);

                    _unitOfWork.Complete();

                    return(CreatedAtRoute("Get", new { id = _mapper.Map <UserTeamJoin>(userTeam).Id }, _mapper.Map <UserTeamJoin>(userTeam)));
                }
            }
            catch (Exception e)
            {
                string message = e.Message;
            }

            return(BadRequest());
        }
        private UserTeamJoin GenerateDummyUserTeamModel()
        {
            var dummyUserTeamModel = new UserTeamJoin()
            {
                Id           = Guid.Empty,
                TeamHeaderId = Guid.Parse("11111111-1111-1111-1111-111111111111"),
                UserId       = Guid.Parse("22222222-2222-2222-2222-222222222222"),
                DateFrom     = DateTime.Now,
                DateTo       = DateTime.Now.AddYears(1),
                Status       = StatusTypes.Open
            };

            return(dummyUserTeamModel);
        }
        public IActionResult Post([FromBody] UserTeamJoin userTeamJoin)
        {
            try
            {
                if (userTeamJoin.Id == Guid.Empty)
                {
                    //var userId = User.FindFirstValue("sub");

                    var userTeam = _mapper.Map <UserTeam>(userTeamJoin);

                    _unitOfWork.UserTeams.Add(userTeam);

                    _unitOfWork.Complete();

                    return(Created(new Uri($"{Request.Path}/{userTeam.Id}", UriKind.Relative), _mapper.Map <UserTeamJoin>(userTeam)));
                }
            }
            catch (Exception e)
            {
                string message = e.Message;
            }

            return(BadRequest());
        }