You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

281 lines
11 KiB

  1. using Learun.Util;
  2. using System.Data;
  3. using Learun.Application.TwoDevelopment.EducationalAdministration;
  4. using System.Web.Mvc;
  5. using System.Collections.Generic;
  6. using System;
  7. using System.Linq;
  8. using DocumentFormat.OpenXml.Office.CustomUI;
  9. using List = DocumentFormat.OpenXml.Office2010.ExcelAc.List;
  10. namespace Learun.Application.Web.Areas.EducationalAdministration.Controllers
  11. {
  12. /// <summary>
  13. /// 版 本 Learun-ADMS-Ultimate V7.0.0 数字化智慧校园
  14. /// Copyright (c) 2013-2018 北京泉江科技有限公司
  15. /// 创 建:超级管理员
  16. /// 日 期:2019-08-21 17:28
  17. /// 描 述:设置教师
  18. /// </summary>
  19. public class ClassPlanTeachController : MvcControllerBase
  20. {
  21. private TeachClassIBLL teachClassIBLL = new TeachClassBLL();
  22. private StuSelectLessonListIBLL StuSelectLesson = new StuSelectLessonListBLL();
  23. private StuInfoBasicIBLL stuInfoBasicIBLL = new StuInfoBasicBLL();
  24. #region 视图功能
  25. /// <summary>
  26. /// 主页面
  27. /// <summary>
  28. /// <returns></returns>
  29. [HttpGet]
  30. public ActionResult Index()
  31. {
  32. return View();
  33. }
  34. /// <summary>
  35. /// 主页面
  36. /// <summary>
  37. /// <returns></returns>
  38. [HttpGet]
  39. public ActionResult TeachForm()
  40. {
  41. return View();
  42. }
  43. /// <summary>
  44. /// 主页面
  45. /// <summary>
  46. /// <returns></returns>
  47. [HttpGet]
  48. public ActionResult TeachFormQZ()
  49. {
  50. return View();
  51. }
  52. #endregion
  53. #region 获取数据
  54. /// <summary>
  55. /// 获取页面显示列表数据
  56. /// </summary>
  57. /// <param name="pagination">分页参数</param>
  58. /// <param name="queryJson">查询参数</param>
  59. /// <returns></returns>
  60. [HttpGet]
  61. [AjaxOnly]
  62. public ActionResult GetPageList(string pagination, string queryJson)
  63. {
  64. Pagination paginationobj = pagination.ToObject<Pagination>();
  65. var data = teachClassIBLL.GetPageList(paginationobj, queryJson);
  66. var jsonData = new
  67. {
  68. rows = data,
  69. total = paginationobj.total,
  70. page = paginationobj.page,
  71. records = paginationobj.records
  72. };
  73. return Success(jsonData);
  74. }
  75. /// <summary>
  76. /// 获取表单数据
  77. /// </summary>
  78. /// <param name="keyValue">主键</param>
  79. /// <returns></returns>
  80. [HttpGet]
  81. [AjaxOnly]
  82. public ActionResult GetFormData(string keyValue)
  83. {
  84. var ClassPlanData = teachClassIBLL.GetTeachClassEntity(keyValue);
  85. var jsonData = new
  86. {
  87. ClassPlan = ClassPlanData,
  88. };
  89. return Success(jsonData);
  90. }
  91. #endregion
  92. #region 提交数据
  93. /// <summary>
  94. /// 删除实体数据
  95. /// </summary>
  96. /// <param name="keyValue">主键</param>
  97. /// <returns></returns>
  98. [HttpPost]
  99. [AjaxOnly]
  100. public ActionResult DeleteForm(string keyValue)
  101. {
  102. teachClassIBLL.DeleteEntity(keyValue);
  103. return Success("删除成功!");
  104. }
  105. /// <summary>
  106. /// 保存实体数据(新增、修改)
  107. /// </summary>
  108. /// <param name="keyValue">主键</param>
  109. /// <param name="strEntity">实体</param>
  110. /// <returns></returns>
  111. [HttpPost]
  112. [ValidateAntiForgeryToken]
  113. [AjaxOnly]
  114. public ActionResult SaveForm(string keyValue, string strEntity)
  115. {
  116. TeachClassEntity entity = strEntity.ToObject<TeachClassEntity>();
  117. teachClassIBLL.SaveEntity(keyValue, entity);
  118. return Success("保存成功!");
  119. }
  120. #endregion
  121. #region 扩展数据
  122. /// <summary>
  123. /// 设置教师
  124. /// </summary>
  125. /// <param name="keyValue"></param>
  126. /// <returns></returns>
  127. [HttpPost]
  128. [AjaxOnly]
  129. public ActionResult SetTeach(string keyValue, string EmpNo)
  130. {
  131. var entityList = teachClassIBLL.GetTeachListById(keyValue);
  132. List<StuSelectLessonListEntity> TeachList = new List<StuSelectLessonListEntity>();
  133. for (int i = 0; i < entityList.Count; i++)
  134. {
  135. var stuDataList = stuInfoBasicIBLL.GetAllList().Where(s =>
  136. s.MajorNo == entityList[i].MajorNo
  137. && s.F_SchoolId == entityList[i].F_SchoolId
  138. && s.ClassNo == entityList[i].TeachClassNo
  139. ).ToList();
  140. if (stuDataList.Count > 0)
  141. {
  142. for (int j = 0; j < stuDataList.Count; j++)
  143. {
  144. StuSelectLessonListEntity TeachEntity = new StuSelectLessonListEntity();
  145. TeachEntity.StuNo = stuDataList[j].StuNo;
  146. TeachEntity.MajorNo = entityList[i].MajorNo;
  147. TeachEntity.ClassNo = stuDataList[j].ClassNo;
  148. TeachEntity.GenderNo = stuDataList[j].GenderNo == true ? "0" : "1";
  149. TeachEntity.MajorDetailNo = entityList[i].MajorDetailNo;
  150. TeachEntity.MajorDetailName = entityList[i].MajorDetailName;
  151. TeachEntity.StuName = stuDataList[j].StuName;
  152. TeachEntity.AcademicYearNo = entityList[i].AcademicYearNo;
  153. TeachEntity.Semester = entityList[i].Semester;
  154. TeachEntity.OpenLessonDeptNo = entityList[i].DeptNo;
  155. TeachEntity.OpenLessonMajorNo = entityList[i].MajorNo;
  156. TeachEntity.LessonNo = entityList[i].LessonNo;
  157. TeachEntity.PartCode = entityList[i].PartCode;
  158. TeachEntity.OrdinaryScoreScale = 0;
  159. TeachEntity.TermInScoreScale = 0;
  160. TeachEntity.TermEndScoreScale = 0;
  161. TeachEntity.OtherScoreScale = 0;
  162. TeachEntity.TeachClassNo = entityList[i].TeachClassNo;
  163. TeachEntity.LessonSortNo = entityList[i].LessonSortNo;
  164. TeachEntity.StuSortNo = entityList[i].LessonSortNo;
  165. TeachEntity.Grade = entityList[i].Grade;
  166. TeachEntity.StudyScore = 2;
  167. TeachEntity.TotalStudyHour = 2;
  168. TeachEntity.IsInEffect = "1";
  169. TeachEntity.IsPitchOn = "1";
  170. TeachEntity.F_SchoolId = entityList[i].F_SchoolId;
  171. TeachEntity.CheckMark = "1";
  172. TeachEntity.InsertTime = DateTime.Now;
  173. TeachList.Add(TeachEntity);
  174. }
  175. }
  176. else
  177. {
  178. return Fail("设置失败,未发现相关学生!");
  179. }
  180. }
  181. StuSelectLesson.SaveEntityList(TeachList);
  182. teachClassIBLL.UpEmpNo(keyValue, EmpNo); //更改当前教师
  183. return Success("设置成功!");
  184. }
  185. public ActionResult QzSetTeach(string keyValue, string EmpNo)
  186. {
  187. var entityList = teachClassIBLL.GetTeachListById(keyValue);
  188. string Nid = "";
  189. if (entityList.Count > 0)
  190. {
  191. for (int i = 0; i < entityList.Count; i++)
  192. {
  193. List<string> ssList = StuSelectLesson.GetAllList().Where(
  194. y => y.MajorNo == entityList[i].MajorNo
  195. && y.F_SchoolId == entityList[i].F_SchoolId
  196. && y.ClassNo == entityList[i].TeachClassNo
  197. && y.LessonNo == entityList[i].LessonNo
  198. && y.CheckMark == "1"
  199. ).Select(x => x.SelectId.ToString()).ToList();
  200. Nid += string.Join(",", ssList) + ",";
  201. }
  202. }
  203. Nid = Nid.TrimEnd(',');
  204. StuSelectLesson.DeleteEntity(Nid);
  205. List<StuSelectLessonListEntity> TeachList = new List<StuSelectLessonListEntity>();
  206. for (int i = 0; i < entityList.Count; i++)
  207. {
  208. var stuDataList = stuInfoBasicIBLL.GetAllList().Where(s =>
  209. s.MajorNo == entityList[i].MajorNo
  210. && s.F_SchoolId == entityList[i].F_SchoolId
  211. && s.ClassNo == entityList[i].TeachClassNo
  212. ).ToList();
  213. if (stuDataList.Count > 0)
  214. {
  215. for (int j = 0; j < stuDataList.Count; j++)
  216. {
  217. StuSelectLessonListEntity TeachEntity = new StuSelectLessonListEntity();
  218. TeachEntity.StuNo = stuDataList[j].StuNo;
  219. TeachEntity.MajorNo = entityList[i].MajorNo;
  220. TeachEntity.ClassNo = stuDataList[j].ClassNo;
  221. TeachEntity.MajorDetailNo = entityList[i].MajorDetailNo;
  222. TeachEntity.MajorDetailName = entityList[i].MajorDetailName;
  223. TeachEntity.StuName = stuDataList[j].StuName;
  224. TeachEntity.GenderNo = stuDataList[j].GenderNo == true ? "0" : "1";
  225. TeachEntity.AcademicYearNo = entityList[i].AcademicYearNo;
  226. TeachEntity.Semester = entityList[i].Semester;
  227. TeachEntity.OpenLessonDeptNo = entityList[i].DeptNo;
  228. TeachEntity.OpenLessonMajorNo = entityList[i].MajorNo;
  229. TeachEntity.LessonNo = entityList[i].LessonNo;
  230. TeachEntity.PartCode = entityList[i].PartCode;
  231. TeachEntity.OrdinaryScoreScale = 0;
  232. TeachEntity.TermInScoreScale = 0;
  233. TeachEntity.TermEndScoreScale = 0;
  234. TeachEntity.OtherScoreScale = 0;
  235. TeachEntity.TeachClassNo = entityList[i].TeachClassNo;
  236. TeachEntity.LessonSortNo = entityList[i].LessonSortNo;
  237. TeachEntity.StuSortNo = entityList[i].LessonSortNo;
  238. TeachEntity.Grade = entityList[i].Grade;
  239. TeachEntity.StudyScore = 2;
  240. TeachEntity.TotalStudyHour = 2;
  241. TeachEntity.IsInEffect = "1";
  242. TeachEntity.IsPitchOn = "1";
  243. TeachEntity.F_SchoolId = entityList[i].F_SchoolId;
  244. TeachEntity.InsertTime = DateTime.Now;
  245. TeachList.Add(TeachEntity);
  246. }
  247. }
  248. else
  249. {
  250. return Fail("设置失败,未发现相关学生!");
  251. }
  252. }
  253. StuSelectLesson.SaveEntityList(TeachList);
  254. teachClassIBLL.UpEmpNo(keyValue, EmpNo); //更改当前教师
  255. return Success("设置成功!");
  256. }
  257. #endregion
  258. }
  259. }