예제 #1
0
        public async Task <ActionResult> CompletionAdvisor([FromBody] CreateAdvisorDto createddvisordto)
        {
            try
            {
                var user = await repo.GetUserByID
                               (User.FindFirstValue(ClaimTypes.Name));// Hämtar user id som är inloggad

                //if (user.ProfileConfirmation)
                //    return BadRequest("Du har kompletterat din profile redan!");


                var advisordto = mapper.Map <AdvisorDto>(createddvisordto);
                advisordto.UserID = user.Id;
                var advisor = mapper.Map <Advisor>(advisordto);

                var result = await repo.CompletionAdvisorProfile(advisor);

                if (result == null)
                {
                    return(BadRequest("Ett fel inträffade när profilen kompletteras"));
                }
                advisordto = mapper.Map <AdvisorDto>(result);
                return(StatusCode(201, advisordto));
            }
            catch (Exception)
            {
                return(StatusCode(500));
            }
        }
예제 #2
0
        public async Task <ActionResult> UpdateAdvisorProfile([FromBody] CreateAdvisorDto editAdvisor)
        {
            try
            {
                var user = await repo.GetUserByID(User.FindFirstValue(ClaimTypes.Name)); // Hämtar user id som är inloggad

                /* if (!user.ProfileConfirmation)*/ /*return Unauthorized();*/           // Kontrollera om den här user har kompletterat sitt profil eller inte för att undvika null referens eller status kod 500.

                var advisorfromRepo = await repo.GetAdvisorByUserID(user.Id);

                if (advisorfromRepo == null)
                {
                    return(NotFound());
                }
                mapper.Map(editAdvisor, advisorfromRepo);

                if (!await repo.Save())
                {
                    return(BadRequest("Ett fel inträffade när profilen Uppdateras"));
                }

                var advisordto = mapper.Map <AdvisorDto>(advisorfromRepo);
                return(Ok(advisordto));
            }
            catch (Exception)
            {
                return(StatusCode(500));
            }
        }