(function() { let community = document.getElementById("community"); community.innerHTML = vc.getCurrentCommunity().name; /********************************今日巡检 start****************************************** */ function _loadAssetInspection() { let param = { params: { communityId: vc.getCurrentCommunity().communityId } } vc.http.apiGet( '/bigScreen/getAssetInspection', param, function(json, res) { //vm.menus = vm.refreshMenuActive(JSON.parse(json),0); let _json = JSON.parse(json); if (_json.code == 0) { let _data = _json.data; initInspeciton(_data); return; } }, function(errInfo, error) { console.log('请求失败处理'); vc.toast(errInfo); }); } function initInspeciton(_dataArr) { let _todayInpection = document.getElementById("todayInpection"); let _li = ""; for (let _inIndex = 0; _inIndex < _dataArr.length; _inIndex++) { _li += "
  • " + (_inIndex + 1) + ".0、" + _dataArr[_inIndex].msg + "

  • "; if (_inIndex >= 9) { break; } } _todayInpection.innerHTML = _li; } _loadAssetInspection(); /********************************今日巡检 end****************************************** */ /********************************小区资产 start****************************************** */ /** * 查询 资产信息 */ function _loadAssets() { let param = { params: { communityId: vc.getCurrentCommunity().communityId } } vc.http.apiGet( '/bigScreen/getAssets', param, function(json, res) { //vm.menus = vm.refreshMenuActive(JSON.parse(json),0); let _json = JSON.parse(json); if (_json.code == 0) { let _data = _json.data; document.getElementById("floorCount").innerHTML = _data.floorCount; document.getElementById("roomCount").innerHTML = _data.roomCount; document.getElementById("parkingSpaceCount").innerHTML = _data.parkingSpaceCount; document.getElementById("machineCount").innerHTML = _data.machineCount; return; } }, function(errInfo, error) { console.log('请求失败处理'); vc.toast(errInfo); }); } _loadAssets(); /********************************小区资产 end****************************************** */ /********************************开门次数 start****************************************** */ function _initOpenDoorChart(_data) { var dom = document.getElementById("box3_right"); var myChart = echarts.init(dom); let _createTime = []; let _openDoorCount = []; _data.forEach(item => { _createTime.push(item.cTime); _openDoorCount.push(item.count); }); var app = {}; option = null; option = { backgroundColor: 'rgba(1,202,217,.2)', tooltip: { trigger: 'axis', axisPointer: { type: 'cross', label: { backgroundColor: '#6a7985' } } }, legend: { textStyle: { //图例文字的样式 color: 'rgba(255,255,255,.7)', fontSize: 12 }, data: ['门禁开门次数'] }, toolbox: { feature: { saveAsImage: {} } }, grid: { left: '3%', right: '4%', bottom: '3%', containLabel: true }, textStyle: { //图例文字的样式 color: '#fff', fontSize: 12 }, xAxis: [{ type: 'category', boundaryGap: false, data: _createTime, axisLine: { lineStyle: { color: 'rgba(255,255,255,.2)' } }, splitLine: { lineStyle: { color: 'rgba(255,255,255,.1)' } }, axisLabel: { color: "rgba(255,255,255,.7)" } }], yAxis: [{ type: 'value', axisLine: { lineStyle: { color: 'rgba(255,255,255,.3)' } }, splitLine: { lineStyle: { color: 'rgba(255,255,255,.01)' } }, axisLabel: { formatter: '{value} ml' } }], series: [{ name: '门禁开门次数', type: 'line', stack: '总量', areaStyle: {}, data: _openDoorCount }] }; if (option && typeof option === "object") { myChart.setOption(option, true); } } function _getAssetOpenDoor() { let param = { params: { communityId: vc.getCurrentCommunity().communityId } } vc.http.apiGet( '/bigScreen/getAssetOpenDoor', param, function(json, res) { //vm.menus = vm.refreshMenuActive(JSON.parse(json),0); let _json = JSON.parse(json); if (_json.code == 0) { let _data = _json.data; _data = _data.reverse(); _initOpenDoorChart(_data); return; } }, function(errInfo, error) { console.log('请求失败处理'); vc.toast(errInfo); }); } _getAssetOpenDoor(); /********************************开门次数 end****************************************** */ /********************************房屋分析 start*************************************** */ function _loadAssetRoom() { let param = { params: { communityId: vc.getCurrentCommunity().communityId } } vc.http.apiGet( '/bigScreen/getAssetsRoom', param, function(json, res) { //vm.menus = vm.refreshMenuActive(JSON.parse(json),0); let _json = JSON.parse(json); if (_json.code == 0) { let _data = _json.data; initChart(_data.freeRoomCount, _data.sellRoomCount); return; } }, function(errInfo, error) { console.log('请求失败处理'); vc.toast(errInfo); }); } function initChart(_freeRoomCount, _sellRoomCount) { var dom = document.getElementById("box1"); var myChart = echarts.init(dom); var app = {}; option = null; var labelRight = { normal: { position: 'right' } }; option = { color: ['#76c4bf', '#e5ffc7'], backgroundColor: 'rgba(1,202,217,.2)', series: [{ name: '', type: 'pie', radius: '55%', center: ['50%', '50%'], data: [ { value: _sellRoomCount, name: '已售' }, { value: _freeRoomCount, name: '空闲' } ], emphasis: { itemStyle: { shadowBlur: 10, shadowOffsetX: 0, shadowColor: 'rgba(0, 0, 0, 0.5)' } }, itemStyle: { normal: { label: { show: true, formatter: '{b} : {c} ' }, labelLine: { show: true } } } }] }; if (option && typeof option === "object") { myChart.setOption(option, true); } } _loadAssetRoom(); /********************************房屋分析 end*************************************** */ /********************************报修分析 start*************************************** */ function _loadAssetsRepair() { let param = { params: { communityId: vc.getCurrentCommunity().communityId } } vc.http.apiGet( '/bigScreen/getAssetsRepair', param, function(json, res) { //vm.menus = vm.refreshMenuActive(JSON.parse(json),0); let _json = JSON.parse(json); if (_json.code == 0) { let _data = _json.data; initRepair(_data.unDealCount, _data.dealingCount, _data.dealedCount); return; } }, function(errInfo, error) { console.log('请求失败处理'); vc.toast(errInfo); }); } function initRepair(unDealCount, dealingCount, dealedCount) { var dom = document.getElementById("box2"); var myChart = echarts.init(dom); var app = {}; option = null; var xAxisData = []; var emphasisStyle = { itemStyle: { barBorderWidth: 1, shadowBlur: 10, shadowOffsetX: 0, shadowOffsetY: 0, shadowColor: 'rgba(0,0,0,0.5)' } }; option = { color: ['#7de494', '#7fd7b1', '#5578cf'], backgroundColor: 'rgba(1,202,217,.2)', tooltip: { trigger: 'item', formatter: '{a}
    {b}: {c} ({d}%)' }, legend: { orient: 'vertical', left: 10, data: ['待处理', '处理中', '已处理'], textStyle: { color: '#fff' } }, series: [{ name: '访问来源', type: 'pie', radius: ['50%', '70%'], avoidLabelOverlap: false, label: { show: true, position: 'top', }, emphasis: { label: { show: true, fontSize: '15', fontWeight: 'bold' } }, labelLine: { show: false }, data: [ { value: unDealCount, name: '待处理', color: '#FFF' }, { value: dealingCount, name: '处理中' }, { value: dealedCount, name: '已处理' } ], itemStyle: { normal: { label: { show: true, formatter: '{b} : {c} ', }, labelLine: { show: true } } } }] }; if (option && typeof option === "object") { myChart.setOption(option, true); } } _loadAssetsRepair(); /********************************报修分析 end*************************************** */ /********************************费用分析 start*************************************** */ function _queryIndexContextData() { var param = { params: { communityId: vc.getCurrentCommunity().communityId } } //发送get请求 vc.http.apiGet('/reportFeeMonthStatistics/queryReportProficient', param, function(json, res) { var indexData = JSON.parse(json); let _receivableInformation = indexData.receivableInformation; let _receivableAmount = _receivableInformation.receivableAmount; let _remindInfomation = indexData.remindInfomation; let _data = [ { value: _remindInfomation.deadlineFeeCount, name: '费用到期提醒' }, { value: _remindInfomation.prePaymentCount, name: '费用提醒' } ]; let _dom = document.getElementById('shopCount'); _initCharts2(_dom, '费用提醒', _data); _dom = document.getElementById('ownerCount'); _data = [ { value: _receivableInformation.oweAmount, name: '欠费金额' }, { value: _receivableInformation.receivedAmount, name: '已收金额' } ]; _initCharts2(_dom, '应收总额', _data); let _floorReceivableInformations = indexData.floorReceivableInformations; _dom = document.getElementById('foorFeeAnsicis'); _data = []; _floorReceivableInformations.forEach(item => { _data.push({ value: item.receivableAmount, name: item.name }) }); _initCharts2(_dom, '楼栋费用占比', _data); _data = []; let _feeConfigReceivableInformations = indexData.feeConfigReceivableInformations; _feeConfigReceivableInformations.forEach(item => { _data.push({ value: item.receivableAmount, name: item.feeName }) }); _dom = document.getElementById('feeAnsicis'); _initCharts2(_dom, '分项费用占比', _data); }, function(errInfo, error) { console.log('请求失败处理'); } ); } function _initCharts2(dom, _title, _data) { let myChart = echarts.init(dom); let option = null; option = { textStyle: { //图例文字的样式 fontSize: 12, }, tooltip: { trigger: 'item', formatter: '{a}
    {b} : {c} ({d}%)' }, color: ['#7de494', '#5578cf'], backgroundColor: 'rgba(1,202,217,.2)', series: [{ name: _title, type: 'pie', radius: '55%', center: ['50%', '50%'], data: _data, emphasis: { itemStyle: { shadowBlur: 10, shadowOffsetX: 0, shadowColor: 'rgba(0, 0, 0, 0.5)' } }, label: { normal: { show: true }, formatter: function(params) { if (params.value > 10) { return params.value; } else { return ' '; } }, } }] }; if (option && typeof option === "object") { myChart.setOption(option, true); } } _queryIndexContextData() /*********************************************************缴费分析开始 ************************/ function _loadAssetFee() { let param = { params: { communityId: vc.getCurrentCommunity().communityId } } vc.http.apiGet( '/reportFeeMonthStatistics/queryOwePaymentCount', param, function(json, res) { //vm.menus = vm.refreshMenuActive(JSON.parse(json),0); let _json = JSON.parse(json); if (_json.code == 0) { let _data = _json.data; initFeeChart(_data); return; } }, function(errInfo, error) { console.log('请求失败处理'); vc.toast(errInfo); }); } function renderBrushed(params) { var brushed = []; var brushComponent = params.batch[0]; for (var sIdx = 0; sIdx < brushComponent.selected.length; sIdx++) { var rawIndices = brushComponent.selected[sIdx].dataIndex; brushed.push('[Series ' + sIdx + '] ' + rawIndices.join(', ')); } myChart.setOption({ title: { backgroundColor: '#333', text: 'SELECTED DATA INDICES: \n' + brushed.join('\n'), bottom: 0, right: 0, width: 100, textStyle: { fontSize: 12, color: '#fff' } } }); } function initFeeChart(_data) { let dom = document.getElementById("box4"); let myChart = echarts.init(dom); let option = null; let xAxisData = []; let data1 = []; let data2 = []; _data.forEach(item => { xAxisData.push(item.feeName); data1.push(item.normalCount); data2.push(item.objCount); }); option = { color: ['#7de494', '#5578cf'], backgroundColor: 'rgba(1,202,217,.2)', textStyle: { //图例文字的样式 color: '#fff', fontSize: 12 }, tooltip: { trigger: 'axis', axisPointer: { type: 'shadow' } }, legend: { data: ['已缴费', '未缴费'], textStyle: { color: '#fff' } }, toolbox: { show: true, orient: 'vertical', left: 'right', top: 'center', feature: { mark: { show: true }, dataView: { show: true, readOnly: false }, magicType: { show: true, type: ['line', 'bar', 'stack', 'tiled'] }, restore: { show: true }, saveAsImage: { show: true } } }, xAxis: [{ type: 'category', axisTick: { show: false }, data: xAxisData }], yAxis: [{ type: 'value' }], series: [{ name: '已缴费', type: 'bar', barGap: 0, emphasis: { focus: 'series' }, data: data1 }, { name: '未缴费', type: 'bar', emphasis: { focus: 'series' }, data: data2 } ] }; myChart.on('brushSelected', renderBrushed); if (option && typeof option === "object") { myChart.setOption(option, true); } } _loadAssetFee(); /******************************************************************** */ })()