XMTT 8 years ago
parent
commit
7049cc6f46
4 changed files with 146 additions and 69 deletions
  1. 11 7
      css/model/sys/pictable.css
  2. 28 37
      html/model/sys/pictable/index.html
  3. 1 1
      html/test.html
  4. 106 24
      js/model/sys/pictable/index.js

+ 11 - 7
css/model/sys/pictable.css

@ -1,10 +1,14 @@
1 1
@charset "utf-8";
2
.sys_pictable_index{
3
    width:800px;
2
.sys_pictable_index .queryForm{
3
    position: relative;
4 4
}
5
.sys_pictable_index .tpl-btns .row{
6
    padding-left: 10px;
7
}
8
.sys_pictable_index th.opt-check,.sys_pictable_index td.opt-check{
9
    width: 30px;
5
.sys_pictable_index .queryForm .icon-search{
6
    position: absolute;
7
    top:7px;
8
    right:15px;
9
    font-size:25px;
10 10
}
11
.sys_pictable_index .table-opt .icon {
12
    margin: 10px;
13
    font-size: 20px;
14
}

+ 28 - 37
html/model/sys/pictable/index.html

@ -1,58 +1,49 @@
1
<div class="sys_chart_index">
2
    <div class="container queryForm">
3
        <div class="row">
4
            <div class="col-6">
5
                <div class="btn opt-new">
6
                    <i class="icon-plus"></i>
7
                    统计
8
                </div>
1
<div class="sys_pictable_index">
2
    <div class="modal-ctrl">
3
        <i class="icon icon-times"></i>
4
    </div>
9 5
6
7
    <div class="container dt-form">
8
        <div class="row">
9
            <div class="col-2 item-caption">名称</div>
10
            <div class="col-4">
11
                <div class="form-item dyn-select queried"  name="name"></div>
10 12
            </div>
11
            <div class="col-6" style="display: none">
12
                <div class="form-item text " name="qn"></div>
13
            </div>
14
            <div class="col-6 " style="display: none">
15
                <div class="form-item text " name="qn2"></div>
13
            <!--<div class="col-2 item-caption">查看</div>-->
14
            <div class="col-6">
15
                <div class="btn opt-query">查看</div>
16 16
            </div>
17
18 17
        </div>
18
19 19
    </div>
20
    <div class="container dt-tpl">
20
    <div id="type" style="height:400px"></div>
21
    <div class="container dt-tpl-2">
22
        <div>用户流量</div>
21 23
        <table class="table table-bordered">
22 24
            <thead>
23 25
            <tr>
24
                <th>#</th>
25
                <th>申请时间</th>
26
                <th>申请人ID</th>
27
                <th>姓名</th>
28
                <th>职称</th>
29
                <th>机构</th>
30
                <th>受理状态</th>
31
                <th>操作</th>
26
                <th>时间</th>
27
                <th>新认领客户</th>
28
                <th>新认领成功客户</th>
29
                <th>累计认领成功客户</th>
30
                <th>累计认领客户</th>
32 31
            </tr>
33 32
            </thead>
34 33
            <tbody>
35 34
            <tr ch-dir="list">
36
                <td>{{-_index}}</td>
37
                <td>{{createTime-showDay}}</td>
38
                <td>{{professorId}}</td>
39
                <td>{{name}}</td>
40
                <td>{{title}}</td>
41
                <td>{{orgName}}</td>
42
                <td class="hand-dict" dict="solveStatus" code="{{solveStatus}}" ></td>
43
                <td class="table-opt" authApplyId="{{authApplyId}}"><div class="btn opt-auth">
44
                    <i class="icon-plus"></i>
45
                    审核
46
                </div></td>
35
                <td>{{createTime}}</td>
36
                <td>{{znum-count}}</td>
37
                <td>{{jnum-count}}</td>
38
                <td>{{ljnum}}</td>
39
                <td>{{lznum}}</td>
47 40
            </tr>
48 41
            </tbody>
49 42
            <tbody ch-dir="array.empty">
50 43
            <tr>
51
                <td class="empty-desc" colspan="5">表格暂无数据</td>
44
                <td colspan="7">表格暂无数据</td>
52 45
            </tr>
53 46
            </tbody>
54 47
        </table>
55 48
    </div>
56
    <div id="type" style="height:400px"></div>
57
    <div id="test" style="height: 400px"></div>
58 49
</div>

+ 1 - 1
html/test.html

@ -59,7 +59,7 @@
59 59
	<script>
60 60
		$(function() {
61 61
			$.use(["spa", "util", "form"], function(spa, util, fb) {
62
				fb.build($(".dt-form"));
62
				fb.build($(".dt-form"),{qq:{maxShowCount:15}});
63 63

64 64
			});
65 65
		});

+ 106 - 24
js/model/sys/pictable/index.js

@ -1,28 +1,38 @@
1
/**
2
 * Created by TT on 2017/4/19.
3
 */
4 1
;
5 2
spa_define(function () {
6 3
    return $.use(["spa", "code", "form", "util", "dict"], function (spa, code, form, util, dict) {
7 4
        return {
8 5
            main: function () {
9
                var root = spa.findInMain(".sys_chart_index");
10
                var qf = form.build(root.find(".queryForm"));
11
                var queryBtn = root.find(".queryForm .icon-search");
12
                var myChart1 = echarts.init(document.getElementById('type'));
13
                var tableData = {data: []}, tableData2 = {data: []},
14
                    allData = [];
6
                var root = spa.findInMain(".sys_pictable_index");
7
                var cr = code.parseCode(root.find(".dt-tpl-2"));
8
                var myChart = echarts.init(document.getElementById('type'));
15 9
16
                var load = function () {
17
                    util.get("../ajax/operation/statist/user", null, function (data) {
18
                        allData = data || [];
19
                        query();
20
                        query2();
21
                        var option = {
10
                var dynUser = {ready: true};
11
12
                util.get("../ajax/sys/user/all",null,function(data){
13
                    var items =dynUser.items = [];
14
                    data.forEach(function(item){
15
                        items.push({code:item.id,caption:item.name});
16
                    });
17
                    root.find(".dyn-select").attr("defVal",util.data("loginUser").id);
18
                    dynUser.formRef = form.build(root.find(".dt-form"),{name:dynUser});
19
                });
22 20
21
                cr.shell("count", function (env) {
22
                    var v = env.cd[this.k];
23
                    if (v === 0) {
24
                        return 0;
25
                    }
26
                    return v;
27
                });
28
29
                var loadChart = function () {
30
                    util.get("../ajax/sys/user/pictable/"+util.data("loginUser").id,null,function (data) {
31
                        var colors = ['#c23531', '#82C8FA'];
32
                        var option = {
23 33
                            color: colors,
24 34
                            title: {
25
                                text: '用户流量统计',
35
                                text: '个人业绩统计',
26 36
                                subtext: '最近7天'
27 37
                            },
28 38
                            tooltip: {
@ -32,7 +42,7 @@ spa_define(function () {
32 42
                                data: ['新增用户', '新增激活用户']
33 43
                            },
34 44
                            xAxis: {
35
                                data: allData.map(function (item) {
45
                                data: data.map(function (item) {
36 46
                                    return item.createTime;
37 47
                                }),
38 48
                                boundaryGap: false
@ -70,25 +80,97 @@ spa_define(function () {
70 80
                            series: [{
71 81
                                name: '新增用户',
72 82
                                type: 'line',
73
                                data: allData.map(function (item) {
83
                                data: data.map(function (item) {
74 84
                                    return item.znum;
75 85
                                }),
76 86
                            }, {
77 87
                                name: '新增激活用户',
78 88
                                type: 'line',
79
                                data: allData.map(function (item) {
89
                                data: data.map(function (item) {
80 90
                                    return item.jnum;
81 91
                                })
82 92
                            }
83 93
                            ]
84 94
                        };
85
                        myChart1.setOption(option1);
86
                    }, {});
95
                        cr.val(data);
96
                        myChart.setOption(option);
97
                    })
87 98
                };
88
            },
89
            mainDestory: function () {
99
                root.find(".opt-query").on("click", function () {
100
                    $.util.get("../ajax/sys/user/pictable/" + dynUser.formRef.val().name, null, function (data) {
101
                        var colors = ['#c23531', '#82C8FA'];
102
                        var option = {
103
                            color: colors,
104
                            title: {
105
                                text: '个人业绩统计',
106
                                subtext: '最近7天'
107
                            },
108
                            tooltip: {
109
                                trigger: 'axis'
110
                            },
111
                            legend: {
112
                                data: ['新增用户', '新增激活用户']
113
                            },
114
                            xAxis: {
115
                                data: data.map(function (item) {
116
                                    return item.createTime;
117
                                }),
118
                                boundaryGap: false
119
                            },
120
                            yAxis: {
121
                                splitLine: {
122
                                    show: false
123
                                },
124
                                boundaryGap: false,
125
                                type: "value",
126
                                interval: 1,
127
                                min: 0
128
                            },
129
                            toolbox: {
130
                                show: true,
131
                                feature: {
132
                                    dataZoom: {
133
                                        yAxisIndex: 'none'
134
                                    },
135
                                    dataView: {readOnly: true},
136
                                    magicType: {type: ['line', 'bar']},
137
                                    restore: {},
138
                                    saveAsImage: {}
139
                                }
140
                            },
141
                            dataZoom: [{
142
                                startValue: ""
143
                            }, {
144
                                type: 'inside'
145
                            }],
146
                            visualMap: {
147
                                top: 10,
148
                                right: 10,
149
                            },
150
                            series: [{
151
                                name: '新增用户',
152
                                type: 'line',
153
                                data: data.map(function (item) {
154
                                    return item.znum;
155
                                }),
156
                            }, {
157
                                name: '新增激活用户',
158
                                type: 'line',
159
                                data: data.map(function (item) {
160
                                    return item.jnum;
161
                                })
162
                            }
163
                            ]
164
                        };
165
                        myChart.setOption(option);
166
                        cr.val(data);
167
                    });
168
                });
169
                cr.listen(dict.doTransfer);
170
                loadChart();
171
90 172
91 173
            }
92
        };
174
        }
93 175
    });
94 176
});