Explorar o código

添加按钮权限控制

gcz %!s(int64=4) %!d(string=hai) anos
pai
achega
d6b285fa01

+ 62 - 1
src/api/permissions.js

@@ -10,6 +10,62 @@ export const updateproduct = permissions.indexOf("/product/update/")>=0;
 //商品新增
 export const createproduct = permissions.indexOf("/product/create")>=0;
 
+// 商品分类
+// 商品分类新增
+export const createproductCategory = permissions.indexOf("/productCategory/create")>=0;
+// 商品分类删除
+export const deleteproductCategory = permissions.indexOf("/productCategory/delete/*")>=0;
+// 商品分类更新
+export const updateproductCategory = permissions.indexOf("/productCategory/update/*")>=0;
+
+// 品牌
+// 品牌新增
+export const createbrand = permissions.indexOf("/brand/create")>=0;
+// 品牌更新
+export const updatebrand = permissions.indexOf("/brand/update/*")>=0;
+// 品牌删除
+export const deletebrand = permissions.indexOf("/brand/delete/*")>=0;
+
+//用户列表
+// 用户新增
+export const createuse = permissions.indexOf("/admin/register")>=0;
+// 用户更新
+export const updateuse = permissions.indexOf("/admin/update/*")>=0;
+// 用户删除
+export const deleteuse = permissions.indexOf("/admin/delete/*")>=0;
+// 用户分配角色
+export const roleuse = permissions.indexOf("/admin/role/update")>=0;
+
+// 角色
+// 角色新增
+export const createrole = permissions.indexOf("/role/create")>=0;
+// 角色更新
+export const updaterole = permissions.indexOf("/role/update/*")>=0;
+// 角色删除
+export const deleterole = permissions.indexOf("/role/delete")>=0;
+// 角色分配菜单
+export const allotrolemenu = permissions.indexOf("/role/allocMenu")>=0;
+// 角色分配资源
+export const allotroleresource = permissions.indexOf("/role/allocResource")>=0;
+
+// 菜单
+// 菜单新增
+export const createmenu = permissions.indexOf("/menu/create")>=0;
+// 菜单更新
+export const updatemenu = permissions.indexOf("/menu/update/*")>=0;
+// 菜单删除
+export const deletemenu = permissions.indexOf("/menu/delete/*")>=0;
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+
 // 生产地管理
 export const originsave = permissions.indexOf("/origin/save")>=0;
 export const originupdate = permissions.indexOf("/origin/update")>=0;
@@ -18,4 +74,9 @@ export const origindelete = permissions.indexOf("/origin/delete")>=0;
 // 供应商管理
 export const companycreate = permissions.indexOf("/umsCompany/info/add")>=0;
 export const companydelete = permissions.indexOf("/umsCompany/info/delete")>=0;
-export const companyupdate = permissions.indexOf("/umsCompany/info/update")>=0;
+export const companyupdate = permissions.indexOf("/umsCompany/info/update")>=0;
+
+// 广告
+export const adcreate = permissions.indexOf("/home/advertise/create")>=0;
+export const adupdate = permissions.indexOf("/home/advertise/update/*")>=0;
+export const addelete = permissions.indexOf("/home/advertise/delete")>=0;

+ 7 - 0
src/views/pms/brand/index.vue

@@ -24,6 +24,7 @@
       <i class="el-icon-tickets"></i>
       <span>数据列表</span>
       <el-button
+      v-if="createbrand"
         class="btn-add"
         @click="addBrand()"
         size="mini">
@@ -89,10 +90,12 @@
         <el-table-column label="操作" width="200" align="center">
           <template slot-scope="scope">
             <el-button
+            v-if="updatebrand"
               size="mini"
               @click="handleUpdate(scope.$index, scope.row)">编辑
             </el-button>
             <el-button
+            v-if="deletebrand"
               size="mini"
               type="danger"
               @click="handleDelete(scope.$index, scope.row)">删除
@@ -137,11 +140,15 @@
 </template>
 <script>
   import {fetchList, updateShowStatus, updateFactoryStatus, deleteBrand} from '@/api/brand'
+  import {createbrand,updatebrand,deletebrand} from '@/api/permissions'
 
   export default {
     name: 'brandList',
     data() {
       return {
+        createbrand,
+        updatebrand,
+        deletebrand,
         operates: [
           {
             label: "显示品牌",

+ 9 - 2
src/views/pms/productCate/index.vue

@@ -4,6 +4,7 @@
       <i class="el-icon-tickets" style="margin-top: 5px"></i>
       <span style="margin-top: 5px">数据列表</span>
       <el-button
+        v-if="createproductCategory"
         class="btn-add"
         @click="handleAddProductCate()"
         size="mini">
@@ -60,19 +61,21 @@
               :disabled="scope.row.level | disableNextLevel"
               @click="handleShowNextLevel(scope.$index, scope.row)">查看下级
             </el-button>
-            <el-button
+            <!-- <el-button
               size="mini"
               @click="handleTransferProduct(scope.$index, scope.row)">转移商品
-            </el-button>
+            </el-button> -->
           </template>
         </el-table-column>
         <el-table-column label="操作" width="200" align="center">
           <template slot-scope="scope">
             <el-button
+            v-if="updateproductCategory"
               size="mini"
               @click="handleUpdate(scope.$index, scope.row)">编辑
             </el-button>
             <el-button
+            v-if="deleteproductCategory"
               size="mini"
               type="danger"
               @click="handleDelete(scope.$index, scope.row)">删除
@@ -98,11 +101,15 @@
 
 <script>
   import {fetchList,deleteProductCate,updateShowStatus,updateNavStatus} from '@/api/productCate'
+  import {createproductCategory,deleteproductCategory,updateproductCategory} from '@/api/permissions'
 
   export default {
     name: "productCateList",
     data() {
       return {
+        createproductCategory,
+        deleteproductCategory,
+        updateproductCategory,
         list: null,
         total: null,
         listLoading: true,

+ 7 - 3
src/views/sms/advertise/index.vue

@@ -47,7 +47,7 @@
     <el-card class="operate-container" shadow="never">
       <i class="el-icon-tickets"></i>
       <span>数据列表</span>
-      <el-button size="mini" class="btn-add" @click="handleAdd()">添加广告</el-button>
+      <el-button v-if="adcreate" size="mini" class="btn-add" @click="handleAdd()">添加广告</el-button>
     </el-card>
     <div class="table-container">
       <el-table ref="homeAdvertiseTable"
@@ -92,11 +92,11 @@
         </el-table-column>
         <el-table-column label="操作" width="120" align="center">
           <template slot-scope="scope">
-            <el-button size="mini"
+            <el-button size="mini" v-if="adupdate"
                        type="text"
                        @click="handleUpdate(scope.$index, scope.row)">编辑
             </el-button>
-            <el-button size="mini"
+            <el-button size="mini" v-if="addelete"
                        type="text"
                        @click="handleDelete(scope.$index, scope.row)">删除
             </el-button>
@@ -141,6 +141,7 @@
 <script>
   import {fetchList,updateStatus,deleteHomeAdvertise} from '@/api/homeAdvertise';
   import {formatDate} from '@/utils/date';
+  import {adcreate,adupdate,addelete} from '@/api/permissions'
   const defaultListQuery = {
     pageNum: 1,
     pageSize: 5,
@@ -162,6 +163,9 @@
     name: 'homeAdvertiseList',
     data() {
       return {
+        adcreate,
+        adupdate,
+        addelete,
         listQuery: Object.assign({}, defaultListQuery),
         typeOptions: Object.assign({}, defaultTypeOptions),
         list: null,

+ 9 - 4
src/views/ums/admin/index.vue

@@ -29,7 +29,7 @@
     <el-card class="operate-container" shadow="never">
       <i class="el-icon-tickets"></i>
       <span>数据列表</span>
-      <el-button size="mini" class="btn-add" @click="handleAdd()" style="margin-left: 20px">添加</el-button>
+      <el-button v-if="createuse" size="mini" class="btn-add" @click="handleAdd()" style="margin-left: 20px">添加</el-button>
     </el-card>
     <div class="table-container">
       <el-table ref="adminTable"
@@ -66,16 +66,16 @@
         </el-table-column>
         <el-table-column label="操作" width="180" align="center">
           <template slot-scope="scope">
-            <el-button size="mini"
+            <el-button size="mini" v-if="roleuse"
                        type="text"
                        @click="handleSelectRole(scope.$index, scope.row)">分配角色
             </el-button>
-            <el-button size="mini"
+            <el-button size="mini" v-if="updateuse"
                        type="text"
                        @click="handleUpdate(scope.$index, scope.row)">
               编辑
             </el-button>
-            <el-button size="mini"
+            <el-button size="mini" v-if="deleteuse"
                        type="text"
                        @click="handleDelete(scope.$index, scope.row)">删除
             </el-button>
@@ -165,6 +165,7 @@
   import {fetchList,createAdmin,updateAdmin,updateStatus,deleteAdmin,getRoleByAdmin,allocRole} from '@/api/login';
   import {fetchAllRoleList,companyList} from '@/api/role';
   import {formatDate} from '@/utils/date';
+  import {createuse,updateuse,deleteuse,roleuse} from '@/api/permissions'
 
   const defaultListQuery = {
     pageNum: 1,
@@ -184,6 +185,10 @@
     name: 'adminList',
     data() {
       return {
+        createuse,
+        updateuse,
+        deleteuse,
+        roleuse,
         listQuery: Object.assign({}, defaultListQuery),
         list: null,
         total: null,

+ 7 - 2
src/views/ums/menu/index.vue

@@ -4,6 +4,7 @@
       <i class="el-icon-tickets" style="margin-top: 5px"></i>
       <span style="margin-top: 5px">数据列表</span>
       <el-button
+      v-if="createmenu"
         class="btn-add"
         @click="handleAddMenu()"
         size="mini">
@@ -56,12 +57,12 @@
         <el-table-column label="操作" width="200" align="center">
           <template slot-scope="scope">
             <el-button
-              size="mini"
+              size="mini" v-if="updatemenu"
               type="text"
               @click="handleUpdate(scope.$index, scope.row)">编辑
             </el-button>
             <el-button
-              size="mini"
+              size="mini" v-if="deletemenu"
               type="text"
               @click="handleDelete(scope.$index, scope.row)">删除
             </el-button>
@@ -86,11 +87,15 @@
 
 <script>
   import {fetchList,deleteMenu,updateMenu,updateHidden} from '@/api/menu'
+  import {createmenu,updatemenu,deletemenu} from '@/api/permissions'
 
   export default {
     name: "menuList",
     data() {
       return {
+        createmenu,
+        updatemenu,
+        deletemenu,
         list: null,
         total: null,
         listLoading: true,

+ 15 - 9
src/views/ums/role/index.vue

@@ -29,7 +29,7 @@
     <el-card class="operate-container" shadow="never">
       <i class="el-icon-tickets"></i>
       <span>数据列表</span>
-      <el-button size="mini" class="btn-add" @click="handleAdd()" style="margin-left: 20px">添加</el-button>
+      <el-button v-if="createrole" size="mini" class="btn-add" @click="handleAdd()" style="margin-left: 20px">添加</el-button>
     </el-card>
     <div class="table-container">
       <el-table ref="roleTable"
@@ -45,13 +45,13 @@
         <el-table-column label="描述" align="center">
           <template slot-scope="scope">{{scope.row.description}}</template>
         </el-table-column>
-        <el-table-column label="用户数"  width="100" align="center">
+        <!-- <el-table-column label="用户数"  width="100" align="center">
           <template slot-scope="scope">{{scope.row.adminCount}}</template>
-        </el-table-column>
+        </el-table-column> -->
         <el-table-column label="添加时间" width="160" align="center">
           <template slot-scope="scope">{{scope.row.createTime | formatDateTime}}</template>
         </el-table-column>
-        <el-table-column label="是否启用" width="140" align="center">
+        <!-- <el-table-column label="是否启用" width="140" align="center">
           <template slot-scope="scope">
             <el-switch
               @change="handleStatusChange(scope.$index, scope.row)"
@@ -60,26 +60,26 @@
               v-model="scope.row.status">
             </el-switch>
           </template>
-        </el-table-column>
+        </el-table-column> -->
         <el-table-column label="操作" width="160" align="center">
           <template slot-scope="scope">
             <el-row>
-              <el-button size="mini"
+              <el-button size="mini" v-if="allotrolemenu"
                          type="text"
                          @click="handleSelectMenu(scope.$index, scope.row)">分配菜单
               </el-button>
-              <el-button size="mini"
+              <el-button size="mini" v-if="allotroleresource"
                          type="text"
                          @click="handleSelectResource(scope.$index, scope.row)">分配资源
               </el-button>
             </el-row>
             <el-row>
-            <el-button size="mini"
+            <el-button size="mini" v-if="updaterole"
                        type="text"
                        @click="handleUpdate(scope.$index, scope.row)">
               编辑
             </el-button>
-            <el-button size="mini"
+            <el-button size="mini" v-if="deleterole"
                        type="text"
                        @click="handleDelete(scope.$index, scope.row)">删除
             </el-button>
@@ -133,6 +133,7 @@
 <script>
   import {fetchList,createRole,updateRole,updateStatus,deleteRole} from '@/api/role';
   import {formatDate} from '@/utils/date';
+  import {createrole,updaterole,deleterole,allotrolemenu,allotroleresource} from '@/api/permissions'
 
   const defaultListQuery = {
     pageNum: 1,
@@ -150,6 +151,11 @@
     name: 'roleList',
     data() {
       return {
+        createrole,
+        updaterole,
+        deleterole,
+        allotrolemenu,
+        allotroleresource,
         listQuery: Object.assign({}, defaultListQuery),
         list: null,
         total: null,