public JsonResult Put(V_HR_CourseSignRst _t) { IHRCourseAttendService service = WMFactory.HRCourseAttend; IEnumerable<HR_CourseAttend> attendList = service.FindByConditions(null, f => f.Lid == _t.Lid && f.Uid == _t.Uid); //不存在,则添加到考勤,应对“缺勤数据” if (attendList == null || attendList.Count() <= 0) { HR_CourseAttend atd = new HR_CourseAttend(); atd.CreateUser = _t.SignRst; atd.Lid = _t.Lid; atd.Uid = _t.Uid; atd.ModifyUser = "******"; if(service.Insert(atd)) return Json(ResultMsg.Success("更新成功!")); else return Json(ResultMsg.Failure("更新失败,请您重试!")); } HR_CourseAttend attend = attendList.FirstOrDefault(); attend.CreateUser = _t.SignRst; if (service.Update(attend)) return Json(ResultMsg.Success("更新成功!")); else return Json(ResultMsg.Failure("更新失败,请您重试!")); }
public ActionResult SignIn(Guid id) { ResultMsg rst = new ResultMsg(); HR_CourseLesson lesson = WMFactory.HRCourseLesson.GetById(id.ToString()); if (lesson == null) { rst = ResultMsg.Failure("找不到课时信息!签到失败!"); return View(rst); } //是否报名 Guid uid = Guid.Parse(CookieHelper.GetCookie("HRWXUid")); int lkcu = WMFactory.HRLKCourseUser.GetCount(f => f.Cid == lesson.Cid && f.Uid == uid); if (lkcu <= 0) { rst = ResultMsg.Failure("该课程您没有报名,无法签到!"); return View(rst); } ViewBag.Lsn = lesson; //已签到人数 ViewBag.LsnSigned = WMFactory.HRCourseAttend.GetCount(f => f.Lid == id); //已报名人数 ViewBag.CrsAttended = WMFactory.HRLKCourseUser.GetCount(f => f.Cid == lesson.Cid); HR_Course course = WMFactory.HRCourse.GetById(lesson.Cid.ToString()); ViewBag.Crs = course; IEnumerable<HR_CourseAttend> attList = WMFactory.HRCourseAttend.FindByConditions(null, f => f.Lid == id && f.Uid == uid); //if (attList != null && attList.Count() > 0 && attList.FirstOrDefault().ModifyTime != null) //{ // rst = ResultMsg.Failure("该课时您的上下课签到已完成!"); // return View(rst); //} if (attList != null && attList.Count() > 0) { rst = ResultMsg.Failure("该课时您已签过到了!"); return View(rst); } //判断当前时间是否可以签到,提前15分钟,开课后10分钟算正常 if (DateTime.Now <= lesson.StartTime.AddMinutes(-120)) { rst = ResultMsg.Failure("开课前2小时内才能签到!"); return View(rst); } if (DateTime.Now > lesson.EndTime) { rst = ResultMsg.Failure("该课时已结束,无法签到!"); return View(rst); } //签到 HR_CourseAttend attend = new HR_CourseAttend(); attend.Lid = id; attend.Uid = uid; attend.CreateTime = DateTime.Now; if (attend.CreateTime <= lesson.StartTime) attend.CreateUser = "******"; else if (attend.CreateTime <= lesson.StartTime.AddMinutes(30)) attend.CreateUser = "******"; else attend.CreateUser = "******"; WMFactory.HRCourseAttend.Insert(attend); return View(ResultMsg.Success("签到成功!")); }