public ActionResult GetRelatedUserZy(int pageIndex, int pageSize) { int totalCount = 0; int[] RUsers = B_User.GetRelatedUser(UserId); List <dto_Zy> list = B_Zy.GetZyList(RUsers, pageIndex, pageSize, out totalCount); if (list != null) { List <int> ids = B_Answer.GetSubmitedZyIds(UserId, list.Select(a => a.Id).ToArray()); foreach (var l in list) { l.NewId = IdNamingHelper.Encrypt(IdNamingHelper.IdTypeEnum.Zy, l.Id); string subName = ""; Const.Subjects.TryGetValue(l.SubjectId, out subName); l.SubjectName = subName; l.TypeName = l.Type == 0 ? "题库" : "自传"; dto_User u = B_UserRedis.GetUser(l.UserId); l.UserName = u.UserName; l.TrueName = u.TrueName; l.Submited = ids == null ? false : ids.Exists(a => a == l.Id); //隐藏真实Id l.Id = 0; } } ViewBag.RelateUserCount = RUsers == null ? 0 : RUsers.Length; ViewBag.ZyList = list; ViewBag.PageCount = Util.GetTotalPageCount(totalCount, pageSize); return(PartialView()); }
/// <summary> /// 关闭作业 /// </summary> /// <param name="zyId"></param> /// <returns></returns> public JsonResult CloseZy(long zyId) { dto_AjaxJsonResult <string> r = new dto_AjaxJsonResult <string>(); int id = IdNamingHelper.Decrypt(IdNamingHelper.IdTypeEnum.Zy, zyId); dto_Zy zy = B_ZyRedis.GetZy(id); if (zy.UserId == 0) { r.code = AjaxResultCodeEnum.Error; r.message = "试用作业仅用于数据展示,不允许进行操作!"; r.data = ""; return(Json(r)); } if (zy.Status == 2) { r.code = AjaxResultCodeEnum.Error; r.message = "作业已删除,不能关闭!"; r.data = ""; return(Json(r)); } else if (zy.Status == 1) { r.code = AjaxResultCodeEnum.Success; r.message = ""; r.data = ""; return(Json(r)); } else { bool isok = B_Zy.UpdateZyStatus(id, 1); if (isok) { B_ZyRedis.UpdateZyStatus(id, 1); r.code = AjaxResultCodeEnum.Success; r.message = ""; r.data = ""; return(Json(r)); } else { r.code = AjaxResultCodeEnum.Error; r.message = "关闭失败!"; r.data = ""; return(Json(r)); } } }
/// <summary> /// 获取我新建的作业 /// </summary> /// <param name="lastId"></param> /// <param name="count"></param> /// <returns></returns> public ActionResult GetMyZy(long lastId, int count) { int last = lastId == 0 ? 99999999 : IdNamingHelper.Decrypt(IdNamingHelper.IdTypeEnum.Zy, lastId); List <dto_Zy> list = B_Zy.GetZyList(UserId, last, count); if (list != null) { foreach (var l in list) { //隐藏真实Id l.NewId = IdNamingHelper.Encrypt(IdNamingHelper.IdTypeEnum.Zy, l.Id); string subName = ""; Const.Subjects.TryGetValue(l.SubjectId, out subName); l.SubjectName = subName; l.TypeName = l.Type == 0 ? "题库" : "自传"; l.Id = 0; } } ViewBag.ZyList = list; return(PartialView()); }
public ActionResult GetMyZy(int pageIndex, int pageSize) { int totalCount = 0; List <dto_Zy> list = B_Zy.GetZyList(UserId, pageIndex, pageSize, out totalCount); if (list != null) { foreach (var l in list) { //隐藏真实Id l.NewId = IdNamingHelper.Encrypt(IdNamingHelper.IdTypeEnum.Zy, l.Id); string subName = ""; Const.Subjects.TryGetValue(l.SubjectId, out subName); l.SubjectName = subName; l.TypeName = l.Type == 0 ? "题库" : "自传"; l.Id = 0; } } ViewBag.ZyList = list; ViewBag.PageCount = Util.GetTotalPageCount(totalCount, pageSize); return(PartialView()); }
/// <summary> /// 保存作业试题 /// </summary> /// <param name="courseId"></param> /// <param name="zyId"></param> /// <param name="questions"></param> /// <returns></returns> private bool SaveZyQuestions(int courseId, int zyId, string[] questions) { int OrderIndex = 0; List <dto_ZyQuestion> ql = new List <dto_ZyQuestion>(); foreach (var qid in questions) { dto_ZyQuestion q = null; dto_Question dq = B_QuesRedis.GetQuestion(courseId, IdNamingHelper.Decrypt(IdNamingHelper.IdTypeEnum.Ques, long.Parse(qid))); if (dq.haschildren && dq.Children != null) { foreach (var cq in dq.Children) { q = new dto_ZyQuestion(); OrderIndex += 1; q.PQId = dq.id; q.QId = cq.id; q.PTypeId = cq.ptypeid; q.OrderIndex = OrderIndex; q.Score = 0; ql.Add(q); } } else { q = new dto_ZyQuestion(); OrderIndex += 1; q.PQId = dq.id; q.QId = dq.id; q.PTypeId = dq.ptypeid; q.OrderIndex = OrderIndex; q.Score = 0; ql.Add(q); } } return(B_Zy.AddQdbZyQues(zyId, JsonConvert.SerializeObject(ql))); }
/// <summary> /// 保存作业 /// </summary> /// <param name="zyName"></param> /// <param name="startDate"></param> /// <param name="endDate"></param> /// <param name="questions"></param> /// <returns></returns> public JsonResult SaveZy(int courseId, string zyName, string startDate, string endDate, string questions) { #region 参数验证 dto_AjaxJsonResult <string> result = new dto_AjaxJsonResult <string>(); if (zyName.Length > 30) { result.code = AjaxResultCodeEnum.Error; result.message = "作业名称不能超过30个字!"; return(Json(result)); } DateTime OpenDate, DueDate; if (!DateTime.TryParse(startDate, out OpenDate) || !DateTime.TryParse(endDate, out DueDate)) { result.code = AjaxResultCodeEnum.Error; result.message = "开始时间和结束时间都要设置!"; return(Json(result)); } if (OpenDate > DueDate) { result.code = AjaxResultCodeEnum.Error; result.message = "开始时间不能大于结束时间!"; return(Json(result)); } if (string.IsNullOrEmpty(questions)) { result.code = AjaxResultCodeEnum.Error; result.message = "试题不能为空!"; return(Json(result)); } #endregion int subjectId = 0; Const.CourseSubjectMapping.TryGetValue(courseId, out subjectId); //保存作业信息 T_Zy zy = new T_Zy() { UserId = UserId, ZyName = zyName, OpenDate = OpenDate, DueDate = DueDate, Type = 0, CourseId = courseId, SubjectId = subjectId, CreateDate = DateTime.Now, Ip = ClientUtil.Ip, IMEI = ClientUtil.IMEI, MobileBrand = ClientUtil.MobileBrand, SystemType = Request.Browser.Platform.ToString(), Browser = Request.Browser.Browser.ToString(), Status = 0 }; int id = B_Zy.Create(zy); //保存作业试题信息 string[] qs = questions.Split(','); if (id > 0) { SaveZyQuestions(courseId, id, qs); } //修改试题使用次数 IncreaseQuesUsageTimes(courseId, qs); result.code = AjaxResultCodeEnum.Success; result.message = ""; return(Json(result)); }