/// <summary> /// 新增一条记录 /// </summary> /// <param name="model"></param> /// <returns></returns> public bool Add(Course_UnitQuestion model) { model.Verson = "-1"; model.Display = true; model.Delflag = false; model.CreateDate = DateTime.Now; return dal.Add(model) > 0; }
/// <summary> /// 获取数据集 /// </summary> /// <param name="where"></param> /// <param name="orderBy"></param> /// <returns></returns> public List<Course_UnitQuestion> GetList(string where, string orderBy) { StringBuilder sql = new StringBuilder(); sql.Append("select * from [dbo].[Course_UnitQuestion]"); if (!string.IsNullOrEmpty(where)) sql.Append(" where " + where); if (!string.IsNullOrEmpty(orderBy)) sql.Append(" order by " + orderBy); List<Course_UnitQuestion> list = new List<Course_UnitQuestion>(); using (IDataReader reader = MSEntLibSqlHelper.ExecuteDataReaderBySql(sql.ToString())) { while (reader.Read()) { Course_UnitQuestion model = new Course_UnitQuestion(); ConvertToModel(reader, model); list.Add(model); } } return list; }
/// <summary> /// 新增一条记录 /// </summary> /// <param name="model"></param> /// <returns></returns> public int Add(Course_UnitQuestion model) { StringBuilder sql = new StringBuilder(); sql.Append("insert into [dbo].[Course_UnitQuestion] ([Verson],[UnitContent],[Content],[QTtype],[Question],[Answer],[Credit],[Display],[Delflag],[CreateDate])"); sql.Append(" values (@Verson,@UnitContent,@Content,@QTtype,@Question,@Answer,@Credit,@Display,@Delflag,@CreateDate)"); sql.Append(" set @Id=@@IDENTITY"); SqlParameter[] cmdParams = new SqlParameter[]{ new SqlParameter("@Id", SqlDbType.Int, 4) { Value = model.Id, Direction = ParameterDirection.Output }, new SqlParameter("@Verson", SqlDbType.VarChar, 20) { Value = model.Verson }, new SqlParameter("@UnitContent", SqlDbType.Int, 4) { Value = model.UnitContent }, new SqlParameter("@Content", SqlDbType.VarChar, 2000) { Value = model.Content }, new SqlParameter("@QTtype", SqlDbType.Int, 4) { Value = model.QTtype }, new SqlParameter("@Question", SqlDbType.VarChar, 8000) { Value = model.Question }, new SqlParameter("@Answer", SqlDbType.VarChar, 100) { Value = model.Answer }, new SqlParameter("@Credit", SqlDbType.Float, 8) { Value = model.Credit }, new SqlParameter("@Display", SqlDbType.Bit, 1) { Value = model.Display }, new SqlParameter("@Delflag", SqlDbType.Bit, 1) { Value = model.Delflag }, new SqlParameter("@CreateDate", SqlDbType.DateTime, 8) { Value = model.CreateDate } }; int result = Convert.ToInt32(MSEntLibSqlHelper.ExecuteNonQueryBySql(sql.ToString(), cmdParams)); model.Id = Convert.ToInt32(cmdParams[0].Value); return result; }
/// <summary> /// 获取分页数据集 /// </summary> /// <param name="pageSize"></param> /// <param name="pageIndex"></param> /// <param name="where"></param> /// <param name="orderBy"></param> /// <param name="recordCount"></param> /// <returns></returns> public List<Course_UnitQuestion> GetList(int pageSize, int pageIndex, string where, string orderBy, out int recordCount) { if (string.IsNullOrEmpty(orderBy)) throw new ArgumentNullException(); StringBuilder sb = new StringBuilder(); sb.Append("select count(1) from [dbo].[Course_UnitQuestion]"); if (!string.IsNullOrEmpty(where)) sb.Append(" where " + where); recordCount = Convert.ToInt32(MSEntLibSqlHelper.ExecuteScalarBySql(sb.ToString())); int start = (pageIndex - 1) * pageSize + 1; int end = pageIndex * pageSize; StringBuilder sql = new StringBuilder(); sql.Append("select * from (select *,ROW_NUMBER() over (order by " + orderBy + ") as [RowNum] from [dbo].[Course_UnitQuestion]"); if (!string.IsNullOrEmpty(where)) sql.Append(" where " + where); sql.Append(") as T where [RowNum] between " + start + " and " + end); List<Course_UnitQuestion> list = new List<Course_UnitQuestion>(); using (IDataReader reader = MSEntLibSqlHelper.ExecuteDataReaderBySql(sql.ToString())) { while (reader.Read()) { Course_UnitQuestion model = new Course_UnitQuestion(); ConvertToModel(reader, model); list.Add(model); } } return list; }
private void ConvertToModel(IDataReader reader, Course_UnitQuestion model) { if (reader["Id"] != DBNull.Value) model.Id = Convert.ToInt32(reader["Id"]); if (reader["Verson"] != DBNull.Value) model.Verson = reader["Verson"].ToString(); if (reader["UnitContent"] != DBNull.Value) model.UnitContent = Convert.ToInt32(reader["UnitContent"]); if (reader["Content"] != DBNull.Value) model.Content = reader["Content"].ToString(); if (reader["QTtype"] != DBNull.Value) model.QTtype = Convert.ToInt32(reader["QTtype"]); if (reader["Question"] != DBNull.Value) model.Question = reader["Question"].ToString(); if (reader["Answer"] != DBNull.Value) model.Answer = reader["Answer"].ToString(); if (reader["Credit"] != DBNull.Value) model.Credit = Convert.ToDouble(reader["Credit"]); if (reader["Display"] != DBNull.Value) model.Display = Convert.ToBoolean(reader["Display"]); if (reader["Delflag"] != DBNull.Value) model.Delflag = Convert.ToBoolean(reader["Delflag"]); if (reader["CreateDate"] != DBNull.Value) model.CreateDate = Convert.ToDateTime(reader["CreateDate"]); }
/// <summary> /// 更新一条记录 /// </summary> /// <param name="model"></param> /// <returns></returns> public int Update(Course_UnitQuestion model) { StringBuilder sql = new StringBuilder(); sql.Append("update [dbo].[Course_UnitQuestion] set "); sql.Append("[Verson]=@Verson,[UnitContent]=@UnitContent,[Content]=@Content,[QTtype]=@QTtype,[Question]=@Question,[Answer]=@Answer,[Credit]=@Credit,[Display]=@Display,[Delflag]=@Delflag,[CreateDate]=@CreateDate"); sql.Append(" where [Id]=@Id"); SqlParameter[] cmdParams = new SqlParameter[] { new SqlParameter("@Id", SqlDbType.Int, 4) { Value = model.Id }, new SqlParameter("@Verson", SqlDbType.VarChar, 20) { Value = model.Verson }, new SqlParameter("@UnitContent", SqlDbType.Int, 4) { Value = model.UnitContent }, new SqlParameter("@Content", SqlDbType.VarChar, 2000) { Value = model.Content }, new SqlParameter("@QTtype", SqlDbType.Int, 4) { Value = model.QTtype }, new SqlParameter("@Question", SqlDbType.VarChar, 8000) { Value = model.Question }, new SqlParameter("@Answer", SqlDbType.VarChar, 100) { Value = model.Answer }, new SqlParameter("@Credit", SqlDbType.Float, 8) { Value = model.Credit }, new SqlParameter("@Display", SqlDbType.Bit, 1) { Value = model.Display }, new SqlParameter("@Delflag", SqlDbType.Bit, 1) { Value = model.Delflag }, new SqlParameter("@CreateDate", SqlDbType.DateTime, 8) { Value = model.CreateDate } }; return MSEntLibSqlHelper.ExecuteNonQueryBySql(sql.ToString(), cmdParams); }
/// <summary> /// 更新指定活动考试试题版本号 /// </summary> /// <param name="UnitId"></param> /// <param name="Verson"></param> /// <returns></returns> public int SetVerson(int UnitContent, string Verson) { int result = -1; //查询指定活动的考试试题信息 string sql = @"select * from dbo.Course_UnitQuestion where UnitContent=@UnitContent and Display = 1 and Delflag = 0"; SqlParameter[] cmdParams = new SqlParameter[]{ new SqlParameter("@UnitContent", SqlDbType.Int, 4) { Value = UnitContent } }; List<Course_UnitQuestion> list = new List<Course_UnitQuestion>(); using (IDataReader reader = MSEntLibSqlHelper.ExecuteDataReaderBySql(sql, cmdParams)) { while (reader.Read()) { Course_UnitQuestion model1 = new Course_UnitQuestion(); ConvertToModel(reader, model1); model1.Verson = Verson; list.Add(model1); } } //将指定活动下的考试试题display置为0 StringBuilder sqlBuild = new StringBuilder(); sqlBuild.Append("update [dbo].[Course_UnitQuestion] set display = 0 where UnitContent=@UnitContent and display = 1 and delflag = 0;"); cmdParams = new SqlParameter[] { new SqlParameter("@UnitContent", SqlDbType.Int, 4) { Value = UnitContent } }; result = MSEntLibSqlHelper.ExecuteNonQueryBySql(sqlBuild.ToString(), cmdParams); //新增新版本号的数据 for (int i = 0; i < list.Count; i++) { sqlBuild = new StringBuilder(); sqlBuild.Append("insert into [dbo].[Course_UnitQuestion] ([Verson],[UnitContent],[Content],[QTtype],[Question],[Answer],[Credit],[Display],[Delflag],[CreateDate])"); sqlBuild.Append(" values (@Verson,@UnitContent,@Content,@QTtype,@Question,@Answer,@Credit,@Display,@Delflag,@CreateDate)"); sqlBuild.Append(" set @Id=@@IDENTITY"); cmdParams = new SqlParameter[]{ new SqlParameter("@Id", SqlDbType.Int, 4) { Value = list[i].Id, Direction = ParameterDirection.Output }, new SqlParameter("@Verson", SqlDbType.VarChar, 20) { Value = list[i].Verson }, new SqlParameter("@UnitContent", SqlDbType.Int, 4) { Value = list[i].UnitContent }, new SqlParameter("@Content", SqlDbType.VarChar, 2000) { Value = list[i].Content }, new SqlParameter("@QTtype", SqlDbType.Int, 4) { Value = list[i].QTtype }, new SqlParameter("@Question", SqlDbType.VarChar, 8000) { Value = list[i].Question }, new SqlParameter("@Answer", SqlDbType.VarChar, 100) { Value = list[i].Answer }, new SqlParameter("@Credit", SqlDbType.Float, 8) { Value = list[i].Credit }, new SqlParameter("@Display", SqlDbType.Bit, 1) { Value = list[i].Display }, new SqlParameter("@Delflag", SqlDbType.Bit, 1) { Value = list[i].Delflag }, new SqlParameter("@CreateDate", SqlDbType.DateTime, 8) { Value = list[i].CreateDate } }; result = Convert.ToInt32(MSEntLibSqlHelper.ExecuteNonQueryBySql(sqlBuild.ToString(), cmdParams)); } return result; }
/// <summary> /// 获取指定活动的单元活动考试试题信息 /// </summary> /// <param name="id"></param> /// <returns></returns> public List<Course_UnitQuestion> GetQuizQuesInfo(int id) { string sql = @"select * from dbo.Course_UnitQuestion as A,dbo.Course_UnitContent as B where UnitContent=@UnitContent and A.UnitContent = B.Id and A.Display = 1 and A.Delflag = 0 and B.Display = 1 and B.Delflag = 0"; SqlParameter[] cmdParams = new SqlParameter[]{ new SqlParameter("@UnitContent", SqlDbType.Int, 4) { Value = id } }; List<Course_UnitQuestion> list = new List<Course_UnitQuestion>(); using (IDataReader reader = MSEntLibSqlHelper.ExecuteDataReaderBySql(sql, cmdParams)) { while (reader.Read()) { Course_UnitQuestion model = new Course_UnitQuestion(); ConvertToModel(reader, model); list.Add(model); } } return list; }
/// <summary> /// 取得一条记录 /// </summary> /// <param name="id"></param> /// <param name="where"></param> /// <returns></returns> public Course_UnitQuestion GetModel(int id, string where) { string sql = "select * from [dbo].[Course_UnitQuestion] where [Id]=@Id"; if (!string.IsNullOrEmpty(where)) sql += " and " + where; SqlParameter[] cmdParams = new SqlParameter[]{ new SqlParameter("@Id", SqlDbType.Int, 4) { Value = id } }; using (IDataReader reader = MSEntLibSqlHelper.ExecuteDataReaderBySql(sql, cmdParams)) { if (reader.Read()) { Course_UnitQuestion model = new Course_UnitQuestion(); ConvertToModel(reader, model); return model; } else { return null; } } }
public ActionResult AddQuizQues(Course_UnitQuestion model) { Course_UnitQuestionBLL bll = new Course_UnitQuestionBLL(); if (bll.Add(model)) { return Json(new { Result = true, Msg = "新增成功!" }, JsonRequestBehavior.AllowGet); } else { return Json(new { Result = false, Msg = "新增失败!" }, JsonRequestBehavior.AllowGet); } }
public ActionResult TestExeclTemp(int UnitContent) { Course_UnitQuestionBLL course_UnitQuestionBLL = new Course_UnitQuestionBLL(); string msg = ""; HttpPostedFileBase excel = Request.Files[0]; string fileName = Server.MapPath(Code.UploadCore.UploadAttach(excel, ref msg)); int GroupId = Code.SiteCache.Instance.GroupId; int OrganId = Code.SiteCache.Instance.ManageOrganId; DataTable dt = ReadExcel(fileName); if (dt.Columns[0].ColumnName.ToString() != "类型" || dt.Columns[1].ColumnName.ToString() != "题目内容" || dt.Columns[2].ColumnName.ToString() != "答案内容" || dt.Columns[3].ColumnName.ToString() != "正确答案序号" || dt.Columns[4].ColumnName.ToString() != "权重") { return Content("no:导入的格式不正确!"); } else { List<Course_UnitQuestion> list = new List<Course_UnitQuestion>(); if (dt.Rows.Count == 0) { return Content("no:无导入数据!"); } else { for (int i = 0; i < dt.Rows.Count; i++) { try { for (int k = 0; k < dt.Columns.Count; k++) { if (string.IsNullOrEmpty(dt.Rows[i][k].ToString())) { return Content("no:导入的数据有空值!"); } } Course_UnitQuestion model = new Course_UnitQuestion(); model.UnitContent = UnitContent; model.Verson = "-1"; if (dt.Rows[i][2].ToString().Trim().IndexOf(',') > 0) { string[] Questions = dt.Rows[i][2].ToString().Trim().Split(','); model.Question = "["; for (int c = 0; c < Questions.Length; c++) { model.Question += "{Id:" + (c + 1) + ",Content:'" + Questions[c] + "'},"; } model.Question = model.Question.TrimEnd(',') + "]"; } else { model.Question = dt.Rows[i][2].ToString().Trim(); } switch (dt.Rows[i][0].ToString().Trim()) { case "单选题": model.QTtype = 1; break; case "多选题": model.QTtype = 2; break; case "判断题": model.QTtype = 3; model.Question = "[{Id:1,Content:'1'},{Id:2,Content:'0'}]"; break; default: break; } model.Content = dt.Rows[i][1].ToString().Trim(); model.Answer = dt.Rows[i][3].ToString().Trim(); if (Regex.IsMatch(dt.Rows[i][4].ToString(), @"^[+-]?\d*[.]?\d*$")) { model.Credit = Convert.ToDouble(dt.Rows[i][4]); } else { return Content("no:权重必须是数字类型!"); } if (dt.Rows[i][4].ToString().Length > 2) { return Content("no:权重数字长度不能超过五位数!"); } if (dt.Rows[i][4].ToString() == "0") { return Content("no:第" + (i + 1) + "行的权重不能为0!"); } model.Display = true; model.Delflag = false; model.CreateDate = DateTime.Now; list.Add(model); } catch (Exception ex) { return Content("no:" + ex); } } int count = course_UnitQuestionBLL.AddExem(list); if (count > 0) { return Content("yes:成功导入" + list.Count + "行数据"); } else { return Content("no:导入失败"); } } } }
/// <summary> /// 更新一条记录 /// </summary> /// <param name="model"></param> /// <returns></returns> public bool Update(Course_UnitQuestion model) { return dal.Update(model) > 0; }