综合分析
This commit is contained in:
parent
093977fc23
commit
338c966dbd
124
web/pages/comprehensive.html
Normal file
124
web/pages/comprehensive.html
Normal file
@ -0,0 +1,124 @@
|
||||
<!-- 留存分析 -->
|
||||
<div class="analysis-zhanwei">
|
||||
|
||||
</div>
|
||||
|
||||
<div class="analysis-navigation-bar-box">
|
||||
<div class="analysis-navigation-bar">
|
||||
<div class="analysis-navigation-bar-left">
|
||||
<span>综合分析</span><img src="./static/img/capytishi.png" title="分析某段时间内,某个事件或事件属性的整体趋势情况" />
|
||||
</div>
|
||||
<div class="analysis-navigation-bar-right">
|
||||
<div class="analysis-navigation-bar-right-jisuan">
|
||||
<!-- <span>TA用户ID</span> -->
|
||||
</div>
|
||||
<div class="analysis-navigation-bar-right-img" title="最后更新时间:2021-04-29 14:44:39">
|
||||
<img src="./static/img/gengxin.png">
|
||||
</div>
|
||||
<div class="analysis-navigation-bar-right-img sqlquery" title="查看条件代码">
|
||||
<i class="iconfont" style="font-size: 18px; color: #67729d;"></i>
|
||||
</div>
|
||||
<div class="analysis-navigation-bar-right-img" title="以页面格式下载全量数据">
|
||||
<img src="./static/img/xiazai.png">
|
||||
</div>
|
||||
<div class="analysis-navigation-bar-right-img analysis-navigation-bar-right-img-baobiao" title="报表">
|
||||
<img src="./static/img/baobiao2.png">
|
||||
</div>
|
||||
<div class="analysis-navigation-bar-right-img analysis-fanhui" title="返回">
|
||||
<img src="./static/img/fanhui.png">
|
||||
<span>返回</span>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="analysis-bg">
|
||||
<!-- 左侧条件筛选区域 -->
|
||||
<div class="analysis-con-left" style=" position: relative; ">
|
||||
<!-- 伸缩按钮 -->
|
||||
<div class="analysis-con-left-shrink"></div>
|
||||
|
||||
<div class="root___2a4tb ">
|
||||
|
||||
<div class="funnelanalysis-screen-box">
|
||||
<div class="block___2n0We">
|
||||
<div class="analysis-con-left-title">
|
||||
综合分析
|
||||
</div>
|
||||
<div class="analysis-con-left-screen-list-box" id="funnel-event">
|
||||
|
||||
</div>
|
||||
<input class="comprehensive-group-box" placeholder="自定义区间用英文逗号隔开">
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
<div class="analysis-but-box">
|
||||
<div class="analysis-savereport">保存报表</div>
|
||||
<div class="analysis-calculation">计 算</div>
|
||||
</div>
|
||||
|
||||
|
||||
</div>
|
||||
<!-- 右边图表显示区域 -->
|
||||
<div class="analysis-con-right">
|
||||
<div class="analtsis-con-box">
|
||||
<div class="analtsis-con-right-box">
|
||||
<div class="analtsis-con-right-top-title">
|
||||
玩法参与情况
|
||||
</div>
|
||||
<div class="analtsis-condition-box">
|
||||
<div class="analtsis-time-box">
|
||||
<div class="analtsis-condition"> <input id="retained-condition-date"
|
||||
readonly="readonly"></input> </div>
|
||||
<div class="analtsis-condition analtsis-timeParticleSize">按分钟</div>
|
||||
</div>
|
||||
|
||||
<div class="analtsis-condition-right-box">
|
||||
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
<div class="table-div-box" style="height: 100%; margin-top: 16px;">
|
||||
<table class="table-fenxi-box">
|
||||
<thead>
|
||||
<tr class="table-fenxi-th">
|
||||
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody class="table-fenxi-td">
|
||||
|
||||
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
<script id="table-fenxi-th-dot" type="text/html">
|
||||
{{# layui.each(d, function(index, item){ }}
|
||||
<th>{{item}}</th>
|
||||
{{# }); }}
|
||||
</script>
|
||||
|
||||
<script id="table-fenxi-td-dot" type="text/html">
|
||||
<tr >
|
||||
{{# layui.each(d, function(index, item){ }}
|
||||
<td>
|
||||
<p>{{item[0]}}</p>
|
||||
<p>{{item[1]}}%</p>
|
||||
</td>
|
||||
{{# }); }}
|
||||
</tr>
|
||||
</script>
|
@ -45,6 +45,14 @@
|
||||
<dd><a class="ajax-content" href="userlabel" data-id="conetnt">用户标签</a></dd>
|
||||
</dl>
|
||||
</li>
|
||||
|
||||
<li class="layui-nav-item">
|
||||
<a href="javascript:;">综合分析</a>
|
||||
<dl class="layui-nav-child">
|
||||
<dd><a class="ajax-content" href="comprehensive" data-id="conetnt">综合分析</a></dd>
|
||||
</dl>
|
||||
</li>
|
||||
|
||||
<li class="layui-nav-item">
|
||||
<a href="javascript:;">数据管理</a>
|
||||
<dl class="layui-nav-child">
|
||||
|
@ -199,6 +199,17 @@
|
||||
</tr>
|
||||
{{# }); }}
|
||||
|
||||
{{# } else if(d.cat === "first_event"){ }}
|
||||
|
||||
<tr>
|
||||
{{# layui.each(d.condata, function(indexs, items) { }}
|
||||
<td>
|
||||
<p>{{items[0]}}</p>
|
||||
<p>{{items[1]}}%</p>
|
||||
</td>
|
||||
{{# }); }}
|
||||
</tr>
|
||||
|
||||
{{# } }}
|
||||
|
||||
|
||||
@ -289,6 +300,15 @@
|
||||
<td>{{items}}</td>
|
||||
</tr>
|
||||
{{# }); }}
|
||||
|
||||
{{# } else if(d.cat === "first_event"){ }}
|
||||
|
||||
{{# layui.each(d.condata, function(indexs, items) { }}
|
||||
<tr>
|
||||
<p>{{items[0]}}</p>
|
||||
<p>{{items[1]}}%</p>
|
||||
</tr>
|
||||
{{# }); }}
|
||||
|
||||
{{# } }}
|
||||
|
||||
|
487
web/src/x.min.js
vendored
487
web/src/x.min.js
vendored
@ -118,6 +118,22 @@ var X = window.X || {
|
||||
{'title':'按周','id':'P1W'},
|
||||
{'title':'按月','id':'P1M'},
|
||||
{'title':'合计','id':'total'}
|
||||
],
|
||||
'comprehensive':[
|
||||
{
|
||||
title: '按年',id:'year'
|
||||
},{
|
||||
title: '按月',id:'P1M'
|
||||
},{
|
||||
title: '按天',id:'P1D'
|
||||
},{
|
||||
title: '按小时',id:'PT1H'
|
||||
},{
|
||||
title: '按分钟',id:'PT1M'
|
||||
},{
|
||||
title: '按秒',id:'second'
|
||||
},
|
||||
|
||||
]
|
||||
},
|
||||
'retentionlist' : [
|
||||
@ -138,8 +154,7 @@ var X = window.X || {
|
||||
|
||||
(function(){
|
||||
//本地李伟
|
||||
// var ipurl = "http://10.0.0.240:7899/api/v1/";
|
||||
|
||||
// var ipurl = "http://10.0.0.240:7899/api/v1/";
|
||||
//本地李宗振
|
||||
// var ipurl = "http://10.0.0.94:7899/api/v1/";
|
||||
// 线上
|
||||
@ -569,6 +584,10 @@ var X = window.X || {
|
||||
granularity = '14日'
|
||||
}else if(timeParticleSize == '30'){
|
||||
granularity = '30日'
|
||||
}else if( timeParticleSize == 'year' ){
|
||||
granularity = '按年'
|
||||
}else if(timeParticleSize == 'second'){
|
||||
granularity = '按秒'
|
||||
}
|
||||
callback && callback(granularity);
|
||||
};
|
||||
@ -1401,16 +1420,13 @@ var X = window.X || {
|
||||
tabdata = data.list
|
||||
}
|
||||
|
||||
|
||||
var date = data['start_date'] + " - " + data['end_date'];
|
||||
var dataArr = {
|
||||
titledata: xAxisdata,
|
||||
condata: tabdata,
|
||||
date:date
|
||||
}
|
||||
console.log(dataArr)
|
||||
callback && callback(dataArr);
|
||||
|
||||
}
|
||||
|
||||
X.funnelchart=function(data,callback){
|
||||
@ -1480,6 +1496,25 @@ var X = window.X || {
|
||||
callback && callback(dataArr);
|
||||
}
|
||||
|
||||
X.first_event=function(data,callback){
|
||||
var xAxisdata = []
|
||||
var tabledata=[];
|
||||
for(let i in data['list']){
|
||||
var arr = []
|
||||
arr[0] = data.list[i]
|
||||
arr[1] = data.p[i]
|
||||
tabledata.push(arr)
|
||||
}
|
||||
|
||||
var date = data['start_date'] + " - " + data['end_date'];
|
||||
var dataArr = {
|
||||
titledata: data.level,
|
||||
condata: tabledata,
|
||||
date:date
|
||||
}
|
||||
callback && callback(dataArr);
|
||||
}
|
||||
|
||||
// 分组项
|
||||
// X.grouped=function(data,id){
|
||||
// console.log(data)
|
||||
@ -5923,6 +5958,422 @@ var X = window.X || {
|
||||
|
||||
})();
|
||||
|
||||
// srczip/logic/comprehensive.js
|
||||
(function(){
|
||||
X.pageLogic['comprehensive'] = {
|
||||
init : function(parms){
|
||||
|
||||
var data ={
|
||||
"eventView":{
|
||||
"cksql":"first_event",
|
||||
"endTime":"",
|
||||
"filts":[],
|
||||
"groupBy":[],
|
||||
"e_days":0,
|
||||
"s_days":7,
|
||||
"relation":"and",
|
||||
"startTime":"",
|
||||
"statType":"retention",
|
||||
"event_diff":"minute",
|
||||
"windows_gap":7,
|
||||
"switchTest": true,
|
||||
minute:[]
|
||||
},
|
||||
"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";
|
||||
var sameday = Date.parse(new Date()) / 1000; //当天时间戳
|
||||
|
||||
var enddate = new Date(end.format('YYYY-MM-DD'));
|
||||
var endmonth = Date.parse(enddate)/1000;
|
||||
|
||||
var startdate = new Date(start.format('YYYY-MM-DD'));
|
||||
var startmonth = Date.parse(startdate)/1000;
|
||||
data['eventView']['startTime'] = startTime;
|
||||
data['eventView']['endTime'] = endTime;
|
||||
data['eventView']['e_days'] = parseInt((sameday - endmonth)/86400);
|
||||
data['eventView']['s_days'] = parseInt((sameday - startmonth)/86400);
|
||||
retaineddata();
|
||||
})
|
||||
|
||||
// 时间粒度
|
||||
X.laydropdown('.analtsis-timeParticleSize',X['DATA']['companylist']['comprehensive'],function(d){
|
||||
$(".analtsis-timeParticleSize").html(d.title);
|
||||
data['eventView']['event_diff'] = d.id;
|
||||
});
|
||||
|
||||
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 groupitemeventsdata//分组项里的事件
|
||||
var filter_map,quotas_map,type2data;
|
||||
// var screentypearr = [];
|
||||
|
||||
layui.form.render();
|
||||
|
||||
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",
|
||||
"condrelation":"and",
|
||||
"renameindicator":""
|
||||
},{
|
||||
"eventDesc":eventdata[0]['category'][0]['event_desc'],
|
||||
"eventName":eventdata[0]['category'][0]['event_name'],
|
||||
"filts":[],
|
||||
"relation":"and",
|
||||
"condrelation":"and",
|
||||
"renameindicator":""
|
||||
}]
|
||||
data['events'] = arr;
|
||||
|
||||
X.api("data_auth/load_prop_quotas","post",{event_name:eventdata[0]['category'][0]['event_name']},function(d){
|
||||
var retdata = d.staid_quots.concat(d.props);
|
||||
type2data= retdata
|
||||
X.api("data_auth/load_filter_props","post",{event_name:eventdata[0]['category'][0]['event_name']},function(val){
|
||||
groupitemeventsdata= val;
|
||||
X.api("data_auth/filter_map","get",{},function(d){
|
||||
filter_map = d;
|
||||
X.api('data_auth/quotas_map',"get",{},function(d){
|
||||
quotas_map = d;
|
||||
//从数据看板点击进来触发事件
|
||||
if(X.DATA.funnelid && X.DATA.funnelid != ''){
|
||||
var report_idarr = [];
|
||||
report_idarr.push(X.DATA.funnelid);
|
||||
X.api('report/read_report','post',{project_id:X.DATA.projectid,report_id:report_idarr},function(d){
|
||||
backfilldata(d[0]);
|
||||
})
|
||||
}
|
||||
|
||||
//初始事件
|
||||
X.template("funnel","funnel-event",data['events']);
|
||||
})
|
||||
})
|
||||
})
|
||||
})
|
||||
});
|
||||
|
||||
var baobiaodata;
|
||||
function backfilldata(d){
|
||||
if(d){
|
||||
data = d.query;
|
||||
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";
|
||||
baobiaodata = d;
|
||||
// 数据看板点进来时吧保存的时间初始化为当前时间
|
||||
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";
|
||||
|
||||
retaineddata();
|
||||
}
|
||||
};
|
||||
|
||||
$(document).off('click','.analysis-chongmingming').on('click','.analysis-chongmingming',function(){
|
||||
var index = $(this).attr('data-index');
|
||||
$("#analysis-con-left-screen-list-left-zhibiaoname-"+index).show();
|
||||
|
||||
$(this).hide();
|
||||
$(".analysis-chongmingming-del-initial-event").show();
|
||||
});
|
||||
|
||||
$(document).off('click','.analysis-chongmingming-del').on('click','.analysis-chongmingming-del',function(){
|
||||
var index = $(this).attr('data-index');
|
||||
$("#analysis-con-left-screen-list-left-zhibiaoname-"+index).hide();
|
||||
$("#analysis-con-left-screen-list-left-zhibiaoname-"+index+ " input").val('');
|
||||
$(this).hide();
|
||||
$(".analysis-chongmingming").show();
|
||||
});
|
||||
|
||||
$(document).off("blur",'.analysis-con-left-screen-list-left-zhibiaoname-txt').on('blur','.analysis-con-left-screen-list-left-zhibiaoname-txt',function(){
|
||||
var index = $(this).attr('data-index');
|
||||
// console.log(data)
|
||||
data['events'][index]['renameindicator'] = $(this).val();
|
||||
})
|
||||
|
||||
$(document).off("click",'.analysis-con-left-screen-list-right-screen-qh-tit').on("click",'.analysis-con-left-screen-list-right-screen-qh-tit',function(){
|
||||
var index = $(this).attr('data-index');
|
||||
if($(this).html() == '或'){
|
||||
$(this).html('且')
|
||||
data['events'][index]['condrelation'] = 'and'
|
||||
}else {
|
||||
$(this).html('或')
|
||||
data['events'][index]['condrelation'] = 'or'
|
||||
}
|
||||
})
|
||||
|
||||
// 添加指标
|
||||
function addindex(){
|
||||
var defaultindicator = {
|
||||
"eventDesc":eventdata[0]['category'][0]['event_desc'],
|
||||
"eventName":eventdata[0]['category'][0]['event_name'],
|
||||
"filts":[],
|
||||
"relation":"and",
|
||||
"condrelation":"and",
|
||||
"renameindicator":""
|
||||
}
|
||||
data['events'].push(defaultindicator);
|
||||
X.template("funnel","funnel-event",data['events'],function(){
|
||||
var 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){
|
||||
var arr = {
|
||||
"columnDesc":groupitemeventsdata[0]['category'][0]['title'],
|
||||
"columnName":groupitemeventsdata[0]['category'][0]['id'],
|
||||
"comparator":"==",
|
||||
"comparatorName":"等于",
|
||||
"ftv":[],
|
||||
"strftv":"",
|
||||
"tableType":groupitemeventsdata[0]['category'][0]['data_type'],
|
||||
"timeUnit":""
|
||||
}
|
||||
data['events'][index]['filts'].push(arr);
|
||||
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);
|
||||
X.template("funnel","funnel-event",data['events']);
|
||||
});
|
||||
|
||||
//删除指定筛选
|
||||
$(document).off('click','.funnel-analysis-zhibiao-list-del').on('click','.funnel-analysis-zhibiao-list-del',function(){
|
||||
var index = $(this).attr("data-index");
|
||||
var indexs = $(this).attr("data-twonum");
|
||||
data['events'][index]['filts'].splice(indexs,1);
|
||||
X.template("funnel","funnel-event",data['events']);
|
||||
});
|
||||
|
||||
$(document).off('blur','.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){
|
||||
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 = 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(groupitemeventsdata,'category',offset.left,offset.top+obj.height(),function(val){
|
||||
var htmlstring = val.title;
|
||||
obj.html(htmlstring);
|
||||
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]['tableType'] = val.table_type;
|
||||
})
|
||||
});
|
||||
|
||||
$(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");
|
||||
var type = data['events'][index]['filts'][indexs]['data_type'];
|
||||
X.querycriteriapop(filter_map[type],'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').on('click','.analysis-zhibiao-list-type4',function(){
|
||||
var obj = $(this);
|
||||
var offset = obj.offset();
|
||||
var index = $(this).attr("data-index");
|
||||
var indexs = $(this).attr("data-indexs");
|
||||
var comparator = data['events'][index]['filts'][indexs]['comparator'];
|
||||
var columnName = data['events'][index]['filts'][indexs]['columnName'];
|
||||
|
||||
X.api("data_mana/select_attr","post",{attr_name:columnName},function(val){
|
||||
if(val != "查无数据"){
|
||||
X.parametersopen(val['map_'],'dropdownlist',[offset.top+obj.height(),offset.left],function(val){
|
||||
if(comparator == "in"){
|
||||
if(data['events'][index]['filts'][indexs]['strftv'] == "" ){
|
||||
var strftv = val.title;
|
||||
data['events'][index]['filts'][indexs]['ftv'].push(val.id);
|
||||
}else {
|
||||
var strftv = data['events'][index]['filts'][indexs]['strftv'] + "," + val.title;
|
||||
data['events'][index]['filts'][indexs]['ftv'].push(val.id);
|
||||
}
|
||||
data['events'][index]['filts'][indexs]['strftv'] = strftv;
|
||||
}else {
|
||||
data['events'][index]['filts'][indexs]['strftv'] = val.title;
|
||||
var arr = [];
|
||||
arr.push(val.id);
|
||||
data['events'][index]['filts'][indexs]['ftv'] = arr;
|
||||
}
|
||||
|
||||
X.template("funnel","funnel-event",data['events'],function(){
|
||||
var drr = [];
|
||||
if(data['events'].length > 2){
|
||||
$(".analysis-del").show();
|
||||
}else {
|
||||
$(".analysis-del").hide();
|
||||
}
|
||||
});
|
||||
})
|
||||
}
|
||||
})
|
||||
})
|
||||
|
||||
$(document).off('blur','.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;
|
||||
});
|
||||
|
||||
$(document).off('blur','.comprehensive-group-box').on('blur','.comprehensive-group-box',function(){
|
||||
var txt = $(this).val().split(',');
|
||||
console.log(txt)
|
||||
var arr = [];
|
||||
for(let i in txt){
|
||||
arr.push(txt[i])
|
||||
}
|
||||
data['eventView']['minute'] = arr
|
||||
})
|
||||
|
||||
// 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(){
|
||||
|
||||
})
|
||||
});
|
||||
|
||||
// 计算按钮
|
||||
$(document).off('click','.analysis-calculation').on('click','.analysis-calculation',function(){
|
||||
console.log(data)
|
||||
retaineddata()
|
||||
});
|
||||
var querydata;
|
||||
function retaineddata(){
|
||||
var dataArr = {
|
||||
eventView: data.eventView,
|
||||
events: data.events
|
||||
}
|
||||
X.api("ck/first_event_model","post",dataArr,function(d){
|
||||
if(d != "查无数据"){
|
||||
retainedtable(d)
|
||||
}else {
|
||||
layer.msg('查无数据');
|
||||
}
|
||||
})
|
||||
};
|
||||
|
||||
function retainedtable(d){
|
||||
var tabledata=[];
|
||||
for(let i in d['list']){
|
||||
var arr = []
|
||||
arr[0] = d.list[i]
|
||||
arr[1] = d.p[i]
|
||||
tabledata.push(arr)
|
||||
}
|
||||
X.laytpldata("#table-fenxi-th-dot",d.level,".table-fenxi-th");
|
||||
X.laytpldata("#table-fenxi-td-dot",tabledata,".table-fenxi-td");
|
||||
};
|
||||
|
||||
$(document).off('click','.analysis-savereport').on('click','.analysis-savereport',function(){
|
||||
X.parametersopen(data,'savereport','auto')
|
||||
});
|
||||
|
||||
$(document).off('click','.analysis-navigation-bar-right-img-baobiao').on('click','.analysis-navigation-bar-right-img-baobiao',function(){
|
||||
X.parametersopen(data['eventView']['cksql'],'savedbaobiao','rt',function(d){
|
||||
if(d){
|
||||
data = d.query;
|
||||
|
||||
X.template("funnel","funnel-event",data['events']);
|
||||
X.template("globalfilter","xinwei-whole",data['eventView']['filts'],function(){
|
||||
renderdate();
|
||||
});
|
||||
|
||||
retaineddata();
|
||||
}
|
||||
|
||||
})
|
||||
});
|
||||
|
||||
// 返回
|
||||
$(document).off('click','.analysis-fanhui').on('click','.analysis-fanhui',function(){
|
||||
X.gourl("dashboard");
|
||||
// return;
|
||||
});
|
||||
|
||||
}
|
||||
};
|
||||
})();
|
||||
// srczip/logic/conditionquery.js
|
||||
(function(){
|
||||
X.pageLogic['conditionquery'] = {
|
||||
@ -7147,7 +7598,9 @@ var X = window.X || {
|
||||
if(d['query']){
|
||||
if(d.cat == "retention"){
|
||||
var timeParticleSize = d['query']['eventView']['unitNum'];
|
||||
}else {
|
||||
}else if(d.cat == 'first_event'){
|
||||
var timeParticleSize = d['query']['eventView']['event_diff'];
|
||||
} else {
|
||||
var timeParticleSize = d['query']['eventView']['timeParticleSize'];
|
||||
}
|
||||
|
||||
@ -7450,6 +7903,28 @@ var X = window.X || {
|
||||
eventdata.push(data);
|
||||
})
|
||||
}
|
||||
}else if(d['model'] == 'first_event'){
|
||||
X.first_event(val,function(data){
|
||||
console.log(data)
|
||||
console.log(d)
|
||||
data['name'] = d['name'];
|
||||
data['modeltype'] = 'table';
|
||||
data['id'] = d['report_id'];
|
||||
data['modelsize'] = d['graph_size'];
|
||||
data['cat'] = d['model'];
|
||||
data['desc'] = d['desc'];
|
||||
data['reverseorder']=d['reverseorder'];
|
||||
data['timeParticleSize'] = granularity;
|
||||
eventdata.push(data);
|
||||
if(d['ascending']){
|
||||
var condatalength = eventdata[0]['condata'].length;
|
||||
var condataascend=[];
|
||||
for(var i = condatalength - 1; i >= 0; i--){
|
||||
condataascend.push(eventdata[0]['condata'][i]);
|
||||
}
|
||||
eventdata[0]['condata'] = condataascend;
|
||||
}
|
||||
})
|
||||
}
|
||||
eventdata[0]['authority'] = X.DATA.authority;
|
||||
return eventdata;
|
||||
|
@ -117,6 +117,22 @@ var X = window.X || {
|
||||
{'title':'按周','id':'P1W'},
|
||||
{'title':'按月','id':'P1M'},
|
||||
{'title':'合计','id':'total'}
|
||||
],
|
||||
'comprehensive':[
|
||||
{
|
||||
title: '按年',id:'year'
|
||||
},{
|
||||
title: '按月',id:'P1M'
|
||||
},{
|
||||
title: '按天',id:'P1D'
|
||||
},{
|
||||
title: '按小时',id:'PT1H'
|
||||
},{
|
||||
title: '按分钟',id:'PT1M'
|
||||
},{
|
||||
title: '按秒',id:'second'
|
||||
},
|
||||
|
||||
]
|
||||
},
|
||||
'retentionlist' : [
|
||||
@ -137,8 +153,7 @@ var X = window.X || {
|
||||
|
||||
(function(){
|
||||
//本地李伟
|
||||
// var ipurl = "http://10.0.0.240:7899/api/v1/";
|
||||
|
||||
// var ipurl = "http://10.0.0.240:7899/api/v1/";
|
||||
//本地李宗振
|
||||
// var ipurl = "http://10.0.0.94:7899/api/v1/";
|
||||
// 线上
|
||||
@ -568,6 +583,10 @@ var X = window.X || {
|
||||
granularity = '14日'
|
||||
}else if(timeParticleSize == '30'){
|
||||
granularity = '30日'
|
||||
}else if( timeParticleSize == 'year' ){
|
||||
granularity = '按年'
|
||||
}else if(timeParticleSize == 'second'){
|
||||
granularity = '按秒'
|
||||
}
|
||||
callback && callback(granularity);
|
||||
};
|
||||
@ -1400,16 +1419,13 @@ var X = window.X || {
|
||||
tabdata = data.list
|
||||
}
|
||||
|
||||
|
||||
var date = data['start_date'] + " - " + data['end_date'];
|
||||
var dataArr = {
|
||||
titledata: xAxisdata,
|
||||
condata: tabdata,
|
||||
date:date
|
||||
}
|
||||
console.log(dataArr)
|
||||
callback && callback(dataArr);
|
||||
|
||||
}
|
||||
|
||||
X.funnelchart=function(data,callback){
|
||||
@ -1479,6 +1495,25 @@ var X = window.X || {
|
||||
callback && callback(dataArr);
|
||||
}
|
||||
|
||||
X.first_event=function(data,callback){
|
||||
var xAxisdata = []
|
||||
var tabledata=[];
|
||||
for(let i in data['list']){
|
||||
var arr = []
|
||||
arr[0] = data.list[i]
|
||||
arr[1] = data.p[i]
|
||||
tabledata.push(arr)
|
||||
}
|
||||
|
||||
var date = data['start_date'] + " - " + data['end_date'];
|
||||
var dataArr = {
|
||||
titledata: data.level,
|
||||
condata: tabledata,
|
||||
date:date
|
||||
}
|
||||
callback && callback(dataArr);
|
||||
}
|
||||
|
||||
// 分组项
|
||||
// X.grouped=function(data,id){
|
||||
// console.log(data)
|
||||
|
415
web/srczip/logic/comprehensive.js
Normal file
415
web/srczip/logic/comprehensive.js
Normal file
@ -0,0 +1,415 @@
|
||||
(function(){
|
||||
X.pageLogic['comprehensive'] = {
|
||||
init : function(parms){
|
||||
|
||||
var data ={
|
||||
"eventView":{
|
||||
"cksql":"first_event",
|
||||
"endTime":"",
|
||||
"filts":[],
|
||||
"groupBy":[],
|
||||
"e_days":0,
|
||||
"s_days":7,
|
||||
"relation":"and",
|
||||
"startTime":"",
|
||||
"statType":"retention",
|
||||
"event_diff":"minute",
|
||||
"windows_gap":7,
|
||||
"switchTest": true,
|
||||
minute:[]
|
||||
},
|
||||
"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";
|
||||
var sameday = Date.parse(new Date()) / 1000; //当天时间戳
|
||||
|
||||
var enddate = new Date(end.format('YYYY-MM-DD'));
|
||||
var endmonth = Date.parse(enddate)/1000;
|
||||
|
||||
var startdate = new Date(start.format('YYYY-MM-DD'));
|
||||
var startmonth = Date.parse(startdate)/1000;
|
||||
data['eventView']['startTime'] = startTime;
|
||||
data['eventView']['endTime'] = endTime;
|
||||
data['eventView']['e_days'] = parseInt((sameday - endmonth)/86400);
|
||||
data['eventView']['s_days'] = parseInt((sameday - startmonth)/86400);
|
||||
retaineddata();
|
||||
})
|
||||
|
||||
// 时间粒度
|
||||
X.laydropdown('.analtsis-timeParticleSize',X['DATA']['companylist']['comprehensive'],function(d){
|
||||
$(".analtsis-timeParticleSize").html(d.title);
|
||||
data['eventView']['event_diff'] = d.id;
|
||||
});
|
||||
|
||||
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 groupitemeventsdata//分组项里的事件
|
||||
var filter_map,quotas_map,type2data;
|
||||
// var screentypearr = [];
|
||||
|
||||
layui.form.render();
|
||||
|
||||
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",
|
||||
"condrelation":"and",
|
||||
"renameindicator":""
|
||||
},{
|
||||
"eventDesc":eventdata[0]['category'][0]['event_desc'],
|
||||
"eventName":eventdata[0]['category'][0]['event_name'],
|
||||
"filts":[],
|
||||
"relation":"and",
|
||||
"condrelation":"and",
|
||||
"renameindicator":""
|
||||
}]
|
||||
data['events'] = arr;
|
||||
|
||||
X.api("data_auth/load_prop_quotas","post",{event_name:eventdata[0]['category'][0]['event_name']},function(d){
|
||||
var retdata = d.staid_quots.concat(d.props);
|
||||
type2data= retdata
|
||||
X.api("data_auth/load_filter_props","post",{event_name:eventdata[0]['category'][0]['event_name']},function(val){
|
||||
groupitemeventsdata= val;
|
||||
X.api("data_auth/filter_map","get",{},function(d){
|
||||
filter_map = d;
|
||||
X.api('data_auth/quotas_map',"get",{},function(d){
|
||||
quotas_map = d;
|
||||
//从数据看板点击进来触发事件
|
||||
if(X.DATA.funnelid && X.DATA.funnelid != ''){
|
||||
var report_idarr = [];
|
||||
report_idarr.push(X.DATA.funnelid);
|
||||
X.api('report/read_report','post',{project_id:X.DATA.projectid,report_id:report_idarr},function(d){
|
||||
backfilldata(d[0]);
|
||||
})
|
||||
}
|
||||
|
||||
//初始事件
|
||||
X.template("funnel","funnel-event",data['events']);
|
||||
})
|
||||
})
|
||||
})
|
||||
})
|
||||
});
|
||||
|
||||
var baobiaodata;
|
||||
function backfilldata(d){
|
||||
if(d){
|
||||
data = d.query;
|
||||
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";
|
||||
baobiaodata = d;
|
||||
// 数据看板点进来时吧保存的时间初始化为当前时间
|
||||
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";
|
||||
|
||||
retaineddata();
|
||||
}
|
||||
};
|
||||
|
||||
$(document).off('click','.analysis-chongmingming').on('click','.analysis-chongmingming',function(){
|
||||
var index = $(this).attr('data-index');
|
||||
$("#analysis-con-left-screen-list-left-zhibiaoname-"+index).show();
|
||||
|
||||
$(this).hide();
|
||||
$(".analysis-chongmingming-del-initial-event").show();
|
||||
});
|
||||
|
||||
$(document).off('click','.analysis-chongmingming-del').on('click','.analysis-chongmingming-del',function(){
|
||||
var index = $(this).attr('data-index');
|
||||
$("#analysis-con-left-screen-list-left-zhibiaoname-"+index).hide();
|
||||
$("#analysis-con-left-screen-list-left-zhibiaoname-"+index+ " input").val('');
|
||||
$(this).hide();
|
||||
$(".analysis-chongmingming").show();
|
||||
});
|
||||
|
||||
$(document).off("blur",'.analysis-con-left-screen-list-left-zhibiaoname-txt').on('blur','.analysis-con-left-screen-list-left-zhibiaoname-txt',function(){
|
||||
var index = $(this).attr('data-index');
|
||||
// console.log(data)
|
||||
data['events'][index]['renameindicator'] = $(this).val();
|
||||
})
|
||||
|
||||
$(document).off("click",'.analysis-con-left-screen-list-right-screen-qh-tit').on("click",'.analysis-con-left-screen-list-right-screen-qh-tit',function(){
|
||||
var index = $(this).attr('data-index');
|
||||
if($(this).html() == '或'){
|
||||
$(this).html('且')
|
||||
data['events'][index]['condrelation'] = 'and'
|
||||
}else {
|
||||
$(this).html('或')
|
||||
data['events'][index]['condrelation'] = 'or'
|
||||
}
|
||||
})
|
||||
|
||||
// 添加指标
|
||||
function addindex(){
|
||||
var defaultindicator = {
|
||||
"eventDesc":eventdata[0]['category'][0]['event_desc'],
|
||||
"eventName":eventdata[0]['category'][0]['event_name'],
|
||||
"filts":[],
|
||||
"relation":"and",
|
||||
"condrelation":"and",
|
||||
"renameindicator":""
|
||||
}
|
||||
data['events'].push(defaultindicator);
|
||||
X.template("funnel","funnel-event",data['events'],function(){
|
||||
var 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){
|
||||
var arr = {
|
||||
"columnDesc":groupitemeventsdata[0]['category'][0]['title'],
|
||||
"columnName":groupitemeventsdata[0]['category'][0]['id'],
|
||||
"comparator":"==",
|
||||
"comparatorName":"等于",
|
||||
"ftv":[],
|
||||
"strftv":"",
|
||||
"tableType":groupitemeventsdata[0]['category'][0]['data_type'],
|
||||
"timeUnit":""
|
||||
}
|
||||
data['events'][index]['filts'].push(arr);
|
||||
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);
|
||||
X.template("funnel","funnel-event",data['events']);
|
||||
});
|
||||
|
||||
//删除指定筛选
|
||||
$(document).off('click','.funnel-analysis-zhibiao-list-del').on('click','.funnel-analysis-zhibiao-list-del',function(){
|
||||
var index = $(this).attr("data-index");
|
||||
var indexs = $(this).attr("data-twonum");
|
||||
data['events'][index]['filts'].splice(indexs,1);
|
||||
X.template("funnel","funnel-event",data['events']);
|
||||
});
|
||||
|
||||
$(document).off('blur','.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){
|
||||
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 = 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(groupitemeventsdata,'category',offset.left,offset.top+obj.height(),function(val){
|
||||
var htmlstring = val.title;
|
||||
obj.html(htmlstring);
|
||||
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]['tableType'] = val.table_type;
|
||||
})
|
||||
});
|
||||
|
||||
$(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");
|
||||
var type = data['events'][index]['filts'][indexs]['data_type'];
|
||||
X.querycriteriapop(filter_map[type],'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').on('click','.analysis-zhibiao-list-type4',function(){
|
||||
var obj = $(this);
|
||||
var offset = obj.offset();
|
||||
var index = $(this).attr("data-index");
|
||||
var indexs = $(this).attr("data-indexs");
|
||||
var comparator = data['events'][index]['filts'][indexs]['comparator'];
|
||||
var columnName = data['events'][index]['filts'][indexs]['columnName'];
|
||||
|
||||
X.api("data_mana/select_attr","post",{attr_name:columnName},function(val){
|
||||
if(val != "查无数据"){
|
||||
X.parametersopen(val['map_'],'dropdownlist',[offset.top+obj.height(),offset.left],function(val){
|
||||
if(comparator == "in"){
|
||||
if(data['events'][index]['filts'][indexs]['strftv'] == "" ){
|
||||
var strftv = val.title;
|
||||
data['events'][index]['filts'][indexs]['ftv'].push(val.id);
|
||||
}else {
|
||||
var strftv = data['events'][index]['filts'][indexs]['strftv'] + "," + val.title;
|
||||
data['events'][index]['filts'][indexs]['ftv'].push(val.id);
|
||||
}
|
||||
data['events'][index]['filts'][indexs]['strftv'] = strftv;
|
||||
}else {
|
||||
data['events'][index]['filts'][indexs]['strftv'] = val.title;
|
||||
var arr = [];
|
||||
arr.push(val.id);
|
||||
data['events'][index]['filts'][indexs]['ftv'] = arr;
|
||||
}
|
||||
|
||||
X.template("funnel","funnel-event",data['events'],function(){
|
||||
var drr = [];
|
||||
if(data['events'].length > 2){
|
||||
$(".analysis-del").show();
|
||||
}else {
|
||||
$(".analysis-del").hide();
|
||||
}
|
||||
});
|
||||
})
|
||||
}
|
||||
})
|
||||
})
|
||||
|
||||
$(document).off('blur','.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;
|
||||
});
|
||||
|
||||
$(document).off('blur','.comprehensive-group-box').on('blur','.comprehensive-group-box',function(){
|
||||
var txt = $(this).val().split(',');
|
||||
console.log(txt)
|
||||
var arr = [];
|
||||
for(let i in txt){
|
||||
arr.push(txt[i])
|
||||
}
|
||||
data['eventView']['minute'] = arr
|
||||
})
|
||||
|
||||
// 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(){
|
||||
|
||||
})
|
||||
});
|
||||
|
||||
// 计算按钮
|
||||
$(document).off('click','.analysis-calculation').on('click','.analysis-calculation',function(){
|
||||
console.log(data)
|
||||
retaineddata()
|
||||
});
|
||||
var querydata;
|
||||
function retaineddata(){
|
||||
var dataArr = {
|
||||
eventView: data.eventView,
|
||||
events: data.events
|
||||
}
|
||||
X.api("ck/first_event_model","post",dataArr,function(d){
|
||||
if(d != "查无数据"){
|
||||
retainedtable(d)
|
||||
}else {
|
||||
layer.msg('查无数据');
|
||||
}
|
||||
})
|
||||
};
|
||||
|
||||
function retainedtable(d){
|
||||
var tabledata=[];
|
||||
for(let i in d['list']){
|
||||
var arr = []
|
||||
arr[0] = d.list[i]
|
||||
arr[1] = d.p[i]
|
||||
tabledata.push(arr)
|
||||
}
|
||||
X.laytpldata("#table-fenxi-th-dot",d.level,".table-fenxi-th");
|
||||
X.laytpldata("#table-fenxi-td-dot",tabledata,".table-fenxi-td");
|
||||
};
|
||||
|
||||
$(document).off('click','.analysis-savereport').on('click','.analysis-savereport',function(){
|
||||
X.parametersopen(data,'savereport','auto')
|
||||
});
|
||||
|
||||
$(document).off('click','.analysis-navigation-bar-right-img-baobiao').on('click','.analysis-navigation-bar-right-img-baobiao',function(){
|
||||
X.parametersopen(data['eventView']['cksql'],'savedbaobiao','rt',function(d){
|
||||
if(d){
|
||||
data = d.query;
|
||||
|
||||
X.template("funnel","funnel-event",data['events']);
|
||||
X.template("globalfilter","xinwei-whole",data['eventView']['filts'],function(){
|
||||
renderdate();
|
||||
});
|
||||
|
||||
retaineddata();
|
||||
}
|
||||
|
||||
})
|
||||
});
|
||||
|
||||
// 返回
|
||||
$(document).off('click','.analysis-fanhui').on('click','.analysis-fanhui',function(){
|
||||
X.gourl("dashboard");
|
||||
// return;
|
||||
});
|
||||
|
||||
}
|
||||
};
|
||||
})();
|
@ -956,7 +956,9 @@
|
||||
if(d['query']){
|
||||
if(d.cat == "retention"){
|
||||
var timeParticleSize = d['query']['eventView']['unitNum'];
|
||||
}else {
|
||||
}else if(d.cat == 'first_event'){
|
||||
var timeParticleSize = d['query']['eventView']['event_diff'];
|
||||
} else {
|
||||
var timeParticleSize = d['query']['eventView']['timeParticleSize'];
|
||||
}
|
||||
|
||||
@ -1259,6 +1261,28 @@
|
||||
eventdata.push(data);
|
||||
})
|
||||
}
|
||||
}else if(d['model'] == 'first_event'){
|
||||
X.first_event(val,function(data){
|
||||
console.log(data)
|
||||
console.log(d)
|
||||
data['name'] = d['name'];
|
||||
data['modeltype'] = 'table';
|
||||
data['id'] = d['report_id'];
|
||||
data['modelsize'] = d['graph_size'];
|
||||
data['cat'] = d['model'];
|
||||
data['desc'] = d['desc'];
|
||||
data['reverseorder']=d['reverseorder'];
|
||||
data['timeParticleSize'] = granularity;
|
||||
eventdata.push(data);
|
||||
if(d['ascending']){
|
||||
var condatalength = eventdata[0]['condata'].length;
|
||||
var condataascend=[];
|
||||
for(var i = condatalength - 1; i >= 0; i--){
|
||||
condataascend.push(eventdata[0]['condata'][i]);
|
||||
}
|
||||
eventdata[0]['condata'] = condataascend;
|
||||
}
|
||||
})
|
||||
}
|
||||
eventdata[0]['authority'] = X.DATA.authority;
|
||||
return eventdata;
|
||||
|
@ -400,3 +400,6 @@
|
||||
.nodedetails-event-tab-td { width: 33%;height: 36px; line-height: 36px; }
|
||||
.nodedetails-event-tab-font-col { color: #42546d; }
|
||||
.nodedetails-event-tab-td img { cursor: pointer;}
|
||||
|
||||
.comprehensive-group-box { padding: 6px; border: 0; width: calc(100% - 12px); }
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user