From f58e0b7cad88bc49935807db3a67403184b77465 Mon Sep 17 00:00:00 2001
From: luosongbai <15272473386@163.com>
Date: Fri, 18 Jun 2021 18:01:31 +0800
Subject: [PATCH] =?UTF-8?q?=E6=BC=8F=E6=96=97=E5=88=86=E6=9E=90?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
web/pages/dashboard.html | 2 +-
web/pages/funnel.html | 241 ++++------
web/pages/funnelanalysis.html | 182 ++++++++
web/src/x.min.js | 657 +++++++++++++++------------
web/srczip/common.js | 4 +-
web/srczip/logic/analysis.js | 154 +++++--
web/srczip/logic/event.js | 2 +-
web/srczip/logic/funnel.js | 696 +----------------------------
web/srczip/logic/funnelanalysis.js | 680 ++++++++++++++++++++++++++++
web/srczip/logic/retained.js | 44 +-
web/static/css/analysis.css | 8 +-
11 files changed, 1446 insertions(+), 1224 deletions(-)
create mode 100644 web/pages/funnelanalysis.html
create mode 100644 web/srczip/logic/funnelanalysis.js
diff --git a/web/pages/dashboard.html b/web/pages/dashboard.html
index 088b07e..dd20482 100644
--- a/web/pages/dashboard.html
+++ b/web/pages/dashboard.html
@@ -26,7 +26,7 @@
+
+
-
-
\ No newline at end of file
diff --git a/web/pages/funnelanalysis.html b/web/pages/funnelanalysis.html
new file mode 100644
index 0000000..fe2584d
--- /dev/null
+++ b/web/pages/funnelanalysis.html
@@ -0,0 +1,182 @@
+
+
+
+
+
+
+
+
+
漏斗分析
+
+
+
+
+
+
+

+
+
+
+
+
+

+
+
+

+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/web/src/x.min.js b/web/src/x.min.js
index bc16ae9..1377ac2 100644
--- a/web/src/x.min.js
+++ b/web/src/x.min.js
@@ -4,6 +4,7 @@ var X = window.X || {
event : new EventEmitter(),
pageLogic : {},
DATA : {
+ 'echartscolor': [ '#3ea7fd', '#cdddfd', '#5ad8a6', '#cdf3e4', '#5d7092', '#ced4de', '#f6bd16','#fcebb9','#e86452','#f8d0cb','#6dc8ec', '#d3eef9', '#9270ca', '#d3c6ea', '#ff9d4d', '#ffd8b8', '#269a99','#aad8d8','#ff99c3','#ffd6e7' ],
'createsidebar':[{ title: '新建看板',id: 0,url:'newkanban'},{title: '新建文件夹',id: 1,url:'newwenjian'},{title: '创建空间',id: 2,url:'kongjianshezhi'}],
'taboperationdata':{
kanban:[
@@ -183,8 +184,7 @@ var X = window.X || {
}
},
error:function(error){
- layer.msg('服务器错误');
- // console.log('服务器错误');
+ layer.msg('服务器错误');
layer.close(index);
}
});
@@ -1504,7 +1504,6 @@ var X = window.X || {
})
// 设置一级事件
-
$(document).off('click','.ant-dropdown-trigger').on('click','.ant-dropdown-trigger',function() {
var obj = $(this);
var offset = obj.offset();
@@ -1605,7 +1604,7 @@ var X = window.X || {
})
// 添加筛选项
- $(document).on('click','.analysis-shaix',function(){
+ $(document).off('click','.analysis-shaix').on('click','.analysis-shaix',function(){
var obj = $(this);
var index = obj.attr("data-index");
addscreen(index);
@@ -2006,7 +2005,7 @@ var X = window.X || {
var querydata;//查询数据
$(document).on('click','.analtsis-chart-switch-box .analtsis-chart-switch',function(){
-
+ console.log(querydata)
if(querydata){
$('.analtsis-chart-switch-box .analtsis-chart-switch').removeClass('select-chart');
$(this).addClass('select-chart');
@@ -2016,7 +2015,7 @@ var X = window.X || {
else if($(this).attr('title') == '分布图'){distributionmap(querydata)}
else if($(this).attr('title') == '饼状分布'){}
}else{
- layer.msg('请先计算数据,在切换图表');
+ // layer.msg('请先计算数据,在切换图表');
}
})
@@ -2026,7 +2025,7 @@ var X = window.X || {
var xAxisData=[];
for(let i in d){
for(let z in d[i]['groups']){
- var pj = d[i]['event_name']+d[i]['groups'][z][0]+d[i]['groups'][z][1];
+ var pj = d[i]['event_name']+d[i]['groups'][z];
xAxisData.push(pj);
}
}
@@ -2051,12 +2050,13 @@ var X = window.X || {
seriesData[i]['name'] = xAxisData[i];
}
}
+
var myChart = echarts.init(document.getElementById('analysis-echarts'));
var option = {
title: {
text: ''
},
- color: [ '#3ea7fd', '#cdddfd', '#5ad8a6', '#cdf3e4', '#5d7092', '#ced4de', '#f6bd16','#fcebb9','#e86452','#f8d0cb','#6dc8ec', '#d3eef9', '#9270ca', '#d3c6ea', '#ff9d4d', '#ffd8b8', '#269a99','#aad8d8','#ff99c3','#ffd6e7' ],
+ color: X.DATA.echartscolor,
tooltip: {
trigger: 'axis',
axisPointer: {
@@ -2104,7 +2104,7 @@ var X = window.X || {
var xAxisData=[];
for(let i in d){
for(let z in d[i]['groups']){
- var pj = d[i]['event_name']+d[i]['groups'][z][0]+d[i]['groups'][z][1];
+ var pj = d[i]['event_name']+d[i]['groups'][z];
xAxisData.push(pj);
}
}
@@ -2124,12 +2124,14 @@ var X = window.X || {
seriesData[i]['name'] = xAxisData[i];
}
}
+ console.log(d);
+ console.log(seriesData);
var myChart = echarts.init(document.getElementById('analysis-echarts'));
var option = {
title: {
text: ''
},
- color: [ '#3ea7fd', '#cdddfd', '#5ad8a6', '#cdf3e4', '#5d7092', '#ced4de', '#f6bd16','#fcebb9','#e86452','#f8d0cb','#6dc8ec', '#d3eef9', '#9270ca', '#d3c6ea', '#ff9d4d', '#ffd8b8', '#269a99','#aad8d8','#ff99c3','#ffd6e7' ],
+ color: X.DATA.echartscolor,
tooltip: {
trigger: 'axis',
axisPointer: {
@@ -2174,29 +2176,90 @@ var X = window.X || {
//分布图
function distributionmap(d){
+ var legendData =[];
var xAxisData=[];
- for(let i in d){
- for(let z in d[i]['groups']){
- var pj = d[i]['event_name']+d[i]['groups'][z][0]+d[i]['groups'][z][1];
- xAxisData.push(pj);
- }
- }
var seriesData=[];
- for(let i in d){
- for(let z in d[i]['values']){
- var arr = {
- name: '',
- type: 'bar',
- data: d[i]['values'][z]
+ if(jQuery.isEmptyObject(d[0]["groups"])){
+ for(let i in d){
+ xAxisData.push(d[i]['event_name']);
+ legendData.push(d[i]['event_name']);
+ var num =0;
+ for(let j in d[i]['values'][i]){
+ num = num + d[i]['values'][i][j]
}
+ var arr = {
+ name: d[i]['event_name'],
+ type: 'bar',
+ barWidth : 30,
+ data: [],
+ }
+ arr['data'].push(num);
seriesData.push(arr);
}
- }
- if(xAxisData.length > 0){
- for(let i in seriesData){
- seriesData[i]['name'] = xAxisData[i];
+
+ }else {
+ for(let i in d){
+ xAxisData.push(d[i]['event_name']);
+ for(let j in d[i]['groups']){
+ var num =0;
+ for(let z in d[i]['values'][j]){
+ num = num + d[i]['values'][j][z]
+ }
+ if(i > 0){
+ for(let q in seriesData){
+ if(d[i]['groups'][j] == seriesData[q]['name']){
+ seriesData[q]['data'].push(num);
+ }else {
+ var arr = {
+ name: d[i]['groups'][j],
+ type: 'bar',
+ barWidth : 30,
+ data: [],
+ }
+ arr['data'].push(num);
+ seriesData.push(arr);
+ }
+ }
+ }else {
+ var arr = {
+ name: d[i]['groups'][j],
+ type: 'bar',
+ barWidth : 30,
+ data: [],
+ }
+ arr['data'].push(num);
+ seriesData.push(arr);
+ }
+
+
+ }
}
+ console.log(seriesData);
+ console.log(xAxisData)
}
+ // for(let i in d){
+ // for(let z in d[i]['groups']){
+ // var pj = d[i]['event_name']+d[i]['groups'][z];
+ // xAxisData.push(pj);
+ // }
+ // }
+ // var seriesData=[];
+ // for(let i in d){
+ // for(let z in d[i]['values']){
+ // var arr = {
+ // name: '',
+ // type: 'bar',
+ // data: d[i]['values'][z]
+ // }
+ // seriesData.push(arr);
+ // }
+ // }
+ // if(xAxisData.length > 0){
+ // for(let i in seriesData){
+ // seriesData[i]['name'] = xAxisData[i];
+ // }
+ // }
+ // return;
var myChart = echarts.init(document.getElementById('analysis-echarts'));
var option = {
tooltip: {
@@ -2205,28 +2268,22 @@ var X = window.X || {
type: 'shadow'
}
},
- color: [ '#3ea7fd', '#cdddfd', '#5ad8a6', '#cdf3e4', '#5d7092', '#ced4de', '#f6bd16','#fcebb9','#e86452','#f8d0cb','#6dc8ec', '#d3eef9', '#9270ca', '#d3c6ea', '#ff9d4d', '#ffd8b8', '#269a99','#aad8d8','#ff99c3','#ffd6e7' ],
+ color: X.DATA.echartscolor,
legend: {
- data: xAxisData
+ data: legendData
},
- 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}
- }
+ grid: {
+ left: '2%',
+ right: '2%',
+ bottom: '2%',
+ top: '10%',
+ containLabel: true
},
xAxis: [
{
type: 'category',
axisTick: {show: false},
- data: d[0]['date_range']
+ data: xAxisData
}
],
yAxis: [
@@ -2242,8 +2299,8 @@ var X = window.X || {
//表格
function tabledata(d){
console.log(d);
- var titledata=d[0]['date_range'];
- titledata.unshift('指标','阶段总和')
+ // var titledata=d[0]['date_range'];
+ // titledata.unshift('指标','阶段总和')
// X.laytpldata("#table-fenxi-th-dot",titledata,".table-fenxi-th");
// X.laytpldata("#table-fenxi-td-dot", ,".table-fenxi-td");
}
@@ -2262,14 +2319,25 @@ var X = window.X || {
X.api("ck/event_model","post",dataArr,function(d){
querydata = d;
if(d[0].values.length > 0 ){
- stackingdiagram(d);
- tabledata(d);
+ updata();
+ // stackingdiagram(d);
+ // tabledata(d);
}else {
$("#analysis-echarts").empty();
layer.msg("无数据");
}
})
}
+
+ function updata(){
+ var tit = $(".select-chart").attr("title");
+ if(tit == '趋势图'){trendchart(querydata)}
+ else if(tit == '堆积图'){stackingdiagram(querydata);}
+ else if(tit == '累计图'){}
+ else if(tit == '分布图'){distributionmap(querydata)}
+ else if(tit == '饼状分布'){}
+ }
+
// 保存报表
$(document).off('click','.analysis-savereport').on('click','.analysis-savereport',function(){
X.parametersopen(data,'savereport','auto')
@@ -2816,8 +2884,8 @@ var X = window.X || {
}else {
var data = []
}
+ console.log(data);
X.laytpldata("#analysis-overall-situation-list-box-dot",data,"#initial-event");
-
}
};
})();
@@ -2969,27 +3037,42 @@ var X = window.X || {
(function(){
X.pageLogic['funnel'] = {
init : function(parms){
-
- // X.gourl("grouped","shushi");
+ var me = this;
+ if(parms){
+ this.parms = parms;
+ var data = parms;
+ }else {
+ var data = []
+ }
+ console.log(data);
+ X.laytpldata("#analysis-con-left-screen-list-dot",data,"#funnel-event");
+
+ }
+ };
+})();
+// srczip/logic/funnelanalysis.js
+(function(){
+ X.pageLogic['funnelanalysis'] = {
+ init : function(parms){
+ // 分组项
X.template("grouped","shushi");
var data ={
"eventView":{
- "cksql":"retention",
- "endTime":"2021-06-07 23:59:59",
+ "cksql":"funnel",
+ "endTime":"",
"filts":[],
"groupBy":[],
"recentDay":"1-30",
"relation":"and",
- "startTime":"2021-05-09 00:00:00",
+ "startTime":"",
"statType":"retention",
"timeParticleSize":"P1D",
- "unitNum":7
+ "windows_gap":7
},
"events":[
],
- "projectId":1
};
// 日期渲染
@@ -3006,15 +3089,10 @@ var X = window.X || {
data['eventView']['startTime'] = timearr[0] + " "+"00:00:00";
data['eventView']['endTime'] = timearr[2]+" "+"23:59:59";
- X.grouped(data['eventView']['groupBy'],"#shushi");
-
- // $(document).off('click','.analysis-calculation').on("click",'.analysis-calculation',function(){
- // console.log(211);
- // })
-
var eventdata;
var filtersymbols = [[],[]];//默认两个事件
var groupitemeventsdata=[[],[]]//分组项里的事件
+ // var screentypearr = [];
X.api("data_auth/my_event","get",{},function(d){
eventdata = d;
@@ -3036,14 +3114,14 @@ var X = window.X || {
]
data['events'] = arr;
X.api("data_auth/load_filter_props","post",{event_name:d[0]['category'][0]['event_name']},function(val){
+
groupitemeventsdata[0] = val;
groupitemeventsdata[1] = val;
})
})
//初始事件
- X.template("event","initial-event",data['events'][0]);
- X.template("returnvisitevent","returnvisit-event",data['events'][1]);
+ X.template("funnel","funnel-event",data['events']);
//开启重命名
$(document).off('click','.analysis-chongmingming-initial-event').on('click','.analysis-chongmingming-initial-event',function(){
$("#analysis-con-left-screen-list-left-zhibiaoname-initial-event").show();
@@ -3051,12 +3129,6 @@ var X = window.X || {
$(".analysis-chongmingming-del-initial-event").show();
})
- $(document).off('click','.analysis-chongmingming-return-event').on('click','.analysis-chongmingming-return-event',function(){
- $("#analysis-con-left-screen-list-left-zhibiaoname-return-event").show();
- $(this).hide();
- $(".analysis-chongmingming-del-return-event").show();
- })
-
//取消重命名
$(document).off('click','.analysis-chongmingming-del-initial-event').on('click','.analysis-chongmingming-del-initial-event',function(){
$("#analysis-con-left-screen-list-left-zhibiaoname-initial-event").hide();
@@ -3065,108 +3137,98 @@ var X = window.X || {
$(".analysis-chongmingming-initial-event").show();
})
- $(document).off('click','.analysis-chongmingming-del-return-event').on('click','.analysis-chongmingming-del-return-event',function(){
- $("#analysis-con-left-screen-list-left-zhibiaoname-return-event").hide();
- $("#analysis-con-left-screen-list-left-zhibiaoname-return-event input").val('');
- $(this).hide();
- $(".analysis-chongmingming-return-event").show();
+ // 添加指标
+ function addindex(){
+ var defaultindicator = {
+ "eventDesc":eventdata[0]['category'][0]['event_desc'],
+ "eventName":eventdata[0]['category'][0]['event_name'],
+ "filts":[],
+ "relation":"and",
+ "relationUser":"and",
+ "renameindicator":""
+ }
+ data['events'].push(defaultindicator);
+ X.template("funnel","funnel-event",data['events'],function(){
+ var drr = [];
+ filtersymbols.push(drr);
+ if(data['events'].length > 2){
+ $(".analysis-del").show();
+ }else {
+ $(".analysis-del").hide();
+ }
+ });
+
+ }
+
+ //添加按钮
+ $(document).off('click','.analysis-jia1').on('click','.analysis-jia1',function(){
+ addindex();
+ })
+ $(document).off('click','.funnel-updataevent').on('click','.funnel-updataevent',function(){
+ addindex();
+ })
+
+ // 添加筛选项
+ $(document).off('click','.analysis-shaix').on('click','.analysis-shaix',function(){
+ var obj = $(this);
+ var index = obj.attr("data-index");
+ addscreen(index);
})
- // 添加初始事件筛选
- // $(document).off('click','.analysis-zhibiao-updata-list-box .analysis-zhibiao-updata-initial-event').on('click','.analysis-zhibiao-updata-list-box .analysis-zhibiao-updata',function(){
- // var arr = {
- // "columnDesc":groupitemeventsdata[0][0]['category'][0]['title'],
- // "columnName":groupitemeventsdata[0][0]['category'][0]['id'],
- // "comparator":"==",
- // "comparatorName":"等于",
- // "ftv":[],
- // "strftv":"",
- // "table_type":groupitemeventsdata[0][0]['category'][0]['data_type'],
- // "timeUnit":""
- // }
- // data['events'][0]['filts'].push(arr);
- // filtersymbols[0].push(groupitemeventsdata[0][0]['category'][0]['category']);
- // X.template("event","initial-event",data['events'][0]);
- // })
+ // 添加筛选项
+ function addscreen(index){
+ console.log(data);
+ X.api('data_auth/load_filter_props',"post",{event_name:data['events'][index]["eventName"]},function(d){
+ console.log(d);
+ var arr = {
+ "columnDesc":groupitemeventsdata[0][0]['category'][0]['title'],
+ "columnName":groupitemeventsdata[0][0]['category'][0]['id'],
+ "comparator":"==",
+ "comparatorName":"等于",
+ "ftv":[],
+ "strftv":"",
+ "table_type":groupitemeventsdata[0][0]['category'][0]['data_type'],
+ "timeUnit":""
+ }
+ data['events'][index]['filts'].push(arr);
+ var drr=[];
+ filtersymbols.push(drr);
+ groupitemeventsdata[index] = d;
+ filtersymbols[index][filtersymbols[index].length ] = d[0]['category'][0]["category"];
- // $(document).off('click','.analysis-zhibiao-updata-list-box .analysis-zhibiao-updata-return-event').on('click','.analysis-zhibiao-updata-list-box .analysis-zhibiao-updata',function(){
- // var arr = {
- // "columnDesc":groupitemeventsdata[1][0]['category'][0]['title'],
- // "columnName":groupitemeventsdata[1][0]['category'][0]['id'],
- // "comparator":"==",
- // "comparatorName":"等于",
- // "ftv":[],
- // "strftv":"",
- // "table_type":groupitemeventsdata[1][0]['category'][0]['data_type'],
- // "timeUnit":""
- // }
- // data['events'][1]['filts'].push(arr);
- // filtersymbols[1].push(groupitemeventsdata[1][0]['category'][0]['category']);
- // X.template("returnvisitevent","returnvisit-event",data['events'][1]);
- // })
+ X.template("funnel","funnel-event",data['events']);
+ })
+ }
- // 添加初始事件筛选
- var initialevent = []
- $(document).off('click','.analysis-shaix-initial-event').on('click','.analysis-shaix-initial-event',function(){
- var arr = {
- "columnDesc":groupitemeventsdata[0][0]['category'][0]['title'],
- "columnName":groupitemeventsdata[0][0]['category'][0]['id'],
- "comparator":"==",
- "comparatorName":"等于",
- "ftv":[],
- "strftv":"",
- "table_type":groupitemeventsdata[0][0]['category'][0]['data_type'],
- "timeUnit":""
- }
- initialevent.push(arr);
- data['events'][1]['filts'] = initialevent;
- filtersymbols[0].push(groupitemeventsdata[0][0]['category'][0]['category']);
- X.template("event","initial-event",data['events'][0]);
- })
- var returnevent = []
- $(document).off('click','.analysis-shaix-return-event').on('click','.analysis-shaix-return-event',function(){
- var arr = {
- "columnDesc":groupitemeventsdata[1][0]['category'][0]['title'],
- "columnName":groupitemeventsdata[1][0]['category'][0]['id'],
- "comparator":"==",
- "comparatorName":"等于",
- "ftv":[],
- "strftv":"",
- "table_type":groupitemeventsdata[1][0]['category'][0]['data_type'],
- "timeUnit":""
- }
- // data['events'][1]['filts'].push(arr);
- returnevent.push(arr);
- data['events'][1]['filts'] = returnevent;
- filtersymbols[1].push(groupitemeventsdata[1][0]['category'][0]['category']);
- X.template("returnvisitevent","returnvisit-event",data['events'][1]);
+ $(document).off('click','.analysis-zhibiao-updata').on('click','.analysis-zhibiao-updata',function(){
+ var obj = $(this);
+ var index = obj.attr("data-index");
+ addscreen(index);
})
// 删除指定初始事件筛选
- $(document).off('click','.analysis-zhibiao-list-del-initial-event').on('click','.analysis-zhibiao-list-del-initial-event',function(){
- var index = $(this).attr("data-twonum");
- data['events'][0]['filts'].splice(index,1);
- filtersymbols[0].splice(index,1);
- X.template("event","initial-event",data['events'][0]);
- })
-
- $(document).off('click','.analysis-zhibiao-list-del-return-event').on('click','.analysis-zhibiao-list-del-return-event',function(){
- var index = $(this).attr("data-twonum");
- data['events'][0]['filts'].splice(index,1);
- filtersymbols[1].splice(index,1);
- X.template("returnvisitevent","return-event",data['events'][0]);
+ $(document).off('click','.analysis-del').on('click','.analysis-del',function(){
+ var index = $(this).attr("data-index");
+ data['events'].splice(index,1);
+ filtersymbols[index].splice(index,1);
+ // groupitemeventsdata[index].splice(index,1);
+ X.template("funnel","funnel-event",data['events']);
})
+ //删除指定筛选
+ $(document).off('click','.analysis-zhibiao-list-del').on('click','.analysis-zhibiao-list-del',function(){
+ var index = $(this).attr("data-index");
+ var indexs = $(this).attr("data-twonum");
+ data['events'][index]['filts'].splice(indexs,1);
+ filtersymbols[index].splice(indexs,1);
+ X.template("funnel","funnel-event",data['events']);
+ })
+
$(document).off('click','.analysis-con-left-screen-list-left-zhibiaoname-initial-event input').on('blur','.analysis-con-left-screen-list-left-zhibiaoname-initial-event input',function(){
var txt = $(this).val();
data['events'][0]['renameindicator'] = txt;
})
- $(document).off('click','.analysis-con-left-screen-list-left-zhibiaoname-return-event input').on('blur','.analysis-con-left-screen-list-left-zhibiaoname-return-event input',function(){
- var txt = $(this).val();
- data['events'][1]['renameindicator'] = txt;
- })
-
$(document).off('click','.ant-dropdown-trigger').on('click','.ant-dropdown-trigger',function(){
var obj = $(this);
var offset = obj.offset();
@@ -3192,7 +3254,8 @@ var X = window.X || {
var offset = obj.offset();
var index = obj.attr("data-index");
var indexs = obj.attr("data-indexs");
- X.querycriteriapop(filteringdata(),'category',offset.left,offset.top+obj.height(),function(val){
+ console.log(groupitemeventsdata);
+ X.querycriteriapop(groupitemeventsdata[index],'category',offset.left,offset.top+obj.height(),function(val){
console.log(val);
var htmlstring = val.title;
obj.html(htmlstring);
@@ -3230,6 +3293,7 @@ var X = window.X || {
var offset = obj.offset();
var index = $(this).attr("data-index");
var indexs = $(this).attr("data-indexs");
+ console.log(filtersymbols);
X.querycriteriapop(filtersymbols[index][indexs],'dropdownlist',offset.left,offset.top+obj.height(),function(val){
if(val != undefined){
obj.html(val.title);
@@ -3324,16 +3388,15 @@ var X = window.X || {
})
}
}
-
// 分组项
$(document).off('click','.analysis-action-right').on('click','.analysis-action-right',function() {
var index = $(this).attr("data-index");
data.eventView.groupBy.splice(index,1);
X.template("grouped","shushi",data['eventView']['groupBy']);
+ $(".group-updata").show();
})
$(document).off('click','.analysis-footadd___2D4YB').on('click','.analysis-footadd___2D4YB',function() {
-
var arr = {
"columnName": "#account_id",//事件中文显示
"column_id": "#account_id",//事件id
@@ -3344,7 +3407,7 @@ var X = window.X || {
};
data['eventView']['groupBy'].push(arr);
X.template("grouped","shushi",data['eventView']['groupBy']);
-
+ $(this).hide();
})
$(document).off('click','.analysis-ant-dropdown-trigger').on('click','.analysis-ant-dropdown-trigger',function(){
@@ -3359,10 +3422,7 @@ var X = window.X || {
data.eventView.groupBy[index]['column_id'] = val.id;
data.eventView.groupBy[index]['data_type'] = val.type;
data.eventView.groupBy[index]['table_type'] = val.table_type;
-
-
})
-
})
// sql语句显示
@@ -3376,27 +3436,30 @@ var X = window.X || {
// 时间粒度
var timeParticleSizearr = [
- {'title':'当日','id':'1'},
- {'title':'次日','id':'2'},
+ {'title':'1天','id':'1'},
{'title':'7日','id':'7'},
{'title':'14日','id':'14'},
{'title':'30日','id':'30'},
]
X.laydropdown('.analtsis-timeParticleSize',timeParticleSizearr,function(d){
- console.log(d);
$(".analtsis-timeParticleSize").html(d.title);
- data['eventView']['unitNum'] = parseInt(d.id);
+ data['eventView']['windows_gap'] = parseInt(d.id);
retaineddata();
})
// 计算按钮
$(document).off('click','.analysis-calculation').on('click','.analysis-calculation',function(){
+ console.log(data);
+
retaineddata()
})
-
+ var querydata;
function retaineddata(){
- X.api("ck/retention_model","post",data,function(d){
- console.log(data);
+ X.api("ck/funnel_model","post",data,function(d){
+ d['etitle'] = $.extend(true,[],d['title']);
+ if(d['title'].length == 2){
+ d['etitle'].unshift('总体');
+ }
querydata = d;
updata(d)
})
@@ -3404,109 +3467,52 @@ var X = window.X || {
function updata(d){
var title = $(".select-chart").attr("title");
- if(title == '数据报表'){ $(".table-div-box").show(); $(".analysis-echarts").hide(); retainedtable(d)}
- else if(title == '第N日留存'){ $(".table-div-box").hide(); $(".analysis-echarts").show(); retainednRetained(d) }
- else if(title == '每日留存'){ $(".table-div-box").hide(); $(".analysis-echarts").show(); retaineddayRetained(d) }
+ if(title == '转化图'){ retainedtable(d); retaineddayRetained(d);}
+ else if(title == '趋势图'){ retainednRetained(d);retainednRetainedtable(d); }
}
function retainedtable(d){
var tabledata=[];
- for(let i in d['summary_values']){
+ for(let i in d['list']){
var arr = {
- date: i,
- d0:d['summary_values'][i]['d0'],
+ title: d['list'][i]["title"],
data:[]
}
- for(let j in d['summary_values'][i]["n"]){
+ for(let j in d['list'][i]["n"]){
var nrr = {
n:0,
p:0
}
- nrr["n"] = d['summary_values'][i]["n"][j];
- nrr["p"] = d['summary_values'][i]["p"][j]
+ nrr["n"] = d['list'][i]["n"][j];
+ nrr["p"] = d['list'][i]["p1"][j]
arr['data'].push(nrr);
}
tabledata.push(arr)
}
- var titdata = [];
- for(let i in d['days']){
- var tit = "第" + i + "日";
- titdata.push(tit);
- }
- titdata.unshift("日期",d.title);
- X.laytpldata("#table-fenxi-th-dot",titdata,".table-fenxi-th");
-
+ X.laytpldata("#table-fenxi-th-dot",d.etitle,".table-fenxi-th");
X.laytpldata("#table-fenxi-td-dot",tabledata,".table-fenxi-td");
}
- // 每日留存
+ //转化图
function retaineddayRetained(d){
var arr = {};
- var xAxisData=[];
+ var xAxisData= d['level'];
var seriesData=[];
- var legenddata = [];
- if(jQuery.isEmptyObject(d.values)){
- legenddata = d.date_range;
- for(let i in d['days']){
- var tit = "第" + i + "日";
- xAxisData.push(tit);
+
+ for(let i in d['list']){
+ var arr = {
+ name: d['list'][i]['title'],
+ type: 'bar',
+ barMaxWidth : 30,
+ data: d['list'][i]['p1']
}
- for(let i in d['summary_values']){
- var arr = {
- name: i,
- type: 'line',
- data: d['summary_values'][i]['p']
- }
- seriesData.push(arr);
- }
- }else {
- var timearr = [];
- for(let i in d.values){
- timearr.push(i);
- for(let j in d.values[i]){
- if(arr[j]){
- arr[j][i] = d.values[i][j]['p'];
- }else {
- arr[j]=[];
- arr[j][i] = d.values[i][j]['p'];
- }
- }
- }
-
- var ydata = {};
- for(let j in arr){
- if(!ydata[j]){
- ydata[j] = [];
- }
- for( let i in timearr ){
- ydata[j].push("");
- for(let z in arr[j]){
- if(timearr[i] == z){
- var index = arr[j][z].length - 1;
- ydata[j][i] =arr[j][z][index];
- }
- }
- }
- }
- console.log(ydata);
- // for(let i in ydata){
- // legenddata.push(i);
- // var arr = {
- // name: i,
- // type: 'line',
- // data: ydata[i]
- // }
- // seriesData.push(arr)
- // }
+ seriesData.push(arr);
}
- return;
- var myChart = echarts.init(document.getElementById('analysis-echarts'));
+
+ var myChart = echarts.init(document.getElementById('funnel-echarts'));
var option = {
- title: {
- text: ''
- },
- color: [ '#3ea7fd', '#cdddfd', '#5ad8a6', '#cdf3e4', '#5d7092', '#ced4de', '#f6bd16','#fcebb9','#e86452','#f8d0cb','#6dc8ec', '#d3eef9', '#9270ca', '#d3c6ea', '#ff9d4d', '#ffd8b8', '#269a99','#aad8d8','#ff99c3','#ffd6e7' ],
+ color: X.DATA.echartscolor,
tooltip: {
trigger: 'axis',
axisPointer: {
@@ -3516,21 +3522,15 @@ var X = window.X || {
}
}
},
- legend: {
- type:'scroll',
- data: legenddata,
- },
grid: {
left: '2%',
right: '2%',
- bottom: '2%',
+ bottom: '5%',
top: '10%',
- containLabel: true
},
xAxis: [
{
type: 'category',
- boundaryGap: false,
data: xAxisData
}
],
@@ -3543,12 +3543,13 @@ var X = window.X || {
};
myChart.setOption(option,true);
}
-
+ // 趋势图
function retainednRetained(d){
var arr = {};
var legenddata = [];
var seriesData = [];
- if(jQuery.isEmptyObject(d.values)){
+ var xAxisdata = [];
+ if(jQuery.isEmptyObject(d.date_data)){
var arr = []
for(let i in d['summary_values']){
var index = d['summary_values'][i]['p'].length - 1;
@@ -3560,15 +3561,15 @@ var X = window.X || {
data: arr
}
}else {
- var timearr = [];
- for(let i in d.values){
- timearr.push(i);
- for(let j in d.values[i]){
+ var arr =[];
+ for(let i in d['date_data']){
+ xAxisdata.push(i);
+ for(let j in d['date_data'][i]){
if(arr[j]){
- arr[j][i] = d.values[i][j]['p'];
+ arr[j][i] = d['date_data'][i][j]['p1'];
}else {
arr[j]=[];
- arr[j][i] = d.values[i][j]['p'];
+ arr[j][i] = d['date_data'][i][j]['p1'];
}
}
}
@@ -3578,17 +3579,17 @@ var X = window.X || {
if(!ydata[j]){
ydata[j] = [];
}
- for( let i in timearr ){
+ for( let i in xAxisdata ){
ydata[j].push("");
for(let z in arr[j]){
- if(timearr[i] == z){
+ if(xAxisdata[i] == z){
var index = arr[j][z].length - 1;
ydata[j][i] =arr[j][z][index];
}
}
}
}
-
+
for(let i in ydata){
legenddata.push(i);
var arr = {
@@ -3598,9 +3599,9 @@ var X = window.X || {
}
seriesData.push(arr)
}
- }
- var myChart = echarts.init(document.getElementById('analysis-echarts'));
+ }
+ var myChart = echarts.init(document.getElementById('funnel-echarts'));
var option = {
title: {
text: ''
@@ -3630,7 +3631,7 @@ var X = window.X || {
{
type: 'category',
boundaryGap: false,
- data: d.date_range
+ data: xAxisdata
}
],
yAxis: [
@@ -3643,15 +3644,85 @@ var X = window.X || {
myChart.setOption(option,true);
}
+ //趋势图表格
+ function retainednRetainedtable(d){
+ var arr = {};
+ var seriesData = [];
+ var xAxisdata = [];
+ if(jQuery.isEmptyObject(d.date_data)){
+ var arr = []
+ for(let i in d['summary_values']){
+ var index = d['summary_values'][i]['p'].length - 1;
+ arr.push(d['summary_values'][i]['p'][index]);
+ }
+
+ seriesData = {
+ type: 'line',
+ data: arr
+ }
+ }else {
+ var arr =[];
+ for(let i in d['date_data']){
+ xAxisdata.push(i);
+ for(let j in d['date_data'][i]){
+ if(arr[j]){
+ arr[j][i] = d['date_data'][i][j]['p1'];
+ }else {
+ arr[j]=[];
+ arr[j][i] = d['date_data'][i][j]['p1'];
+ }
+ }
+ }
+
+ var ydata = {};
+ for(let j in arr){
+ if(!ydata[j]){
+ ydata[j] = [];
+ }
+ for( let i in xAxisdata ){
+ ydata[j].push(0);
+ for(let z in arr[j]){
+ if(xAxisdata[i] == z){
+ var index = arr[j][z].length - 1;
+ ydata[j][i] =arr[j][z][index];
+ }
+ }
+ }
+ }
+
+ }
+ xAxisdata.unshift('总体');
+
+ var tabdata = [];
+ for(let i in ydata){
+ var arr = {
+ 'title': i,
+ 'data':[]
+ }
+ for(let j in ydata[i]){
+ var nrr = {
+ n:'',
+ p:ydata[i][j]
+ }
+ arr['data'].push(nrr);
+ }
+ tabdata.push(arr);
+ }
+ console.log(tabdata);
+ X.laytpldata("#table-fenxi-th-dot",xAxisdata,".table-fenxi-th");
+ X.laytpldata("#table-fenxi-td-dot",tabdata,".table-fenxi-td");
+ }
var querydata;
$(document).off('click','.analtsis-chart-switch').on('click','.analtsis-chart-switch',function(){
if(querydata){
$('.analtsis-chart-switch-box .analtsis-chart-switch').removeClass('select-chart');
$(this).addClass('select-chart');
- if($(this).attr('title') == '数据报表'){ $(".table-div-box").show(); $(".analysis-echarts").hide(); retainedtable(querydata)}
- else if($(this).attr('title') == '第N日留存'){ $(".table-div-box").hide(); $(".analysis-echarts").show(); retainednRetained(querydata) }
- else if($(this).attr('title') == '每日留存'){ $(".table-div-box").hide(); $(".analysis-echarts").show(); retaineddayRetained(querydata) }
+ if($(this).attr('title') == '转化图'){ retainedtable(querydata); retaineddayRetained(querydata)}
+ else if($(this).attr('title') == '趋势图'){
+ retainednRetained(querydata);
+ retainednRetainedtable(querydata);
+ }
}else{
layer.msg('请先计算数据,在切换图表');
}
@@ -4594,22 +4665,21 @@ var X = window.X || {
X.template("grouped","shushi");
var data ={
- "eventView":{
- "cksql":"retention",
- "endTime":"2021-06-07 23:59:59",
- "filts":[],
- "groupBy":[],
- "recentDay":"1-30",
- "relation":"and",
- "startTime":"2021-05-09 00:00:00",
- "statType":"retention",
- "timeParticleSize":"P1D",
- "unitNum":7
- },
- "events":[
-
- ],
- "projectId":1
+ "eventView":{
+ "cksql":"retention",
+ "endTime":"2021-06-07 23:59:59",
+ "filts":[],
+ "groupBy":[],
+ "recentDay":"1-30",
+ "relation":"and",
+ "startTime":"2021-05-09 00:00:00",
+ "statType":"retention",
+ "timeParticleSize":"P1D",
+ "unitNum":7
+ },
+ "events":[
+
+ ],
};
// 日期渲染
@@ -4626,12 +4696,6 @@ var X = window.X || {
data['eventView']['startTime'] = timearr[0] + " "+"00:00:00";
data['eventView']['endTime'] = timearr[2]+" "+"23:59:59";
- X.grouped(data['eventView']['groupBy'],"#shushi");
-
- // $(document).off('click','.analysis-calculation').on("click",'.analysis-calculation',function(){
- // console.log(211);
- // })
-
var eventdata;
var filtersymbols = [[],[]];//默认两个事件
var groupitemeventsdata=[[],[]]//分组项里的事件
@@ -5126,7 +5190,7 @@ var X = window.X || {
title: {
text: ''
},
- color: [ '#3ea7fd', '#cdddfd', '#5ad8a6', '#cdf3e4', '#5d7092', '#ced4de', '#f6bd16','#fcebb9','#e86452','#f8d0cb','#6dc8ec', '#d3eef9', '#9270ca', '#d3c6ea', '#ff9d4d', '#ffd8b8', '#269a99','#aad8d8','#ff99c3','#ffd6e7' ],
+ color: X.DATA.echartscolor,
tooltip: {
trigger: 'axis',
axisPointer: {
@@ -5192,7 +5256,6 @@ var X = window.X || {
}
}
}
-
var ydata = {};
for(let j in arr){
if(!ydata[j]){
@@ -5208,7 +5271,6 @@ var X = window.X || {
}
}
}
-
for(let i in ydata){
legenddata.push(i);
var arr = {
@@ -5218,6 +5280,7 @@ var X = window.X || {
}
seriesData.push(arr)
}
+
}
var myChart = echarts.init(document.getElementById('analysis-echarts'));
@@ -5225,7 +5288,7 @@ var X = window.X || {
title: {
text: ''
},
- color: [ '#3ea7fd', '#cdddfd', '#5ad8a6', '#cdf3e4', '#5d7092', '#ced4de', '#f6bd16','#fcebb9','#e86452','#f8d0cb','#6dc8ec', '#d3eef9', '#9270ca', '#d3c6ea', '#ff9d4d', '#ffd8b8', '#269a99','#aad8d8','#ff99c3','#ffd6e7' ],
+ color: X.DATA.echartscolor,
tooltip: {
trigger: 'axis',
axisPointer: {
diff --git a/web/srczip/common.js b/web/srczip/common.js
index 3eeb4cf..c77f6c5 100644
--- a/web/srczip/common.js
+++ b/web/srczip/common.js
@@ -3,6 +3,7 @@ var X = window.X || {
event : new EventEmitter(),
pageLogic : {},
DATA : {
+ 'echartscolor': [ '#3ea7fd', '#cdddfd', '#5ad8a6', '#cdf3e4', '#5d7092', '#ced4de', '#f6bd16','#fcebb9','#e86452','#f8d0cb','#6dc8ec', '#d3eef9', '#9270ca', '#d3c6ea', '#ff9d4d', '#ffd8b8', '#269a99','#aad8d8','#ff99c3','#ffd6e7' ],
'createsidebar':[{ title: '新建看板',id: 0,url:'newkanban'},{title: '新建文件夹',id: 1,url:'newwenjian'},{title: '创建空间',id: 2,url:'kongjianshezhi'}],
'taboperationdata':{
kanban:[
@@ -182,8 +183,7 @@ var X = window.X || {
}
},
error:function(error){
- layer.msg('服务器错误');
- // console.log('服务器错误');
+ layer.msg('服务器错误');
layer.close(index);
}
});
diff --git a/web/srczip/logic/analysis.js b/web/srczip/logic/analysis.js
index b38ad04..95d6cb8 100644
--- a/web/srczip/logic/analysis.js
+++ b/web/srczip/logic/analysis.js
@@ -237,7 +237,6 @@
})
// 设置一级事件
-
$(document).off('click','.ant-dropdown-trigger').on('click','.ant-dropdown-trigger',function() {
var obj = $(this);
var offset = obj.offset();
@@ -338,7 +337,7 @@
})
// 添加筛选项
- $(document).on('click','.analysis-shaix',function(){
+ $(document).off('click','.analysis-shaix').on('click','.analysis-shaix',function(){
var obj = $(this);
var index = obj.attr("data-index");
addscreen(index);
@@ -739,7 +738,7 @@
var querydata;//查询数据
$(document).on('click','.analtsis-chart-switch-box .analtsis-chart-switch',function(){
-
+ console.log(querydata)
if(querydata){
$('.analtsis-chart-switch-box .analtsis-chart-switch').removeClass('select-chart');
$(this).addClass('select-chart');
@@ -749,7 +748,7 @@
else if($(this).attr('title') == '分布图'){distributionmap(querydata)}
else if($(this).attr('title') == '饼状分布'){}
}else{
- layer.msg('请先计算数据,在切换图表');
+ // layer.msg('请先计算数据,在切换图表');
}
})
@@ -759,7 +758,7 @@
var xAxisData=[];
for(let i in d){
for(let z in d[i]['groups']){
- var pj = d[i]['event_name']+d[i]['groups'][z][0]+d[i]['groups'][z][1];
+ var pj = d[i]['event_name']+d[i]['groups'][z];
xAxisData.push(pj);
}
}
@@ -784,12 +783,13 @@
seriesData[i]['name'] = xAxisData[i];
}
}
+
var myChart = echarts.init(document.getElementById('analysis-echarts'));
var option = {
title: {
text: ''
},
- color: [ '#3ea7fd', '#cdddfd', '#5ad8a6', '#cdf3e4', '#5d7092', '#ced4de', '#f6bd16','#fcebb9','#e86452','#f8d0cb','#6dc8ec', '#d3eef9', '#9270ca', '#d3c6ea', '#ff9d4d', '#ffd8b8', '#269a99','#aad8d8','#ff99c3','#ffd6e7' ],
+ color: X.DATA.echartscolor,
tooltip: {
trigger: 'axis',
axisPointer: {
@@ -837,7 +837,7 @@
var xAxisData=[];
for(let i in d){
for(let z in d[i]['groups']){
- var pj = d[i]['event_name']+d[i]['groups'][z][0]+d[i]['groups'][z][1];
+ var pj = d[i]['event_name']+d[i]['groups'][z];
xAxisData.push(pj);
}
}
@@ -857,12 +857,14 @@
seriesData[i]['name'] = xAxisData[i];
}
}
+ console.log(d);
+ console.log(seriesData);
var myChart = echarts.init(document.getElementById('analysis-echarts'));
var option = {
title: {
text: ''
},
- color: [ '#3ea7fd', '#cdddfd', '#5ad8a6', '#cdf3e4', '#5d7092', '#ced4de', '#f6bd16','#fcebb9','#e86452','#f8d0cb','#6dc8ec', '#d3eef9', '#9270ca', '#d3c6ea', '#ff9d4d', '#ffd8b8', '#269a99','#aad8d8','#ff99c3','#ffd6e7' ],
+ color: X.DATA.echartscolor,
tooltip: {
trigger: 'axis',
axisPointer: {
@@ -907,29 +909,90 @@
//分布图
function distributionmap(d){
+ var legendData =[];
var xAxisData=[];
- for(let i in d){
- for(let z in d[i]['groups']){
- var pj = d[i]['event_name']+d[i]['groups'][z][0]+d[i]['groups'][z][1];
- xAxisData.push(pj);
- }
- }
var seriesData=[];
- for(let i in d){
- for(let z in d[i]['values']){
- var arr = {
- name: '',
- type: 'bar',
- data: d[i]['values'][z]
+ if(jQuery.isEmptyObject(d[0]["groups"])){
+ for(let i in d){
+ xAxisData.push(d[i]['event_name']);
+ legendData.push(d[i]['event_name']);
+ var num =0;
+ for(let j in d[i]['values'][i]){
+ num = num + d[i]['values'][i][j]
}
+ var arr = {
+ name: d[i]['event_name'],
+ type: 'bar',
+ barWidth : 30,
+ data: [],
+ }
+ arr['data'].push(num);
seriesData.push(arr);
}
- }
- if(xAxisData.length > 0){
- for(let i in seriesData){
- seriesData[i]['name'] = xAxisData[i];
+
+ }else {
+ for(let i in d){
+ xAxisData.push(d[i]['event_name']);
+ for(let j in d[i]['groups']){
+ var num =0;
+ for(let z in d[i]['values'][j]){
+ num = num + d[i]['values'][j][z]
+ }
+ if(i > 0){
+ for(let q in seriesData){
+ if(d[i]['groups'][j] == seriesData[q]['name']){
+ seriesData[q]['data'].push(num);
+ }else {
+ var arr = {
+ name: d[i]['groups'][j],
+ type: 'bar',
+ barWidth : 30,
+ data: [],
+ }
+ arr['data'].push(num);
+ seriesData.push(arr);
+ }
+ }
+ }else {
+ var arr = {
+ name: d[i]['groups'][j],
+ type: 'bar',
+ barWidth : 30,
+ data: [],
+ }
+ arr['data'].push(num);
+ seriesData.push(arr);
+ }
+
+
+ }
}
+ console.log(seriesData);
+ console.log(xAxisData)
}
+ // for(let i in d){
+ // for(let z in d[i]['groups']){
+ // var pj = d[i]['event_name']+d[i]['groups'][z];
+ // xAxisData.push(pj);
+ // }
+ // }
+ // var seriesData=[];
+ // for(let i in d){
+ // for(let z in d[i]['values']){
+ // var arr = {
+ // name: '',
+ // type: 'bar',
+ // data: d[i]['values'][z]
+ // }
+ // seriesData.push(arr);
+ // }
+ // }
+ // if(xAxisData.length > 0){
+ // for(let i in seriesData){
+ // seriesData[i]['name'] = xAxisData[i];
+ // }
+ // }
+ // return;
var myChart = echarts.init(document.getElementById('analysis-echarts'));
var option = {
tooltip: {
@@ -938,28 +1001,22 @@
type: 'shadow'
}
},
- color: [ '#3ea7fd', '#cdddfd', '#5ad8a6', '#cdf3e4', '#5d7092', '#ced4de', '#f6bd16','#fcebb9','#e86452','#f8d0cb','#6dc8ec', '#d3eef9', '#9270ca', '#d3c6ea', '#ff9d4d', '#ffd8b8', '#269a99','#aad8d8','#ff99c3','#ffd6e7' ],
+ color: X.DATA.echartscolor,
legend: {
- data: xAxisData
+ data: legendData
},
- 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}
- }
+ grid: {
+ left: '2%',
+ right: '2%',
+ bottom: '2%',
+ top: '10%',
+ containLabel: true
},
xAxis: [
{
type: 'category',
axisTick: {show: false},
- data: d[0]['date_range']
+ data: xAxisData
}
],
yAxis: [
@@ -975,8 +1032,8 @@
//表格
function tabledata(d){
console.log(d);
- var titledata=d[0]['date_range'];
- titledata.unshift('指标','阶段总和')
+ // var titledata=d[0]['date_range'];
+ // titledata.unshift('指标','阶段总和')
// X.laytpldata("#table-fenxi-th-dot",titledata,".table-fenxi-th");
// X.laytpldata("#table-fenxi-td-dot", ,".table-fenxi-td");
}
@@ -995,14 +1052,25 @@
X.api("ck/event_model","post",dataArr,function(d){
querydata = d;
if(d[0].values.length > 0 ){
- stackingdiagram(d);
- tabledata(d);
+ updata();
+ // stackingdiagram(d);
+ // tabledata(d);
}else {
$("#analysis-echarts").empty();
layer.msg("无数据");
}
})
}
+
+ function updata(){
+ var tit = $(".select-chart").attr("title");
+ if(tit == '趋势图'){trendchart(querydata)}
+ else if(tit == '堆积图'){stackingdiagram(querydata);}
+ else if(tit == '累计图'){}
+ else if(tit == '分布图'){distributionmap(querydata)}
+ else if(tit == '饼状分布'){}
+ }
+
// 保存报表
$(document).off('click','.analysis-savereport').on('click','.analysis-savereport',function(){
X.parametersopen(data,'savereport','auto')
diff --git a/web/srczip/logic/event.js b/web/srczip/logic/event.js
index 1932759..6d75fbd 100644
--- a/web/srczip/logic/event.js
+++ b/web/srczip/logic/event.js
@@ -8,8 +8,8 @@
}else {
var data = []
}
+ console.log(data);
X.laytpldata("#analysis-overall-situation-list-box-dot",data,"#initial-event");
-
}
};
})();
\ No newline at end of file
diff --git a/web/srczip/logic/funnel.js b/web/srczip/logic/funnel.js
index c198f46..535301e 100644
--- a/web/srczip/logic/funnel.js
+++ b/web/srczip/logic/funnel.js
@@ -1,694 +1,16 @@
(function(){
X.pageLogic['funnel'] = {
init : function(parms){
-
- // X.gourl("grouped","shushi");
- X.template("grouped","shushi");
-
- var data ={
- "eventView":{
- "cksql":"retention",
- "endTime":"2021-06-07 23:59:59",
- "filts":[],
- "groupBy":[],
- "recentDay":"1-30",
- "relation":"and",
- "startTime":"2021-05-09 00:00:00",
- "statType":"retention",
- "timeParticleSize":"P1D",
- "unitNum":7
- },
- "events":[
-
- ],
- "projectId":1
- };
-
- // 日期渲染
- X.daterender("#retained-condition-date",function(start, end, label){
- var startTime = start.format('YYYY-MM-DD')+ " "+ "00:00:00";
- var endTime = end.format('YYYY-MM-DD')+ " "+ "23:59:59";
- data['eventView']['startTime'] = startTime;
- data['eventView']['endTime'] = endTime;
- retaineddata();
- })
-
- var time = $("#retained-condition-date").val();
- var timearr = time.split(" ");
- data['eventView']['startTime'] = timearr[0] + " "+"00:00:00";
- data['eventView']['endTime'] = timearr[2]+" "+"23:59:59";
-
- X.grouped(data['eventView']['groupBy'],"#shushi");
-
- // $(document).off('click','.analysis-calculation').on("click",'.analysis-calculation',function(){
- // console.log(211);
- // })
-
- var eventdata;
- var filtersymbols = [[],[]];//默认两个事件
- var groupitemeventsdata=[[],[]]//分组项里的事件
-
- X.api("data_auth/my_event","get",{},function(d){
- eventdata = d;
- var arr = [{
- "eventDesc":eventdata[0]['category'][0]['event_desc'],
- "eventName":eventdata[0]['category'][0]['event_name'],
- "filts":[],
- "relation":"and",
- "relationUser":"and",
- "renameindicator":""
- },{
- "eventDesc":eventdata[0]['category'][0]['event_desc'],
- "eventName":eventdata[0]['category'][0]['event_name'],
- "filts":[],
- "relation":"and",
- "relationUser":"and",
- "renameindicator":""
- }
- ]
- data['events'] = arr;
- X.api("data_auth/load_filter_props","post",{event_name:d[0]['category'][0]['event_name']},function(val){
- groupitemeventsdata[0] = val;
- groupitemeventsdata[1] = val;
- })
- })
-
- //初始事件
- X.template("event","initial-event",data['events'][0]);
- X.template("returnvisitevent","returnvisit-event",data['events'][1]);
- //开启重命名
- $(document).off('click','.analysis-chongmingming-initial-event').on('click','.analysis-chongmingming-initial-event',function(){
- $("#analysis-con-left-screen-list-left-zhibiaoname-initial-event").show();
- $(this).hide();
- $(".analysis-chongmingming-del-initial-event").show();
- })
-
- $(document).off('click','.analysis-chongmingming-return-event').on('click','.analysis-chongmingming-return-event',function(){
- $("#analysis-con-left-screen-list-left-zhibiaoname-return-event").show();
- $(this).hide();
- $(".analysis-chongmingming-del-return-event").show();
- })
-
- //取消重命名
- $(document).off('click','.analysis-chongmingming-del-initial-event').on('click','.analysis-chongmingming-del-initial-event',function(){
- $("#analysis-con-left-screen-list-left-zhibiaoname-initial-event").hide();
- $("#analysis-con-left-screen-list-left-zhibiaoname-initial-event input").val('');
- $(this).hide();
- $(".analysis-chongmingming-initial-event").show();
- })
-
- $(document).off('click','.analysis-chongmingming-del-return-event').on('click','.analysis-chongmingming-del-return-event',function(){
- $("#analysis-con-left-screen-list-left-zhibiaoname-return-event").hide();
- $("#analysis-con-left-screen-list-left-zhibiaoname-return-event input").val('');
- $(this).hide();
- $(".analysis-chongmingming-return-event").show();
- })
-
- // 添加初始事件筛选
- // $(document).off('click','.analysis-zhibiao-updata-list-box .analysis-zhibiao-updata-initial-event').on('click','.analysis-zhibiao-updata-list-box .analysis-zhibiao-updata',function(){
- // var arr = {
- // "columnDesc":groupitemeventsdata[0][0]['category'][0]['title'],
- // "columnName":groupitemeventsdata[0][0]['category'][0]['id'],
- // "comparator":"==",
- // "comparatorName":"等于",
- // "ftv":[],
- // "strftv":"",
- // "table_type":groupitemeventsdata[0][0]['category'][0]['data_type'],
- // "timeUnit":""
- // }
- // data['events'][0]['filts'].push(arr);
- // filtersymbols[0].push(groupitemeventsdata[0][0]['category'][0]['category']);
- // X.template("event","initial-event",data['events'][0]);
- // })
-
- // $(document).off('click','.analysis-zhibiao-updata-list-box .analysis-zhibiao-updata-return-event').on('click','.analysis-zhibiao-updata-list-box .analysis-zhibiao-updata',function(){
- // var arr = {
- // "columnDesc":groupitemeventsdata[1][0]['category'][0]['title'],
- // "columnName":groupitemeventsdata[1][0]['category'][0]['id'],
- // "comparator":"==",
- // "comparatorName":"等于",
- // "ftv":[],
- // "strftv":"",
- // "table_type":groupitemeventsdata[1][0]['category'][0]['data_type'],
- // "timeUnit":""
- // }
- // data['events'][1]['filts'].push(arr);
- // filtersymbols[1].push(groupitemeventsdata[1][0]['category'][0]['category']);
- // X.template("returnvisitevent","returnvisit-event",data['events'][1]);
- // })
-
- // 添加初始事件筛选
- var initialevent = []
- $(document).off('click','.analysis-shaix-initial-event').on('click','.analysis-shaix-initial-event',function(){
- var arr = {
- "columnDesc":groupitemeventsdata[0][0]['category'][0]['title'],
- "columnName":groupitemeventsdata[0][0]['category'][0]['id'],
- "comparator":"==",
- "comparatorName":"等于",
- "ftv":[],
- "strftv":"",
- "table_type":groupitemeventsdata[0][0]['category'][0]['data_type'],
- "timeUnit":""
- }
- initialevent.push(arr);
- data['events'][1]['filts'] = initialevent;
- filtersymbols[0].push(groupitemeventsdata[0][0]['category'][0]['category']);
- X.template("event","initial-event",data['events'][0]);
- })
- var returnevent = []
- $(document).off('click','.analysis-shaix-return-event').on('click','.analysis-shaix-return-event',function(){
- var arr = {
- "columnDesc":groupitemeventsdata[1][0]['category'][0]['title'],
- "columnName":groupitemeventsdata[1][0]['category'][0]['id'],
- "comparator":"==",
- "comparatorName":"等于",
- "ftv":[],
- "strftv":"",
- "table_type":groupitemeventsdata[1][0]['category'][0]['data_type'],
- "timeUnit":""
- }
- // data['events'][1]['filts'].push(arr);
- returnevent.push(arr);
- data['events'][1]['filts'] = returnevent;
- filtersymbols[1].push(groupitemeventsdata[1][0]['category'][0]['category']);
- X.template("returnvisitevent","returnvisit-event",data['events'][1]);
- })
-
- // 删除指定初始事件筛选
- $(document).off('click','.analysis-zhibiao-list-del-initial-event').on('click','.analysis-zhibiao-list-del-initial-event',function(){
- var index = $(this).attr("data-twonum");
- data['events'][0]['filts'].splice(index,1);
- filtersymbols[0].splice(index,1);
- X.template("event","initial-event",data['events'][0]);
- })
-
- $(document).off('click','.analysis-zhibiao-list-del-return-event').on('click','.analysis-zhibiao-list-del-return-event',function(){
- var index = $(this).attr("data-twonum");
- data['events'][0]['filts'].splice(index,1);
- filtersymbols[1].splice(index,1);
- X.template("returnvisitevent","return-event",data['events'][0]);
- })
+ var me = this;
+ if(parms){
+ this.parms = parms;
+ var data = parms;
+ }else {
+ var data = []
+ }
+ console.log(data);
+ X.laytpldata("#analysis-con-left-screen-list-dot",data,"#funnel-event");
- $(document).off('click','.analysis-con-left-screen-list-left-zhibiaoname-initial-event input').on('blur','.analysis-con-left-screen-list-left-zhibiaoname-initial-event input',function(){
- var txt = $(this).val();
- data['events'][0]['renameindicator'] = txt;
- })
-
- $(document).off('click','.analysis-con-left-screen-list-left-zhibiaoname-return-event input').on('blur','.analysis-con-left-screen-list-left-zhibiaoname-return-event input',function(){
- var txt = $(this).val();
- data['events'][1]['renameindicator'] = txt;
- })
-
- $(document).off('click','.ant-dropdown-trigger').on('click','.ant-dropdown-trigger',function(){
- var obj = $(this);
- var offset = obj.offset();
- var index = obj.attr("data-index");
- var dataevent= data['events'][index];
- // console.log(dataevent);
- X.querycriteriapop(eventdata,'setgrouping',offset.left,offset.top+obj.height(),function(val){
- console.log(val);
- obj.html(val.id);
- dataevent['eventName'] = val.name;
- dataevent['eventDesc'] = val.id;
-
- X.api("data_auth/load_filter_props","post",{event_name:val.name},function(val){
- groupitemeventsdata[index] = val;
- })
- // console.log(data['events']);
-
- })
- })
-
- $(document).off('click','.ta-property-select').on('click','.ta-property-select',function(){
- var obj = $(this);
- var offset = obj.offset();
- var index = obj.attr("data-index");
- var indexs = obj.attr("data-indexs");
- X.querycriteriapop(filteringdata(),'category',offset.left,offset.top+obj.height(),function(val){
- console.log(val);
- var htmlstring = val.title;
- obj.html(htmlstring);
- filtersymbols[index][indexs] = val.category;
- data['events'][index]['filts'][indexs]['columnDesc'] = htmlstring;
- data['events'][index]['filts'][indexs]['columnName'] = val.id;
- data['events'][index]['filts'][indexs]['data_type'] = val.type;
- data['events'][index]['filts'][indexs]['table_type'] = val.table_type;
- })
- })
-
- // 过滤数据
- function filteringdata(){
- var screentypedata;
- if(groupitemeventsdata.length>1){
- for(var i =0; i < groupitemeventsdata.length - 1; i++){
- if(i == 0){
- X.groupintersection(groupitemeventsdata[i] , groupitemeventsdata[Number(i) + Number(1)],function(d){
- screentypedata = d;
- });
- }else {
- X.groupintersection(screentypedata , groupitemeventsdata[Number(i) + Number(1)],function(d){
- screentypedata = d;
- })
- }
- }
- }else {
- screentypedata = groupitemeventsdata[0];
- }
- return screentypedata;
- }
-
- $(document).off('click','.analysis-choicetypename').on('click','.analysis-choicetypename',function(){
- var obj = $(this);
- var offset = obj.offset();
- var index = $(this).attr("data-index");
- var indexs = $(this).attr("data-indexs");
- X.querycriteriapop(filtersymbols[index][indexs],'dropdownlist',offset.left,offset.top+obj.height(),function(val){
- if(val != undefined){
- obj.html(val.title);
- data['events'][index]['filts'][indexs]['comparatorName'] = val.title;
- data['events'][index]['filts'][indexs]['comparator'] = val.id;
- }
- })
- })
-
- $(document).off('click','.analysis-zhibiao-list-type4 input').on('blur','.analysis-zhibiao-list-type4 input',function(){
- var index = $(this).attr('data-index');
- var indexs = $(this).attr('data-indexs');
- var txt = $(this).val();
- var txtarr = txt.split(",");
- data['events'][index]['filts'][indexs]['strftv'] = txt;
- data['events'][index]['filts'][indexs]['ftv'] = txtarr;
- })
-
- //全局筛选
- var filtsftvdata=[];
- $(document).off('click','.analysis-overall-situation-add').on('click','.analysis-overall-situation-add',function(){
- var screentypedata = filteringdata();
- var drr={
- "columnName":screentypedata[0]['category'][0]['title'],//事件中文显示
- "column_id":screentypedata[0]['category'][0]['id'],//事件id
- 'data_type':screentypedata[0]['category'][0]['data_type'],//类型
- 'comparator_name':'等于',//默认等于
- "comparator_id":'==',//符号id
- "ftv":[],//条件
- "strftv":'',//显示条件
- "section":[-1,1],//区间
- "table_type":screentypedata[0]['id']
- };
- data['eventView']['filts'].push(drr);
- filtsftvdata.push(screentypedata[0]['category'][0]['category']);
- if(data['eventView']['filts'].length > 1){
- $(".analysis-overall-situation-left-guanxi").show();
- }else{
- $(".analysis-overall-situation-left-guanxi").hide();
- }
- X.template("globalfilter","xinwei-whole",data['eventView']['filts'],function(){
- analysisdown();
- });
- })
-
- //删除指定全局数据
- $(document).off('click','.analysis-overall-situation-del').on('click','.analysis-overall-situation-del',function(){
- var index = $(this).attr('data-index');
- data['eventView']['filts'].splice(index,1);
- filtsftvdata.splice(index,1);
- if(data['eventView']['filts'].length > 1){
- $(".analysis-overall-situation-left-guanxi").show();
- }else{
- $(".analysis-overall-situation-left-guanxi").hide();
- }
- X.template("globalfilter","xinwei-whole",data['eventView']['filts'],function(){
- analysisdown();
- });
- })
-
- $(document).off('click','.analysis-overall-situation-attr').on('click','.analysis-overall-situation-attr',function(){
- var obj = $(this);
- var offset = obj.offset();
- var index = obj.attr("data-index");
- X.querycriteriapop(filteringdata(),'category',offset.left,offset.top+obj.height(),function(val){
- console.log(val);
- obj.html(val.title);
- data['eventView']['filts'][index]['columnName'] = val.title;
- data['eventView']['filts'][index]['column_id'] = val.id;
- data['eventView']['filts'][index]['data_type'] = val.type;
- data['eventView']['filts'][index]['comparator_name'] = '等于';
- data['eventView']['filts'][index]['comparator_id'] = '==';
- data['eventView']['filts'][index]['table_type'] = val.table_type;
- filtsftvdata[index]=val.category;
- analysisdown();//渲染下拉框
- })
- })
-
- //循环给条件框渲染下拉框
- function analysisdown(){
- for(let i in data['eventView']['filts']){
- X.laydropdown("#analysis-overall-situation-fuhao-"+i,filtsftvdata[i],function(val){
- $(this).html(val.title);
- data['eventView']['filts'][i]['comparator_name'] = val.title;
- data['eventView']['filts'][i]['comparator_id'] = val.id;
- if(val.id == "range"){
- data['eventView']['filts'][i]['ftv'] = [-1,1];
- }
- X.template("globalfilter","xinwei-whole",data['eventView']['filts'],function(){
- analysisdown();
- });
- })
- }
- }
-
- // 分组项
- $(document).off('click','.analysis-action-right').on('click','.analysis-action-right',function() {
- var index = $(this).attr("data-index");
- data.eventView.groupBy.splice(index,1);
- X.template("grouped","shushi",data['eventView']['groupBy']);
- })
-
- $(document).off('click','.analysis-footadd___2D4YB').on('click','.analysis-footadd___2D4YB',function() {
-
- var arr = {
- "columnName": "#account_id",//事件中文显示
- "column_id": "#account_id",//事件id
- 'data_type': "string",//类型
- 'table_type': "event",
- "ftv":'',//条件
- "section":''//区间
- };
- data['eventView']['groupBy'].push(arr);
- X.template("grouped","shushi",data['eventView']['groupBy']);
-
- })
-
- $(document).off('click','.analysis-ant-dropdown-trigger').on('click','.analysis-ant-dropdown-trigger',function(){
- var obj = $(this);
- var offset = obj.offset();
- var index = obj.attr("data-index");
- X.querycriteriapop(filteringdata(),'category',offset.left,offset.top+obj.height(),function(val){
- console.log(val);
- var htmlstring = val.title;
- obj.html(htmlstring);
- data.eventView.groupBy[index]['columnName'] = val.title;
- data.eventView.groupBy[index]['column_id'] = val.id;
- data.eventView.groupBy[index]['data_type'] = val.type;
- data.eventView.groupBy[index]['table_type'] = val.table_type;
-
-
- })
-
- })
-
- // sql语句显示
- $(document).off('click','.sqlquery').on('click','.sqlquery',function(){
- var obj = $(this);
- var offset = obj.offset();
- X.querycriteriapop(data,'conditionquery',offset.left - 410,offset.top+obj.height(),function(){
-
- })
- })
-
- // 时间粒度
- var timeParticleSizearr = [
- {'title':'当日','id':'1'},
- {'title':'次日','id':'2'},
- {'title':'7日','id':'7'},
- {'title':'14日','id':'14'},
- {'title':'30日','id':'30'},
- ]
- X.laydropdown('.analtsis-timeParticleSize',timeParticleSizearr,function(d){
- console.log(d);
- $(".analtsis-timeParticleSize").html(d.title);
- data['eventView']['unitNum'] = parseInt(d.id);
- retaineddata();
- })
-
- // 计算按钮
- $(document).off('click','.analysis-calculation').on('click','.analysis-calculation',function(){
- retaineddata()
- })
-
- function retaineddata(){
- X.api("ck/retention_model","post",data,function(d){
- console.log(data);
- querydata = d;
- updata(d)
- })
- }
-
- function updata(d){
- var title = $(".select-chart").attr("title");
- if(title == '数据报表'){ $(".table-div-box").show(); $(".analysis-echarts").hide(); retainedtable(d)}
- else if(title == '第N日留存'){ $(".table-div-box").hide(); $(".analysis-echarts").show(); retainednRetained(d) }
- else if(title == '每日留存'){ $(".table-div-box").hide(); $(".analysis-echarts").show(); retaineddayRetained(d) }
- }
-
- function retainedtable(d){
- var tabledata=[];
- for(let i in d['summary_values']){
- var arr = {
- date: i,
- d0:d['summary_values'][i]['d0'],
- data:[]
- }
- for(let j in d['summary_values'][i]["n"]){
- var nrr = {
- n:0,
- p:0
- }
- nrr["n"] = d['summary_values'][i]["n"][j];
- nrr["p"] = d['summary_values'][i]["p"][j]
- arr['data'].push(nrr);
- }
- tabledata.push(arr)
- }
-
- var titdata = [];
- for(let i in d['days']){
- var tit = "第" + i + "日";
- titdata.push(tit);
- }
- titdata.unshift("日期",d.title);
- X.laytpldata("#table-fenxi-th-dot",titdata,".table-fenxi-th");
-
- X.laytpldata("#table-fenxi-td-dot",tabledata,".table-fenxi-td");
- }
-
- // 每日留存
- function retaineddayRetained(d){
- var arr = {};
- var xAxisData=[];
- var seriesData=[];
- var legenddata = [];
- if(jQuery.isEmptyObject(d.values)){
- legenddata = d.date_range;
- for(let i in d['days']){
- var tit = "第" + i + "日";
- xAxisData.push(tit);
- }
- for(let i in d['summary_values']){
- var arr = {
- name: i,
- type: 'line',
- data: d['summary_values'][i]['p']
- }
- seriesData.push(arr);
- }
- }else {
- var timearr = [];
- for(let i in d.values){
- timearr.push(i);
- for(let j in d.values[i]){
- if(arr[j]){
- arr[j][i] = d.values[i][j]['p'];
- }else {
- arr[j]=[];
- arr[j][i] = d.values[i][j]['p'];
- }
- }
- }
-
- var ydata = {};
- for(let j in arr){
- if(!ydata[j]){
- ydata[j] = [];
- }
- for( let i in timearr ){
- ydata[j].push("");
- for(let z in arr[j]){
- if(timearr[i] == z){
- var index = arr[j][z].length - 1;
- ydata[j][i] =arr[j][z][index];
- }
- }
- }
- }
- console.log(ydata);
- // for(let i in ydata){
- // legenddata.push(i);
- // var arr = {
- // name: i,
- // type: 'line',
- // data: ydata[i]
- // }
- // seriesData.push(arr)
- // }
- }
- return;
- var myChart = echarts.init(document.getElementById('analysis-echarts'));
- var option = {
- title: {
- text: ''
- },
- color: [ '#3ea7fd', '#cdddfd', '#5ad8a6', '#cdf3e4', '#5d7092', '#ced4de', '#f6bd16','#fcebb9','#e86452','#f8d0cb','#6dc8ec', '#d3eef9', '#9270ca', '#d3c6ea', '#ff9d4d', '#ffd8b8', '#269a99','#aad8d8','#ff99c3','#ffd6e7' ],
- tooltip: {
- trigger: 'axis',
- axisPointer: {
- type: 'cross',
- label: {
- backgroundColor: '#6a7985'
- }
- }
- },
- legend: {
- type:'scroll',
- data: legenddata,
- },
- grid: {
- left: '2%',
- right: '2%',
- bottom: '2%',
- top: '10%',
- containLabel: true
- },
- xAxis: [
- {
- type: 'category',
- boundaryGap: false,
- data: xAxisData
- }
- ],
- yAxis: [
- {
- type: 'value'
- }
- ],
- series: seriesData
- };
- myChart.setOption(option,true);
- }
-
- function retainednRetained(d){
- var arr = {};
- var legenddata = [];
- var seriesData = [];
- if(jQuery.isEmptyObject(d.values)){
- var arr = []
- for(let i in d['summary_values']){
- var index = d['summary_values'][i]['p'].length - 1;
- arr.push(d['summary_values'][i]['p'][index]);
- }
-
- seriesData = {
- type: 'line',
- data: arr
- }
- }else {
- var timearr = [];
- for(let i in d.values){
- timearr.push(i);
- for(let j in d.values[i]){
- if(arr[j]){
- arr[j][i] = d.values[i][j]['p'];
- }else {
- arr[j]=[];
- arr[j][i] = d.values[i][j]['p'];
- }
- }
- }
-
- var ydata = {};
- for(let j in arr){
- if(!ydata[j]){
- ydata[j] = [];
- }
- for( let i in timearr ){
- ydata[j].push("");
- for(let z in arr[j]){
- if(timearr[i] == z){
- var index = arr[j][z].length - 1;
- ydata[j][i] =arr[j][z][index];
- }
- }
- }
- }
-
- for(let i in ydata){
- legenddata.push(i);
- var arr = {
- name: i,
- type: 'line',
- data: ydata[i]
- }
- seriesData.push(arr)
- }
- }
-
- var myChart = echarts.init(document.getElementById('analysis-echarts'));
- var option = {
- title: {
- text: ''
- },
- color: [ '#3ea7fd', '#cdddfd', '#5ad8a6', '#cdf3e4', '#5d7092', '#ced4de', '#f6bd16','#fcebb9','#e86452','#f8d0cb','#6dc8ec', '#d3eef9', '#9270ca', '#d3c6ea', '#ff9d4d', '#ffd8b8', '#269a99','#aad8d8','#ff99c3','#ffd6e7' ],
- tooltip: {
- trigger: 'axis',
- axisPointer: {
- type: 'cross',
- label: {
- backgroundColor: '#6a7985'
- }
- }
- },
- legend: {
- type:'scroll',
- data: legenddata
- },
- grid: {
- left: '2%',
- right: '2%',
- bottom: '2%',
- top: '10%',
- containLabel: true
- },
- xAxis: [
- {
- type: 'category',
- boundaryGap: false,
- data: d.date_range
- }
- ],
- yAxis: [
- {
- type: 'value'
- }
- ],
- series: seriesData
- };
- myChart.setOption(option,true);
-
- }
-
- var querydata;
- $(document).off('click','.analtsis-chart-switch').on('click','.analtsis-chart-switch',function(){
- if(querydata){
- $('.analtsis-chart-switch-box .analtsis-chart-switch').removeClass('select-chart');
- $(this).addClass('select-chart');
- if($(this).attr('title') == '数据报表'){ $(".table-div-box").show(); $(".analysis-echarts").hide(); retainedtable(querydata)}
- else if($(this).attr('title') == '第N日留存'){ $(".table-div-box").hide(); $(".analysis-echarts").show(); retainednRetained(querydata) }
- else if($(this).attr('title') == '每日留存'){ $(".table-div-box").hide(); $(".analysis-echarts").show(); retaineddayRetained(querydata) }
- }else{
- layer.msg('请先计算数据,在切换图表');
- }
- })
-
}
};
})();
\ No newline at end of file
diff --git a/web/srczip/logic/funnelanalysis.js b/web/srczip/logic/funnelanalysis.js
new file mode 100644
index 0000000..e54cc2e
--- /dev/null
+++ b/web/srczip/logic/funnelanalysis.js
@@ -0,0 +1,680 @@
+(function(){
+ X.pageLogic['funnelanalysis'] = {
+ init : function(parms){
+ // 分组项
+ X.template("grouped","shushi");
+
+ var data ={
+ "eventView":{
+ "cksql":"funnel",
+ "endTime":"",
+ "filts":[],
+ "groupBy":[],
+ "recentDay":"1-30",
+ "relation":"and",
+ "startTime":"",
+ "statType":"retention",
+ "timeParticleSize":"P1D",
+ "windows_gap":7
+ },
+ "events":[
+
+ ],
+ };
+
+ // 日期渲染
+ X.daterender("#retained-condition-date",function(start, end, label){
+ var startTime = start.format('YYYY-MM-DD')+ " "+ "00:00:00";
+ var endTime = end.format('YYYY-MM-DD')+ " "+ "23:59:59";
+ data['eventView']['startTime'] = startTime;
+ data['eventView']['endTime'] = endTime;
+ retaineddata();
+ })
+
+ var time = $("#retained-condition-date").val();
+ var timearr = time.split(" ");
+ data['eventView']['startTime'] = timearr[0] + " "+"00:00:00";
+ data['eventView']['endTime'] = timearr[2]+" "+"23:59:59";
+
+ var eventdata;
+ var filtersymbols = [[],[]];//默认两个事件
+ var groupitemeventsdata=[[],[]]//分组项里的事件
+ // var screentypearr = [];
+
+ X.api("data_auth/my_event","get",{},function(d){
+ eventdata = d;
+ var arr = [{
+ "eventDesc":eventdata[0]['category'][0]['event_desc'],
+ "eventName":eventdata[0]['category'][0]['event_name'],
+ "filts":[],
+ "relation":"and",
+ "relationUser":"and",
+ "renameindicator":""
+ },{
+ "eventDesc":eventdata[0]['category'][0]['event_desc'],
+ "eventName":eventdata[0]['category'][0]['event_name'],
+ "filts":[],
+ "relation":"and",
+ "relationUser":"and",
+ "renameindicator":""
+ }
+ ]
+ data['events'] = arr;
+ X.api("data_auth/load_filter_props","post",{event_name:d[0]['category'][0]['event_name']},function(val){
+
+ groupitemeventsdata[0] = val;
+ groupitemeventsdata[1] = val;
+ })
+ })
+
+ //初始事件
+ X.template("funnel","funnel-event",data['events']);
+ //开启重命名
+ $(document).off('click','.analysis-chongmingming-initial-event').on('click','.analysis-chongmingming-initial-event',function(){
+ $("#analysis-con-left-screen-list-left-zhibiaoname-initial-event").show();
+ $(this).hide();
+ $(".analysis-chongmingming-del-initial-event").show();
+ })
+
+ //取消重命名
+ $(document).off('click','.analysis-chongmingming-del-initial-event').on('click','.analysis-chongmingming-del-initial-event',function(){
+ $("#analysis-con-left-screen-list-left-zhibiaoname-initial-event").hide();
+ $("#analysis-con-left-screen-list-left-zhibiaoname-initial-event input").val('');
+ $(this).hide();
+ $(".analysis-chongmingming-initial-event").show();
+ })
+
+ // 添加指标
+ function addindex(){
+ var defaultindicator = {
+ "eventDesc":eventdata[0]['category'][0]['event_desc'],
+ "eventName":eventdata[0]['category'][0]['event_name'],
+ "filts":[],
+ "relation":"and",
+ "relationUser":"and",
+ "renameindicator":""
+ }
+ data['events'].push(defaultindicator);
+ X.template("funnel","funnel-event",data['events'],function(){
+ var drr = [];
+ filtersymbols.push(drr);
+ if(data['events'].length > 2){
+ $(".analysis-del").show();
+ }else {
+ $(".analysis-del").hide();
+ }
+ });
+
+ }
+
+ //添加按钮
+ $(document).off('click','.analysis-jia1').on('click','.analysis-jia1',function(){
+ addindex();
+ })
+ $(document).off('click','.funnel-updataevent').on('click','.funnel-updataevent',function(){
+ addindex();
+ })
+
+ // 添加筛选项
+ $(document).off('click','.analysis-shaix').on('click','.analysis-shaix',function(){
+ var obj = $(this);
+ var index = obj.attr("data-index");
+ addscreen(index);
+ })
+
+ // 添加筛选项
+ function addscreen(index){
+ console.log(data);
+ X.api('data_auth/load_filter_props',"post",{event_name:data['events'][index]["eventName"]},function(d){
+ console.log(d);
+ var arr = {
+ "columnDesc":groupitemeventsdata[0][0]['category'][0]['title'],
+ "columnName":groupitemeventsdata[0][0]['category'][0]['id'],
+ "comparator":"==",
+ "comparatorName":"等于",
+ "ftv":[],
+ "strftv":"",
+ "table_type":groupitemeventsdata[0][0]['category'][0]['data_type'],
+ "timeUnit":""
+ }
+ data['events'][index]['filts'].push(arr);
+ var drr=[];
+ filtersymbols.push(drr);
+ groupitemeventsdata[index] = d;
+ filtersymbols[index][filtersymbols[index].length ] = d[0]['category'][0]["category"];
+
+ X.template("funnel","funnel-event",data['events']);
+ })
+ }
+
+ $(document).off('click','.analysis-zhibiao-updata').on('click','.analysis-zhibiao-updata',function(){
+ var obj = $(this);
+ var index = obj.attr("data-index");
+ addscreen(index);
+ })
+
+ // 删除指定初始事件筛选
+ $(document).off('click','.analysis-del').on('click','.analysis-del',function(){
+ var index = $(this).attr("data-index");
+ data['events'].splice(index,1);
+ filtersymbols[index].splice(index,1);
+ // groupitemeventsdata[index].splice(index,1);
+ X.template("funnel","funnel-event",data['events']);
+ })
+
+ //删除指定筛选
+ $(document).off('click','.analysis-zhibiao-list-del').on('click','.analysis-zhibiao-list-del',function(){
+ var index = $(this).attr("data-index");
+ var indexs = $(this).attr("data-twonum");
+ data['events'][index]['filts'].splice(indexs,1);
+ filtersymbols[index].splice(indexs,1);
+ X.template("funnel","funnel-event",data['events']);
+ })
+
+ $(document).off('click','.analysis-con-left-screen-list-left-zhibiaoname-initial-event input').on('blur','.analysis-con-left-screen-list-left-zhibiaoname-initial-event input',function(){
+ var txt = $(this).val();
+ data['events'][0]['renameindicator'] = txt;
+ })
+
+ $(document).off('click','.ant-dropdown-trigger').on('click','.ant-dropdown-trigger',function(){
+ var obj = $(this);
+ var offset = obj.offset();
+ var index = obj.attr("data-index");
+ var dataevent= data['events'][index];
+ // console.log(dataevent);
+ X.querycriteriapop(eventdata,'setgrouping',offset.left,offset.top+obj.height(),function(val){
+ console.log(val);
+ obj.html(val.id);
+ dataevent['eventName'] = val.name;
+ dataevent['eventDesc'] = val.id;
+
+ X.api("data_auth/load_filter_props","post",{event_name:val.name},function(val){
+ groupitemeventsdata[index] = val;
+ })
+ // console.log(data['events']);
+
+ })
+ })
+
+ $(document).off('click','.ta-property-select').on('click','.ta-property-select',function(){
+ var obj = $(this);
+ var offset = obj.offset();
+ var index = obj.attr("data-index");
+ var indexs = obj.attr("data-indexs");
+ console.log(groupitemeventsdata);
+ X.querycriteriapop(groupitemeventsdata[index],'category',offset.left,offset.top+obj.height(),function(val){
+ console.log(val);
+ var htmlstring = val.title;
+ obj.html(htmlstring);
+ filtersymbols[index][indexs] = val.category;
+ data['events'][index]['filts'][indexs]['columnDesc'] = htmlstring;
+ data['events'][index]['filts'][indexs]['columnName'] = val.id;
+ data['events'][index]['filts'][indexs]['data_type'] = val.type;
+ data['events'][index]['filts'][indexs]['table_type'] = val.table_type;
+ })
+ })
+
+ // 过滤数据
+ function filteringdata(){
+ var screentypedata;
+ if(groupitemeventsdata.length>1){
+ for(var i =0; i < groupitemeventsdata.length - 1; i++){
+ if(i == 0){
+ X.groupintersection(groupitemeventsdata[i] , groupitemeventsdata[Number(i) + Number(1)],function(d){
+ screentypedata = d;
+ });
+ }else {
+ X.groupintersection(screentypedata , groupitemeventsdata[Number(i) + Number(1)],function(d){
+ screentypedata = d;
+ })
+ }
+ }
+ }else {
+ screentypedata = groupitemeventsdata[0];
+ }
+ return screentypedata;
+ }
+
+ $(document).off('click','.analysis-choicetypename').on('click','.analysis-choicetypename',function(){
+ var obj = $(this);
+ var offset = obj.offset();
+ var index = $(this).attr("data-index");
+ var indexs = $(this).attr("data-indexs");
+ console.log(filtersymbols);
+ X.querycriteriapop(filtersymbols[index][indexs],'dropdownlist',offset.left,offset.top+obj.height(),function(val){
+ if(val != undefined){
+ obj.html(val.title);
+ data['events'][index]['filts'][indexs]['comparatorName'] = val.title;
+ data['events'][index]['filts'][indexs]['comparator'] = val.id;
+ }
+ })
+ })
+
+ $(document).off('click','.analysis-zhibiao-list-type4 input').on('blur','.analysis-zhibiao-list-type4 input',function(){
+ var index = $(this).attr('data-index');
+ var indexs = $(this).attr('data-indexs');
+ var txt = $(this).val();
+ var txtarr = txt.split(",");
+ data['events'][index]['filts'][indexs]['strftv'] = txt;
+ data['events'][index]['filts'][indexs]['ftv'] = txtarr;
+ })
+
+ //全局筛选
+ var filtsftvdata=[];
+ $(document).off('click','.analysis-overall-situation-add').on('click','.analysis-overall-situation-add',function(){
+ var screentypedata = filteringdata();
+ var drr={
+ "columnName":screentypedata[0]['category'][0]['title'],//事件中文显示
+ "column_id":screentypedata[0]['category'][0]['id'],//事件id
+ 'data_type':screentypedata[0]['category'][0]['data_type'],//类型
+ 'comparator_name':'等于',//默认等于
+ "comparator_id":'==',//符号id
+ "ftv":[],//条件
+ "strftv":'',//显示条件
+ "section":[-1,1],//区间
+ "table_type":screentypedata[0]['id']
+ };
+ data['eventView']['filts'].push(drr);
+ filtsftvdata.push(screentypedata[0]['category'][0]['category']);
+ if(data['eventView']['filts'].length > 1){
+ $(".analysis-overall-situation-left-guanxi").show();
+ }else{
+ $(".analysis-overall-situation-left-guanxi").hide();
+ }
+ X.template("globalfilter","xinwei-whole",data['eventView']['filts'],function(){
+ analysisdown();
+ });
+ })
+
+ //删除指定全局数据
+ $(document).off('click','.analysis-overall-situation-del').on('click','.analysis-overall-situation-del',function(){
+ var index = $(this).attr('data-index');
+ data['eventView']['filts'].splice(index,1);
+ filtsftvdata.splice(index,1);
+ if(data['eventView']['filts'].length > 1){
+ $(".analysis-overall-situation-left-guanxi").show();
+ }else{
+ $(".analysis-overall-situation-left-guanxi").hide();
+ }
+ X.template("globalfilter","xinwei-whole",data['eventView']['filts'],function(){
+ analysisdown();
+ });
+ })
+
+ $(document).off('click','.analysis-overall-situation-attr').on('click','.analysis-overall-situation-attr',function(){
+ var obj = $(this);
+ var offset = obj.offset();
+ var index = obj.attr("data-index");
+ X.querycriteriapop(filteringdata(),'category',offset.left,offset.top+obj.height(),function(val){
+ console.log(val);
+ obj.html(val.title);
+ data['eventView']['filts'][index]['columnName'] = val.title;
+ data['eventView']['filts'][index]['column_id'] = val.id;
+ data['eventView']['filts'][index]['data_type'] = val.type;
+ data['eventView']['filts'][index]['comparator_name'] = '等于';
+ data['eventView']['filts'][index]['comparator_id'] = '==';
+ data['eventView']['filts'][index]['table_type'] = val.table_type;
+ filtsftvdata[index]=val.category;
+ analysisdown();//渲染下拉框
+ })
+ })
+
+ //循环给条件框渲染下拉框
+ function analysisdown(){
+ for(let i in data['eventView']['filts']){
+ X.laydropdown("#analysis-overall-situation-fuhao-"+i,filtsftvdata[i],function(val){
+ $(this).html(val.title);
+ data['eventView']['filts'][i]['comparator_name'] = val.title;
+ data['eventView']['filts'][i]['comparator_id'] = val.id;
+ if(val.id == "range"){
+ data['eventView']['filts'][i]['ftv'] = [-1,1];
+ }
+ X.template("globalfilter","xinwei-whole",data['eventView']['filts'],function(){
+ analysisdown();
+ });
+ })
+ }
+ }
+ // 分组项
+ $(document).off('click','.analysis-action-right').on('click','.analysis-action-right',function() {
+ var index = $(this).attr("data-index");
+ data.eventView.groupBy.splice(index,1);
+ X.template("grouped","shushi",data['eventView']['groupBy']);
+ $(".group-updata").show();
+ })
+
+ $(document).off('click','.analysis-footadd___2D4YB').on('click','.analysis-footadd___2D4YB',function() {
+ var arr = {
+ "columnName": "#account_id",//事件中文显示
+ "column_id": "#account_id",//事件id
+ 'data_type': "string",//类型
+ 'table_type': "event",
+ "ftv":'',//条件
+ "section":''//区间
+ };
+ data['eventView']['groupBy'].push(arr);
+ X.template("grouped","shushi",data['eventView']['groupBy']);
+ $(this).hide();
+ })
+
+ $(document).off('click','.analysis-ant-dropdown-trigger').on('click','.analysis-ant-dropdown-trigger',function(){
+ var obj = $(this);
+ var offset = obj.offset();
+ var index = obj.attr("data-index");
+ X.querycriteriapop(filteringdata(),'category',offset.left,offset.top+obj.height(),function(val){
+ console.log(val);
+ var htmlstring = val.title;
+ obj.html(htmlstring);
+ data.eventView.groupBy[index]['columnName'] = val.title;
+ data.eventView.groupBy[index]['column_id'] = val.id;
+ data.eventView.groupBy[index]['data_type'] = val.type;
+ data.eventView.groupBy[index]['table_type'] = val.table_type;
+ })
+ })
+
+ // sql语句显示
+ $(document).off('click','.sqlquery').on('click','.sqlquery',function(){
+ var obj = $(this);
+ var offset = obj.offset();
+ X.querycriteriapop(data,'conditionquery',offset.left - 410,offset.top+obj.height(),function(){
+
+ })
+ })
+
+ // 时间粒度
+ var timeParticleSizearr = [
+ {'title':'1天','id':'1'},
+ {'title':'7日','id':'7'},
+ {'title':'14日','id':'14'},
+ {'title':'30日','id':'30'},
+ ]
+ X.laydropdown('.analtsis-timeParticleSize',timeParticleSizearr,function(d){
+ $(".analtsis-timeParticleSize").html(d.title);
+ data['eventView']['windows_gap'] = parseInt(d.id);
+ retaineddata();
+ })
+
+ // 计算按钮
+ $(document).off('click','.analysis-calculation').on('click','.analysis-calculation',function(){
+ console.log(data);
+
+ retaineddata()
+ })
+ var querydata;
+ function retaineddata(){
+ X.api("ck/funnel_model","post",data,function(d){
+ d['etitle'] = $.extend(true,[],d['title']);
+ if(d['title'].length == 2){
+ d['etitle'].unshift('总体');
+ }
+ querydata = d;
+ updata(d)
+ })
+ }
+
+ function updata(d){
+ var title = $(".select-chart").attr("title");
+ if(title == '转化图'){ retainedtable(d); retaineddayRetained(d);}
+ else if(title == '趋势图'){ retainednRetained(d);retainednRetainedtable(d); }
+ }
+
+ function retainedtable(d){
+ var tabledata=[];
+ for(let i in d['list']){
+ var arr = {
+ title: d['list'][i]["title"],
+ data:[]
+ }
+ for(let j in d['list'][i]["n"]){
+ var nrr = {
+ n:0,
+ p:0
+ }
+ nrr["n"] = d['list'][i]["n"][j];
+ nrr["p"] = d['list'][i]["p1"][j]
+ arr['data'].push(nrr);
+ }
+ tabledata.push(arr)
+ }
+
+ X.laytpldata("#table-fenxi-th-dot",d.etitle,".table-fenxi-th");
+ X.laytpldata("#table-fenxi-td-dot",tabledata,".table-fenxi-td");
+ }
+
+ //转化图
+ function retaineddayRetained(d){
+ var arr = {};
+ var xAxisData= d['level'];
+ var seriesData=[];
+
+ for(let i in d['list']){
+ var arr = {
+ name: d['list'][i]['title'],
+ type: 'bar',
+ barMaxWidth : 30,
+ data: d['list'][i]['p1']
+ }
+ seriesData.push(arr);
+ }
+
+ var myChart = echarts.init(document.getElementById('funnel-echarts'));
+ var option = {
+ color: X.DATA.echartscolor,
+ tooltip: {
+ trigger: 'axis',
+ axisPointer: {
+ type: 'cross',
+ label: {
+ backgroundColor: '#6a7985'
+ }
+ }
+ },
+ grid: {
+ left: '2%',
+ right: '2%',
+ bottom: '5%',
+ top: '10%',
+ },
+ xAxis: [
+ {
+ type: 'category',
+ data: xAxisData
+ }
+ ],
+ yAxis: [
+ {
+ type: 'value'
+ }
+ ],
+ series: seriesData
+ };
+ myChart.setOption(option,true);
+ }
+ // 趋势图
+ function retainednRetained(d){
+ var arr = {};
+ var legenddata = [];
+ var seriesData = [];
+ var xAxisdata = [];
+ if(jQuery.isEmptyObject(d.date_data)){
+ var arr = []
+ for(let i in d['summary_values']){
+ var index = d['summary_values'][i]['p'].length - 1;
+ arr.push(d['summary_values'][i]['p'][index]);
+ }
+
+ seriesData = {
+ type: 'line',
+ data: arr
+ }
+ }else {
+ var arr =[];
+ for(let i in d['date_data']){
+ xAxisdata.push(i);
+ for(let j in d['date_data'][i]){
+ if(arr[j]){
+ arr[j][i] = d['date_data'][i][j]['p1'];
+ }else {
+ arr[j]=[];
+ arr[j][i] = d['date_data'][i][j]['p1'];
+ }
+ }
+ }
+
+ var ydata = {};
+ for(let j in arr){
+ if(!ydata[j]){
+ ydata[j] = [];
+ }
+ for( let i in xAxisdata ){
+ ydata[j].push("");
+ for(let z in arr[j]){
+ if(xAxisdata[i] == z){
+ var index = arr[j][z].length - 1;
+ ydata[j][i] =arr[j][z][index];
+ }
+ }
+ }
+ }
+
+ for(let i in ydata){
+ legenddata.push(i);
+ var arr = {
+ name: i,
+ type: 'line',
+ data: ydata[i]
+ }
+ seriesData.push(arr)
+ }
+
+ }
+ var myChart = echarts.init(document.getElementById('funnel-echarts'));
+ var option = {
+ title: {
+ text: ''
+ },
+ color: [ '#3ea7fd', '#cdddfd', '#5ad8a6', '#cdf3e4', '#5d7092', '#ced4de', '#f6bd16','#fcebb9','#e86452','#f8d0cb','#6dc8ec', '#d3eef9', '#9270ca', '#d3c6ea', '#ff9d4d', '#ffd8b8', '#269a99','#aad8d8','#ff99c3','#ffd6e7' ],
+ tooltip: {
+ trigger: 'axis',
+ axisPointer: {
+ type: 'cross',
+ label: {
+ backgroundColor: '#6a7985'
+ }
+ }
+ },
+ legend: {
+ type:'scroll',
+ data: legenddata
+ },
+ grid: {
+ left: '2%',
+ right: '2%',
+ bottom: '2%',
+ top: '10%',
+ containLabel: true
+ },
+ xAxis: [
+ {
+ type: 'category',
+ boundaryGap: false,
+ data: xAxisdata
+ }
+ ],
+ yAxis: [
+ {
+ type: 'value'
+ }
+ ],
+ series: seriesData
+ };
+ myChart.setOption(option,true);
+
+ }
+ //趋势图表格
+ function retainednRetainedtable(d){
+ var arr = {};
+ var seriesData = [];
+ var xAxisdata = [];
+ if(jQuery.isEmptyObject(d.date_data)){
+ var arr = []
+ for(let i in d['summary_values']){
+ var index = d['summary_values'][i]['p'].length - 1;
+ arr.push(d['summary_values'][i]['p'][index]);
+ }
+
+ seriesData = {
+ type: 'line',
+ data: arr
+ }
+ }else {
+ var arr =[];
+ for(let i in d['date_data']){
+ xAxisdata.push(i);
+ for(let j in d['date_data'][i]){
+ if(arr[j]){
+ arr[j][i] = d['date_data'][i][j]['p1'];
+ }else {
+ arr[j]=[];
+ arr[j][i] = d['date_data'][i][j]['p1'];
+ }
+ }
+ }
+
+ var ydata = {};
+ for(let j in arr){
+ if(!ydata[j]){
+ ydata[j] = [];
+ }
+ for( let i in xAxisdata ){
+ ydata[j].push(0);
+ for(let z in arr[j]){
+ if(xAxisdata[i] == z){
+ var index = arr[j][z].length - 1;
+ ydata[j][i] =arr[j][z][index];
+ }
+ }
+ }
+ }
+
+ }
+ xAxisdata.unshift('总体');
+
+ var tabdata = [];
+ for(let i in ydata){
+ var arr = {
+ 'title': i,
+ 'data':[]
+ }
+ for(let j in ydata[i]){
+ var nrr = {
+ n:'',
+ p:ydata[i][j]
+ }
+ arr['data'].push(nrr);
+ }
+ tabdata.push(arr);
+ }
+ console.log(tabdata);
+ X.laytpldata("#table-fenxi-th-dot",xAxisdata,".table-fenxi-th");
+ X.laytpldata("#table-fenxi-td-dot",tabdata,".table-fenxi-td");
+ }
+
+ var querydata;
+ $(document).off('click','.analtsis-chart-switch').on('click','.analtsis-chart-switch',function(){
+ if(querydata){
+ $('.analtsis-chart-switch-box .analtsis-chart-switch').removeClass('select-chart');
+ $(this).addClass('select-chart');
+ if($(this).attr('title') == '转化图'){ retainedtable(querydata); retaineddayRetained(querydata)}
+ else if($(this).attr('title') == '趋势图'){
+ retainednRetained(querydata);
+ retainednRetainedtable(querydata);
+ }
+ }else{
+ layer.msg('请先计算数据,在切换图表');
+ }
+ })
+
+ }
+ };
+})();
\ No newline at end of file
diff --git a/web/srczip/logic/retained.js b/web/srczip/logic/retained.js
index f37f38a..81ef01a 100644
--- a/web/srczip/logic/retained.js
+++ b/web/srczip/logic/retained.js
@@ -6,22 +6,21 @@
X.template("grouped","shushi");
var data ={
- "eventView":{
- "cksql":"retention",
- "endTime":"2021-06-07 23:59:59",
- "filts":[],
- "groupBy":[],
- "recentDay":"1-30",
- "relation":"and",
- "startTime":"2021-05-09 00:00:00",
- "statType":"retention",
- "timeParticleSize":"P1D",
- "unitNum":7
- },
- "events":[
-
- ],
- "projectId":1
+ "eventView":{
+ "cksql":"retention",
+ "endTime":"2021-06-07 23:59:59",
+ "filts":[],
+ "groupBy":[],
+ "recentDay":"1-30",
+ "relation":"and",
+ "startTime":"2021-05-09 00:00:00",
+ "statType":"retention",
+ "timeParticleSize":"P1D",
+ "unitNum":7
+ },
+ "events":[
+
+ ],
};
// 日期渲染
@@ -38,12 +37,6 @@
data['eventView']['startTime'] = timearr[0] + " "+"00:00:00";
data['eventView']['endTime'] = timearr[2]+" "+"23:59:59";
- X.grouped(data['eventView']['groupBy'],"#shushi");
-
- // $(document).off('click','.analysis-calculation').on("click",'.analysis-calculation',function(){
- // console.log(211);
- // })
-
var eventdata;
var filtersymbols = [[],[]];//默认两个事件
var groupitemeventsdata=[[],[]]//分组项里的事件
@@ -538,7 +531,7 @@
title: {
text: ''
},
- color: [ '#3ea7fd', '#cdddfd', '#5ad8a6', '#cdf3e4', '#5d7092', '#ced4de', '#f6bd16','#fcebb9','#e86452','#f8d0cb','#6dc8ec', '#d3eef9', '#9270ca', '#d3c6ea', '#ff9d4d', '#ffd8b8', '#269a99','#aad8d8','#ff99c3','#ffd6e7' ],
+ color: X.DATA.echartscolor,
tooltip: {
trigger: 'axis',
axisPointer: {
@@ -604,7 +597,6 @@
}
}
}
-
var ydata = {};
for(let j in arr){
if(!ydata[j]){
@@ -620,7 +612,6 @@
}
}
}
-
for(let i in ydata){
legenddata.push(i);
var arr = {
@@ -630,6 +621,7 @@
}
seriesData.push(arr)
}
+
}
var myChart = echarts.init(document.getElementById('analysis-echarts'));
@@ -637,7 +629,7 @@
title: {
text: ''
},
- color: [ '#3ea7fd', '#cdddfd', '#5ad8a6', '#cdf3e4', '#5d7092', '#ced4de', '#f6bd16','#fcebb9','#e86452','#f8d0cb','#6dc8ec', '#d3eef9', '#9270ca', '#d3c6ea', '#ff9d4d', '#ffd8b8', '#269a99','#aad8d8','#ff99c3','#ffd6e7' ],
+ color: X.DATA.echartscolor,
tooltip: {
trigger: 'axis',
axisPointer: {
diff --git a/web/static/css/analysis.css b/web/static/css/analysis.css
index 50183f5..4244f76 100644
--- a/web/static/css/analysis.css
+++ b/web/static/css/analysis.css
@@ -16,7 +16,7 @@
.analysis-con-left { width: 550px; height: 100%; background-color: #ffffff; }
.analysis-con-right { width: calc(100% - 550px); height: 100%;}
-.analtsis-con-box { height: calc(100% - 153px); margin: 16px; background-color: #ffffff; }
+.analtsis-con-box { height: calc(100% - 153px); margin: 16px; background-color: #ffffff; overflow: auto; }
.analysis-con-left-shrink { background-color: #ffffff !important; z-index: 999999; position: absolute; top: 0; left: 537px; margin: auto; bottom: 125px; border: 1px solid #f0f2f5; width: 24px; height: 24px; border-radius: 24px; line-height: 30px; cursor: pointer; text-align: center; background: url('../img/zuoshuangjiantou.png') no-repeat 100%; background-position: center;}
.analysis-con-left-shrink:hover{ border-color: #3d90ff; box-shadow: 0 0px 6px #3d90ff; background: url('../img/zuoshuangjiantou2.png') no-repeat 100%; background-position: center;}
@@ -150,6 +150,10 @@
.analysis-footadd___2D4YB { display: inline-block; margin-right: 16px; padding: 4px; color: #3d90ff; font-size: 13px; line-height: 16px; border-radius: 2px; cursor: pointer; }
.analysis-footadd___2D4YB img { width: 13px; height: 13px; }
.analysis-footadd___2D4YB:hover { background-color: #f1f8ff; }
+.funnel-updataevent { display: inline-block; margin-right: 16px; padding: 4px; color: #3d90ff; font-size: 13px; line-height: 16px; border-radius: 2px; cursor: pointer; }
+.funnel-updataevent img { width: 13px; height: 13px; }
+.funnel-updataevent:hover { background-color: #f1f8ff; }
+
.bgcolor { background-color: #6bb2ff; }
.analysis-action-left { display: flex; align-items: center; }
.analysis-ant-dropdown-trigger { color: #67729d; margin: 6px 0 6px 6px; padding: 0 6px; min-width: 40px; height: 28px; font-size: 13px; line-height: 26px; white-space: nowrap; vertical-align: top; border: 1px solid #f0f2f5; cursor: pointer; border-radius: 2px; }
@@ -196,6 +200,8 @@
.analtsis-chart-switch-box { display: flex; align-items: center; }
.analtsis-chart-switch { width: 28px; height: 28px; text-align: center; line-height: 28px; border: 1px solid #f0f0f0; cursor: pointer; color: #67729d; }
.select-chart { background-color: #3d90ff; border-right: #3d90ff; color: #fff; }
+.analtsis-timeParticleSize { max-width: 40px; }
+.windows_gap { margin-left: 16px; }
.analysis-overall-situation-add { display: inline-block; margin-right: 16px; padding: 4px; color: #3d90ff; font-size: 13px; line-height: 16px; border-radius: 2px; cursor: pointer; }
.analysis-overall-situation-add img { width: 13px; height: 13px; }