diff --git a/jeecg-boot-master/ant-design-vue-jeecg/src/views/system/DepartListSync.vue b/jeecg-boot-master/ant-design-vue-jeecg/src/views/system/DepartListSync.vue
index 5b829cb..ae63e69 100644
--- a/jeecg-boot-master/ant-design-vue-jeecg/src/views/system/DepartListSync.vue
+++ b/jeecg-boot-master/ant-design-vue-jeecg/src/views/system/DepartListSync.vue
@@ -5,14 +5,14 @@
 
         <!-- 按钮操作区域 -->
         <a-row style="margin: 0 0 0 14px" class="table-operator">
-          <a-button @click="handleAdd(1)" type="primary">添加部门</a-button>
-          <a-button @click="handleAdd(2)" type="primary">添加下级</a-button>
+          <a-button v-has="'depart:addDepart'" @click="handleAdd(1)" type="primary">添加部门</a-button>
+          <a-button v-has="'depart:addChildren'" @click="handleAdd(2)" type="primary">添加下级</a-button>
           <a-button type="primary" icon="download" @click="handleExportXls('部门信息')">导出</a-button>
           <a-upload name="file" :showUploadList="false" :multiple="false" :headers="tokenHeader" :action="importExcelUrl" @change="handleImportExcel">
             <a-button type="primary" icon="import">导入</a-button>
           </a-upload>
           <j-third-app-button biz-type="depart" :selected-row-keys="selectedRowKeys" syncToApp @sync-finally="onSyncFinally"/>
-          <a-button title="删除多条数据" @click="batchDel" type="default">批量删除</a-button>
+          <a-button v-has="'depart:deleteBatch'" title="删除多条数据" @click="batchDel" type="default">批量删除</a-button>
         </a-row>
         <div style="background: #fff;padding-left:16px;height: 100%; margin-top: 5px">
           <a-alert type="info" :showIcon="true">
@@ -270,7 +270,7 @@
         that.departTree = []
         //所有的树节点key信息
         that.allIds = []
-        
+
         that.iExpandedKeys = []
         //update-begin---author:wangshuai ---date:20220105  for:[JTC-364]sqlserver 部门导入导入失败,部门树数据丢失------------
         //部门树v-if用到了loading,和上传loading冲突了,换一个名称
diff --git a/jeecg-boot-master/ant-design-vue-jeecg/src/views/system/DictList.vue b/jeecg-boot-master/ant-design-vue-jeecg/src/views/system/DictList.vue
index 30fc051..868aec1 100644
--- a/jeecg-boot-master/ant-design-vue-jeecg/src/views/system/DictList.vue
+++ b/jeecg-boot-master/ant-design-vue-jeecg/src/views/system/DictList.vue
@@ -25,7 +25,7 @@
       </a-form>
 
       <div class="table-operator" style="border-top: 5px">
-        <a-button @click="handleAdd" type="primary" icon="plus">添加</a-button>
+        <a-button v-has="'dict:add'" @click="handleAdd" type="primary" icon="plus">添加</a-button>
         <a-button type="primary" icon="download" @click="handleExportXls('字典信息')">导出</a-button>
         <a-upload name="file" :showUploadList="false" :multiple="false" :headers="tokenHeader" :action="importExcelUrl" @change="handleImportExcel">
           <a-button type="primary" icon="import">导入</a-button>
@@ -45,15 +45,15 @@
         :loading="loading"
         @change="handleTableChange">
         <span slot="action" slot-scope="text, record">
-          <a @click="handleEdit(record)">
+          <a @click="handleEdit(record)" v-has="'dict:edit'">
             <a-icon type="edit"/>
             编辑
           </a>
           <a-divider type="vertical"/>
-          <a @click="editDictItem(record)"><a-icon type="setting"/> 字典配置</a>
+          <a v-has="'dict:config'" @click="editDictItem(record)"><a-icon type="setting"/> 字典配置</a>
           <a-divider type="vertical"/>
           <a-popconfirm title="确定删除吗?" @confirm="() =>handleDelete(record.id)">
-            <a>删除</a>
+            <a v-has="'dict:delete'">删除</a>
           </a-popconfirm>
         </span>
       </a-table>
diff --git a/jeecg-boot-master/ant-design-vue-jeecg/src/views/system/SysAnnouncementList.vue b/jeecg-boot-master/ant-design-vue-jeecg/src/views/system/SysAnnouncementList.vue
index 5273439..7e9a75e 100644
--- a/jeecg-boot-master/ant-design-vue-jeecg/src/views/system/SysAnnouncementList.vue
+++ b/jeecg-boot-master/ant-design-vue-jeecg/src/views/system/SysAnnouncementList.vue
@@ -30,13 +30,13 @@
 
     <!-- 操作按钮区域 -->
     <div class="table-operator">
-      <a-button @click="handleAdd" type="primary" icon="plus">新增</a-button>
+      <a-button v-has="'announcement:add'" @click="handleAdd" type="primary" icon="plus">新增</a-button>
       <a-button type="primary" icon="download" @click="handleExportXls('系统通告')">导出</a-button>
 <!--      <a-upload name="file" :showUploadList="false" :multiple="false" :headers="tokenHeader" :action="importExcelUrl" @change="handleImportExcel">-->
 <!--        <a-button type="primary" icon="import">导入</a-button>-->
 <!--      </a-upload>-->
       <a-dropdown v-if="selectedRowKeys.length > 0">
-        <a-menu slot="overlay">
+        <a-menu slot="overlay" v-has="'announcement:deleteBatch'">
           <a-menu-item key="1" @click="batchDel">
             <a-icon type="delete"/>
             删除
@@ -68,13 +68,13 @@
         @change="handleTableChange">
 
         <span slot="action" slot-scope="text, record">
-          <a  v-if="record.sendStatus == 0" @click="handleEdit(record)">编辑</a>
+          <a  v-has="'announcement:edit'"  v-if="record.sendStatus == 0" @click="handleEdit(record)">编辑</a>
 
           <a-divider type="vertical" v-if="record.sendStatus == 0"/>
           <a-dropdown>
             <a class="ant-dropdown-link">更多 <a-icon type="down"/></a>
             <a-menu slot="overlay">
-              <a-menu-item v-if="record.sendStatus != 1">
+              <a-menu-item v-if="record.sendStatus != 1" v-has="'announcement:delete'">
                 <a-popconfirm title="确定删除吗?" @confirm="() => handleDelete(record.id)">
                   <a>删除</a>
                 </a-popconfirm>