111
This commit is contained in:
parent
5ca1930de7
commit
f44f2999b6
@ -76,11 +76,17 @@
|
|||||||
|
|
||||||
<div class="condition-box controlhover">
|
<div class="condition-box controlhover">
|
||||||
<div class="time-cond">
|
<div class="time-cond">
|
||||||
<span>
|
<span>过去7天</span>
|
||||||
过去7天
|
|
||||||
</span>
|
|
||||||
<div class="xian"></div>
|
<div class="xian"></div>
|
||||||
<span>按天</span>
|
<span>按天</span>
|
||||||
|
{{# if(d.cat === "retention"){ }}
|
||||||
|
<div class="xian"></div>
|
||||||
|
{{# if(d.retentiontype === 0){ }}
|
||||||
|
<span class="kanben-retained-type" id="retention{{d.id}}">留存</span>
|
||||||
|
{{# } else { }}
|
||||||
|
<span class="kanben-retained-type" id="retention{{d.id}}">流失</span>
|
||||||
|
{{# } }}
|
||||||
|
{{# } }}
|
||||||
</div>
|
</div>
|
||||||
<div class="chart control" id="chart{{d.id}}" data-modelsize="{{d.modelsize}}" data-modeltype={{d.modeltype}} data-cat="{{d.cat}}" data-name="{{d.name}}" data-id="{{d.id}}">
|
<div class="chart control" id="chart{{d.id}}" data-modelsize="{{d.modelsize}}" data-modeltype={{d.modeltype}} data-cat="{{d.cat}}" data-name="{{d.name}}" data-id="{{d.id}}">
|
||||||
<img src="./static/img/qvshitu.png" /> <span>报表</span>
|
<img src="./static/img/qvshitu.png" /> <span>报表</span>
|
||||||
@ -203,6 +209,14 @@
|
|||||||
<span>过去7天</span>
|
<span>过去7天</span>
|
||||||
<div class="xian"></div>
|
<div class="xian"></div>
|
||||||
<span>按天</span>
|
<span>按天</span>
|
||||||
|
{{# if(d.cat === "retention"){ }}
|
||||||
|
<div class="xian"></div>
|
||||||
|
{{# if(d.retentiontype === 0){ }}
|
||||||
|
<span class="kanben-retained-type" id="retention{{d.id}}">留存</span>
|
||||||
|
{{# } else { }}
|
||||||
|
<span class="kanben-retained-type" id="retention{{d.id}}">流失</span>
|
||||||
|
{{# } }}
|
||||||
|
{{# } }}
|
||||||
</div>
|
</div>
|
||||||
<div class="chart control" id="chart{{d.id}}" data-modelsize="{{d.modelsize}}" data-modeltype={{d.modeltype}} data-cat="{{d.cat}}" data-name="{{d.name}}" data-id="{{d.id}}">
|
<div class="chart control" id="chart{{d.id}}" data-modelsize="{{d.modelsize}}" data-modeltype={{d.modeltype}} data-cat="{{d.cat}}" data-name="{{d.name}}" data-id="{{d.id}}">
|
||||||
<img src="./static/img/qvshitu.png" /> <span>趋势图</span>
|
<img src="./static/img/qvshitu.png" /> <span>趋势图</span>
|
||||||
|
105
web/src/x.min.js
vendored
105
web/src/x.min.js
vendored
@ -28,31 +28,7 @@ var X = window.X || {
|
|||||||
//用户搜索条件
|
//用户搜索条件
|
||||||
'search':{
|
'search':{
|
||||||
category:[
|
category:[
|
||||||
{
|
|
||||||
'title':'全部',
|
|
||||||
'id':'0',
|
|
||||||
'Category':[]
|
|
||||||
},
|
|
||||||
{
|
|
||||||
'title':'用户属性',
|
|
||||||
'id':'1',
|
|
||||||
'Category':[
|
|
||||||
{'title':'账户ID','id':'10','type':'string'},
|
|
||||||
{'title':'访客ID','id':'11','type':'string'},
|
|
||||||
{'title':'注册时间','id':'12','type':'time'},
|
|
||||||
{'title':'来源渠道','id':'13','type':'time'},
|
|
||||||
]
|
|
||||||
},
|
|
||||||
{
|
|
||||||
'title':'测试',
|
|
||||||
'id':'2',
|
|
||||||
'Category':[
|
|
||||||
{'title':'账户ID','id':'10','type':'string'},
|
|
||||||
{'title':'访客ID','id':'11','type':'string'},
|
|
||||||
{'title':'注册时间','id':'12','type':'time'},
|
|
||||||
{'title':'来源渠道','id':'13','type':'time'},
|
|
||||||
]
|
|
||||||
}
|
|
||||||
],
|
],
|
||||||
condition:[
|
condition:[
|
||||||
{'title':'等于','id':'0','default':false},
|
{'title':'等于','id':'0','default':false},
|
||||||
@ -612,6 +588,14 @@ var X = window.X || {
|
|||||||
};
|
};
|
||||||
|
|
||||||
X.retentiontable=function(data,callback){
|
X.retentiontable=function(data,callback){
|
||||||
|
var nname,pname
|
||||||
|
if(data.retentiontype == 0) {
|
||||||
|
nname = 'n';
|
||||||
|
pname = 'p';
|
||||||
|
}else {
|
||||||
|
nname = 'n_outflow';
|
||||||
|
pname = 'p_outflow';
|
||||||
|
}
|
||||||
var tabledata=[];
|
var tabledata=[];
|
||||||
for(let i in data['summary_values']){
|
for(let i in data['summary_values']){
|
||||||
var arr = {
|
var arr = {
|
||||||
@ -619,13 +603,13 @@ var X = window.X || {
|
|||||||
d0:data['summary_values'][i]['d0'],
|
d0:data['summary_values'][i]['d0'],
|
||||||
data:[]
|
data:[]
|
||||||
}
|
}
|
||||||
for(let j in data['summary_values'][i]["n"]){
|
for(let j in data['summary_values'][i][nname]){
|
||||||
var nrr = {
|
var nrr = {
|
||||||
n:0,
|
n:0,
|
||||||
p:0
|
p:0
|
||||||
}
|
}
|
||||||
nrr["n"] = data['summary_values'][i]["n"][j];
|
nrr["n"] = data['summary_values'][i][nname][j];
|
||||||
nrr["p"] = data['summary_values'][i]["p"][j]
|
nrr["p"] = data['summary_values'][i][pname][j]
|
||||||
arr['data'].push(nrr);
|
arr['data'].push(nrr);
|
||||||
}
|
}
|
||||||
tabledata.push(arr);
|
tabledata.push(arr);
|
||||||
@ -639,12 +623,21 @@ var X = window.X || {
|
|||||||
titdata.unshift("日期",data.title);
|
titdata.unshift("日期",data.title);
|
||||||
var dataArr = {
|
var dataArr = {
|
||||||
titledata:titdata,
|
titledata:titdata,
|
||||||
condata:tabledata
|
condata:tabledata,
|
||||||
|
retentiontype:data.retentiontype
|
||||||
}
|
}
|
||||||
callback && callback(dataArr);
|
callback && callback(dataArr);
|
||||||
};
|
};
|
||||||
|
|
||||||
X.retentionchart = function(d,callback){
|
X.retentionchart = function(d,callback){
|
||||||
|
var nname,pname
|
||||||
|
if(d.retentiontype == 0) {
|
||||||
|
nname = 'n';
|
||||||
|
pname = 'p';
|
||||||
|
}else {
|
||||||
|
nname = 'n_outflow';
|
||||||
|
pname = 'p_outflow';
|
||||||
|
}
|
||||||
var arr = {};
|
var arr = {};
|
||||||
var legenddata = [];
|
var legenddata = [];
|
||||||
var seriesData = [];
|
var seriesData = [];
|
||||||
@ -653,8 +646,8 @@ var X = window.X || {
|
|||||||
if(jQuery.isEmptyObject(d.values)){
|
if(jQuery.isEmptyObject(d.values)){
|
||||||
var arr = []
|
var arr = []
|
||||||
for(let i in d['summary_values']){
|
for(let i in d['summary_values']){
|
||||||
var index = d['summary_values'][i]['p'].length - 1;
|
var index = d['summary_values'][i][pname].length - 1;
|
||||||
arr.push(d['summary_values'][i]['p'][index]);
|
arr.push(d['summary_values'][i][pname][index]);
|
||||||
xAxisData.push(i);
|
xAxisData.push(i);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -675,10 +668,10 @@ var X = window.X || {
|
|||||||
timearr.push(i);
|
timearr.push(i);
|
||||||
for(let j in d.values[i]){
|
for(let j in d.values[i]){
|
||||||
if(arr[j]){
|
if(arr[j]){
|
||||||
arr[j][i] = d.values[i][j]['p'];
|
arr[j][i] = d.values[i][j][pname];
|
||||||
}else {
|
}else {
|
||||||
arr[j]=[];
|
arr[j]=[];
|
||||||
arr[j][i] = d.values[i][j]['p'];
|
arr[j][i] = d.values[i][j][pname];
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -716,7 +709,8 @@ var X = window.X || {
|
|||||||
date:date,
|
date:date,
|
||||||
sum:sum.toFixed(2),
|
sum:sum.toFixed(2),
|
||||||
mean:mean,
|
mean:mean,
|
||||||
sameday: sameday
|
sameday: sameday,
|
||||||
|
retentiontype:d.retentiontype
|
||||||
}
|
}
|
||||||
// console.log(dataArr);
|
// console.log(dataArr);
|
||||||
callback && callback(dataArr);
|
callback && callback(dataArr);
|
||||||
@ -2047,13 +2041,14 @@ var X = window.X || {
|
|||||||
});
|
});
|
||||||
|
|
||||||
// 监听文本框
|
// 监听文本框
|
||||||
$(document).off('click','.analysis-zhibiao-list-type4 input').on('blur','.analysis-zhibiao-list-type4 input',function(){
|
$(document).off('click','.analysis-zhibiao-list-type4 input').on('change','.analysis-zhibiao-list-type4 input',function(){
|
||||||
var index = $(this).attr("data-index");
|
var index = $(this).attr("data-index");
|
||||||
var indexs = $(this).attr("data-indexs");
|
var indexs = $(this).attr("data-indexs");
|
||||||
var val = $(this).val();
|
var val = $(this).val();
|
||||||
var valarr = val.split(",");
|
var valarr = val.split(",");
|
||||||
data['events'][index]['filts'][indexs]['ftv']=valarr;
|
data['events'][index]['filts'][indexs]['ftv']=valarr;
|
||||||
data['events'][index]['filts'][indexs]['strftv']=val;
|
data['events'][index]['filts'][indexs]['strftv']=val;
|
||||||
|
console.log(val);
|
||||||
});
|
});
|
||||||
|
|
||||||
// 且和或切换
|
// 且和或切换
|
||||||
@ -3879,7 +3874,7 @@ var X = window.X || {
|
|||||||
var id = $(this).attr('data-id');
|
var id = $(this).attr('data-id');
|
||||||
// console.log(id);
|
// console.log(id);
|
||||||
X.api('dashboard/','post',{id:X.DATA['dashboard_id']},function(d){
|
X.api('dashboard/','post',{id:X.DATA['dashboard_id']},function(d){
|
||||||
return;
|
// return;
|
||||||
X.pageLogic['dashboard'].fillmodeldata(d[id]);
|
X.pageLogic['dashboard'].fillmodeldata(d[id]);
|
||||||
|
|
||||||
})
|
})
|
||||||
@ -3976,7 +3971,8 @@ var X = window.X || {
|
|||||||
},
|
},
|
||||||
|
|
||||||
//填充看板数据
|
//填充看板数据
|
||||||
fillmodeldata:function(d,id){
|
//总体逻辑是:根据获取到的看板内容去先渲染放置的框,在根据不同分析模型处理对应的数据进行填充
|
||||||
|
fillmodeldata:function(d,id,type){//
|
||||||
// console.log(d);
|
// console.log(d);
|
||||||
X.api("ck/"+d['model']+"_model","post",{report_id:d['report_id']},function(val){
|
X.api("ck/"+d['model']+"_model","post",{report_id:d['report_id']},function(val){
|
||||||
var eventdata=[];
|
var eventdata=[];
|
||||||
@ -4018,6 +4014,11 @@ var X = window.X || {
|
|||||||
|
|
||||||
} else if(d['model'] == "retention"){
|
} else if(d['model'] == "retention"){
|
||||||
//留存分析
|
//留存分析
|
||||||
|
if(type){
|
||||||
|
val['retentiontype'] = type;
|
||||||
|
}else {
|
||||||
|
val['retentiontype'] = 0
|
||||||
|
}
|
||||||
if(d['graph_size'] == 'small'){
|
if(d['graph_size'] == 'small'){
|
||||||
|
|
||||||
}else {
|
}else {
|
||||||
@ -4109,6 +4110,8 @@ var X = window.X || {
|
|||||||
// $('.layui-row').dad({
|
// $('.layui-row').dad({
|
||||||
// draggable:'table'
|
// draggable:'table'
|
||||||
// });
|
// });
|
||||||
|
|
||||||
|
|
||||||
})
|
})
|
||||||
},
|
},
|
||||||
|
|
||||||
@ -4146,6 +4149,29 @@ var X = window.X || {
|
|||||||
|
|
||||||
});
|
});
|
||||||
console.log(eventdata);
|
console.log(eventdata);
|
||||||
|
// 留存分析模板特定留存流失按钮
|
||||||
|
var retentionlist = [
|
||||||
|
{'title':'留存','id':0},
|
||||||
|
{'title':'流失','id':1},
|
||||||
|
]
|
||||||
|
if(eventdata.cat == 'retention'){
|
||||||
|
X.laydropdown("#retention"+eventdata.id,retentionlist,function(d){
|
||||||
|
console.log(d.id);
|
||||||
|
console.log(eventdata);
|
||||||
|
var retentiontype = d.id;
|
||||||
|
var modelid = "retention"+eventdata.id;
|
||||||
|
X.api('dashboard/','post',{id:X.DATA['dashboard_id']},function(val){
|
||||||
|
for(let i in val){
|
||||||
|
if(val[i]['report_id'] == eventdata.id){
|
||||||
|
X.pageLogic['dashboard'].fillmodeldata(val[i],modelid,retentiontype);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
})
|
||||||
|
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
if(eventdata['modeltype'] == 'echarts' && eventdata['modelsize'] != 'small' ){
|
if(eventdata['modeltype'] == 'echarts' && eventdata['modelsize'] != 'small' ){
|
||||||
var myChart = echarts.init(document.getElementById(eventdata['id']));
|
var myChart = echarts.init(document.getElementById(eventdata['id']));
|
||||||
if(eventdata['cat'] == 'user_property'){
|
if(eventdata['cat'] == 'user_property'){
|
||||||
@ -4235,7 +4261,8 @@ var X = window.X || {
|
|||||||
|
|
||||||
},
|
},
|
||||||
|
|
||||||
// 获取表格数据
|
//获取表格数据
|
||||||
|
//渲染外框大小位置
|
||||||
gettabledata:function(){
|
gettabledata:function(){
|
||||||
$("#model-box").html("");//清空表格数据
|
$("#model-box").html("");//清空表格数据
|
||||||
X.api('dashboard/','post',{id:X.DATA['dashboard_id']},function(d){
|
X.api('dashboard/','post',{id:X.DATA['dashboard_id']},function(d){
|
||||||
@ -8321,8 +8348,8 @@ var X = window.X || {
|
|||||||
titdata.push(tit);
|
titdata.push(tit);
|
||||||
}
|
}
|
||||||
titdata.unshift("日期",d.title);
|
titdata.unshift("日期",d.title);
|
||||||
|
// X.fixedTable=function(id,type,classname,headdata){
|
||||||
X.laytpldata("#table-fenxi-th-dot",titdata,".table-fenxi-th");
|
X.laytpldata("#table-fenxi-th-dot",titdata,".table-fenxi-th");
|
||||||
|
|
||||||
X.laytpldata("#table-fenxi-td-dot",tabledata,".table-fenxi-td");
|
X.laytpldata("#table-fenxi-td-dot",tabledata,".table-fenxi-td");
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@ -27,31 +27,7 @@ var X = window.X || {
|
|||||||
//用户搜索条件
|
//用户搜索条件
|
||||||
'search':{
|
'search':{
|
||||||
category:[
|
category:[
|
||||||
{
|
|
||||||
'title':'全部',
|
|
||||||
'id':'0',
|
|
||||||
'Category':[]
|
|
||||||
},
|
|
||||||
{
|
|
||||||
'title':'用户属性',
|
|
||||||
'id':'1',
|
|
||||||
'Category':[
|
|
||||||
{'title':'账户ID','id':'10','type':'string'},
|
|
||||||
{'title':'访客ID','id':'11','type':'string'},
|
|
||||||
{'title':'注册时间','id':'12','type':'time'},
|
|
||||||
{'title':'来源渠道','id':'13','type':'time'},
|
|
||||||
]
|
|
||||||
},
|
|
||||||
{
|
|
||||||
'title':'测试',
|
|
||||||
'id':'2',
|
|
||||||
'Category':[
|
|
||||||
{'title':'账户ID','id':'10','type':'string'},
|
|
||||||
{'title':'访客ID','id':'11','type':'string'},
|
|
||||||
{'title':'注册时间','id':'12','type':'time'},
|
|
||||||
{'title':'来源渠道','id':'13','type':'time'},
|
|
||||||
]
|
|
||||||
}
|
|
||||||
],
|
],
|
||||||
condition:[
|
condition:[
|
||||||
{'title':'等于','id':'0','default':false},
|
{'title':'等于','id':'0','default':false},
|
||||||
@ -611,6 +587,14 @@ var X = window.X || {
|
|||||||
};
|
};
|
||||||
|
|
||||||
X.retentiontable=function(data,callback){
|
X.retentiontable=function(data,callback){
|
||||||
|
var nname,pname
|
||||||
|
if(data.retentiontype == 0) {
|
||||||
|
nname = 'n';
|
||||||
|
pname = 'p';
|
||||||
|
}else {
|
||||||
|
nname = 'n_outflow';
|
||||||
|
pname = 'p_outflow';
|
||||||
|
}
|
||||||
var tabledata=[];
|
var tabledata=[];
|
||||||
for(let i in data['summary_values']){
|
for(let i in data['summary_values']){
|
||||||
var arr = {
|
var arr = {
|
||||||
@ -618,13 +602,13 @@ var X = window.X || {
|
|||||||
d0:data['summary_values'][i]['d0'],
|
d0:data['summary_values'][i]['d0'],
|
||||||
data:[]
|
data:[]
|
||||||
}
|
}
|
||||||
for(let j in data['summary_values'][i]["n"]){
|
for(let j in data['summary_values'][i][nname]){
|
||||||
var nrr = {
|
var nrr = {
|
||||||
n:0,
|
n:0,
|
||||||
p:0
|
p:0
|
||||||
}
|
}
|
||||||
nrr["n"] = data['summary_values'][i]["n"][j];
|
nrr["n"] = data['summary_values'][i][nname][j];
|
||||||
nrr["p"] = data['summary_values'][i]["p"][j]
|
nrr["p"] = data['summary_values'][i][pname][j]
|
||||||
arr['data'].push(nrr);
|
arr['data'].push(nrr);
|
||||||
}
|
}
|
||||||
tabledata.push(arr);
|
tabledata.push(arr);
|
||||||
@ -638,12 +622,21 @@ var X = window.X || {
|
|||||||
titdata.unshift("日期",data.title);
|
titdata.unshift("日期",data.title);
|
||||||
var dataArr = {
|
var dataArr = {
|
||||||
titledata:titdata,
|
titledata:titdata,
|
||||||
condata:tabledata
|
condata:tabledata,
|
||||||
|
retentiontype:data.retentiontype
|
||||||
}
|
}
|
||||||
callback && callback(dataArr);
|
callback && callback(dataArr);
|
||||||
};
|
};
|
||||||
|
|
||||||
X.retentionchart = function(d,callback){
|
X.retentionchart = function(d,callback){
|
||||||
|
var nname,pname
|
||||||
|
if(d.retentiontype == 0) {
|
||||||
|
nname = 'n';
|
||||||
|
pname = 'p';
|
||||||
|
}else {
|
||||||
|
nname = 'n_outflow';
|
||||||
|
pname = 'p_outflow';
|
||||||
|
}
|
||||||
var arr = {};
|
var arr = {};
|
||||||
var legenddata = [];
|
var legenddata = [];
|
||||||
var seriesData = [];
|
var seriesData = [];
|
||||||
@ -652,8 +645,8 @@ var X = window.X || {
|
|||||||
if(jQuery.isEmptyObject(d.values)){
|
if(jQuery.isEmptyObject(d.values)){
|
||||||
var arr = []
|
var arr = []
|
||||||
for(let i in d['summary_values']){
|
for(let i in d['summary_values']){
|
||||||
var index = d['summary_values'][i]['p'].length - 1;
|
var index = d['summary_values'][i][pname].length - 1;
|
||||||
arr.push(d['summary_values'][i]['p'][index]);
|
arr.push(d['summary_values'][i][pname][index]);
|
||||||
xAxisData.push(i);
|
xAxisData.push(i);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -674,10 +667,10 @@ var X = window.X || {
|
|||||||
timearr.push(i);
|
timearr.push(i);
|
||||||
for(let j in d.values[i]){
|
for(let j in d.values[i]){
|
||||||
if(arr[j]){
|
if(arr[j]){
|
||||||
arr[j][i] = d.values[i][j]['p'];
|
arr[j][i] = d.values[i][j][pname];
|
||||||
}else {
|
}else {
|
||||||
arr[j]=[];
|
arr[j]=[];
|
||||||
arr[j][i] = d.values[i][j]['p'];
|
arr[j][i] = d.values[i][j][pname];
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -715,7 +708,8 @@ var X = window.X || {
|
|||||||
date:date,
|
date:date,
|
||||||
sum:sum.toFixed(2),
|
sum:sum.toFixed(2),
|
||||||
mean:mean,
|
mean:mean,
|
||||||
sameday: sameday
|
sameday: sameday,
|
||||||
|
retentiontype:d.retentiontype
|
||||||
}
|
}
|
||||||
// console.log(dataArr);
|
// console.log(dataArr);
|
||||||
callback && callback(dataArr);
|
callback && callback(dataArr);
|
||||||
|
@ -371,13 +371,14 @@
|
|||||||
});
|
});
|
||||||
|
|
||||||
// 监听文本框
|
// 监听文本框
|
||||||
$(document).off('click','.analysis-zhibiao-list-type4 input').on('blur','.analysis-zhibiao-list-type4 input',function(){
|
$(document).off('click','.analysis-zhibiao-list-type4 input').on('change','.analysis-zhibiao-list-type4 input',function(){
|
||||||
var index = $(this).attr("data-index");
|
var index = $(this).attr("data-index");
|
||||||
var indexs = $(this).attr("data-indexs");
|
var indexs = $(this).attr("data-indexs");
|
||||||
var val = $(this).val();
|
var val = $(this).val();
|
||||||
var valarr = val.split(",");
|
var valarr = val.split(",");
|
||||||
data['events'][index]['filts'][indexs]['ftv']=valarr;
|
data['events'][index]['filts'][indexs]['ftv']=valarr;
|
||||||
data['events'][index]['filts'][indexs]['strftv']=val;
|
data['events'][index]['filts'][indexs]['strftv']=val;
|
||||||
|
console.log(val);
|
||||||
});
|
});
|
||||||
|
|
||||||
// 且和或切换
|
// 且和或切换
|
||||||
|
@ -245,7 +245,7 @@
|
|||||||
var id = $(this).attr('data-id');
|
var id = $(this).attr('data-id');
|
||||||
// console.log(id);
|
// console.log(id);
|
||||||
X.api('dashboard/','post',{id:X.DATA['dashboard_id']},function(d){
|
X.api('dashboard/','post',{id:X.DATA['dashboard_id']},function(d){
|
||||||
return;
|
// return;
|
||||||
X.pageLogic['dashboard'].fillmodeldata(d[id]);
|
X.pageLogic['dashboard'].fillmodeldata(d[id]);
|
||||||
|
|
||||||
})
|
})
|
||||||
@ -342,7 +342,8 @@
|
|||||||
},
|
},
|
||||||
|
|
||||||
//填充看板数据
|
//填充看板数据
|
||||||
fillmodeldata:function(d,id){
|
//总体逻辑是:根据获取到的看板内容去先渲染放置的框,在根据不同分析模型处理对应的数据进行填充
|
||||||
|
fillmodeldata:function(d,id,type){//
|
||||||
// console.log(d);
|
// console.log(d);
|
||||||
X.api("ck/"+d['model']+"_model","post",{report_id:d['report_id']},function(val){
|
X.api("ck/"+d['model']+"_model","post",{report_id:d['report_id']},function(val){
|
||||||
var eventdata=[];
|
var eventdata=[];
|
||||||
@ -384,6 +385,11 @@
|
|||||||
|
|
||||||
} else if(d['model'] == "retention"){
|
} else if(d['model'] == "retention"){
|
||||||
//留存分析
|
//留存分析
|
||||||
|
if(type){
|
||||||
|
val['retentiontype'] = type;
|
||||||
|
}else {
|
||||||
|
val['retentiontype'] = 0
|
||||||
|
}
|
||||||
if(d['graph_size'] == 'small'){
|
if(d['graph_size'] == 'small'){
|
||||||
|
|
||||||
}else {
|
}else {
|
||||||
@ -475,6 +481,8 @@
|
|||||||
// $('.layui-row').dad({
|
// $('.layui-row').dad({
|
||||||
// draggable:'table'
|
// draggable:'table'
|
||||||
// });
|
// });
|
||||||
|
|
||||||
|
|
||||||
})
|
})
|
||||||
},
|
},
|
||||||
|
|
||||||
@ -512,6 +520,29 @@
|
|||||||
|
|
||||||
});
|
});
|
||||||
console.log(eventdata);
|
console.log(eventdata);
|
||||||
|
// 留存分析模板特定留存流失按钮
|
||||||
|
var retentionlist = [
|
||||||
|
{'title':'留存','id':0},
|
||||||
|
{'title':'流失','id':1},
|
||||||
|
]
|
||||||
|
if(eventdata.cat == 'retention'){
|
||||||
|
X.laydropdown("#retention"+eventdata.id,retentionlist,function(d){
|
||||||
|
console.log(d.id);
|
||||||
|
console.log(eventdata);
|
||||||
|
var retentiontype = d.id;
|
||||||
|
var modelid = "retention"+eventdata.id;
|
||||||
|
X.api('dashboard/','post',{id:X.DATA['dashboard_id']},function(val){
|
||||||
|
for(let i in val){
|
||||||
|
if(val[i]['report_id'] == eventdata.id){
|
||||||
|
X.pageLogic['dashboard'].fillmodeldata(val[i],modelid,retentiontype);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
})
|
||||||
|
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
if(eventdata['modeltype'] == 'echarts' && eventdata['modelsize'] != 'small' ){
|
if(eventdata['modeltype'] == 'echarts' && eventdata['modelsize'] != 'small' ){
|
||||||
var myChart = echarts.init(document.getElementById(eventdata['id']));
|
var myChart = echarts.init(document.getElementById(eventdata['id']));
|
||||||
if(eventdata['cat'] == 'user_property'){
|
if(eventdata['cat'] == 'user_property'){
|
||||||
@ -601,7 +632,8 @@
|
|||||||
|
|
||||||
},
|
},
|
||||||
|
|
||||||
// 获取表格数据
|
//获取表格数据
|
||||||
|
//渲染外框大小位置
|
||||||
gettabledata:function(){
|
gettabledata:function(){
|
||||||
$("#model-box").html("");//清空表格数据
|
$("#model-box").html("");//清空表格数据
|
||||||
X.api('dashboard/','post',{id:X.DATA['dashboard_id']},function(d){
|
X.api('dashboard/','post',{id:X.DATA['dashboard_id']},function(d){
|
||||||
|
@ -590,8 +590,8 @@
|
|||||||
titdata.push(tit);
|
titdata.push(tit);
|
||||||
}
|
}
|
||||||
titdata.unshift("日期",d.title);
|
titdata.unshift("日期",d.title);
|
||||||
|
// X.fixedTable=function(id,type,classname,headdata){
|
||||||
X.laytpldata("#table-fenxi-th-dot",titdata,".table-fenxi-th");
|
X.laytpldata("#table-fenxi-th-dot",titdata,".table-fenxi-th");
|
||||||
|
|
||||||
X.laytpldata("#table-fenxi-td-dot",tabledata,".table-fenxi-td");
|
X.laytpldata("#table-fenxi-td-dot",tabledata,".table-fenxi-td");
|
||||||
};
|
};
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user