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.
 
 
 
 
 
 

228 lines
10 KiB

  1. var refreshGirdData;
  2. var bootstrap = function ($, learun) {
  3. var startTime;
  4. var endTime;
  5. var page = {
  6. init: function () {
  7. page.bind();
  8. },
  9. loadData: function (param) {
  10. $.lrSetFormWithParam(top.$.rootUrl + '/PersonnelManagement/TimeTable/GetData', param,
  11. function (data) {
  12. console.log(data);
  13. // 数据处理
  14. var html = '';
  15. var weekLists = data.weekList;
  16. for (var i = 1; i < 11; i++) {
  17. (function (arg) {
  18. var args = arg - 1;
  19. var datas = flogs(arg, weekLists, 'time');
  20. html += ' <tr><td>' + arg + '节</td>';
  21. if (datas) {
  22. var lists = datas.list;
  23. html += tdHandles(lists);
  24. } else {
  25. html += tdHandle(arg);
  26. }
  27. html += '</tr>';
  28. })(i); //调用时参数
  29. }
  30. $('.personT').text(data.schoolName);
  31. $('.perSemester').html('姓名:' + data.teacherName+ '<span>' + data.semester +'</span>');
  32. $('.perFestivalsBox table').html(html);
  33. $(".leave").on('click', function () {
  34. var $this = $(this);
  35. var lessonNo = $this.attr("lessonno");
  36. var lessonTime = $this.attr("lessonTime");
  37. var lessonDate = $this.attr("lessonDate");
  38. var academicyear = $this.attr("academicyear");
  39. var semester = $this.attr("semester");
  40. var empNo = $this.attr("empNo");
  41. var classRoomNo = $this.attr("classRoomNo");
  42. var lessonSortNo = $this.attr("lessonSortNo");
  43. var teachClassNo = $this.attr("teachClassNo");
  44. learun.layerForm({
  45. id: 'form',
  46. title: '请假申请',
  47. url: top.$.rootUrl + '/PersonnelManagement/TimeTable/Leave?lessonNo=' + lessonNo + '&lessonTime=' + lessonTime + '&lessonDate=' + lessonDate + '&empNo=' + empNo + '&academicyear=' + academicyear + '&semester=' + semester + '&classRoomNo=' + classRoomNo + '&lessonSortNo=' + lessonSortNo + '&teachClassNo=' + teachClassNo,
  48. width: 600,
  49. height: 600,
  50. callBack: function (id) {
  51. return top[id].acceptClick(change($this));
  52. }.bind(this)
  53. });
  54. });
  55. function flogs(num, data, obj) {
  56. var flog = false;
  57. $.each(data,
  58. function (i, n) {
  59. if (n[obj] == num) {
  60. flog = n;
  61. return;
  62. }
  63. })
  64. return flog;
  65. }
  66. function flogs2(num, data, obj) {
  67. var arr = new Array();
  68. $.each(data,
  69. function (i, n) {
  70. if (n[obj] == num) {
  71. arr.push(n);
  72. }
  73. })
  74. return arr;
  75. }
  76. //某节课空
  77. function tdHandle() {
  78. var html = '';
  79. for (var j = 0; j < 7; j++) {
  80. html += '<td><div></div><div></div><div></div></td>';
  81. }
  82. return html;
  83. }
  84. //某节课不空
  85. function tdHandles(lists) {
  86. var html = '';
  87. for (var k = 1; k < 8; k++) {
  88. (function (arg) {
  89. var args = arg - 1;
  90. var datas = flogs2(arg, lists, 'day');
  91. if (datas.length > 0) {
  92. html += '<td class="active">';
  93. $.each(datas, function (i, item) {
  94. if (i > 0) {
  95. html += '<hr>';
  96. }
  97. html += '<div>课程:' +
  98. item.curriculum +
  99. '</div>' +
  100. '<div>教师:' +
  101. item.teacher +
  102. '</div>' +
  103. '<div>班级:' +
  104. item.className +
  105. '</div>' +
  106. '<div>教室:' +
  107. item.classRoom +
  108. '</div>';
  109. var loginInfo = learun.clientdata.get(['userinfo']);
  110. if (loginInfo.Description == "学生") {
  111. if (item.leaveType == 1) {
  112. if (item.checkType == 1) {
  113. html += '</div><span>请假通过</span></td>';
  114. } else if (item.checkType == 2) {
  115. html += '</div><span>请假未通过</span></td>';
  116. } else {
  117. html += '</div><span>请假申请中</span></td>';
  118. }
  119. } else {
  120. html += '</div><span class="leave" lessonNo="' + item.lessonNo + '" lessonTime="' + item.lessonTime + '" lessonDate="' + item.lessonDate + '" lessonName="' + item.curriculum + '" empNo="' + item.empno + '" academicyear="' + item.academicyear + '" semester="' + item.semester + '" lessonSortNo="' + item.lessonSortNo + '" classRoomNo="' + item.classRoomNo + '" teachClassNo="' + item.teachClassNo + '">请假</span></td>';
  121. }
  122. }
  123. });
  124. html += '</td>';
  125. } else {
  126. html += '<td><div></div><div></div><div></div><div></div></td>';
  127. }
  128. })(k);
  129. }
  130. return html;
  131. }
  132. });
  133. },
  134. bind: function () {
  135. $('#datesearch').lrdate({
  136. dfdata: [
  137. {
  138. name: '上周',
  139. begin: function () { return learun.getTime(7); },
  140. end: function () {
  141. return learun.getTime(1);
  142. }
  143. },
  144. {
  145. name: '本周',
  146. begin: function () { return learun.getTime(0); },
  147. end: function () {
  148. return learun.getTime(-6);
  149. }
  150. },
  151. {
  152. name: '下周',
  153. begin: function () { return learun.getTime(-7); },
  154. end: function () {
  155. return learun.getTime(-13);
  156. }
  157. }],
  158. // 月
  159. mShow: false,
  160. premShow: false,
  161. // 季度
  162. jShow: false,
  163. prejShow: false,
  164. // 年
  165. ysShow: false,
  166. yxShow: false,
  167. preyShow: false,
  168. yShow: false,
  169. // 默认
  170. dfvalue: 'currentWeek',
  171. selectfn: function (begin, end) {
  172. startTime = begin;
  173. endTime = end;
  174. page.search();
  175. }
  176. });
  177. $('#perBtn').on('click',
  178. function () {
  179. AddPrintContent();
  180. });
  181. var LODOP, P_ID = "", TaskID1, TaskID2, t, waiting = false, c = 0, loop = 0; //声明为全局变量
  182. function AddPrintContent() {
  183. var myHtml = myHtml = $('.personalBox').html();
  184. var strBodyStyle = "<style>" + document.getElementById("style1").innerHTML + "</style>";
  185. var strFormHtml = strBodyStyle + "<body>" + myHtml + "</body>";
  186. LODOP = getLodop();
  187. LODOP.PRINT_INIT("个人授课表");
  188. LODOP.SET_PRINT_PAGESIZE(2, 0, 0, "A4");
  189. LODOP.SET_PRINT_MODE("PRINT_DUPLEX", 2);
  190. LODOP.SET_PRINT_MODE("PRINT_DEFAULTSOURCE", 7);
  191. LODOP.ADD_PRINT_HTM(10, 10, '284mm', '185mm', strFormHtml);
  192. //打印预览
  193. LODOP.SET_SHOW_MODE("LANDSCAPE_DEFROTATED", 1); //横向时的正向显示
  194. var TaskID1 = LODOP.PREVIEW();
  195. // 直接打印
  196. // var TaskID1=LODOP.PRINT();
  197. }
  198. },
  199. search: function (param) {
  200. param = param || {};
  201. param.StartTime = startTime;
  202. param.EndTime = endTime;
  203. page.loadData(param);
  204. }
  205. };
  206. page.init();
  207. change = function (obj) {
  208. obj.off("click");
  209. };
  210. };