添加sql语句查看,api语句查看,事件管理界面列表,个人设置
This commit is contained in:
parent
10257cc3f3
commit
c6e1439cb8
@ -5,11 +5,11 @@
|
||||
<title>LeguX</title>
|
||||
<link rel="stylesheet" href="./layui/css/layui.css"><!-- layui样式文件 -->
|
||||
<link rel="stylesheet" href="./static/css/style.css"><!-- 界面样式 -->
|
||||
<link rel="stylesheet" href="./static/css/analysis.css" >
|
||||
<link rel="stylesheet" href="./static/css/projectadmin.css" >
|
||||
<!-- <link rel="stylesheet" href="./static/css/analysis.css" >
|
||||
<link rel="stylesheet" href="./static/css/projectadmin.css" > -->
|
||||
<link rel="stylesheet" href="./static/css/event.css" >
|
||||
<link rel="stylesheet" href="./static/css/daterangepicker.css"><!-- 时间选择控件样式 -->
|
||||
<link rel="stylesheet" href="./static/img/iconfont/iconfont.css">
|
||||
<!-- <link rel="stylesheet" href="./static/img/iconfont/iconfont.css"> -->
|
||||
<script src="./src/jquery.min.js"></script>
|
||||
<script src="./src/echarts.min.js"></script><!-- 图标控件 -->
|
||||
<script src="./src/eventemitter.js"></script>
|
||||
@ -22,7 +22,7 @@
|
||||
<script src="./src/comboTreePlugin.js" type="text/javascript"></script><!-- 多级下拉框选项 -->
|
||||
<!-- <script src="./src/doT.js"></script> -->
|
||||
<!-- <script src="./src/puble.js"></script> -->
|
||||
<script src="./src/x.min.js"></script>
|
||||
<!-- <script src="./src/x.min.js"></script> -->
|
||||
</head>
|
||||
|
||||
<body>
|
||||
@ -32,7 +32,12 @@
|
||||
|
||||
</div>
|
||||
|
||||
</script>
|
||||
<script>
|
||||
var v= (new Date()).getTime();
|
||||
document.write('<link rel="stylesheet" type="text/css" href="./static/css/analysis.css?v='+v+'"/>');
|
||||
document.write('<link rel="stylesheet" type="text/css" href="./static/css/projectadmin.css?v='+v+'"/>');
|
||||
document.write('<link rel="stylesheet" type="text/css" href="./static/img/iconfont/iconfont.css?v='+v+'"/>');
|
||||
document.write("<script type='text/javascript' src='./src/x.min.js?v=" + v + "'><\/script>");
|
||||
</script>
|
||||
</body>
|
||||
</html>
|
||||
|
@ -50,8 +50,8 @@
|
||||
{{# layui.each(d, function(index, item){ }}
|
||||
<div class="addexistuser-con-user-list-box">
|
||||
<div class="addexistuser-con-user-list-info-box">
|
||||
<div class="addexistuser-userName">{{item.userName}}</div>
|
||||
<div class="addexistuser-loginName">{{item.loginName}}</div>
|
||||
<div class="addexistuser-userName">{{item.nickname}}</div>
|
||||
<div class="addexistuser-loginName">{{item.name}}</div>
|
||||
</div>
|
||||
<img src="./static/img/jia3.png" data-index="{{index}}">
|
||||
</div>
|
||||
@ -62,8 +62,8 @@
|
||||
{{# layui.each(d, function(index, item){ }}
|
||||
|
||||
<div class="addexistuser-table-con-box">
|
||||
<div>{{item.loginName}}</div>
|
||||
<div>{{item.userName}}</div>
|
||||
<div>{{item.name}}</div>
|
||||
<div>{{item.nickname}}</div>
|
||||
<div class="addexistuser-table-tit-w addexistuser-role"> <span data-index="{{index}}">{{item.projectroletit}}</span> </div>
|
||||
<div class="addexistuser-table-tit-w addexistuser-attr"> <span data-index="{{index}}">{{item.datarightstit}}</span> </div>
|
||||
<div class="addexistuser-table-tit-cz"> <img src="./static/img/cha1.png" data-index="{{index}}"/> </div>
|
||||
|
@ -13,7 +13,7 @@
|
||||
<div class="analysis-navigation-bar-right-jisuan">
|
||||
<span>近似计算</span>
|
||||
<div class="layui-form" title="开启后,将近似计算触发用户数,人均次数,人均值和去重数,极大优化性能减少计算时间,结果偏差控制在千分之四内">
|
||||
<div class="layui-form-item modify-layui-form-item">
|
||||
<div class="layui-form-item modify-layui-form-item" style="margin-bottom: 0px !important;">
|
||||
<input type="checkbox" name="close" lay-skin="switch" lay-text="" class="sqsz">
|
||||
</div>
|
||||
</div>
|
||||
@ -170,9 +170,9 @@
|
||||
<div class="analtsis-chart-switch-box">
|
||||
<div class="analtsis-chart-switch" title="趋势图"> <i class="iconfont" style="font-size: 18px; "></i> </div>
|
||||
<div class="analtsis-chart-switch select-chart" title="堆积图"> <i class="iconfont" style="font-size: 18px; "></i> </div>
|
||||
<div class="analtsis-chart-switch" title="累计图"> <i class="iconfont" style="font-size: 18px; "></i> </div>
|
||||
<!-- <div class="analtsis-chart-switch" title="累计图"> <i class="iconfont" style="font-size: 18px; "></i> </div> -->
|
||||
<div class="analtsis-chart-switch" title="分布图"> <i class="iconfont" style="font-size: 18px; "></i> </div>
|
||||
<div class="analtsis-chart-switch" title="饼状分布"> <i class="iconfont" style="font-size: 18px;"></i> </div>
|
||||
<!-- <div class="analtsis-chart-switch" title="饼状分布"> <i class="iconfont" style="font-size: 18px;"></i> </div> -->
|
||||
</div>
|
||||
</div>
|
||||
|
||||
@ -180,8 +180,20 @@
|
||||
<!-- 统计图 -->
|
||||
<div class="analysis-echarts" id="analysis-echarts"></div>
|
||||
|
||||
|
||||
|
||||
<div class="table-div-box">
|
||||
<table class="table-fenxi-box">
|
||||
<thead>
|
||||
<tr class="table-fenxi-th">
|
||||
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
<tr class="table-fenxi-td">
|
||||
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
@ -192,6 +204,19 @@
|
||||
|
||||
</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">
|
||||
{{# layui.each(d, function(index, item){ }}
|
||||
<td>{{item.title}}</td>
|
||||
{{# }); }}
|
||||
</script>
|
||||
|
||||
|
||||
<script id="analysis-con-left-screen-list-dot" type="text/html">
|
||||
{{# layui.each(d, function(index, item){ }}
|
||||
|
||||
@ -298,7 +323,7 @@
|
||||
<div class="analysis-ta-property-range analysis-section"> <img src="./static/img/shezhi2.png"> </div>
|
||||
{{# } }} -->
|
||||
|
||||
{{# if(item.data_type === "date"){ }}
|
||||
{{# if(item.data_type === "datetime"){ }}
|
||||
<div class="analysis-ta-property-range analysis-granularity" data-index="{{index}}" data-type="{{item.data_type}}"> <img src="./static/img/shezhi2.png"> </div>
|
||||
{{# } }}
|
||||
{{# if(item.data_type === "array"){ }}
|
||||
|
@ -25,7 +25,7 @@
|
||||
<a href="javascript:;">行为分析</a>
|
||||
<dl class="layui-nav-child">
|
||||
<dd><a class="ajax-content" href="analysis" data-id="conetnt">事件分析</a></dd>
|
||||
<dd><a href="javascript:void(0);">留存分析</a></dd>
|
||||
<dd><a class="ajax-content" href="retained" data-id="conetnt">留存分析</a></dd>
|
||||
<dd><a href="javascript:void(0);">漏斗分析</a></dd>
|
||||
<dd><a href="javascript:void(0);">分布分析</a></dd>
|
||||
<dd><a href="javascript:void(0);">路径分析</a></dd>
|
||||
@ -42,7 +42,7 @@
|
||||
<li class="layui-nav-item">
|
||||
<a href="javascript:;">数据管理</a>
|
||||
<dl class="layui-nav-child">
|
||||
<dd><a href="javascript:void(0);">事件管理</a></dd>
|
||||
<dd><a class="ajax-content" href="eventmanagement" data-id="conetnt">事件管理</a></dd>
|
||||
<dd><a class="ajax-content" href="eventattradmin" data-id="conetnt">事件属性管理</a></dd>
|
||||
<dd><a class="ajax-content" href="userattradmin" data-id="conetnt">用户属性管理</a></dd>
|
||||
<dd><a href="javascript:void(0);">预警管理</a></dd>
|
||||
@ -56,7 +56,7 @@
|
||||
<li class="layui-nav-item">
|
||||
<a href="javascript:;">设置</a>
|
||||
<dl class="layui-nav-child">
|
||||
<dd><a href="javascript:void(0);">个人设置</a></dd>
|
||||
<dd><a class="ajax-content" href="personalsettings" data-id="conetnt">个人设置</a></dd>
|
||||
<dd><a class="ajax-content" href="projectinfo" data-id="conetnt">项目管理</a></dd>
|
||||
<dd><a href="javascript:void(0);">系统管理</a></dd>
|
||||
<dd><a href="javascript:void(0);">退出登录</a></dd>
|
||||
|
38
web/pages/eventmanagement.html
Normal file
38
web/pages/eventmanagement.html
Normal file
@ -0,0 +1,38 @@
|
||||
<!-- 事件管理 -->
|
||||
<div class="eventattradmin-bg-box">
|
||||
|
||||
<div class="eventattradmin-box">
|
||||
<div class="eventattradmin-top-box">
|
||||
<div class="eventattradmin-left___y490Q">事件管理<i class="layui-icon" title="在该页面进行事件及事件属性的管理。包括设置事件的显示名,显示状态等;设置事件属性的显示名,显示状态,计数单位,上传维度表等功能"></i> </div>
|
||||
|
||||
<div class="eventattradmin-right___1TIt8">
|
||||
<div class="eventattradmin-search___23TMG">
|
||||
<i class="layui-icon"></i>
|
||||
<input type="text" placeholder="请输入搜索" />
|
||||
<img src="./static/img/cha1.png">
|
||||
</div>
|
||||
<div class="eventattradmin-display___21tQp">
|
||||
<img src="./static/img/peizhi2.png">
|
||||
<span>显示名配置</span>
|
||||
</div>
|
||||
|
||||
<div class="eventattradmin-actions___141YT">
|
||||
<i class="layui-icon"></i>
|
||||
<span>虚拟事件</span>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
<div class="eventattradmin-table-box">
|
||||
<table class="layui-hide" id="eventmanagement-table" lay-filter="eventmanagementtest"></table>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
<script type="text/html" id="eventmanagementDemo">
|
||||
<a class="layui-btn layui-btn-xs" lay-event="edit">编辑</a>
|
||||
</script>
|
19
web/pages/grouped.html
Normal file
19
web/pages/grouped.html
Normal file
@ -0,0 +1,19 @@
|
||||
<script id="analysis-con-left-screen-box-dot" type="text/html">
|
||||
{{# layui.each(d, function(index, item){ }}
|
||||
<div class="analysis-action-row">
|
||||
<div class="analysis-action-left">
|
||||
<div class="analysis-num bgcolor">{{index}}</div>
|
||||
<div class="analysis-ant-dropdown-trigger">
|
||||
<img src="./static/img/shaix2.png"/>
|
||||
<span>SDK类型</span>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="analysis-ta-property-range analysis-granularity"> <img src="./static/img/shezhi2.png"> </div>
|
||||
|
||||
<div class="analysis-ta-property-range analysis-section"> <img src="./static/img/shezhi2.png"> </div>
|
||||
<div class="analysis-action-right"> <img src="./static/img/cha1.png"/> </div>
|
||||
</div>
|
||||
{{# }); }}
|
||||
</script>
|
||||
|
78
web/pages/personalsettings.html
Normal file
78
web/pages/personalsettings.html
Normal file
@ -0,0 +1,78 @@
|
||||
<!-- 个人设置 -->
|
||||
<div class="personalsettings-box">
|
||||
<div class="personalsettings-bg-box">
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
<script id="personalsettings-bg-box-dot" type="text/html">
|
||||
<div class="personalsettings-info-box">
|
||||
<div class="personalsettings-info-title">基本信息</div>
|
||||
<div class="personalsettings-main___dQldf">
|
||||
<div class="personalsettings-row___24xjF">
|
||||
<p>显示名</p>
|
||||
<div class="personalsettings-value___vc6g4 personalsettings-mr-name">
|
||||
{{d.nickname}}
|
||||
<span class="personalsettings-action___2mv4G personalsettings-name">修改</span>
|
||||
</div>
|
||||
<div class="personalsettings-value___vc6g4 personalsettings-updata-name">
|
||||
<input type="text" name="" value="{{d.nickname}}" class="personalsettings-name-txt">
|
||||
<img class="personalsettings-action___2mv4G personalsettings-name-qx" src="./static/img/duogou.png">
|
||||
<img class="personalsettings-action___2mv4G personalsettings-name-qd" src="./static/img/cha1.png">
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="personalsettings-row___24xjF">
|
||||
<p>TA账号</p>
|
||||
<div class="personalsettings-value___vc6g4">
|
||||
{{d.name}}
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="personalsettings-info-box">
|
||||
<div class="personalsettings-info-title">账号安全</div>
|
||||
<div class="personalsettings-main___dQldf">
|
||||
<div class="personalsettings-row___24xjF">
|
||||
<p>手机号</p>
|
||||
<div class="personalsettings-value___vc6g4 personalsettings-mr-tel">
|
||||
{{# if(d.tel === ""){ }}
|
||||
暂未绑定手机号
|
||||
{{# } else { }}
|
||||
{{d.tel}}
|
||||
{{# } }}
|
||||
|
||||
<span class="personalsettings-action___2mv4G personalsettings-tel">绑定</span>
|
||||
</div>
|
||||
<div class="personalsettings-value___vc6g4 personalsettings-binding-tel">
|
||||
<input type="text" value="{{d.tel}}" name="" placeholder="请填写手机号" class="personalsettings-name-txt">
|
||||
<img class="personalsettings-action___2mv4G personalsettings-tel-qx" src="./static/img/duogou.png">
|
||||
<img class="personalsettings-action___2mv4G personalsettings-tel-qd" src="./static/img/cha1.png">
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<!-- <div class="personalsettings-row___24xjF">
|
||||
<p>邮箱</p>
|
||||
<div class="personalsettings-value___vc6g4 ">
|
||||
暂未绑定邮箱
|
||||
<span class="personalsettings-action___2mv4G">绑定</span>
|
||||
</div>
|
||||
</div> -->
|
||||
|
||||
<div class="personalsettings-row___24xjF">
|
||||
<p>密码</p>
|
||||
<div class="personalsettings-value___vc6g4">
|
||||
<input type="password" name="" value="123465789">
|
||||
<span class="personalsettings-action___2mv4G personalsettings-updata-password">修改</span>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</script>
|
46
web/pages/personalsettingsedit.html
Normal file
46
web/pages/personalsettingsedit.html
Normal file
@ -0,0 +1,46 @@
|
||||
<!-- 事件管理操作 -->
|
||||
<div class="personalsettingsedit-box">
|
||||
|
||||
<div class="eventattradminedit-bg-box">
|
||||
|
||||
<form class="layui-form" action="" lay-filter="personalsettingseditexample">
|
||||
|
||||
<div class="layui-form-item">
|
||||
<label class="layui-form-label">显示名</label>
|
||||
<div class="layui-input-block">
|
||||
<input type="text" name="show_name" lay-verify="name" autocomplete="off" placeholder="请输入显示名" class="layui-input">
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="layui-form-item">
|
||||
<label class="layui-form-label">备注</label>
|
||||
<div class="layui-input-block">
|
||||
<input type="text" name="desc" lay-verify="unit" autocomplete="off" placeholder="请输入备注" class="layui-input">
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="layui-form-item">
|
||||
<div class="layui-inline">
|
||||
<label class="layui-form-label">状态</label>
|
||||
<div class="layui-input-inline">
|
||||
|
||||
<select name="is_show" lay-filter="aihao">
|
||||
<option value=""></option>
|
||||
<option value="0">隐藏</option>
|
||||
<option value="1">显示</option>
|
||||
</select>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</form>
|
||||
|
||||
</div>
|
||||
|
||||
<div class="eventattradminedit-but-box">
|
||||
<div class="personalsettingsedit-qx">取 消</div>
|
||||
<div class="personalsettingsedit-qd">确 定</div>
|
||||
</div>
|
||||
|
||||
</div>
|
110
web/pages/retained.html
Normal file
110
web/pages/retained.html
Normal file
@ -0,0 +1,110 @@
|
||||
<!-- 留存分析 -->
|
||||
<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>
|
||||
</div>
|
||||
|
||||
<div class="analysis-bg">
|
||||
<!-- 左侧条件筛选区域 -->
|
||||
<div class="analysis-con-left">
|
||||
<!-- 伸缩按钮 -->
|
||||
<div class="analysis-con-left-shrink"></div>
|
||||
|
||||
<div class="root___2a4tb">
|
||||
<div class="block___2n0We">
|
||||
<div class="analysis-con-left-title">初始事件</div>
|
||||
<div class="analysis-con-left-screen-box" id="shushi">
|
||||
|
||||
</div>
|
||||
<div class="analysis-foot___P797w">
|
||||
<span class="analysis-footadd___2D4YB">
|
||||
<img src="./static/img/fenzu.png">
|
||||
添加分组项
|
||||
</span>
|
||||
</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="analtsis-condition-date" readonly="readonly"></input> </div>
|
||||
<div class="analtsis-condition analtsis-timeParticleSize">按天</div>
|
||||
</div>
|
||||
|
||||
<div class="analtsis-condition-right-box">
|
||||
<div class="analtsis-condition">指标</div>
|
||||
<div class="analtsis-condition">分组</div>
|
||||
<div class="analtsis-chart-switch-box">
|
||||
<div class="analtsis-chart-switch" title="趋势图"> <i class="iconfont" style="font-size: 18px; "></i> </div>
|
||||
<div class="analtsis-chart-switch select-chart" title="堆积图"> <i class="iconfont" style="font-size: 18px; "></i> </div>
|
||||
<!-- <div class="analtsis-chart-switch" title="累计图"> <i class="iconfont" style="font-size: 18px; "></i> </div> -->
|
||||
<div class="analtsis-chart-switch" title="分布图"> <i class="iconfont" style="font-size: 18px; "></i> </div>
|
||||
<!-- <div class="analtsis-chart-switch" title="饼状分布"> <i class="iconfont" style="font-size: 18px;"></i> </div> -->
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
<!-- 统计图 -->
|
||||
<div class="analysis-echarts" id="analysis-echarts"></div>
|
||||
|
||||
<div class="table-div-box">
|
||||
<table class="table-fenxi-box">
|
||||
<thead>
|
||||
<tr class="table-fenxi-th">
|
||||
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
<tr class="table-fenxi-td">
|
||||
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</div>
|
38
web/pages/updatapassword.html
Normal file
38
web/pages/updatapassword.html
Normal file
@ -0,0 +1,38 @@
|
||||
<!-- 修改密码 -->
|
||||
<div class="updatapassword-box">
|
||||
|
||||
<div class="updatapassword-top-box">
|
||||
<div>修改密码</div>
|
||||
<img src="./static/img/cha.png" />
|
||||
</div>
|
||||
|
||||
<div class="updatapassword-form">
|
||||
<form class="layui-form" action="" lay-filter="updatapasswordexample">
|
||||
<!-- <div class="layui-form-item">
|
||||
<label class="layui-form-label">原密码</label>
|
||||
<div class="layui-input-block">
|
||||
<input type="password" name="oldpassword" lay-verify="pass" placeholder="请输入原密码" autocomplete="off" class="layui-input">
|
||||
</div>
|
||||
</div> -->
|
||||
<div class="layui-form-item">
|
||||
<label class="layui-form-label">新密码</label>
|
||||
<div class="layui-input-block">
|
||||
<input type="password" name="newpassword" lay-verify="pass" placeholder="请输入新密码" autocomplete="off" class="layui-input">
|
||||
</div>
|
||||
</div>
|
||||
<div class="layui-form-item">
|
||||
<label class="layui-form-label">确认密码</label>
|
||||
<div class="layui-input-block">
|
||||
<input type="password" name="reppassword" lay-verify="pass" placeholder="再次确认密码" autocomplete="off" class="layui-input">
|
||||
</div>
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
|
||||
<div class="updatapassword-but-box">
|
||||
<div class="updatapassword-qx">取 消</div>
|
||||
<div class="updatapassword-qd">确 定</div>
|
||||
</div>
|
||||
|
||||
|
||||
</div>
|
1144
web/src/x.min.js
vendored
1144
web/src/x.min.js
vendored
File diff suppressed because it is too large
Load Diff
@ -13,7 +13,7 @@
|
||||
return res;
|
||||
}
|
||||
|
||||
function setHashParms(k,v){
|
||||
function setHashParms(k,v,type){
|
||||
//设置一个hash值
|
||||
var hash = [];
|
||||
var kv = getHashParms();
|
||||
@ -60,9 +60,9 @@
|
||||
|
||||
$(document).keydown(function (event) {
|
||||
if (event.keyCode == 116) {
|
||||
|
||||
console.log('刷新')
|
||||
return false;
|
||||
event.preventDefault(); //阻止默认刷新
|
||||
console.log('刷新');
|
||||
return false;
|
||||
}
|
||||
});
|
||||
|
||||
|
@ -122,8 +122,8 @@ var X = window.X || {
|
||||
};
|
||||
|
||||
(function(){
|
||||
|
||||
var ipurl = "http://119.29.176.224:7889/api/v1/"
|
||||
var ipurl = "http://10.0.0.77:7889/api/v1/"
|
||||
// var ipurl = "http://119.29.176.224:7889/api/v1/"
|
||||
|
||||
//设置或读取登录缓存,需要保存到localStorage,防止刷新时候登录数据丢失
|
||||
X.loginCache = function(data){
|
||||
@ -182,11 +182,20 @@ var X = window.X || {
|
||||
}
|
||||
},
|
||||
error:function(error){
|
||||
console.log(error)
|
||||
layer.msg('服务器错误');
|
||||
// console.log('服务器错误');
|
||||
layer.close(index);
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
X.template = function(url,id){
|
||||
$.get('pages/'+ url + '.html',function(content){
|
||||
$('#'+id).html(content);
|
||||
X.pageLogic[url] && X.pageLogic[url].init && X.pageLogic[url].init();
|
||||
});
|
||||
};
|
||||
|
||||
//弹窗
|
||||
X.open = function(parms){
|
||||
if(parms.url){
|
||||
@ -205,8 +214,6 @@ var X = window.X || {
|
||||
}
|
||||
};
|
||||
|
||||
|
||||
|
||||
//渲染表格无分页无操作
|
||||
X.tabledata = function(id,url,data){
|
||||
var loginCache = X.loginCache();
|
||||
@ -228,16 +235,22 @@ var X = window.X || {
|
||||
var loginCache = X.loginCache();
|
||||
var token = (loginCache? loginCache.token:"");
|
||||
token = "Bearer "+token;
|
||||
layui.table.render({
|
||||
headers: {
|
||||
Authorization: token
|
||||
}
|
||||
,elem: id
|
||||
,url: ipurl+url+"?game="+X.DATA.game+arr
|
||||
,cellMinWidth: 80 //全局定义常规单元格的最小宽度,layui 2.2.1 新增
|
||||
,cols: data
|
||||
,height: 'full-20'
|
||||
});
|
||||
var url
|
||||
if(arr){
|
||||
url = ipurl+url+"?game="+X.DATA.game+arr;
|
||||
}else {
|
||||
url = ipurl+url+"?game="+X.DATA.game;
|
||||
}
|
||||
layui.table.render({
|
||||
headers: {
|
||||
Authorization: token
|
||||
}
|
||||
,elem: id
|
||||
,url: url
|
||||
,cellMinWidth: 80 //全局定义常规单元格的最小宽度,layui 2.2.1 新增
|
||||
,cols: data
|
||||
,height: 'full-20'
|
||||
});
|
||||
};
|
||||
|
||||
//渲染模板,模板id,数据,位置id
|
||||
@ -315,6 +328,44 @@ var X = window.X || {
|
||||
})
|
||||
}
|
||||
|
||||
// 分组项取交集
|
||||
X.groupintersection=function(c , a , callback){
|
||||
var dataArr=[];
|
||||
var arr=[];
|
||||
for(let i in c){
|
||||
|
||||
for(let j in a){
|
||||
|
||||
if(c[i]['id'] == a[j]['id']){
|
||||
|
||||
for(let z in c[i]['category']){
|
||||
|
||||
for(let q in a[j]['category']){
|
||||
|
||||
if(c[i]['category'][z]['title'] == a[j]['category'][q]['title']){
|
||||
arr.push(c[i]['category'][z]);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
if(arr.length > 0){
|
||||
var data = {
|
||||
title: c[i]['title'],
|
||||
id:c[i]['id'],
|
||||
category:arr
|
||||
};
|
||||
dataArr.push(data);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
callback && callback(dataArr);
|
||||
}
|
||||
|
||||
// 日期选择器
|
||||
X.daterender = function(id,callback){
|
||||
@ -380,6 +431,31 @@ var X = window.X || {
|
||||
,range: true
|
||||
});
|
||||
}
|
||||
|
||||
// 分组项
|
||||
X.grouped=function(data,id){
|
||||
console.log(data)
|
||||
var html
|
||||
for(let i in data){
|
||||
html = html + `
|
||||
<div class="analysis-action-row">
|
||||
<div class="analysis-action-left">
|
||||
<div class="analysis-num bgcolor">` + i+1 + `</div>
|
||||
<div class="analysis-ant-dropdown-trigger">
|
||||
<img src="./static/img/shaix2.png"/>
|
||||
<span>` + data[i]['column_name'] + `</span>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="analysis-ta-property-range analysis-granularity"> <img src="./static/img/shezhi2.png"> </div>
|
||||
|
||||
<div class="analysis-ta-property-range analysis-section"> <img src="./static/img/shezhi2.png"> </div>
|
||||
<div class="analysis-action-right"> <img src="./static/img/cha1.png"/> </div>
|
||||
</div>
|
||||
`
|
||||
}
|
||||
$(id).html(html);
|
||||
}
|
||||
|
||||
// function ScreenClick(id){
|
||||
// $("#zhuanghu_xila").hide();
|
||||
|
@ -66,17 +66,22 @@
|
||||
]
|
||||
}
|
||||
|
||||
X.laytpldata("#addexistuser-con-user-box-dot",data.userlist,".addexistuser-con-user-box");
|
||||
X.api("user/all_account","get",{},function(d){
|
||||
console.log(d)
|
||||
X.laytpldata("#addexistuser-con-user-box-dot",d,".addexistuser-con-user-box");
|
||||
})
|
||||
|
||||
|
||||
|
||||
$('.addexistuser-con-ss-box input').bind('input propertychange', function() {
|
||||
var txt = $(this).val();
|
||||
var userdata = data["userlist"];
|
||||
var arr = [];
|
||||
for(let i in userdata){
|
||||
if(userdata[i]["userName"].indexOf(txt) >= 0 ){
|
||||
if(userdata[i]["nickname"].indexOf(txt) >= 0 ){
|
||||
arr.push(userdata[i]);
|
||||
}else {
|
||||
if(userdata[i]["loginName"].indexOf(txt) >= 0 ){
|
||||
if(userdata[i]["name"].indexOf(txt) >= 0 ){
|
||||
arr.push(userdata[i]);
|
||||
}
|
||||
}
|
||||
@ -106,10 +111,10 @@
|
||||
var userdata = data["userlist"];
|
||||
var arr = [];
|
||||
for(let i in userdata){
|
||||
if(userdata[i]["userName"].indexOf(txt) >= 0 ){
|
||||
if(userdata[i]["nickname"].indexOf(txt) >= 0 ){
|
||||
arr.push(userdata[i]);
|
||||
}else {
|
||||
if(userdata[i]["loginName"].indexOf(txt) >= 0 ){
|
||||
if(userdata[i]["name"].indexOf(txt) >= 0 ){
|
||||
arr.push(userdata[i]);
|
||||
}
|
||||
}
|
||||
@ -165,10 +170,10 @@
|
||||
var userdata = data["userlist"];
|
||||
var arr = [];
|
||||
for(let i in userdata){
|
||||
if(userdata[i]["userName"].indexOf(txt) >= 0 ){
|
||||
if(userdata[i]["nickname"].indexOf(txt) >= 0 ){
|
||||
arr.push(userdata[i]);
|
||||
}else {
|
||||
if(userdata[i]["loginName"].indexOf(txt) >= 0 ){
|
||||
if(userdata[i]["name"].indexOf(txt) >= 0 ){
|
||||
arr.push(userdata[i]);
|
||||
}
|
||||
}
|
||||
|
@ -13,12 +13,14 @@
|
||||
screentypearr.push(drr); //每一个筛选事件按添加次数依次写入
|
||||
var filtersymbols=[];//筛选符号
|
||||
filtersymbols.push(drr);
|
||||
var groupitemeventsdata=[]//分组项里的事件
|
||||
var defaultgroupdata //默认添加分组项里的事件
|
||||
var data = {
|
||||
"events":[],
|
||||
"eventView":{
|
||||
"startTime":"2021-05-01 00:00:00",
|
||||
"startTime":"",
|
||||
"timeParticleSize":"P1D",
|
||||
"endTime":"2021-05-19 23:59:59",
|
||||
"endTime":"",
|
||||
"graphShape":"L0",
|
||||
"recentDay":"1-30",
|
||||
"groupBy":[],
|
||||
@ -29,27 +31,92 @@
|
||||
"filters":[],//全局筛选
|
||||
"relation":1,
|
||||
"zone_time":'8'//时区
|
||||
},
|
||||
"cachedata":{
|
||||
type2data:[],
|
||||
type3data:[],
|
||||
screentypearr:[],
|
||||
filtersymbols:[],
|
||||
groupitemeventsdata:[],
|
||||
defaultgroupdata:[],
|
||||
}
|
||||
}
|
||||
|
||||
var retdata,props
|
||||
|
||||
// 日期选择器
|
||||
$("#analtsis-condition-date").daterangepicker({
|
||||
'locale': {
|
||||
"format": 'YYYY-MM-DD',
|
||||
"separator": " - ",
|
||||
"applyLabel": "应用",
|
||||
"cancelLabel": "取消",
|
||||
"fromLabel": "起始时间",
|
||||
"toLabel": "结束时间'",
|
||||
"customRangeLabel": "自定义",
|
||||
"weekLabel": "W",
|
||||
"daysOfWeek": ["日", "一", "二", "三", "四", "五", "六"],
|
||||
"monthNames": ["一月", "二月", "三月", "四月", "五月", "六月", "七月", "八月", "九月", "十月", "十一月", "十二月"],
|
||||
"firstDay": 1
|
||||
},
|
||||
ranges: {
|
||||
'今日': [moment(), moment()],
|
||||
'昨日': [moment().subtract(1, 'days'), moment().subtract(1, 'days')],
|
||||
'最近7日': [moment().subtract(7, 'days'), moment().subtract(1, 'days')],
|
||||
'最近30日': [moment().subtract(30, 'days'), moment().subtract(1, 'days')],
|
||||
'上周': [moment().subtract(1, 'week').startOf('week')+86400000, moment().subtract(1, 'week').endOf('week')+86400000],
|
||||
'本周': [moment().startOf('week')+86400000, moment()+86400000],
|
||||
'本月': [moment().startOf('month'), moment()],
|
||||
'上月': [moment().subtract(1, 'month').startOf('month'), moment().subtract(1, 'month').endOf('month')
|
||||
]
|
||||
},
|
||||
"alwaysShowCalendars": true,
|
||||
"startDate": moment().subtract(29, 'days'),
|
||||
"endDate": new Date(),
|
||||
"opens": "right"
|
||||
}, function (start, end, label) {
|
||||
var startTime = start.format('YYYY-MM-DD')+ " "+ "00:00:00";
|
||||
var endTime = end.format('YYYY-MM-DD')+ " "+ "23:59:59";
|
||||
data['eventView']['startTime'] = startTime;
|
||||
data['eventView']['endTime'] = endTime;
|
||||
calculationdata();
|
||||
});
|
||||
|
||||
var time = $("#analtsis-condition-date").val();
|
||||
var timearr = time.split(" ");
|
||||
console.log(time);
|
||||
console.log(timearr);
|
||||
data['eventView']['startTime'] = timearr[0] + " "+"00:00:00";
|
||||
data['eventView']['endTime'] = timearr[2]+" "+"23:59:59";
|
||||
|
||||
X.api("data_auth/my_event","get",{},function(d){
|
||||
|
||||
dataArr = d.analysis;
|
||||
groupeddata = d.group_by;
|
||||
var arr = {
|
||||
"event_name":dataArr[0]['category'][0]['event_name'],
|
||||
"event_attr":dataArr[0]['category'][0]['event_attr'][0]["category"][0]["title"],
|
||||
"event_attr_id":dataArr[0]['category'][0]['event_attr'][0]["category"][0]["id"],
|
||||
"analysisname":'',
|
||||
"analysis":dataArr[0]['category'][0]['event_attr'][0]['category'][0]['analysis'],
|
||||
"renameindicator":"", //重命名指标
|
||||
"filters":[],//过滤项
|
||||
"condrelation":'and',
|
||||
}
|
||||
data.events.push(arr);
|
||||
X.laytpldata("#analysis-con-left-screen-list-dot",data.events,".analysis-con-left-screen-list-box");
|
||||
type2data[0]= dataArr[0]['category'][0]['event_attr'][0]["category"];
|
||||
type3data[0]= dataArr[0]['category'][0]['event_attr'][0]["category"][0]["category"];
|
||||
dataArr = d;
|
||||
X.api("data_auth/load_prop_quotas","post",{event_name:dataArr[0]['category'][0]['event_name']},function(d){
|
||||
retdata = d.staid_quots.concat(d.props);
|
||||
props = d.props;
|
||||
var defaultindicator = {
|
||||
"event_name":dataArr[0]['category'][0]['event_name'],
|
||||
"event_attr":"总次数",
|
||||
"event_attr_id":"*",
|
||||
"analysisname":'',
|
||||
"analysis":'total_count',
|
||||
"renameindicator":"", //重命名指标
|
||||
"filters":[],//过滤项
|
||||
"condrelation":'and',
|
||||
}
|
||||
data.events.push(defaultindicator);
|
||||
X.laytpldata("#analysis-con-left-screen-list-dot",data.events,".analysis-con-left-screen-list-box");
|
||||
type2data[0]= retdata;
|
||||
type3data[0]= [];
|
||||
screentypearr[0]=d.props;
|
||||
X.api("data_auth/load_filter_props","post",{event_name:dataArr[0]['category'][0]['event_name']},function(val){
|
||||
defaultgroupdata = val;
|
||||
groupitemeventsdata.push(val);
|
||||
})
|
||||
})
|
||||
// groupeddata = d.group_by;
|
||||
|
||||
|
||||
})
|
||||
|
||||
@ -83,84 +150,37 @@
|
||||
//已存报表
|
||||
$(".analysis-navigation-bar-right .analysis-navigation-bar-right-img-baobiao").click(function(){
|
||||
X.parametersopen({},'savedbaobiao','rt',function(d){
|
||||
console.log(d);
|
||||
if(d){
|
||||
data = d.query;
|
||||
type2data=[];
|
||||
type3data=[];
|
||||
screentypearr = [];
|
||||
filtersymbols=[];
|
||||
var events = d.query.events;
|
||||
type2data = data.cachedata.type2data;
|
||||
type3data = data.cachedata.type3data;
|
||||
screentypearr = data.cachedata.screentypearr;
|
||||
filtersymbols = data.cachedata.filtersymbols;
|
||||
|
||||
if(d.query.eventView.filters.length > 0){
|
||||
$(".analysis-overall").show();
|
||||
}else {
|
||||
$(".analysis-overall").hide();
|
||||
}
|
||||
|
||||
X.laytpldata("#analysis-con-left-screen-list-dot",d.query.events,".analysis-con-left-screen-list-box");
|
||||
X.laytpldata("#analysis-gpmain___3YGfw-dot",d.query.eventView.groupBy,".analysis-gpmain___3YGfw");
|
||||
X.laytpldata("#analysis-overall-situation-list-box-dot",d.query['eventView']['filters'],".analysis-overall-situation-list-box");
|
||||
analysisdown();
|
||||
calculationdata();
|
||||
|
||||
// $(".analtsis-timeParticleSize").html(d['query']['eventView'][])
|
||||
|
||||
X.api('data_auth/my_event','get',{},function(val){
|
||||
for(let i in events){
|
||||
for(let z in val.deserialization.event_attr){
|
||||
if(events[i]['event_name'] == z){
|
||||
type2data.push(val.deserialization.event_attr[z]);
|
||||
for(let j in val.deserialization.event_attr[z]){
|
||||
if(events[i]['event_attr'] == val.deserialization.event_attr[z][j]['title']){
|
||||
type3data.push(val.deserialization.event_attr[z][j]['category']);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
for(let i in events){
|
||||
for(let z in val.deserialization.event_filter){
|
||||
if(events[i]['event_name'] == z ){
|
||||
screentypearr.push(val.deserialization.event_filter[z]);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
for(let i in events){
|
||||
if(events[i]['filters'].length > 0){
|
||||
filtersymbols[i]=[];
|
||||
for(let z in events[i]['filters']){
|
||||
for(let j in val.operator){
|
||||
if(events[i]['filters'][z]['data_type'] == j){
|
||||
filtersymbols[i].push(val.operator[j])
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
for(let i in d.query.eventView.filters){
|
||||
filtsftvdata
|
||||
var type = d.query.eventView.filters[i]['data_type']
|
||||
filtsftvdata.push(val.filter[type]);
|
||||
}
|
||||
|
||||
if(d.query.eventView.filters.length > 0){
|
||||
$(".analysis-overall").show();
|
||||
}else {
|
||||
$(".analysis-overall").hide();
|
||||
}
|
||||
|
||||
X.laytpldata("#analysis-con-left-screen-list-dot",d.query.events,".analysis-con-left-screen-list-box");
|
||||
X.laytpldata("#analysis-gpmain___3YGfw-dot",d.query.eventView.groupBy,".analysis-gpmain___3YGfw");
|
||||
X.laytpldata("#analysis-overall-situation-list-box-dot",d.query['eventView']['filters'],".analysis-overall-situation-list-box");
|
||||
analysisdown();
|
||||
|
||||
calculationdata();
|
||||
})
|
||||
}
|
||||
})
|
||||
})
|
||||
|
||||
// sql语句显示
|
||||
$(document).off('click','.sqlquery').on('click','.sqlquery',function(){
|
||||
// console.log(1111)
|
||||
// X.api('ck/event_model_sql','post',data,function(d){
|
||||
var obj = $(this);
|
||||
var offset = obj.offset();
|
||||
X.querycriteriapop(data,'conditionquery',offset.left - 410,offset.top+obj.height(),function(){
|
||||
|
||||
})
|
||||
// })
|
||||
})
|
||||
|
||||
// 切换为指标公式
|
||||
@ -219,16 +239,24 @@
|
||||
// 设置一级事件
|
||||
|
||||
$(document).off('click','.ant-dropdown-trigger').on('click','.ant-dropdown-trigger',function() {
|
||||
// $(document).on('click','.ant-dropdown-trigger',function(){
|
||||
var obj = $(this);
|
||||
var offset = obj.offset();
|
||||
var index = obj.attr('data-index');
|
||||
X.querycriteriapop(dataArr,'setgrouping',offset.left,offset.top+obj.height(),function(val){
|
||||
var htmlstring = val.name;
|
||||
obj.html(htmlstring);
|
||||
data['events'][index]['event_name'] = val.name
|
||||
type2data[index]=val.event_attr[0].category;
|
||||
screentypearr[index] = val.event_filter;
|
||||
data['events'][index]['event_name'] = val.name;
|
||||
X.api("data_auth/load_prop_quotas","post",{event_name:val.id},function(d){
|
||||
var retdata = d.staid_quots.concat(d.props);
|
||||
type2data[index]=retdata;
|
||||
screentypearr[index] = d.props;
|
||||
})
|
||||
|
||||
X.api("data_auth/load_filter_props","post",{event_name:val.id},function(d){
|
||||
groupitemeventsdata[index] = d;
|
||||
})
|
||||
|
||||
|
||||
})
|
||||
})
|
||||
//设置一级事件中第二个参数
|
||||
@ -281,12 +309,14 @@
|
||||
var index = obj.attr("data-index");
|
||||
var indexs = obj.attr("data-indexs");
|
||||
X.querycriteriapop(screentypearr[index],'category',offset.left,offset.top+obj.height(),function(val){
|
||||
console.log(val);
|
||||
var htmlstring = val.title;
|
||||
obj.html(htmlstring);
|
||||
filtersymbols[index][indexs] = val.category;
|
||||
data['events'][index]['filters'][indexs]['column_name'] = htmlstring;
|
||||
data['events'][index]['filters'][indexs]['column_id'] = val.id;
|
||||
data['events'][index]['filters'][indexs]['data_type'] = val.type;
|
||||
data['events'][index]['filters'][indexs]['table_type'] = val.table_type;
|
||||
})
|
||||
|
||||
})
|
||||
@ -309,25 +339,32 @@
|
||||
$(document).on('click','.analysis-shaix',function(){
|
||||
var obj = $(this);
|
||||
var index = obj.attr("data-index");
|
||||
var arr = {
|
||||
"column_name":dataArr[0]['category'][0]['event_filter'][0]['category'][0]['title'],//事件中文显示
|
||||
"column_id":dataArr[0]['category'][0]['event_filter'][0]['category'][0]['id'],//事件id
|
||||
"comparator_name":dataArr[0]['category'][0]['event_filter'][0]['category'][0]['category'][0]['title'],//选择符号中文显示
|
||||
"comparator_id":dataArr[0]['category'][0]['event_filter'][0]['category'][0]['category'][0]['id'],//符号id
|
||||
"data_type":dataArr[0]['category'][0]['event_filter'][0]['category'][0]['data_type'],
|
||||
"ftv":'',//条件
|
||||
"strftv":''//字符串显示条件
|
||||
} //筛选数据
|
||||
data['events'][index]['filters'].push(arr);
|
||||
X.laytpldata("#analysis-con-left-screen-list-dot",data.events,".analysis-con-left-screen-list-box");
|
||||
var drr=[];
|
||||
filtersymbols.push(drr);
|
||||
console.log(filtersymbols)
|
||||
screentypearr[index] = dataArr[0]['category'][0]["event_filter"];
|
||||
filtersymbols[index][filtersymbols[index].length ] = dataArr[0]['category'][0]["event_filter"][0]["category"][0]["category"];
|
||||
|
||||
addscreen(index);
|
||||
})
|
||||
|
||||
// 添加筛选项
|
||||
function addscreen(index){
|
||||
X.api('data_auth/load_filter_props',"post",{event_name:data['events'][index]["event_name"]},function(d){
|
||||
console.log(d);
|
||||
var arr = {
|
||||
"column_name":d[0]['category'][0]['title'],//事件中文显示
|
||||
"column_id":d[0]['category'][0]['id'],//事件id
|
||||
"comparator_name":d[0]['category'][0]['category'][0]['title'],//选择符号中文显示
|
||||
"comparator_id":d[0]['category'][0]['category'][0]['id'],//符号id
|
||||
"data_type":d[0]['category'][0]['data_type'],
|
||||
"ftv":'',//条件
|
||||
"strftv":'',//字符串显示条件
|
||||
"table_type": d[0]['id']
|
||||
} //筛选数据
|
||||
data['events'][index]['filters'].push(arr);
|
||||
X.laytpldata("#analysis-con-left-screen-list-dot",data.events,".analysis-con-left-screen-list-box");
|
||||
var drr=[];
|
||||
filtersymbols.push(drr);
|
||||
screentypearr[index] = d;
|
||||
filtersymbols[index][filtersymbols[index].length ] = d[0]['category'][0]["category"];
|
||||
})
|
||||
}
|
||||
|
||||
//监听重命名指标
|
||||
$(document).on('blur','.analysis-con-left-screen-list-left-zhibiaoname input',function(){
|
||||
var index = $(this).attr("data-index");
|
||||
@ -376,20 +413,22 @@
|
||||
|
||||
// 添加指标
|
||||
function addindex(){
|
||||
var arr = {
|
||||
var defaultindicator = {
|
||||
"event_name":dataArr[0]['category'][0]['event_name'],
|
||||
"event_attr":dataArr[0]['category'][0]['event_attr'][0]["category"][0]["title"],
|
||||
"event_attr_id":dataArr[0]['category'][0]['event_attr'][0]["category"][0]["id"],
|
||||
"event_attr":"总次数",
|
||||
"event_attr_id":"*",
|
||||
"analysisname":'',
|
||||
"analysis":dataArr[0]['category'][0]['event_attr'][0]['category'][0]['analysis'],
|
||||
"analysis":'total_count',
|
||||
"renameindicator":"", //重命名指标
|
||||
"filters":[],//过滤项
|
||||
"condrelation":'and',
|
||||
}
|
||||
data['events'].push(arr);
|
||||
data['events'].push(defaultindicator);
|
||||
|
||||
X.laytpldata("#analysis-con-left-screen-list-dot",data.events,".analysis-con-left-screen-list-box");
|
||||
var index = data.events.length - 1;
|
||||
type2data[index]= dataArr[0]['category'][0]['event_attr'][0]["category"];
|
||||
type3data[index]= dataArr[0]['category'][0]['event_attr'][0]["category"][0]["category"];
|
||||
type2data[index]= retdata;
|
||||
type3data[index]= [];
|
||||
$(".analysis-del").show() //显示删除按钮
|
||||
var drr = [];
|
||||
screentypearr.push(drr);
|
||||
@ -398,7 +437,8 @@
|
||||
}else {
|
||||
$(".analysis-overall").hide();
|
||||
}
|
||||
|
||||
screentypearr[index]=props;
|
||||
groupitemeventsdata.push(defaultgroupdata);
|
||||
}
|
||||
|
||||
//添加按钮
|
||||
@ -450,27 +490,32 @@
|
||||
|
||||
$(document).off('click','.analysis-footadd___2D4YB').on('click','.analysis-footadd___2D4YB',function(){
|
||||
var index = data['eventView']['groupBy'].length;
|
||||
var screentypedata = filteringdata();
|
||||
console.log(screentypedata);
|
||||
var drr = {
|
||||
"column_name":groupeddata[0]['category'][index]['title'],//事件中文显示
|
||||
"column_id":groupeddata[0]['category'][index]['id'],//事件id
|
||||
'data_type':groupeddata[0]['category'][index]['data_type'],//类型
|
||||
"column_name":screentypedata[0]['category'][index]['title'],//事件中文显示
|
||||
"column_id":screentypedata[0]['category'][index]['id'],//事件id
|
||||
'data_type':screentypedata[0]['category'][index]['data_type'],//类型
|
||||
'table_type': screentypedata[0]['id'],
|
||||
"ftv":'',//条件
|
||||
"section":''//区间
|
||||
}
|
||||
data.eventView.groupBy.push(drr);
|
||||
X.laytpldata("#analysis-gpmain___3YGfw-dot",data.eventView.groupBy,".analysis-gpmain___3YGfw");
|
||||
|
||||
})
|
||||
|
||||
$(document).off('click','.analysis-ant-dropdown-trigger').on('click','.analysis-ant-dropdown-trigger',function(){
|
||||
var obj = $(this);
|
||||
var offset = obj.offset();
|
||||
var index = obj.attr("data-index");
|
||||
X.querycriteriapop(groupeddata,'category',offset.left,offset.top+obj.height(),function(val){
|
||||
X.querycriteriapop(filteringdata(),'category',offset.left,offset.top+obj.height(),function(val){
|
||||
var htmlstring = val.title;
|
||||
obj.html(htmlstring);
|
||||
data.eventView.groupBy[index]['column_name'] = val.title;
|
||||
data.eventView.groupBy[index]['column_id'] = val.id;
|
||||
data.eventView.groupBy[index]['data_type'] = val.type;
|
||||
data.eventView.groupBy[index]['table_type'] = val.table_type;
|
||||
X.laytpldata("#analysis-gpmain___3YGfw-dot",data.eventView.groupBy,".analysis-gpmain___3YGfw");
|
||||
})
|
||||
})
|
||||
@ -523,7 +568,7 @@
|
||||
url: 'groupeditemspop',
|
||||
extData : sectionid,
|
||||
callback : function(val){
|
||||
// console.log(val);
|
||||
|
||||
}
|
||||
})
|
||||
|
||||
@ -539,30 +584,46 @@
|
||||
|
||||
})
|
||||
|
||||
$(document).on('click','.analtsis-chart-switch-box .analtsis-chart-switch',function(){
|
||||
$('.analtsis-chart-switch-box .analtsis-chart-switch').removeClass('select-chart');
|
||||
|
||||
$(this).addClass('select-chart');
|
||||
|
||||
})
|
||||
// 过滤数据
|
||||
function filteringdata(){
|
||||
var screentypedata;
|
||||
if(groupitemeventsdata.length>1){
|
||||
for(var i =0; i < groupitemeventsdata.length - 1; i++){
|
||||
if(i == 0){
|
||||
X.groupintersection(groupitemeventsdata[i] , groupitemeventsdata[Number(i) + Number(1)],function(d){
|
||||
screentypedata = d;
|
||||
});
|
||||
}else {
|
||||
X.groupintersection(screentypedata , groupitemeventsdata[Number(i) + Number(1)],function(d){
|
||||
screentypedata = d;
|
||||
})
|
||||
}
|
||||
}
|
||||
}else {
|
||||
screentypedata = groupitemeventsdata[0];
|
||||
}
|
||||
return screentypedata;
|
||||
}
|
||||
|
||||
// 全局筛选
|
||||
var filtsftvdata=[];
|
||||
$(document).on('click','.analysis-overall-situation-add',function(){
|
||||
|
||||
var screentypedata = filteringdata();
|
||||
var drr={
|
||||
"column_name":groupeddata[0]['category'][0]['title'],//事件中文显示
|
||||
"column_id":groupeddata[0]['category'][0]['id'],//事件id
|
||||
'data_type':groupeddata[0]['category'][0]['data_type'],//类型
|
||||
"column_name":screentypedata[0]['category'][0]['title'],//事件中文显示
|
||||
"column_id":screentypedata[0]['category'][0]['id'],//事件id
|
||||
'data_type':screentypedata[0]['category'][0]['data_type'],//类型
|
||||
'comparator_name':'等于',//默认等于
|
||||
"comparator_id":'==',//符号id
|
||||
"ftv":[],//条件
|
||||
"strftv":'',//显示条件
|
||||
"section":[-1,1]//区间
|
||||
|
||||
"section":[-1,1],//区间
|
||||
"table_type":screentypedata[0]['id']
|
||||
};
|
||||
|
||||
data['eventView']['filters'].push(drr);//上传全局数据
|
||||
filtsftvdata.push(groupeddata[0]['category'][0]['category'])
|
||||
filtsftvdata.push(screentypedata[0]['category'][0]['category'])
|
||||
|
||||
$(".analysis-overall-situation-left-box").show();
|
||||
|
||||
@ -610,13 +671,14 @@
|
||||
var obj = $(this);
|
||||
var offset = obj.offset();
|
||||
var index = obj.attr("data-index");
|
||||
X.querycriteriapop(groupeddata,'category',offset.left,offset.top+obj.height(),function(val){
|
||||
X.querycriteriapop(filteringdata(),'category',offset.left,offset.top+obj.height(),function(val){
|
||||
obj.html(val.title);
|
||||
data['eventView']['filters'][index]['column_name'] = val.title;
|
||||
data['eventView']['filters'][index]['column_id'] = val.id;
|
||||
data['eventView']['filters'][index]['data_type'] = val.type;
|
||||
data['eventView']['filters'][index]['comparator_name'] = '等于';
|
||||
data['eventView']['filters'][index]['comparator_id'] = '==';
|
||||
data['eventView']['filters'][index]['table_type'] = val.table_type;
|
||||
filtsftvdata[index]=val.category;
|
||||
X.laytpldata("#analysis-overall-situation-list-box-dot",data['eventView']['filters'],".analysis-overall-situation-list-box");
|
||||
analysisdown();
|
||||
@ -644,44 +706,6 @@
|
||||
data['eventView']['filters'][index]['section'][1] = val;
|
||||
}
|
||||
})
|
||||
|
||||
// 日期选择器
|
||||
$("#analtsis-condition-date").daterangepicker({
|
||||
'locale': {
|
||||
"format": 'YYYY-MM-DD',
|
||||
"separator": " - ",
|
||||
"applyLabel": "应用",
|
||||
"cancelLabel": "取消",
|
||||
"fromLabel": "起始时间",
|
||||
"toLabel": "结束时间'",
|
||||
"customRangeLabel": "自定义",
|
||||
"weekLabel": "W",
|
||||
"daysOfWeek": ["日", "一", "二", "三", "四", "五", "六"],
|
||||
"monthNames": ["一月", "二月", "三月", "四月", "五月", "六月", "七月", "八月", "九月", "十月", "十一月", "十二月"],
|
||||
"firstDay": 1
|
||||
},
|
||||
ranges: {
|
||||
'今日': [moment(), moment()],
|
||||
'昨日': [moment().subtract(1, 'days'), moment().subtract(1, 'days')],
|
||||
'最近7日': [moment().subtract(7, 'days'), moment().subtract(1, 'days')],
|
||||
'最近30日': [moment().subtract(30, 'days'), moment().subtract(1, 'days')],
|
||||
'上周': [moment().subtract(1, 'week').startOf('week')+86400000, moment().subtract(1, 'week').endOf('week')+86400000],
|
||||
'本周': [moment().startOf('week')+86400000, moment()+86400000],
|
||||
'本月': [moment().startOf('month'), moment()],
|
||||
'上月': [moment().subtract(1, 'month').startOf('month'), moment().subtract(1, 'month').endOf('month')
|
||||
]
|
||||
},
|
||||
"alwaysShowCalendars": true,
|
||||
"startDate": moment().subtract(29, 'days'),
|
||||
"endDate": new Date(),
|
||||
"opens": "right"
|
||||
}, function (start, end, label) {
|
||||
var startTime = start.format('YYYY-MM-DD')+ " "+ "00:00:00";
|
||||
var endTime = end.format('YYYY-MM-DD')+ " "+ "23:59:59";
|
||||
data['eventView']['startTime'] = startTime;
|
||||
data['eventView']['endTime'] = endTime;
|
||||
calculationdata();
|
||||
});
|
||||
|
||||
// 时间粒度
|
||||
var timeParticleSizearr = [
|
||||
@ -706,87 +730,275 @@
|
||||
|
||||
// 计算
|
||||
$(document).off('click','.analysis-calculation').on('click','.analysis-calculation',function(){
|
||||
console.log(data);
|
||||
calculationdata();
|
||||
})
|
||||
|
||||
function calculationdata(){
|
||||
console.log(data)
|
||||
X.api("ck/event_model","post",data,function(d){
|
||||
console.log(d);
|
||||
var xAxisData=[];
|
||||
for(let i in d){
|
||||
for(let z in d[i]['groups']){
|
||||
var pj = d[i]['event_name']+d[i]['groups'][z][0]+d[i]['groups'][z][1];
|
||||
xAxisData.push(pj);
|
||||
}
|
||||
}
|
||||
var seriesData=[];
|
||||
for(let i in d){
|
||||
for(let z in d[i]['values']){
|
||||
var arr = {
|
||||
name: '',
|
||||
type: 'line',
|
||||
stack: '总量',
|
||||
areaStyle: {},
|
||||
emphasis: {
|
||||
focus: 'series'
|
||||
},
|
||||
data: d[i]['values'][z]
|
||||
}
|
||||
seriesData.push(arr);
|
||||
}
|
||||
}
|
||||
if(xAxisData.length > 0){
|
||||
for(let i in seriesData){
|
||||
seriesData[i]['name'] = xAxisData[i];
|
||||
}
|
||||
}
|
||||
var myChart = echarts.init(document.getElementById('analysis-echarts'));
|
||||
var option = {
|
||||
title: {
|
||||
text: ''
|
||||
},
|
||||
color: [ '#3ea7fd', '#cdddfd', '#5ad8a6', '#cdf3e4', '#5d7092', '#ced4de', '#f6bd16','#fcebb9','#e86452','#f8d0cb','#6dc8ec', '#d3eef9', '#9270ca', '#d3c6ea', '#ff9d4d', '#ffd8b8', '#269a99','#aad8d8','#ff99c3','#ffd6e7' ],
|
||||
tooltip: {
|
||||
trigger: 'axis',
|
||||
axisPointer: {
|
||||
type: 'cross',
|
||||
label: {
|
||||
backgroundColor: '#6a7985'
|
||||
}
|
||||
}
|
||||
},
|
||||
legend: {
|
||||
data: xAxisData
|
||||
},
|
||||
toolbox: {
|
||||
feature: {
|
||||
saveAsImage: {}
|
||||
}
|
||||
},
|
||||
grid: {
|
||||
left: '2%',
|
||||
right: '2%',
|
||||
bottom: '2%',
|
||||
top: '10%',
|
||||
containLabel: true
|
||||
},
|
||||
xAxis: [
|
||||
{
|
||||
type: 'category',
|
||||
boundaryGap: false,
|
||||
data: d[0]['date_range']
|
||||
}
|
||||
],
|
||||
yAxis: [
|
||||
{
|
||||
type: 'value'
|
||||
}
|
||||
],
|
||||
series: seriesData
|
||||
};
|
||||
myChart.setOption(option);
|
||||
var querydata;//查询数据
|
||||
$(document).on('click','.analtsis-chart-switch-box .analtsis-chart-switch',function(){
|
||||
|
||||
if(querydata){
|
||||
$('.analtsis-chart-switch-box .analtsis-chart-switch').removeClass('select-chart');
|
||||
$(this).addClass('select-chart');
|
||||
if($(this).attr('title') == '趋势图'){trendchart(querydata)}
|
||||
else if($(this).attr('title') == '堆积图'){stackingdiagram(querydata);}
|
||||
else if($(this).attr('title') == '累计图'){}
|
||||
else if($(this).attr('title') == '分布图'){distributionmap(querydata)}
|
||||
else if($(this).attr('title') == '饼状分布'){}
|
||||
}else{
|
||||
layer.msg('请先计算数据,在切换图表');
|
||||
}
|
||||
|
||||
})
|
||||
|
||||
//堆积图
|
||||
function stackingdiagram(d){
|
||||
var xAxisData=[];
|
||||
for(let i in d){
|
||||
for(let z in d[i]['groups']){
|
||||
var pj = d[i]['event_name']+d[i]['groups'][z][0]+d[i]['groups'][z][1];
|
||||
xAxisData.push(pj);
|
||||
}
|
||||
}
|
||||
var seriesData=[];
|
||||
for(let i in d){
|
||||
for(let z in d[i]['values']){
|
||||
var arr = {
|
||||
name: '',
|
||||
type: 'line',
|
||||
stack: '总量',
|
||||
areaStyle: {},
|
||||
emphasis: {
|
||||
focus: 'series'
|
||||
},
|
||||
data: d[i]['values'][z]
|
||||
}
|
||||
seriesData.push(arr);
|
||||
}
|
||||
}
|
||||
if(xAxisData.length > 0){
|
||||
for(let i in seriesData){
|
||||
seriesData[i]['name'] = xAxisData[i];
|
||||
}
|
||||
}
|
||||
var myChart = echarts.init(document.getElementById('analysis-echarts'));
|
||||
var option = {
|
||||
title: {
|
||||
text: ''
|
||||
},
|
||||
color: [ '#3ea7fd', '#cdddfd', '#5ad8a6', '#cdf3e4', '#5d7092', '#ced4de', '#f6bd16','#fcebb9','#e86452','#f8d0cb','#6dc8ec', '#d3eef9', '#9270ca', '#d3c6ea', '#ff9d4d', '#ffd8b8', '#269a99','#aad8d8','#ff99c3','#ffd6e7' ],
|
||||
tooltip: {
|
||||
trigger: 'axis',
|
||||
axisPointer: {
|
||||
type: 'cross',
|
||||
label: {
|
||||
backgroundColor: '#6a7985'
|
||||
}
|
||||
}
|
||||
},
|
||||
legend: {
|
||||
type:'scroll',
|
||||
data: xAxisData
|
||||
},
|
||||
toolbox: {
|
||||
feature: {
|
||||
saveAsImage: {}
|
||||
}
|
||||
},
|
||||
grid: {
|
||||
left: '2%',
|
||||
right: '2%',
|
||||
bottom: '2%',
|
||||
top: '10%',
|
||||
containLabel: true
|
||||
},
|
||||
xAxis: [
|
||||
{
|
||||
type: 'category',
|
||||
boundaryGap: false,
|
||||
data: d[0]['date_range']
|
||||
}
|
||||
],
|
||||
yAxis: [
|
||||
{
|
||||
type: 'value'
|
||||
}
|
||||
],
|
||||
series: seriesData
|
||||
};
|
||||
myChart.setOption(option,true);
|
||||
}
|
||||
|
||||
//趋势图
|
||||
function trendchart(d){
|
||||
var xAxisData=[];
|
||||
for(let i in d){
|
||||
for(let z in d[i]['groups']){
|
||||
var pj = d[i]['event_name']+d[i]['groups'][z][0]+d[i]['groups'][z][1];
|
||||
xAxisData.push(pj);
|
||||
}
|
||||
}
|
||||
var seriesData=[];
|
||||
for(let i in d){
|
||||
for(let z in d[i]['values']){
|
||||
var arr = {
|
||||
name: '',
|
||||
type: 'line',
|
||||
stack: '总量',
|
||||
data: d[i]['values'][z]
|
||||
}
|
||||
seriesData.push(arr);
|
||||
}
|
||||
}
|
||||
if(xAxisData.length > 0){
|
||||
for(let i in seriesData){
|
||||
seriesData[i]['name'] = xAxisData[i];
|
||||
}
|
||||
}
|
||||
var myChart = echarts.init(document.getElementById('analysis-echarts'));
|
||||
var option = {
|
||||
title: {
|
||||
text: ''
|
||||
},
|
||||
color: [ '#3ea7fd', '#cdddfd', '#5ad8a6', '#cdf3e4', '#5d7092', '#ced4de', '#f6bd16','#fcebb9','#e86452','#f8d0cb','#6dc8ec', '#d3eef9', '#9270ca', '#d3c6ea', '#ff9d4d', '#ffd8b8', '#269a99','#aad8d8','#ff99c3','#ffd6e7' ],
|
||||
tooltip: {
|
||||
trigger: 'axis',
|
||||
axisPointer: {
|
||||
type: 'cross',
|
||||
label: {
|
||||
backgroundColor: '#6a7985'
|
||||
}
|
||||
}
|
||||
},
|
||||
legend: {
|
||||
type:'scroll',
|
||||
data: xAxisData
|
||||
},
|
||||
toolbox: {
|
||||
feature: {
|
||||
saveAsImage: {}
|
||||
}
|
||||
},
|
||||
grid: {
|
||||
left: '2%',
|
||||
right: '2%',
|
||||
bottom: '2%',
|
||||
top: '10%',
|
||||
containLabel: true
|
||||
},
|
||||
xAxis: [
|
||||
{
|
||||
type: 'category',
|
||||
boundaryGap: false,
|
||||
data: d[0]['date_range']
|
||||
}
|
||||
],
|
||||
yAxis: [
|
||||
{
|
||||
type: 'value'
|
||||
}
|
||||
],
|
||||
series: seriesData
|
||||
};
|
||||
myChart.setOption(option,true);
|
||||
}
|
||||
|
||||
//分布图
|
||||
function distributionmap(d){
|
||||
var xAxisData=[];
|
||||
for(let i in d){
|
||||
for(let z in d[i]['groups']){
|
||||
var pj = d[i]['event_name']+d[i]['groups'][z][0]+d[i]['groups'][z][1];
|
||||
xAxisData.push(pj);
|
||||
}
|
||||
}
|
||||
var seriesData=[];
|
||||
for(let i in d){
|
||||
for(let z in d[i]['values']){
|
||||
var arr = {
|
||||
name: '',
|
||||
type: 'bar',
|
||||
data: d[i]['values'][z]
|
||||
}
|
||||
seriesData.push(arr);
|
||||
}
|
||||
}
|
||||
if(xAxisData.length > 0){
|
||||
for(let i in seriesData){
|
||||
seriesData[i]['name'] = xAxisData[i];
|
||||
}
|
||||
}
|
||||
var myChart = echarts.init(document.getElementById('analysis-echarts'));
|
||||
var option = {
|
||||
tooltip: {
|
||||
trigger: 'axis',
|
||||
axisPointer: {
|
||||
type: 'shadow'
|
||||
}
|
||||
},
|
||||
color: [ '#3ea7fd', '#cdddfd', '#5ad8a6', '#cdf3e4', '#5d7092', '#ced4de', '#f6bd16','#fcebb9','#e86452','#f8d0cb','#6dc8ec', '#d3eef9', '#9270ca', '#d3c6ea', '#ff9d4d', '#ffd8b8', '#269a99','#aad8d8','#ff99c3','#ffd6e7' ],
|
||||
legend: {
|
||||
data: xAxisData
|
||||
},
|
||||
toolbox: {
|
||||
show: true,
|
||||
orient: 'vertical',
|
||||
left: 'right',
|
||||
top: 'center',
|
||||
feature: {
|
||||
mark: {show: true},
|
||||
dataView: {show: true, readOnly: false},
|
||||
magicType: {show: true, type: ['line', 'bar', 'stack', 'tiled']},
|
||||
restore: {show: true},
|
||||
saveAsImage: {show: true}
|
||||
}
|
||||
},
|
||||
xAxis: [
|
||||
{
|
||||
type: 'category',
|
||||
axisTick: {show: false},
|
||||
data: d[0]['date_range']
|
||||
}
|
||||
],
|
||||
yAxis: [
|
||||
{
|
||||
type: 'value'
|
||||
}
|
||||
],
|
||||
series: seriesData
|
||||
};
|
||||
myChart.setOption(option,true);
|
||||
}
|
||||
|
||||
//表格
|
||||
function tabledata(d){
|
||||
console.log(d);
|
||||
var titledata=d[0]['date_range'];
|
||||
titledata.unshift('指标','阶段总和')
|
||||
// X.laytpldata("#table-fenxi-th-dot",titledata,".table-fenxi-th");
|
||||
// X.laytpldata("#table-fenxi-td-dot", ,".table-fenxi-td");
|
||||
}
|
||||
|
||||
function calculationdata(){
|
||||
data['cachedata']['type2data'] = type2data;
|
||||
data['cachedata']['type3data'] = type3data;
|
||||
data['cachedata']['screentypearr'] = screentypearr;
|
||||
data['cachedata']['filtersymbols'] = filtersymbols;
|
||||
data['cachedata']['groupitemeventsdata'] = groupitemeventsdata;
|
||||
data['cachedata']['defaultgroupdata'] = defaultgroupdata;
|
||||
var dataArr = {
|
||||
eventView: data.eventView,
|
||||
events: data.events
|
||||
}
|
||||
X.api("ck/event_model","post",dataArr,function(d){
|
||||
querydata = d;
|
||||
if(d[0].values.length > 0 ){
|
||||
stackingdiagram(d);
|
||||
tabledata(d);
|
||||
}else {
|
||||
$("#analysis-echarts").empty();
|
||||
layer.msg("无数据");
|
||||
}
|
||||
})
|
||||
}
|
||||
// 保存报表
|
||||
|
@ -48,11 +48,11 @@
|
||||
$('.zhuanghu_ss #zhuanghu_txt').val('');
|
||||
X.laytpldata("#zhuang-conetnt-dot",data,'.zhuang_conetnt ');
|
||||
})
|
||||
|
||||
var index = 0;
|
||||
$(".zhuang_tab_box .zhuang_tab span").click(function(){
|
||||
$(".zhuang_tab_box .zhuang_tab span div").removeClass('zhuanghu_xila_xian');
|
||||
$(this).find('div').addClass('zhuanghu_xila_xian');
|
||||
var index = $(this).attr("data-index");
|
||||
index = $(this).attr("data-index");
|
||||
if(index != 0){
|
||||
var dataArr = [];
|
||||
dataArr.push(data[index])
|
||||
@ -64,14 +64,14 @@
|
||||
|
||||
//单击属性
|
||||
$(document).on("click",".zhuang_conetnt .ta-pso-line",function(){
|
||||
var index = $(this).attr("data-index");
|
||||
// var index = $(this).attr("data-index");
|
||||
var indexs = $(this).attr("data-indexs");
|
||||
console.log(data[index]['category'])
|
||||
var valdata = {
|
||||
'title':$(this).attr('data-title'),
|
||||
'id':$(this).attr('data-id'),
|
||||
'type':$(this).attr('data-type'),
|
||||
'category': data[index]['category'][indexs]['category']
|
||||
'category': data[index]['category'][indexs]['category'],
|
||||
'table_type':data[index]['id']
|
||||
}
|
||||
me.callback && me.callback(valdata);
|
||||
|
||||
|
@ -5,7 +5,10 @@
|
||||
this.parms = parms;
|
||||
this.callback = parms.callback;
|
||||
var data = parms.extData;
|
||||
|
||||
var dataArr = {
|
||||
eventView:data.eventView,
|
||||
events:data.events
|
||||
}
|
||||
X.api('ck/event_model_sql','post',data,function(d){
|
||||
console.log(d);
|
||||
$(".conditionquery-sqldata").html(d[0]['sql']);
|
||||
@ -23,7 +26,6 @@
|
||||
}else {
|
||||
selectText('conditionquery-apidata');
|
||||
}
|
||||
|
||||
document.execCommand('copy');
|
||||
layer.msg('复制成功');
|
||||
|
||||
|
@ -10,18 +10,6 @@
|
||||
|
||||
layui.element.init();
|
||||
|
||||
// X.tabledata('#test','http://10.0.0.7:6789/',[[
|
||||
// {field:'id', width:80, title: 'ID', sort: true}
|
||||
// ,{field:'username', width:80, title: '用户名'}
|
||||
// ,{field:'sex', width:80, title: '性别', sort: true}
|
||||
// ,{field:'city', width:80, title: '城市'}
|
||||
// ,{field:'sign', title: '签名', width: '30%', minWidth: 100}
|
||||
// ,{field:'experience', title: '积分', sort: true}
|
||||
// ,{field:'score', title: '评分', sort: true}
|
||||
// ,{field:'classify', title: '职业'}
|
||||
// ,{field:'wealth', width:137, title: '财富', sort: true}
|
||||
// ]]);
|
||||
|
||||
// 项目列表
|
||||
// http://10.0.0.7:6789/
|
||||
X.api("project/","get",{},function(d){
|
||||
|
@ -16,7 +16,7 @@
|
||||
|
||||
},
|
||||
eventattradminlist : function(){
|
||||
X.laytabledata("#eventattradmin-table","data_mana/list",[[
|
||||
X.laytabledata("#eventattradmin-table","data_mana/attr_list",[[
|
||||
{field:'name', title: '属性名', sort: true}
|
||||
,{field:'show_name', title: '显示名'}
|
||||
,{field:'data_type', title: '数据类型', sort: true,templet:function(d){
|
||||
@ -30,6 +30,8 @@
|
||||
return '浮点型'
|
||||
}else if(d.data_type == "datetime"){
|
||||
return '时间'
|
||||
}else if(d.data_type == "array"){
|
||||
return '数组'
|
||||
}
|
||||
}}
|
||||
,{field:'city', title: '单位'}
|
||||
|
38
web/srczip/logic/eventmanagement.js
Normal file
38
web/srczip/logic/eventmanagement.js
Normal file
@ -0,0 +1,38 @@
|
||||
(function(){
|
||||
X.pageLogic['eventmanagement'] = {
|
||||
init : function(){
|
||||
var me = this;
|
||||
me.eventmanagementlist();
|
||||
layui.table.on('tool(eventmanagementtest)', function(obj){
|
||||
var data = obj.data;
|
||||
if(obj.event === 'edit'){
|
||||
X.parametersopen(data,"personalsettingsedit",'auto',function(){
|
||||
|
||||
me.eventmanagementlist();
|
||||
})
|
||||
}
|
||||
})
|
||||
|
||||
|
||||
},
|
||||
eventmanagementlist : function(){
|
||||
X.laytabledata("#eventmanagement-table","data_mana/event_list",[[
|
||||
{field:'name', title: '事件名', sort: true}
|
||||
,{field:'show_name', title: '显示名'}
|
||||
,{field:'desc', title: '备注'}
|
||||
,{field:'is_show', title: '显示状态', minWidth: 100,templet:function(d){
|
||||
if(d.is_show){
|
||||
return '显示'
|
||||
}else {
|
||||
return '<span style="color: #acbad0">隐藏</span>'
|
||||
}
|
||||
}}
|
||||
,{field:'event_count', title: '昨日事件量', sort: true}
|
||||
,{fixed: 'right', title:'操作', toolbar: '#eventmanagementDemo', width:80}
|
||||
]]);
|
||||
}
|
||||
|
||||
|
||||
|
||||
};
|
||||
})();
|
12
web/srczip/logic/grouped.js
Normal file
12
web/srczip/logic/grouped.js
Normal file
@ -0,0 +1,12 @@
|
||||
(function(){
|
||||
X.pageLogic['grouped'] = {
|
||||
init : function(){
|
||||
var data = [
|
||||
{}
|
||||
]
|
||||
X.laytpldata("#analysis-con-left-screen-box-dot",data,"#shushi");
|
||||
|
||||
|
||||
}
|
||||
};
|
||||
})();
|
60
web/srczip/logic/personalsettings.js
Normal file
60
web/srczip/logic/personalsettings.js
Normal file
@ -0,0 +1,60 @@
|
||||
(function(){
|
||||
X.pageLogic['personalsettings'] = {
|
||||
init : function(){
|
||||
|
||||
X.laytpldata("#personalsettings-bg-box-dot",X.DATA.userinfo,".personalsettings-bg-box");
|
||||
|
||||
|
||||
$(document).off('click','.personalsettings-name').on('click','.personalsettings-name',function(){
|
||||
$(".personalsettings-mr-name").hide();
|
||||
$(".personalsettings-updata-name").show();
|
||||
})
|
||||
|
||||
$(document).off('click','.personalsettings-name-qd').on('click','.personalsettings-name-qd',function(){
|
||||
$(".personalsettings-mr-name").show();
|
||||
$(".personalsettings-updata-name").hide();
|
||||
})
|
||||
|
||||
$(document).off('click','.personalsettings-name-qx').on('click','.personalsettings-name-qx',function(){
|
||||
var tit = $(".personalsettings-name-txt").val();
|
||||
X.api("user/edit_profile","post",{},function(){
|
||||
|
||||
})
|
||||
$(".personalsettings-mr-name").show();
|
||||
$(".personalsettings-updata-name").hide();
|
||||
})
|
||||
|
||||
$(document).off('click','.personalsettings-tel').on('click','.personalsettings-tel',function(){
|
||||
$(".personalsettings-mr-tel").hide();
|
||||
$(".personalsettings-binding-tel").show();
|
||||
})
|
||||
|
||||
$(document).off('click','.personalsettings-tel-qd').on('click','.personalsettings-tel-qd',function(){
|
||||
$(".personalsettings-mr-tel").show();
|
||||
$(".personalsettings-binding-tel").hide();
|
||||
})
|
||||
|
||||
$(document).off('click','.personalsettings-tel-qx').on('click','.personalsettings-tel-qx',function(){
|
||||
$(".personalsettings-mr-tel").show();
|
||||
$(".personalsettings-binding-tel").hide();
|
||||
})
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
$(document).off('click','.personalsettings-updata-password').on('click','.personalsettings-updata-password',function(){
|
||||
X.open({
|
||||
type: 1,
|
||||
title: false,
|
||||
closeBtn: 0,
|
||||
shadeClose: true,
|
||||
skin: 'yourclass',
|
||||
url: 'updatapassword'
|
||||
})
|
||||
})
|
||||
|
||||
|
||||
}
|
||||
};
|
||||
})();
|
32
web/srczip/logic/personalsettingsedit.js
Normal file
32
web/srczip/logic/personalsettingsedit.js
Normal file
@ -0,0 +1,32 @@
|
||||
(function(){
|
||||
X.pageLogic['personalsettingsedit'] = {
|
||||
init : function(parms){
|
||||
var me = this;
|
||||
this.parms = parms;
|
||||
this.callback = parms.callback; //选择后执行的回调
|
||||
var data = parms.extData;//获取到上层弹窗传的数据
|
||||
layui.form.render();
|
||||
if(data){
|
||||
layui.form.val('personalsettingseditexample', {
|
||||
"show_name": data.show_name // "name": "value"
|
||||
,"desc": data.desc
|
||||
,"is_show":(data.is_show)? 1 : 0
|
||||
});
|
||||
}
|
||||
$(document).off('click','.personalsettingsedit-qd').on('click','.personalsettingsedit-qd',function(){
|
||||
var arr = layui.form.val('personalsettingseditexample');
|
||||
arr['event_name'] = data.name;
|
||||
X.api("data_mana/event_edit","post",arr,function(d){
|
||||
layer.msg("修改成功");
|
||||
me.callback && me.callback(d);
|
||||
layer.closeAll();
|
||||
})
|
||||
})
|
||||
|
||||
$(document).off('click','.personalsettingsedit-qx').on('click','.personalsettingsedit-qx',function(){
|
||||
layer.closeAll();
|
||||
})
|
||||
|
||||
}
|
||||
};
|
||||
})();
|
74
web/srczip/logic/retained.js
Normal file
74
web/srczip/logic/retained.js
Normal file
@ -0,0 +1,74 @@
|
||||
(function(){
|
||||
X.pageLogic['retained'] = {
|
||||
init : function(){
|
||||
// X.gourl("grouped","shushi");
|
||||
X.template("grouped","shushi");
|
||||
|
||||
var data ={
|
||||
"events": [
|
||||
{
|
||||
"event_name": "create_role",
|
||||
"event_attr": "总次数",
|
||||
"event_attr_id": "*",
|
||||
"analysisname": "",
|
||||
"analysis": "total_count",
|
||||
"renameindicator": "",
|
||||
"filters": [],
|
||||
"condrelation": "and"
|
||||
}
|
||||
],
|
||||
"eventView": {
|
||||
"startTime": "2021-05-01 00:00:00",
|
||||
"timeParticleSize": "P1D",
|
||||
"endTime": "2021-05-19 23:59:59",
|
||||
"graphShape": "L0",
|
||||
"recentDay": "1-30",
|
||||
"groupBy": [
|
||||
{
|
||||
"column_name": "#account_id",
|
||||
"column_id": "#account_id",
|
||||
"data_type": "string",
|
||||
"table_type": "event",
|
||||
"ftv": "",
|
||||
"section": ""
|
||||
},
|
||||
{
|
||||
"column_name": "#app_id",
|
||||
"column_id": "#app_id",
|
||||
"data_type": "string",
|
||||
"table_type": "event",
|
||||
"ftv": "",
|
||||
"section": ""
|
||||
}
|
||||
],
|
||||
"uiCommonConfig": {
|
||||
"tableSorts": [],
|
||||
"chartSort": "num-desc"
|
||||
},
|
||||
"filters": [],
|
||||
"relation": 1,
|
||||
"zone_time": "8"
|
||||
},
|
||||
}
|
||||
X.grouped(data['eventView']['groupBy'],"#shushi")
|
||||
|
||||
$(document).off('click','.analysis-calculation').on("click",'.analysis-calculation',function(){
|
||||
console.log(211);
|
||||
})
|
||||
|
||||
$(document).off('click','.analysis-action-right').on('click','.analysis-action-right',function() {
|
||||
console.log(111);
|
||||
})
|
||||
|
||||
$(document).off('click','.analysis-footadd___2D4YB').on('click','.analysis-footadd___2D4YB',function() {
|
||||
var data= [
|
||||
{},{}
|
||||
]
|
||||
X.laytpldata("#analysis-con-left-screen-box-dot",data,"#shushi");
|
||||
})
|
||||
|
||||
|
||||
|
||||
}
|
||||
};
|
||||
})();
|
@ -14,7 +14,6 @@
|
||||
function reportdata(){
|
||||
X.api("report/read_report",'post',{project_id:X.DATA.projectid},function(d){
|
||||
data = d;
|
||||
console.log(data);
|
||||
X.laytpldata("#saved-list-box-dot",d,".saved-list-box");
|
||||
})
|
||||
}
|
||||
@ -37,7 +36,6 @@
|
||||
|
||||
// 下拉框
|
||||
$(".saved-select-type").change(function(){
|
||||
console.log($(this).val());
|
||||
var screendata=[];//筛选后的数据
|
||||
for(let i in data){
|
||||
if($(this).val() == 0){
|
||||
|
@ -6,41 +6,32 @@
|
||||
this.callback = parms.callback;
|
||||
var data = parms.extData;
|
||||
|
||||
// var data = [
|
||||
// {"typename":"收藏","detailsdata":[
|
||||
// {"name":"用户登录","id":"1","isshoucang":"1"},
|
||||
// {"name":"用户注册","id":"2","isshoucang":"1"},
|
||||
// ]},
|
||||
// {"typename":"基础事件","detailsdata":[
|
||||
// {"name":"用户登录","id":"1","isshoucang":"1"},
|
||||
// {"name":"用户注册","id":"2","isshoucang":"1"},
|
||||
// {"name":"付费事件","id":"3","isshoucang":"0"}
|
||||
// ]}
|
||||
// ]
|
||||
|
||||
X.laytpldata("#judge-box-dot",data,".setgrouping-box .setgrouping-content-box");
|
||||
|
||||
// 搜索
|
||||
$('.setgrouping-sousuo-txt-box input').bind('input propertychange', function() {
|
||||
var value = $(this).val();
|
||||
console.log(data);
|
||||
if(value != ""){
|
||||
$(".setgrouping-sousuo-txt-box img").show();
|
||||
var filteringdata = [];
|
||||
for(let i in data){
|
||||
var detailsdata = [];
|
||||
for(let j in data[i]["detailsdata"]){
|
||||
if(data[i]["detailsdata"][j]['name'].indexOf(value) != -1){
|
||||
detailsdata.push(data[i]["detailsdata"][j]);
|
||||
for(let j in data[i]["category"]){
|
||||
if(data[i]["category"][j]['event_name'].indexOf(value) != -1){
|
||||
detailsdata.push(data[i]["category"][j]);
|
||||
}
|
||||
}
|
||||
if(detailsdata.length >0){
|
||||
var arr = {
|
||||
"title": data[i]['title'],
|
||||
"detailsdata": detailsdata
|
||||
"id":data[i]['id'],
|
||||
"category": detailsdata
|
||||
};
|
||||
filteringdata.push(arr);
|
||||
}
|
||||
}
|
||||
console.log(filteringdata);
|
||||
X.laytpldata("#judge-box-dot",filteringdata,".setgrouping-box .setgrouping-content-box");
|
||||
}else {
|
||||
$(".setgrouping-sousuo-txt-box img").hide();
|
||||
|
27
web/srczip/logic/updatapassword.js
Normal file
27
web/srczip/logic/updatapassword.js
Normal file
@ -0,0 +1,27 @@
|
||||
(function(){
|
||||
X.pageLogic['updatapassword'] = {
|
||||
init : function(){
|
||||
|
||||
$(document).on("click",'.updatapassword-top-box',function(){
|
||||
layer.closeAll();
|
||||
})
|
||||
|
||||
$(document).on("click",".updatapassword-qx",function(){
|
||||
layer.closeAll();
|
||||
})
|
||||
|
||||
$(document).on("click",".updatapassword-qd",function(){
|
||||
var data = layui.form.val('updatapasswordexample');
|
||||
if(data.newpassword != data.reppassword){
|
||||
layer.msg('两次密码不一致');
|
||||
return;
|
||||
}
|
||||
X.api('user/reset_my_password',"post",{password:data.newpassword},function(d){
|
||||
layer.closeAll();
|
||||
layer.msg('修改成功');
|
||||
})
|
||||
})
|
||||
|
||||
}
|
||||
};
|
||||
})();
|
@ -16,7 +16,7 @@
|
||||
|
||||
},
|
||||
userattradminlist : function(){
|
||||
X.laytabledata("#userattradmin-table","data_mana/list",[[
|
||||
X.laytabledata("#userattradmin-table","data_mana/attr_list",[[
|
||||
{field:'name', title: '属性名', sort: true}
|
||||
,{field:'show_name', title: '显示名'}
|
||||
,{field:'data_type', title: '数据类型', sort: true,templet:function(d){
|
||||
@ -30,6 +30,8 @@
|
||||
return '浮点型'
|
||||
}else if(d.data_type == "datetime"){
|
||||
return '时间'
|
||||
}else if(d.data_type == "array"){
|
||||
return '数组'
|
||||
}
|
||||
}}
|
||||
,{field:'city', title: '单位'}
|
||||
|
@ -240,4 +240,13 @@
|
||||
|
||||
.conditionquery-but-box { display: flex; justify-content: space-between; align-items: center; margin-top: -10px; }
|
||||
.conditionquery-copy { cursor: pointer; color: #fff; background-color: #3d90ff; border-radius: 2px; padding: 0 16px; font-weight: 400; font-size: 14px; height: 32px; line-height: 32px; }
|
||||
.conditionquery-but-box span{ background-color: #eaecf8; color: #3d90ff; padding: 0 8px; cursor: pointer; display: inline-block; }
|
||||
.conditionquery-but-box span{ background-color: #eaecf8; color: #3d90ff; padding: 0 8px; cursor: pointer; display: inline-block; }
|
||||
|
||||
.table-div-box { width: 100%; overflow: auto; }
|
||||
.table-fenxi-box { width: 100%; }
|
||||
.table-fenxi-box th { min-width: 100px; max-width: 200px; padding: 16px; }
|
||||
.table-fenxi-box tr { text-align: center; }
|
||||
.table-fenxi-box tr td{ padding: 16px; }
|
||||
|
||||
|
||||
|
||||
|
@ -18,5 +18,8 @@
|
||||
.eventattradminedit-but-box div { cursor: pointer; margin-left: 10px; height: 32px; padding: 0 16px; font-weight: 400; font-size: 14px; line-height: 30px; border-radius: 2px; }
|
||||
.eventattradminedit-qx { color: #42546d; border: 1px solid #f0f0f0; }
|
||||
.eventattradminedit-qd { color: #fff; background-color: #3d90ff; }
|
||||
.personalsettingsedit-qx { color: #42546d; border: 1px solid #f0f0f0; }
|
||||
.personalsettingsedit-qd { color: #fff; background-color: #3d90ff; }
|
||||
.personalsettingsedit-box { width: 450px; height: 300px; }
|
||||
|
||||
|
||||
|
@ -315,3 +315,33 @@
|
||||
.addrole-but-box div { cursor: pointer; margin-left: 10px; height: 32px; padding: 0 16px; font-weight: 400; font-size: 14px; line-height: 30px; border-radius: 2px; }
|
||||
.addrole-qx { color: #42546d; border: 1px solid #f0f0f0; }
|
||||
.addrole-qd { color: #fff; background-color: #3d90ff; }
|
||||
|
||||
/* 个人信息 */
|
||||
.personalsettings-box{ width: 100%; height: 100%; background-color: #fff; overflow: hidden; position: fixed; top: 60px; }
|
||||
.personalsettings-bg-box { width: 640px; margin: 0 auto; padding: 60px 0; }
|
||||
.personalsettings-info-box { display: flex; width: 100%; }
|
||||
.personalsettings-main___dQldf { width: calc(100% - 150px); margin-bottom: 24px; border-bottom: 1px solid #f0f0f0; }
|
||||
.personalsettings-info-title { width: 140px; margin-right: 10px; color: #202d3f; font-weight: 500; font-size: 16px; line-height: 24px; }
|
||||
.personalsettings-row___24xjF p{ color: #67729d; font-size: 12px; line-height: 24px; }
|
||||
.personalsettings-value___vc6g4 { height: 32px; margin-bottom: 32px; color: #42546d; font-size: 14px; line-height: 32px; }
|
||||
.personalsettings-action___2mv4G { float: right; color: #3d90ff; cursor: pointer; }
|
||||
.personalsettings-value___vc6g4 input { border: 0px; color:#42546d; font-size: 13px; }
|
||||
.personalsettings-name-qx { margin-left: 16px; }
|
||||
.personalsettings-name-txt { border: 1px solid #f0f0f0 !important; height: 32px; padding: 0 8px; font-size: 14px; line-height: 30px; border-radius: 2px; }
|
||||
.personalsettings-updata-name { display: none; }
|
||||
.personalsettings-value___vc6g4 img { margin-top: 9px; }
|
||||
.personalsettings-tel-qx { margin-left: 16px; }
|
||||
.personalsettings-binding-tel { display: none; }
|
||||
|
||||
|
||||
/* 修改密码 */
|
||||
.updatapassword-box { width: 520px; height: 265px; background-color: #fff; border-radius: 2px; }
|
||||
.updatapassword-top-box { padding: 16px 24px; border-bottom: 1px solid #f0f0f0; display: flex; justify-content: space-between; align-items: center; }
|
||||
.updatapassword-top-box div { color: rgba(0,0,0,0.85); font-weight: 500; font-size: 16px; line-height: 22px; word-wrap: break-word; }
|
||||
.updatapassword-top-box img { cursor: pointer; }
|
||||
.updatapassword-form { margin-top: 24px; padding-right: 24px; }
|
||||
.updatapassword-but-box { display: flex; justify-content: flex-end; align-items: center; padding: 0 24px; margin-top: 45px; }
|
||||
.updatapassword-but-box div { padding: 0 16px; height: 32px; font-weight: 400; font-size: 14px; line-height: 30px; cursor: pointer; border-radius: 2px; margin-left: 10px; }
|
||||
.updatapassword-qx { color: #42546d; border: 1px solid #f0f0f0; }
|
||||
.updatapassword-qd { background-color: #3d90ff; color: #fff; }
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user