public async Task <IActionResult> GetUser(int id) { var user = await _repo.GetUser(id); var userToReturn = _mapper.Map <UserForDetailedDto>(user); return(Ok(userToReturn)); }
public async Task <IActionResult> AddReservation(int userId, ReservationForAddDto reservationForAddDto) { if (userId != int.Parse(User.FindFirst(ClaimTypes.NameIdentifier).Value)) { return(Unauthorized()); } var userFromRepo = await _repo.GetUser(userId); reservationForAddDto.Start = reservationForAddDto.Start.AddHours(1); reservationForAddDto.AddEndDate(); reservationForAddDto.Title = userFromRepo.Name + ' ' + userFromRepo.Surname; var reservation = _mapper.Map <Reservation>(reservationForAddDto); if (await _repo.GoodTerm(reservation.Start) == false) { return(BadRequest("Wybrano zły termin.\nGabinet czynny od poniedziałku do piątku w godzinach 9-17")); } if (await _repo.FreeTerm(reservation.Start) == false) { return(BadRequest("Wybrany termin jest zarezerwowany")); } userFromRepo.Reservations.Add(reservation); if (await _repo.SaveAll()) { var reservationToReturn = _mapper.Map <ReservationForDetailedDto>(reservation); return(CreatedAtRoute("GetReservation", new { id = reservation.Id }, reservationToReturn)); } return(BadRequest("Nie można dodać wizyty")); }
public async Task <IActionResult> AddVisit(int userId, VisitForAddDto visitForAddDto) { // if (userId != int.Parse(User.FindFirst(ClaimTypes.NameIdentifier).Value)) // return Unauthorized(); var userFromRepo = await _repo.GetUser(userId); var visit = _mapper.Map <Visit>(visitForAddDto); userFromRepo.Visits.Add(visit); userFromRepo.LastVisit = visit.VisitDate; if (await _repo.SaveAll()) { var visitToReturn = _mapper.Map <VisitForDetailedDto>(visit); return(CreatedAtRoute("GetVisit", new { id = visit.Id }, visitToReturn)); } return(BadRequest("Nie można dodać wizyty")); }