123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301 |
- /**
- * 作者:王成
- * 创建日期:2021年12月10日
- * 操作系统:MAC
- * 描述:考核排名页面独有脚本
- */
- /**
- * 公共变量
- */
- var countPieData = []; //统计饼图数据
- /* 获取屏幕的尺寸 */
- var pageSize = getPageSize();
- /**
- * 同步统计饼图数据
- * @param {string} domId 显示统计饼图的domId
- * @param {function} callback 完成回调
- */
- function asyncCountData(domId, callback) {
- /**
- * 创建案件动态
- */
- sendAjax({
- type: 'post',
- waitMessage: '正在同步案件统计数据...',
- url: 'appQueryXzqCaseCount',
- data: {
- userId: joinUser.userID,
- type: 'all',
- },
- success: function(resData) {
- countPieData = [];
- for (var i = 0; i < resData.length; i++) {
- countPieData.push({
- value: resData[i].case_all,
- name: resData[i].xzqName,
- });
- }
- showCountPie(domId, countPieData);
- if (callback != undefined) callback();
- },
- error: function(err) {
- muiAlertError(err);
- }
- })
- }
- /**
- * 显示统计的饼图
- */
- function showCountPie(domId, jsonData) {
- var pieRadiusWidth = '65%';
- if (pageSize.width <= PageSize.smartSize) {
- pieRadiusWidth = '35%';
- }
- var pie = new CrCharts({
- domId: domId,
- });
- pie.createPie({
- data: jsonData,
- isAria: false,
- lineColor: 'rgb(133, 215, 253)',
- labelColor: 'rgb(255,255,255)',
- perLabelColor: 'rgb(129,181,218)',
- radius: [10, pieRadiusWidth],
- }, '案件统计');
- }
- /* 趋势统计数据 */
- var countTrendData = [];
- /**
- * 同步趋势变化统计数据
- * @param {select} trendType 趋势数据统计周期 day/week/month/year/all
- */
- function asyncCountTrend(trendType) {
- /**
- * 创建案件动态
- */
- sendAjax({
- type: 'post',
- waitMessage: '正在同步趋势变化数据...',
- url: 'appQueryXzqCaseCountByPeriod',
- data: {
- userId: joinUser.userID,
- type: trendType,
- },
- success: function(resData) {
- countTrendData = [];
- var trendData = resData[0].trends;
- var countData = resData[0].counts;
- /* 展示案件实时信息 */
- $("#divCaseSubmit").html(trendData[0].currentvalue + '件');
- $("#divCaseAssign").html(trendData[3].currentvalue + '件');
- $("#divCaseCheck").html(trendData[1].currentvalue + '件');
- $("#divCaseVerify").html(trendData[4].currentvalue + '件');
- $("#divCaseWaitCheck").html(trendData[2].currentvalue + '件');
- /* 赋值案件信息 */
- for (var i = 0; i < 3; i++) {
- countTrendData.push({
- title: trendData[i].key,
- value: trendData[i].percentage,
- trend: trendData[i].trend,
- });
- }
- /* 展示变化趋势 */
- showCountTrend(countTrendData, trendType);
- /* 展示统计柱状图 */
- showCountTrendBar(countData);
- },
- error: function(err) {
- muiAlertError(err);
- }
- })
- }
- /**
- * @param {array[json]} options 配置项
- * title{string}:标题
- * value{string}:百分比值
- * trend{'down'/'up'}:上升或下降 上升可不设置
- * @param {string} trendType 类型
- */
- function showCountTrend(options, trendType) {
- var cntTrendHtml = "";
- if (trendType === 'day') {
- cntTrendHtml = "<div class='cr-cnt-echarts-left-label'>日度环比</div>";
- } else if (trendType === 'week') {
- cntTrendHtml = "<div class='cr-cnt-echarts-left-label'>周度环比</div>";
- } else if (trendType === 'month') {
- cntTrendHtml = "<div class='cr-cnt-echarts-left-label'>月度环比</div>";
- } else if (trendType === 'year') {
- cntTrendHtml = "<div class='cr-cnt-echarts-left-label'>年度环比</div>";
- } else {
- cntTrendHtml = "<div class='cr-cnt-echarts-left-label'>环比</div>";
- }
- for (var i = 0; i < options.length; i++) {
- var item = options[i];
- cntTrendHtml += "<div class='cr-cnt-echarts-left-panel'>";
- cntTrendHtml += "<div class='cr-cnt-echarts-left-panel-child-left'>";
- cntTrendHtml += "<span class='cr-cnt-echarts-left-title'>" + item.title + "</span>";
- if (item.trend == undefined || item.trend == 'up') {
- cntTrendHtml += "<span class='cr-cnt-echarts-left-value'>" + item.value + "</span>";
- } else {
- cntTrendHtml += "<span class='cr-cnt-echarts-left-value cr-cnt-echarts-left-value-down'>" + item.value +
- "</span>";
- }
- cntTrendHtml += "</div>";
- cntTrendHtml += "<div class='cr-cnt-echarts-left-panel-child-right'>";
- if (item.trend == undefined || item.trend == 'up') {
- cntTrendHtml += "<span class='cr-cnt-echarts-left-ico app-icon app-icon-arrow-up'></span>";
- } else {
- cntTrendHtml +=
- "<span class='cr-cnt-echarts-left-ico cr-cnt-echarts-left-ico-down app-icon app-icon-arrow-down'></span>";
- }
- cntTrendHtml += "</div>";
- cntTrendHtml += "</div>";
- }
- $('#divCountTrend').html(cntTrendHtml);
- }
- /* 底部统计柱状图控件 */
- var objBarCaseCount = undefined;
- /**
- * 显示案件柱状图
- * @param {json} jsonData 配置数据
- */
- function showCountTrendBar(jsonData) {
- /* 获取页面大小 */
- var pageSize = getPageSize();
- var dataZoomX = undefined;
- if (pageSize.width <= PageSize.smartSize) dataZoomX = true;
- var labels = [];
- var datas = [{
- name: '已派发',
- data: [],
- color: 'rgb(38,31,135)',
- }, {
- name: '处理中',
- data: [],
- color: 'rgb(241,25,39)',
- }, {
- name: '复飞中',
- data: [],
- color: 'rgb(247,184,31)',
- }, {
- name: '审核中',
- data: [],
- color: 'rgb(155,78,206)',
- }, {
- name: '已结案',
- data: [],
- color: 'rgb(30,125,22)',
- }];
- /* 循环数据和标签 */
- for (var i = 0; i < jsonData.length; i++) {
- var item = jsonData[i];
- var caseAll = getEChartsValue(item.case_all);
- if (caseAll >= 1) {
- labels.push(item.xzqName);
- var assign = getEChartsValue(parseFloat(item.case_all) - parseFloat(item.wait_assign));
- var waitCheck = getEChartsValue(item.wait_check);
- var waitFlight = getEChartsValue(item.wait_flight);
- var waitVerify = getEChartsValue(item.wait_verify);
- var close = getEChartsValue(item.case_close);
- datas[0].data.push(assign);
- datas[1].data.push(waitCheck);
- datas[2].data.push(waitFlight);
- datas[3].data.push(waitVerify);
- datas[4].data.push(close);
- }
- }
- /* 再循环数据 */
- /* 添加社区占地规划驾驶舱 */
- var bbsData = {
- title: '案件统计',
- labels: labels,
- datas: datas,
- xrotate: 45,
- gridBottom: 80,
- dataZoomX: dataZoomX,
- }
- if (objBarCaseCount != null && objBarCaseCount != "" && objBarCaseCount != undefined) objBarCaseCount.dispose();
- objBarCaseCount = new CrCharts({
- domId: 'divCountTrendBar',
- labelColor: 'rgb(255,255,255)',
- legendTextColor: 'rgb(255,255,255)',
- xAxisLineColor: 'rgba(255,255,255,1.0)',
- yAxisLineColor: 'rgb(133, 215, 253)',
- splitLineColor: 'rgba(255,255,255,0.3)',
- xAxisLabel: {
- color: "rgba(255,255,255,1.0)",
- fontSize: 12,
- fontFamily: 'TTTGB-Medium',
- interval: 0,
- },
- yAxisLabel: {
- color: "rgb(133, 215, 253)",
- fontSize: 12,
- fontFamily: 'TTTGB-Medium',
- interval: 0,
- },
- });
- objBarCaseCount.createVerticalBar(bbsData, 60, false, ['件', '件', '件', '件', '件']);
- }
- /**
- * 点击事件
- */
- /**
- * 案件趋势统计点击事件
- * @param {Object} obj 点击对象 此处为按钮
- * @param {string} trendType 趋势数据统计周期 day/week/month/year/all
- */
- function Click_Event_Case_Count(obj, trendType) {
- $('.mui-btn').removeClass('cr-active');
- $(obj).addClass('cr-active');
- asyncCountTrend(trendType);
- }
- /**
- * 镇街排名点击事件
- */
- function EventClick_zjpm() {
- createAndOpenPage({
- htmlPath: 'page-khpm-zjxq.html',
- autoback: true,
- title: '镇街排名(按执法率)'
- });
- }
- /**
- * 村庄排名点击事件
- */
- function EventClick_czpm() {
- createAndOpenPage({
- htmlPath: 'page-khpm-czxq.html',
- autoback: true,
- title: '村庄排名(按执法率)'
- });
- }
- /**
- * 面积排名点击事件
- */
- function EventClick_area() {
- createAndOpenPage({
- htmlPath: 'page-khpm-area.html',
- autoback: true,
- title: '镇街排名(按面积)'
- });
- }
|