Browse Source

Merge branch 'TT'

XMTT 8 years ago
parent
commit
ccf815fc22
2 changed files with 213 additions and 0 deletions
  1. 58 0
      html/model/sys/pictable/index.html
  2. 155 0
      js/model/sys/pictable/index.js

+ 58 - 0
html/model/sys/pictable/index.html

@ -0,0 +1,58 @@
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>
9
10
            </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>
16
            </div>
17
18
        </div>
19
    </div>
20
    <div class="container dt-tpl">
21
        <table class="table table-bordered">
22
            <thead>
23
            <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>
32
            </tr>
33
            </thead>
34
            <tbody>
35
            <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>
47
            </tr>
48
            </tbody>
49
            <tbody ch-dir="array.empty">
50
            <tr>
51
                <td class="empty-desc" colspan="5">表格暂无数据</td>
52
            </tr>
53
            </tbody>
54
        </table>
55
    </div>
56
    <div id="type" style="height:400px"></div>
57
    <div id="test" style="height: 400px"></div>
58
</div>

+ 155 - 0
js/model/sys/pictable/index.js

@ -0,0 +1,155 @@
1
/**
2
 * Created by TT on 2017/4/19.
3
 */
4
/**
5
 * Created by TT on 2017/4/6.
6
 */
7
;
8
spa_define(function () {
9
    return $.use(["spa", "code", "form", "util", "dict"], function (spa, code, form, util, dict) {
10
        return {
11
            main: function () {
12
                var root = spa.findInMain(".sys_chart_index");
13
                var qf = form.build(root.find(".queryForm"));
14
                var cr = code.parseCode(root.find(".dt-tpl"));
15
                var cr2 = code.parseCode(root.find(".dt-tpl-2"));
16
                var queryBtn = root.find(".queryForm .icon-search");
17
                var myChart1 = echarts.init(document.getElementById('type'));
18
                var tableData = {data: []}, tableData2 = {data: []},
19
                    allData = [];
20
21
                cr.shell("userType", function (env) {
22
                    var v = env.cd[this.k];
23
                    return v === 1 ? "专家用户" : (v === 0 ? "普通用户" : "");
24
                });
25
                cr2.shell("userRole",function (env) {
26
                    var v = env.cd[this.k];
27
                    if (v === 1) {
28
                        return "科研工作者";
29
                    }
30
                    if (v === 2) {
31
                        return "在企人员";
32
                    }
33
                    if (v === 3) {
34
                        return "在校生";
35
                    }
36
                    return "其他身份";
37
                });
38
                var query = function () {
39
                    var val = qf.item("qn").get();
40
                    if (val) {
41
                        var td = tableData.data = [];
42
                        if (allData.byType != null) {
43
                            for (var i = 0; i < allData.byType.length; ++i) {
44
                                var item = allData.byType[i];
45
                                if (item && item.name && item.name.indexOf(val) >= 0) {
46
                                    td.push(item);
47
                                }
48
                            }
49
                        }
50
                    } else {
51
                        tableData.data = allData.byType;
52
                    }
53
                    cr.val(tableData.data);
54
                };
55
                var query2 = function () {
56
                    var val = qf.item("qn2").get();
57
                    if (val) {
58
                        var td = tableData2.data = [];
59
                        if (allData.byRole != null) {
60
                            for (var i = 0; i < allData.byRole.length; ++i) {
61
                                var item = allData.byRole[i];
62
                                if (item && item.name && item.name.indexOf(val) >= 0) {
63
                                    td.push(item);
64
                                }
65
                            }
66
                        }
67
                    } else {
68
                        tableData2.data = allData.byRole;
69
                    }
70
                    cr2.val(tableData2.data);
71
                };
72
                var load = function () {
73
                    util.get("../ajax/operation/statist/user", null, function (data) {
74
                        allData = data || [];
75
                        query();
76
                        query2();
77
                        var option = {
78
79
                            color: colors,
80
                            title: {
81
                                text: '用户流量统计',
82
                                subtext: '最近7天'
83
                            },
84
                            tooltip: {
85
                                trigger: 'axis'
86
                            },
87
                            legend: {
88
                                data: ['新增用户', '新增激活用户']
89
                            },
90
                            xAxis: {
91
                                data: allData.map(function (item) {
92
                                    return item.createTime;
93
                                }),
94
                                boundaryGap: false
95
                            },
96
                            yAxis: {
97
                                splitLine: {
98
                                    show: false
99
                                },
100
                                boundaryGap: false,
101
                                type: "value",
102
                                interval: 1,
103
                                min: 0
104
                            },
105
                            toolbox: {
106
                                show: true,
107
                                feature: {
108
                                    dataZoom: {
109
                                        yAxisIndex: 'none'
110
                                    },
111
                                    dataView: {readOnly: true},
112
                                    magicType: {type: ['line', 'bar']},
113
                                    restore: {},
114
                                    saveAsImage: {}
115
                                }
116
                            },
117
                            dataZoom: [{
118
                                startValue: ""
119
                            }, {
120
                                type: 'inside'
121
                            }],
122
                            visualMap: {
123
                                top: 10,
124
                                right: 10,
125
                            },
126
                            series: [{
127
                                name: '新增用户',
128
                                type: 'line',
129
                                data: allData.map(function (item) {
130
                                    return item.znum;
131
                                }),
132
                            }, {
133
                                name: '新增激活用户',
134
                                type: 'line',
135
                                data: allData.map(function (item) {
136
                                    return item.jnum;
137
                                })
138
                            }
139
                            ]
140
                        };
141
                        myChart1.setOption(option1);
142
                    }, {});
143
                };
144
                queryBtn.on("click", query());
145
                cr.listen(dict.doTransfer);
146
                root.on("click",".opt-new",function () {
147
                    load();
148
                });
149
            },
150
            mainDestory: function () {
151
152
            }
153
        };
154
    });
155
});