private void ConfirmRental(MessageFromRenterModel renterMessage, bool rentalConfirmed) { if (renterMessage.ConfirmationStatus != MsgStatus.Unhandled) { return; } DeclineButton ^= rentalConfirmed; ConfirmButton = rentalConfirmed; NotificationMessage.Confirmation = rentalConfirmed ? MsgStatus.Confirmed : MsgStatus.Declined; renterMessage.ConfirmationStatus = rentalConfirmed ? MsgStatus.Confirmed : MsgStatus.Declined; _eventAggregator.GetEvent <NotificationConfirmationEvent>().Publish(renterMessage); }
public async Task AddMessageToLessor(string mes, CarProfileModel carProfile, UserModel renter) { using (var db = _dbContextFactory.GetContext()) { var message = new MessageFromRenterModel(renter, carProfile.Owner, carProfile, mes) { Sender = renter, Receiver = carProfile.Owner, TimeStamp = DateTime.Now }; var dbMessage = _appToDbModelConverter.Convert(message); await db.AddMessage(dbMessage); } }
private MessageFromLessorModel CreateResponseForRenter(MessageFromRenterModel messageToRespondTo) { var contactInfo = messageToRespondTo.ConfirmationStatus == MsgStatus.Confirmed ? $"Please contact me on my email: {messageToRespondTo.Lessor.Email}" : ""; var msg = $"I {messageToRespondTo.ConfirmationStatus.ToString()} your request. " + contactInfo; return(new MessageFromLessorModel(messageToRespondTo.Renter, messageToRespondTo.Lessor, messageToRespondTo.RentCar, msg, messageToRespondTo.ConfirmationStatus) { Sender = messageToRespondTo.Lessor, Receiver = messageToRespondTo.Renter, MsgType = MessageType.LessorMessage, TimeStamp = DateTime.Now, }); }