EducationMissionClassSchedule.js 14 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340
  1. var url = CMS_SystemConfig.VirtualDirectoryPath + "/EducationMissionClassSchedule/Edit";
  2. var mnu = "";
  3. //加载
  4. $(function () {
  5. mnu = $.SystemGeneral.getUrlParam("MNU");
  6. })
  7. function reload() {
  8. $("#dgEducationMissionClassScheduleList").cmsXDataTable("load", $.getDataGridParams("dgEducationMissionClassScheduleList"));
  9. }
  10. //获取选中的数据
  11. function validChoose() {
  12. var d = [];
  13. $.each($("#dgEducationMissionClassScheduleList").cmsXDataTable("getSelections"), function (index) {
  14. d.push(this);
  15. });
  16. return d;
  17. }
  18. //获取选中的数据
  19. function OrderNovalidChoose() {
  20. var d = [];
  21. $.each($("#dgEducationMissionClassScheduleList").cmsXDataTable("getSelections"), function (index) {
  22. d.push(this.OrderNo);
  23. });
  24. return d;
  25. }
  26. //获取选中的状态
  27. function ApprovalStatusvalidChoose() {
  28. var d = [];
  29. $.each($("#dgEducationMissionClassScheduleList").cmsXDataTable("getSelections"), function (index) {
  30. d.push(this.ApprovalStatus);
  31. });
  32. return d;
  33. }
  34. //获取选中的教室类型
  35. function ClassroomTypeNamevalidChoose() {
  36. var d = [];
  37. $.each($("#dgEducationMissionClassScheduleList").cmsXDataTable("getSelections"), function (index) {
  38. d.push(this.ClassroomTypeName);
  39. });
  40. return d;
  41. }
  42. function EducationMissionClass_AutoSchedule() {
  43. var d = validChoose();
  44. if (d.length == 0) {
  45. $.messager.alert("系统提示", "请选择教学任务进行智能排课。");
  46. return;
  47. }
  48. for (var i = 0; i < d.length; i++) {
  49. if (d[i].ApprovalStatus != submitted) {
  50. $.messager.alert("系统提示", "请选择已提交状态的教学任务进行排课。");
  51. return;
  52. }
  53. }
  54. var educationMissionClassIDs = $.map(d, function (x) { return x.EducationMissionClassID; }).join(',');
  55. $.postWithLoading(CMS_SystemConfig.VirtualDirectoryPath + '/EducationSchedule/AutoSchedule', { educationMissionClassIDs: educationMissionClassIDs }, function (data) {
  56. if (data.IsSuccess) {
  57. $.messager.alert("系统提示", "智能排课成功。");
  58. reload();
  59. } else {
  60. $.messager.alert("系统提示", data.Message);
  61. }
  62. });
  63. }
  64. function EducationMissionClass_AutoScheduleClear() {
  65. var redirectTo = CMS_SystemConfig.VirtualDirectoryPath + "/EducationSchedule/ClearAutoSchedule?MNU=" + mnu;
  66. $.popupTopWindow('撤销智能排课', redirectTo, 560, 250, null, null);
  67. }
  68. //教学分班
  69. function EducationMissionClass_Separate() {
  70. var d = validChoose();
  71. var dstate = ApprovalStatusvalidChoose().join(',');
  72. if (d.length == 0) {
  73. $.messager.alert("系统提示", "请选择教学任务进行分班!");
  74. return;
  75. }
  76. if (d.length > 1) {
  77. $.messager.alert("系统提示", "只能选择单个记录进行分班设置!");
  78. return;
  79. }
  80. for (var i = 0; i < dstate.split(',').length; i++) {
  81. if (dstate.split(',')[i] == scheduled) {
  82. $.messager.alert("系统提示", "您选择的排课分班存在状态已排课数据!");
  83. return;
  84. }
  85. }
  86. var redirectTo = CMS_SystemConfig.VirtualDirectoryPath + "/EducationMissionClass/DivideIntoClassesEdit?educationMissionClassID=" + d[0].EducationMissionClassID + "&MNU=" + mnu;
  87. $.popupTopWindow('分班设置', redirectTo, 800, 250, null, null);
  88. }
  89. function EducationMissionClass_Schedule() {
  90. var d = validChoose();
  91. var dstate = ApprovalStatusvalidChoose().join(',');
  92. if (d == "") {
  93. $.messager.alert("系统提示", "请选择教学任务进行排课!");
  94. return;
  95. }
  96. if (d.length > 1) {
  97. $.messager.alert("系统提示", "只能选择单个记录进行排课!");
  98. return;
  99. }
  100. var fullUrl = CMS_SystemConfig.VirtualDirectoryPath + '/EducationSchedule/Edit?classmajorID=' + d[0].MainScheduleClassID
  101. + '&grademajorID=' + d[0].MainScheduleClassGrademajorID + '&collegeID=' + d[0].MainScheduleClassCollegeID
  102. + '&schoolyearID=' + d[0].SchoolyearID + '&standardID=' + d[0].StandardID + '&yearID=' + d[0].GradeYearID
  103. + '&FromMNU=' + mnu;
  104. $.popupTopWindow('手动排课', fullUrl, window.screen.availWidth, window.screen.availHeight - 60, reload);
  105. }
  106. function EducationMissionClass_Save() {
  107. var d = $.map(validChoose(), function (x) { return x.EducationMissionClassID; }).join(',');
  108. var orderno = OrderNovalidChoose().join(',');
  109. var dstate = ApprovalStatusvalidChoose().join(',');
  110. if (d.length == 0) {
  111. $.messager.alert("系统提示", "请选择保存的教学任务!");
  112. return;
  113. }
  114. for (var i = 0; i < dstate.split(',').length; i++) {
  115. if (dstate.split(',')[i] == scheduled) {
  116. $.messager.alert("系统提示", "保存失败,您选择的教学任务班存在已排课数据!");
  117. return;
  118. }
  119. }
  120. $.post(CMS_SystemConfig.VirtualDirectoryPath + '/EducationMissionClass/TeachingScheduleEdit', { educationMissionClassIDs: d, orderNos: orderno }, function (data) {
  121. if (data == "成功") {
  122. $.messager.alert("系统提示", "保存成功!");
  123. reload();
  124. } else {
  125. $.messager.alert("系统提示", data);
  126. }
  127. });
  128. }
  129. function EducationMissionClass_Arrange() {
  130. var d = validChoose();
  131. if (d.length == 0) {
  132. $.messager.alert("系统提示", "请选择教学任务!");
  133. return;
  134. }
  135. if (d.length > 1) {
  136. $.messager.alert("系统提示", "只能选择单个记录进行教学安排设置!");
  137. return;
  138. }
  139. var redirectTo = url + "?educationMissionClassID=" + d[0].EducationMissionClassID + "&MNU=" + mnu;
  140. $.popupTopWindow('教学安排设置', redirectTo, 800, 600, null, null);
  141. }
  142. function EducationMissionSchedule_Delete() {
  143. var d = $.map(validChoose(), function (x) { return x.EducationMissionClassID; }).join(',');
  144. var state = ApprovalStatusvalidChoose().join(',');
  145. var classroomTypeName = ClassroomTypeNamevalidChoose().join(',');
  146. if (d.length == 0) {
  147. $.messager.alert("系统提示", "请选择您要撤销的任务班排课!");
  148. return;
  149. }
  150. for (var i = 0; i < state.split(',').length; i++) {
  151. if (state.split(',')[i] != scheduled) {
  152. $.messager.alert("系统提示", "撤销失败,您选择的教学任务班包含未提交或已提交状态!");
  153. return;
  154. }
  155. }
  156. $.postWithLoading('/EducationMissionClassSchedule/Delete', { educationMissionClassIDs: d }, function (data) {
  157. if (data.IsSuccess) {
  158. $.messager.alert("系统提示", "撤销成功!");
  159. reload();
  160. } else {
  161. $.messager.alert("系统提示", data.Message);
  162. }
  163. });
  164. }
  165. //提交
  166. function EducationMissionClass_Submit() {
  167. var d = $.map(validChoose(), function (x) { return x.EducationMissionClassID; }).join(',');
  168. var state = ApprovalStatusvalidChoose().join(',');
  169. var classroomTypeName = ClassroomTypeNamevalidChoose().join(',');
  170. if (d.length == 0) {
  171. $.messager.alert("系统提示", "请选择您要提交的任务班!");
  172. return;
  173. }
  174. for (var i = 0; i < classroomTypeName.split(',').length; i++) {
  175. if (classroomTypeName.split(',')[i] == "") {
  176. $.messager.alert("系统提示", "您选择的教学任务班存在教室类型为空数据,请检查!");
  177. return;
  178. }
  179. }
  180. for (var i = 0; i < state.split(',').length; i++) {
  181. if (state.split(',')[i] == submitted) {
  182. $.messager.alert("系统提示", "您选择的任务班存在状态已提交数据!");
  183. return;
  184. }
  185. }
  186. $.postWithLoading(CMS_SystemConfig.VirtualDirectoryPath + '/EducationMissionClass/EducationMissionClassUpdate', { educationMissionClassIDs: d }, function (data) {
  187. if (data == "成功") {
  188. $.messager.alert("系统提示", "提交成功!");
  189. reload();
  190. } else {
  191. $.messager.alert("系统提示", data);
  192. }
  193. });
  194. }
  195. //教研室排课
  196. function EducationMissionClass_DepartmentSchedule() {
  197. var d = validChoose();
  198. var dstate = ApprovalStatusvalidChoose();
  199. if (d == "") {
  200. $.messager.alert("系统提示", "请选择教学任务进行排课。");
  201. return;
  202. }
  203. if (d.length > 1) {
  204. $.messager.alert("系统提示", "只能选择单个记录进行排课。");
  205. return;
  206. }
  207. if (dstate[0] == notSubmitted) {
  208. $.messager.alert("系统提示", "任务班未提交,请提交后再进行排课。");
  209. return;
  210. }
  211. var fullUrl = CMS_SystemConfig.VirtualDirectoryPath + '/EducationSchedule/DepartmentEdit?collegeID=' + d[0].CollegeID + '&departmentID=' + d[0].DepartmentID
  212. + '&schoolyearID=' + d[0].SchoolyearID + '&handleMode=' + d[0].HandleModeID + '&FromMNU=' + mnu;
  213. $.popupTopWindow('教研室排课', fullUrl, window.screen.availWidth, window.screen.availHeight - 60, reload);
  214. }
  215. //排课班级
  216. function SchedulingClassEdit(rowindex, rowdata) {
  217. var redirectTo = CMS_SystemConfig.VirtualDirectoryPath + "/EducationMissionClass/EducationSchedulingClassList?educationMissionClassID=" + rowdata.EducationMissionClassID + "&MNU=" + mnu;
  218. $.popupTopWindow('排课班信息', redirectTo, 800, 600, null, null);
  219. }
  220. //学生总数
  221. function SchedulingClassStudentEdit(rowindex, rowdata) {
  222. var redirectTo = CMS_SystemConfig.VirtualDirectoryPath + "/EducationMissionClass/EducationSchedulingClassCountStudentList?educationMissionClassID=" + rowdata.EducationMissionClassID + "&MNU=" + mnu;
  223. $.popupTopWindow('学生信息', redirectTo, 800, 600, null, null);
  224. }
  225. //合班
  226. function EducationMissionClass_Conjunction() {
  227. var redirectTo = CMS_SystemConfig.VirtualDirectoryPath + "/EducationMissionClass/EducationMissionClassConjunctionList?MNU=" + mnu;
  228. $.popupTopWindow('合班信息', redirectTo, 900, 600, null, null);
  229. }
  230. function EducationMissionClass_CourseProcess() {
  231. var d = validChoose();
  232. if (d.length == 0) {
  233. $.messager.alert("系统提示", "请选择修改的教学任务!");
  234. return;
  235. }
  236. if (d.length > 1) {
  237. $.messager.alert("系统提示", "只能选择单个记录进行课程进度设置!");
  238. return;
  239. }
  240. $.popupTopWindow('课程进度', CMS_SystemConfig.VirtualDirectoryPath + '/EducationMissionClass/CourseProcess?MNU=' + mnu + '&educationMissionClassID=' + d[0].EducationMissionClassID, 500, 600);
  241. }
  242. //导出Excel
  243. function EducationMissionClassSchedule_Excel() {
  244. $("#formQuery").submit();
  245. }
  246. function QuerySchoolyearDropdownList(data) {
  247. reload();
  248. }
  249. function QueryComboGridList(data) {
  250. reload();
  251. }
  252. //function QueryComboGridCollegeList(data) {
  253. // reload();
  254. //}
  255. function QueryComboGridCampusList(data) {
  256. reload();
  257. }
  258. function QueryApprovalStatusDropdownList(data) {
  259. reload();
  260. }
  261. //function SelectCollegeComboGrid(data) {
  262. // CMSFunction.ComboGrid.SetValue($("#GrademajorComboGrid"), "", "");
  263. // var Year = $("#DictionaryGrade").combogridX("getValue");
  264. // if (data != null || Year != "-1") {
  265. // var jsonString = "({'QueryParamsDatas':'CollegeDropdown|*|" + data.CollegeID + "|@|DictionaryGrade|*|" + Year + "|@|'})";
  266. // $("#GrademajorComboGrid").combogridX("reload", eval(jsonString));
  267. // }
  268. // reload();
  269. //}
  270. //function SelectDictionaryGrade(data) {
  271. // CMSFunction.ComboGrid.SetValue($("#GrademajorComboGrid"), "", "");
  272. // var collegeID = $("#ComboGridCollege").combogridX("getValue");
  273. // if (data.Value != "-1" || data != null) {
  274. // var jsonString = "({'QueryParamsDatas':'CollegeDropdown|*|" + collegeID + "|@|DictionaryGrade|*|" + data.Value + "|@|'})";
  275. // $("#GrademajorComboGrid").combogridX("reload", eval(jsonString));
  276. // }
  277. // reload();
  278. //}
  279. function queryCollege(data) {
  280. //var campusID = $("#CampusDropdown").combogridX("getValue");
  281. // var collegeID = $("#ComboGridCollege").combogridX("getValue");
  282. // var jsonString = "({'QueryParamsDatas':";
  283. // jsonString += "'CollegeDropdown|*|" + collegeID + "|@|'})";
  284. // $("#GrademajorComboGrid").combogridX("reload", eval(jsonString));
  285. // $("#DictionaryStandard").combogridX("reload", eval(jsonString));
  286. // if (campusID != nonSelect) {
  287. // var jsonString = "({'QueryParamsDatas':'CampusDropdown|*|" + campusID + "|@|'})";
  288. // $("#CollegeDropdown").combogridX("reload", eval(jsonString));
  289. // }
  290. queryClass();
  291. reload();
  292. }
  293. function queryGrademajor() {
  294. queryClass();
  295. }
  296. function queryClass() {
  297. var jsonString = "";
  298. var parameterString = "";
  299. //var campusID = $("#CampusDropdown").combogridX("getValue");
  300. var collegeID = $("#ComboGridCollege").combogridX("getValue");
  301. //var educationID = $("#Education").combobox("getValue");
  302. var schoolYearID = $("#DictionaryGrade").combobox("getValue");
  303. var standardID = $("#DictionaryStandard").combogridX("getValue");
  304. //var learningFormID = $("#LearningformDictionaryDropDown").combobox("getValue");
  305. //if (campusID != nonSelect) parameterString += "CampusDropdown|*|" + campusID + "|@|";
  306. if (collegeID != nonSelect && collegeID != "") parameterString += "CollegeDropdown|*|" + collegeID + "|@|";
  307. //if (educationID != nonSelect) parameterString += "DictionaryEducation|*|" + educationID + "|@|";
  308. if (schoolYearID != nonSelect && schoolYearID != "") parameterString += "DictionaryGrade|*|" + schoolYearID + "|@|";
  309. if (standardID != nonSelect && standardID != "") parameterString += "DictionaryStandard|*|" + standardID + "|@|";
  310. //if (learningFormID != nonSelect) parameterString += "DictionaryLearningform|*|" + learningFormID + "|@|";
  311. if (parameterString != "") {
  312. jsonString = "({'QueryParamsDatas':'" + parameterString + "'})";
  313. $("#DictionaryStandard").combogridX("reload", eval(jsonString));
  314. $("#GrademajorComboGrid").combogridX("reload", eval(jsonString));
  315. } else {
  316. $("#DictionaryStandard").combogridX("reload");
  317. $("#GrademajorComboGrid").combogridX("reload");
  318. }
  319. reload();
  320. }