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.
 
 
 
 
 
 

251 lines
10 KiB

  1. var acceptClick;
  2. var refreshGirdData;
  3. var bootstrap = function ($, learun) {
  4. var startTime;
  5. var endTime;
  6. var page = {
  7. init: function () {
  8. page.bind();
  9. page.bindSelect();
  10. },
  11. loadData: function (param) {
  12. $.lrSetFormWithParam(top.$.rootUrl + '/PersonnelManagement/TimeTable/GetDataInEducationSelect', param,
  13. function (data) {
  14. // 数据处理
  15. var html = '';
  16. var weekLists = data.weekList;
  17. for (var i = 1; i < 11; i++) {
  18. (function (arg) {
  19. var args = arg - 1;
  20. var datas = flogs(arg, weekLists, 'time');
  21. html += ' <tr><td>' + arg + '节</td>';
  22. if (datas) {
  23. var lists = datas.list;
  24. html += tdHandles(lists);
  25. } else {
  26. html += tdHandle(arg);
  27. }
  28. html += '</tr>';
  29. })(i); //调用时参数
  30. }
  31. $('.personT').text(data.schoolName);
  32. $('.perSemester').text(data.semester);
  33. $('.perFestivalsBox table').html(html);
  34. function flogs(num, data, obj) {
  35. var flog = false;
  36. $.each(data,
  37. function (i, n) {
  38. if (n[obj] == num) {
  39. flog = n;
  40. return;
  41. }
  42. })
  43. return flog;
  44. }
  45. function flogs2(num, data, obj) {
  46. var arr = new Array();
  47. $.each(data,
  48. function (i, n) {
  49. if (n[obj] == num) {
  50. arr.push(n);
  51. }
  52. })
  53. return arr;
  54. }
  55. //某节课空
  56. function tdHandle() {
  57. var html = '';
  58. for (var j = 0; j < 7; j++) {
  59. html += '<td><div><div></div><div></div><div></div><div></div></div></td>';
  60. }
  61. return html;
  62. }
  63. //某节课不空
  64. function tdHandles(lists) {
  65. var html = '';
  66. for (var k = 1; k < 8; k++) {
  67. (function (arg) {
  68. var args = arg - 1;
  69. var datas = flogs2(arg, lists, 'day');
  70. if (datas.length > 0) {
  71. html += '<td class="active">';
  72. $.each(datas, function (i, item) {
  73. if (i > 0) {
  74. html += '<hr>';
  75. }
  76. html += "<div class='box' data-val='" + JSON.stringify(item) + "'><div>课程:" +
  77. item.curriculum +
  78. "</div>" +
  79. "<div>教师:" +
  80. item.teacher +
  81. "</div>" +
  82. "<div>班级:" +
  83. item.className +
  84. "</div>" +
  85. "<div>教室:" +
  86. item.classRoom +
  87. "</div></div>";
  88. });
  89. html += '</td>';
  90. } else {
  91. html += '<td><div><div></div><div></div><div></div><div></div></div></td>';
  92. }
  93. })(k);
  94. }
  95. return html;
  96. }
  97. });
  98. },
  99. bind: function () {
  100. // 刷新
  101. $('#lr_refresh').on('click', function () {
  102. location.reload();
  103. });
  104. $('#datesearch').lrdate({
  105. dfdata: [
  106. {
  107. name: '上周',
  108. begin: function () { return learun.getTime(7); },
  109. end: function () {
  110. return learun.getTime(1);
  111. }
  112. },
  113. {
  114. name: '本周',
  115. begin: function () { return learun.getTime(0); },
  116. end: function () {
  117. return learun.getTime(-6);
  118. }
  119. },
  120. {
  121. name: '下周',
  122. begin: function () { return learun.getTime(-7); },
  123. end: function () {
  124. return learun.getTime(-13);
  125. }
  126. }],
  127. // 月
  128. mShow: false,
  129. premShow: false,
  130. // 季度
  131. jShow: false,
  132. prejShow: false,
  133. // 年
  134. ysShow: false,
  135. yxShow: false,
  136. preyShow: false,
  137. yShow: false,
  138. // 默认
  139. dfvalue: 'currentWeek',
  140. selectfn: function (begin, end) {
  141. startTime = begin;
  142. endTime = end;
  143. page.search();
  144. }
  145. });
  146. //查询
  147. $('#lr_search').on('click', function () {
  148. var p = {};
  149. //p.schoolId = $('#F_SchoolId').lrselectGet();
  150. p.ClassNo = $('#ClassNo').lrselectGet();
  151. p.EmpNo = $('#EmpNo').lrselectGet();
  152. page.search(p);
  153. });
  154. //点击课程表内容
  155. $('.perFestivalsBox').on('click', 'td.active div.box', function () {
  156. var box = $(this);
  157. $('.perFestivalsBox').find('div.box.active').removeClass('active');
  158. box.addClass('active');
  159. });
  160. },
  161. bindSelect: function () {
  162. //校区
  163. //$('#F_SchoolId').lrDataSourceSelect({
  164. // code: 'company', value: 'f_companyid', text: 'f_fullname', select: function (item) {
  165. // if (!!item) {
  166. // // 班级
  167. // $('#ClassNo').lrselectRefresh({
  168. // placeholder: "请选择班级",
  169. // allowSearch: true,
  170. // url: top.$.rootUrl + '/PersonnelManagement/TimeTable/GetClassData',
  171. // param: { schoolId: item.f_companyid },
  172. // value: 'value',
  173. // text: 'text'
  174. // });
  175. // // 教师
  176. // $('#EmpNo').lrselectRefresh({
  177. // placeholder: "请选择教师",
  178. // allowSearch: true,
  179. // url: top.$.rootUrl + '/PersonnelManagement/TimeTable/GetTeacherData',
  180. // param: { schoolId: item.f_companyid },
  181. // value: 'value',
  182. // text: 'text'
  183. // });
  184. // } else {
  185. // //班级
  186. // $('#ClassNo').lrselectRefresh({
  187. // placeholder: "请选择班级",
  188. // allowSearch: true,
  189. // url: top.$.rootUrl + '/PersonnelManagement/TimeTable/GetClassData',
  190. // param: { schoolId: "" },
  191. // value: 'value',
  192. // text: 'text'
  193. // });
  194. // //教师
  195. // $('#EmpNo').lrselectRefresh({
  196. // placeholder: "请选择教师",
  197. // allowSearch: true,
  198. // url: top.$.rootUrl + '/PersonnelManagement/TimeTable/GetTeacherData',
  199. // param: { schoolId: "" },
  200. // value: 'value',
  201. // text: 'text'
  202. // });
  203. // }
  204. // }
  205. //});
  206. //班级
  207. $('#ClassNo').lrselect({
  208. placeholder: "请选择班级",
  209. allowSearch: true,
  210. url: top.$.rootUrl + '/PersonnelManagement/TimeTable/GetClassData',
  211. value: 'value',
  212. text: 'text'
  213. });
  214. //教师
  215. $('#EmpNo').lrselect({
  216. placeholder: "请选择教师",
  217. allowSearch: true,
  218. url: top.$.rootUrl + '/PersonnelManagement/TimeTable/GetTeacherData',
  219. value: 'value',
  220. text: 'text'
  221. });
  222. },
  223. search: function (param) {
  224. param = param || {};
  225. param.StartTime = startTime;
  226. param.EndTime = endTime;
  227. page.loadData(param);
  228. }
  229. };
  230. // 保存数据
  231. acceptClick = function (callBack) {
  232. var box = $('.perFestivalsBox').find('div.box.active');
  233. if (box.length <= 0) {
  234. learun.alert.warning("请选择课程!");
  235. return false;
  236. }
  237. var postData = JSON.parse(box.attr('data-val'));
  238. if (!!callBack) {
  239. callBack(postData);
  240. return true;
  241. }
  242. };
  243. page.init();
  244. };