public JsonResult LoadingGradeItems(Guid studentId) { List<GradeItemModel> gradeItemModels; try { using (var context = new TobyDBContext()) { gradeItemModels = context.GradeItemModels.Where(g => g.StudentId == studentId).ToList(); } return Json(gradeItemModels.Select(g => new { item_id = g.Id, grade = g.Grades, exam_name = g.ExamName, exam_date = g.ExamDate.ToString("MM/dd/yyyy") })); } catch { this.Response.StatusCode = 500; return Json(null); } }
public JsonResult SavedEvent(string eventTitle, string startTime, string endTime, bool isAllDay, bool isFixed) { try { if (Session["student"] == null) { return Json(false); } EventModel eventModel = new EventModel { EndTime = DateTime.Parse(endTime), StartTime = DateTime.Parse(startTime), EventTitle = eventTitle, IsAllDay = isAllDay, IsFixed = isFixed, Color = isFixed ? "green" : "red" }; Guid id = Guid.Parse((string)Session["student"]); using (var context = new TobyDBContext()) { eventModel.StudentId = id; context.EventModels.Add(eventModel); context.SaveChanges(); } return Json(eventModel.Id); } catch { return Json(false); } }
public JsonResult LoadingEventSource() { List<EventModel> eventModels; Guid id = Guid.Parse((string)Session["student"]); try { using (var context = new TobyDBContext()) { if (Session["student"] != null) { eventModels = context.EventModels.Where(eventModel => eventModel.StudentId == id).ToList(); } else { return Json(null); } } return Json(eventModels.Select(models => new { id = models.Id.ToString(), title = models.EventTitle, start = models.StartTime.ToString("s"), end = models.EndTime.ToString("s"), allDay = models.IsAllDay, isFixed = models.IsFixed, backgroundColor = models.Color, teacherId = models.TeacherId, worktypeId = models.WorkTypeId }).ToArray(), JsonRequestBehavior.AllowGet); } catch { return Json(null); } }
// // GET: /Payment/ public ActionResult PaymentList() { List<TobyClassLookupTable> tobyClassModels; try { using (var context = new TobyDBContext()) { tobyClassModels = context.TobyClassLookupTable.ToList(); } return View(tobyClassModels); } catch { this.Response.StatusCode = 500; return PartialView("Error"); } }
public JsonResult LoadingPaymentList(string dateLimit, int condition = 0) { List<PaymentModel> paymentModels; DateTime currentDate = DateTime.Now.Date; DateTime pastDataLimit = new DateTime(); try { if (dateLimit != null && !DateTime.TryParse(dateLimit, out pastDataLimit)) { throw new Exception(); } using (var context = new TobyDBContext()) { paymentModels = context.PaymentModels.Where(p => condition != 0 ? (condition == 1 ? p.PaymentDate != null && p.PaymentDate >= pastDataLimit : (p.PaymentDeadLine < currentDate && p.PaymentDate == null)) : true).OrderBy(p => p.PaymentDeadLine) .Include(p => p.Students).ToList(); } return Json(paymentModels.Select(payment => new { _id = payment.Id, payment_name = payment.PaymentName, payment = payment.Payment, student_name = String.Format("{0}({1})", payment.Students.Name, payment.Students.EnglishName), payment_date = payment.PaymentDate.HasValue ? payment.PaymentDate.Value.ToString("MM/dd/yyyy") : null, deadline = payment.PaymentDeadLine.HasValue ? payment.PaymentDeadLine.Value.ToString("MM/dd/yyyy") : null, class_id = payment.Students.TobyClassId }).ToArray()); } catch { this.Response.StatusCode = 500; return Json(null); } }
public JsonResult SaveGradeItem(string examName, string scoreAmount, string examDate, Guid studentId) { decimal scroe; DateTime date; GradeItemModel gradeItem = new GradeItemModel { ExamName = examName, StudentId = studentId }; try { if (!Decimal.TryParse(scoreAmount, out scroe) || !DateTime.TryParse(examDate, out date)) { throw new Exception(); } gradeItem.Grades = scroe; gradeItem.ExamDate = date; using (var context = new TobyDBContext()) { context.GradeItemModels.Add(gradeItem); context.SaveChanges(); } return Json(new { item_id = gradeItem.Id, grade = gradeItem.Grades, exam_name = gradeItem.ExamName, exam_date = gradeItem.ExamDate.ToString("MM/dd/yyyy") }); } catch { this.Response.StatusCode = 500; return Json(null); } }
public void DeleteGradeItem(Guid id) { try { using (var context = new TobyDBContext()) { context.GradeItemModels.Delete(g => g.Id == id); } } catch { this.Response.StatusCode = 500; } }
public void UpdatedPayment(string registerTime, string dealineTime, string paymentAmount, string paymentName, string paymentId) { Guid id; DateTime deadline, payDate = DateTime.MaxValue; decimal payment; try { using (var context = new TobyDBContext()) { if (!Guid.TryParse(paymentId, out id) || !decimal.TryParse(paymentAmount, out payment) || !DateTime.TryParse(dealineTime, out deadline) || ( registerTime != "" && !DateTime.TryParse(registerTime, out payDate))) { throw new Exception(); } context.PaymentModels.Update(p => p.Id == id, model => new PaymentModel { Payment = payment, PaymentDeadLine = deadline, PaymentName = paymentName, PaymentDate = registerTime != "" ? payDate : new Nullable<DateTime>() }); } } catch { } }
public JsonResult LoadingLaborHourStatisticsList(string dateRange) { List<EventModel> eventModels; Dictionary<Guid, Dictionary<string, List<EventModel>>> eventModelDic = new Dictionary<Guid,Dictionary<string,List<EventModel>>>(); Dictionary<int, string> workTypeDic = new Dictionary<int, string>(); Dictionary<Guid, string> teacherDic; DateTime dateTimeStart, dateTimeEnd; try { using (var context = new TobyDBContext()) { if(!DateTime.TryParse(dateRange, out dateTimeStart)) { throw new Exception(); } dateTimeStart = new DateTime(dateTimeStart.Year, dateTimeStart.Month, 1); dateTimeEnd = dateTimeStart.AddMonths(1).AddDays(-1); eventModels = context.EventModels.Where(e => e.TeacherId != null && (e.StartTime >= dateTimeStart && e.EndTime <= dateTimeEnd)).Include(e=> e.Teacher).ToList(); eventModelDic = context.TeacherModels.ToDictionary(key=> key.Id, v => new Dictionary<string, List<EventModel>>()); workTypeDic = context.WorkTypeLookupTable.ToDictionary(key=> key.Id, v => v.TypeName); teacherDic = context.TeacherModels.ToDictionary(key=> key.Id, v => String.Format("{0}({1})", v.Name, v.EnglishName)); } foreach (EventModel model in eventModels) { if (eventModelDic.ContainsKey(model.TeacherId.Value)) { var typeName = "NoType"; if(workTypeDic.ContainsKey(model.WorkTypeId.GetValueOrDefault())) { typeName = workTypeDic[model.WorkTypeId.GetValueOrDefault()]; } if (!eventModelDic[model.TeacherId.Value].ContainsKey(typeName)) { eventModelDic[model.TeacherId.Value].Add(typeName, new List<EventModel>()); } eventModelDic[model.TeacherId.Value][typeName].Add(model); } else { throw new Exception(); } } return Json(eventModelDic.Select(e => new { teacher_name = teacherDic[e.Key], type_array = e.Value.Select(v => new { type_name = v.Key, labor_hour = v.Value.Sum(h=> h.EndTime.Subtract(h.StartTime).TotalHours) }).ToArray() }).ToArray()); } catch { this.Response.StatusCode = 500; return Json(null); } }
private void AutoGeneratedFixedEvents() { Mapper.Reset(); Mapper.CreateMap<EventModel, EventModel>().ForMember(dest => dest.Id, opt => opt.Ignore()); List<EventModel> events; EventModel eventModel; List<StudentModel> students; DateTime currentDate = DateTime.Today, startTime, endTime; using (var context = new TobyDBContext()) { students = context.StudentModels.ToList(); students.ForEach(student => { events = context.EventModels.Where(models => models.IsFixed && models.StudentId == student.Id && models.StartTime < currentDate).ToList(); foreach (EventModel model in events) { startTime = model.StartTime.AddDays(7); endTime = model.EndTime.AddDays(7); if (!CheckEventIsExist(startTime, endTime, model.StudentId)) { context.EventModels.Attach(model); eventModel = Mapper.Map<EventModel, EventModel>(model); eventModel.StartTime = startTime; eventModel.EndTime = endTime; eventModel.Color = "green"; context.EventModels.Add(eventModel); model.IsFixed = false; model.Color = "red"; } } }); context.SaveChanges(); } }
public void DeletedEvent(Guid id) { try { using (var context = new TobyDBContext()) { context.EventModels.Delete(events => events.Id == id); } } catch { } }
public void UpdatedTitle(Guid id, Guid teacherId, int workTypeId, string eventTitle, string theColor, bool isFixed) { try { using (var context = new TobyDBContext()) { context.EventModels.Update(events => events.Id == id, eventTitles => new EventModel { EventTitle = eventTitle, Color = theColor, IsFixed = isFixed, TeacherId = teacherId, WorkTypeId = workTypeId }); } } catch { } }
public void UpdatedEvent(Guid id, string startTime, string endTime, bool isAllDay) { try { using (var context = new TobyDBContext()) { context.EventModels.Update(events => events.Id == id, eventTitles => new EventModel { StartTime = DateTime.Parse(startTime), EndTime = DateTime.Parse(endTime), IsAllDay = isAllDay }); } } catch { } }
public JsonResult SearchStudent(string studentName) { StudentModel student; try { using (var context = new TobyDBContext()) { if (studentName != null && studentName != "") { student = context.StudentModels.Where(students => students.Name == studentName || students.EnglishName == studentName).First(); } else { throw new Exception(); } } return Json(new { student_id = student.Id, student_name = String.Format("{0}({1})", student.Name, student.EnglishName) }); } catch { this.Response.StatusCode = 500; return Json(null); } }
public JsonResult GetChartData(Guid id) { List<GradeItemModel> gradeItems; JavaScriptSerializer serializer = new JavaScriptSerializer(); try { using (var context = new TobyDBContext()) { gradeItems = context.GradeItemModels.Where(g => g.StudentId == id).OrderBy(g => g.ExamDate).ToList(); } return Json(gradeItems.Select(g => new object[4] { GetJavascriptTimestamp(g.ExamDate), decimal.ToInt32(g.Grades), g.ExamName, g.Grades.ToString() }).ToArray()); } catch { this.Response.StatusCode = 500; return Json(null); } }
public ActionResult GetDutyWorks(string dutyDate, string teacherId) { DateTime date; Guid id = Guid.Empty; List<EventModel> eventModels; try { if (!DateTime.TryParse(dutyDate, out date) || !Guid.TryParse(teacherId, out id)) { throw new Exception(); } using (var context = new TobyDBContext()) { eventModels = (from eventModel in context.EventModels where eventModel.TeacherId == id && EntityFunctions.DiffDays(eventModel.StartTime, date) == 0 select eventModel).Include(m => m.Student).Include(m => m.Teacher) .OrderBy(m => m.StudentId).ToList(); } return PartialView("DutyWorks", eventModels); } catch { return PartialView("Error"); } }
private void InitializeDB() { Database.SetInitializer(new DbContextInitializer()); using (var context = new TobyDBContext()) { context.Database.CreateIfNotExists(); } }
public JsonResult SearchStudents(string studentName) { StudentModel student; try { using (var context = new TobyDBContext()) { if (studentName != null && studentName != "") { student = context.StudentModels.Where(students => students.Name == studentName || students.EnglishName == studentName).First(); } else { throw new Exception(); } } Session["student"] = student.Id.ToString(); return Json(student.Id); } catch { return Json(false); } }
private bool CheckEventIsExist(DateTime start, DateTime end, Guid studentId) { List<EventModel> eventModels; using (var context = new TobyDBContext()) { eventModels = context.EventModels.Where(events => events.StudentId == studentId && ((start > events.StartTime && start < events.EndTime) || (end > events.StartTime && end < events.EndTime) || (start <= events.StartTime && end >= events.EndTime)) ).ToList(); } if (eventModels != null && eventModels.Count != 0) { return true; } return false; }
public JsonResult GeneratedFixedEvents() { Mapper.Reset(); Mapper.CreateMap<EventModel, EventModel>().ForMember(dest => dest.Id, opt => opt.Ignore()); List<EventModel> events; EventModel eventModel; DateTime startTime, endTime; try { if (Session["student"] != null) { using (var context = new TobyDBContext()) { Guid id = Guid.Parse((string)Session["student"]); events = context.EventModels.Where(models => models.IsFixed && models.StudentId == id).ToList(); foreach (EventModel model in events) { startTime = model.StartTime.AddDays(7); endTime = model.EndTime.AddDays(7); if (!CheckEventIsExist(startTime, endTime, model.StudentId)) { context.EventModels.Attach(model); eventModel = Mapper.Map<EventModel, EventModel>(model); eventModel.StartTime = startTime; eventModel.EndTime = endTime; eventModel.Color = "green"; context.EventModels.Add(eventModel); model.IsFixed = false; model.Color = "red"; } } context.SaveChanges(); } } else { return Json(false); } return Json(true); } catch { return Json(false); } }
public JsonResult SavedEvents(EventJsonModel jsonModel) { DateTime start, end, temp; EventModel eventModel; try { if (jsonModel.studentIds == null) { throw new Exception(); } if (DateTime.TryParse(jsonModel.startTime, out start) && DateTime.TryParse(jsonModel.endTime, out end)) { if (start > end) { temp = start; start = end; end = temp; } } else { throw new Exception(); } using (var context = new TobyDBContext()) { jsonModel.studentIds.ForEach(id => { eventModel = new EventModel { EventTitle = jsonModel.eventTile, StartTime = start, EndTime = end, StudentId = id, TeacherId = jsonModel.teacherId, WorkTypeId = jsonModel.workTypeId, Color = "red", IsFixed = false, IsAllDay = false }; context.EventModels.Add(eventModel); }); context.SaveChanges(); } return Json(true); } catch { return Json(false); } }
public ActionResult GetDispatchedStudents(string startTime, string endTime) { DateTime start, end, temp; List<StudentViewModel> studentModels; List<EventModel> eventModels; List<StudentModel> students; try { if (DateTime.TryParse(startTime, out start) && DateTime.TryParse(endTime, out end)) { if (start > end) { temp = start; start = end; end = temp; } } else { return PartialView("Error"); } using (var context = new TobyDBContext()) { students = context.StudentModels.OrderBy(s=> s.TobyClassId).ToList(); eventModels = context.EventModels.Where(events => (start > events.StartTime && start < events.EndTime) || (end > events.StartTime && end < events.EndTime) || (start <= events.StartTime && end >= events.EndTime)).ToList(); studentModels = new List<StudentViewModel>(); students.ForEach(student => { var name = String.Format("{0}({1})", student.Name, student.EnglishName); if (!eventModels.Any(studentId => student.Id == studentId.StudentId)) { studentModels.Add(new StudentViewModel { StudentId = student.Id.ToString(), StudentName = name }); } }); } return PartialView("DispatchedStudent", studentModels); } catch { return PartialView("Error"); } }
public ActionResult EditedPayment(string paymentId) { PaymentModel paymentModel; Guid id; try { using (var context = new TobyDBContext()) { if (!Guid.TryParse(paymentId, out id)) { throw new Exception(); } paymentModel = context.PaymentModels.Where(p => p.Id == id).Single(); } return PartialView("EditedPayment", paymentModel); } catch { this.Response.StatusCode = 500; return PartialView("Error"); } }
public JsonResult RemovedStudent(string studentId) { Guid id; try { if (studentId == null || studentId == "" || !Guid.TryParse(studentId, out id)) { throw new Exception(); } using (var context = new TobyDBContext()) { context.StudentModels.Delete(student => student.Id == id); } return Json(true); } catch { return Json(false); } }
public ActionResult GetStudentsByClassId(int classId) { List<StudentModel> studentModels; try { using (var context = new TobyDBContext()) { studentModels = context.StudentModels.Where(s => s.TobyClassId == classId).ToList(); } return PartialView("SelectedStudents", studentModels.Select(s => new StudentViewModel { StudentId = s.Id.ToString(), StudentName = String.Format("{0}({1})", s.Name, s.EnglishName) }).ToList()); } catch { this.Response.StatusCode = 500; return PartialView("Error"); } }
public JsonResult GetTeacherList() { List<TeacherModel> teachers; try { using (var context = new TobyDBContext()) { teachers = context.TeacherModels.ToList(); } return Json(teachers.Select(models => new { id = models.Id, name = String.Format("{0}({1})", models.Name, models.EnglishName) })); } catch { this.Response.StatusCode = 500; return Json(null); } }
public void DeletedPayment(string paymentId) { Guid id; try { using (var context = new TobyDBContext()) { if (!Guid.TryParse(paymentId, out id)) { throw new Exception(); } context.PaymentModels.Delete(p => p.Id == id); } } catch { } }
public JsonResult GetWorkTypeList() { List<WorkTypeLookupTable> workTyepList; try { using (var context = new TobyDBContext()) { workTyepList = context.WorkTypeLookupTable.ToList(); } return Json(workTyepList.Select(models => new { type_id = models.Id, type_name = models.TypeName })); } catch { this.Response.StatusCode = 500; return Json(null); } }
public JsonResult SavedNewPayment(string dealineTime, string paymentAmount, string paymentName, List<string> studentIds) { Guid studentId; DateTime deadline; decimal payment; PaymentModel paymentModel = new PaymentModel(); PaymentJson paymentJson; List<PaymentJson> paymentJsonList = new List<PaymentJson>(); try { using (var context = new TobyDBContext()) { if (studentIds != null && studentIds.Count != 0) { studentIds.ForEach(id => { paymentModel = new PaymentModel { PaymentName = paymentName }; paymentJson = new PaymentJson { payment_name = paymentName }; if (decimal.TryParse(paymentAmount, out payment) && DateTime.TryParse(dealineTime, out deadline) && Guid.TryParse(id, out studentId)) { paymentModel.Payment = payment; paymentModel.PaymentDeadLine = deadline; paymentModel.StudentId = studentId; var student = context.StudentModels.Where(s => s.Id == studentId).Single(); paymentJson.deadline = deadline.ToString("MM/dd/yyyy"); paymentJson.payment = paymentAmount; paymentJson.student_name = string.Format("{0}({1})", student.Name, student.EnglishName); paymentJson.class_id = student.TobyClassId.GetValueOrDefault().ToString(); } else { throw new Exception(); } context.PaymentModels.Add(paymentModel); context.SaveChanges(); paymentJson._id = paymentModel.Id.ToString(); paymentJsonList.Add(paymentJson); }); } else { throw new Exception(); } } return Json(paymentJsonList.ToArray()); } catch { this.Response.StatusCode = 500; return Json(null); } }
public void UpdateGradeItem(string examName, decimal scoreAmount, string examDate, Guid itemId) { DateTime date; try { if (!DateTime.TryParse(examDate, out date)) { throw new Exception(); } using (var context = new TobyDBContext()) { context.GradeItemModels.Update(g => g.Id == itemId, item => new GradeItemModel { Grades = scoreAmount, ExamName = examName, ExamDate = date }); } } catch { this.Response.StatusCode = 500; } }