public override void Activate() { Reservation = Values.SafeGetValue <Reservation>("Reservation"); if (Reservation == null) { IsNewRecord = true; View.NumericUpDownVisitorAmount.Increment = 1; View.NumericUpDownVisitorAmount.Value = View.NumericUpDownVisitorAmount.Minimum; View.ButtonAddEvent.Enabled = true; View.ButtonAddReservee.Enabled = true; View.ButtonAddProduct.Enabled = true; View.ButtonDeleteProduct.Enabled = true; View.InteractiveMap.Clear(); View.TextBoxReservee.Clear(); View.TextBoxEvent.Clear(); View.DataGridViewProducts.DataSource = null; } else { IsNewRecord = false; // Reset everything. View.NumericUpDownVisitorAmount.Increment = 0; View.ButtonAddEvent.Enabled = false; View.ButtonAddReservee.Enabled = false; View.ButtonAddProduct.Enabled = false; View.ButtonDeleteProduct.Enabled = false; View.InteractiveMap.Clear(); // Fill TextBoxReservee. Reservee reservee = Reservee.Select("RESERVEEID = " + Reservation.ReserveeId.ToSqlFormat()).FirstOrDefault(); if (reservee != null) { View.TextBoxReservee.Text = reservee.FullName; } // Fill TextBoxEvent. Event dbEvent = Event.Select("EVENTID = " + Reservation.EventId.ToSqlFormat()).FirstOrDefault(); if (dbEvent != null) { View.TextBoxEvent.Text = dbEvent.Name; } // Fill NumericUpDownValue. View.NumericUpDownVisitorAmount.Value = Reservation.AmountOfPeople; // Fill interactive map. if (dbEvent != null) { UpdateMap(dbEvent.Id); } // Fill products. IEnumerable <Rental> rentals = Rental.Select("VISITORCODE = " + reservee.VisitorCode.ToSqlFormat()); View.DataGridViewProducts.DataSource = rentals.ToList(); } }
public void SendReservationConfirmationEmail(Reservee reservee) { if (string.IsNullOrWhiteSpace(reservee.EmailAddress)) { return; } string smtpAddress = "smtp.gmail.com"; int portNumber = 587; bool enableSSL = true; string emailFrom = "*****@*****.**"; string password = "******"; string subject = string.Format("Ict4Events: Uw reservering is succesvol verwerkt!"); Visitor visitor = Visitor.Select("VISITORCODE = " + reservee.VisitorCode.ToSqlFormat()).FirstOrDefault(); IEnumerable <Visitor> visitors = Visitor.Select("RESERVATIONID = " + Reservation.Id); string defaultBody = string.Format( "Geachte {0}, <br><br>bij deze is uw reservering succesvol verwerkt in ons systeem! <br>Uw bestelde polsbandjes zullen zo snel mogelijk naar u verstuurd worden. <br>" + "Op de dag van het evenement kunt u dit polsbandje gebruiken om toegang te krijgen tot het evenemententerein. <br>" + "U kunt het te betalen bedrag overmaken naar het volgende rekeningnummer: <b>123456</b>.<br><br>" + "Geef de bandjes met de juiste code aan de juiste bezoeker.<br><br>", visitor.FirstName + (!string.IsNullOrWhiteSpace(visitor.Insertion) ? " " + visitor.Insertion + " " : "") + visitor.LastName); foreach (Visitor v in visitors) { defaultBody += v.FullName + " - " + v.VisitorCode + "<br>"; } defaultBody += "<br>Veel plezier op het event!"; string body = defaultBody; using (var mail = new MailMessage()) { mail.From = new MailAddress(emailFrom); mail.To.Add(reservee.EmailAddress); mail.Subject = subject; mail.Body = body; mail.IsBodyHtml = true; using (var smtp = new SmtpClient(smtpAddress, portNumber)) { smtp.Host = "smtp.gmail.com"; smtp.Port = 587; smtp.UseDefaultCredentials = false; smtp.DeliveryMethod = SmtpDeliveryMethod.Network; smtp.Credentials = new NetworkCredential(emailFrom, password); smtp.EnableSsl = enableSSL; smtp.Timeout = 10000; smtp.Send(mail); } MessageBox.Show("Bevestigingsmail verstuurd."); } }
private void ViewOnButtonSaveClick(object sender, EventArgs eventArgs) { bool insertNew = reservee == null; if (reservee == null) { reservee = new Reservee(); } // Set fields reservee.FirstName = View.TextBoxName.Text; reservee.Insertion = View.TextBoxInsertion.Text; reservee.LastName = View.TextBoxLastName.Text; reservee.HouseNumber = View.TextBoxHouseNumber.Text; reservee.Street = View.TextBoxStreet.Text; reservee.City = View.TextBoxCity.Text; reservee.PostalCode = View.TextBoxPostalCode.Text; reservee.EmailAddress = View.TextBoxMail.Text; if (insertNew) { reservee.Insert(); } else { reservee.Update(); } MainForm.Open <ControllerReservees>(); }
public static Reservation AsEntity(this ReservationDocument document) { var reservee = new Reservee(document.Reservee.FullName, document.Reservee.Email, document.Reservee.PhoneNumber); var seats = document.Seats.Select(s => new Seat(s.Row, s.Number, s.Price, s.IsVip)); var status = Enum.Parse <ReservationStatus>(document.Status, ignoreCase: true); return(new Reservation(document.Id, document.CinemaId, document.HallId, document.HallId, document.DateTime, status, reservee, seats, document.Version)); }
private void ViewOnAddReserveeClick(object sender, EventArgs e) { // Open lookup to select a reservee. var lookup = MainForm.PopupController <ControllerLookup <Reservee> >(new KeyValuePair <string, object>("Description", "Selecteer een reserverder om een reservering aan toe te voegen.")); // Store selected reservee in TextBox. Reservee dbReservee = lookup.SelectedRows.FirstOrDefault(); if (dbReservee != null && lookup.DialogResult == DialogResult.OK) { View.TextBoxReservee.Tag = dbReservee; View.TextBoxReservee.Text = dbReservee.FullName; } }
public override void Activate() { reservee = Values.SafeGetValue <Reservee>("RESERVEE"); if (reservee != null) { // Fill fields with UserAccount properties. View.TextBoxName.Text = reservee.FirstName; View.TextBoxInsertion.Text = reservee.Insertion; View.TextBoxLastName.Text = reservee.LastName; View.TextBoxStreet.Text = reservee.Street; View.TextBoxCity.Text = reservee.City; View.TextBoxPostalCode.Text = reservee.PostalCode; View.TextBoxHouseNumber.Text = reservee.HouseNumber; View.TextBoxMail.Text = reservee.EmailAddress; } else { View.InvokeAll <NamedClearableTextBox>(t => t.Clear()); } View.TextBoxName.FocusSelectAll(); }
public async Task <Reservation> CreateAsync(EntityId id, CinemaId cinemaId, MovieId movieId, HallId hallId, CustomerId customerId, DateTime dateTime, bool isPaymentUponArrival, IEnumerable <Seat> seats, Reservee reservee) { var areSeatsValid = await _validator.ValidateAsync(cinemaId, movieId, hallId, seats); if (!areSeatsValid) { throw new SeatsAlreadyReservedException(id); } if (!customerId.IsEmpty()) { reservee = await _provider.GetAsync(customerId); } var status = isPaymentUponArrival ? ReservationStatus.PaymentUponArrival : ReservationStatus.Pending; var reservation = Reservation.Create(id, cinemaId, movieId, hallId, dateTime, status, reservee, seats); return(reservation); }
public override void Activate() { View.DataGridViewReservees.DataSource = Reservee.Select().ToList(); }