'use strict'; var app = angular.module('app', [ 'angularUtils.directives.dirPagination' ]); app.controller("listCtrl", ["$scope", "$http", "$timeout", function ($scope, $http, $timeout) { var self = this; var s4 = new SM4Util(); self.userId = $.cookie("GlWorkPlatform-userid"); self.userName = $.cookie("GlWorkPlatform-chineseName"); self.get_AccessToken = localStorage.getItem("GlWorkPlatform-AccessToken"); self.get_lastReturnPageno = sp.getUrlName("lastReturnPageno"); self.get_type = parseInt(sp.getUrlName("type")); var postCfg = { headers: { 'Content-Type': 'application/json', 'Authorization': "Bearer " + self.get_AccessToken } } self.search = { FLOW: 1, TYPE: 1, KSSJ: sp.monthfirst(sp.getLocalDate()), JSSJ: sp.formatMonthLast(sp.getLocalDate()) } self.changeType = function () { switch (self.search.TYPE) { case "1": self.search.KSSJ = sp.monthfirst(sp.getLocalDate()); self.search.JSSJ = sp.formatMonthLast(sp.getLocalDate()); break; case "2": self.search.KSSJ = sp.quarter(sp.getLocalDate(), 1); self.search.JSSJ = sp.quarter(sp.getLocalDate(), 2); break; case "3": self.search.KSSJ = sp.currentYear() + "-01-01"; self.search.JSSJ = sp.currentYear() + "-12-31"; break; case "4": self.search.KSSJ = sp.format(sp.getLocalDate()); self.search.JSSJ = sp.format(sp.getLocalDate()); break; } } self.noDataTip = 1;//没有数据时赋变量为0,先默认为1 self.getData = function () { self.list = [] var data = { flowtype: self.search.FLOW == 1 ? "C01" : "C02", tablename: self.search.FLOW == 1 ? "SX_XF" : "SX_ZMLJL", begindate: self.search.KSSJ + " 00:00:00", enddate: self.search.JSSJ + " 23:59:59" } $http.post(apiurljs.login + "g2app/richang/XinFangStatistics", { data: s4.encryptData_CBC(JSON.stringify(data)) }, postCfg) .success(function (obj) { var res = strToJson(s4.decryptData_CBC(obj.data)); self.canExportExcel = true; if (res.data == null || res.data == undefined || res.data == "") { self.noDataTip = 0; } else { self.noDataTip = 1; self.list = res.data; if (self.search.FLOW == 1) { self.list.forEach(function (item) { if (!item.ITEM_LD || item.ITEM_LD == {}) { item.ITEM_LD = { JC_TOTAL: 0, LDQD_JC: 0, LDQD_RC: 0, RC_TOTAL: 0 } } if (!item.ITEM_LF || item.ITEM_LF == {}) { item.ITEM_LF = { BMZ1_JC:0, BMZ1_RC:0, JC_TOTAL:0, JJFFZCF_JC:0, JJFFZCF_RC:0, JJFZCF_JC:0, JJFZCF_RC:0, RC_TOTAL:0, SJZ1_JC:0, SJZ1_RC:0, ZS1_JC: 0, ZS1_RC: 0 } } if (!item.ITEM_LX || item.ITEM_LX == {}) { item.ITEM_LX = { BMZ_JC:0, BMZ_RC:0, JC_TOTAL:0, RC_TOTAL:0, SJZ_JC:0, SJZ_RC:0, SXFBZ_JC:0, SXFBZ_RC:0, ZS_JC: 0, ZS_RC: 0 } } if (!item.ITEM_WL || item.ITEM_WL == {}) { item.ITEM_WL = { JC_TOTAL:0, QT_JC:0, QT_RC:0, RC_TOTAL:0, SXFBZ1_JC:0, SXFBZ1_RC:0, WLMT_JC:0, WLMT_RC:0, ZJWGW_JC: 0, ZJWGW_RC: 0 } } }) } } }) } self.getData(); self.printOut = function () { if (self.canExportExcel) { $('#printOut td').attr('t', 's') var defaultCellStyle = { font: { name: 'Times New Roman', sz: 12, color: { rgb: "000000" }, bold: false, italic: false, underline: false }, alignment: { vertical: "center", horizontal: "center", indent: 0, wrapText: true }, border: { top: { style: "thin", color: { rgb: "000000" } }, right: { style: "thin", color: { rgb: "000000" } }, bottom: { style: "thin", color: { rgb: "000000" } }, left: { style: "thin", color: { rgb: "000000" } } } }; var cell = { defaultCellStyle: defaultCellStyle }; var wb = XLSX.utils.table_to_book_addtitle(document.querySelector('#printOut'), cell, "信访统计") //设置表格的样式 var wbout = XLSX.write(wb, { bookType: 'xlsx', bookSST: false, type: 'binary', cellStyles: true, defaultCellStyle: defaultCellStyle, showGridLines: false }); var s2ab = function (s) { var buf = new ArrayBuffer(s.length); var view = new Uint8Array(buf); for (var i = 0; i !== s.length; ++i) view[i] = s.charCodeAt(i) & 0xFF; return buf; }; try { saveAs(new Blob([s2ab(wbout)], { type: 'application/octet-stream' }), '信访统计.xlsx') } catch (e) { if (typeof console !== 'undefined') console.log(e, wbout) } return wbout } else { sp.dialog('数据还未加载完成,请稍等...') } } //头部下滚冻结 $(function () { //页面高度撑满 setTimeout(function () { if ($(".ibox-content").height() < $(window).height() - 31) { $(".ibox-content").css("height", $(window).height() - 31) } $(".sp-table").parent().css("height", $(".ibox-content").height() - 50) }, 1) }) }])