Pu Zhibing
2025-02-18 fcb98e91a1e521b895cb58e8ac424f51dfd4e96a
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
<!DOCTYPE html>
<html lang="zh" xmlns:th="http://www.thymeleaf.org" xmlns:shiro="http://www.pollix.at/thymeleaf/shiro">
<head>
    <th:block th:include="include :: header('自定义视图分页')" />
</head>
<body class="gray-bg">
     <div class="container-div">
        <div class="row">
            <div class="col-sm-12 select-table table-striped">
                <table id="bootstrap-table" data-page-size="10" 
                       data-show-custom-view="true" data-custom-view="customViewFormatter"
                       data-custom-view-default-view="true">
                </table>
            </div>
        </div>
    </div>
    
    <template id="profileTemplate">
        <div class="col-sm-4">
            <div class="contact-box">
                <a href="profile.html">
                    <div class="col-sm-4">
                        <div class="text-center">
                            <img alt="image" class="img-circle m-t-xs img-responsive" src="%IMAGE%">
                            <div class="m-t-xs font-bold">%userName%</div>
                        </div>
                    </div>
                    <div class="col-sm-8">
                        <h3><strong>%userCode%</strong></h3>
                        <p><i class="fa fa-jpy"></i> %userBalance%</p>
                        <address>
                        <strong>RuoYi, Inc.</strong><br>
                        E-mail: %userEmail%<br>
                        <abbr title="Phone">Tel:</abbr> %userPhone%
                       </address>
                    </div>
                    <div class="clearfix"></div>
                 </a>
             </div>
        </div>
    </template>
 
    <div th:include="include :: footer"></div>
    <th:block th:include="include :: bootstrap-table-custom-view-js" />
    <script th:inline="javascript">
        var prefix = ctx + "demo/table";
        var datas = [[${@dict.getType('sys_normal_disable')}]];
 
        $(function() {
            var options = {
                url: prefix + "/list",
                showSearch: false,
                showRefresh: false,
                showToggle: false,
                showColumns: false,
                showExport: true,
                columns: [{
                    checkbox: true
                },
                {
                    field : 'userId', 
                    title : '用户ID'
                },
                {
                    field : 'userCode', 
                    title : '用户编号'
                },
                {
                    field : 'userName', 
                    title : '用户姓名'
                },
                {
                    field : 'userPhone', 
                    title : '用户手机'
                },
                {
                    field : 'userEmail', 
                    title : '用户邮箱'
                },
                {
                    field : 'userBalance',
                    title : '用户余额'
                },
                {
                    field: 'status',
                    title: '用户状态',
                    align: 'center',
                    formatter: function(value, row, index) {
                        return $.table.selectDictLabel(datas, value);
                    }
                },
                {
                    title: '操作',
                    align: 'center',
                    formatter: function(value, row, index) {
                        var actions = [];
                        actions.push('<a class="btn btn-success btn-xs" href="javascript:;"><i class="fa fa-edit"></i>编辑</a> ');
                        actions.push('<a class="btn btn-danger btn-xs" href="javascript:;"><i class="fa fa-remove"></i>删除</a>');
                        return actions.join('');
                    }
                }]
            };
            $.table.init(options);
        });
        
        function customViewFormatter (data) {
            var template = $('#profileTemplate').html()
            var view = ''
            $.each(data, function (i, row) {
              view += template.replace('%userCode%', row.userCode)
                .replace('%IMAGE%', "http://demo.ruoyi.vip/img/profile.jpg")
                .replace('%userName%', row.userName)
                .replace('%userEmail%', row.userEmail)
                .replace('%userPhone%', row.userPhone)
                .replace('%userBalance%', row.userBalance);
            })
 
            return `<div class="row mx-0">${view}</div>`
          }
    </script>
</body>
</html>