'use strict'; var app = angular.module('app', [ 'angularUtils.directives.dirPagination', ]); app.controller("indexCtrl", ["$scope", "$http", function ($scope, $http) { 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.loading = false; self.list1 = []; self.noDataTip1 = null; self.list2 = []; self.noDataTip2 = null; self.list3 = []; self.noDataTip3 = null; self.getData1 = function () { self.loading = true; var data = { userid: self.userId, ntops: 6 }; $http.post(apiurljs.login + "g2work/desktop/queryDataTodo", { data: s4.encryptData_CBC(JSON.stringify(data)) }, postCfg) .success(function (obj) { var res = strToJson(s4.decryptData_CBC(obj.data)); self.loading = false; if (res.data == null || res.data == undefined || res.data == "") { self.noDataTip1 = 0; } else { self.noDataTip1 = 1; self.list1 = res.data; $.each(self.list1, function (index, item) { item.FILEN = item.FILEN + "&dotype=1" }) } }) } self.getData2 = function () { if (self.type == 2) { return; } else { self.loading = true; var data = { userid: self.userId, ntops: 6 }; $http.post(apiurljs.login + "g2work/desktop/queryDataDone", { data: s4.encryptData_CBC(JSON.stringify(data)) }, postCfg) .success(function (obj) { var res = strToJson(s4.decryptData_CBC(obj.data)); self.loading = false; if (res.data == null || res.data == undefined || res.data == "") { self.noDataTip2 = 0; } else { self.noDataTip2 = 1; self.list2 = res.data; $.each(self.list2, function (index, item) { item.FILEN = item.FILEN + "&dotype=0" }) } }) } } self.getData3 = function () { if (self.type == 3) { return; } else { self.loading = true; var data = { userid: self.userId, ntops: 6 }; $http.post(apiurljs.login + "g2work/desktop/queryDataFinish", { data: s4.encryptData_CBC(JSON.stringify(data)) }, postCfg) .success(function (obj) { var res = strToJson(s4.decryptData_CBC(obj.data)); self.loading = false; if (res.data == null || res.data == undefined || res.data == "") { self.noDataTip3 = 0; } else { self.noDataTip3 = 1; self.list3 = res.data; $.each(self.list3, function (index, item) { item.FILEN = item.FILEN + "&dotype=1" }) } }) } } self.getDataAll = function () { self.getData1(); //self.getData2(); self.getData3(); setInterval(function () { self.getData1() }, 300000) self.type = 1; } self.getDataAll() /*日历开始*/ self.all_year = []; self.all_month = []; self.select_year = '' self.select_month = '' self.active_day = '' self.week = '' self.selectList = "own"; self.DateWork = []; self.getDateWork = function (year, month, day) { self.DateWork1 = { own: [], leader: [] }; var data = { STRATDATE: year + "-" + formate(month) + "-" + day, USERID: $.cookie("GlWorkPlatform-username")//self.userId } $http.post(apiurljs.login + "g2app/deskcalendar/deskQueryDayData", { data: s4.encryptData_CBC(JSON.stringify(data)) }, postCfg) .success(function (obj) { var res = strToJson(s4.decryptData_CBC(obj.data)); if (res.data.Items.length>0){ self.DateWork = res.data.Items[0].task; $.each(self.DateWork, function (index, item) { item.STARTIME = "开始时间:" + formateTime(item.STARTIME); item.ENDTIME = "结束时间:" + formateTime(item.ENDTIME); if (item.OWNTYPE == "个人") { self.DateWork1.own.push(item) } else if (item.OWNTYPE == "领导") { self.DateWork1.leader.push(item) } }) } else { self.DateWork = []; } }) } self.showDateWork = function (str) { self.selectList = str; self.DatePageNo = 0; self.DateWidth = 0; $(".Date-page").parent().css("margin-left", (0)); } self.getDayInfo = function () { var data = { DATE: self.select_year + "-" + formate(self.select_month) + "-" + "01", USERID: self.userName } $http.post(apiurljs.login + "g2app/calendar/queryMonthData", { data: s4.encryptData_CBC(JSON.stringify(data)) }, postCfg) .success(function (obj) { var res = strToJson(s4.decryptData_CBC(obj.data)); if (res) { self.days.forEach(function (item1) { item1.forEach(function (item2) { if (res.data["day_" + item2.day]) { item2.meets = res.data["day_" + item2.day] } }) }) } }); } self.DatePageNo = 0;//向左平移n个工作事件 self.DateWidth = 0;//向左平移距离 self.DateLeft = function () { if (self.DatePageNo > 0) { self.DateWidth = self.DateWidth + $(".Date-page").eq(self.DatePageNo - 1).outerWidth(true); $(".Date-page").parent().css("margin-left", (self.DateWidth > 0 ? 0 : self.DateWidth)); self.DatePageNo = self.DatePageNo - 1; } else { return; } } self.DateRight = function () { if (self.DatePageNo < $(".Date-page").length - 1) { self.DateWidth = self.DateWidth - $(".Date-page").eq(self.DatePageNo).outerWidth(true); $(".Date-page").parent().css("margin-left", self.DateWidth); self.DatePageNo = self.DatePageNo + 1; } } //初始化显示 当前年和月 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) } //当select的选中的option发送变化的触发的事件 self.change_year = function () { self.showDays(self.select_year, self.select_month) } self.change_month = function () { self.showDays(self.select_year, self.select_month) } //返回指定的月份的天数 月份1-12 self.calDays = function (year, month) { return new Date(year, month, 0).getDate(); } //展示指定的年和月的所有日期 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 }); } $.each(days, function (index1, item1) { $.each(self.DateWork, function (index2, item2) { if (self.select_year + "-" + formate(self.select_month) + "-" + formate(item1.day) == item2.date) { item1.data = item2.data; if (item1.day == self.active_day) { self.dateWork = item1.data; } } }) }) 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(formate(self.active_day))) == -1) { for (var i = days.length - 1; i >= 0; i--) { if (days[i].day != "") { self.active_day = days[i].day; break; } } } days.forEach(function (item) { if (item.day == self.active_day) { $(".date-table td").each(function () { $(this).css("border-bottom", "1px solid #c6c6c6"); $(this).css("border-right", "1px solid #c6c6c6"); }) $(".date-table td").eq(item.id - 2).css("border-right", "0") $(".date-table td").eq(item.id - 8).css("border-bottom", "0") } }) self.getDayInfo() self.getDateWork(self.select_year, self.select_month, self.active_day) } self.returnToday = function () { self.select_year = self.cyear; self.select_month = self.cmonth; self.active_day = self.cday; self.showDays(self.select_year,self.select_month) } 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(); $(".date-table td").each(function () { $(this).css("border-bottom", "1px solid #c6c6c6"); $(this).css("border-right", "1px solid #c6c6c6"); }) $(".date-table td").eq(day.id - 2).css("border-right", "0") $(".date-table td").eq(day.id - 8).css("border-bottom", "0") self.active_day = day.day; self.date_day = self.active_day; self.getWeek(self.select_year, self.select_month, self.active_day); self.getDateWork(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; } } /*日历结束*/ self.getGNbtn = function () { var data = { userid: self.userId, ntops: 4 }; $http.post(apiurljs.login + "g2work/desktop/queryFavoriteFunc", { data: s4.encryptData_CBC(JSON.stringify(data)) }, postCfg) .success(function (obj) { var res = strToJson(s4.decryptData_CBC(obj.data)); self.gnBtn = res.data; }) } self.getGNbtn() self.getZJbtn = function () { $http.post(apiurljs.login + "UserPower/Permissions", { data: s4.encryptData_CBC("") }, postCfg) .success(function (obj1) { var res1 = strToJson(s4.decryptData_CBC(obj1.data)); var data = { userid: self.userId, top: 4 }; $http.post(apiurljs.login + "g2app/desk/queryVisitList", { data: s4.encryptData_CBC(JSON.stringify(data)) }, postCfg) .success(function (obj2) { var res2 = strToJson(s4.decryptData_CBC(obj2.data)); self.zjBtn = res2.data; self.zjBtn.forEach(function (item) { item.FILEN = item.REQUESTURL; item.CNAME = item.TITLE; res1.data.rows.forEach(function (x) { x.C_H_I_L_D.forEach(function (x1) { if (x1.CNAME == item.CNAME) { item.PKID = x1.PKID } }) }) }) }) }) } self.getZJbtn() self.getQXbtn = function () { var data = { userid: self.userId, ntops: 0, orderby: "sortid" }; $http.post(apiurljs.login + "g2work/desktop/queryWorkflowCandoCustom", { data: s4.encryptData_CBC(JSON.stringify(data)) }, postCfg) .success(function (obj) { var res = strToJson(s4.decryptData_CBC(obj.data)); self.qxBtn = res.data; $.each(self.qxBtn, function (index, item) { item.FILEN = item.FILEN + "&dotype=1" }) }) } self.getQXbtn() self.qxBtnNo = 0;//向左平移n个按钮 self.pageWidth = 0;//向左平移距离 self.pageLeft = function() { if (self.qxBtnNo > 0) { self.pageWidth = self.pageWidth + $(".qxBtn").eq(self.qxBtnNo-1).outerWidth(true); $(".qxBtn").parent().css("margin-left", (self.pageWidth > 0 ? 0 : self.pageWidth)); self.qxBtnNo = self.qxBtnNo - 1; } else { return; } } self.pageRight = function () { if (self.qxBtnNo < $(".qxBtn").length - 1) { self.pageWidth = self.pageWidth - $(".qxBtn").eq(self.qxBtnNo).outerWidth(true); $(".qxBtn").parent().css("margin-left", self.pageWidth); self.qxBtnNo = self.qxBtnNo + 1; } } self.getTGlist = function () { var data = { userid: self.userId, ntops: 5 }; $http.post(apiurljs.login + "g2work/desktop/queryModule", { data: s4.encryptData_CBC(JSON.stringify(data)) }, postCfg) .success(function (obj) { var res = strToJson(s4.decryptData_CBC(obj.data)); self.ywmk = res.data; $.each(self.ywmk, function (index, item) { item.style = { "background": "url(img/yw" + (index + 1) + ".png)", "background-size": "100% 100%" } }) }) } self.getTGlist() self.FILENs = [{ NAME: "收文管理", FILEN: "tpl/shouwenbg/", FLOWIDs: "AA02|AA16|AA17|AA18" }, { NAME: "督办延时", FILEN: "tpl/shouwenys/", FLOWIDs: "AA19" }, { NAME: "行政发文", FILEN: "tpl/fawenbg/", FLOWIDs: "AA03|AA04|AA06|AA07|AA08|AA09|AA10|AA11|AA20|AA21|AA23|AA24|AA40|AA41|AA42|AA43|AA49|AA55|AA56|AA57|AA63|AA75|AA76|AA77|AA78|AA79|AA80" }, { NAME: "党委发文", FILEN: "tpl/fawendw/", FLOWIDs: "AA05|AA22|AA44|AA45|AA46|AA47|AA48|AA54|AA58|AA59|AA60|AA61|AA62" }, { NAME: "事项督办", FILEN: "tpl/shixiangdb/", FLOWIDs: "AA73|AA82" }, { NAME: "督办延时", FILEN: "tpl/shixiangys/", FLOWIDs: "AA52" }, { NAME: "文件发布", FILEN: "tpl/wenjianbg/", FLOWIDs: "AA50|AA84" }, { NAME: "市政府转办", FILEN: "tpl/gongkaishi/", FLOWIDs: "AA53" }, { NAME: "住建委申请", FILEN: "tpl/gongkaizhu/", FLOWIDs: "AA51" }, { NAME: "网站信息发布", FILEN: "tpl/wangzhaninfo/", FLOWIDs: "AA25" }, { NAME: "住建工作动态", FILEN: "tpl/gongzuodt/", FLOWIDs: "AA26" }, { NAME: "车辆派遣", FILEN: "tpl/cheliangbg/", FLOWIDs: "AA13|AA14|AA15" }, { NAME: "办公用品申请", FILEN: "tpl/bangongbg/", FLOWIDs: "AA81" }, { NAME: "会议室申请", FILEN: "tpl/huiyishibg/", FLOWIDs: "AA27|AA71|AA72" }, { NAME: "值班管理", FILEN: "tpl/zhibanmgr/", FLOWIDs: "AA66|AA67|AA69|AA70|AA83" }, { NAME: "请假管理", FILEN: "tpl/qingjiamgr/", FLOWIDs: "AA28|AA29|AA30|AA31|AA32|AA33|AA34|AA35" }, { NAME: "销假管理", FILEN: "tpl/xiaojiamgr/", FLOWIDs: "AA36|AA37|AA38|AA39" }, { NAME: "OA变更管理", FILEN: "tpl/oabgmgr/", FLOWIDs: "AA74" }, { NAME: "签报管理", FILEN: "tpl/qianbaomgr/", FLOWIDs: "AA65" }, { NAME: "用章管理", FILEN: "tpl/yzhangmgr/", FLOWIDs: "AA64" }, { NAME: "领导日程", FILEN: "tpl/lingdaobg/", FLOWIDs: "AA68" }, { NAME: "通知公告", FILEN: "tpl/tongzhibg/", FLOWIDs: "AA85" }] self.openSwen = function (item) { self.FILENs.forEach(function (item1) { if (item1.FLOWIDs.indexOf(item.FLOWID) > -1) { window.parent.sp.addTabNav(item.FLOWID, item1.NAME, item1.FILEN + item.FILEN) } }) } self.openHref = function (item) { window.parent.sp.addTabNav(item.PKID, item.CNAME, item.FILEN) } self.getNoteList = function () { var data = { tablename: "TZTGINFO", sqlwhere: " and (jbstatus='已发布' AND jbuserid='" + self.userId + "') OR (jbstatus='已发布' AND jsuserid LIKE '%" + self.userId + "%')", sqlorwhere: {}, sqlinwhere: {}, sqllikewhere: {}, colums: "ID,JBTITLE,JBUSERID,JBDATE,JBSTATUS,REMARK,JBNAME", order: "ID", pagesize: 4, pageno: 1 } $http.post(apiurljs.login + "g2app/dataabase/queryDataByColWithPage3", { data: s4.encryptData_CBC(JSON.stringify(data)) }, postCfg) .success(function (obj) { var res = strToJson(s4.decryptData_CBC(obj.data)); res.data.forEach(function (item) { item.FBTIME = (item.JBDATE != "" && item.JBDATE != null && item.JBDATE != undefined) ? self.dateFtt('yyyy-MM-dd', new Date(item.JBDATE)) : ""; item.TITLE1 = item.JBTITLE.length > 25 ? item.JBTITLE.slice(0, 25) + "..." : item.JBTITLE; }) self.noteList = res.data; }); //var data = { // ntops: 4 //} //$http.post(apiurljs.login + "g2app/note/queryTop", data, postCfg) //.success(function (res) { // self.noteList = res.data; // $.each(self.noteList, function (index, item) { // item.FBTIME = sp.format(item.FBTIME); // item.TITLE1 = item.TITLE.length > 25 ? item.TITLE.slice(0, 25) + "..." : item.TITLE; // }) //}) } self.getNoteList() self.tztgHref = function (item) { window.parent.sp.addTabNav('FZC01', '通知通告', 'tpl/notice/reportNewsInfo.html?pid=' + item.ID + '&lastReturnPageno=1&type=type1') } //时间格式化 self.dateFtt = function (fmt, date) { var o = { "M+": date.getMonth() + 1, //月份 "d+": date.getDate(), //日 "h+": date.getHours(), //小时 "m+": date.getMinutes(), //分 "s+": date.getSeconds(), //秒 "q+": Math.floor((date.getMonth() + 3) / 3), //季度 "S": date.getMilliseconds() //毫秒 }; if (/(y+)/.test(fmt)) fmt = fmt.replace(RegExp.$1, (date.getFullYear() + "").substr(4 - RegExp.$1.length)); for (var k in o) if (new RegExp("(" + k + ")").test(fmt)) fmt = fmt.replace(RegExp.$1, (RegExp.$1.length == 1) ? (o[k]) : (("00" + o[k]).substr(("" + o[k]).length))); return fmt; } }]) app.directive("repeatFinish", function () { return { link: function (scope) { if (scope.$last == true) { $(".Date-page").css("width", $(".Date-page").parent().parent().width()); } } }; }); function formate(num) { return num > 9 ? num : "0" + num; } function formateTime(str) { if (str == "1900-01-01T00:00:00") { str = ""; return str; } else if (str == "0001-01-01T00:00:00") { ///这种情况是在做滨旅建管系统时用sqlserver数据库时遇到的 str = ""; return str; } else if (str != undefined && str != "" && str != null) { /////如果找到"-",不等于负1 if (str.toString().indexOf('-') != -1) { str = str.replace(/-/g, "/"); //将-替换为/,因为ios与ie浏览器中不支持-和T } /////如果找到T,不等于负1 if (str.toString().indexOf('T') != -1) { str = str.replace(/T/g, ' '); ///去掉日期中的T,因为ios与ie浏览器中不支持-和T } /////如果找到".",不等于负1 if (str.toString().indexOf('.') != -1) { str = str.slice(0, str.indexOf(".")); ///如果含有毫秒,就将毫秒去掉 } var formatDate = new Date(Date.parse(str)); var MM = formatDate.getMonth() + 1; if (MM < 10) { MM = '0' + MM; } //去掉前面加0,是为了便于后续的格式化得到年月 var dd = formatDate.getDate(); if (dd < 10) { dd = '0' + dd; } //去掉前面加0,是为了便于后续的格式化得到年月 var hh = formatDate.getHours(); if (hh < 10) { hh = '0' + hh; } var mm = formatDate.getMinutes(); if (mm < 10) { mm = '0' + mm; } var setDate = MM + "-" + dd + " " + hh + ":" + mm; return setDate; } else { str = ""; return str; } }