diff --git a/src/main/resources/data.sql b/src/main/resources/data.sql
index e434042..37daf22 100644
--- a/src/main/resources/data.sql
+++ b/src/main/resources/data.sql
@@ -1,8 +1,8 @@
 INSERT INTO tb_tenantconfig(cfgid, tenantid, datacenter_id)
 values ('main', '{tenantid}', '01');
 
-INSERT INTO tb_operator(operid, closedate, opendate, opercode, opername, operpwd, opertype, status, tenantid)
-VALUES ('LOR2IwRkbOjp+sVG9KR2BpHZbwGKepS4', '20500101', '20190101', 'system', '系统管理员', '$2a$10$Ex9xp11.vCaD8D0a7ahiUOKqDij1TcCUBwRAmrqXeDvAkmzLibn4.', 'oper', 'normal', '{tenantid}');
+INSERT INTO tb_operator(operid, closedate, opendate, opercode, opername, operpwd, opertype, status, thirdadmin, tenantid)
+VALUES ('LOR2IwRkbOjp+sVG9KR2BpHZbwGKepS4', '20500101', '20190101', 'system', '系统管理员', '$2a$10$Ex9xp11.vCaD8D0a7ahiUOKqDij1TcCUBwRAmrqXeDvAkmzLibn4.', 'oper', 'normal', 'no', '{tenantid}');
 
 
 INSERT INTO tb_role(roleid, createtime, editflag, lastsaved, rolecode, roledesc, rolename, tenantid)
@@ -367,6 +367,10 @@
 VALUES ('ff8080816b7947ed016b795577370087', 45, NULL, 'd1yctWs5+ks0iQN3m9bUvRHus6HbKbrs', '{tenantid}');
 INSERT INTO  "tb_permission" ("id", "resid", "role_func_id", "roleid", "tenantid")
 VALUES ('ff8080816b7947ed016b795577370088', 43, NULL, 'd1yctWs5+ks0iQN3m9bUvRHus6HbKbrs', '{tenantid}');
+INSERT INTO  "tb_permission" ("id", "resid", "role_func_id", "roleid", "tenantid")
+VALUES ('ff8080816bbb130c016bbb6ea2f700c9', 76, NULL, 'd1yctWs5+ks0iQN3m9bUvRHus6HbKbrs', '{tenantid}');
+INSERT INTO  "tb_permission" ("id", "resid", "role_func_id", "roleid", "tenantid")
+VALUES ('ff8080816bbb130c016bbb6ea2f600b3', 26, NULL, 'd1yctWs5+ks0iQN3m9bUvRHus6HbKbrs', '{tenantid}');
 
 
 INSERT INTO "tb_subject" ("subjno", "balflag", "displayflag", "endflag", "fsubjno", "opendate", "subjlevel", "subjname", "subjtype", "tenantid")
diff --git a/src/main/resources/templates/home/console.html b/src/main/resources/templates/home/console.html
index 94a54a5..63cb260 100755
--- a/src/main/resources/templates/home/console.html
+++ b/src/main/resources/templates/home/console.html
@@ -1,48 +1,5 @@
 <div class="layui-row layui-col-space15">
-    <div class="layui-col-xs6 layui-col-md3">
-        <div class="layui-card">
-            <div class="layui-card-header">
-                访问量<span class="layui-badge layui-bg-blue pull-right">周</span>
-            </div>
-            <div class="layui-card-body">
-                <p class="lay-big-font">9,999,666</p>
-                <p>总计访问量<span class="pull-right">88万 <i class="layui-icon layui-icon-flag"></i></span></p>
-            </div>
-        </div>
-    </div>
-    <div class="layui-col-xs6 layui-col-md3">
-        <div class="layui-card">
-            <div class="layui-card-header">
-                下载<span class="layui-badge layui-bg-black pull-right">月</span>
-            </div>
-            <div class="layui-card-body">
-                <p class="lay-big-font">33,555</p>
-                <p>新下载<span class="pull-right">10% <i class="layui-icon layui-icon-download-circle"></i></span></p>
-            </div>
-        </div>
-    </div>
-    <div class="layui-col-xs6 layui-col-md3">
-        <div class="layui-card">
-            <div class="layui-card-header">
-                Start<span class="layui-badge layui-bg-green pull-right">周</span>
-            </div>
-            <div class="layui-card-body">
-                <p class="lay-big-font">999,666</p>
-                <p>总Start数<span class="pull-right">88万 <i class="layui-icon layui-icon-rate"></i></span></p>
-            </div>
-        </div>
-    </div>
-    <div class="layui-col-xs6 layui-col-md3">
-        <div class="layui-card">
-            <div class="layui-card-header">
-                活跃用户<span class="layui-badge layui-bg-orange pull-right">月</span>
-            </div>
-            <div class="layui-card-body">
-                <p class="lay-big-font">66,666</p>
-                <p>最近一个月<span class="pull-right">15% <i class="layui-icon layui-icon-user"></i></span></p>
-            </div>
-        </div>
-    </div>
+
 </div>
 
 
diff --git a/src/main/resources/templates/home/theme.html b/src/main/resources/templates/home/theme.html
index 67cb12a..392a02a 100755
--- a/src/main/resources/templates/home/theme.html
+++ b/src/main/resources/templates/home/theme.html
@@ -7,8 +7,8 @@
 
 <div class="layui-card-header"><h2 class="header-title">设置主题：</h2></div>
 <div class="layui-card-body layui-text">
-    <a href="/home/setTheme" class="layui-btn" style="background-color: #009688;">默认主题</a>
-    <a href="/home/setTheme?themeName=blue" class="layui-btn layui-btn-normal">蓝色主题</a>
+    <a th:href="@{/home/setTheme}" class="layui-btn" style="background-color: #009688;">默认主题</a>
+    <a th:href="@{/home/setTheme?themeName=blue}" class="layui-btn layui-btn-normal">蓝色主题</a>
     <br><br><br>
   
 </div>
diff --git a/src/main/resources/templates/system/dtl/shopdtl.html b/src/main/resources/templates/system/dtl/shopdtl.html
index 92e7f60..644a6a7 100644
--- a/src/main/resources/templates/system/dtl/shopdtl.html
+++ b/src/main/resources/templates/system/dtl/shopdtl.html
@@ -1,4 +1,4 @@
-<div class="layui-card">
+<div class="layui-card" style="width: 1100px">
     <div class="layui-card-header">
         <h2 class="header-title">商户流水查询</h2>
         <span class="layui-breadcrumb pull-right">
@@ -8,7 +8,7 @@
     </div>
     <div class="layui-card-body">
         <div class="layui-form" lay-filter="shopdtl-search-form">
-            <div class="layui-form-item" style="margin-bottom: 0;">
+            <div class="layui-form-item" style="margin-bottom: 10px;">
                 <div class="layui-inline">
                     <label class="layui-form-label">记账日期</label>
                     <div class="layui-input-inline" style="width: 120px;">
@@ -24,17 +24,9 @@
                     </div>
                 </div>
 
-                <div class="layui-inline" style="width: 298px;">
-                    <label class="layui-form-label">商户名称</label>
-                    <div class="layui-input-block">
-                        <input type="text" name="shopname" id="shopdtl-search-shopname" placeholder="商户名称"
-                               autocomplete="off" class="layui-input" maxlength="20"/>
-                    </div>
-                </div>
-
                 <div class="layui-inline">
                     <label class="layui-form-label">支付方式</label>
-                    <div class="layui-input-block">
+                    <div class="layui-input-block" style="height: 38px;">
                         <select name="sourcetype" id="shopdtl-search-sourcetype" class="layui-select">
                             <option value=""> 全部</option>
                             <option th:each="pt:${paytypeList}" th:value="${pt.sourceType}"
@@ -45,7 +37,7 @@
 
                 <div class="layui-inline">
                     <label class="layui-form-label">状态</label>
-                    <div class="layui-input-block">
+                    <div class="layui-input-block" style="height: 38px;">
                         <select name="transStatus" id="shopdtl-search-transStatus" class="layui-select">
                             <option value=""> 全部</option>
                             <option th:each="st:${dtlStatusList}" th:value="${st.dictval}"
@@ -55,7 +47,7 @@
                 </div>
             </div>
 
-            <div class="layui-form-item" style="margin-bottom: 0;">
+            <div class="layui-form-item" style="margin-bottom: 10px;">
                 <div class="layui-inline">
                     <label class="layui-form-label">交易日期</label>
                     <div class="layui-input-inline" style="width: 120px;">
@@ -73,7 +65,7 @@
 
                 <div class="layui-inline">
                     <label class="layui-form-label">选择商户</label>
-                    <div class="layui-input-block">
+                    <div class="layui-input-block" style="height: 38px;">
                         <input type="text" name="shopaccno" id="shopdtl-search-shopaccno" placeholder="选择商户"
                                lay-filter="shopdtl-search-shopaccno-filter"
                                autocomplete="off" class="layui-input"/>
@@ -82,7 +74,7 @@
 
                 <div class="layui-inline">
                     <label class="layui-form-label">类型</label>
-                    <div class="layui-input-block">
+                    <div class="layui-input-block" style="height: 38px;">
                         <select name="tradeflag" id="shopdtl-search-tradeflag" class="layui-select">
                             <option value=""> 全部</option>
                             <option value="in">收入</option>
@@ -90,10 +82,20 @@
                         </select>&emsp;
                     </div>
                 </div>
+            </div>
+
+            <div class="layui-form-item" style="margin-bottom: 0;">
+                <div class="layui-inline" style="margin-right: 20px;">
+                    <label class="layui-form-label">商户名称</label>
+                    <div class="layui-input-block" style="width: 265px;">
+                        <input type="text" name="shopname" id="shopdtl-search-shopname" placeholder="商户名称"
+                               autocomplete="off" class="layui-input" maxlength="20"/>
+                    </div>
+                </div>
 
                 <div class="layui-inline">
                     <label class="layui-form-label">交易码</label>
-                    <div class="layui-input-block">
+                    <div class="layui-input-block" style="height: 38px;">
                         <select name="transcode" id="shopdtl-search-transcode" class="layui-select">
                             <option value=""> 全部</option>
                             <option th:each="tc:${transcodeList}" th:value="${tc.transcode}"
diff --git a/src/main/resources/templates/system/dtl/userdtl.html b/src/main/resources/templates/system/dtl/userdtl.html
index a2e9d96..ead6ab2 100644
--- a/src/main/resources/templates/system/dtl/userdtl.html
+++ b/src/main/resources/templates/system/dtl/userdtl.html
@@ -8,7 +8,7 @@
     </div>
     <div class="layui-card-body">
         <div class="layui-form" lay-filter="userdtl-search-form">
-            <div class="layui-form-item" style="margin-bottom: 0;">
+            <div class="layui-form-item" style="margin-bottom: 10px;">
                 <div class="layui-inline">
                     <label class="layui-form-label">记账日期</label>
                     <div class="layui-input-inline" style="width: 120px;">
@@ -26,7 +26,7 @@
 
                 <div class="layui-inline">
                     <label class="layui-form-label">姓名</label>
-                    <div class="layui-input-block">
+                    <div class="layui-input-block" style="width: 211px;">
                         <input type="text" name="personname" id="userdtl-search-personname" placeholder="姓名"
                                autocomplete="off" class="layui-input" maxlength="20"/>
                     </div>
@@ -34,7 +34,7 @@
 
                 <div class="layui-inline">
                     <label class="layui-form-label">支付方式</label>
-                    <div class="layui-input-block">
+                    <div class="layui-input-block" style="height: 38px;">
                         <select name="sourcetype" id="userdtl-search-sourcetype" class="layui-select">
                             <option value=""> 全部</option>
                             <option th:each="pt:${paytypelist}" th:value="${pt.sourceType}"
@@ -42,20 +42,9 @@
                         </select>&emsp;
                     </div>
                 </div>
-
-                <div class="layui-inline">
-                    <label class="layui-form-label">状态</label>
-                    <div class="layui-input-block">
-                        <select name="transStatus" id="userdtl-search-transStatus" class="layui-select">
-                            <option value=""> 全部</option>
-                            <option th:each="st:${dtlStatusList}" th:value="${st.dictval}"
-                                    th:text="${st.dictcaption}"></option>
-                        </select>&emsp;
-                    </div>
-                </div>
             </div>
 
-            <div class="layui-form-item" style="margin-bottom: 0;">
+            <div class="layui-form-item" style="margin-bottom: 10px;">
                 <div class="layui-inline">
                     <label class="layui-form-label">交易日期</label>
                     <div class="layui-input-inline" style="width: 120px;">
@@ -72,16 +61,19 @@
                 </div>
 
                 <div class="layui-inline">
-                    <label class="layui-form-label">市民卡号</label>
-                    <div class="layui-input-block">
-                        <input type="text" name="cardno" id="userdtl-search-cardno" placeholder="市民卡号"
-                               autocomplete="off" class="layui-input"/>
+                    <label class="layui-form-label">状态</label>
+                    <div class="layui-input-block" style="height:38px;">
+                        <select name="transStatus" id="userdtl-search-transStatus" class="layui-select">
+                            <option value=""> 全部</option>
+                            <option th:each="st:${dtlStatusList}" th:value="${st.dictval}"
+                                    th:text="${st.dictcaption}"></option>
+                        </select>&emsp;
                     </div>
                 </div>
 
                 <div class="layui-inline">
                     <label class="layui-form-label">类型</label>
-                    <div class="layui-input-block">
+                    <div class="layui-input-block" style="height: 38px;">
                         <select name="tradeflag" id="userdtl-search-tradeflag" class="layui-select">
                             <option value=""> 全部</option>
                             <option value="in">收入</option>
@@ -89,7 +81,16 @@
                         </select>&emsp;
                     </div>
                 </div>
+            </div>
 
+            <div class="layui-form-item" style="margin-bottom: 0;">
+                <div class="layui-inline" style="margin-right: 20px;">
+                    <label class="layui-form-label">市民卡号</label>
+                    <div class="layui-input-block" style="width: 265px;">
+                        <input type="text" name="cardno" id="userdtl-search-cardno" placeholder="市民卡号"
+                               autocomplete="off" class="layui-input"/>
+                    </div>
+                </div>
                 <div class="layui-inline">
                     <label class="layui-form-label">交易码</label>
                     <div class="layui-input-block">
diff --git a/src/main/resources/templates/system/function/index.html b/src/main/resources/templates/system/function/index.html
index 93d53ac..2e85a8c 100755
--- a/src/main/resources/templates/system/function/index.html
+++ b/src/main/resources/templates/system/function/index.html
@@ -54,7 +54,7 @@
                         }
                     },
                     {
-                        field: 'id', align: 'center', title: '操作', fixed: 'right', templet: function (item) {
+                        field: 'id', align: 'center', title: '操作', fixed: 'right', width:350, templet: function (item) {
                             if (item.isLeaf == 0) {
                                 return ' <a class="layui-btn  layui-btn-xs" lay-event="edit"><i class="layui-icon layui-icon-edit"></i>编辑</a> ' +
                                     ' <a class="layui-btn layui-btn-normal  layui-btn-xs" lay-event="addsub"><i class="layui-icon layui-icon-set-sm"></i>添加子功能</a> ' +
diff --git a/src/main/resources/templates/system/operator/index.html b/src/main/resources/templates/system/operator/index.html
index 96ba2bc..49e4ab1 100644
--- a/src/main/resources/templates/system/operator/index.html
+++ b/src/main/resources/templates/system/operator/index.html
@@ -31,10 +31,10 @@
 <script type="text/html" id="oper-tpl-state">
     {{# if(d.opercode == 'system') { }}
     <input type="checkbox" lay-filter="oper-tpl-state" value="{{d.operid}}" lay-skin="switch" lay-text="正常|注销"
-           {{d.transStatus=='normal'?'checked':''}} disabled/>
+           {{d.status=='normal'?'checked':''}} disabled/>
     {{# }else{ }}
     <input type="checkbox" lay-filter="oper-tpl-state" value="{{d.operid}}" lay-skin="switch" lay-text="正常|注销"
-           {{d.transStatus=='normal'?'checked':''}} />
+           {{d.status=='normal'?'checked':''}} />
     {{# } }}
 </script>
 
@@ -61,8 +61,8 @@
             page: true,
             cols: [
                 [
-                    {type: 'numbers', fixed: 'left'},
-                    {field: 'opercode', title: '管理员账号', fixed: 'left', sort: true},
+                    {type: 'numbers', fixed: 'left', width: 50},
+                    {field: 'opercode', title: '管理员账号', fixed: 'left',width: 150,  sort: true},
                     {field: 'opername', title: '管理员名称', sort: true},
                     {field: 'transStatus', title: '状态', sort: true, width: 100, templet: '#oper-tpl-state'},
                     {
@@ -78,8 +78,10 @@
                     },
                     {field: 'mobile', sort: true, title: '手机号'},
                     {field: 'email', sort: true, title: '电子邮箱'},
-                    {field: 'opendate', sort: true, width: 120, title: '注册日期'},
-                    {align: 'center', toolbar: '#oper-table-bar', title: '操作', fixed: 'right'}
+                    {field: 'opendate', sort: true, width: 120, title: '注册日期', align: 'center', templet: function (d) {
+                        return admin.formatDate(d.opendate);
+                        }},
+                    {align: 'center', toolbar: '#oper-table-bar', title: '操作',width: 160, fixed: 'right'}
                 ]
             ]
         });
@@ -100,7 +102,7 @@
         // 显示表单弹窗
         var showEditModel = function (data) {
             var title = data ? '修改用户' : '添加用户';
-            admin.putTempData('t_user', data);
+            admin.putTempData('tmp_user', data);
             admin.popupCenter({
                 title: title,
                 path: '[[@{/operator/load4add}]]',
diff --git a/src/main/resources/templates/system/operator/logs.html b/src/main/resources/templates/system/operator/logs.html
index 207b4ea..3f6f6ff 100644
--- a/src/main/resources/templates/system/operator/logs.html
+++ b/src/main/resources/templates/system/operator/logs.html
@@ -9,8 +9,8 @@
     <div class="layui-card-body">
         <div class="layui-form toolbar">
             搜索：
-            <input id="search-value" class="layui-input search-input" type="text" placeholder="输入管理员账号"/>&emsp;
-            <button id="btn-search" class="layui-btn icon-btn" data-type="search"><i class="layui-icon">&#xe615;</i>搜索
+            <input id="search-operlog-value" class="layui-input search-input" type="text" placeholder="输入管理员账号"/>&emsp;
+            <button id="btn-operlog-search" class="layui-btn icon-btn" data-type="search"><i class="layui-icon">&#xe615;</i>搜索
             </button>
         </div>
         <table class="layui-table" id="logtable" lay-filter="logtable"></table>
@@ -30,11 +30,11 @@
             cols: [
                 [
                     {field: 'opername', title: '管理员账号', width: 160,fixed: 'left', sort: true},
-                    {field: 'functionname', title: '所属功能', width: 160,fixed: 'left', sort: true},
-                    {field: 'resname', title: '操作内容', width: 160,fixed: 'left', sort: true},
-                    {field: 'respath', title: '操作路径', width: 200,},
+                    {field: 'functionname', title: '所属功能', sort: true},
+                    {field: 'resname', title: '操作内容', sort: true},
+                    {field: 'respath', title: '操作路径'},
                     {
-                        field: 'logdate', align: 'center', title: '操作时间', fixed: 'right', templet: function (item) {
+                        field: 'logdate', align: 'center', title: '操作时间', width: 200, fixed: 'right', templet: function (item) {
                             return admin.formatDate(item.logdate);
                         }
                     }
@@ -42,8 +42,8 @@
             ]
         });
         // 搜索按钮点击事件
-        $('#btn-search').click(function () {
-            let key = $('#search-value').val();
+        $('#btn-operlog-search').click(function () {
+            let key = $('#search-operlog-value').val();
             table.reload('logtable', {where: {searchkey: key}, page: {curr: 1}});
         });
     });
diff --git a/src/main/resources/templates/system/operator/operator.html b/src/main/resources/templates/system/operator/operator.html
index 682e6c4..0a50551 100644
--- a/src/main/resources/templates/system/operator/operator.html
+++ b/src/main/resources/templates/system/operator/operator.html
@@ -16,9 +16,9 @@
         </div>
     </div>
     <div class="layui-form-item">
-        <label class="layui-form-label" title="用于第三方授权登录，但不能访问本系统资源">授权登录用户</label>
+        <label class="layui-form-label" title="用于第三方授权登录，但不能访问本系统资源" style="width: 90px;">授权登录用户</label>
         <div class="layui-input-block">
-            <input type="checkbox" name="thirdadmin" value="yes"  />
+            <input type="checkbox" name="thirdadmin" lay-skin="switch" lay-text="启用|关闭" value="yes" />
         </div>
     </div>
     <div class="layui-form-item">
@@ -65,6 +65,7 @@
         var formSelects = layui.formSelects;
 
         form.render('radio');
+        form.render('checkbox');
         form.verify({
             "mobile": function (e) {
                 if (null != e && e.length > 0 && !(/^1\d{10}$/.test(e))) {
@@ -107,7 +108,7 @@
 
         var url = '[[@{/operator/add}]]';
         // 回显user数据
-        var user = admin.getTempData('t_user');
+        var user = admin.getTempData('tmp_user');
         if (user) {
             $('input[name="opercode"]').attr('readonly', 'readonly');
             form.val('oper-form', user);
@@ -119,6 +120,7 @@
         }
         // 表单提交事件
         form.on('submit(oper-form-submit)', function (data) {
+            debugger
             layer.load(2);
             var token_name = $("meta[name='_csrf_token']").attr("content");
             var token = $("meta[name='_csrf_token']").attr("value");
diff --git a/src/main/resources/templates/system/operator/setpwd.html b/src/main/resources/templates/system/operator/setpwd.html
index 53f4fef..7b77f60 100644
--- a/src/main/resources/templates/system/operator/setpwd.html
+++ b/src/main/resources/templates/system/operator/setpwd.html
@@ -41,7 +41,7 @@
         $('#cancelBtn').click(function () {
             admin.closeThisTabs()
         });
-        form.render('select');
+
         let url = '[[@{/operator/dosetpwd}]]';
         // 表单提交事件
         form.on('submit(setmypass)', function (data) {
diff --git a/src/main/resources/templates/system/operator/userinfor.html b/src/main/resources/templates/system/operator/userinfor.html
index 1193ef3..7cb1bce 100644
--- a/src/main/resources/templates/system/operator/userinfor.html
+++ b/src/main/resources/templates/system/operator/userinfor.html
@@ -55,7 +55,7 @@
         $('#cancelBtn').click(function () {
             admin.closeThisTabs()
         });
-        form.render('select');
+        form.render('radio');
         let url = '[[@{/operator/updateinfor}]]';
         // 表单提交事件
         form.on('submit(infor-form-submit)', function (data) {
diff --git a/src/main/resources/templates/system/param/apiclientform.html b/src/main/resources/templates/system/param/apiclientform.html
index 94353f7..16ace93 100644
--- a/src/main/resources/templates/system/param/apiclientform.html
+++ b/src/main/resources/templates/system/param/apiclientform.html
@@ -7,7 +7,7 @@
         </div>
     </div>
     <div class="layui-form-item">
-        <label class="layui-form-label">角色</label>
+        <label class="layui-form-label">权限</label>
         <div class="layui-input-block">
             <select name="roles" xm-select="roles" lay-verify="required">
                 <option th:each="role : ${rolelist}" th:value="${role.key}">[[${role.value}]]</option>
diff --git a/src/main/resources/templates/system/param/apiclientpara.html b/src/main/resources/templates/system/param/apiclientpara.html
index d8292d7..9f18342 100644
--- a/src/main/resources/templates/system/param/apiclientpara.html
+++ b/src/main/resources/templates/system/param/apiclientpara.html
@@ -22,14 +22,14 @@
 
 <!-- 表格操作列 -->
 <script type="text/html" id="apiclient-table-bar">
-    <a class="layui-btn layui-btn-xs" lay-event="editRole">修改角色</a>
+    <a class="layui-btn layui-btn-xs" lay-event="editRole">修改</a>
     <a class="layui-btn layui-btn-danger layui-btn-xs" lay-event="del">删除</a>
 </script>
 
 <!-- 表格状态列 -->
 <script type="text/html" id="api-tpl-state">
     <input type="checkbox" lay-filter="api-tpl-state" value="{{d.appid}}" lay-skin="switch" lay-text="启用|关闭"
-           {{d.transStatus=='normal'?'checked':''}} />
+           {{d.status=='normal'?'checked':''}} />
 </script>
 
 <script>
@@ -47,8 +47,8 @@
                 [
                     {field: 'appid', title: 'APPID', width: 120, align: 'right', fixed: 'left', sort: true},
                     {field: 'secret', title: '密钥', align: 'center', edit: 'text'},
-                    {field: 'transStatus', title: '状态', width: 100, templet: '#api-tpl-state',sort: true},
-                    {field: 'roles', title: '角色', align: 'center' },
+                    {field: 'status', title: '状态', width: 100, templet: '#api-tpl-state',sort: true},
+                    {field: 'roles', title: '权限', align: 'center' },
                     {align: 'center', title: '操作', width: 150, toolbar: '#apiclient-table-bar',  fixed: 'right'}
                 ]
             ]
@@ -68,7 +68,7 @@
         });
 
         function showEditModel(data) {
-            var title = data ? '修改角色' : '新增应用';
+            var title = data ? '修改应用' : '新增应用';
             admin.putTempData('t_appclient', data);
             admin.popupCenter({
                 title: title,
diff --git a/src/main/resources/templates/system/param/paytype.html b/src/main/resources/templates/system/param/paytype.html
index 94ce96a..8c5d102 100644
--- a/src/main/resources/templates/system/param/paytype.html
+++ b/src/main/resources/templates/system/param/paytype.html
@@ -56,6 +56,28 @@
            {{(d.enable==true && d.anonymousEnable==true)?'checked':''}} disabled/>
     {{# } }}
 </script>
+<script type="text/html" id="reversable-tpl-state">
+    {{# if(d.enable == true ){ }}
+    <input type="checkbox" lay-filter="reversable-tpl-state" value="{{d.sourceType}}" lay-skin="switch"
+           lay-text="启用|关闭"
+           {{(d.enable==true && d.reversable==true)?'checked':''}}/>
+    {{# }else{ }}
+    <input type="checkbox" lay-filter="reversable-tpl-state" value="{{d.sourceType}}" lay-skin="switch"
+           lay-text="启用|关闭"
+           {{(d.enable==true && d.reversable==true)?'checked':''}} disabled/>
+    {{# } }}
+</script>
+<script type="text/html" id="checkable-tpl-state">
+    {{# if(d.enable == true ){ }}
+    <input type="checkbox" lay-filter="checkable-tpl-state" value="{{d.sourceType}}" lay-skin="switch"
+           lay-text="启用|关闭"
+           {{(d.enable==true && d.checkable==true)?'checked':''}}/>
+    {{# }else{ }}
+    <input type="checkbox" lay-filter="checkable-tpl-state" value="{{d.sourceType}}" lay-skin="switch"
+           lay-text="启用|关闭"
+           {{(d.enable==true && d.checkable==true)?'checked':''}} disabled/>
+    {{# } }}
+</script>
 
 <script>
     layui.use(['form', 'table', 'layer', 'admin', 'element'], function () {
@@ -94,6 +116,20 @@
                         sort: true
                     },
                     {
+                        field: 'reversable',
+                        title: '能否冲正',
+                        align: 'center',
+                        templet: '#reversable-tpl-state',
+                        sort: true
+                    },
+                    {
+                        field: 'checkable',
+                        title: '是否清算',
+                        align: 'center',
+                        templet: '#anonymousenable-tpl-state',
+                        sort: true
+                    },
+                    {
                         align: 'center', title: '操作', width: 150, fixed: 'right', templet: function (item) {
                             if (item.sourceType != 'balance') {
                                 return '<a class="layui-btn layui-btn-xs" lay-event="config">配置</a> <a class="layui-btn layui-btn-danger layui-btn-xs" lay-event="del">删除</a>';
@@ -167,6 +203,16 @@
             updatePaytypeState(obj, "anonymous", token);
         });
 
+        form.on('switch(reversable-tpl-state)', function (obj) {
+            var token = $("meta[name='_csrf_token']").attr("value");
+            updatePaytypeState(obj, "reversable", token);
+        });
+
+        form.on('switch(checkable-tpl-state)', function (obj) {
+            var token = $("meta[name='_csrf_token']").attr("value");
+            updatePaytypeState(obj, "checkable", token);
+        });
+
 
         function updatePaytypeState(obj, optype, token) {
             admin.go('[[@{/param/updatepaytypestate}]]', {
diff --git a/src/main/resources/templates/system/param/paytypeform.html b/src/main/resources/templates/system/param/paytypeform.html
index e3a2d5a..1ec0c3d 100644
--- a/src/main/resources/templates/system/param/paytypeform.html
+++ b/src/main/resources/templates/system/param/paytypeform.html
@@ -41,6 +41,20 @@
         </div>
     </div>
 
+    <div class="layui-form-item">
+        <label class="layui-form-label">能否冲正</label>
+        <div class="layui-input-block">
+            <input name="reversable" type="checkbox" lay-skin="switch" lay-text="启用|关闭" value="yes" lay-verify="required" checked/>
+        </div>
+    </div>
+
+    <div class="layui-form-item">
+        <label class="layui-form-label">是否清算</label>
+        <div class="layui-input-block">
+            <input name="checkable" type="checkbox" lay-skin="switch" lay-text="启用|关闭" value="yes" lay-verify="required" checked/>
+        </div>
+    </div>
+
     <div class="layui-form-item model-form-footer">
         <button class="layui-btn layui-btn-primary" type="button" ew-event="closeDialog">取消</button>
         <button class="layui-btn" lay-filter="form-submit" lay-submit  id="submitbtn">保存</button>
diff --git a/src/main/resources/templates/system/role/func.html b/src/main/resources/templates/system/role/func.html
index aeca844..f3ebd5e 100755
--- a/src/main/resources/templates/system/role/func.html
+++ b/src/main/resources/templates/system/role/func.html
@@ -54,6 +54,7 @@
             let treeObj = $.fn.zTree.getZTreeObj("funclist");
             let nodes = treeObj.getCheckedNodes(true);
             for (let i = 0; i < nodes.length; i++) {
+
                 ids.push(nodes[i].id);//存功能ID
             }
             if (ids.length < 1) {
diff --git a/src/main/resources/templates/system/role/index.html b/src/main/resources/templates/system/role/index.html
index f92912f..535ecf3 100644
--- a/src/main/resources/templates/system/role/index.html
+++ b/src/main/resources/templates/system/role/index.html
@@ -31,11 +31,11 @@
             page: true,
             cols: [
                 [
-                    {field: 'roleName', title: '角色名称', width: 160,fixed: 'left', sort: true},
-                    {field: 'roleCode', title: '角色代码', width: 160,fixed: 'left', sort: true},
+                    {field: 'roleName', title: '角色名称', width: 200,fixed: 'left', sort: true},
+                    {field: 'roleCode', title: '角色代码', width: 200,fixed: 'left', sort: true},
                     {field: 'roleDesc', title: '描述'},
                     {
-                        field: 'roleId', align: 'center', title: '操作', fixed: 'right', templet: function (item) {
+                        field: 'roleId', align: 'center', title: '操作', width: 300, fixed: 'right', templet: function (item) {
                             let html =  ' <a class="layui-btn  layui-btn-xs" lay-event="edit"><i class="layui-icon layui-icon-edit"></i>编辑</a> ' +
                                 ' <a class="layui-btn layui-btn-warm layui-btn-xs" lay-event="addfunc"><i class="layui-icon layui-icon-set-sm"></i>分配功能</a> ';
                             if(item.editflag===1){
diff --git a/src/main/resources/templates/system/shop/config.html b/src/main/resources/templates/system/shop/config.html
index b80ec4f..56400e7 100644
--- a/src/main/resources/templates/system/shop/config.html
+++ b/src/main/resources/templates/system/shop/config.html
@@ -13,9 +13,8 @@
                     <div class="layui-card-header">
                         商户树<span style="font-size: 12px;">（双击结算商户查询）</span>
                     </div>
-                    <div class="layui-card-body layui-show"
-                         style="background-color: #D7F9F7;max-height: 560px;overflow:auto;">
-                        <ul id="shopacctree" class="ztree"></ul>
+                    <div class="layui-card-body layui-show">
+                        <ul id="shopacctree" class="ztree" style="background-color: #D7F9F7;max-height: 560px;overflow:auto;"></ul>
                     </div>
                 </div>
             </div>
diff --git a/src/main/resources/templates/system/shop/index.html b/src/main/resources/templates/system/shop/index.html
index 000ef7d..5e441ae 100644
--- a/src/main/resources/templates/system/shop/index.html
+++ b/src/main/resources/templates/system/shop/index.html
@@ -10,9 +10,8 @@
         <div class="layui-row">
             <div class="layui-col-xs5 layui-col-md3">
                 <div class="layui-card">
-                    <div class="layui-card-body layui-show"
-                         style="background-color: #D7F9F7;max-height: 560px;overflow:auto;">
-                        <ul id="shoptree" class="ztree"></ul>
+                    <div class="layui-card-body layui-show">
+                        <ul id="shoptree" class="ztree" style="background-color: #D7F9F7;max-height: 560px;overflow:auto;"></ul>
                     </div>
                 </div>
             </div>
diff --git a/src/main/resources/templates/system/user/add.html b/src/main/resources/templates/system/user/add.html
index e2f2c81..d04999d 100755
--- a/src/main/resources/templates/system/user/add.html
+++ b/src/main/resources/templates/system/user/add.html
@@ -19,7 +19,7 @@
         <label class="layui-form-label">证件类型*</label>
         <div class="layui-input-block">
             <select name="idtype" id="idtype" lay-verify="required">
-                <option th:each="bean : ${idtypes}" th:value="${bean.idtype}">[[${bean.typename}]]</option>
+                <option th:each="bean : ${idtypeList}" th:value="${bean.dictval}">[[${bean.dictcaption}]]</option>
             </select>
         </div>
     </div>
diff --git a/src/main/resources/templates/system/user/index.html b/src/main/resources/templates/system/user/index.html
index 8e13364..5507955 100644
--- a/src/main/resources/templates/system/user/index.html
+++ b/src/main/resources/templates/system/user/index.html
@@ -10,7 +10,8 @@
         <div class="layui-form toolbar">
             搜索：
             <input id="search-value-user" class="layui-input search-input" type="text" placeholder="输入用户名称"/>&emsp;
-            <button id="btn-search-user" class="layui-btn icon-btn" data-type="search"><i class="layui-icon">&#xe615;</i>搜索
+            <button id="btn-search-user" class="layui-btn icon-btn" data-type="search"><i
+                    class="layui-icon">&#xe615;</i>搜索
             </button>
             <button id="btn-add-user" class="layui-btn icon-btn" data-type="add"><i class="layui-icon"></i>添加用户
             </button>
@@ -31,44 +32,45 @@
             page: true,
             cols: [
                 [
-                    {field: 'name', title: '名称', width: 80, fixed: 'left', sort: true},
-                    {
-                        field: 'sex', title: '性别', fixed: 'left', width: 80,
-                        templet: function (item) {
+                    {field: 'name', title: '名称', width: 150, fixed: 'left', sort: true},
+                    {field: 'sex', title: '性别', align: 'center', width: 80, templet: function(item){
                             return getTempDictValue('sexList', item.sex);
-                        }
-                    },
+                        }},
                     {
-                        field: 'status', title: '状态', fixed: 'left', width: 80, templet: function (item) {
-                            let desc = getTempDictValue('accountStatusList', item.status)
+                        field: 'status', title: '状态', align: 'center',  width: 80, templet: function (item) {
+                            let desc = getTempDictValue('accountStatusList', item.status);
                             if (item.status === 'normal') {
-                                return '<span class="layui-badge layui-bg-green">' + desc + '</span>'
+                                return '<span class="layui-badge layui-bg-green">' + desc + '</span>';
                             } else if (item.status === 'closed') {
-                                return '<span class="layui-badge">' + desc + '</span>'
+                                return '<span class="layui-badge">' + desc + '</span>';
                             } else if (item.status === 'locked') {
-                                return '<span class="layui-badge layui-bg-orange">' + desc + '</span>'
+                                return '<span class="layui-badge layui-bg-orange">' + desc + '</span>';
                             } else {
-                                return '异常'
+                                return '异常';
                             }
                         }
                     },
                     {
-                        field: 'idtype', align: 'center', width: 100, title: '证件类型', fixed: 'left',
+                        field: 'idtype', align: 'center', width: 100, title: '证件类型',
                         templet: function (item) {
                             return getTempDictValue('idtypeList', item.idtype);
                         }
                     },
-                    {field: 'idno', title: '证件号', width: 120, fixed: 'left', sort: true},
-                    {field: 'email', title: '邮箱', width: 100, fixed: 'left', sort: true},
-                    {field: 'mobile', title: '手机', width: 120, fixed: 'left', sort: true},
-                    {field: 'tel', title: '电话', width: 100, fixed: 'left', sort: true},
-                    {field: 'addr', title: '地址', width: 200, fixed: 'left', sort: true},
-                    {field: 'lastsaved', title: '最后修改时间', width: 140, fixed: 'left', sort: true},
+                    {field: 'idno', title: '证件号', width: 120, align: 'center', sort: true},
+                    {field: 'email', title: '邮箱', width: 100, align: 'center',  sort: true},
+                    {field: 'mobile', title: '手机', width: 120, align: 'center', sort: true},
+                    {field: 'tel', title: '电话', align: 'center'},
+                    {field: 'addr', title: '地址', align: 'center' },
                     {
-                        field: 'userid',
+                        field: 'lastsaved', title: '最后修改时间', width: 180, sort: true, templet: function (d) {
+                            return admin.formatDate(d.lastsaved);
+                        }
+                    },
+                    {
                         align: 'center',
                         title: '操作',
                         fixed: 'right',
+                        width: 170,
                         templet: function (item) {
                             let html = ' <a class="layui-btn  layui-btn-xs" lay-event="edit"><i class="layui-icon layui-icon-edit"></i>编辑</a> ';
                             html += '<a class="layui-btn layui-btn-danger layui-btn-xs" lay-event="del"><i class="layui-icon layui-icon-delete"></i>删除</a>';
