SubjectMgrController.cs 3.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106
  1. using System;
  2. using System.Collections.Generic;
  3. using System.Linq;
  4. using System.Web;
  5. using System.Web.Mvc;
  6. using EMISOnline.CommonLogic.ExamServices;
  7. using EMISOnline.Entities;
  8. using EMISOnline.ViewModel.ExamView;
  9. using EMISOnline.ViewModel;
  10. using System.Web.Script.Serialization;
  11. namespace EMISOnline.Web.Controllers.Manage
  12. {
  13. [Authorization]
  14. public class SubjectMgrController : Controller
  15. {
  16. public IQuestionSettingServices QuestionSettingServices { get; set; }
  17. //
  18. // GET: /SubjectMgr/
  19. public ActionResult TestQuestionList()
  20. {
  21. return View();
  22. }
  23. /// <summary>
  24. /// 列表查询
  25. /// </summary>
  26. /// <param name="pararms"></param>
  27. /// <returns></returns>
  28. [HttpPost]
  29. public ActionResult List(string Content,decimal? QuestionType,decimal?libaryid , int page, int rows)
  30. {
  31. var result = QuestionSettingServices.GetQuestionList(Content, QuestionType,libaryid, page, rows);
  32. return Json(result);
  33. }
  34. public ActionResult TestQuestionAdd(decimal? test_question_id, decimal? libaryid)
  35. {
  36. QuestionSettingView question = new QuestionSettingView();
  37. if (test_question_id.HasValue)
  38. {
  39. question = QuestionSettingServices.GetQuestion(test_question_id.Value);
  40. var serializer = new JavaScriptSerializer();
  41. string entryJS = serializer.Serialize(question);
  42. ViewBag.entryJS = entryJS;
  43. }
  44. ViewBag.txt_libary = libaryid;
  45. return View(question);
  46. }
  47. public JsonResult GetQuestionType(bool? isEmpty)
  48. {
  49. var questiontype = QuestionSettingServices.GetQuestionType(isEmpty);
  50. return Json(questiontype, JsonRequestBehavior.AllowGet);
  51. }
  52. public JsonResult GetDrpDifficulty()
  53. {
  54. var questiontype = QuestionSettingServices.GetDifficulty();
  55. return Json(questiontype, JsonRequestBehavior.AllowGet);
  56. }
  57. [HttpPost]
  58. public ActionResult TestQuestionAdd(string ipt_entry, string question_provid_answer)
  59. {
  60. try
  61. {
  62. var serializer = new JavaScriptSerializer();
  63. test_question question = serializer.Deserialize<test_question>(ipt_entry.Replace("\"null\"", "null"));
  64. var providAnswer = serializer.Deserialize<List<test_question_provid_answer>>(question_provid_answer.Replace("\"null\"", "null"));
  65. var user = ((EMISOnline.Utility.FormValidate.CustomPrincipal)HttpContext.User);
  66. string url = "~/SubjectMgr/TestQuestionList";
  67. if (question.test_question_Id <= 0)
  68. {
  69. //ToDo:保存到数据库
  70. QuestionSettingServices.InsertByTrans(question, providAnswer, question.answers.Split('|').ToList(), user.LoginID);
  71. }
  72. else
  73. {
  74. //ToDo:修改到数据库
  75. QuestionSettingServices.UpdateByTrans(question, providAnswer, question.answers.Split('|').ToList(), user.LoginID);
  76. }
  77. return Json(new ReturnMessage()
  78. {
  79. IsSuccess = true,
  80. Message = "保存成功!",
  81. RedictUrl = Url.Content(url)
  82. });
  83. }
  84. catch (Exception ex)
  85. {
  86. return Json(new ReturnMessage()
  87. {
  88. IsSuccess = false,
  89. Message = "保存失败:" + ex.Message
  90. });
  91. }
  92. }
  93. }
  94. }