/**
* 作者:王成
* 创建日期: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 = "
日度环比
";
} else if (trendType === 'week') {
cntTrendHtml = "周度环比
";
} else if (trendType === 'month') {
cntTrendHtml = "月度环比
";
} else if (trendType === 'year') {
cntTrendHtml = "年度环比
";
} else {
cntTrendHtml = "环比
";
}
for (var i = 0; i < options.length; i++) {
var item = options[i];
cntTrendHtml += "";
cntTrendHtml += "
";
cntTrendHtml += "" + item.title + "";
if (item.trend == undefined || item.trend == 'up') {
cntTrendHtml += "" + item.value + "";
} else {
cntTrendHtml += "" + item.value +
"";
}
cntTrendHtml += "
";
cntTrendHtml += "
";
if (item.trend == undefined || item.trend == 'up') {
cntTrendHtml += "";
} else {
cntTrendHtml +=
"";
}
cntTrendHtml += "
";
cntTrendHtml += "
";
}
$('#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: '镇街排名(按面积)'
});
}