-
-
- {{# } else { }}
-
- {{# if(d.modeltype === "table"){ }}
-
-
-
-
-
-
+
+
+
+ {{# if(d.sum != -1){ }}
+
总和 {{d.sum}}
+ {{# } }}
+ {{# if(d.mean != -1){ }}
+
均值 {{d.mean}}
+ {{# } }}
-
-
-
- {{# if(d.cat != "user_property"){ }}
- {{# if(d.date != ""){ }}
-
{{d.date}}
- {{# } }}
-
-
- {{d.timeParticleSize}}
-
- {{# if(d.cat === "retention"){ }}
-
- {{# if(d.retentiontype === 0){ }}
-
留存
- {{# } else { }}
-
流失
- {{# } }}
- {{# } }}
- {{# } }}
-
-
-
报表
-
-
-
-
-
-
-
-
-
-
- {{# layui.each(d.titledata, function(indexs, items) { }}
-
- {{# }); }}
-
-
- {{# layui.each(d.titledata, function(indexs, items) { }}
- {{items}} |
- {{# }); }}
-
-
-
- {{# if(d.cat === "event"){ }}
-
-
- {{# layui.each(d.condata, function(indexs, items) { }}
-
- {{# layui.each(items, function(indexss, itemss) { }}
- {{itemss}} |
- {{# }); }}
-
- {{# }); }}
-
- {{# } else if(d.cat === "retention"){ }}
-
-
- {{# layui.each(d.condata, function(indexs, items) { }}
-
- {{items.date}} |
- {{items.d0}} |
- {{# layui.each(items.data, function(indexss, itemss){ }}
-
- {{itemss.n}}
- {{itemss.p}}%
- |
- {{# }); }}
-
- {{# }); }}
-
- {{# } else if(d.cat === "ltv"){ }}
-
-
- {{# layui.each(d.condata, function(indexs, items) { }}
-
- {{# layui.each(items, function(indexss, itemss){ }}
- {{itemss}} |
- {{# }); }}
-
- {{# }); }}
-
- {{# } else if(d.cat === "user_property"){ }}
- {{# layui.each(d.condata, function(indexs, items) { }}
-
- {{indexs}} |
- {{items}} |
-
- {{# }); }}
- {{# } }}
-
-
-
-
-
-
-
- {{# } else { }}
-
-
-
-
-
- {{# if(d.cat != "user_property"){ }}
-
{{d.date}}
-
- {{# if(d.date != ""){ }}
-
{{d.timeParticleSize}}
- {{# } }}
- {{# if(d.cat === "retention"){ }}
-
- {{# if(d.retentiontype === 0){ }}
-
留存
- {{# } else { }}
-
流失
- {{# } }}
- {{# } }}
- {{# } }}
+
-
-
-
-
-
趋势图
-
-
-
-
-
-
{{d.sameday}}
-
-
- {{# if(d.wowtype != ''){ }}
- {{# if(d.wowtype == '-'){ }}
-
- {{# } else { }}
-
- {{# } }}
- {{# } }}
- {{# if(d.chain_ratiotype != ''){ }}
- {{# if(d.chain_ratiotype == "+"){ }}
-
- {{# } else { }}
-
- {{# } }}
- {{# } }}
-
-
-
-
-
- {{# if(d.sum != -1){ }}
-
总和 {{d.sum}}
- {{# } }}
- {{# if(d.mean != -1){ }}
-
均值 {{d.mean}}
- {{# } }}
-
-
-
-
-
-
-
+
{{# } }}
diff --git a/web/pages/modeltype.html b/web/pages/modeltype.html
new file mode 100644
index 0000000..71cf2c1
--- /dev/null
+++ b/web/pages/modeltype.html
@@ -0,0 +1,274 @@
+
+
\ No newline at end of file
diff --git a/web/src/x.min.js b/web/src/x.min.js
index 5bc7f55..1111e95 100644
--- a/web/src/x.min.js
+++ b/web/src/x.min.js
@@ -116,9 +116,9 @@ var X = window.X || {
(function(){
//本地
- var ipurl = "http://10.0.0.77:7889/api/v1/";
+ // var ipurl = "http://10.0.0.77:7889/api/v1/";
//线上
- // var ipurl = "http://139.159.159.3:9865/api/v1/";
+ var ipurl = "http://139.159.159.3:9865/api/v1/";
//设置或读取登录缓存,需要保存到localStorage,防止刷新时候登录数据丢失
X.loginCache = function(data){
@@ -405,6 +405,40 @@ var X = window.X || {
callback && callback(granularity);
};
+ //根据中文名获取时间粒度id
+ X.granularityid=function(timeParticleSize,callback){
+ if(timeParticleSize == '按天'){
+ granularity = 'P1D'
+ }else if(timeParticleSize == '按分钟'){
+ granularity = 'PT1M'
+ }else if(timeParticleSize == '每五分钟'){
+ granularity = 'PT5M'
+ }else if(timeParticleSize == '每十分钟'){
+ granularity = 'PT10M'
+ }else if(timeParticleSize == '每十五分钟'){
+ granularity = 'PT15M'
+ }else if(timeParticleSize == '按小时'){
+ granularity = 'PT1H'
+ }else if(timeParticleSize == '按周'){
+ granularity = 'P1W'
+ }else if(timeParticleSize == '按月'){
+ granularity = 'P1M'
+ }else if(timeParticleSize == '合计'){
+ granularity = 'total'
+ }else if(timeParticleSize == '当日'){
+ granularity = '1'
+ }else if(timeParticleSize == '次日'){
+ granularity = '2'
+ }else if(timeParticleSize == '7日'){
+ granularity = '7'
+ }else if(timeParticleSize == '14日'){
+ granularity = '14'
+ }else if(timeParticleSize == '30日'){
+ granularity = '30'
+ }
+ callback && callback(granularity);
+ };
+
// 分组项取交集
X.groupintersection=function(c , a , callback){
@@ -582,7 +616,7 @@ var X = window.X || {
};
X.eventtable=function(data,callback){
- var titledata,condata = [];
+ var titledata,date,condata = [];
for(let i in data){
if(data[i]['values'].length > 0 ){
titledata= $.extend(true,[],data[0]['date_range']);
@@ -608,11 +642,11 @@ var X = window.X || {
layer.msg('查询数据为空');
}
}
- // console.log(condata);
- // return;
+ date = data[0]['start_date'] + " - " + data[0]['end_date'];
var dataArr = {
titledata:titledata,
- condata:condata
+ condata:condata,
+ date:date
}
callback && callback(dataArr);
};
@@ -633,8 +667,8 @@ var X = window.X || {
var wowtype='',chain_ratiotype='';//判断较环比和较同比的正负
var selected = {};//线多的话默认显示5条
- var length = data[0]['date_range'].length - 1;
- date = data[0]['date_range'][length];
+ date = data[0]['start_date'] + " - " + data[0]['end_date'];
+ // console.log(date);
for(let i in data){
for(let z in data[i]['values']){
var arr = {
@@ -820,12 +854,12 @@ var X = window.X || {
}
}
titdata.unshift("日期",data.title);
- console.log(titdata);
- console.log(tabledata)
+ var date = data['start_date'] + " - " + data['end_date'];
var dataArr = {
titledata:titdata,
condata:tabledata,
- retentiontype:data.retentiontype
+ retentiontype:data.retentiontype,
+ date:date
}
callback && callback(dataArr);
};
@@ -843,7 +877,8 @@ var X = window.X || {
var legenddata = [];
var seriesData = [];
var xAxisData = [];
- var date=0,sum=0,mean=0,sameday=0;
+ var date,sum=0,mean=0,sameday=0;
+ date = d['start_date'] + " - " + d['end_date'];
if(jQuery.isEmptyObject(d.values)){
var arr = []
for(let i in d['summary_values']){
@@ -860,7 +895,6 @@ var X = window.X || {
sum = sum + arr[i];
sameday = arr[i];
}
- date = '近'+xAxisData.length+'天时间';
mean = (sum / arr.length).toFixed(2);
}else {
@@ -936,9 +970,11 @@ var X = window.X || {
};
X.ltvtable=function(data,callback){
+ var date = data['start_date'] + " - " + data['end_date'];
var dataArr = {
titledata:data.title,
- condata:data.rows
+ condata:data.rows,
+ date:date
}
callback && callback(dataArr);
};
@@ -4139,16 +4175,66 @@ var X = window.X || {
var obj = $(this);
var offset = obj.offset();
var id = obj.attr('data-id');
+ var cat = obj.attr('data-cat');
+ var modelsize = obj.attr('data-modelsize');
+ var modeltype = obj.attr('data-modeltype');
+ var name = obj.attr('data-name');
X.parametersopen(X['DATA']['retentionlist'],'dropdownlist',[offset.top+obj.height(),offset.left],function(d){
+ obj.html(d.title);
var retentiontype = d.id;
var modelid = "retention"+id;
- X.api('dashboard/','post',{id:X.DATA['dashboard_id']},function(val){
- for(let i in val){
- if(val[i]['report_id'] == id){
- X.pageLogic['dashboard'].fillmodeldata(val[i],modelid,retentiontype);
- }
- }
- })
+ var reportid = [];
+ reportid.push(id);
+ // X.api('dashboard/','post',{id:X.DATA['dashboard_id']},function(val){
+ // for(let i in val){
+ // if(val[i]['report_id'] == id){
+ // X.pageLogic['dashboard'].fillmodeldata(val[i],modelid,retentiontype);
+ // }
+ // }
+ // })
+ X.api("report/read_report",'post',{project_id:X.DATA['projectid'],report_id:reportid},function(val){
+ console.log(val);
+ var query = {
+ eventView:val[0]['query']['eventView'],
+ events:val[0]['query']['events'],
+ };
+ //获取修改的时间
+ var dateid = "times"+id;
+ var time = $("#"+dateid).html();
+ var timearr = time.split(" ");
+ query['eventView']['startTime'] = timearr[0] + ' 00:00:00';
+ query['eventView']['endTime'] = timearr[2] + ' 23:59:59';
+ //获取修改的时间粒度
+ var timeParticleSizeid = "screenlist"+id;
+ var timeParticleSizename = $("#"+timeParticleSizeid).html();
+ var timeParticleSize;
+ X.granularityid(timeParticleSizename,function(d){
+ timeParticleSize = d;
+ query['eventView']['timeParticleSize'] = timeParticleSize;
+ X.api("ck/"+ cat +"_model","post",query,function(val){
+ if(JSON.stringify(val) != "{}"){
+ var bbsetdata = {
+ graph_size:modelsize,
+ graph_type:modeltype,
+ model:cat,
+ name:name,
+ report_id:id,
+ query:query
+ }
+
+ var modeldata = X.pageLogic['dashboard'].modeldata(bbsetdata,val,retentiontype);
+ //渲染模板和数据
+ X.template("modeltable",'conent-box'+modeldata[0]['id'],modeldata[0],function(){
+ X.pageLogic['dashboard'].morefeatures(modeldata[0]);
+ });
+
+ }else {
+ layer.msg('无数据!!!');
+ }
+
+ })
+ })
+ })
})
});
@@ -4156,7 +4242,7 @@ var X = window.X || {
$(document).off('click','.model-screenlist').on('click','.model-screenlist',function(){
var obj = $(this);
var offset = obj.offset();
-
+
var id = obj.attr('data-id');
var cat = obj.attr('data-cat');
var modelsize = obj.attr('data-modelsize');
@@ -4164,7 +4250,8 @@ var X = window.X || {
var name = obj.attr('data-name');
X.parametersopen(X['DATA']['screenlist'][cat],'dropdownlist',[offset.top+obj.height(),offset.left],function(d){
- console.log(d);
+ // console.log(d);
+ obj.html(d.title);
var reportid = [];
reportid.push(id);
X.api('report/read_report','post',{project_id:X.DATA['projectid'],report_id:reportid},function(val){
@@ -4173,6 +4260,14 @@ var X = window.X || {
events:val[0]['query']['events'],
};
query['eventView']['timeParticleSize'] = d.id;
+ //时间获取修改后的时间
+ // 报表时间id
+ var dateid = "times"+id;
+ var time = $("#"+dateid).html();
+ var timearr = time.split(" ");
+ query['eventView']['startTime'] = timearr[0] + ' 00:00:00';
+ query['eventView']['endTime'] = timearr[2] + ' 23:59:59';
+ // console.log(query);
X.api("ck/"+ cat +"_model","post",query,function(vals){
var bbsetdata = {
graph_size:modelsize,
@@ -4185,7 +4280,7 @@ var X = window.X || {
// debugger;
var modeldata = X.pageLogic['dashboard'].modeldata(bbsetdata,vals);
//渲染模板和数据
- X.template("modeltable",'model'+modeldata[0]['id'],modeldata[0],function(){
+ X.template("modeltable",'conent-box'+modeldata[0]['id'],modeldata[0],function(){
X.pageLogic['dashboard'].morefeatures(modeldata[0]);
});
})
@@ -4229,67 +4324,17 @@ var X = window.X || {
})
});
- // 横纵切换
- // $(document).off('click','.model-switch').on('click','.model-switch',function(){
- // var id = $(this).attr('data-id');
- // var modelswitch = $(this).attr('data-modelswitch');
- // var d = X['DATA']['kanbanlist'][id];
- // var modelid = 'model'+id;
- // var eventdata = [];
- // var startTime = d['query']['eventView']['startTime'];
- // var endTime = d['query']['eventView']['endTime'];
-
- // if(startTime && endTime){
- // var startTimearr = startTime.split(" ");
- // var endTimearr = endTime.split(" ");
- // }else {
- // var startTimearr = [];
- // var endTimearr = [];
- // }
-
- // var timeParticleSize = d['query']['eventView']['timeParticleSize'];
- // var granularity = ''
- // if(timeParticleSize){
- // X.granularity(timeParticleSize,function(d){
- // granularity = d;
- // });
- // }
- // X.api("ck/event_model","post",{report_id:id},function(val){
- // X.eventtable(val,function(data){//表格数据处理
- // data['name'] = d['name'];
- // data['modeltype'] = d['graph_type'];
- // data['id'] = d['report_id'];
- // data['modelsize'] = d['graph_size'];
- // data['cat'] = d['model'];
- // data['date'] = startTimearr[0] + ' - ' + endTimearr[0];
- // data['timeParticleSize'] = granularity;
- // eventdata.push(data);
- // })
- // if(modelswitch){
- // eventdata[0]['modelswitch'] = 1;
- // var originaldata;//原始数据
- // originaldata= $.extend(true,[],eventdata[0]['condata']);
- // originaldata.unshift(eventdata[0]['titledata']);
- // var dataarr = [];
- // for(let i in originaldata[0]){
- // var arr = [];
- // dataarr.push(arr);
- // }
- // for(let i in originaldata){
- // for(let j in originaldata[i]){
- // dataarr[j].push(originaldata[i][j]);
- // }
- // }
- // var titledata = dataarr[0];
- // var condata = dataarr.slice(1, dataarr.length - 1);
- // eventdata[0]['titledata'] = titledata;
- // eventdata[0]['condata'] = condata;
- // }
- // X.template("modeltable",modelid,eventdata[0],function(){
- // X.pageLogic['dashboard'].morefeatures(eventdata[0]);
- // });
- // })
- // });
+ //点击时间获取到单击的报表id
+ $(document).off('click','.model-times').on('click','.model-times',function(){
+ var arr = {
+ id:$(this).attr('data-id'),
+ cat:$(this).attr('data-cat'),
+ modeltype:$(this).attr('data-modeltype'),
+ modelsize:$(this).attr('data-modelsize'),
+ name:$(this).attr('data-name'),
+ }
+ X.DATA.oclickarr =arr;
+ });
},
@@ -4306,7 +4351,7 @@ var X = window.X || {
//填充看板数据
//总体逻辑是:根据获取到的看板内容去先渲染放置的框,在根据不同分析模型处理对应的数据进行填充
- fillmodeldata:function(d,id,type){//
+ fillmodeldata:function(d,id,type){
X.api("ck/"+d['model']+"_model","post",{report_id:d['report_id']},function(val){
var eventdata = X.pageLogic['dashboard'].modeldata(d,val,type);
var data;
@@ -4314,13 +4359,19 @@ var X = window.X || {
for(var z in eventdata){
if(id){
//当有id时更新对应id看板内的内容
- X.template("modeltable",id,eventdata[z],function(){
- X.pageLogic['dashboard'].morefeatures(eventdata[z]);
+ X.template("modeltype",id,eventdata[z],function(){
+ // X.pageLogic['dashboard'].morefeatures(eventdata[z]);
+ X.template("modeltable",'conent-box'+eventdata[z]['id'],eventdata[z],function(){
+ X.pageLogic['dashboard'].morefeatures(eventdata[z]);
+ });
});
}else {
//渲染模板和数据
- X.template("modeltable",'model'+eventdata[z]['id'],eventdata[z],function(){
- X.pageLogic['dashboard'].morefeatures(eventdata[z]);
+ X.template("modeltype",'model'+eventdata[z]['id'],eventdata[z],function(){
+ //X.pageLogic['dashboard'].morefeatures(eventdata[z]);
+ X.template("modeltable",'conent-box'+eventdata[z]['id'],eventdata[z],function(){
+ X.pageLogic['dashboard'].morefeatures(eventdata[z]);
+ });
});
}
}
@@ -4331,16 +4382,6 @@ var X = window.X || {
modeldata:function(d,val,type){
var eventdata = [];
- var startTime = d['query']['eventView']['startTime'];
- var endTime = d['query']['eventView']['endTime'];
- if(startTime && endTime){
- var startTimearr = startTime.split(" ");
- var endTimearr = endTime.split(" ");
- }else {
- var startTimearr = [];
- var endTimearr = [];
- }
-
var timeParticleSize = d['query']['eventView']['timeParticleSize'];
var granularity = ''
if(timeParticleSize){
@@ -4371,7 +4412,7 @@ var X = window.X || {
data['id'] = d['report_id'];
data['modelsize'] = d['graph_size'];
data['cat'] = d['model'];
- data['date'] = startTimearr[0] + ' - ' + endTimearr[0];
+ // data['date'] = startTimearr[0] + ' - ' + endTimearr[0];
data['timeParticleSize'] = granularity;
data['modelswitch'] = d['modelswitch'];
eventdata.push(data);
@@ -4405,7 +4446,7 @@ var X = window.X || {
data['id'] = d['report_id'];
data['modelsize'] = d['graph_size'];
data['cat'] = d['model'];
- data['date'] = startTimearr[0] + ' - ' + endTimearr[0];
+ // data['date'] = startTimearr[0] + ' - ' + endTimearr[0];
data['timeParticleSize'] = granularity;
eventdata.push(data);
})
@@ -4429,7 +4470,7 @@ var X = window.X || {
data['id'] = d['report_id'];
data['modelsize'] = d['graph_size'];
data['cat'] = d['model'];
- data['date'] = startTimearr[0] + ' - ' + endTimearr[0];
+ // data['date'] = startTimearr[0] + ' - ' + endTimearr[0];
data['timeParticleSize'] = granularity;
eventdata.push(data);
})
@@ -4441,7 +4482,7 @@ var X = window.X || {
data['id'] = d['report_id'];
data['modelsize'] = d['graph_size'];
data['cat'] = d['model'];
- data['date'] = startTimearr[0] + ' - ' + endTimearr[0];
+ // data['date'] = startTimearr[0] + ' - ' + endTimearr[0];
data['timeParticleSize'] = granularity;
eventdata.push(data);
})
@@ -4456,7 +4497,7 @@ var X = window.X || {
data['id'] = d['report_id'];
data['modelsize'] = d['graph_size'];
data['cat'] = d['model'];
- data['date'] = startTimearr[0] + ' - ' + endTimearr[0];
+ // data['date'] = startTimearr[0] + ' - ' + endTimearr[0];
data['timeParticleSize'] = granularity;
eventdata.push(data);
})
@@ -4467,7 +4508,7 @@ var X = window.X || {
data['id'] = d['report_id'];
data['modelsize'] = d['graph_size'];
data['cat'] = d['model'];
- data['date'] = startTimearr[0] + ' - ' + endTimearr[0];
+ // data['date'] = startTimearr[0] + ' - ' + endTimearr[0];
data['timeParticleSize'] = granularity;
eventdata.push(data);
})
@@ -4534,47 +4575,65 @@ var X = window.X || {
//设置时间
X.daterender(".model-times",function(start, end, label){
- var id = 'times'+eventdata.id;
+ // var id = $(this).attr('data-id');
+ var oclickarr = X.DATA.oclickarr;
+ var id = 'times'+oclickarr.id;
var startTime = start.format('YYYY-MM-DD')+ " "+ "00:00:00";
var endTime = end.format('YYYY-MM-DD')+ " "+ "23:59:59";
- $("#"+id).html(startTime + ' - ' + endTime);
+ $("#"+id).html(start.format('YYYY-MM-DD') + ' - ' + end.format('YYYY-MM-DD'));
var reportid = [];
- reportid.push(eventdata.id);
+ reportid.push(oclickarr.id);
X.api('report/read_report','post',{project_id:X.DATA['projectid'],report_id:reportid},function(val){
- var query = {
- eventView:val[0]['query']['eventView'],
- events:val[0]['query']['events'],
- };
- query['eventView']['startTime'] = startTime;
- query['eventView']['endTime'] = endTime;
-
- 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;
- query['eventView']['e_days'] = parseInt((sameday - endmonth)/86400);
- query['eventView']['s_days'] = parseInt((sameday - startmonth)/86400);
-
- X.api("ck/"+ eventdata.cat +"_model","post",query,function(val){
- var bbsetdata = {
- graph_size:eventdata['modelsize'],
- graph_type:eventdata['modeltype'],
- model:eventdata['cat'],
- name:eventdata['name'],
- report_id:eventdata['id'],
- query:query
- }
-
- var modeldata = X.pageLogic['dashboard'].modeldata(bbsetdata,val);
- // console.log(modeldata);
- //渲染模板和数据
- X.template("modeltable",'model'+modeldata[0]['id'],modeldata[0],function(){
- X.pageLogic['dashboard'].morefeatures(modeldata);
+ if(val.length > 0){
+ var query = {
+ eventView:val[0]['query']['eventView'],
+ events:val[0]['query']['events'],
+ };
+ query['eventView']['startTime'] = startTime;
+ query['eventView']['endTime'] = endTime;
+
+ 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;
+ query['eventView']['e_days'] = parseInt((sameday - endmonth)/86400);
+ query['eventView']['s_days'] = parseInt((sameday - startmonth)/86400);
+ // 获取选择后的时间粒度
+ var timeParticleSizeid = "screenlist"+oclickarr.id;
+ var timeParticleSizename = $("#"+timeParticleSizeid).html();
+ var timeParticleSize;
+ X.granularityid(timeParticleSizename,function(d){
+ timeParticleSize = d;
+ query['eventView']['timeParticleSize'] = timeParticleSize;
+ X.api("ck/"+ oclickarr.cat +"_model","post",query,function(val){
+ if(val.length > 0){
+ var bbsetdata = {
+ graph_size:oclickarr['modelsize'],
+ graph_type:oclickarr['modeltype'],
+ model:oclickarr['cat'],
+ name:oclickarr['name'],
+ report_id:oclickarr['id'],
+ query:query
+ }
+
+ var modeldata = X.pageLogic['dashboard'].modeldata(bbsetdata,val);
+ //渲染模板和数据
+ X.template("modeltable",'conent-box'+modeldata[0]['id'],modeldata[0],function(){
+ X.pageLogic['dashboard'].morefeatures(modeldata[0]);
+ });
+
+ }else {
+ layer.msg('无数据!!!');
+ }
+
+ })
});
- })
+ }else {
+ layer.msg('无数据!!!');
+ }
})
});
@@ -7435,9 +7494,26 @@ var X = window.X || {
this.parms = parms;
this.callback = parms.callback;
var data = parms;
- // console.log(data);
+ // console.log("table",data);
X.laytpldata("#kanban-model-modify-table-dot",data,"model"+data.id,function(html){
+ $("#conent-box"+data.id).html(html);
+
+ })
+
+ }
+ };
+})();
+// srczip/logic/modeltype.js
+(function(){
+ X.pageLogic['modeltype'] = {
+ init : function(parms){
+ var me = this;
+ this.parms = parms;
+ this.callback = parms.callback;
+ var data = parms;
+ // console.log("type",data);
+ X.laytpldata("#kanban-model-modify-type-dot",data,"model"+data.id,function(html){
$("#model"+data.id).html(html);
})
diff --git a/web/srczip/common.js b/web/srczip/common.js
index ab86fe0..bc85855 100644
--- a/web/srczip/common.js
+++ b/web/srczip/common.js
@@ -115,9 +115,9 @@ var X = window.X || {
(function(){
//本地
- var ipurl = "http://10.0.0.77:7889/api/v1/";
+ // var ipurl = "http://10.0.0.77:7889/api/v1/";
//线上
- // var ipurl = "http://139.159.159.3:9865/api/v1/";
+ var ipurl = "http://139.159.159.3:9865/api/v1/";
//设置或读取登录缓存,需要保存到localStorage,防止刷新时候登录数据丢失
X.loginCache = function(data){
@@ -404,6 +404,40 @@ var X = window.X || {
callback && callback(granularity);
};
+ //根据中文名获取时间粒度id
+ X.granularityid=function(timeParticleSize,callback){
+ if(timeParticleSize == '按天'){
+ granularity = 'P1D'
+ }else if(timeParticleSize == '按分钟'){
+ granularity = 'PT1M'
+ }else if(timeParticleSize == '每五分钟'){
+ granularity = 'PT5M'
+ }else if(timeParticleSize == '每十分钟'){
+ granularity = 'PT10M'
+ }else if(timeParticleSize == '每十五分钟'){
+ granularity = 'PT15M'
+ }else if(timeParticleSize == '按小时'){
+ granularity = 'PT1H'
+ }else if(timeParticleSize == '按周'){
+ granularity = 'P1W'
+ }else if(timeParticleSize == '按月'){
+ granularity = 'P1M'
+ }else if(timeParticleSize == '合计'){
+ granularity = 'total'
+ }else if(timeParticleSize == '当日'){
+ granularity = '1'
+ }else if(timeParticleSize == '次日'){
+ granularity = '2'
+ }else if(timeParticleSize == '7日'){
+ granularity = '7'
+ }else if(timeParticleSize == '14日'){
+ granularity = '14'
+ }else if(timeParticleSize == '30日'){
+ granularity = '30'
+ }
+ callback && callback(granularity);
+ };
+
// 分组项取交集
X.groupintersection=function(c , a , callback){
@@ -581,7 +615,7 @@ var X = window.X || {
};
X.eventtable=function(data,callback){
- var titledata,condata = [];
+ var titledata,date,condata = [];
for(let i in data){
if(data[i]['values'].length > 0 ){
titledata= $.extend(true,[],data[0]['date_range']);
@@ -607,11 +641,11 @@ var X = window.X || {
layer.msg('查询数据为空');
}
}
- // console.log(condata);
- // return;
+ date = data[0]['start_date'] + " - " + data[0]['end_date'];
var dataArr = {
titledata:titledata,
- condata:condata
+ condata:condata,
+ date:date
}
callback && callback(dataArr);
};
@@ -632,8 +666,8 @@ var X = window.X || {
var wowtype='',chain_ratiotype='';//判断较环比和较同比的正负
var selected = {};//线多的话默认显示5条
- var length = data[0]['date_range'].length - 1;
- date = data[0]['date_range'][length];
+ date = data[0]['start_date'] + " - " + data[0]['end_date'];
+ // console.log(date);
for(let i in data){
for(let z in data[i]['values']){
var arr = {
@@ -819,12 +853,12 @@ var X = window.X || {
}
}
titdata.unshift("日期",data.title);
- console.log(titdata);
- console.log(tabledata)
+ var date = data['start_date'] + " - " + data['end_date'];
var dataArr = {
titledata:titdata,
condata:tabledata,
- retentiontype:data.retentiontype
+ retentiontype:data.retentiontype,
+ date:date
}
callback && callback(dataArr);
};
@@ -842,7 +876,8 @@ var X = window.X || {
var legenddata = [];
var seriesData = [];
var xAxisData = [];
- var date=0,sum=0,mean=0,sameday=0;
+ var date,sum=0,mean=0,sameday=0;
+ date = d['start_date'] + " - " + d['end_date'];
if(jQuery.isEmptyObject(d.values)){
var arr = []
for(let i in d['summary_values']){
@@ -859,7 +894,6 @@ var X = window.X || {
sum = sum + arr[i];
sameday = arr[i];
}
- date = '近'+xAxisData.length+'天时间';
mean = (sum / arr.length).toFixed(2);
}else {
@@ -935,9 +969,11 @@ var X = window.X || {
};
X.ltvtable=function(data,callback){
+ var date = data['start_date'] + " - " + data['end_date'];
var dataArr = {
titledata:data.title,
- condata:data.rows
+ condata:data.rows,
+ date:date
}
callback && callback(dataArr);
};
diff --git a/web/srczip/logic/dashboard.js b/web/srczip/logic/dashboard.js
index 4834281..4ea2a42 100644
--- a/web/srczip/logic/dashboard.js
+++ b/web/srczip/logic/dashboard.js
@@ -329,16 +329,66 @@
var obj = $(this);
var offset = obj.offset();
var id = obj.attr('data-id');
+ var cat = obj.attr('data-cat');
+ var modelsize = obj.attr('data-modelsize');
+ var modeltype = obj.attr('data-modeltype');
+ var name = obj.attr('data-name');
X.parametersopen(X['DATA']['retentionlist'],'dropdownlist',[offset.top+obj.height(),offset.left],function(d){
+ obj.html(d.title);
var retentiontype = d.id;
var modelid = "retention"+id;
- X.api('dashboard/','post',{id:X.DATA['dashboard_id']},function(val){
- for(let i in val){
- if(val[i]['report_id'] == id){
- X.pageLogic['dashboard'].fillmodeldata(val[i],modelid,retentiontype);
- }
- }
- })
+ var reportid = [];
+ reportid.push(id);
+ // X.api('dashboard/','post',{id:X.DATA['dashboard_id']},function(val){
+ // for(let i in val){
+ // if(val[i]['report_id'] == id){
+ // X.pageLogic['dashboard'].fillmodeldata(val[i],modelid,retentiontype);
+ // }
+ // }
+ // })
+ X.api("report/read_report",'post',{project_id:X.DATA['projectid'],report_id:reportid},function(val){
+ console.log(val);
+ var query = {
+ eventView:val[0]['query']['eventView'],
+ events:val[0]['query']['events'],
+ };
+ //获取修改的时间
+ var dateid = "times"+id;
+ var time = $("#"+dateid).html();
+ var timearr = time.split(" ");
+ query['eventView']['startTime'] = timearr[0] + ' 00:00:00';
+ query['eventView']['endTime'] = timearr[2] + ' 23:59:59';
+ //获取修改的时间粒度
+ var timeParticleSizeid = "screenlist"+id;
+ var timeParticleSizename = $("#"+timeParticleSizeid).html();
+ var timeParticleSize;
+ X.granularityid(timeParticleSizename,function(d){
+ timeParticleSize = d;
+ query['eventView']['timeParticleSize'] = timeParticleSize;
+ X.api("ck/"+ cat +"_model","post",query,function(val){
+ if(JSON.stringify(val) != "{}"){
+ var bbsetdata = {
+ graph_size:modelsize,
+ graph_type:modeltype,
+ model:cat,
+ name:name,
+ report_id:id,
+ query:query
+ }
+
+ var modeldata = X.pageLogic['dashboard'].modeldata(bbsetdata,val,retentiontype);
+ //渲染模板和数据
+ X.template("modeltable",'conent-box'+modeldata[0]['id'],modeldata[0],function(){
+ X.pageLogic['dashboard'].morefeatures(modeldata[0]);
+ });
+
+ }else {
+ layer.msg('无数据!!!');
+ }
+
+ })
+ })
+ })
})
});
@@ -346,7 +396,7 @@
$(document).off('click','.model-screenlist').on('click','.model-screenlist',function(){
var obj = $(this);
var offset = obj.offset();
-
+
var id = obj.attr('data-id');
var cat = obj.attr('data-cat');
var modelsize = obj.attr('data-modelsize');
@@ -354,7 +404,8 @@
var name = obj.attr('data-name');
X.parametersopen(X['DATA']['screenlist'][cat],'dropdownlist',[offset.top+obj.height(),offset.left],function(d){
- console.log(d);
+ // console.log(d);
+ obj.html(d.title);
var reportid = [];
reportid.push(id);
X.api('report/read_report','post',{project_id:X.DATA['projectid'],report_id:reportid},function(val){
@@ -363,6 +414,14 @@
events:val[0]['query']['events'],
};
query['eventView']['timeParticleSize'] = d.id;
+ //时间获取修改后的时间
+ // 报表时间id
+ var dateid = "times"+id;
+ var time = $("#"+dateid).html();
+ var timearr = time.split(" ");
+ query['eventView']['startTime'] = timearr[0] + ' 00:00:00';
+ query['eventView']['endTime'] = timearr[2] + ' 23:59:59';
+ // console.log(query);
X.api("ck/"+ cat +"_model","post",query,function(vals){
var bbsetdata = {
graph_size:modelsize,
@@ -375,7 +434,7 @@
// debugger;
var modeldata = X.pageLogic['dashboard'].modeldata(bbsetdata,vals);
//渲染模板和数据
- X.template("modeltable",'model'+modeldata[0]['id'],modeldata[0],function(){
+ X.template("modeltable",'conent-box'+modeldata[0]['id'],modeldata[0],function(){
X.pageLogic['dashboard'].morefeatures(modeldata[0]);
});
})
@@ -419,67 +478,17 @@
})
});
- // 横纵切换
- // $(document).off('click','.model-switch').on('click','.model-switch',function(){
- // var id = $(this).attr('data-id');
- // var modelswitch = $(this).attr('data-modelswitch');
- // var d = X['DATA']['kanbanlist'][id];
- // var modelid = 'model'+id;
- // var eventdata = [];
- // var startTime = d['query']['eventView']['startTime'];
- // var endTime = d['query']['eventView']['endTime'];
-
- // if(startTime && endTime){
- // var startTimearr = startTime.split(" ");
- // var endTimearr = endTime.split(" ");
- // }else {
- // var startTimearr = [];
- // var endTimearr = [];
- // }
-
- // var timeParticleSize = d['query']['eventView']['timeParticleSize'];
- // var granularity = ''
- // if(timeParticleSize){
- // X.granularity(timeParticleSize,function(d){
- // granularity = d;
- // });
- // }
- // X.api("ck/event_model","post",{report_id:id},function(val){
- // X.eventtable(val,function(data){//表格数据处理
- // data['name'] = d['name'];
- // data['modeltype'] = d['graph_type'];
- // data['id'] = d['report_id'];
- // data['modelsize'] = d['graph_size'];
- // data['cat'] = d['model'];
- // data['date'] = startTimearr[0] + ' - ' + endTimearr[0];
- // data['timeParticleSize'] = granularity;
- // eventdata.push(data);
- // })
- // if(modelswitch){
- // eventdata[0]['modelswitch'] = 1;
- // var originaldata;//原始数据
- // originaldata= $.extend(true,[],eventdata[0]['condata']);
- // originaldata.unshift(eventdata[0]['titledata']);
- // var dataarr = [];
- // for(let i in originaldata[0]){
- // var arr = [];
- // dataarr.push(arr);
- // }
- // for(let i in originaldata){
- // for(let j in originaldata[i]){
- // dataarr[j].push(originaldata[i][j]);
- // }
- // }
- // var titledata = dataarr[0];
- // var condata = dataarr.slice(1, dataarr.length - 1);
- // eventdata[0]['titledata'] = titledata;
- // eventdata[0]['condata'] = condata;
- // }
- // X.template("modeltable",modelid,eventdata[0],function(){
- // X.pageLogic['dashboard'].morefeatures(eventdata[0]);
- // });
- // })
- // });
+ //点击时间获取到单击的报表id
+ $(document).off('click','.model-times').on('click','.model-times',function(){
+ var arr = {
+ id:$(this).attr('data-id'),
+ cat:$(this).attr('data-cat'),
+ modeltype:$(this).attr('data-modeltype'),
+ modelsize:$(this).attr('data-modelsize'),
+ name:$(this).attr('data-name'),
+ }
+ X.DATA.oclickarr =arr;
+ });
},
@@ -496,7 +505,7 @@
//填充看板数据
//总体逻辑是:根据获取到的看板内容去先渲染放置的框,在根据不同分析模型处理对应的数据进行填充
- fillmodeldata:function(d,id,type){//
+ fillmodeldata:function(d,id,type){
X.api("ck/"+d['model']+"_model","post",{report_id:d['report_id']},function(val){
var eventdata = X.pageLogic['dashboard'].modeldata(d,val,type);
var data;
@@ -504,13 +513,19 @@
for(var z in eventdata){
if(id){
//当有id时更新对应id看板内的内容
- X.template("modeltable",id,eventdata[z],function(){
- X.pageLogic['dashboard'].morefeatures(eventdata[z]);
+ X.template("modeltype",id,eventdata[z],function(){
+ // X.pageLogic['dashboard'].morefeatures(eventdata[z]);
+ X.template("modeltable",'conent-box'+eventdata[z]['id'],eventdata[z],function(){
+ X.pageLogic['dashboard'].morefeatures(eventdata[z]);
+ });
});
}else {
//渲染模板和数据
- X.template("modeltable",'model'+eventdata[z]['id'],eventdata[z],function(){
- X.pageLogic['dashboard'].morefeatures(eventdata[z]);
+ X.template("modeltype",'model'+eventdata[z]['id'],eventdata[z],function(){
+ //X.pageLogic['dashboard'].morefeatures(eventdata[z]);
+ X.template("modeltable",'conent-box'+eventdata[z]['id'],eventdata[z],function(){
+ X.pageLogic['dashboard'].morefeatures(eventdata[z]);
+ });
});
}
}
@@ -521,16 +536,6 @@
modeldata:function(d,val,type){
var eventdata = [];
- var startTime = d['query']['eventView']['startTime'];
- var endTime = d['query']['eventView']['endTime'];
- if(startTime && endTime){
- var startTimearr = startTime.split(" ");
- var endTimearr = endTime.split(" ");
- }else {
- var startTimearr = [];
- var endTimearr = [];
- }
-
var timeParticleSize = d['query']['eventView']['timeParticleSize'];
var granularity = ''
if(timeParticleSize){
@@ -561,7 +566,7 @@
data['id'] = d['report_id'];
data['modelsize'] = d['graph_size'];
data['cat'] = d['model'];
- data['date'] = startTimearr[0] + ' - ' + endTimearr[0];
+ // data['date'] = startTimearr[0] + ' - ' + endTimearr[0];
data['timeParticleSize'] = granularity;
data['modelswitch'] = d['modelswitch'];
eventdata.push(data);
@@ -595,7 +600,7 @@
data['id'] = d['report_id'];
data['modelsize'] = d['graph_size'];
data['cat'] = d['model'];
- data['date'] = startTimearr[0] + ' - ' + endTimearr[0];
+ // data['date'] = startTimearr[0] + ' - ' + endTimearr[0];
data['timeParticleSize'] = granularity;
eventdata.push(data);
})
@@ -619,7 +624,7 @@
data['id'] = d['report_id'];
data['modelsize'] = d['graph_size'];
data['cat'] = d['model'];
- data['date'] = startTimearr[0] + ' - ' + endTimearr[0];
+ // data['date'] = startTimearr[0] + ' - ' + endTimearr[0];
data['timeParticleSize'] = granularity;
eventdata.push(data);
})
@@ -631,7 +636,7 @@
data['id'] = d['report_id'];
data['modelsize'] = d['graph_size'];
data['cat'] = d['model'];
- data['date'] = startTimearr[0] + ' - ' + endTimearr[0];
+ // data['date'] = startTimearr[0] + ' - ' + endTimearr[0];
data['timeParticleSize'] = granularity;
eventdata.push(data);
})
@@ -646,7 +651,7 @@
data['id'] = d['report_id'];
data['modelsize'] = d['graph_size'];
data['cat'] = d['model'];
- data['date'] = startTimearr[0] + ' - ' + endTimearr[0];
+ // data['date'] = startTimearr[0] + ' - ' + endTimearr[0];
data['timeParticleSize'] = granularity;
eventdata.push(data);
})
@@ -657,7 +662,7 @@
data['id'] = d['report_id'];
data['modelsize'] = d['graph_size'];
data['cat'] = d['model'];
- data['date'] = startTimearr[0] + ' - ' + endTimearr[0];
+ // data['date'] = startTimearr[0] + ' - ' + endTimearr[0];
data['timeParticleSize'] = granularity;
eventdata.push(data);
})
@@ -724,47 +729,65 @@
//设置时间
X.daterender(".model-times",function(start, end, label){
- var id = 'times'+eventdata.id;
+ // var id = $(this).attr('data-id');
+ var oclickarr = X.DATA.oclickarr;
+ var id = 'times'+oclickarr.id;
var startTime = start.format('YYYY-MM-DD')+ " "+ "00:00:00";
var endTime = end.format('YYYY-MM-DD')+ " "+ "23:59:59";
- $("#"+id).html(startTime + ' - ' + endTime);
+ $("#"+id).html(start.format('YYYY-MM-DD') + ' - ' + end.format('YYYY-MM-DD'));
var reportid = [];
- reportid.push(eventdata.id);
+ reportid.push(oclickarr.id);
X.api('report/read_report','post',{project_id:X.DATA['projectid'],report_id:reportid},function(val){
- var query = {
- eventView:val[0]['query']['eventView'],
- events:val[0]['query']['events'],
- };
- query['eventView']['startTime'] = startTime;
- query['eventView']['endTime'] = endTime;
-
- 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;
- query['eventView']['e_days'] = parseInt((sameday - endmonth)/86400);
- query['eventView']['s_days'] = parseInt((sameday - startmonth)/86400);
-
- X.api("ck/"+ eventdata.cat +"_model","post",query,function(val){
- var bbsetdata = {
- graph_size:eventdata['modelsize'],
- graph_type:eventdata['modeltype'],
- model:eventdata['cat'],
- name:eventdata['name'],
- report_id:eventdata['id'],
- query:query
- }
-
- var modeldata = X.pageLogic['dashboard'].modeldata(bbsetdata,val);
- // console.log(modeldata);
- //渲染模板和数据
- X.template("modeltable",'model'+modeldata[0]['id'],modeldata[0],function(){
- X.pageLogic['dashboard'].morefeatures(modeldata);
+ if(val.length > 0){
+ var query = {
+ eventView:val[0]['query']['eventView'],
+ events:val[0]['query']['events'],
+ };
+ query['eventView']['startTime'] = startTime;
+ query['eventView']['endTime'] = endTime;
+
+ 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;
+ query['eventView']['e_days'] = parseInt((sameday - endmonth)/86400);
+ query['eventView']['s_days'] = parseInt((sameday - startmonth)/86400);
+ // 获取选择后的时间粒度
+ var timeParticleSizeid = "screenlist"+oclickarr.id;
+ var timeParticleSizename = $("#"+timeParticleSizeid).html();
+ var timeParticleSize;
+ X.granularityid(timeParticleSizename,function(d){
+ timeParticleSize = d;
+ query['eventView']['timeParticleSize'] = timeParticleSize;
+ X.api("ck/"+ oclickarr.cat +"_model","post",query,function(val){
+ if(val.length > 0){
+ var bbsetdata = {
+ graph_size:oclickarr['modelsize'],
+ graph_type:oclickarr['modeltype'],
+ model:oclickarr['cat'],
+ name:oclickarr['name'],
+ report_id:oclickarr['id'],
+ query:query
+ }
+
+ var modeldata = X.pageLogic['dashboard'].modeldata(bbsetdata,val);
+ //渲染模板和数据
+ X.template("modeltable",'conent-box'+modeldata[0]['id'],modeldata[0],function(){
+ X.pageLogic['dashboard'].morefeatures(modeldata[0]);
+ });
+
+ }else {
+ layer.msg('无数据!!!');
+ }
+
+ })
});
- })
+ }else {
+ layer.msg('无数据!!!');
+ }
})
});
diff --git a/web/srczip/logic/modeltable.js b/web/srczip/logic/modeltable.js
index 7a312ed..fb6c0b2 100644
--- a/web/srczip/logic/modeltable.js
+++ b/web/srczip/logic/modeltable.js
@@ -5,21 +5,13 @@
this.parms = parms;
this.callback = parms.callback;
var data = parms;
- // console.log(data);
+ // console.log("table",data);
X.laytpldata("#kanban-model-modify-table-dot",data,"model"+data.id,function(html){
- $("#model"+data.id).html(html);
+ $("#conent-box"+data.id).html(html);
+
})
- // for(var i in data){
- // X.laytpldata("#kanban-model-table-dot",data[i],null,function(html){
- // // console.log($("#model-box").html());
- // console.log(html);
- // $('#model-box').append(html);
- // });
- // }
-
-
}
};
})();
\ No newline at end of file
diff --git a/web/srczip/logic/modeltype.js b/web/srczip/logic/modeltype.js
new file mode 100644
index 0000000..5dbae2d
--- /dev/null
+++ b/web/srczip/logic/modeltype.js
@@ -0,0 +1,24 @@
+(function(){
+ X.pageLogic['modeltype'] = {
+ init : function(parms){
+ var me = this;
+ this.parms = parms;
+ this.callback = parms.callback;
+ var data = parms;
+ // console.log("type",data);
+ X.laytpldata("#kanban-model-modify-type-dot",data,"model"+data.id,function(html){
+ $("#model"+data.id).html(html);
+ })
+
+ // for(var i in data){
+ // X.laytpldata("#kanban-model-table-dot",data[i],null,function(html){
+ // // console.log($("#model-box").html());
+ // console.log(html);
+ // $('#model-box').append(html);
+ // });
+ // }
+
+
+ }
+ };
+})();
\ No newline at end of file