public async Task <ActionResult <HairdresserModel> > Post(HairdresserModel model)
        {
            try
            {
                var hairdresser = _mapper.Map <Hairdresser>(model);

                if (model.SalonId == 0)
                {
                    return(BadRequest());
                }
                var salon = await _salonRepository.GetSalonByIdAsync(model.SalonId);

                if (salon == null)
                {
                    return(NotFound());
                }

                hairdresser.Salon = salon;

                _repository.Add(hairdresser);
                if (await _repository.SaveChangesAsync())
                {
                    return(Ok());
                }
                else
                {
                    return(BadRequest());
                }
            }
            catch (Exception ex)
            {
                return(StatusCode(StatusCodes.Status500InternalServerError, "Failed database"));
            }
        }
Exemple #2
0
        public async Task <ActionResult <string> > Register(RegisterHairdresserDTO hairdresser)
        {
            IdentityUser user = new IdentityUser {
                UserName = hairdresser.Email, Email = hairdresser.Email
            };

            Hairdresser hairdresserToCreate = new Hairdresser(hairdresser.Name, hairdresser.Email);


            var result = await _userManager.CreateAsync(user, hairdresser.Password);

            if (result.Succeeded)
            {
                _hairdresserRepository.Add(hairdresserToCreate);
                _hairdresserRepository.SaveChanges();
                string token = GetToken(user);
                return(Created("", token));
            }
            return(BadRequest());
        }