1. 业务开发

使用流程

1、后台新增统计数据

2、前台通过接口调用获取

[!tip] 接口可以一次性获取多个统计数据,可以实现各种统计图表的效果,插件默认集成页面访问统计功能,工作量统计

2. 页面统计使用

{@ms:webstatistics/}

[!tip] 放在通用模版文件里面使用即可,一般放置于页尾处。可以放在通用引入文件中,所有引入该通用文件的模板都会被统计;

3. 后台管理

新增SQL:

[!tip] 后台直接通过SQL查询的方式进行统计。注意雪花ID前端精度丢失问题(根据不同数据库进行类型转换,如 MYSQL CAST函数)

4. HTTP接口

4.1. 获取统计接口

HTTP方法:POST
请求URL:/statistics/sql/list.do
请求头配置: 'content-type':'application/json'

请求参数:

参数 是否必选 类型 说明
name String 查询数据的名称
params Object 内部为json格式的key:value对象 [{ name:'统计名称', params:{统计SQL内的字段} }]

返回数据:

[
    { 统计sql对应名称: 统计sql返回的对应列值 },
]

5. 实例

[!tip] storeStatistics[0] 值可能为空,可以做三元运算的判断设置默认值

...
<div class="index-top-data">
    <!--分享-start-->
    <div class="top-data">
        <span class="top-data-num"> {{storeStatistics[0] ? storeStatistics[0].share_total : 0}} </span>
    </div>
    <div class="top-data-desc">
    <div class="top-data-desc-left">
        <i class="iconfont icon-pifu top-data-desc-icon"></i>
        <span class="top-data-desc-txt"> 皮肤 </span>
        <span class="top-data-desc-num"> {{storeStatistics[1] ? storeStatistics[1].share_num : 0}} </span>
    </div>
        <div class="top-data-desc-left">
        <i class="iconfont icon-fenlei top-data-desc-icon"></i>
        <span class="top-data-desc-txt"> 插件 </span>
        <span class="top-data-desc-num"> {{storeStatistics[2] ? storeStatistics[2].share_num : 0}} </span>
    </div>
    </div>
    <!--分享-end-->
</div>
...

...
data() {
    return {
        storeStatistics: [],//    平台统计信息数组,下标对应入参
    };
},
methods: {
    //    平台统计数据接口,store端  params为接口参数
    //    下方为多组统计一次请求的方式,返回结果为一个数组,响应结果顺序对应参数传入的顺序
    statisticsStore() {
        var that = this
        var params = [{
                name: '用户总分享数',
                params: {people_id: that.peopleInfo.peopleId}
            },{
                name: '分享的皮肤或插件数',
                params: {people_id: that.peopleInfo.peopleId,share_type: 'template'}
            },{
                name: '分享的皮肤或插件数',
                params: {people_id: that.peopleInfo.peopleId,share_type: 'plugin'}
            }];
        ms.http.post('/statistics/sql/list.do',params,{
            headers:{'content-type':'application/json'},
            }).then(function(res){
                if(res.result){
                    that.storeStatistics = res.data//    Store统计信息数组,下标对应入参
                }
            })
    },
},
created() {
    var that = this;
    that.statisticsStore();
},
...
Copyright © mingsoft.net 2012-2022 all right reserved,powered by Gitbook该文件修订时间: 2024-06-27 16:49:54

results matching ""

    No results matching ""

    results matching ""

      No results matching ""