public JsonResult Reserve(ReservationOffline app) { string dateTime = app.date + "T" + app.time; DateTime dt = Convert.ToDateTime(dateTime); if (dt < DateTime.Now) { return(Json(new { result = 0 }, JsonRequestBehavior.AllowGet)); } else { var zaft = int.Parse(Session["userid"].ToString()); var reqs = db.Emp_Org_Services.Where(c => c.emp_id == zaft).ToList(); var branch_id = reqs[0].branch_id; var user = new user { name = app.name, phone = app.phone }; db.user.Add(user); db.SaveChanges(); var appointment = new Appointments_ { time = dt, user_id = user.id, service_id = app.service_id, branch_id = branch_id }; db.Appointments_.Add(appointment); db.SaveChanges(); return(Json(new { result = 1 }, JsonRequestBehavior.AllowGet)); } }
public ActionResult CheckAttend(Attendence att) { var user = db.user.SingleOrDefault(c => c.id == att.user_id); Appointments_ app = db.Appointments_.SingleOrDefault(c => c.id == att.app_id); if (user.count >= 3) { user.block = true; app.state = "blocked"; } else { if (att.check.Equals("0")) { app.state = "unatt"; user.count = user.count + 1; } else if (att.check.Equals("1")) { app.state = "att"; } } db.SaveChanges(); return(RedirectToAction("CheckAttend")); }
public IHttpActionResult Reserve(int branch_id, int client_id, int service_id, string date, string time) { var req = db.Request.SingleOrDefault(c => c.branch_id == branch_id && c.user_id == client_id && c.service_id == service_id && c.state == "accepted"); var allTimes = GetAvailableTime(branch_id, service_id, date); var dateTime = Convert.ToDateTime(date + "T" + time); PocoReservation res = new PocoReservation(); if (req == null) { res.msg = "You must send request before reserve..."; } else if (req.state == "pending") { res.msg = "Your request is pending..."; } else if (req.state == "rejected") { res.msg = "Your request is rejected..."; } else if (dateTime < DateTime.Now) { res.msg = "You can't reserve in old date..."; } else if (allTimes == null) { res.msg = "No available times in this day..."; } else if (req.state == "finished") { res.msg = "This reservation already exists..."; } else { var timeOfChange = (DateTime)req.timeOfChange; DateTime timeToReserve = timeOfChange.AddDays((double)req.Services_.toFinish); if (dateTime < timeToReserve) { res.msg = "Please wait to finish your paper , you can reserve after " + timeToReserve.ToString("dd/MM/yyyy") + "..."; } else { var appoint = new Appointments_ { time = dateTime, service_id = service_id, user_id = client_id, branch_id = branch_id, state = "pending" }; if (ModelState.IsValid) { req.state = "finished"; db.Appointments_.Add(appoint); db.SaveChanges(); res.msg = "Reservation Done Successfully..."; } else { res.msg = "data not valid..."; } } } return(Ok(res)); }