index-office.js 6.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180
  1. 'use strict';
  2. var app = angular.module('app', [
  3. 'angularUtils.directives.dirPagination',
  4. ]);
  5. app.controller("indexCtrl", ["$scope", "$http", "$interval", "$timeout", function ($scope, $http, $interval, $timeout) {
  6. var self = this;
  7. self.userId = $.cookie("GlWorkPlatform-userid");
  8. self.userName = $.cookie("GlWorkPlatform-username");
  9. self.userChineseName = $.cookie("GlWorkPlatform-chineseName")
  10. self.get_AccessToken = localStorage.getItem("GlWorkPlatform-AccessToken");
  11. var postCfg = {
  12. headers: {
  13. 'Content-Type': 'application/json',
  14. 'Authorization': "Bearer " + self.get_AccessToken
  15. }
  16. };
  17. self.changeTop = function (n) {
  18. //$(".activeTop").css("box-shadow", "5px 5px 5px " + $(".topBtn").eq(n).css("background-color"))
  19. self.activeTop = n + 1;
  20. }
  21. self.activeItem1 = "待办"
  22. self.activeItem2 = "通知公告"
  23. self.getData = function () {
  24. var data = {}
  25. $http.get("js/office.txt", data, postCfg)
  26. .success(function (res) {
  27. self.list1 = res.list1;
  28. self.list2 = res.list2;
  29. self.ldzl = res.ldzl;
  30. self.today = {
  31. date: sp.getday(0),
  32. week: getWeek(sp.getday(0))
  33. };
  34. self.week = {
  35. date1: sp.getWeekNumber(new Date()).begin,
  36. date2: sp.getNextDate(sp.getWeekNumber(new Date()).begin, 1),
  37. date3: sp.getNextDate(sp.getWeekNumber(new Date()).begin, 2),
  38. date4: sp.getNextDate(sp.getWeekNumber(new Date()).begin, 3),
  39. date5: sp.getNextDate(sp.getWeekNumber(new Date()).begin, 4)
  40. }
  41. })
  42. }
  43. self.getData()
  44. /*日历开始*/
  45. self.all_year = [];
  46. self.all_month = [];
  47. self.select_year = ''
  48. self.select_month = ''
  49. self.active_day = ''
  50. self.week = ''
  51. //初始化显示 当前年和月
  52. self.show_now = function () {
  53. var now = new Date();
  54. self.select_year = now.getFullYear();
  55. self.select_month = now.getMonth() + 1;
  56. self.active_day = formate(now.getDate());
  57. self.cyear = now.getFullYear();
  58. self.cmonth = now.getMonth() + 1;
  59. self.cday = formate(now.getDate());
  60. self.showTime()
  61. //self.getDateWork(self.select_year, self.select_month, self.active_day)
  62. }
  63. self.showTime = function () {
  64. //在select中填入年份
  65. for (var year = self.select_year - 5; year < self.select_year + 5; year++) {
  66. var obj_1 = { 'value': year, 'id': year }
  67. self.all_year.push(obj_1);
  68. }
  69. //在select中填入月份
  70. for (var month = 1; month < 13; month++) {
  71. var obj_2 = { 'value': month, 'id': month }
  72. self.all_month.push(obj_2);
  73. }
  74. //初始化显示 当前年和月
  75. self.showDays(self.select_year, self.select_month)
  76. }
  77. //返回指定的月份的天数 月份1-12
  78. self.calDays = function (year, month) {
  79. return new Date(year, month, 0).getDate();
  80. }
  81. self.dateLeft = function () {
  82. var date = new Date(self.select_year, self.select_month - 1, 0)
  83. self.select_year = date.getFullYear();
  84. self.select_month = date.getMonth() + 1;
  85. self.showDays(self.select_year, self.select_month)
  86. }
  87. self.dateRight = function () {
  88. var date = new Date(self.select_year, self.select_month + 1, 0)
  89. self.select_year = date.getFullYear();
  90. self.select_month = date.getMonth() + 1;
  91. self.showDays(self.select_year, self.select_month)
  92. }
  93. //展示指定的年和月的所有日期
  94. self.showDays = function (year, month) {
  95. self.days = [];
  96. var days = [];
  97. self.dateWork = [];
  98. self.date_day = self.active_day;
  99. self.getWeek(self.select_year, self.select_month, self.active_day)
  100. //得到表示指定年和月的1日的那个时间对象
  101. var date = new Date(year, month - 1, 1);
  102. //1.先添加响应的空白的li:这个月1号是星期几,就添加几个空白的li
  103. var dayOfWeek = date.getDay(); //得到1日是星期几
  104. for (var i = 0; i < dayOfWeek; i++) {
  105. days.push({ day: "", id: i + 8 });
  106. }
  107. //计算一个月有多少天
  108. var daysOfMonth = self.calDays(year, month);
  109. //2. 从1号开始添加li
  110. for (var i = 1; i <= daysOfMonth; i++) {
  111. days.push({ day: formate(i), id: i + dayOfWeek + 7 });
  112. }
  113. var length = days.length;
  114. for (var i = 42; i > length; i--) {
  115. days.push({ day: "", id: daysOfMonth - i + 50 });
  116. }
  117. for (var i = 0; i < 6 ; i++) {
  118. self.days[i] = [];
  119. $.each(days, function (index, item) {
  120. if (Math.ceil((index + 1) / 7) == i + 1) {
  121. self.days[i].push(item)
  122. }
  123. })
  124. }
  125. if (JSON.stringify(days).indexOf('"day":' + JSON.stringify(self.active_day)) == -1) {
  126. for (var i = days.length - 1; i >= 0; i--) {
  127. if (days[i].day != "") {
  128. self.active_day = days[i].day;
  129. break;
  130. }
  131. }
  132. }
  133. }
  134. self.change_day = function (day) {
  135. if (day.day == "") { return; }
  136. var date = new Date(self.select_year, self.select_month - 1, 1);
  137. var dayOfWeek = date.getDay();
  138. self.active_day = day.day;
  139. self.date_day = self.active_day;
  140. self.getWeek(self.select_year, self.select_month, self.active_day);
  141. }
  142. self.getWeek = function (year, month, day) {
  143. switch (new Date(year, month - 1, day).getDay()) {
  144. case 0: self.week = "星期日"; break;
  145. case 1: self.week = "星期一"; break;
  146. case 2: self.week = "星期二"; break;
  147. case 3: self.week = "星期三"; break;
  148. case 4: self.week = "星期四"; break;
  149. case 5: self.week = "星期五"; break;
  150. case 6: self.week = "星期六"; break;
  151. }
  152. }
  153. /*日历结束*/
  154. }])
  155. function formate(num) {
  156. return num > 9 ? num : "0" + num;
  157. }
  158. function getWeek(date) {
  159. switch (new Date(date).getDay()) {
  160. case 0: return "星期日"; break;
  161. case 1: return "星期一"; break;
  162. case 2: return "星期二"; break;
  163. case 3: return "星期三"; break;
  164. case 4: return "星期四"; break;
  165. case 5: return "星期五"; break;
  166. case 6: return "星期六"; break;
  167. }
  168. }