protected void btnRemovePet_Click(object sender, EventArgs e) { string petName; int petNum; petNum = Convert.ToInt32(ddlPetsInRes.SelectedValue); petName = ddlPetsInRes.SelectedItem.Text; ddlPetsInRes.Items.Remove(ddlPetsInRes.SelectedItem); ddlAddPet.Items.Add(new ListItem(petName, petNum.ToString())); // remove pet reservation PetReservation pres = new PetReservation(); editedReservation.petReservationList.ForEach(delegate(PetReservation presloop) { if (presloop.pet.petNumber == petNum) { pres = presloop; } }); if (pres != null) { editedReservation.removePetReservation(pres); } else { //if it wasnt removed something went wrong ScriptManager.RegisterClientScriptBlock(this, this.GetType(), "alertMessage", "alert('No pet reservation was removed..')", true); } Session["manageReservationObject"] = editedReservation; setDropdownsFunctionality(); setSelectedPetRes(editedReservation); }
public ActionResult AddPetReservation(ReservationGroup reservationGroup, Guid skuCategoryId, Guid?addPetId) { // Step 1. Sync ReservationGroupId reservationGroup.PetReservationList.ForEach(x => x.ReservationGroupId = reservationGroup.Id); // Step 2. Get First PetReservation petReservation = reservationGroup.PetReservationList.FirstOrDefault(); if (petReservation == null) { throw new InvalidOperationException("Pet Reservation Required"); } // Step 3. Add Pet if (addPetId != null) { reservationGroup.PetReservationList.Add(new PetReservation() { SkuCategoryId = skuCategoryId, PetId = addPetId.Value }); } // Step 4. Add viewData this.ViewData["__Pet"] = new Paw.Services.Messages.Web.Pets.GetPet() { Id = petReservation.PetId, ProviderGroupId = (Guid)this.ViewData["__ProviderGroupId"] }.ExecuteItem(); return(View(reservationGroup)); }
private void testSerNewFill(List <Pet> _pets, Reservation _res, List <PetReservation> _petRes, List <Service> _ser) { List <PetReservation> petRes = _petRes.FindAll(rr => rr.reservationNum == _res.number); Service sers = new Service(); List <Service> basicServices = sers.ListBasicService().FindAll(s => s.number != 1); int currPet = 0; _pets.ForEach(p => { PetReservation thisPetRes = petRes.Find(pr => pr.petNum == p.number); List <Service> thisSerList = thisPetRes != null ? _ser.FindAll(prs => prs.petResNumber == thisPetRes.petResNum) : null; thisSerList = thisSerList != null ? thisSerList.Count < 2 ? null : thisSerList : null; switch (currPet) { case 0: { pet1.Visible = true; pet1.PetName = p.name; pet1.Included = thisPetRes != null; pet1.Walking = thisSerList == null ? false : thisSerList.Any(s => s.number == 2); pet1.Playtime = thisSerList == null ? false : thisSerList.Any(s => s.number == 5); } break; case 1: { pet2.Visible = true; pet2.PetName = p.name; pet2.Included = thisPetRes != null; pet2.Walking = thisSerList == null ? false : thisSerList.Any(s => s.number == 2); pet2.Playtime = thisSerList == null ? false : thisSerList.Any(s => s.number == 5); } break; case 2: { pet3.Visible = true; pet3.PetName = p.name; pet3.Included = thisPetRes != null; pet3.Walking = thisSerList == null ? false : thisSerList.Any(s => s.number == 2); pet3.Playtime = thisSerList == null ? false : thisSerList.Any(s => s.number == 5); } break; case 3: { pet4.Visible = true; pet4.PetName = p.name; pet4.Included = thisPetRes != null; pet4.Walking = thisSerList == null ? false : thisSerList.Any(s => s.number == 2); pet4.Playtime = thisSerList == null ? false : thisSerList.Any(s => s.number == 5); } break; } currPet++; }); }
protected void btnDeleteReservation_Click(object sender, EventArgs e) { Reservation res = new Reservation(); PetReservation petRes = new PetReservation(); int resNumber = Convert.ToInt16(Session["RESERVATION_NUMBER"]); int succ = res.CancelReservation(resNumber); if (succ > 0) { Response.Redirect("~/Home.aspx"); } }
public int ExecuteNonQuery() { using (DataContext context = DataContext.CreateForMessage(this)) { MessageExtensions.ExecuteNonQuery(this, context); foreach (Guid petId in this.PetList) { PetReservation petReservation = new PetReservation() { ReservationId = this.Id, PetId = petId, ProviderId = this.ProviderId }; context.PetReservationSet.Add(petReservation); } return(context.SaveChanges()); } }
private void loadFullLists() { int resNum = Convert.ToInt16(Session["RESERVATION_NUMBER"]); Reservation res = new Reservation(); Reservation r = res.ListReservations().Find(rr => rr.number == resNum); Pet p = new Pet(); Service ser = new Service(); PetReservation pr = new PetReservation(); List <Pet> pets = p.listPets(Convert.ToInt16(r.ownerNumber)); testSerNewFill(pets, r, pr.ListPetReservations(), ser.ListServices()); txtStartDate.Text = r.sDate.ToString("MMM/dd/yyyy"); txtEndDate.Text = r.eDate.ToString("MMM/dd/yyyy"); ddlPickOwner.Visible = false; }
protected void btnAddDog_Click(object sender, EventArgs e) { string petName; int petNum; petNum = Convert.ToInt32(ddlAddPet.SelectedValue); petName = ddlAddPet.SelectedItem.Text; ddlAddPet.Items.Remove(ddlAddPet.SelectedItem); ddlPetsInRes.Items.Add(new ListItem(petName, petNum.ToString())); // add pet reservation PetReservation pres = new PetReservation(); pres.pet = Pet.getOnePet(petNum); editedReservation.addPetReservation(pres); Session["manageReservationObject"] = editedReservation; setDropdownsFunctionality(); }
protected void btnUpdateReservation_Click(object sender, EventArgs e) { Pet p = new Pet(); Service s = new Service(); PetReservation pr = new PetReservation(); Reservation r = new Reservation(); int resNumber = Convert.ToInt16(Session["RESERVATION_NUMBER"]); Reservation curr = r.ListReservations().Find(rr => rr.number == resNumber); List <Pet> pets = p.listPets((int)curr.ownerNumber); List <PetReservation> petRes = pr.ListPetReservations().FindAll(pr2 => pr2.reservationNum == resNumber); List <Service> prs = s.ListServices().FindAll(ss => petRes.Any(pr2 => pr2.petResNum == s.petResNumber)); r.ChangeReservation(curr.number, DateTime.Parse(txtStartDate.Text), DateTime.Parse(txtEndDate.Text)); int currPet = 0; for (int x = 0; x < pets.Count; x++) { PetReservation thisPetRes = petRes.Find(pr2 => pr2.petNum == pets[x].number); List <Service> thisSerList = thisPetRes != null?s.ListServices().FindAll(prs2 => prs2.petResNumber == thisPetRes.petResNum) : null; switch (currPet) { case 0: { Pet p2 = pets.Find(pp => pp.name == pet1.PetName && pp.ownerNumber == curr.ownerNumber); if (p2 != null) { if (thisPetRes != null) { if (pet1.Included == false) { pr.RemovePetFromRes(p2.number, resNumber); } else { if (thisSerList.Any(q => q.number == 2)) { if (!pet1.Walking) { s.DeleteServ(thisPetRes.petResNum, 2); } } else { if (pet1.Walking) { s.Add(thisPetRes.petResNum, 2); } } if (thisSerList.Any(q => q.number == 5)) { if (!pet1.Playtime) { s.DeleteServ(thisPetRes.petResNum, 5); } } else { if (pet1.Playtime) { s.Add(thisPetRes.petResNum, 5); } } } } else { if (pet1.Included) { int petResNum = pr.Add(p2.number, resNumber)[1]; s.Add(petResNum, 1); if (pet1.Walking) { s.Add(petResNum, 2); } if (pet1.Playtime) { s.Add(petResNum, 5); } } } } } break; case 1: { Pet p2 = pets.Find(pp => pp.name == pet2.PetName && pp.ownerNumber == curr.ownerNumber); if (p2 != null) { if (thisPetRes != null) { if (pet2.Included == false) { pr.RemovePetFromRes(p2.number, resNumber); } else { if (thisSerList.Any(q => q.number == 2)) { if (!pet2.Walking) { s.DeleteServ(thisPetRes.petResNum, 2); } } else { if (pet2.Walking) { s.Add(thisPetRes.petResNum, 2); } } if (thisSerList.Any(q => q.number == 5)) { if (!pet2.Playtime) { s.DeleteServ(thisPetRes.petResNum, 5); } } else { if (pet2.Playtime) { s.Add(thisPetRes.petResNum, 5); } } } } else { int petResNum = pr.Add(p2.number, resNumber)[1]; s.Add(petResNum, 1); if (pet2.Walking) { s.Add(petResNum, 2); } if (pet2.Playtime) { s.Add(petResNum, 5); } } } } break; case 2: { Pet p2 = pets.Find(pp => pp.name == pet3.PetName && pp.ownerNumber == curr.ownerNumber); if (p2 != null) { if (thisPetRes != null) { if (pet3.Included == false) { pr.RemovePetFromRes(p2.number, resNumber); } else { if (thisSerList.Any(q => q.number == 2)) { if (!pet3.Walking) { s.DeleteServ(thisPetRes.petResNum, 2); } } else { if (pet3.Walking) { s.Add(thisPetRes.petResNum, 2); } } if (thisSerList.Any(q => q.number == 5)) { if (!pet3.Playtime) { s.DeleteServ(thisPetRes.petResNum, 5); } } else { if (pet3.Playtime) { s.Add(thisPetRes.petResNum, 5); } } } } else { int petResNum = pr.Add(p2.number, resNumber)[1]; s.Add(petResNum, 1); if (pet3.Walking) { s.Add(petResNum, 2); } if (pet3.Playtime) { s.Add(petResNum, 5); } } } } break; case 3: { Pet p2 = pets.Find(pp => pp.name == pet4.PetName && pp.ownerNumber == curr.ownerNumber); if (p2 != null) { if (thisPetRes != null) { if (pet4.Included == false) { pr.RemovePetFromRes(p2.number, resNumber); } else { if (thisSerList.Any(q => q.number == 2)) { if (!pet4.Walking) { s.DeleteServ(thisPetRes.petResNum, 2); } } else { if (pet4.Walking) { s.Add(thisPetRes.petResNum, 2); } } if (thisSerList.Any(q => q.number == 5)) { if (!pet4.Playtime) { s.DeleteServ(thisPetRes.petResNum, 5); } } else { if (pet4.Playtime) { s.Add(thisPetRes.petResNum, 5); } } } } else { int petResNum = pr.Add(p2.number, resNumber)[1]; s.Add(petResNum, 1); if (pet4.Walking) { s.Add(petResNum, 2); } if (pet4.Playtime) { s.Add(petResNum, 5); } } } } break; } if (resNumber < 0) { Errors.Add("The reservation could not be added."); break; } currPet++; } }
protected void btnMakeReservation_Click(object sender, EventArgs e) { Pet p = new Pet(); Service s = new Service(); PetReservation pr = new PetReservation(); Reservation r = new Reservation(); List <Pet> pets = p.listPets(((userType)Session["UserType"] == userType.Clerk) ? Convert.ToInt16(Session["OWNER_NUMBER"]) : ((Owner)Session["OWNER"]).number); int resNumber = 0; int currPet = 0; for (int x = 0; x < 4; x++) { switch (currPet) { case 0: { Pet p2 = pets.Find(pp => pp.name == pet1.PetName && pp.ownerNumber == (((userType)Session["UserType"] == userType.Clerk) ? Convert.ToInt16(Session["OWNER_NUMBER"]) : ((Owner)Session["OWNER"]).number)); if (p2 != null) { resNumber = r.AddReservation(p2.number, DateTime.Parse(txtStartDate.Text), DateTime.Parse(txtEndDate.Text))[1]; if (resNumber < 0) { break; } int petResNum = pr.Add(p2.number, resNumber)[1]; s.Add(petResNum, 1); if (pet1.Walking) { s.Add(petResNum, 2); } if (pet1.Playtime) { s.Add(petResNum, 5); } } } break; case 1: { Pet p2 = pets.Find(pp => pp.name == pet2.PetName && pp.ownerNumber == (((userType)Session["UserType"] == userType.Clerk) ? Convert.ToInt16(Session["OWNER_NUMBER"]) : ((Owner)Session["OWNER"]).number)); try { if (pet2.Included) { if (p2 != null) { int petResNum = pr.Add(p2.number, resNumber)[1]; s.Add(petResNum, 1); if (pet2.Walking) { s.Add(petResNum, 2); } if (pet2.Playtime) { s.Add(petResNum, 5); } } } } catch { Errors.Add("Your second pet could not be added to the reservation."); } } break; case 2: { Pet p2 = pets.Find(pp => pp.name == pet3.PetName && pp.ownerNumber == (((userType)Session["UserType"] == userType.Clerk) ? Convert.ToInt16(Session["OWNER_NUMBER"]) : ((Owner)Session["OWNER"]).number)); try { if (pet3.Included) { if (p2 != null) { int petResNum = pr.Add(p2.number, resNumber)[1]; s.Add(petResNum, 1); if (pet3.Walking) { s.Add(petResNum, 2); } if (pet3.Playtime) { s.Add(petResNum, 5); } } } } catch { Errors.Add("Your third pet could not be added to the reservation."); } } break; case 3: { Pet p2 = pets.Find(pp => pp.name == pet4.PetName && pp.ownerNumber == (((userType)Session["UserType"] == userType.Clerk) ? Convert.ToInt16(Session["OWNER_NUMBER"]) : ((Owner)Session["OWNER"]).number)); try { if (pet4.Included) { if (p2 != null) { int petResNum = pr.Add(p2.number, resNumber)[1]; s.Add(petResNum, 1); if (pet4.Walking) { s.Add(petResNum, 2); } if (pet4.Playtime) { s.Add(petResNum, 5); } } } } catch { Errors.Add("Your fourth pet could not be added to the reservation."); } } break; } currPet++; } if (resNumber > 0) { Session["RESERVATION_NUMBER"] = resNumber; state = viewingMode.update; } else { Errors.Add("The reservation could not be added."); state = viewingMode.insert; } }
public IActionResult Create(int?id, PRSMR model, int?Pet_1, int?Pet_2, int?Pet_3) { var ownerId = (int)HttpContext.Session.GetInt32("ownerId"); List <int?> petIds = new List <int?>(); List <PetReservation> petReservations = new List <PetReservation>(); if (Pet_1 != null) { petIds.Add(Pet_1); } if (Pet_2 != null) { petIds.Add(Pet_2); } if (Pet_3 != null) { petIds.Add(Pet_3); } ViewData["Pets"] = _context.Pet.Where(p => p.OwnerId == ownerId).ToList(); if (!ModelState.IsValid) { return(View(model)); } else { var transaction = _context.Database.BeginTransaction(); var resId = _context.Reservation.Max(p => p.ReservationId) + 1; Reservation res = model.PetReservation.Reservation; res.ReservationId = resId; _context.Reservation.Add(res); _context.Database.ExecuteSqlInterpolated($"USE HVK_ZZTop SET IDENTITY_INSERT dbo.Reservation ON;"); _context.SaveChanges(); _context.Database.ExecuteSqlInterpolated($"USE HVK_ZZTop SET IDENTITY_INSERT dbo.Reservation OFF;"); foreach (int petid in petIds) { PetReservation petRes = new PetReservation(); var petResId = _context.PetReservation.Max(p => p.PetReservationId) + 1; petRes.ReservationId = resId; petRes.PetId = petid; petRes.PetReservationId = petResId; petRes.PetReservationService.Add(new PetReservationService { ServiceId = 1 }); if (model.Walk) { petRes.PetReservationService.Add(new PetReservationService { ServiceId = 2 }); } if (model.PlayTime) { petRes.PetReservationService.Add(new PetReservationService { ServiceId = 5 }); } if (model.Medication.Name != null) { var medId = _context.Medication.Max(p => p.MedicationId) + 1; petRes.PetReservationService.Add(new PetReservationService { ServiceId = 4 }); model.Medication.MedicationId = medId; _context.Medication.Add(model.Medication); _context.Database.ExecuteSqlInterpolated($"USE HVK_ZZTop SET IDENTITY_INSERT dbo.Medication ON;"); _context.SaveChanges(); _context.Database.ExecuteSqlInterpolated($"USE HVK_ZZTop SET IDENTITY_INSERT dbo.Medication OFF;"); } _context.PetReservation.Add(petRes); _context.Database.ExecuteSqlInterpolated($"USE HVK_ZZTop SET IDENTITY_INSERT dbo.PetReservation ON;"); _context.SaveChanges(); _context.Database.ExecuteSqlInterpolated($"USE HVK_ZZTop SET IDENTITY_INSERT dbo.PetReservation OFF"); } transaction.Commit(); return(RedirectToAction(nameof(Index))); } }