|
/**
* Created by TT on 2017/9/22.
*/
;
spa_define(function () {
return $.use(["spa", "code", "form", "util", "dict"], function (spa, code, form, util, dict) {
return {
main: function () {
var root = spa.findInMain(".sys_article_viewcount");
var qf = form.build(root.find(".queryForm"));
var cr = code.parseCode(root.find(".dt-tpl"));
var queryBtn = root.find(".queryForm .opt-query");
var tableData = {data: []},
allData = [],
$data = {tn: "article"};
var now = new Date(),
nbt = new Date();
nbt.setDate(now.getDate() - 7);
var et1 = now.format("yyyyMMdd"),
bt1 = nbt.format("yyyyMMdd");
qf.val({bt: bt1, et: et1});
$data.bt = bt1;
$data.et = et1;
var caption = function (dicts, code) {
var items = dict.get(dicts);
var cp = dict.getCap(items, code.toString());
if (cp) {
return cp;
} else {
return "不可翻译的";
}
// return dict.get(dicts)[code].caption;
},
showDay = function (day) {
if (day) {
return day.substring(0, 4) + "年" + day.substring(4, 6) + "月" + day.substring(6, 8) + "日";
} else return "";
},
loadContent = function () {
root.find(".hand-id").each(function () {
var $e = $(this);
var articleId = $e.attr("articleId");
if (articleId) {
util.get("../ajax/article/base", {id: articleId}, function (data) {
if (data) {
$e.parent().find(".articleTitle .name").text(data.articleTitle).attr('shareId',data.shareId).attr('createTime',data.createTime);
$e.parent().find(".professorName .author").text(data.professorName || data.organizationName).attr('ownerId',data.ownerId).attr('articleType',data.articleType);
$e.parent().find(".subject").text(data.subject);
$e.parent().find(".colNum").text(caption("banner", data.colNum));
$e.parent().find(".publishTime").text(showDay(data.publishTime));
$e.parent().find(".sortNum").text(data.sortNum);
$e.parent().find(".pageViews").text(data.pageViews);
$e.parent().find(".articleAgree").text(data.articleAgree);
}
}, {});
// // $e.removeClass("hand-id");
}
});
},
loadLw = function () {
root.find(".hand-id").each(function () {
var $e = $(this);
var articleId = $e.attr("articleId");
if (articleId) {
util.get("/ajax/content/lwCount", {articleId: articleId}, function (data) {
$e.parent().find(".lw").text(data);
}, {});
}
});
},
loadCol=function () {
root.find(".hand-id").each(function () {
var $e = $(this);
var articleId = $e.attr("articleId");
if (articleId) {
util.get("/ajax/content/countProfessor", {id: articleId,type:3}, function (data) {
$e.parent().find(".collection").text(data);
}, {});
}
});
},
load = function () {
// console.log($data);
$.ajax({
type: "GET",
url: "http://www.ekexiu.com:8082/log/jsonp/qs",
data: $data,
dataType: "jsonp",
success: function (data) {
// console.log(data);
allData = data.data || [];
// allData = [{
// id: "8F08D2EB366140BC85A6A4CE344A15A4"
// }, {
// id: "8DE678A43FFB4097B3E0DFF9C48CC737"
// }];
tableData.data = allData;
cr.val(tableData.data);
loadContent();
loadLw();
loadCol();
}
});
},
query = function () {
// if (qf.val().bt || qf.val().et) {
$data.bt = qf.val().bt;
$data.et = qf.val().et;
// }else {
// $data.bt = "";
// $data.et = "";
// }
load();
};
queryBtn.on("click", query);
load();
root.find(".dt-tpl").on("click", "th.opt-check>i.icon-st-check", function () {
var $this = $(this);
$this.toggleClass("checked");
if ($this.hasClass("checked")) {
root.find(".dt-tpl td.opt-check>i.icon-st-check").addClass("checked");
} else {
root.find(".dt-tpl td.opt-check>i.icon-st-check").removeClass("checked");
}
});
root.find(".dt-tpl").on("click", "td.opt-check>i.icon-st-check", function () {
var $this = $(this);
$this.toggleClass("checked");
});
root.find(".opt-total").on("click", function () {
spa.showModal("sys_article_total");
});
root.on("click",".icon-line-chart",function () {
var $this = $(this);
var articleId = $this.parent().attr("articleId");
spa.showModal("sys_article_count",{
id:articleId,
hand:function () {
pdg.reload();
}
})
});
root.on("click",".articleTitle a.name",function () {
var articleId = $(this).attr("articleId");
var time = $(this).attr("createTime").substring(0,8);
var shareId = $(this).attr("shareId");
// window.open('http://www.ekexiu.com/articalShow.html?articleId=' + articleId);
window.open('http://www.ekexiu.com/shtml/a/'+time+'/' + shareId+'.html');
});
root.on("click",".professorName a.author",function () {
var ownerId = $(this).attr("ownerId");
var articleType = $(this).attr("articleType");
if(articleType == 1) {
window.open('http://www.ekexiu.com/userInforShow.html?professorId='+ownerId);
}else if(articleType == 2){
window.open('http://www.ekexiu.com/cmpInforShow.html?orgId='+ownerId);
}
})
var myChart = echarts.init(document.getElementById('total'));
var dayList = function () {
var dayList = [];
var now = new Date();
var day1 = new Date();
day1.setMonth(now.getMonth() - 1);
day1.setDate(1);
var day2 = new Date();
day2.setDate(day2.getDate());
// var s1 = day1.format("yyyy-MM-dd");
// var s2 = day2.format("yyyy-MM-dd");
// console.log(s1, s2);
var days = (day2 - day1) / (24 * 60 * 60 * 1000);
dayList[0] = {time: day1.format("yyyy-MM-dd")};
for (var i = 1; i < days + 1; i++) {
day1.setDate(day1.getDate() + 1);
dayList[i] = {time: day1.format("yyyy-MM-dd")};
}
return dayList;
};
var loadChart = function () {
$.ajax({
type: "GET",
url: "/ajax/operation/statist/total",
success: function (data) {
allData = dayList();
allData.forEach(function (day) {
var time = (JSON.stringify(day.time)).replace(/\-|^\"|\"$/g, "");
day.pc = 0;
day.app = 0;
day.h5 = 0;
day.wx = 0;
data.data.forEach(function (log) {
if (time == log.day) {
if (log.source == 1) {
day.pc = log.pv;
}
if (log.source == 2) {
day.app = log.pv;
}
if (log.source == 3) {
day.h5 = log.pv;
}
if (log.source == 4) {
day.wx = log.pv;
}
}
day.num = day.pc + day.app + day.wx + day.h5;
})
});
// var colors = ['#003366', "#660099", '#c23531', "#c23531"];
var option = {
// color: colors,
title: {
text: '文章总浏览量',
subtext: '分渠道'
},
tooltip: {
trigger: 'axis',
// formatter:function (params) {
// // return params[0].name + '<br/>'
// // + params[3].seriesName + ' : ' + (params[2].value + params[1].value + params[0].value)+ '<br/>'
// // + params[2].seriesName + ' : ' + params[2].value + '<br/>'
// // + params[1].seriesName + ' : ' + params[1].value + '<br/>'
// // + params[0].seriesName + ' : ' + params[0].value + '<br/>';
// console.log(params);
// },
"axisPointer": {
"type": "shadow",
textStyle: {
color: "#fff"
}
}
},
legend: {
// selectedMode:false,
data: ['PC端', '移动端APP', '移动端H5','小程序','合计']
},
xAxis: {
"type": "category",
"axisLine": {
lineStyle: {
color: '#90979c'
}
},
"splitLine": {
"show": false
},
"axisTick": {
"show": false
},
"splitArea": {
"show": false
},
axisLabel: {
showMinLabel:true,
showMaxLabel:true
},
"data": allData.map(function (item) {
return item.time;
})
},
yAxis: {
"type": "value",
"splitLine": {
"show": false
},
"axisLine": {
lineStyle: {
color: '#90979c'
}
},
"axisTick": {
"show": false
},
"axisLabel": {
showMinLabel:true,
showMaxLabel:true
},
"splitArea": {
"show": false
}
},
toolbox: {
show: true,
feature: {
dataZoom: {
yAxisIndex: 'none'
},
dataView: {readOnly: false},
magicType: {type: ['line', 'bar']},
restore: {},
saveAsImage: {}
}
},
dataZoom: [{
startValue: allData[allData.length - 7].time
}, {
type: 'inside'
}],
visualMap: {
top: 10,
right: 10
},
series: [
{
name: '移动端H5',
type: 'bar',
stack: '总量',
"barMaxWidth": 35,
"barGap": "10%",
"itemStyle": {
"normal": {
"color": "#dd4444",
"label": {
"show": false,
"textStyle": {
"color": "#fff"
},
"position": "insideTop",
formatter: function(p) {
return p.value > 0 ? (p.value) : '';
}
}
}
},
data: allData.map(function (item) {
return item.h5;
})
},
{
name: 'PC端',
type: 'bar',
stack: '总量',
"barMaxWidth": 35,
"barGap": "10%",
"itemStyle": {
"normal": {
"color": "#80F1BE",
"label": {
"show": false,
"textStyle": {
"color": "#fff"
},
"position": "insideTop",
formatter: function(p) {
return p.value > 0 ? (p.value) : '';
}
}
}
},
data: allData.map(function (item) {
return item.pc;
})
}, {
name: '移动端APP',
type: 'bar',
stack: '总量',
"barMaxWidth": 35,
"barGap": "10%",
"itemStyle": {
"normal": {
"color": "#fec42c",
"label": {
"show": false,
"textStyle": {
"color": "#fff"
},
"position": "insideTop",
formatter: function(p) {
return p.value > 0 ? (p.value) : '';
}
}
}
},
data: allData.map(function (item) {
return item.app;
})
},{
name: '小程序',
type: 'bar',
stack: '总量',
"barMaxWidth": 35,
"barGap": "10%",
"itemStyle": {
"normal": {
"color": "#660099",
"label": {
"show": false,
"textStyle": {
"color": "#fff"
},
"position": "insideTop",
formatter: function(p) {
return p.value > 0 ? (p.value) : '';
}
}
}
},
data: allData.map(function (item) {
return item.wx;
})
},
{
name: '合计',
type: 'line',
stack: '总量',
symbolSize:7,
symbol:'circle',
// areaStyle: {normal: {}},
// label: {
// normal: {
// show: true,
// position: 'top',
// formatter: function (params) {
// for (var i = 0, l = option.xAxis.data.length; i < l; i++) {
// if (option.xAxis.data[i] == params.name) {
// // option.series[0].data[i];
// var num = option.series[0].data[i]+option.series[1].data[i]+option.series[2].data[i];
// return '合计:' + num;
// }
// }
// }
//
// }
// },
itemStyle:{
normal:{
color:"#dd4444",
barBorderRadius:0,
label:{
show:true,
position:"top",
formatter:function (params) {
return params.val;
}
}
}
},
data: allData.map(function (item) {
return item.num;
})
}
]
};
myChart.setOption(option);
}
});
};
loadChart();
},
mainDestory: function () {
}
};
});
});
|