123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564 |
- 'use strict';
- app.controller('charts2Ctrl', ["$scope", "$rootScope", "$state", "$timeout", "$interval", "$http", "$cookieStore", "Restangular", "api_hkreport", function($scope, $rootScope, $state, $timeout, $interval, $http, $cookieStore, Restangular, api_hkreport) {
- $scope.ceshi=["110", "105", "84", "125", "110", "92", "98"];
- // 来电趋势图
- var dom_laidianqushitu = document.getElementById("laidianqushitu");
- var myChart_laidianqushitu = echarts.init(dom_laidianqushitu);
- var app = {};
- var option_laidianqushitu = null;
- option_laidianqushitu = {
- backgroundColor: "transparent",
- tooltip: {
- },
- grid: {
- top: '8%',
- left: '1%',
- right: '1%',
- bottom: '8%',
- containLabel: true,
- },
- xAxis: [{
- type: 'category',
- boundaryGap: false,
- axisLine: { //坐标轴轴线相关设置。数学上的x轴
- show: true,
- lineStyle: {
- color: '#233e64'
- },
- },
- axisLabel: { //坐标轴刻度标签的相关设置
- textStyle: {
- color: 'white',
- margin:15,
- align:'right'
- },
- },
- axisTick: { show: false,},
- data: ['8:00', '9:00', '10:00', '11:00', '12:00', '13:00', '14:00'],
- }],
- yAxis: [{
- type: 'value',
- min: 0,
- max:16,
- splitNumber: 7,
- splitLine: {
- show: true,
- lineStyle: {
- color: '#233e64'
- }
- },
- axisLine: {show: false,},
- axisLabel: {
- margin:20,
- textStyle: {
- color: 'white',
-
- },
- },
- axisTick: { show: false,},
- }],
- series: [{
- name: '异常流量',
- type: 'line',
- smooth: true, //是否平滑曲线显示
- // symbol:'circle', // 默认是空心圆(中间是白色的),改成实心圆
- symbolSize:0,
-
- lineStyle: {
- normal: {
- color: "rgb(34,142,215)" // 线条颜色
- }
- },
- areaStyle: { //区域填充样式
- normal: {
- //线性渐变,前4个参数分别是x0,y0,x2,y2(范围0~1);相当于图形包围盒中的百分比。如果最后一个参数是‘true’,则该四个值是绝对像素位置。
- color: new echarts.graphic.LinearGradient(0, 0, 0, 1, [
- { offset: 0, color: 'rgba(34,142,215, 0.6)'},
- { offset: 1, color: 'rgba(34,142,215, 0.1)'}
- ], false),
- shadowColor: 'rgba(34,142,215, 0.9)', //阴影颜色
- shadowBlur: 20 //shadowBlur设图形阴影的模糊大小。配合shadowColor,shadowOffsetX/Y, 设置图形的阴影效果。
- }
- },
- // data: [90, 105, 84, 125, 110, 92, 98]
- data:$scope.ceshi
- }]
- };;
- // myChart_laidianqushitu.setOption(option_laidianqushitu);
- // 报修趋势图
- var dom_baoxiuqushitu = document.getElementById("baoxiuqushitu");
- var myChart_baoxiuqushitu = echarts.init(dom_baoxiuqushitu);
- var app = {};
- var option_baoxiuqushitu = null;
- option_baoxiuqushitu = {
- backgroundColor: "transparent",
- tooltip: {
- },
- grid: {
- top: '8%',
- left: '1%',
- right: '1%',
- bottom: '8%',
- containLabel: true,
- },
- xAxis: [{
- type: 'category',
- boundaryGap: false,
- axisLine: { //坐标轴轴线相关设置。数学上的x轴
- show: true,
- lineStyle: {
- color: '#233e64'
- },
- },
- axisLabel: { //坐标轴刻度标签的相关设置
- textStyle: {
- color: 'white',
- margin:15,
- align:'right'
- },
- },
- axisTick: { show: false,},
- data: ['8:00', '9:00', '10:00', '11:00', '12:00', '13:00', '14:00'],
- }],
- yAxis: [{
- type: 'value',
- min: 0,
- max:16,
- splitNumber: 7,
- splitLine: {
- show: true,
- lineStyle: {
- color: '#233e64'
- }
- },
- axisLine: {show: false,},
- axisLabel: {
- margin:20,
- textStyle: {
- color: 'white',
-
- },
- },
- axisTick: { show: false,},
- }],
- series: [{
- name: '异常流量',
- type: 'line',
- smooth: true, //是否平滑曲线显示
- // symbol:'circle', // 默认是空心圆(中间是白色的),改成实心圆
- symbolSize:0,
-
- lineStyle: {
- normal: {
- color: "rgb(208,64,47)" // 线条颜色
- }
- },
- areaStyle: { //区域填充样式
- normal: {
- //线性渐变,前4个参数分别是x0,y0,x2,y2(范围0~1);相当于图形包围盒中的百分比。如果最后一个参数是‘true’,则该四个值是绝对像素位置。
- color: new echarts.graphic.LinearGradient(0, 0, 0, 1, [
- { offset: 0, color: 'rgba(208,64,47, 0.6)'},
- { offset: 1, color: 'rgba(208,64,47, 0.1)'}
- ], false),
- shadowColor: 'rgba(208,64,47, 0.9)', //阴影颜色
- shadowBlur: 20 //shadowBlur设图形阴影的模糊大小。配合shadowColor,shadowOffsetX/Y, 设置图形的阴影效果。
- }
- },
- data: [90, 105, 84, 125, 110, 92, 98]
- }]
- };;
- // myChart_baoxiuqushitu.setOption(option_baoxiuqushitu);
- // 事件工单列表轮播图
- // var shijian_index=1;
- // setInterval(function(){
- // var l='-'+414*shijian_index+'px';
- // $('.shijian_tables_box:eq(0)').animate({left:l},1000,function(){
- // if(shijian_index == $('.shijian_tables').length-1){
- // $(this).css('left',0);
- // shijian_index=1;
- // }else{
- // shijian_index++;
- // }
- // });
- // },5000)
- // 报修列表轮播图
- // var baoxiu_index=1;
- // setInterval(function(){
- // var l='-'+414*baoxiu_index+'px';
- // $('.baoxiu_tables_box:eq(0)').animate({left:l},1000,function(){
- // if(baoxiu_index == $('.baoxiu_tables').length-1){
- // $(this).css('left',0);
- // baoxiu_index=1;
- // }else{
- // baoxiu_index++;
- // }
- // });
- // },5000)
- // 调用数据
- var nowDay=moment(new Date().getTime()+86400000).format("YYYY-MM-DD");
- var yesterDay=moment(new Date().getTime()).format("YYYY-MM-DD");
- var nowHour=moment(new Date().getTime()).format("YYYY-MM-DD HH:mm:ss");
- var sixHourAgo=moment(new Date().getTime()-3600000*6).format("YYYY-MM-DD HH:mm:ss");
- console.log(nowHour);
- // 获取工单实时总数数据
- // 开始
- $scope.incident_allData="";
- function getIncident_allData(time){
- api_hkreport.incidentreport(time, 'large_screen_incident_total').then(function(res) {
- console.log(res);
- $scope.incident_allData=res.data[0].sum
- })
- }
- getIncident_allData({
-
- })
- // 结束
- // 获取及时响应数据
- // 开始
- $scope.incident_responseData="";
- function getIncident_responseData(time){
- api_hkreport.incidentreport(time, 'large_screen_incident_pending_total').then(function(res) {
- console.log(res);
- $scope.incident_responseData=res.data[0].sum
- })
- }
- getIncident_responseData({})
- // 结束
- // 获取解决中数据
- // 开始
- // $scope.incident_solveNowData="";
- // function getIncident_solveNowData(time){
- // api_hkreport.incidentreport(time, 'large_screen_incident_handler_total').then(function(res) {
- // console.log(res);
- // $scope.incident_solveNowData=res.data[0].sum
- // })
- // }
- // getIncident_solveNowData({
-
- // })
- // // 结束
- // // 获取已解决数据
- // // 开始
- // $scope.incident_solveData="";
- // function getIncident_solveData(time){
- // api_hkreport.incidentreport(time, 'large_screen_incident_resolved_total').then(function(res) {
- // console.log(res);
- // $scope.incident_solveData=res.data[0].sum
- // })
- // }
- // getIncident_solveData({
-
- // })
- // 结束
- // 获取呼叫中心来电趋势图数据
- // 开始
- function getCallPitData(time){
- api_hkreport.incidentreport(time, 'large_screen_call_trend').then(function(res) {
- var timeArr=[];
- var time=[];
- var value=[];
- var time=res.date;
- $scope.allIncidentreport=0;
- console.log(time);
- for(var i=0;i<res.value.length;i++){
- $scope.allIncidentreport=$scope.allIncidentreport+Number(res.value[i])
- }
- for(var i=0;i<time.length;i++){
- timeArr.push(time[i].substring(time[i].length-2,time[i].length)+":00");
- }
- value=res.value;
- option_laidianqushitu.xAxis[0].data=timeArr;
- option_laidianqushitu.series[0].data=value;
- myChart_laidianqushitu.setOption(option_laidianqushitu);
- // $scope.incident_solveData=res.data[0].sum
- })
- }
- getCallPitData({
- "start":moment(new Date().getTime()).format("YYYY-MM-DD")+" 08:00:00",
- // "start":"2019-04-16 00:00:00",
- "end":moment(new Date().getTime()).format("YYYY-MM-DD")+" 18:00:00"
- });
- $interval(function(){
- getCallPitData({
- "start":moment(new Date().getTime()).format("YYYY-MM-DD")+" 08:00:00",
- "end":moment(new Date().getTime()).format("YYYY-MM-DD")+" 18:00:00"
- });
- },30000)
- // 结束
- // 呼叫中心来电总数
- // 开始
- // $scope.callAll=0;
- // function getCallPitAllData(time){
- // api_hkreport.incidentreport(time, 'service_counter').then(function(res) {
- // console.log(res);
- // $scope.callAll=res.workCallProportion.sum
- // })
- // }
- // getCallPitAllData({
- // "start":moment(new Date().getTime()).format("YYYY-MM-DD"),
- // "end":moment(new Date().getTime()+86400000).format("YYYY-MM-DD")
- // })
- // $interval(function(){
- // getCallPitAllData({
- // "start":moment(new Date().getTime()).format("YYYY-MM-DD"),
- // "end":moment(new Date().getTime()+86400000).format("YYYY-MM-DD")
- // })
- // },30000)
- // 结束
- // 微信报修总数
- // 开始
- $scope.wxAll=0;
- function getWxPitAllData(time){
- api_hkreport.incidentreport(time, 'large_screen_wx_incident_sum').then(function(res) {
- console.log(res);
- $scope.wxAll=res.data[0].sum
- // $scope.callAll=res.workCallProportion.sum
- })
- }
- getWxPitAllData({
- "start":moment(new Date().getTime()).format("YYYY-MM-DD")+" 00:00:00",
- "end":moment(new Date().getTime()).format("YYYY-MM-DD")+" 23:59:59"
- })
- $interval(function(){
- getWxPitAllData({
- "start":moment(new Date().getTime()).format("YYYY-MM-DD")+" 00:00:00",
- "end":moment(new Date().getTime()).format("YYYY-MM-DD")+" 23:59:59"
- })
- },30000)
- // 结束
- // 获取微信报修趋势图数据
- // 开始
- function getWechatPitData(time){
- api_hkreport.incidentreport(time, 'large_screen_wx_incident_trend').then(function(res) {
- var timeArr=[];
- var time=[];
- var value=[];
- var time=res.date;
- for(var i=0;i<time.length;i++){
- timeArr.push(time[i].substring(time[i].length-2,time[i].length)+":00");
- }
- value=res.value;
- option_baoxiuqushitu.xAxis[0].data=timeArr;
- option_baoxiuqushitu.series[0].data=value;
- myChart_baoxiuqushitu.setOption(option_baoxiuqushitu);
- })
- }
- getWechatPitData({
- "start":moment(new Date().getTime()).format("YYYY-MM-DD")+" 08:00:00",
- "end":moment(new Date().getTime()).format("YYYY-MM-DD")+" 18:00:00"
- });
- $interval(function(){
- getWechatPitData({
- "start":moment(new Date().getTime()).format("YYYY-MM-DD")+" 08:00:00",
- "end":moment(new Date().getTime()).format("YYYY-MM-DD")+" 18:00:00"
- });
- },30000)
- // 结束
- // 获取事件工单处理实时情况数据
- // 开始
- $scope.incidentHandleList1=[];
- $scope.incidentHandleList2=[];
- function getIncidentHandleData(time){
- api_hkreport.incidentreport(time, 'large_screen_incident_rt_status').then(function(res) {
- if(res.data.length>14){
- $scope.incidentHandleList1=res.data.slice(0,7);
- $scope.incidentHandleList2=res.data.slice(8,15);
- }else{
- $scope.incidentHandleList1=res.data;
- $scope.incidentHandleList2=res.data;
- }
- })
- }
- getIncidentHandleData({})
- // 结束
- // 获取微信报修详情列表数据
- // 开始
- $scope.weChatList1=[];
- $scope.weChatList2=[];
- function getWeChatData(time){
- api_hkreport.incidentreport(time, 'large_screen_wx_incident_details').then(function(res) {
- console.log(res);
- for(var i=0;i<res.data.length;i++){
- if(res.data[i].name=="咨询"){
- // delete res.data[i]
- res.data.splice(i,1)
- }
- }
- if(res.data.length>14){
- $scope.weChatList1=res.data.slice(0,7);
- $scope.weChatList2=res.data.slice(8,15);
- }else{
- $scope.weChatList1=res.data;
- $scope.weChatList2=res.data;
- }
- })
- }
- getWeChatData({})
- // 结束
- // 获取处理地点列表数据
- // 开始
- $scope.placeList=[];
- function getPlaceListData(time){
- api_hkreport.incidentreport(time, 'large_screen_incident_area').then(function(res) {
- console.log(res);
- // res.data=[
- // {"area":"主校区","statusid":4,"priority":"重大"},
- // {"area":"主校区","statusid":4,"priority":"普通"},
- // {"area":"主校区","statusid":4,"priority":"普通"},
- // {"area":"同济校区","statusid":4,"priority":"重大"},
- // {"area":"同济校区","statusid":4,"priority":"普通"},
- // ]
- $scope.placeList=res.data;
- var shijian_index=0;
- $(".map_list_body_poi:eq(0)").scrollTop(0);
- $scope.tongjixiaoquSum=0;
- $scope.tongjixiaoqu_zhongdaSum=0;
- $scope.tongjixiaoqu_gaoSum=0;
- $scope.tongjixiaoqu_jiaogaoSum=0;
- $scope.tongjixiaoqu_putongSum=0;
- $scope.zhuxiaoquSum=0;
- $scope.zhuxiaoqu_zhongdaSum=0;
- $scope.zhuxiaoqu_gaoSum=0;
- $scope.zhuxiaoqu_jiaogaoSum=0;
- $scope.zhuxiaoqu_putongSum=0;
- $scope.dongxiaoquSum=0;
- $scope.dongxiaoqu_zhongdaSum=0;
- $scope.dongxiaoqu_gaoSum=0;
- $scope.dongxiaoqu_jiaogaoSum=0;
- $scope.dongxiaoqu_putongSum=0;
- $scope.tongjixiaoqu_chuliguo=0;
- $scope.zhuxiaoqu_chuliguo=0;
- $scope.dongxiaoqu_chuliguo=0;
- for(var i=0;i<res.data.length;i++){
- if(res.data[i].area=="主校区"&&res.data[i].statusid==4||res.data[i].statusid==2){
- $scope.zhuxiaoquSum++
- if(res.data[i].priority=="重大"){
- $scope.zhuxiaoqu_zhongdaSum++
- }else if(res.data[i].priority=="高"){
- $scope.zhuxiaoqu_gaoSum++
- }else if(res.data[i].priority=="较高"){
- $scope.zhuxiaoqu_jiaogaoSum++
- }else{
- $scope.zhuxiaoqu_putongSum++
- }
- }else if(res.data[i].area=="同济校区"&&res.data[i].statusid==4||res.data[i].statusid==2){
- $scope.tongjixiaoquSum++
- if(res.data[i].priority=="重大"){
- $scope.tongjixiaoqu_zhongdaSum++
- }else if(res.data[i].priority=="高"){
- $scope.tongjixiaoqu_gaoSum++
- }else if(res.data[i].priority=="较高"){
- $scope.tongjixiaoqu_jiaogaoSum++
- }else{
- $scope.tongjixiaoqu_putongSum++
- }
- }else if(res.data[i].area=="东校区"&&res.data[i].statusid==4||res.data[i].statusid==2){
- $scope.dongxiaoquSum++
- if(res.data[i].priority=="重大"){
- $scope.dongxiaoqu_zhongdaSum++
- }else if(res.data[i].priority=="高"){
- $scope.dongxiaoqu_gaoSum++
- }else if(res.data[i].priority=="较高"){
- $scope.dongxiaoqu_jiaogaoSum++
- }else{
- $scope.dongxiaoqu_putongSum++
- }
- }
- }
- for(var i=0;i<res.data.length;i++){
- if(res.data[i].statusid!=4&&res.data[i].statusid!=2){
- if(res.data[i].area=="主校区"){
- $scope.zhuxiaoqu_chuliguo++;
- $scope.zhuxiaoquSum++;
- $scope.zhuxiaoqu_zhongdaSum++
- }else if(res.data[i].area=="同济校区"){
- $scope.tongjixiaoqu_chuliguo++;
- $scope.tongjixiaoquSum++;
- $scope.tongjixiaoqu_zhongdaSum++
- }else if(res.data[i].area=="东校区"){
- $scope.dongxiaoqu_chuliguo++;
- $scope.dongxiaoquSum++;
- $scope.dongxiaoqu_zhongdaSum++
- }
- }
- }
- // console.log("zhongda " + $scope.zhuxiaoqu_zhongdaSum + "; putong" + $scope.zhuxiaoquSum);
- if(res.data.length>5){
- $scope.listTimerFn=function(){
- $scope.listTimer=$interval(function timer(){
- $(".map_list_body_poi:eq(0)").scrollTop(shijian_index);
- if(shijian_index-2>$(".map_list_body_poi:eq(0)").scrollTop()){
- $interval.cancel($scope.listTimer);
- $timeout(function(){
- $scope.listTimerFn();
- $(".map_list_body_poi:eq(0)").scrollTop(0);
- shijian_index=0;
- },5000)
- };
- shijian_index++;
- },240)
- }
- $scope.listTimerFn()
- }
- })
- }
- getPlaceListData({
- "start":moment(new Date().getTime()).format("YYYY-MM-DD")+" 00:00:00",
- // "start":"2019-04-18 00:00:00",
- "end":moment(new Date().getTime()).format("YYYY-MM-DD")+" 23:59:59"
- // "start":"2019-04-17 23:59:59",
- })
- // 结束
- // 事件工单列表状态颜色
- $scope.statusColor=function(res){
- if(res=="接单"){
- return "jiedai"
- }else if(res=="事件处理"){
- return "chulizhong"
- }else if(res=="事件关闭"){
- return "guanbi"
- }else{
- return "qita"
- }
- }
- // 事件工单处理实时情况状态转换
- $scope.incident_status=function(res){
- if(res=="事件处理"){
- return "处理中"
- }else if(res=="事件关闭"){
- return "已办结"
- }else{
- return res
- }
- }
- // 列表前点颜色
- $scope.liebiao_zhuangtai=function(status,priority){
- if(status==4||status==2){
- if(priority=="重大"){
- return "zhongda"
- }else{
- return ""
- }
- }else{
- return "chuliguo"
- }
- }
- // 定时刷新
- function getDataInter(time){
- $interval(function(){
- $interval.cancel($scope.listTimer);
- getIncidentHandleData({});
- getWeChatData({});
- getPlaceListData({
- "start":moment(new Date().getTime()).format("YYYY-MM-DD")+" 00:00:00",
- "end":moment(new Date().getTime()).format("YYYY-MM-DD")+" 23:59:59"
- })
- getIncident_allData({});
- getIncident_responseData({})
- },time)
- }
- getDataInter(300000)
- // getDataInter(5000)
- }]);
|