| | |
| | | <!-- 本框架基本脚本和样式 --> |
| | | <script type="text/javascript" |
| | | th:src="@{/js/plugin/jquery-2.1.4.min.js}"></script> |
| | | <link rel="stylesheet" th:href="@{/plugin/element-ui/index.css}"> |
| | | <script type="text/javascript" th:src="@{/js/systools/MBase.js}"></script> |
| | | <style> |
| | | .echarts { |
| | | height: 400px |
| | | } |
| | | |
| | | </style> |
| | | </head> |
| | | <body class=" container-fluid"> |
| | | |
| | |
| | | name="endTime" type="text" class="form-control datetimepicker" autocomplete="off" |
| | | id="endTime"> |
| | | </div> |
| | | <div class="form-group mr-20 "> |
| | | <div class="form-group mr-20 mt-20 "> |
| | | <label>统计单位</label> |
| | | <select name="statisticsUnit" class=" form-control " id="unitSelect" |
| | | style="width: 80px"> |
| | |
| | | </select> |
| | | </div> |
| | | </form> |
| | | |
| | | |
| | | <!-- 搜索框部分en --> |
| | | |
| | | <div class="row chartsBox " style="margin-top: 40px"> |
| | | <div class=" col-md-12"> |
| | | <div class="echarts" id="echarts-line-chart2"></div> |
| | | |
| | | <div class=" col-md-6"> |
| | | <div class="panel panel-info"> |
| | | <div class="panel-heading">门店人次对比分析</div> |
| | | <div class="panel-body"> |
| | | <div class="echarts" id="echarts-line-chart2"></div> |
| | | </div> |
| | | </div> |
| | | </div> |
| | | <div class=" col-md-6"> |
| | | <div class="panel panel-info"> |
| | | <div class="panel-heading">门店人头对比分析</div> |
| | | <div class="panel-body"> |
| | | <div class="echarts" id="echarts-line-chart1"></div> |
| | | </div> |
| | | </div> |
| | | </div> |
| | | </div> |
| | | |
| | | <!-- <div class="row chartsBox " style="margin-top: 40px"> |
| | | <div class=" col-md-12" id="table"> |
| | | <table class="table table-striped" > |
| | | <thead> |
| | | <tr> |
| | | <th>时间</th> |
| | | <th v-for="name in legend" >{{name}}</th> |
| | | </tr> |
| | | </thead> |
| | | <tbody> |
| | | <tr v-for="(item,index) in xAxis"> |
| | | <td>{{item}}</td> |
| | | |
| | | <td v-for="data in series[index].data" >{{data}}</td> |
| | | </tr> |
| | | </tbody> |
| | | </table> |
| | | <div class="row chartsBox " style="margin-top: 40px"> |
| | | <div class=" col-md-6"> |
| | | <div class="panel panel-info"> |
| | | <div class="panel-heading">门店到店率对比分析</div> |
| | | <div class="panel-body"> |
| | | <div class="echarts" id="echarts-line-chart3"></div> |
| | | </div> |
| | | </div> |
| | | </div> |
| | | <div class=" col-md-6"> |
| | | <div class="panel panel-warning"> |
| | | <div class="panel-heading">数据统计说明</div> |
| | | <div class="panel-body "> |
| | | <div class="echarts"> |
| | | <ul> |
| | | <li> |
| | | <h3>会员人头数</h3> |
| | | <p>一段时间内某个门店所有进店客户的总人数,同一个人无论进店几次都视为一个人头数</p> |
| | | </li> |
| | | <li> |
| | | <h3>会员人次</h3> |
| | | <p>一段时间内某个门店一个会员有3天来过门店则人次为3以此类推</p> |
| | | </li> |
| | | <li> |
| | | <h3>到店率</h3> |
| | | <p>一段时间内某个门店所有客户人次数除以人头数即为到店率</p> |
| | | </li> |
| | | </ul> |
| | | |
| | | </div> |
| | | </div> |
| | | </div> |
| | | </div> |
| | | </div> |
| | | --> |
| | | |
| | | |
| | | |
| | | </div> |
| | | <script type="text/javascript" th:src="@{/js/systools/MJsBase.js}"></script> |
| | | <script type="text/javascript" th:src="@{/plugin/echarts/echarts.all.js}"></script> |
| | | <script type="text/javascript" th:src="@{/plugin/echarts/echarts.min.js}"></script> |
| | | <script type="text/javascript" th:src="@{/plugin/echarts/macarons.js}"></script> |
| | | <script type="text/javascript" th:src="@{/plugin/dateformat.js}"></script> |
| | | <script type="text/javascript" th:src="@{/plugin/StringUtil.js}"></script> |
| | | <script type="text/javascript" th:src="@{/plugin/moment.min.js}"></script> |
| | | <script type="text/javascript" th:src="@{/js/systools/ChartsUtils.js}"></script> |
| | | <script type="text/javascript" th:src="@{/js/plugin/vue.js}"></script> |
| | | <script type="text/javascript" th:src="@{/plugin/element-ui/index.js}"></script> |
| | | |
| | | <script> |
| | | |
| | |
| | | |
| | | |
| | | // 基于准备好的dom,初始化echarts实例 |
| | | var myChart1 = echarts.init(document.getElementById('echarts-line-chart1'), 'macarons'); |
| | | var myChart2 = echarts.init(document.getElementById('echarts-line-chart2'), 'macarons'); |
| | | myChart2.on('click', function (params) { |
| | | console.log(params); |
| | | }); |
| | | |
| | | var myChart3 = echarts.init(document.getElementById('echarts-line-chart3'), 'macarons'); |
| | | /* |
| | | 点击事件 |
| | | myChart1.on('click', function (params) { |
| | | console.log(params); |
| | | }); |
| | | */ |
| | | // 指定图表的配置项和数据 |
| | | function getption(title) { |
| | | function getption() { |
| | | return { |
| | | title: { |
| | | text: title, |
| | | text: "", |
| | | padding: 20 |
| | | }, |
| | | legend: {}, |
| | |
| | | } |
| | | }, |
| | | tooltip: { |
| | | trigger: 'axis' |
| | | trigger: 'axis', |
| | | axisPointer: { |
| | | type: 'shadow' |
| | | } |
| | | }, |
| | | xAxis: { |
| | | type: 'category', |
| | |
| | | yAxis: { |
| | | type: 'value' |
| | | }, |
| | | series: [{ |
| | | name: '人头数', |
| | | type: 'line', |
| | | smooth: true, |
| | | data: [1,2] |
| | | }], |
| | | dataZoom: [ |
| | | { |
| | | id: 'dataZoomX', |
| | |
| | | } |
| | | ], |
| | | animation: true, |
| | | animationDuration: 1000, |
| | | animationDurationUpdate: 1000, |
| | | animationDuration: 500, |
| | | animationDurationUpdate: 500, |
| | | animationEasing: 'linear', |
| | | animationEasingUpdate: 'linear', |
| | | } |
| | |
| | | //加载数据 |
| | | function loadData() { |
| | | //加载门店客流对比 |
| | | myChart2.showLoading(); |
| | | myChart1.showLoading(); |
| | | $.AjaxProxy({ |
| | | p: MForm.toJson("#serchform"), |
| | | c: false, |
| | |
| | | option.xAxis.data = map.xAxis; |
| | | console.log(option); |
| | | // 使用刚指定的配置项和数据显示图表。 |
| | | myChart1.setOption(option); |
| | | myChart1.hideLoading(); |
| | | |
| | | }); |
| | | } |
| | | |
| | | var chartsUtils1 = new ChartsUtils(loadData); |
| | | chartsUtils1.setDataPackTimeValue(); |
| | | chartsUtils1.loadChartData(); |
| | | |
| | | //加载数据2 |
| | | function loadData2() { |
| | | //加载门店客流对比 |
| | | myChart2.showLoading(); |
| | | $.AjaxProxy({ |
| | | p: MForm.toJson("#serchform"), |
| | | c: false, |
| | | }).invoke(basePath+"/admin/analysis/customerEnterCountCompare", |
| | | function (loj) { |
| | | var map = loj.getValue("mapInfo"); |
| | | var option = getption("门店人次对比"); |
| | | option.series = map.series; |
| | | option.legend.data = map.legendData; |
| | | option.xAxis.data = map.xAxis; |
| | | // 使用刚指定的配置项和数据显示图表。 |
| | | myChart2.setOption(option); |
| | | myChart2.hideLoading(); |
| | | |
| | | }); |
| | | } |
| | | var ChartsUtils = new ChartsUtils(loadData); |
| | | ChartsUtils.setDataPackTimeValue(); |
| | | ChartsUtils.loadChartData(); |
| | | |
| | | var chartsUtils2 = new ChartsUtils(loadData2); |
| | | chartsUtils2.loadChartData(); |
| | | |
| | | //加载数据3 |
| | | function loadData3() { |
| | | //加载门店到店率 |
| | | myChart3.showLoading(); |
| | | $.AjaxProxy({ |
| | | p: MForm.toJson("#serchform"), |
| | | c: false, |
| | | }).invoke(basePath+"/admin/analysis/customerEnterRateCompare", |
| | | function (loj) { |
| | | var map = loj.getValue("mapInfo"); |
| | | var option = getption("门店到店率对比"); |
| | | option.series = map.series; |
| | | option.legend.data = map.legendData; |
| | | option.xAxis.data = map.xAxis; |
| | | // 使用刚指定的配置项和数据显示图表。 |
| | | myChart3.setOption(option); |
| | | myChart3.hideLoading(); |
| | | |
| | | function buildTable(map){ |
| | | console.log(buildTable,map); |
| | | var app = new Vue({ |
| | | el: '#table', |
| | | data: { |
| | | series : map.series, |
| | | legend : map.legendData, |
| | | xAxis : map.xAxis |
| | | } |
| | | } ); |
| | | }); |
| | | } |
| | | |
| | | var chartsUtils3 = new ChartsUtils(loadData3); |
| | | chartsUtils3.loadChartData(); |
| | | |
| | | |
| | | </script> |