Эх сурвалжийг харах

style(sku-manage):公司sku增删改按钮添加权限控制

xinyan 6 сар өмнө
parent
commit
f3f613f1dd

+ 2 - 1
src/views/sku-manage/company-sku/component/DataTable.vue

@@ -16,6 +16,7 @@ import * as api from '../api';
 import ShowSkuDrawer from '/@/views/sku-manage/company-sku/component/ShowSkuDrawer.vue';
 import SkuBuilder from '/@/views/sku-manage/company-sku/component/SkuBuilder.vue';
 import { ElMessage } from 'element-plus';
+import { hasPermission } from '/@/utils/hasPermission';
 
 
 interface Parameter {
@@ -218,7 +219,7 @@ defineExpose({ fetchList });
     <template #toolbar_buttons>
       <div class="flex gap-2">
         <div>
-          <PermissionButton :icon="Plus" plain round type="primary" @click="handleCreate">新 增</PermissionButton>
+          <PermissionButton :icon="Plus" v-if="hasPermission('SkuCreate')" plain round type="primary" @click="handleCreate">新 增</PermissionButton>
         </div>
         <div>
           <el-popconfirm :icon="InfoFilled" icon-color="#626AEF" title="此操作将会把所有选中的SKU全部发布, 是否继续?"

+ 3 - 2
src/views/sku-manage/company-sku/component/DataTableSlot.vue

@@ -9,6 +9,7 @@ import { CopyDocument, Delete, InfoFilled, Operation, Position, View } from '@el
 import PermissionButton from '/@/components/PermissionButton/index.vue';
 import { getTagType } from '/@/utils/useTagColor';
 import { handleCopy } from '/@/utils/useCopyText';
+import { hasPermission } from '/@/utils/hasPermission';
 
 
 const props = defineProps<{
@@ -40,14 +41,14 @@ function showDetail() {
   <div class="font-medium">
     <div v-if="field === 'operate'">
       <div class="flex justify-center gap-2 mb-2">
-        <div>
+        <div v-if="hasPermission('SkuUpdate')">
           <PermissionButton circle plain type="warning" @click="handleEdit">
             <el-icon>
               <Operation />
             </el-icon>
           </PermissionButton>
         </div>
-        <div>
+        <div v-if="hasPermission('SkuDelete')">
           <el-popconfirm :icon="InfoFilled" icon-color="#626AEF" title="你确定要删除此项吗?" width="220"
                          @confirm="onConfirm">
             <template #reference>

+ 2 - 1
src/views/sku-manage/product-attribute/component/DataTable.vue

@@ -19,6 +19,7 @@ import * as api from '../api';
 import CreateDialog from '/src/views/sku-manage/product-attribute/component/CreateDialog.vue';
 import ManageEnumDrawer from '/src/views/sku-manage/product-attribute/component/manage-enum/index.vue';
 import ShowDetailDrawer from '/@/views/sku-manage/product-attribute/component/ShowDetailDrawer.vue';
+import { hasPermission } from '/@/utils/hasPermission';
 
 
 interface Parameter {
@@ -152,7 +153,7 @@ defineExpose({ fetchList });
 <template>
   <vxe-grid ref="gridRef" v-bind="gridOptions" v-on="gridEvents">
     <template #toolbar_buttons>
-      <PermissionButton :icon="Plus" plain round type="primary" @click="handleCreate">新 增</PermissionButton>
+      <PermissionButton :icon="Plus" v-if="hasPermission('SkuAttrCreate')" plain round type="primary" @click="handleCreate">新 增</PermissionButton>
     </template>
     <!-- 工具栏右侧 -->
     <template #toolbar_tools>

+ 3 - 2
src/views/sku-manage/product-attribute/component/DataTableSlot.vue

@@ -7,6 +7,7 @@
 
 import { Delete, InfoFilled, Key, Operation, Tools, View } from '@element-plus/icons-vue';
 import PermissionButton from '/@/components/PermissionButton/index.vue';
+import { hasPermission } from '/@/utils/hasPermission';
 
 
 const props = defineProps<{
@@ -40,14 +41,14 @@ function handleManage() {
       <div class="font-medium">
         <div v-if="field === 'operate'">
           <div class="flex justify-center gap-2">
-            <div>
+            <div v-if="hasPermission('SkuAttrUpdate')">
               <PermissionButton circle plain type="warning" @click="handleEdit">
                 <el-icon>
                   <Operation />
                 </el-icon>
               </PermissionButton>
             </div>
-            <div>
+            <div v-if="hasPermission('SkuAttrDelete')">
               <el-popconfirm :icon="InfoFilled" icon-color="#626AEF" title="你确定要删除此项吗?" width="220" @confirm="onConfirm">
                 <template #reference>
                   <PermissionButton circle plain type="danger">

+ 2 - 1
src/views/sku-manage/product-brand/component/DataTable.vue

@@ -17,6 +17,7 @@ import EditDrawer from './EditDrawer.vue';
 import NoticeDialog from '/src/views/product-manage/product-list/component/NoticeDialog.vue';
 import * as api from '../api';
 import CreateDialog from '/src/views/sku-manage/product-brand/component/CreateDialog.vue';
+import { hasPermission } from '/@/utils/hasPermission';
 
 
 interface Parameter {
@@ -134,7 +135,7 @@ defineExpose({ fetchList });
 <template>
   <vxe-grid ref="gridRef" v-bind="gridOptions" v-on="gridEvents">
     <template #toolbar_buttons>
-      <PermissionButton :icon="Plus" plain round type="primary" @click="handleCreate">新 增</PermissionButton>
+      <PermissionButton :icon="Plus" v-if="hasPermission('SkuBrandCreate')" plain round type="primary" @click="handleCreate">新 增</PermissionButton>
     </template>
     <!-- 工具栏右侧 -->
     <template #toolbar_tools>

+ 3 - 2
src/views/sku-manage/product-brand/component/DataTableSlot.vue

@@ -7,6 +7,7 @@
 
 import { Delete, InfoFilled, Operation } from '@element-plus/icons-vue';
 import PermissionButton from '/@/components/PermissionButton/index.vue';
+import { hasPermission } from '/@/utils/hasPermission';
 
 
 const props = defineProps<{
@@ -30,14 +31,14 @@ function onConfirm() {
   <div class="font-medium">
     <div v-if="field === 'operate'">
       <div class="flex justify-center gap-2">
-        <div>
+        <div v-if="hasPermission('SkuBrandUpdate')">
           <PermissionButton circle plain type="warning" @click="handleEdit">
             <el-icon>
               <Operation />
             </el-icon>
           </PermissionButton>
         </div>
-        <div>
+        <div v-if="hasPermission('SkuBrandDelete')">
           <el-popconfirm
               :icon="InfoFilled"
               icon-color="#626AEF"

+ 2 - 1
src/views/sku-manage/product-category/component/DataTable.vue

@@ -18,6 +18,7 @@ import NoticeDialog from '/src/views/product-manage/product-list/component/Notic
 import * as api from '../api';
 import CreateDialog from '/@/views/sku-manage/product-category/component/CreateDialog.vue';
 import AttributeManage from '/@/views/sku-manage/product-category/component/AttributeManage.vue';
+import { hasPermission } from '/@/utils/hasPermission';
 
 
 interface Parameter {
@@ -144,7 +145,7 @@ defineExpose({ fetchList });
 <template>
   <vxe-grid ref="gridRef" v-bind="gridOptions" v-on="gridEvents">
     <template #toolbar_buttons>
-      <PermissionButton :icon="Plus" plain round type="primary" @click="handleCreate">新 增</PermissionButton>
+      <PermissionButton :icon="Plus" v-if="hasPermission('SkuKindCreate')" plain round type="primary" @click="handleCreate">新 增</PermissionButton>
     </template>
     <!-- 工具栏右侧 -->
     <template #toolbar_tools>

+ 3 - 2
src/views/sku-manage/product-category/component/DataTableSlot.vue

@@ -8,6 +8,7 @@
 import { Delete, InfoFilled, MessageBox, Operation, Timer } from '@element-plus/icons-vue';
 import PermissionButton from '/@/components/PermissionButton/index.vue';
 import MainAttr from '/@/views/sku-manage/product-category/component/MainAttr.vue';
+import { hasPermission } from '/@/utils/hasPermission';
 
 
 const props = defineProps<{
@@ -35,14 +36,14 @@ function onConfirm() {
   <div class="font-medium">
     <div v-if="field === 'operate'">
       <div class="flex justify-center gap-2">
-        <div>
+        <div v-if="hasPermission('SkuKindUpdate')">
           <PermissionButton :disabled="row.status == '3'" circle plain type="warning" @click="handleEdit">
             <el-icon>
               <Operation />
             </el-icon>
           </PermissionButton>
         </div>
-        <div>
+        <div v-if="hasPermission('SkuKindDelete')">
           <el-popconfirm
               :icon="InfoFilled"
               icon-color="#626AEF"