public UserAppointmentsViewModel GetUserAppointmentsViewModel(string userId) { var userAppointmentsViewModel = new UserAppointmentsViewModel(); var userAppointments = _iAppointmentDao.GetUserAppointments(userId); foreach (var userAppointment in userAppointments) { var horseAd = _iHorseAdDao.GetById(userAppointment.AdvertismentId); var appointmentDTO = AppointmentConverter.FromAppointmentToAppointmentDTO(userAppointment, horseAd); if (userAppointment.InitiatorId == userId && userAppointment.IsAccepted == false) { userAppointmentsViewModel.UserPendingWhenInitiator.Add(appointmentDTO); if (!userAppointment.SeenByInitiator) { userAppointmentsViewModel.UnseenAppointmentIds.Add(userAppointment.Id); } } if (userAppointment.InitiatorId == userId && userAppointment.IsAccepted == true) { userAppointmentsViewModel.UserUpcomingWhenInitiator.Add(appointmentDTO); if (!userAppointment.SeenByInitiator) { userAppointmentsViewModel.UnseenAppointmentIds.Add(userAppointment.Id); } } if (userAppointment.AdvertismentOwnerId == userId && userAppointment.IsAccepted == false) { userAppointmentsViewModel.UserPendingWhenOwner.Add(appointmentDTO); if (!userAppointment.SeenByOwner) { userAppointmentsViewModel.UnseenAppointmentIds.Add(userAppointment.Id); } } if (userAppointment.AdvertismentOwnerId == userId && userAppointment.IsAccepted == true) { userAppointmentsViewModel.UserUpcomingWhenOwner.Add(appointmentDTO); if (!userAppointment.SeenByOwner) { userAppointmentsViewModel.UnseenAppointmentIds.Add(userAppointment.Id); } } } return(userAppointmentsViewModel); }
public async Task EditHorseAd(int id, HorseAdDTO horseAdDTO, string userId) { ValidateHorseAd(horseAdDTO); var horseAd = _iHorseAdDao.GetById(id); CheckHorseAdAndUserIdentity(horseAd, userId); var updatedHorseAd = UpdateHorseAd(horseAd, horseAdDTO); await _iHorseAdDao.EditHorseAdAsync(updatedHorseAd); }
public async Task DeleteUserById(string userId) { var userModel = _iUserDao.FindUserById(userId); CheckIfUserExists(userModel); if (userModel.HorseAds?.Count > 0) { foreach (var horseAdsId in userModel.HorseAds.Select(x => x.Id)) { var horseAd = _iHorseAdDao.GetById(horseAdsId); horseAd.IsDeleted = true; await _iHorseAdDao.UpdateAsync(horseAd); } userModel.HorseAds.Clear(); } await _iUserDao.DeleteUser(userModel); }