'use strict'; var app = angular.module('app', [ 'angularUtils.directives.dirPagination', ]); app.controller("indexCtrl", ["$scope", "$http", "$interval", "$timeout", function ($scope, $http, $interval, $timeout) { var self = this; self.userId = $.cookie("GlWorkPlatform-userid"); self.userName = $.cookie("GlWorkPlatform-username"); self.userChineseName = $.cookie("GlWorkPlatform-chineseName") self.get_AccessToken = localStorage.getItem("GlWorkPlatform-AccessToken"); var postCfg = { headers: { 'Content-Type': 'application/json', 'Authorization': "Bearer " + self.get_AccessToken } }; self.changeTop = function (n) { //$(".activeTop").css("box-shadow", "5px 5px 5px " + $(".topBtn").eq(n).css("background-color")) self.activeTop = n + 1; } self.activeItem1 = "待办" self.activeItem2 = "通知公告" self.getData = function () { var data = {} $http.get("js/office.txt", data, postCfg) .success(function (res) { self.list1 = res.list1; self.list2 = res.list2; self.ldzl = res.ldzl; self.today = { date: sp.getday(0), week: getWeek(sp.getday(0)) }; self.week = { date1: sp.getWeekNumber(new Date()).begin, date2: sp.getNextDate(sp.getWeekNumber(new Date()).begin, 1), date3: sp.getNextDate(sp.getWeekNumber(new Date()).begin, 2), date4: sp.getNextDate(sp.getWeekNumber(new Date()).begin, 3), date5: sp.getNextDate(sp.getWeekNumber(new Date()).begin, 4) } }) } self.getData() /*日历开始*/ self.all_year = []; self.all_month = []; self.select_year = '' self.select_month = '' self.active_day = '' self.week = '' //初始化显示 当前年和月 self.show_now = function () { var now = new Date(); self.select_year = now.getFullYear(); self.select_month = now.getMonth() + 1; self.active_day = formate(now.getDate()); self.cyear = now.getFullYear(); self.cmonth = now.getMonth() + 1; self.cday = formate(now.getDate()); self.showTime() //self.getDateWork(self.select_year, self.select_month, self.active_day) } self.showTime = function () { //在select中填入年份 for (var year = self.select_year - 5; year < self.select_year + 5; year++) { var obj_1 = { 'value': year, 'id': year } self.all_year.push(obj_1); } //在select中填入月份 for (var month = 1; month < 13; month++) { var obj_2 = { 'value': month, 'id': month } self.all_month.push(obj_2); } //初始化显示 当前年和月 self.showDays(self.select_year, self.select_month) } //返回指定的月份的天数 月份1-12 self.calDays = function (year, month) { return new Date(year, month, 0).getDate(); } self.dateLeft = function () { var date = new Date(self.select_year, self.select_month - 1, 0) self.select_year = date.getFullYear(); self.select_month = date.getMonth() + 1; self.showDays(self.select_year, self.select_month) } self.dateRight = function () { var date = new Date(self.select_year, self.select_month + 1, 0) self.select_year = date.getFullYear(); self.select_month = date.getMonth() + 1; self.showDays(self.select_year, self.select_month) } //展示指定的年和月的所有日期 self.showDays = function (year, month) { self.days = []; var days = []; self.dateWork = []; self.date_day = self.active_day; self.getWeek(self.select_year, self.select_month, self.active_day) //得到表示指定年和月的1日的那个时间对象 var date = new Date(year, month - 1, 1); //1.先添加响应的空白的li:这个月1号是星期几,就添加几个空白的li var dayOfWeek = date.getDay(); //得到1日是星期几 for (var i = 0; i < dayOfWeek; i++) { days.push({ day: "", id: i + 8 }); } //计算一个月有多少天 var daysOfMonth = self.calDays(year, month); //2. 从1号开始添加li for (var i = 1; i <= daysOfMonth; i++) { days.push({ day: formate(i), id: i + dayOfWeek + 7 }); } var length = days.length; for (var i = 42; i > length; i--) { days.push({ day: "", id: daysOfMonth - i + 50 }); } for (var i = 0; i < 6 ; i++) { self.days[i] = []; $.each(days, function (index, item) { if (Math.ceil((index + 1) / 7) == i + 1) { self.days[i].push(item) } }) } if (JSON.stringify(days).indexOf('"day":' + JSON.stringify(self.active_day)) == -1) { for (var i = days.length - 1; i >= 0; i--) { if (days[i].day != "") { self.active_day = days[i].day; break; } } } } self.change_day = function (day) { if (day.day == "") { return; } var date = new Date(self.select_year, self.select_month - 1, 1); var dayOfWeek = date.getDay(); self.active_day = day.day; self.date_day = self.active_day; self.getWeek(self.select_year, self.select_month, self.active_day); } self.getWeek = function (year, month, day) { switch (new Date(year, month - 1, day).getDay()) { case 0: self.week = "星期日"; break; case 1: self.week = "星期一"; break; case 2: self.week = "星期二"; break; case 3: self.week = "星期三"; break; case 4: self.week = "星期四"; break; case 5: self.week = "星期五"; break; case 6: self.week = "星期六"; break; } } /*日历结束*/ }]) function formate(num) { return num > 9 ? num : "0" + num; } function getWeek(date) { switch (new Date(date).getDay()) { case 0: return "星期日"; break; case 1: return "星期一"; break; case 2: return "星期二"; break; case 3: return "星期三"; break; case 4: return "星期四"; break; case 5: return "星期五"; break; case 6: return "星期六"; break; } }