Browse Source

:recycle: Refactoring code.refactor permissions

lishangbu 6 years ago
parent
commit
f2ed6805a9

+ 0 - 2
src/const/crud/admin/client.js

@@ -31,8 +31,6 @@ export const tableOption = {
   stripe: true,
   menuAlign: 'center',
   align: 'center',
-  editBtn: false,
-  delBtn: false,
   viewBtn: true,
   column: [{
     width: 150,

+ 0 - 1
src/const/crud/admin/log.js

@@ -27,7 +27,6 @@ export const tableOption = {
   searchSize: 'mini',
   addBtn: false,
   editBtn: false,
-  delBtn: false,
   viewBtn: true,
   props: {
     label: 'label',

+ 1 - 3
src/const/crud/admin/sys-social-details.js

@@ -18,12 +18,10 @@
 export const tableOption = {
   border: true,
   index: true,
+  indexLabel: '序号',
   stripe: true,
   menuAlign: 'center',
   align: 'center',
-  editBtn: false,
-  delBtn: false,
-  addBtn: false,
   viewBtn: true,
   column: [{
     label: 'ID',

+ 0 - 1
src/const/crud/admin/token.js

@@ -34,7 +34,6 @@ export const tableOption = {
   viewBtn: true,
   addBtn: false,
   editBtn: false,
-  delBtn: false,
   column: [{
     label: '用户ID',
     prop: 'user_id',

+ 17 - 35
src/views/admin/client/index.vue

@@ -23,35 +23,24 @@
                  :data="tableData"
                  :table-loading="tableLoading"
                  :option="tableOption"
+                 :permission="permissionList"
                  @on-load="getList"
                  @refresh-change="refreshChange"
                  @row-update="handleUpdate"
                  @row-save="handleSave"
-                 @row-del="rowDel">
-        <template slot-scope="scope"
-                  slot="menu">
-          <el-button type="text"
-                     v-if="permissions.sys_client_edit"
-                     icon="el-icon-check"
-                     size="mini"
-                     plain
-                     @click="handleEdit(scope.row,scope.index)">编辑
-          </el-button>
-          <el-button type="text"
-                     v-if="permissions.sys_client_del"
-                     icon="el-icon-delete"
-                     size="mini"
-                     plain
-                     @click="handleDel(scope.row,scope.index)">删除
-          </el-button>
-        </template>
+                 @row-del="handleDelete">
       </avue-crud>
     </basic-container>
   </div>
 </template>
 
 <script>
-  import {addObj, delObj, fetchList, putObj} from '@/api/admin/client'
+  import {
+    addObj,
+    delObj,
+    fetchList,
+    putObj
+  } from '@/api/admin/client'
   import {tableOption} from '@/const/crud/admin/client'
   import {mapGetters} from 'vuex'
 
@@ -74,7 +63,14 @@
     mounted: function () {
     },
     computed: {
-      ...mapGetters(['permissions'])
+      ...mapGetters(['permissions']),
+      permissionList() {
+        return {
+          addBtn: this.vaildData(this.permissions.sys_client_add, false),
+          delBtn: this.vaildData(this.permissions.sys_client_del, false),
+          editBtn: this.vaildData(this.permissions.sys_client_edit, false)
+        };
+      }
     },
     methods: {
       getList(page, params) {
@@ -88,21 +84,7 @@
           this.tableLoading = false
         })
       },
-      /**
-       * @title 打开新增窗口
-       * @detail 调用crud的handleadd方法即可
-       *
-       **/
-      handleAdd: function () {
-        this.$refs.crud.rowAdd()
-      },
-      handleEdit(row, index) {
-        this.$refs.crud.rowEdit(row, index)
-      },
-      handleDel(row, index) {
-        this.$refs.crud.rowDel(row, index)
-      },
-      rowDel: function (row, index) {
+      handleDelete: function (row, index) {
         var _this = this
         this.$confirm('是否确认删除ID为' + row.clientId, '提示', {
           confirmButtonText: '确定',

+ 9 - 15
src/views/admin/log/index.vue

@@ -23,19 +23,11 @@
                  :data="tableData"
                  :table-loading="tableLoading"
                  :option="tableOption"
+                 :permission="permissionList"
                  @on-load="getList"
                  @search-change="searchChange"
                  @refresh-change="refreshChange"
-                 @row-del="rowDel">
-        <template slot-scope="scope"
-                  slot="menu">
-          <el-button type="text"
-                     v-if="permissions.sys_log_del"
-                     icon="el-icon-delete"
-                     size="mini"
-                     @click="handleDel(scope.row,scope.index)">删除
-          </el-button>
-        </template>
+                 @row-del="handleDel">
       </avue-crud>
     </basic-container>
   </div>
@@ -65,7 +57,12 @@
     mounted: function () {
     },
     computed: {
-      ...mapGetters(['permissions'])
+      ...mapGetters(['permissions']),
+      permissionList() {
+        return {
+          delBtn: this.vaildData(this.permissions.sys_log_del, false),
+        };
+      }
     },
     methods: {
       getList(page, params) {
@@ -80,10 +77,7 @@
           this.tableLoading = false
         })
       },
-      handleDel(row, index) {
-        this.$refs.crud.rowDel(row, index)
-      },
-      rowDel: function (row, index) {
+      handleDel: function (row, index) {
         var _this = this
         this.$confirm('是否确认删除ID为"' + row.id + '"的日志?', '警告', {
           confirmButtonText: '确定',

+ 11 - 42
src/views/admin/social/index.vue

@@ -23,38 +23,14 @@
                  :data="tableData"
                  :table-loading="tableLoading"
                  :option="tableOption"
+                 :permission="permissionList"
                  @on-load="getList"
                  @refresh-change="refreshChange"
                  @search-change="searchChange"
                  @row-update="handleUpdate"
                  @row-save="handleSave"
                  @row-del="rowDel">
-        <template slot="menuLeft">
-          <el-button type="primary"
-                     @click="handleAdd"
-                     size="small"
-                     v-if="permissions.generator_syssocialdetails_add">新 增
-          </el-button>
-          <br/><br/>
-        </template>
-        <template slot-scope="scope"
-                  slot="menu">
-          <el-button type="text"
-                     v-if="permissions.generator_syssocialdetails_edit"
-                     icon="el-icon-check"
-                     size="small"
-                     plain
-                     @click="handleEdit(scope.row,scope.index)">编辑
-          </el-button>
-          <el-button type="text"
-                     v-if="permissions.generator_syssocialdetails_del"
-                     icon="el-icon-delete"
-                     size="small"
-                     plain
-                     @click="handleDel(scope.row,scope.index)">删除
-          </el-button>
-        </template>
-      </avue-crud>
+        </avue-crud>
     </basic-container>
   </div>
 </template>
@@ -83,7 +59,14 @@
     mounted: function () {
     },
     computed: {
-      ...mapGetters(['permissions'])
+      ...mapGetters(['permissions']),
+      permissionList() {
+        return {
+          addBtn: this.vaildData(this.permissions.sys_social_details_add, false),
+          delBtn: this.vaildData(this.permissions.sys_social_details_del, false),
+          editBtn: this.vaildData(this.permissions.sys_social_details_edit, false)
+        };
+      }
     },
     methods: {
       getList(page, params) {
@@ -97,21 +80,7 @@
           this.tableLoading = false
         })
       },
-      /**
-       * @title 打开新增窗口
-       * @detail 调用crud的handleadd方法即可
-       *
-       **/
-      handleAdd: function () {
-        this.$refs.crud.rowAdd()
-      },
-      handleEdit(row, index) {
-        this.$refs.crud.rowEdit(row, index)
-      },
-      handleDel(row, index) {
-        this.$refs.crud.rowDel(row, index)
-      },
-      rowDel: function (row, index) {
+      handleDelete: function (row, index) {
         var _this = this
         this.$confirm('是否确认删除ID为' + row.id, '提示', {
           confirmButtonText: '确定',

+ 9 - 16
src/views/admin/token/index.vue

@@ -23,19 +23,10 @@
                  :data="tableData"
                  :table-loading="tableLoading"
                  :option="tableOption"
+                 :permission="permissionList"
                  @on-load="getList"
                  @refresh-change="refreshChange"
-                 @row-del="rowDel">
-        <template slot-scope="scope"
-                  slot="menu">
-          <el-button type="text"
-                     v-if="permissions.sys_token_del"
-                     icon="el-icon-delete"
-                     size="mini"
-                     plain
-                     @click="handleDel(scope.row,scope.index)">踢人
-          </el-button>
-        </template>
+                 @row-del="handleDel">
       </avue-crud>
     </basic-container>
   </div>
@@ -65,7 +56,12 @@
     mounted: function () {
     },
     computed: {
-      ...mapGetters(['permissions'])
+      ...mapGetters(['permissions']),
+      permissionList() {
+        return {
+          delBtn: this.vaildData(this.permissions.sys_token_del, false),
+        };
+      }
     },
     methods: {
       getList(page, params) {
@@ -79,10 +75,7 @@
           this.tableLoading = false
         })
       },
-      handleDel(row, index) {
-        this.$refs.crud.rowDel(row, index)
-      },
-      rowDel: function (row, index) {
+      handleDel: function (row, index) {
         var _this = this
         this.$confirm('是否强制' + row.username+ '下线?', '提示', {
           confirmButtonText: '确定',