public ActionResult AddNewServingTime(ServingTimeModel servingTimeModel) { if (!ModelState.IsValid) { return View(servingTimeModel); } ServingTimeTableAdapter servingTimeDataAdapter = new ServingTimeTableAdapter(); DataTable servingTimeDT = servingTimeDataAdapter.GetData(); try { string name = servingTimeModel.Name; TimeSpan startTime = servingTimeModel.startTime; TimeSpan endTime = servingTimeModel.endTime; if (startTime.Days > 0) { startTime = TimeSpan.FromHours(startTime.Days); } if (endTime.Days > 0) { endTime = TimeSpan.FromHours(endTime.Days); } TimeSpan startTimeDB, endTimeDB; if (startTime > endTime) { ModelState.AddModelError("", "Thời gian bắt đầu không được lớn hơn thời gian kết thúc."); return View(servingTimeModel); } foreach (System.Data.DataRow row in servingTimeDT.Rows) { startTimeDB = row.Field<TimeSpan>("StartTime"); endTimeDB = row.Field<TimeSpan>("EndTime"); if ((startTime >= startTimeDB && startTime <= endTimeDB) || (endTime >= startTimeDB && endTime <= endTimeDB) || (startTime <= startTimeDB && endTime >= endTimeDB)) { ModelState.AddModelError("", "Thời gian phục vụ mới trùng với thời gian phục vụ có trước đó. Vui lòng xác nhận lại!"); return View(servingTimeModel); } } DateTime date = DateTime.Now; servingTimeDataAdapter.Insert(name, startTime, endTime, date, date); Session["addServingTime"] = "Thêm mới thành công!"; } catch (Exception ex) { Log.ErrorLog(ex.Message); Session["addServingTime"] = "Thêm mới thất bại!"; } return RedirectToAction("ViewServingTime", "Schedule"); }
public ActionResult ViewServingTime() { DataTable dataTable = new DataTable(); ServingTimeTableAdapter servingTimeAdapter = new ServingTimeTableAdapter(); try { dataTable = servingTimeAdapter.GetData(); } catch (Exception ex) { Log.ErrorLog(ex.Message); } return View(dataTable); }
public JsonResult GetEatingTime() { try { ServingTimeTableAdapter servingTimeTA = new ServingTimeTableAdapter(); DataTable servingTimeDT = servingTimeTA.GetData(); IList<ServingTimeJsonModel> servingTime = new List<ServingTimeJsonModel>(); foreach (DataRow row in servingTimeDT.Rows) { ServingTimeJsonModel model = new ServingTimeJsonModel(); model.ServingTimeID = row.Field<int>("ServingTimeID"); model.Name = row.Field<string>("Name"); model.StartTimeStr = row.Field<TimeSpan>("StartTime").ToString(@"hh\:mm"); TimeSpan? temp = row.Field<TimeSpan?>("EndTime"); if (temp == null) { model.EndTimeStr = null; } else { model.EndTimeStr = temp.Value.ToString(@"hh\:mm"); } servingTime.Add(model); } return Json(new { servingTime = servingTime }, JsonRequestBehavior.AllowGet); } catch (Exception ex) { Log.ErrorLog(ex.ToString()); return Json("error", JsonRequestBehavior.AllowGet); } }
public ActionResult EditServingTime(ServingTimeModel servingTimeModel, string servingTimeID) { if (!ModelState.IsValid) { return View(servingTimeModel); } ServingTimeTableAdapter servingTimeTableAdapter = new ServingTimeTableAdapter(); DataTable servingTimeDT = servingTimeTableAdapter.GetData(); try { int servingTimeId = Convert.ToInt32(servingTimeID); string name = servingTimeModel.Name; TimeSpan startTime = servingTimeModel.startTime; TimeSpan endTime = servingTimeModel.endTime; if (startTime.Days > 0) { startTime = TimeSpan.FromHours(startTime.Days); } if (endTime.Days > 0) { endTime = TimeSpan.FromHours(endTime.Days); } TimeSpan startTimeDB, endTimeDB; if (startTime > endTime) { ModelState.AddModelError("", "Thời gian bắt đầu không được lớn hơn thời gian kết thúc."); return View(servingTimeModel); } foreach (System.Data.DataRow row in servingTimeDT.Rows) { if (!(row.Field<int>("ServingTimeID") == servingTimeId)) { startTimeDB = row.Field<TimeSpan>("StartTime"); endTimeDB = row.Field<TimeSpan>("EndTime"); if ((startTime >= startTimeDB && startTime <= endTimeDB) || (endTime >= startTimeDB && endTime <= endTimeDB) || (startTime <= startTimeDB && endTime >= endTimeDB)) { ModelState.AddModelError("", "Thời gian phục vụ mới trùng với thời gian phục vụ có trước đó. Vui lòng xác nhận lại!"); return View(servingTimeModel); } } } DateTime insertDate = servingTimeModel.insertDate; DateTime lastUpdate = DateTime.Now; servingTimeTableAdapter.UpdateServingTimeByID(name, startTime, endTime, insertDate, lastUpdate, servingTimeId); Session["editServingTime"] = "Cập nhật thành công!"; } catch (Exception ex) { Log.ErrorLog(ex.Message); Session["editServingTime"] = "Cập nhật thất bại!"; } return RedirectToAction("EditServingTime", "Schedule", new { @servingTimeID = servingTimeID }); }