예제 #1
0
 private async void save(object sender, EventArgs e)
 {
     if (fineCheckbox.Checked)
     {
         Fine fine = new Fine();
         await saveFine(fine, reservation).ContinueWith(async task =>
         {
             int fineId = (int)task.Result;
             if (fineId > 0)
             {
                 reservation.fineId   = fineId;
                 reservation._checked = true;
                 await DatabaseService.updateReservation(reservation);
             }
             else
             {
                 MessageBox.Show("Przepraszamy, nie udało się zapisać opłaty.");
             }
         });
     }
     if (!efficientCheckbox.Checked)
     {
         Car car = new Car();
         car.registrationNumber = reservation.registrationNumber;
         car.carEfficiency      = efficientCheckbox.Checked;
         await DatabaseService.updateCar(car);
     }
     showParent();
 }
 private async void cancelReservation(Reservation reservation)
 {
     if (DateTime.Compare(DateTime.ParseExact(reservation.dateBegin, "dd.MM.yyyy HH:mm:ss", null).AddDays(3), DateTime.Now) > 0)
     {
         if (MessageBox.Show("Kosz anulowania rezerwacji wynosi: 30zł. Chcesz anulować rezerwacje?", "Confirm", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.Yes)
         {
             Fine fine = new Fine();
             fine.fineCost        = 30;
             fine.fineDescription = "Anulowanie rezerwacji, krócej niż 3 dni przed jej terminem.";
             await DatabaseService.insertFine(fine).ContinueWith(async(Task <long> task) =>
             {
                 var id             = task.Result;
                 reservation.ended  = true;
                 reservation.fineId = (int)id;
                 return(await DatabaseService.updateReservation(reservation));
             });
         }
     }
     else
     {
         if (MessageBox.Show("Na pewno chcesz anulować rezerwacje?", "Confirm", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.Yes)
         {
             reservation.ended = true;
             await DatabaseService.updateReservation(reservation);
         }
     }
 }