diff --git a/ant-design-vue-jeecg/src/views/system/DepartList.vue b/ant-design-vue-jeecg/src/views/system/DepartList.vue
index 17692e2..55ea07a 100644
--- a/ant-design-vue-jeecg/src/views/system/DepartList.vue
+++ b/ant-design-vue-jeecg/src/views/system/DepartList.vue
@@ -7,8 +7,8 @@
         <a-row style="margin-left: 14px">
           <a-button @click="handleAdd(1)" type="primary">添加部门</a-button>
           <a-button @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"
+          <a-button v-has="'sysDepart:export'" type="primary" icon="download" @click="handleExportXls('部门信息')">导出</a-button>
+          <a-upload v-has="'sysDepart:import'" name="file" :showUploadList="false" :multiple="false" :headers="tokenHeader"
                     :action="importExcelUrl" @change="handleImportExcel">
             <a-button type="primary" icon="import">导入</a-button>
           </a-upload>
diff --git a/ant-design-vue-jeecg/src/views/system/DictList.vue b/ant-design-vue-jeecg/src/views/system/DictList.vue
index b8572f1..6ab1d88 100644
--- a/ant-design-vue-jeecg/src/views/system/DictList.vue
+++ b/ant-design-vue-jeecg/src/views/system/DictList.vue
@@ -26,8 +26,8 @@
 
       <div class="table-operator" style="border-top: 5px">
         <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"
+        <a-button v-has="'dict:export'" type="primary" icon="download" @click="handleExportXls('字典信息')">导出</a-button>
+        <a-upload v-has="'dict:import'" name="file" :showUploadList="false" :multiple="false" :headers="tokenHeader" :action="importExcelUrl"
                   @change="handleImportExcel">
           <a-button type="primary" icon="import">导入</a-button>
         </a-upload>
diff --git a/ant-design-vue-jeecg/src/views/system/QuartzJobList.vue b/ant-design-vue-jeecg/src/views/system/QuartzJobList.vue
index c387a28..7bd2630 100644
--- a/ant-design-vue-jeecg/src/views/system/QuartzJobList.vue
+++ b/ant-design-vue-jeecg/src/views/system/QuartzJobList.vue
@@ -34,9 +34,9 @@
 
     <!-- 操作按钮区域 -->
     <div class="table-operator">
-      <a-button @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"
+      <a-button v-has="'quartzJob:add'" @click="handleAdd" type="primary" icon="plus">新增</a-button>
+      <a-button v-has="'quartzJob:export'" type="primary" icon="download" @click="handleExportXls('定时任务信息')">导出</a-button>
+      <a-upload v-has="'quartzJob:import'" name="file" :showUploadList="false" :multiple="false" :headers="tokenHeader" :action="importExcelUrl"
                 @change="handleImportExcel">
         <a-button type="primary" icon="import">导入</a-button>
       </a-upload>
diff --git a/ant-design-vue-jeecg/src/views/system/RoleUserList.vue b/ant-design-vue-jeecg/src/views/system/RoleUserList.vue
index 0b48c35..9410086 100644
--- a/ant-design-vue-jeecg/src/views/system/RoleUserList.vue
+++ b/ant-design-vue-jeecg/src/views/system/RoleUserList.vue
@@ -36,9 +36,9 @@
           <!--<a-button @click="handleEdit(model1)" type="primary" icon="plus">角色编辑</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-button v-has="'role:import'" type="primary" icon="import">导入</a-button>
           </a-upload>
-          <a-button type="primary" icon="download" @click="handleExportXls('角色管理')">导出</a-button>
+          <a-button v-has="'role:export'" type="primary" icon="download" @click="handleExportXls('角色管理')">导出</a-button>
         </div>
 
         <div class="ant-alert ant-alert-info" style="margin-bottom: 16px;">
diff --git a/ant-design-vue-jeecg/src/views/system/SysAnnouncementList.vue b/ant-design-vue-jeecg/src/views/system/SysAnnouncementList.vue
index 2cf7f6b..2f75cdf 100644
--- a/ant-design-vue-jeecg/src/views/system/SysAnnouncementList.vue
+++ b/ant-design-vue-jeecg/src/views/system/SysAnnouncementList.vue
@@ -31,7 +31,7 @@
     <!-- 操作按钮区域 -->
     <div class="table-operator">
       <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-button v-has="'announcement:export'" 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>-->
diff --git a/ant-design-vue-jeecg/src/views/system/SysPositionList.vue b/ant-design-vue-jeecg/src/views/system/SysPositionList.vue
index f2998ac..1d366da 100644
--- a/ant-design-vue-jeecg/src/views/system/SysPositionList.vue
+++ b/ant-design-vue-jeecg/src/views/system/SysPositionList.vue
@@ -41,9 +41,9 @@
 
     <!-- 操作按钮区域 -->
     <div class="table-operator">
-      <a-button @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"
+      <a-button v-has="'position:add'" @click="handleAdd" type="primary" icon="plus">新增</a-button>
+      <a-button v-has="'position:export'" type="primary" icon="download" @click="handleExportXls('职务表')">导出</a-button>
+      <a-upload v-has="'position:import'" name="file" :showUploadList="false" :multiple="false" :headers="tokenHeader" :action="importExcelUrl"
                 @change="handleImportExcel">
         <a-button type="primary" icon="import">导入</a-button>
       </a-upload>
diff --git a/ant-design-vue-jeecg/src/views/system/UserList.vue b/ant-design-vue-jeecg/src/views/system/UserList.vue
index 4d5e8e7..001d60f 100644
--- a/ant-design-vue-jeecg/src/views/system/UserList.vue
+++ b/ant-design-vue-jeecg/src/views/system/UserList.vue
@@ -63,8 +63,8 @@
     <!-- 操作按钮区域 -->
     <div class="table-operator" style="border-top: 5px">
       <a-button v-has="'user: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"
+      <a-button v-has="'user:export'" type="primary" icon="download" @click="handleExportXls('用户信息')">导出</a-button>
+      <a-upload v-has="'user:import'" name="file" :showUploadList="false" :multiple="false" :headers="tokenHeader" :action="importExcelUrl"
                 @change="handleImportExcel">
         <a-button type="primary" icon="import">导入</a-button>
       </a-upload>
diff --git a/ant-design-vue-jeecg/src/views/system/config/AddressList.vue b/ant-design-vue-jeecg/src/views/system/config/AddressList.vue
index cb2cf97..0fa91dd 100644
--- a/ant-design-vue-jeecg/src/views/system/config/AddressList.vue
+++ b/ant-design-vue-jeecg/src/views/system/config/AddressList.vue
@@ -27,8 +27,8 @@
     <!-- 操作按钮区域 -->
     <div class="table-operator">
       <a-button @click="handleAdd" v-has="'address:add'" 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"
+      <a-button v-has="'address:export'" type="primary" icon="download" @click="handleExportXls('接口地址')">导出</a-button>
+      <a-upload v-has="'address:import'" name="file" :showUploadList="false" :multiple="false" :headers="tokenHeader" :action="importExcelUrl"
                 @change="handleImportExcel">
         <a-button type="primary" icon="import">导入</a-button>
       </a-upload>
diff --git a/ant-design-vue-jeecg/src/views/system/config/AgvPortList.vue b/ant-design-vue-jeecg/src/views/system/config/AgvPortList.vue
index 3beaed3..e499b26 100644
--- a/ant-design-vue-jeecg/src/views/system/config/AgvPortList.vue
+++ b/ant-design-vue-jeecg/src/views/system/config/AgvPortList.vue
@@ -32,8 +32,8 @@
     <!-- 操作按钮区域 -->
     <div class="table-operator">
       <a-button @click="handleAdd" v-has="'agvPort:add'" type="primary" icon="plus">新增</a-button>
-      <a-button type="primary" icon="download" @click="handleExportXls('AGV点位')">导出</a-button>
-      <a-upload name="file" :showUploadList="false" :multiple="false" :headers="tokenHeader" :action="importExcelUrl" @change="handleImportExcel">
+      <a-button v-has="'agvPort:export'" type="primary" icon="download" @click="handleExportXls('AGV点位')">导出</a-button>
+      <a-upload v-has="'agvPort:import'" 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">
diff --git a/ant-design-vue-jeecg/src/views/system/config/BomDetailList.vue b/ant-design-vue-jeecg/src/views/system/config/BomDetailList.vue
index 8d78d26..2928d3c 100644
--- a/ant-design-vue-jeecg/src/views/system/config/BomDetailList.vue
+++ b/ant-design-vue-jeecg/src/views/system/config/BomDetailList.vue
@@ -3,8 +3,9 @@
     <!-- 操作按钮区域 -->
     <div class="table-operator" v-if="mainId">
       <a-button @click="handleAdd" v-has="'bomDetail:add'" type="primary" icon="plus">新增</a-button>
-      <a-button type="primary" icon="download" @click="handleExportXls('bom子表')">导出</a-button>
+      <a-button v-has="'bomDetail:export'" type="primary" icon="download" @click="handleExportXls('bom子表')">导出</a-button>
       <a-upload
+        v-has="'bomDetail:import'"
         name="file"
         :showUploadList="false"
         :multiple="false"
diff --git a/ant-design-vue-jeecg/src/views/system/config/BomHeaderList.vue b/ant-design-vue-jeecg/src/views/system/config/BomHeaderList.vue
index 15e3eb7..8b531d0 100644
--- a/ant-design-vue-jeecg/src/views/system/config/BomHeaderList.vue
+++ b/ant-design-vue-jeecg/src/views/system/config/BomHeaderList.vue
@@ -32,8 +32,8 @@
     <!-- 操作按钮区域 -->
     <div class="table-operator">
       <a-button @click="handleAdd" v-has="'bomHeader:add'" type="primary" icon="plus">新增</a-button>
-      <a-button type="primary" icon="download" @click="handleExportXls('bom主表')">导出</a-button>
-      <a-upload name="file" :showUploadList="false" :multiple="false" :headers="tokenHeader" :action="importExcelUrl"
+      <a-button v-has="'bomHeader:export'" type="primary" icon="download" @click="handleExportXls('bom主表')">导出</a-button>
+      <a-upload v-has="'bomHeader:import'" name="file" :showUploadList="false" :multiple="false" :headers="tokenHeader" :action="importExcelUrl"
                 @change="handleImportExcel">
         <a-button type="primary" icon="import">导入</a-button>
       </a-upload>
diff --git a/ant-design-vue-jeecg/src/views/system/config/CarrierList.vue b/ant-design-vue-jeecg/src/views/system/config/CarrierList.vue
index 6b789dc..0054478 100644
--- a/ant-design-vue-jeecg/src/views/system/config/CarrierList.vue
+++ b/ant-design-vue-jeecg/src/views/system/config/CarrierList.vue
@@ -12,8 +12,8 @@
     <!-- 操作按钮区域 -->
     <div class="table-operator">
       <a-button @click="handleAdd" v-has="'carrier:add'" 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"
+      <a-button v-has="'carrier:export'" type="primary" icon="download" @click="handleExportXls('承运商管理')">导出</a-button>
+      <a-upload v-has="'carrier:import'" name="file" :showUploadList="false" :multiple="false" :headers="tokenHeader" :action="importExcelUrl"
                 @change="handleImportExcel">
         <a-button type="primary" icon="import">导入</a-button>
       </a-upload>
diff --git a/ant-design-vue-jeecg/src/views/system/config/CompanyList.vue b/ant-design-vue-jeecg/src/views/system/config/CompanyList.vue
index 70d13f4..e8cc7af 100644
--- a/ant-design-vue-jeecg/src/views/system/config/CompanyList.vue
+++ b/ant-design-vue-jeecg/src/views/system/config/CompanyList.vue
@@ -32,8 +32,8 @@
     <!-- 操作按钮区域 -->
     <div class="table-operator">
       <a-button @click="handleAdd" v-has="'company:add'" 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"
+      <a-button v-has="'company:export'" type="primary" icon="download" @click="handleExportXls('货主')">导出</a-button>
+      <a-upload v-has="'company:import'" name="file" :showUploadList="false" :multiple="false" :headers="tokenHeader" :action="importExcelUrl"
                 @change="handleImportExcel">
         <a-button type="primary" icon="import">导入</a-button>
       </a-upload>
diff --git a/ant-design-vue-jeecg/src/views/system/config/ContainerCapacityList.vue b/ant-design-vue-jeecg/src/views/system/config/ContainerCapacityList.vue
index 4c53a3d..6f08fe6 100644
--- a/ant-design-vue-jeecg/src/views/system/config/ContainerCapacityList.vue
+++ b/ant-design-vue-jeecg/src/views/system/config/ContainerCapacityList.vue
@@ -39,8 +39,8 @@
     <!-- 操作按钮区域 -->
     <div class="table-operator">
       <a-button @click="handleAdd" v-has="'containerCapacity:add'" 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"
+      <a-button v-has="'containerCapacity:export'" type="primary" icon="download" @click="handleExportXls('容器容量管理')">导出</a-button>
+      <a-upload v-has="'containerCapacity:import'" name="file" :showUploadList="false" :multiple="false" :headers="tokenHeader" :action="importExcelUrl"
                 @change="handleImportExcel">
         <a-button type="primary" icon="import">导入</a-button>
       </a-upload>
diff --git a/ant-design-vue-jeecg/src/views/system/config/ContainerList.vue b/ant-design-vue-jeecg/src/views/system/config/ContainerList.vue
index 16feec1..dc7375f 100644
--- a/ant-design-vue-jeecg/src/views/system/config/ContainerList.vue
+++ b/ant-design-vue-jeecg/src/views/system/config/ContainerList.vue
@@ -54,8 +54,8 @@
     <!-- 操作按钮区域 -->
     <div class="table-operator">
       <a-button @click="handleAdd" v-has="'container:add'" 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"
+      <a-button v-has="'container:export'" type="primary" icon="download" @click="handleExportXls('容器管理')">导出</a-button>
+      <a-upload v-has="'container:import'" name="file" :showUploadList="false" :multiple="false" :headers="tokenHeader" :action="importExcelUrl"
                 @change="handleImportExcel">
         <a-button type="primary" icon="import">导入</a-button>
         <a-button v-has="'container:print'" @click="batchPrint()" type="primary">打印</a-button>
diff --git a/ant-design-vue-jeecg/src/views/system/config/ContainerTypeList.vue b/ant-design-vue-jeecg/src/views/system/config/ContainerTypeList.vue
index 44b1df5..bd9c519 100644
--- a/ant-design-vue-jeecg/src/views/system/config/ContainerTypeList.vue
+++ b/ant-design-vue-jeecg/src/views/system/config/ContainerTypeList.vue
@@ -32,8 +32,8 @@
     <!-- 操作按钮区域 -->
     <div class="table-operator">
       <a-button @click="handleAdd" v-has="'containerType:add'" 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"
+      <a-button v-has="'containerType:export'" type="primary" icon="download" @click="handleExportXls('容器类型')">导出</a-button>
+      <a-upload v-has="'containerType:import'" name="file" :showUploadList="false" :multiple="false" :headers="tokenHeader" :action="importExcelUrl"
                 @change="handleImportExcel">
         <a-button type="primary" icon="import">导入</a-button>
       </a-upload>
diff --git a/ant-design-vue-jeecg/src/views/system/config/CustomerList.vue b/ant-design-vue-jeecg/src/views/system/config/CustomerList.vue
index 69c6f4f..14fcda5 100644
--- a/ant-design-vue-jeecg/src/views/system/config/CustomerList.vue
+++ b/ant-design-vue-jeecg/src/views/system/config/CustomerList.vue
@@ -12,8 +12,8 @@
     <!-- 操作按钮区域 -->
     <div class="table-operator">
       <a-button @click="handleAdd" v-has="'customer:add'" 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"
+      <a-button v-has="'customer:export'" type="primary" icon="download" @click="handleExportXls('客户管理')">导出</a-button>
+      <a-upload v-has="'customer:import'" name="file" :showUploadList="false" :multiple="false" :headers="tokenHeader" :action="importExcelUrl"
                 @change="handleImportExcel">
         <a-button type="primary" icon="import">导入</a-button>
       </a-upload>
diff --git a/ant-design-vue-jeecg/src/views/system/config/CycleCountPreferenceList.vue b/ant-design-vue-jeecg/src/views/system/config/CycleCountPreferenceList.vue
index 63180ec..d8672b8 100644
--- a/ant-design-vue-jeecg/src/views/system/config/CycleCountPreferenceList.vue
+++ b/ant-design-vue-jeecg/src/views/system/config/CycleCountPreferenceList.vue
@@ -12,8 +12,8 @@
     <!-- 操作按钮区域 -->
     <div class="table-operator">
       <a-button @click="handleAdd" v-has="'cycleCountPreference:add'" 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"
+      <a-button v-has="'cycleCountPreference:export'" type="primary" icon="download" @click="handleExportXls('盘点首选项')">导出</a-button>
+      <a-upload v-has="'cycleCountPreference:import'" name="file" :showUploadList="false" :multiple="false" :headers="tokenHeader" :action="importExcelUrl"
                 @change="handleImportExcel">
         <a-button type="primary" icon="import">导入</a-button>
       </a-upload>
diff --git a/ant-design-vue-jeecg/src/views/system/config/LocationHighList.vue b/ant-design-vue-jeecg/src/views/system/config/LocationHighList.vue
index 7d69b48..e84b866 100644
--- a/ant-design-vue-jeecg/src/views/system/config/LocationHighList.vue
+++ b/ant-design-vue-jeecg/src/views/system/config/LocationHighList.vue
@@ -32,8 +32,8 @@
     <!-- 操作按钮区域 -->
     <div class="table-operator">
       <a-button @click="handleAdd" v-has="'locationHigh:add'" 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"
+      <a-button v-has="'locationHigh:export'" type="primary" icon="download" @click="handleExportXls('库位高度管理')">导出</a-button>
+      <a-upload v-has="'locationHigh:import'" name="file" :showUploadList="false" :multiple="false" :headers="tokenHeader" :action="importExcelUrl"
                 @change="handleImportExcel">
         <a-button type="primary" icon="import">导入</a-button>
       </a-upload>
diff --git a/ant-design-vue-jeecg/src/views/system/config/LocationList.vue b/ant-design-vue-jeecg/src/views/system/config/LocationList.vue
index 95e55cf..37d4e0a 100644
--- a/ant-design-vue-jeecg/src/views/system/config/LocationList.vue
+++ b/ant-design-vue-jeecg/src/views/system/config/LocationList.vue
@@ -103,8 +103,8 @@
     <div class="table-operator">
       <a-button @click="batchAdd()" v-has="'location:batchAdd'" type="primary" icon="plus">批量新增</a-button>
       <a-button v-has="'location: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"
+      <a-button v-has="'location:export'"  type="primary" icon="download" @click="handleExportXls('库位管理')">导出</a-button>
+      <a-upload v-has="'location:import'" name="file" :showUploadList="false" :multiple="false" :headers="tokenHeader" :action="importExcelUrl"
                 @change="handleImportExcel">
         <a-button type="primary" icon="import">导入</a-button>
         <a-button v-has="'material:print'" @click="batchPrint()" type="primary">打印</a-button>
diff --git a/ant-design-vue-jeecg/src/views/system/config/LocationTypeList.vue b/ant-design-vue-jeecg/src/views/system/config/LocationTypeList.vue
index 632ccc1..7405c17 100644
--- a/ant-design-vue-jeecg/src/views/system/config/LocationTypeList.vue
+++ b/ant-design-vue-jeecg/src/views/system/config/LocationTypeList.vue
@@ -32,8 +32,8 @@
     <!-- 操作按钮区域 -->
     <div class="table-operator">
       <a-button v-has="'locationType: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"
+      <a-button v-has="'locationType:export'" type="primary" icon="download" @click="handleExportXls('库位类型')">导出</a-button>
+      <a-upload v-has="'locationType:import'" name="file" :showUploadList="false" :multiple="false" :headers="tokenHeader" :action="importExcelUrl"
                 @change="handleImportExcel">
         <a-button type="primary" icon="import">导入</a-button>
       </a-upload>
diff --git a/ant-design-vue-jeecg/src/views/system/config/MaterialAreaList.vue b/ant-design-vue-jeecg/src/views/system/config/MaterialAreaList.vue
index 665729e..9e549ec 100644
--- a/ant-design-vue-jeecg/src/views/system/config/MaterialAreaList.vue
+++ b/ant-design-vue-jeecg/src/views/system/config/MaterialAreaList.vue
@@ -12,8 +12,8 @@
     <!-- 操作按钮区域 -->
     <div class="table-operator">
       <a-button @click="handleAdd" v-has="'materialArea:add'" 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"
+      <a-button v-has="'materialArea:export'" type="primary" icon="download" @click="handleExportXls('物料分区')">导出</a-button>
+      <a-upload v-has="'materialArea:import'" name="file" :showUploadList="false" :multiple="false" :headers="tokenHeader" :action="importExcelUrl"
                 @change="handleImportExcel">
         <a-button type="primary" icon="import">导入</a-button>
       </a-upload>
diff --git a/ant-design-vue-jeecg/src/views/system/config/MaterialList.vue b/ant-design-vue-jeecg/src/views/system/config/MaterialList.vue
index 6c9340c..bfecbd1 100644
--- a/ant-design-vue-jeecg/src/views/system/config/MaterialList.vue
+++ b/ant-design-vue-jeecg/src/views/system/config/MaterialList.vue
@@ -39,8 +39,8 @@
     <!-- 操作按钮区域 -->
     <div class="table-operator">
       <a-button v-has="'material: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"
+      <a-button v-has="'material:export'" type="primary" icon="download" @click="handleExportXls('物料管理')">导出</a-button>
+      <a-upload v-has="'material:import'" name="file" :showUploadList="false" :multiple="false" :headers="tokenHeader" :action="importExcelUrl"
                 @change="handleImportExcel">
         <a-button type="primary" icon="import">导入</a-button>
         <a-button v-has="'material:print'" @click="batchPrint()" type="primary">打印</a-button>
diff --git a/ant-design-vue-jeecg/src/views/system/config/MaterialMultipleList.vue b/ant-design-vue-jeecg/src/views/system/config/MaterialMultipleList.vue
index 38f7aed..e7b5ec0 100644
--- a/ant-design-vue-jeecg/src/views/system/config/MaterialMultipleList.vue
+++ b/ant-design-vue-jeecg/src/views/system/config/MaterialMultipleList.vue
@@ -12,8 +12,8 @@
     <!-- 操作按钮区域 -->
     <div class="table-operator">
       <a-button v-has="'materialMultiple: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"
+      <a-button v-has="'materialMultiple:export'" type="primary" icon="download" @click="handleExportXls('物料单位换算')">导出</a-button>
+      <a-upload v-has="'materialMultiple:import'" name="file" :showUploadList="false" :multiple="false" :headers="tokenHeader" :action="importExcelUrl"
                 @change="handleImportExcel">
         <a-button type="primary" icon="import">导入</a-button>
       </a-upload>
diff --git a/ant-design-vue-jeecg/src/views/system/config/MaterialTypeList.vue b/ant-design-vue-jeecg/src/views/system/config/MaterialTypeList.vue
index e9cea3f..ebf3bdf 100644
--- a/ant-design-vue-jeecg/src/views/system/config/MaterialTypeList.vue
+++ b/ant-design-vue-jeecg/src/views/system/config/MaterialTypeList.vue
@@ -32,8 +32,8 @@
     <!-- 操作按钮区域 -->
     <div class="table-operator">
       <a-button v-has="'materialType: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"
+      <a-button v-has="'materialType:export'" type="primary" icon="download" @click="handleExportXls('物料类别')">导出</a-button>
+      <a-upload v-has="'materialType:import'" name="file" :showUploadList="false" :multiple="false" :headers="tokenHeader" :action="importExcelUrl"
                 @change="handleImportExcel">
         <a-button type="primary" icon="import">导入</a-button>
       </a-upload>
diff --git a/ant-design-vue-jeecg/src/views/system/config/MaterialUnitList.vue b/ant-design-vue-jeecg/src/views/system/config/MaterialUnitList.vue
index e733fde..546f404 100644
--- a/ant-design-vue-jeecg/src/views/system/config/MaterialUnitList.vue
+++ b/ant-design-vue-jeecg/src/views/system/config/MaterialUnitList.vue
@@ -39,8 +39,8 @@
     <!-- 操作按钮区域 -->
     <div class="table-operator">
       <a-button v-has="'materialUnit: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"
+      <a-button v-has="'materialUnit:export'" type="primary" icon="download" @click="handleExportXls('物料单位')">导出</a-button>
+      <a-upload v-has="'materialUnit:import'" name="file" :showUploadList="false" :multiple="false" :headers="tokenHeader" :action="importExcelUrl"
                 @change="handleImportExcel">
         <a-button type="primary" icon="import">导入</a-button>
       </a-upload>
diff --git a/ant-design-vue-jeecg/src/views/system/config/MaterialWarningList.vue b/ant-design-vue-jeecg/src/views/system/config/MaterialWarningList.vue
index 053d2f5..13eaf37 100644
--- a/ant-design-vue-jeecg/src/views/system/config/MaterialWarningList.vue
+++ b/ant-design-vue-jeecg/src/views/system/config/MaterialWarningList.vue
@@ -32,8 +32,8 @@
     <!-- 操作按钮区域 -->
     <div class="table-operator">
       <a-button v-has="'materialWarning: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"
+      <a-button v-has="'materialWarning:export'" type="primary" icon="download" @click="handleExportXls('物料预警')">导出</a-button>
+      <a-upload v-has="'materialWarning:import'" name="file" :showUploadList="false" :multiple="false" :headers="tokenHeader" :action="importExcelUrl"
                 @change="handleImportExcel">
         <a-button type="primary" icon="import">导入</a-button>
       </a-upload>
diff --git a/ant-design-vue-jeecg/src/views/system/config/ParameterConfigurationList.vue b/ant-design-vue-jeecg/src/views/system/config/ParameterConfigurationList.vue
index 870f12f..9334b02 100644
--- a/ant-design-vue-jeecg/src/views/system/config/ParameterConfigurationList.vue
+++ b/ant-design-vue-jeecg/src/views/system/config/ParameterConfigurationList.vue
@@ -39,8 +39,8 @@
     <!-- 操作按钮区域 -->
     <div class="table-operator">
       <a-button @click="handleAdd" v-has="'ParameterConfiguration:add'" 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"
+      <a-button v-has="'ParameterConfiguration:export'" type="primary" icon="download" @click="handleExportXls('参数配置')">导出</a-button>
+      <a-upload v-has="'ParameterConfiguration:import'" name="file" :showUploadList="false" :multiple="false" :headers="tokenHeader" :action="importExcelUrl"
                 @change="handleImportExcel">
         <a-button type="primary" icon="import">导入</a-button>
       </a-upload>
diff --git a/ant-design-vue-jeecg/src/views/system/config/PortList.vue b/ant-design-vue-jeecg/src/views/system/config/PortList.vue
index 81b6dce..88ed6f1 100644
--- a/ant-design-vue-jeecg/src/views/system/config/PortList.vue
+++ b/ant-design-vue-jeecg/src/views/system/config/PortList.vue
@@ -39,8 +39,8 @@
     <!-- 操作按钮区域 -->
     <div class="table-operator">
       <a-button v-has="'port: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"
+      <a-button v-has="'port:export'" type="primary" icon="download" @click="handleExportXls('出入口')">导出</a-button>
+      <a-upload v-has="'port:import'" name="file" :showUploadList="false" :multiple="false" :headers="tokenHeader" :action="importExcelUrl"
                 @change="handleImportExcel">
         <a-button type="primary" icon="import">导入</a-button>
       </a-upload>
diff --git a/ant-design-vue-jeecg/src/views/system/config/ReceiptTypeList.vue b/ant-design-vue-jeecg/src/views/system/config/ReceiptTypeList.vue
index b266078..1e7f6d1 100644
--- a/ant-design-vue-jeecg/src/views/system/config/ReceiptTypeList.vue
+++ b/ant-design-vue-jeecg/src/views/system/config/ReceiptTypeList.vue
@@ -32,8 +32,8 @@
     <!-- 操作按钮区域 -->
     <div class="table-operator">
       <a-button v-has="'receiptType: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"
+      <a-button v-has="'receiptType:export'" type="primary" icon="download" @click="handleExportXls('入库单类型')">导出</a-button>
+      <a-upload v-has="'receiptType:import'" name="file" :showUploadList="false" :multiple="false" :headers="tokenHeader" :action="importExcelUrl"
                 @change="handleImportExcel">
         <a-button type="primary" icon="import">导入</a-button>
       </a-upload>
diff --git a/ant-design-vue-jeecg/src/views/system/config/ShipmentTypeList.vue b/ant-design-vue-jeecg/src/views/system/config/ShipmentTypeList.vue
index 7fa7270..73b0057 100644
--- a/ant-design-vue-jeecg/src/views/system/config/ShipmentTypeList.vue
+++ b/ant-design-vue-jeecg/src/views/system/config/ShipmentTypeList.vue
@@ -32,8 +32,8 @@
     <!-- 操作按钮区域 -->
     <div class="table-operator">
       <a-button @click="handleAdd" v-has="'shipmentType:add'" 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"
+      <a-button v-has="'shipmentType:export'" type="primary" icon="download" @click="handleExportXls('出库单类型')">导出</a-button>
+      <a-upload v-has="'shipmentType:import'" name="file" :showUploadList="false" :multiple="false" :headers="tokenHeader" :action="importExcelUrl"
                 @change="handleImportExcel">
         <a-button type="primary" icon="import">导入</a-button>
       </a-upload>
diff --git a/ant-design-vue-jeecg/src/views/system/config/SupplierList.vue b/ant-design-vue-jeecg/src/views/system/config/SupplierList.vue
index 252fc55..0e5e5f0 100644
--- a/ant-design-vue-jeecg/src/views/system/config/SupplierList.vue
+++ b/ant-design-vue-jeecg/src/views/system/config/SupplierList.vue
@@ -39,8 +39,8 @@
     <!-- 操作按钮区域 -->
     <div class="table-operator">
       <a-button v-has="'supplier: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"
+      <a-button v-has="'supplier:export'" type="primary" icon="download" @click="handleExportXls('供应商管理')">导出</a-button>
+      <a-upload v-has="'supplier:import'" name="file" :showUploadList="false" :multiple="false" :headers="tokenHeader" :action="importExcelUrl"
                 @change="handleImportExcel">
         <a-button type="primary" icon="import">导入</a-button>
       </a-upload>
diff --git a/ant-design-vue-jeecg/src/views/system/config/SysUserWarehouseList.vue b/ant-design-vue-jeecg/src/views/system/config/SysUserWarehouseList.vue
index be1a2fa..27bff7d 100644
--- a/ant-design-vue-jeecg/src/views/system/config/SysUserWarehouseList.vue
+++ b/ant-design-vue-jeecg/src/views/system/config/SysUserWarehouseList.vue
@@ -27,8 +27,8 @@
     <!-- 操作按钮区域 -->
     <div class="table-operator">
       <a-button v-has="'sysUserWarehouse: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"
+      <a-button v-has="'sysUserWarehouse:export'" type="primary" icon="download" @click="handleExportXls('用户仓库关系表')">导出</a-button>
+      <a-upload v-has="'sysUserWarehouse:import'" name="file" :showUploadList="false" :multiple="false" :headers="tokenHeader" :action="importExcelUrl"
                 @change="handleImportExcel">
         <a-button type="primary" icon="import">导入</a-button>
       </a-upload>
diff --git a/ant-design-vue-jeecg/src/views/system/config/WarehouseList.vue b/ant-design-vue-jeecg/src/views/system/config/WarehouseList.vue
index c957367..b4fee76 100644
--- a/ant-design-vue-jeecg/src/views/system/config/WarehouseList.vue
+++ b/ant-design-vue-jeecg/src/views/system/config/WarehouseList.vue
@@ -39,8 +39,8 @@
     <!-- 操作按钮区域 -->
     <div class="table-operator">
       <a-button v-has="'warehouse: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"
+      <a-button v-has="'warehouse:export'" type="primary" icon="download" @click="handleExportXls('仓库')">导出</a-button>
+      <a-upload v-has="'warehouse:import'" name="file" :showUploadList="false" :multiple="false" :headers="tokenHeader" :action="importExcelUrl"
                 @change="handleImportExcel">
         <a-button type="primary" icon="import">导入</a-button>
       </a-upload>
diff --git a/ant-design-vue-jeecg/src/views/system/config/ZoneList.vue b/ant-design-vue-jeecg/src/views/system/config/ZoneList.vue
index d9ef739..ba37c1a 100644
--- a/ant-design-vue-jeecg/src/views/system/config/ZoneList.vue
+++ b/ant-design-vue-jeecg/src/views/system/config/ZoneList.vue
@@ -32,8 +32,8 @@
     <!-- 操作按钮区域 -->
     <div class="table-operator">
       <a-button v-has="'zone: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"
+      <a-button v-has="'zone:export'" type="primary" icon="download" @click="handleExportXls('库区管理')">导出</a-button>
+      <a-upload v-has="'zone:import'" name="file" :showUploadList="false" :multiple="false" :headers="tokenHeader" :action="importExcelUrl"
                 @change="handleImportExcel">
         <a-button type="primary" icon="import">导入</a-button>
       </a-upload>
diff --git a/ant-design-vue-jeecg/src/views/system/inventory/InventoryDetailList.vue b/ant-design-vue-jeecg/src/views/system/inventory/InventoryDetailList.vue
index 4fd7dea..22900f8 100644
--- a/ant-design-vue-jeecg/src/views/system/inventory/InventoryDetailList.vue
+++ b/ant-design-vue-jeecg/src/views/system/inventory/InventoryDetailList.vue
@@ -3,8 +3,9 @@
     <!-- 操作按钮区域 -->
     <div class="table-operator" v-if="mainId">
       <a-button v-has="'inventoryDetail:add'" @click="handleAdd" type="primary" icon="plus">新增</a-button>
-      <a-button type="primary" icon="download" @click="handleExportXls('库存详情')">导出</a-button>
+      <a-button v-has="'inventoryDetail:export'" type="primary" icon="download" @click="handleExportXls('库存详情')">导出</a-button>
       <a-upload
+        v-has="'inventoryDetail:import'"
         name="file"
         :showUploadList="false"
         :multiple="false"
@@ -139,11 +140,11 @@ export default {
           key: 'companyCode',
           scopedSlots: {customRender: 'companyCode'}
         },
-        {
-          title: '库区',
-          align: "center",
-          dataIndex: 'zoneCode'
-        },
+        // {
+        //   title: '库区',
+        //   align: "center",
+        //   dataIndex: 'zoneCode'
+        // },
         {
           title: '容器编码',
           align: "center",
diff --git a/ant-design-vue-jeecg/src/views/system/inventory/InventoryDetailSelectList.vue b/ant-design-vue-jeecg/src/views/system/inventory/InventoryDetailSelectList.vue
index 7957864..d5a7d2f 100644
--- a/ant-design-vue-jeecg/src/views/system/inventory/InventoryDetailSelectList.vue
+++ b/ant-design-vue-jeecg/src/views/system/inventory/InventoryDetailSelectList.vue
@@ -3,8 +3,9 @@
     <!-- 操作按钮区域 -->
     <div class="table-operator" v-if="mainId">
       <a-button v-has="'inventoryDetail:add'" @click="handleAdd" type="primary" icon="plus">新增</a-button>
-      <a-button type="primary" icon="download" @click="handleExportXls('库存详情')">导出</a-button>
+      <a-button v-has="'inventoryDetail:export'" type="primary" icon="download" @click="handleExportXls('库存详情')">导出</a-button>
       <a-upload
+        v-has="'inventoryDetail:import'"
         name="file"
         :showUploadList="false"
         :multiple="false"
diff --git a/ant-design-vue-jeecg/src/views/system/inventory/InventoryHeaderList.vue b/ant-design-vue-jeecg/src/views/system/inventory/InventoryHeaderList.vue
index a399c1d..c6406da 100644
--- a/ant-design-vue-jeecg/src/views/system/inventory/InventoryHeaderList.vue
+++ b/ant-design-vue-jeecg/src/views/system/inventory/InventoryHeaderList.vue
@@ -6,7 +6,16 @@
         <a-row :gutter="24">
           <a-col :xl="6" :lg="7" :md="8" :sm="24">
             <a-form-item label="库区">
-              <a-input placeholder="请输入库区" v-model="queryParam.zoneCode"></a-input>
+              <a-select
+                show-search
+                placeholder="请选择库区"
+                option-filter-prop="children"
+                :filter-option="filterOption"
+                v-model="queryParam.zoneCode">
+                <a-select-option v-for="item in zoneList" :key="item.name" :value="item.code">
+                  {{item.name}}
+                </a-select-option>
+              </a-select>
             </a-form-item>
           </a-col>
             <a-col :xl="6" :lg="7" :md="8" :sm="24">
@@ -54,8 +63,8 @@
     <!-- 操作按钮区域 -->
     <div class="table-operator">
       <a-button v-has="'inventoryHeader: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"
+      <a-button v-has="'inventoryHeader:export'" type="primary" icon="download" @click="handleExportXls('库存表')">导出</a-button>
+      <a-upload v-has="'inventoryHeader:import'" name="file" :showUploadList="false" :multiple="false" :headers="tokenHeader" :action="importExcelUrl"
                 @change="handleImportExcel">
         <a-button type="primary" icon="import">导入</a-button>
       </a-upload>
@@ -84,6 +93,12 @@
         :customRow="clickThenSelect"
         @change="handleTableChange">
 
+        <span slot="zoneCode" slot-scope="zoneCode">
+          <a-tag :key="zoneCode" color=blue>
+            {{ solutionZoneCode(zoneCode) }}
+          </a-tag>
+        </span>
+
         <template slot="htmlSlot" slot-scope="text">
           <div v-html="text"></div>
         </template>
@@ -140,6 +155,7 @@ import {getAction} from '@/api/manage'
 import InventoryDetailList from './InventoryDetailList'
 import {initDictOptions, filterMultiDictText} from '@/components/dict/JDictSelectUtil'
 import '@/assets/less/TableExpand.less'
+import { getZoneList } from '@api/api'
 
 export default {
   name: "InventoryHeaderList",
@@ -150,6 +166,7 @@ export default {
   },
   data() {
     return {
+      zoneList: [],
       description: '库存表管理页面',
       // 表头
       columns: [
@@ -161,7 +178,9 @@ export default {
         {
           title: '库区',
           align: "center",
-          dataIndex: 'zoneCode'
+          dataIndex: 'zoneCode',
+          key: 'zoneCode',
+          scopedSlots: {customRender: 'zoneCode'}
         },
         {
           title: '容器号',
@@ -245,6 +264,7 @@ export default {
   },
   created() {
     this.getSuperFieldList();
+    this.loadFrom();
   },
   computed: {
     importExcelUrl: function () {
@@ -252,6 +272,17 @@ export default {
     }
   },
   methods: {
+    solutionZoneCode(value) {
+      var actions = []
+      Object.keys(this.zoneList).some((key) => {
+        if (this.zoneList[key].code == ('' + value)) {
+          actions.push(this.zoneList[key].name)
+          return true
+        }
+      })
+      return actions.join('')
+    },
+
     initDictConfig() {
     },
     clickThenSelect(record) {
@@ -296,6 +327,13 @@ export default {
         this.loading = false;
       })
     },
+    loadFrom() {
+      getZoneList().then((res) => {
+        if (res.success) {
+          this.zoneList = res.result
+        }
+      });
+    },
     getSuperFieldList() {
       let fieldList = [];
       fieldList.push({type: 'string', value: 'companyCode', text: '货主', dictCode: ''})
diff --git a/ant-design-vue-jeecg/src/views/system/inventory/InventoryMaterialSummaryList.vue b/ant-design-vue-jeecg/src/views/system/inventory/InventoryMaterialSummaryList.vue
index 895a771..d982af3 100644
--- a/ant-design-vue-jeecg/src/views/system/inventory/InventoryMaterialSummaryList.vue
+++ b/ant-design-vue-jeecg/src/views/system/inventory/InventoryMaterialSummaryList.vue
@@ -43,9 +43,9 @@
 
     <!-- 操作按钮区域 -->
     <div class="table-operator">
-      <a-button @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 v-has="'inventoryMaterialSummary:add'"  @click="handleAdd" type="primary" icon="plus">新增</a-button>
+      <a-button v-has="'inventoryMaterialSummary:export'" type="primary" icon="download" @click="handleExportXls('物料汇总主表')">导出</a-button>
+      <a-upload v-has="'inventoryMaterialSummary:import'" name="file" :showUploadList="false" :multiple="false" :headers="tokenHeader" :action="importExcelUrl" @change="handleImportExcel">
         <a-button type="primary" icon="import">导入</a-button>
       </a-upload>
     </div>
diff --git a/ant-design-vue-jeecg/src/views/system/inventory/InventoryTransactionList.vue b/ant-design-vue-jeecg/src/views/system/inventory/InventoryTransactionList.vue
index 6af6173..78dc092 100644
--- a/ant-design-vue-jeecg/src/views/system/inventory/InventoryTransactionList.vue
+++ b/ant-design-vue-jeecg/src/views/system/inventory/InventoryTransactionList.vue
@@ -99,8 +99,8 @@
     <!-- 操作按钮区域 -->
     <div class="table-operator">
       <a-button @click="handleAdd" v-has="'inventoryTransaction:add'" 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"
+      <a-button v-has="'inventoryTransaction:export'" type="primary" icon="download" @click="handleExportXls('库存交易记录')">导出</a-button>
+      <a-upload v-has="'inventoryTransaction:import'" name="file" :showUploadList="false" :multiple="false" :headers="tokenHeader" :action="importExcelUrl"
                 @change="handleImportExcel">
         <a-button type="primary" icon="import">导入</a-button>
       </a-upload>
diff --git a/ant-design-vue-jeecg/src/views/system/inventory/SimpleInventoryDetailList.vue b/ant-design-vue-jeecg/src/views/system/inventory/SimpleInventoryDetailList.vue
index 3d77ccf..1639ffd 100644
--- a/ant-design-vue-jeecg/src/views/system/inventory/SimpleInventoryDetailList.vue
+++ b/ant-design-vue-jeecg/src/views/system/inventory/SimpleInventoryDetailList.vue
@@ -89,7 +89,7 @@
     <!-- 操作按钮区域 -->
     <div class="table-operator">
       <a-button v-has="'inventoryDetail:add'" @click="handleAdd" type="primary" icon="plus">新增</a-button>
-      <a-button type="primary" icon="download" @click="handleExportXls('库存详情')">导出</a-button>
+      <a-button v-has="'inventoryDetail:export'" type="primary" icon="download" @click="handleExportXls('库存详情')">导出</a-button>
       <a-upload v-has="'inventoryDetail:import'" name="file" :showUploadList="false" :multiple="false" :headers="tokenHeader" :action="importExcelUrl" @change="handleImportExcel">
         <a-button type="primary" icon="import">导入</a-button>
       </a-upload>
diff --git a/ant-design-vue-jeecg/src/views/system/monitor/OperationLog.vue b/ant-design-vue-jeecg/src/views/system/monitor/OperationLog.vue
index fc3e9b4..f7c4405 100644
--- a/ant-design-vue-jeecg/src/views/system/monitor/OperationLog.vue
+++ b/ant-design-vue-jeecg/src/views/system/monitor/OperationLog.vue
@@ -41,7 +41,7 @@
           <a-col :xl="6" :lg="7" :md="8" :sm="24">
             <span style="float: left;overflow: hidden;" class="table-page-search-submitButtons">
               <a-button type="primary" @click="searchQuery" icon="search">查询</a-button>
-              <a-button type="primary" @click="handleExportXls('操作记录')" icon="download" style="margin-left: 8px">导出</a-button>
+              <a-button v-has="'operationLog:export'" type="primary" @click="handleExportXls('操作记录')" icon="download" style="margin-left: 8px">导出</a-button>
               <a-button type="primary" @click="searchReset" icon="reload" style="margin-left: 8px">重置</a-button>
             </span>
           </a-col>
diff --git a/ant-design-vue-jeecg/src/views/system/receipt/ReceiptContainerDetailList.vue b/ant-design-vue-jeecg/src/views/system/receipt/ReceiptContainerDetailList.vue
index 33b29d2..db8cb57 100644
--- a/ant-design-vue-jeecg/src/views/system/receipt/ReceiptContainerDetailList.vue
+++ b/ant-design-vue-jeecg/src/views/system/receipt/ReceiptContainerDetailList.vue
@@ -60,8 +60,9 @@
     <!-- 操作按钮区域 -->
     <div class="table-operator" v-if="mainId">
       <a-button @click="handleAdd" v-has="'receiptContainerDetail:add'" type="primary" icon="plus">新增</a-button>
-      <a-button type="primary" icon="download" @click="handleExportXls('入库组盘详情')">导出</a-button>
+      <a-button v-has="'receiptContainerDetail:export'" type="primary" icon="download" @click="handleExportXls('入库组盘详情')">导出</a-button>
       <a-upload
+        v-has="'receiptContainerDetail:import'"
         name="file"
         :showUploadList="false"
         :multiple="false"
diff --git a/ant-design-vue-jeecg/src/views/system/receipt/ReceiptContainerHeaderList.vue b/ant-design-vue-jeecg/src/views/system/receipt/ReceiptContainerHeaderList.vue
index 0f9b9f8..6365bd0 100644
--- a/ant-design-vue-jeecg/src/views/system/receipt/ReceiptContainerHeaderList.vue
+++ b/ant-design-vue-jeecg/src/views/system/receipt/ReceiptContainerHeaderList.vue
@@ -63,8 +63,8 @@
     <!-- 操作按钮区域 -->
     <div class="table-operator">
       <a-button v-has="'receiptContainerHeader: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 v-has="'receiptContainerHeader:export'" type="primary" icon="download" @click="handleExportXls('入库组盘')">导出</a-button>
+      <a-upload v-has="'receiptContainerHeader:import'" name="file" :showUploadList="false" :multiple="false" :headers="tokenHeader" :action="importExcelUrl" @change="handleImportExcel">
       <a-button type="primary" icon="import">导入</a-button>
       </a-upload>
     </div>
diff --git a/ant-design-vue-jeecg/src/views/system/receipt/ReceiptDetailList.vue b/ant-design-vue-jeecg/src/views/system/receipt/ReceiptDetailList.vue
index 768dfec..f9ca647 100644
--- a/ant-design-vue-jeecg/src/views/system/receipt/ReceiptDetailList.vue
+++ b/ant-design-vue-jeecg/src/views/system/receipt/ReceiptDetailList.vue
@@ -3,8 +3,9 @@
     <!-- 操作按钮区域 -->
     <div class="table-operator" v-if="mainId">
       <a-button v-has="'receiptDetail:add'" @click="handleAdd" type="primary" icon="plus">新增</a-button>
-      <a-button type="primary" icon="download" @click="handleExportXls('入库单详情')">导出</a-button>
+      <a-button v-has="'receiptDetail:export'" type="primary" icon="download" @click="handleExportXls('入库单详情')">导出</a-button>
       <a-upload
+        v-has="'receiptDetail:import'"
         name="file"
         :showUploadList="false"
         :multiple="false"
diff --git a/ant-design-vue-jeecg/src/views/system/receipt/ReceiptHeaderList.vue b/ant-design-vue-jeecg/src/views/system/receipt/ReceiptHeaderList.vue
index 73597a9..90a83b8 100644
--- a/ant-design-vue-jeecg/src/views/system/receipt/ReceiptHeaderList.vue
+++ b/ant-design-vue-jeecg/src/views/system/receipt/ReceiptHeaderList.vue
@@ -99,8 +99,8 @@
     <!-- 操作按钮区域 -->
     <div class="table-operator">
       <a-button v-has="'receiptHeader: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"
+      <a-button v-has="'receiptHeader:export'" type="primary" icon="download" @click="handleExportXls('入库表主表')">导出</a-button>
+      <a-upload v-has="'receiptHeader:import'" name="file" :showUploadList="false" :multiple="false" :headers="tokenHeader" :action="importExcelUrl"
                 @change="handleImportExcel">
         <a-button type="primary" icon="import">导入</a-button>
         <a-button v-has="'receiptHeader:print'" @click="batchPrint()" type="primary">打印</a-button>
diff --git a/ant-design-vue-jeecg/src/views/system/shipment/ShipmentContainerDetailList.vue b/ant-design-vue-jeecg/src/views/system/shipment/ShipmentContainerDetailList.vue
index b48c5f7..57863c4 100644
--- a/ant-design-vue-jeecg/src/views/system/shipment/ShipmentContainerDetailList.vue
+++ b/ant-design-vue-jeecg/src/views/system/shipment/ShipmentContainerDetailList.vue
@@ -61,8 +61,9 @@
     <!-- 操作按钮区域 -->
     <div class="table-operator" v-if="mainId">
       <a-button v-has="'shipmentContainerDetail:add'" @click="handleAdd" type="primary" icon="plus">新增</a-button>
-      <a-button type="primary" icon="download" @click="handleExportXls('出库组盘详情')">导出</a-button>
+      <a-button v-has="'shipmentContainerDetail:export'" type="primary" icon="download" @click="handleExportXls('出库组盘详情')">导出</a-button>
       <a-upload
+        v-has="'shipmentContainerDetail:import'"
         name="file"
         :showUploadList="false"
         :multiple="false"
diff --git a/ant-design-vue-jeecg/src/views/system/shipment/ShipmentContainerHeaderList.vue b/ant-design-vue-jeecg/src/views/system/shipment/ShipmentContainerHeaderList.vue
index 218b728..3b1c0ed 100644
--- a/ant-design-vue-jeecg/src/views/system/shipment/ShipmentContainerHeaderList.vue
+++ b/ant-design-vue-jeecg/src/views/system/shipment/ShipmentContainerHeaderList.vue
@@ -69,8 +69,8 @@
     <!-- 操作按钮区域 -->
     <div class="table-operator">
       <a-button @click="handleAdd" v-has="'shipmentContainerHeader:add'" 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"
+      <a-button v-has="'shipmentContainerHeader:export'" type="primary" icon="download" @click="handleExportXls('出库组盘')">导出</a-button>
+      <a-upload v-has="'shipmentContainerHeader:import'" name="file" :showUploadList="false" :multiple="false" :headers="tokenHeader" :action="importExcelUrl"
                 @change="handleImportExcel">
         <a-button type="primary" icon="import">导入</a-button>
       </a-upload>
diff --git a/ant-design-vue-jeecg/src/views/system/shipment/ShipmentDetailList.vue b/ant-design-vue-jeecg/src/views/system/shipment/ShipmentDetailList.vue
index 94a73c4..4dd44b7 100644
--- a/ant-design-vue-jeecg/src/views/system/shipment/ShipmentDetailList.vue
+++ b/ant-design-vue-jeecg/src/views/system/shipment/ShipmentDetailList.vue
@@ -3,8 +3,9 @@
     <!-- 操作按钮区域 -->
     <div class="table-operator" v-if="mainId">
       <a-button @click="handleAdd" v-has="'shipmentDetail:add'" type="primary" icon="plus">新增</a-button>
-      <a-button type="primary" icon="download" @click="handleExportXls('出库单详情')">导出</a-button>
+      <a-button v-has="'shipmentDetail:export'" type="primary" icon="download" @click="handleExportXls('出库单详情')">导出</a-button>
       <a-upload
+        v-has="'shipmentDetail:import'"
         name="file"
         :showUploadList="false"
         :multiple="false"
diff --git a/ant-design-vue-jeecg/src/views/system/shipment/ShipmentHeaderList.vue b/ant-design-vue-jeecg/src/views/system/shipment/ShipmentHeaderList.vue
index a2b4049..46e721c 100644
--- a/ant-design-vue-jeecg/src/views/system/shipment/ShipmentHeaderList.vue
+++ b/ant-design-vue-jeecg/src/views/system/shipment/ShipmentHeaderList.vue
@@ -108,8 +108,8 @@
     <!-- 操作按钮区域 -->
     <div class="table-operator">
       <a-button v-has="'shipmentHeader: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"
+      <a-button v-has="'shipmentHeader:export'" type="primary" icon="download" @click="handleExportXls('出库单')">导出</a-button>
+      <a-upload v-has="'shipmentHeader:import'" name="file" :showUploadList="false" :multiple="false" :headers="tokenHeader" :action="importExcelUrl"
                 @change="handleImportExcel">
       <a-button type="primary" icon="import">导入</a-button>
       <a-button v-has="'shipmentHeader:print'" @click="batchPrint()" type="primary">打印</a-button>
diff --git a/ant-design-vue-jeecg/src/views/system/stocktaking/CycleCountHeaderList.vue b/ant-design-vue-jeecg/src/views/system/stocktaking/CycleCountHeaderList.vue
index a94720c..9f30601 100644
--- a/ant-design-vue-jeecg/src/views/system/stocktaking/CycleCountHeaderList.vue
+++ b/ant-design-vue-jeecg/src/views/system/stocktaking/CycleCountHeaderList.vue
@@ -11,9 +11,9 @@
 
     <!-- 操作按钮区域 -->
     <div class="table-operator">
-      <a-button @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 v-has="'cycleCountHeader:add'" @click="handleAdd" type="primary" icon="plus">新增</a-button>
+      <a-button v-has="'cycleCountHeader:export'" type="primary" icon="download" @click="handleExportXls('盘点主表')">导出</a-button>
+      <a-upload v-has="'cycleCountHeader:import'" 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">
diff --git a/ant-design-vue-jeecg/src/views/system/task/AgvTaskList.vue b/ant-design-vue-jeecg/src/views/system/task/AgvTaskList.vue
index d6f3b08..8722533 100644
--- a/ant-design-vue-jeecg/src/views/system/task/AgvTaskList.vue
+++ b/ant-design-vue-jeecg/src/views/system/task/AgvTaskList.vue
@@ -49,8 +49,8 @@
     <!-- 操作按钮区域 -->
     <div class="table-operator">
       <a-button v-has="'agvTask:add'" @click="handleAdd" type="primary" icon="plus">新增</a-button>
-      <a-button type="primary" icon="download" @click="handleExportXls('AGV任务')">导出</a-button>
-      <a-upload name="file" :showUploadList="false" :multiple="false" :headers="tokenHeader" :action="importExcelUrl" @change="handleImportExcel">
+      <a-button v-has="'agvTask:export'" type="primary" icon="download" @click="handleExportXls('AGV任务')">导出</a-button>
+      <a-upload v-has="'agvTask:import'" 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">-->
diff --git a/huaheng-wms-core/src/main/java/org/jeecg/modules/quartz/controller/QuartzJobController.java b/huaheng-wms-core/src/main/java/org/jeecg/modules/quartz/controller/QuartzJobController.java
index 8829519..8d23931 100644
--- a/huaheng-wms-core/src/main/java/org/jeecg/modules/quartz/controller/QuartzJobController.java
+++ b/huaheng-wms-core/src/main/java/org/jeecg/modules/quartz/controller/QuartzJobController.java
@@ -7,6 +7,7 @@ import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
 import lombok.extern.slf4j.Slf4j;
 import org.apache.shiro.SecurityUtils;
+import org.apache.shiro.authz.annotation.RequiresPermissions;
 import org.apache.shiro.authz.annotation.RequiresRoles;
 import org.jeecg.common.api.vo.Result;
 import org.jeecg.common.constant.CommonConstant;
@@ -76,6 +77,7 @@ public class QuartzJobController {
      * @return
      */
     // @RequiresRoles("admin")
+    @RequiresPermissions("quartzJob:add")
     @RequestMapping(value = "/add", method = RequestMethod.POST)
     public Result<?> add(@RequestBody QuartzJob quartzJob) {
         quartzJobService.saveAndScheduleJob(quartzJob);
@@ -186,6 +188,7 @@ public class QuartzJobController {
      * @param quartzJob
      */
     @RequestMapping(value = "/exportXls")
+    @RequiresPermissions("quartzJob:export")
     public ModelAndView exportXls(HttpServletRequest request, QuartzJob quartzJob) {
         // Step.1 组装查询条件
         QueryWrapper<QuartzJob> queryWrapper = QueryGenerator.initQueryWrapper(quartzJob, request.getParameterMap());
@@ -211,6 +214,7 @@ public class QuartzJobController {
      * @return
      */
     @RequestMapping(value = "/importExcel", method = RequestMethod.POST)
+    @RequiresPermissions("quartzJob:export")
     public Result<?> importExcel(HttpServletRequest request, HttpServletResponse response) throws IOException {
         MultipartHttpServletRequest multipartRequest = (MultipartHttpServletRequest)request;
         Map<String, MultipartFile> fileMap = multipartRequest.getFileMap();
diff --git a/huaheng-wms-core/src/main/java/org/jeecg/modules/system/controller/SysAnnouncementController.java b/huaheng-wms-core/src/main/java/org/jeecg/modules/system/controller/SysAnnouncementController.java
index b86ef27..e364cce 100644
--- a/huaheng-wms-core/src/main/java/org/jeecg/modules/system/controller/SysAnnouncementController.java
+++ b/huaheng-wms-core/src/main/java/org/jeecg/modules/system/controller/SysAnnouncementController.java
@@ -387,6 +387,7 @@ public class SysAnnouncementController {
      * @param request
      */
     @RequestMapping(value = "/exportXls")
+    @RequiresPermissions("annountCement:export")
     public ModelAndView exportXls(SysAnnouncement sysAnnouncement, HttpServletRequest request) {
         // Step.1 组装查询条件
         LambdaQueryWrapper<SysAnnouncement> queryWrapper = new LambdaQueryWrapper<SysAnnouncement>(sysAnnouncement);
@@ -410,6 +411,7 @@ public class SysAnnouncementController {
      * @return
      */
     @RequestMapping(value = "/importExcel", method = RequestMethod.POST)
+    @RequiresPermissions("annountCement:import")
     public Result<?> importExcel(HttpServletRequest request, HttpServletResponse response) {
         MultipartHttpServletRequest multipartRequest = (MultipartHttpServletRequest)request;
         Map<String, MultipartFile> fileMap = multipartRequest.getFileMap();
diff --git a/huaheng-wms-core/src/main/java/org/jeecg/modules/system/controller/SysDepartController.java b/huaheng-wms-core/src/main/java/org/jeecg/modules/system/controller/SysDepartController.java
index 76d443c..7d5978e 100644
--- a/huaheng-wms-core/src/main/java/org/jeecg/modules/system/controller/SysDepartController.java
+++ b/huaheng-wms-core/src/main/java/org/jeecg/modules/system/controller/SysDepartController.java
@@ -6,6 +6,7 @@ import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import lombok.extern.slf4j.Slf4j;
 import org.apache.commons.lang3.StringUtils;
 import org.apache.shiro.SecurityUtils;
+import org.apache.shiro.authz.annotation.RequiresPermissions;
 import org.apache.shiro.authz.annotation.RequiresRoles;
 import org.jeecg.common.api.vo.Result;
 import org.jeecg.common.constant.CacheConstant;
@@ -328,6 +329,7 @@ public class SysDepartController {
      * @param request
      */
     @RequestMapping(value = "/exportXls")
+    @RequiresPermissions("sysDepart:export")
     public ModelAndView exportXls(SysDepart sysDepart, HttpServletRequest request) {
         // Step.1 组装查询条件
         QueryWrapper<SysDepart> queryWrapper = QueryGenerator.initQueryWrapper(sysDepart, request.getParameterMap());
@@ -360,6 +362,7 @@ public class SysDepartController {
      */
     // @RequiresRoles({"admin"})
     @RequestMapping(value = "/importExcel", method = RequestMethod.POST)
+    @RequiresPermissions("sysDepart:import")
     @CacheEvict(value = {CacheConstant.SYS_DEPARTS_CACHE, CacheConstant.SYS_DEPART_IDS_CACHE}, allEntries = true)
     public Result<?> importExcel(HttpServletRequest request, HttpServletResponse response) {
         MultipartHttpServletRequest multipartRequest = (MultipartHttpServletRequest)request;
diff --git a/huaheng-wms-core/src/main/java/org/jeecg/modules/system/controller/SysDictController.java b/huaheng-wms-core/src/main/java/org/jeecg/modules/system/controller/SysDictController.java
index 2f73550..4f7b0df 100644
--- a/huaheng-wms-core/src/main/java/org/jeecg/modules/system/controller/SysDictController.java
+++ b/huaheng-wms-core/src/main/java/org/jeecg/modules/system/controller/SysDictController.java
@@ -439,6 +439,7 @@ public class SysDictController {
      * @param request
      */
     @RequestMapping(value = "/exportXls")
+    @RequiresPermissions("dict:export")
     public ModelAndView exportXls(SysDict sysDict, HttpServletRequest request) {
         // Step.1 组装查询条件
         QueryWrapper<SysDict> queryWrapper = QueryGenerator.initQueryWrapper(sysDict, request.getParameterMap());
@@ -476,6 +477,7 @@ public class SysDictController {
      */
     // @RequiresRoles({"admin"})
     @RequestMapping(value = "/importExcel", method = RequestMethod.POST)
+    @RequiresPermissions("dict:import")
     public Result<?> importExcel(HttpServletRequest request, HttpServletResponse response) {
         MultipartHttpServletRequest multipartRequest = (MultipartHttpServletRequest)request;
         Map<String, MultipartFile> fileMap = multipartRequest.getFileMap();
diff --git a/huaheng-wms-core/src/main/java/org/jeecg/modules/system/controller/SysPositionController.java b/huaheng-wms-core/src/main/java/org/jeecg/modules/system/controller/SysPositionController.java
index c816595..d115ab3 100644
--- a/huaheng-wms-core/src/main/java/org/jeecg/modules/system/controller/SysPositionController.java
+++ b/huaheng-wms-core/src/main/java/org/jeecg/modules/system/controller/SysPositionController.java
@@ -9,6 +9,7 @@ import io.swagger.annotations.ApiOperation;
 import lombok.extern.slf4j.Slf4j;
 import org.apache.poi.ss.formula.functions.T;
 import org.apache.shiro.SecurityUtils;
+import org.apache.shiro.authz.annotation.RequiresPermissions;
 import org.jeecg.common.api.vo.Result;
 import org.jeecg.common.aspect.annotation.AutoLog;
 import org.jeecg.common.constant.CommonConstant;
@@ -83,6 +84,7 @@ public class SysPositionController {
      * @return
      */
     @AutoLog(value = "职务表-添加")
+    @RequiresPermissions("position:add")
     @ApiOperation(value = "职务表-添加", notes = "职务表-添加")
     @PostMapping(value = "/add")
     public Result<SysPosition> add(@RequestBody SysPosition sysPosition) {
@@ -184,6 +186,7 @@ public class SysPositionController {
      * @param response
      */
     @RequestMapping(value = "/exportXls")
+    @RequiresPermissions("position:export")
     public ModelAndView exportXls(HttpServletRequest request, HttpServletResponse response) {
         // Step.1 组装查询条件
         QueryWrapper<SysPosition> queryWrapper = null;
@@ -217,6 +220,7 @@ public class SysPositionController {
      * @return
      */
     @RequestMapping(value = "/importExcel", method = RequestMethod.POST)
+    @RequiresPermissions("position:import")
     public Result<?> importExcel(HttpServletRequest request, HttpServletResponse response) throws IOException {
         MultipartHttpServletRequest multipartRequest = (MultipartHttpServletRequest)request;
         Map<String, MultipartFile> fileMap = multipartRequest.getFileMap();
diff --git a/huaheng-wms-core/src/main/java/org/jeecg/modules/system/controller/SysRoleController.java b/huaheng-wms-core/src/main/java/org/jeecg/modules/system/controller/SysRoleController.java
index f9c39df..0e21129 100644
--- a/huaheng-wms-core/src/main/java/org/jeecg/modules/system/controller/SysRoleController.java
+++ b/huaheng-wms-core/src/main/java/org/jeecg/modules/system/controller/SysRoleController.java
@@ -12,6 +12,7 @@ import java.util.Map;
 import javax.servlet.http.HttpServletRequest;
 import javax.servlet.http.HttpServletResponse;
 
+import org.apache.shiro.authz.annotation.RequiresPermissions;
 import org.apache.shiro.authz.annotation.RequiresRoles;
 import org.jeecg.common.api.vo.Result;
 import org.jeecg.common.constant.CacheConstant;
@@ -247,6 +248,7 @@ public class SysRoleController {
      * @param request
      */
     @RequestMapping(value = "/exportXls")
+    @RequiresPermissions("role:export")
     public ModelAndView exportXls(SysRole sysRole, HttpServletRequest request) {
         // Step.1 组装查询条件
         QueryWrapper<SysRole> queryWrapper = QueryGenerator.initQueryWrapper(sysRole, request.getParameterMap());
@@ -269,6 +271,7 @@ public class SysRoleController {
      * @return
      */
     @RequestMapping(value = "/importExcel", method = RequestMethod.POST)
+    @RequiresPermissions("role:import")
     public Result<?> importExcel(HttpServletRequest request, HttpServletResponse response) {
         MultipartHttpServletRequest multipartRequest = (MultipartHttpServletRequest)request;
         Map<String, MultipartFile> fileMap = multipartRequest.getFileMap();
diff --git a/huaheng-wms-core/src/main/java/org/jeecg/modules/wms/config/address/controller/AddressController.java b/huaheng-wms-core/src/main/java/org/jeecg/modules/wms/config/address/controller/AddressController.java
index 9060027..cba0fc4 100644
--- a/huaheng-wms-core/src/main/java/org/jeecg/modules/wms/config/address/controller/AddressController.java
+++ b/huaheng-wms-core/src/main/java/org/jeecg/modules/wms/config/address/controller/AddressController.java
@@ -139,6 +139,7 @@ public class AddressController extends JeecgController<Address, IAddressService>
      * @param address
      */
     @RequestMapping(value = "/exportXls")
+    @RequiresPermissions("address:export")
     public ModelAndView exportXls(HttpServletRequest request, Address address) {
         return super.exportXls(request, address, Address.class, "接口地址");
     }
@@ -149,6 +150,7 @@ public class AddressController extends JeecgController<Address, IAddressService>
      * @param  response
      * @return
      */
+    @RequiresPermissions("address:import")
     @RequestMapping(value = "/importExcel", method = RequestMethod.POST)
     public Result<?> importExcel(HttpServletRequest request, HttpServletResponse response) {
         return super.importExcel(request, response, Address.class);
diff --git a/huaheng-wms-core/src/main/java/org/jeecg/modules/wms/config/agvPort/controller/AgvPortController.java b/huaheng-wms-core/src/main/java/org/jeecg/modules/wms/config/agvPort/controller/AgvPortController.java
index 4221fd2..e6c7942 100644
--- a/huaheng-wms-core/src/main/java/org/jeecg/modules/wms/config/agvPort/controller/AgvPortController.java
+++ b/huaheng-wms-core/src/main/java/org/jeecg/modules/wms/config/agvPort/controller/AgvPortController.java
@@ -138,6 +138,7 @@ public class AgvPortController extends JeecgController<AgvPort, IAgvPortService>
      * @param agvPort
      */
     @RequestMapping(value = "/exportXls")
+    @RequiresPermissions("agvPort:export")
     public ModelAndView exportXls(HttpServletRequest request, AgvPort agvPort) {
         return super.exportXls(request, agvPort, AgvPort.class, "AGV点位");
     }
@@ -149,6 +150,7 @@ public class AgvPortController extends JeecgController<AgvPort, IAgvPortService>
      * @return
      */
     @RequestMapping(value = "/importExcel", method = RequestMethod.POST)
+    @RequiresPermissions("agvPort:import")
     public Result<?> importExcel(HttpServletRequest request, HttpServletResponse response) {
         return super.importExcel(request, response, AgvPort.class);
     }
diff --git a/huaheng-wms-core/src/main/java/org/jeecg/modules/wms/config/bomHeader/controller/BomHeaderController.java b/huaheng-wms-core/src/main/java/org/jeecg/modules/wms/config/bomHeader/controller/BomHeaderController.java
index 07e8aaf..a1bd233 100644
--- a/huaheng-wms-core/src/main/java/org/jeecg/modules/wms/config/bomHeader/controller/BomHeaderController.java
+++ b/huaheng-wms-core/src/main/java/org/jeecg/modules/wms/config/bomHeader/controller/BomHeaderController.java
@@ -141,6 +141,7 @@ public class BomHeaderController extends JeecgController<BomHeader, IBomHeaderSe
      * @return
      */
     @RequestMapping(value = "/exportXls")
+    @RequiresPermissions("bomHeader:export")
     public ModelAndView exportXls(HttpServletRequest request, BomHeader bomHeader) {
         return super.exportXls(request, bomHeader, BomHeader.class, "bom主表");
     }
@@ -150,6 +151,7 @@ public class BomHeaderController extends JeecgController<BomHeader, IBomHeaderSe
      * @return
      */
     @RequestMapping(value = "/importExcel", method = RequestMethod.POST)
+    @RequiresPermissions("bomHeader:import")
     public Result<?> importExcel(HttpServletRequest request, HttpServletResponse response) {
         return super.importExcel(request, response, BomHeader.class);
     }
@@ -234,6 +236,7 @@ public class BomHeaderController extends JeecgController<BomHeader, IBomHeaderSe
      * @return
      */
     @RequestMapping(value = "/exportBomDetail")
+    @RequiresPermissions("bomDetail:export")
     public ModelAndView exportBomDetail(HttpServletRequest request, BomDetail bomDetail) {
         // Step.1 组装查询条件
         QueryWrapper<BomDetail> queryWrapper = QueryGenerator.initQueryWrapper(bomDetail, request.getParameterMap());
@@ -266,6 +269,7 @@ public class BomHeaderController extends JeecgController<BomHeader, IBomHeaderSe
      * @return
      */
     @RequestMapping(value = "/importBomDetail/{mainId}")
+    @RequiresPermissions("bomDetail:import")
     public Result<?> importBomDetail(HttpServletRequest request, HttpServletResponse response, @PathVariable("mainId") String mainId) {
         MultipartHttpServletRequest multipartRequest = (MultipartHttpServletRequest)request;
         Map<String, MultipartFile> fileMap = multipartRequest.getFileMap();
diff --git a/huaheng-wms-core/src/main/java/org/jeecg/modules/wms/config/carrier/controller/CarrierController.java b/huaheng-wms-core/src/main/java/org/jeecg/modules/wms/config/carrier/controller/CarrierController.java
index 643b972..58a85d2 100644
--- a/huaheng-wms-core/src/main/java/org/jeecg/modules/wms/config/carrier/controller/CarrierController.java
+++ b/huaheng-wms-core/src/main/java/org/jeecg/modules/wms/config/carrier/controller/CarrierController.java
@@ -149,6 +149,7 @@ public class CarrierController extends JeecgController<Carrier, ICarrierService>
      * @param carrier
      */
     @RequestMapping(value = "/exportXls")
+    @RequiresPermissions("carrier:export")
     public ModelAndView exportXls(HttpServletRequest request, Carrier carrier) {
         return super.exportXls(request, carrier, Carrier.class, "承运商管理");
     }
@@ -160,6 +161,7 @@ public class CarrierController extends JeecgController<Carrier, ICarrierService>
      * @return
      */
     @RequestMapping(value = "/importExcel", method = RequestMethod.POST)
+    @RequiresPermissions("carrier:import")
     public Result<?> importExcel(HttpServletRequest request, HttpServletResponse response) {
         return super.importExcel(request, response, Carrier.class);
     }
diff --git a/huaheng-wms-core/src/main/java/org/jeecg/modules/wms/config/company/controller/CompanyController.java b/huaheng-wms-core/src/main/java/org/jeecg/modules/wms/config/company/controller/CompanyController.java
index ef3f64b..36ccd5f 100644
--- a/huaheng-wms-core/src/main/java/org/jeecg/modules/wms/config/company/controller/CompanyController.java
+++ b/huaheng-wms-core/src/main/java/org/jeecg/modules/wms/config/company/controller/CompanyController.java
@@ -157,6 +157,7 @@ public class CompanyController extends JeecgController<Company, ICompanyService>
      * @param company
      */
     @RequestMapping(value = "/exportXls")
+    @RequiresPermissions("company:export")
     public ModelAndView exportXls(HttpServletRequest request, Company company) {
         return super.exportXls(request, company, Company.class, "货主");
     }
@@ -168,6 +169,7 @@ public class CompanyController extends JeecgController<Company, ICompanyService>
      * @return
      */
     @RequestMapping(value = "/importExcel", method = RequestMethod.POST)
+    @RequiresPermissions("company:import")
     public Result<?> importExcel(HttpServletRequest request, HttpServletResponse response) {
         return super.importExcel(request, response, Company.class);
     }
diff --git a/huaheng-wms-core/src/main/java/org/jeecg/modules/wms/config/container/controller/ContainerController.java b/huaheng-wms-core/src/main/java/org/jeecg/modules/wms/config/container/controller/ContainerController.java
index 934c68d..6315208 100644
--- a/huaheng-wms-core/src/main/java/org/jeecg/modules/wms/config/container/controller/ContainerController.java
+++ b/huaheng-wms-core/src/main/java/org/jeecg/modules/wms/config/container/controller/ContainerController.java
@@ -190,6 +190,7 @@ public class ContainerController extends JeecgController<Container, IContainerSe
      * @param container
      */
     @RequestMapping(value = "/exportXls")
+    @RequiresPermissions("container:export")
     public ModelAndView exportXls(HttpServletRequest request, Container container) {
         return super.exportXls(request, container, Container.class, "容器管理");
     }
@@ -201,6 +202,7 @@ public class ContainerController extends JeecgController<Container, IContainerSe
      * @return
      */
     @RequestMapping(value = "/importExcel", method = RequestMethod.POST)
+    @RequiresPermissions("container:import")
     public Result<?> importExcel(HttpServletRequest request, HttpServletResponse response) {
         return super.importExcel(request, response, Container.class);
     }
diff --git a/huaheng-wms-core/src/main/java/org/jeecg/modules/wms/config/containerCapacity/controller/ContainerCapacityController.java b/huaheng-wms-core/src/main/java/org/jeecg/modules/wms/config/containerCapacity/controller/ContainerCapacityController.java
index 87dc3a2..de93ed1 100644
--- a/huaheng-wms-core/src/main/java/org/jeecg/modules/wms/config/containerCapacity/controller/ContainerCapacityController.java
+++ b/huaheng-wms-core/src/main/java/org/jeecg/modules/wms/config/containerCapacity/controller/ContainerCapacityController.java
@@ -153,6 +153,7 @@ public class ContainerCapacityController extends JeecgController<ContainerCapaci
      * @param containerCapacity
      */
     @RequestMapping(value = "/exportXls")
+    @RequiresPermissions("containerCapacity:export")
     public ModelAndView exportXls(HttpServletRequest request, ContainerCapacity containerCapacity) {
         return super.exportXls(request, containerCapacity, ContainerCapacity.class, "容器容量管理");
     }
@@ -164,6 +165,7 @@ public class ContainerCapacityController extends JeecgController<ContainerCapaci
      * @return
      */
     @RequestMapping(value = "/importExcel", method = RequestMethod.POST)
+    @RequiresPermissions("containerCapacity:import")
     public Result<?> importExcel(HttpServletRequest request, HttpServletResponse response) {
         return super.importExcel(request, response, ContainerCapacity.class);
     }
diff --git a/huaheng-wms-core/src/main/java/org/jeecg/modules/wms/config/containerType/controller/ContainerTypeController.java b/huaheng-wms-core/src/main/java/org/jeecg/modules/wms/config/containerType/controller/ContainerTypeController.java
index da24ec4..4247a67 100644
--- a/huaheng-wms-core/src/main/java/org/jeecg/modules/wms/config/containerType/controller/ContainerTypeController.java
+++ b/huaheng-wms-core/src/main/java/org/jeecg/modules/wms/config/containerType/controller/ContainerTypeController.java
@@ -157,6 +157,7 @@ public class ContainerTypeController extends JeecgController<ContainerType, ICon
      * @param containerType
      */
     @RequestMapping(value = "/exportXls")
+    @RequiresPermissions("containerType:export")
     public ModelAndView exportXls(HttpServletRequest request, ContainerType containerType) {
         return super.exportXls(request, containerType, ContainerType.class, "容器类型");
     }
@@ -168,6 +169,7 @@ public class ContainerTypeController extends JeecgController<ContainerType, ICon
      * @return
      */
     @RequestMapping(value = "/importExcel", method = RequestMethod.POST)
+    @RequiresPermissions("containerType:import")
     public Result<?> importExcel(HttpServletRequest request, HttpServletResponse response) {
         return super.importExcel(request, response, ContainerType.class);
     }
diff --git a/huaheng-wms-core/src/main/java/org/jeecg/modules/wms/config/customer/controller/CustomerController.java b/huaheng-wms-core/src/main/java/org/jeecg/modules/wms/config/customer/controller/CustomerController.java
index 7c5b3a4..8e0119c 100644
--- a/huaheng-wms-core/src/main/java/org/jeecg/modules/wms/config/customer/controller/CustomerController.java
+++ b/huaheng-wms-core/src/main/java/org/jeecg/modules/wms/config/customer/controller/CustomerController.java
@@ -158,6 +158,7 @@ public class CustomerController extends JeecgController<Customer, ICustomerServi
      * @param customer
      */
     @RequestMapping(value = "/exportXls")
+    @RequiresPermissions("customer:export")
     public ModelAndView exportXls(HttpServletRequest request, Customer customer) {
         return super.exportXls(request, customer, Customer.class, "客户管理");
     }
@@ -169,6 +170,7 @@ public class CustomerController extends JeecgController<Customer, ICustomerServi
      * @return
      */
     @RequestMapping(value = "/importExcel", method = RequestMethod.POST)
+    @RequiresPermissions("customer:import")
     public Result<?> importExcel(HttpServletRequest request, HttpServletResponse response) {
         return super.importExcel(request, response, Customer.class);
     }
diff --git a/huaheng-wms-core/src/main/java/org/jeecg/modules/wms/config/cycleCountPreference/controller/CycleCountPreferenceController.java b/huaheng-wms-core/src/main/java/org/jeecg/modules/wms/config/cycleCountPreference/controller/CycleCountPreferenceController.java
index dcd55df..986dbf8 100644
--- a/huaheng-wms-core/src/main/java/org/jeecg/modules/wms/config/cycleCountPreference/controller/CycleCountPreferenceController.java
+++ b/huaheng-wms-core/src/main/java/org/jeecg/modules/wms/config/cycleCountPreference/controller/CycleCountPreferenceController.java
@@ -156,6 +156,7 @@ public class CycleCountPreferenceController extends JeecgController<CycleCountPr
      * @param cycleCountPreference
      */
     @RequestMapping(value = "/exportXls")
+    @RequiresPermissions("cycleCountPreference:export")
     public ModelAndView exportXls(HttpServletRequest request, CycleCountPreference cycleCountPreference) {
         return super.exportXls(request, cycleCountPreference, CycleCountPreference.class, "盘点首选项");
     }
@@ -167,6 +168,7 @@ public class CycleCountPreferenceController extends JeecgController<CycleCountPr
      * @return
      */
     @RequestMapping(value = "/importExcel", method = RequestMethod.POST)
+    @RequiresPermissions("cycleCountPreference:import")
     public Result<?> importExcel(HttpServletRequest request, HttpServletResponse response) {
         return super.importExcel(request, response, CycleCountPreference.class);
     }
diff --git a/huaheng-wms-core/src/main/java/org/jeecg/modules/wms/config/location/controller/LocationController.java b/huaheng-wms-core/src/main/java/org/jeecg/modules/wms/config/location/controller/LocationController.java
index 48c5eaf..4848e22 100644
--- a/huaheng-wms-core/src/main/java/org/jeecg/modules/wms/config/location/controller/LocationController.java
+++ b/huaheng-wms-core/src/main/java/org/jeecg/modules/wms/config/location/controller/LocationController.java
@@ -206,6 +206,7 @@ public class LocationController extends JeecgController<Location, ILocationServi
      * @param location
      */
     @RequestMapping(value = "/exportXls")
+    @RequiresPermissions("location:export")
     public ModelAndView exportXls(HttpServletRequest request, Location location) {
         return super.exportXls(request, location, Location.class, "库位管理");
     }
@@ -217,6 +218,7 @@ public class LocationController extends JeecgController<Location, ILocationServi
      * @return
      */
     @RequestMapping(value = "/importExcel", method = RequestMethod.POST)
+    @RequiresPermissions("location:import")
     public Result<?> importExcel(HttpServletRequest request, HttpServletResponse response) {
         return super.importExcel(request, response, Location.class);
     }
diff --git a/huaheng-wms-core/src/main/java/org/jeecg/modules/wms/config/locationHigh/controller/LocationHighController.java b/huaheng-wms-core/src/main/java/org/jeecg/modules/wms/config/locationHigh/controller/LocationHighController.java
index 4ed5bec..bb929d4 100644
--- a/huaheng-wms-core/src/main/java/org/jeecg/modules/wms/config/locationHigh/controller/LocationHighController.java
+++ b/huaheng-wms-core/src/main/java/org/jeecg/modules/wms/config/locationHigh/controller/LocationHighController.java
@@ -157,6 +157,7 @@ public class LocationHighController extends JeecgController<LocationHigh, ILocat
      * @param locationHigh
      */
     @RequestMapping(value = "/exportXls")
+    @RequiresPermissions("locationHigh:export")
     public ModelAndView exportXls(HttpServletRequest request, LocationHigh locationHigh) {
         return super.exportXls(request, locationHigh, LocationHigh.class, "库位高度管理");
     }
@@ -168,6 +169,7 @@ public class LocationHighController extends JeecgController<LocationHigh, ILocat
      * @return
      */
     @RequestMapping(value = "/importExcel", method = RequestMethod.POST)
+    @RequiresPermissions("locationHigh:import")
     public Result<?> importExcel(HttpServletRequest request, HttpServletResponse response) {
         return super.importExcel(request, response, LocationHigh.class);
     }
diff --git a/huaheng-wms-core/src/main/java/org/jeecg/modules/wms/config/locationType/controller/LocationTypeController.java b/huaheng-wms-core/src/main/java/org/jeecg/modules/wms/config/locationType/controller/LocationTypeController.java
index f7fcc36..789d2e6 100644
--- a/huaheng-wms-core/src/main/java/org/jeecg/modules/wms/config/locationType/controller/LocationTypeController.java
+++ b/huaheng-wms-core/src/main/java/org/jeecg/modules/wms/config/locationType/controller/LocationTypeController.java
@@ -156,6 +156,7 @@ public class LocationTypeController extends JeecgController<LocationType, ILocat
      * @param locationType
      */
     @RequestMapping(value = "/exportXls")
+    @RequiresPermissions("locationType:export")
     public ModelAndView exportXls(HttpServletRequest request, LocationType locationType) {
         return super.exportXls(request, locationType, LocationType.class, "库位类型");
     }
@@ -167,6 +168,7 @@ public class LocationTypeController extends JeecgController<LocationType, ILocat
      * @return
      */
     @RequestMapping(value = "/importExcel", method = RequestMethod.POST)
+    @RequiresPermissions("locationType:import")
     public Result<?> importExcel(HttpServletRequest request, HttpServletResponse response) {
         return super.importExcel(request, response, LocationType.class);
     }
diff --git a/huaheng-wms-core/src/main/java/org/jeecg/modules/wms/config/material/controller/MaterialController.java b/huaheng-wms-core/src/main/java/org/jeecg/modules/wms/config/material/controller/MaterialController.java
index 5926301..e04a285 100644
--- a/huaheng-wms-core/src/main/java/org/jeecg/modules/wms/config/material/controller/MaterialController.java
+++ b/huaheng-wms-core/src/main/java/org/jeecg/modules/wms/config/material/controller/MaterialController.java
@@ -142,7 +142,7 @@ public class MaterialController extends JeecgController<Material, IMaterialServi
      * @param material
      */
     @RequestMapping(value = "/exportXls")
-    @RequiresPermissions("material:exportXls")
+    @RequiresPermissions("material:export")
     public ModelAndView exportXls(HttpServletRequest request, Material material) {
         return super.exportXls(request, material, Material.class, "物料管理");
     }
@@ -170,7 +170,7 @@ public class MaterialController extends JeecgController<Material, IMaterialServi
      * @return
      */
     @RequestMapping(value = "/importExcel", method = RequestMethod.POST)
-    @RequiresPermissions("material:importExcel")
+    @RequiresPermissions("material:import")
     public Result<?> importExcel(HttpServletRequest request, HttpServletResponse response) {
         return super.importExcel(request, response, Material.class);
     }
diff --git a/huaheng-wms-core/src/main/java/org/jeecg/modules/wms/config/materialArea/controller/MaterialAreaController.java b/huaheng-wms-core/src/main/java/org/jeecg/modules/wms/config/materialArea/controller/MaterialAreaController.java
index d4d91f7..16ee673 100644
--- a/huaheng-wms-core/src/main/java/org/jeecg/modules/wms/config/materialArea/controller/MaterialAreaController.java
+++ b/huaheng-wms-core/src/main/java/org/jeecg/modules/wms/config/materialArea/controller/MaterialAreaController.java
@@ -153,6 +153,7 @@ public class MaterialAreaController extends JeecgController<MaterialArea, IMater
      * @param materialArea
      */
     @RequestMapping(value = "/exportXls")
+    @RequiresPermissions("materialArea:export")
     public ModelAndView exportXls(HttpServletRequest request, MaterialArea materialArea) {
         return super.exportXls(request, materialArea, MaterialArea.class, "物料分区");
     }
@@ -164,6 +165,7 @@ public class MaterialAreaController extends JeecgController<MaterialArea, IMater
      * @return
      */
     @RequestMapping(value = "/importExcel", method = RequestMethod.POST)
+    @RequiresPermissions("materialArea:import")
     public Result<?> importExcel(HttpServletRequest request, HttpServletResponse response) {
         return super.importExcel(request, response, MaterialArea.class);
     }
diff --git a/huaheng-wms-core/src/main/java/org/jeecg/modules/wms/config/materialMultiple/controller/MaterialMultipleController.java b/huaheng-wms-core/src/main/java/org/jeecg/modules/wms/config/materialMultiple/controller/MaterialMultipleController.java
index dc06f74..196369c 100644
--- a/huaheng-wms-core/src/main/java/org/jeecg/modules/wms/config/materialMultiple/controller/MaterialMultipleController.java
+++ b/huaheng-wms-core/src/main/java/org/jeecg/modules/wms/config/materialMultiple/controller/MaterialMultipleController.java
@@ -153,6 +153,7 @@ public class MaterialMultipleController extends JeecgController<MaterialMultiple
      * @param materialMultiple
      */
     @RequestMapping(value = "/exportXls")
+    @RequiresPermissions("materialMultiple:export")
     public ModelAndView exportXls(HttpServletRequest request, MaterialMultiple materialMultiple) {
         return super.exportXls(request, materialMultiple, MaterialMultiple.class, "物料单位换算");
     }
@@ -164,6 +165,7 @@ public class MaterialMultipleController extends JeecgController<MaterialMultiple
      * @return
      */
     @RequestMapping(value = "/importExcel", method = RequestMethod.POST)
+    @RequiresPermissions("materialMultiple:import")
     public Result<?> importExcel(HttpServletRequest request, HttpServletResponse response) {
         return super.importExcel(request, response, MaterialMultiple.class);
     }
diff --git a/huaheng-wms-core/src/main/java/org/jeecg/modules/wms/config/materialType/controller/MaterialTypeController.java b/huaheng-wms-core/src/main/java/org/jeecg/modules/wms/config/materialType/controller/MaterialTypeController.java
index 2db6941..a1972c0 100644
--- a/huaheng-wms-core/src/main/java/org/jeecg/modules/wms/config/materialType/controller/MaterialTypeController.java
+++ b/huaheng-wms-core/src/main/java/org/jeecg/modules/wms/config/materialType/controller/MaterialTypeController.java
@@ -153,6 +153,7 @@ public class MaterialTypeController extends JeecgController<MaterialType, IMater
      * @param materialType
      */
     @RequestMapping(value = "/exportXls")
+    @RequiresPermissions("materialType:export")
     public ModelAndView exportXls(HttpServletRequest request, MaterialType materialType) {
         return super.exportXls(request, materialType, MaterialType.class, "物料类别");
     }
@@ -164,6 +165,7 @@ public class MaterialTypeController extends JeecgController<MaterialType, IMater
      * @return
      */
     @RequestMapping(value = "/importExcel", method = RequestMethod.POST)
+    @RequiresPermissions("materialType:import")
     public Result<?> importExcel(HttpServletRequest request, HttpServletResponse response) {
         return super.importExcel(request, response, MaterialType.class);
     }
diff --git a/huaheng-wms-core/src/main/java/org/jeecg/modules/wms/config/materialUnit/controller/MaterialUnitController.java b/huaheng-wms-core/src/main/java/org/jeecg/modules/wms/config/materialUnit/controller/MaterialUnitController.java
index 239ef31..2758c29 100644
--- a/huaheng-wms-core/src/main/java/org/jeecg/modules/wms/config/materialUnit/controller/MaterialUnitController.java
+++ b/huaheng-wms-core/src/main/java/org/jeecg/modules/wms/config/materialUnit/controller/MaterialUnitController.java
@@ -153,6 +153,7 @@ public class MaterialUnitController extends JeecgController<MaterialUnit, IMater
      * @param materialUnit
      */
     @RequestMapping(value = "/exportXls")
+    @RequiresPermissions("materialUnit:export")
     public ModelAndView exportXls(HttpServletRequest request, MaterialUnit materialUnit) {
         return super.exportXls(request, materialUnit, MaterialUnit.class, "物料单位");
     }
@@ -164,6 +165,7 @@ public class MaterialUnitController extends JeecgController<MaterialUnit, IMater
      * @return
      */
     @RequestMapping(value = "/importExcel", method = RequestMethod.POST)
+    @RequiresPermissions("materialUnit:import")
     public Result<?> importExcel(HttpServletRequest request, HttpServletResponse response) {
         return super.importExcel(request, response, MaterialUnit.class);
     }
diff --git a/huaheng-wms-core/src/main/java/org/jeecg/modules/wms/config/materialWarning/controller/MaterialWarningController.java b/huaheng-wms-core/src/main/java/org/jeecg/modules/wms/config/materialWarning/controller/MaterialWarningController.java
index c235e34..5df77c2 100644
--- a/huaheng-wms-core/src/main/java/org/jeecg/modules/wms/config/materialWarning/controller/MaterialWarningController.java
+++ b/huaheng-wms-core/src/main/java/org/jeecg/modules/wms/config/materialWarning/controller/MaterialWarningController.java
@@ -153,6 +153,7 @@ public class MaterialWarningController extends JeecgController<MaterialWarning, 
      * @param materialWarning
      */
     @RequestMapping(value = "/exportXls")
+    @RequiresPermissions("materialWarning:export")
     public ModelAndView exportXls(HttpServletRequest request, MaterialWarning materialWarning) {
         return super.exportXls(request, materialWarning, MaterialWarning.class, "物料预警");
     }
@@ -164,6 +165,7 @@ public class MaterialWarningController extends JeecgController<MaterialWarning, 
      * @return
      */
     @RequestMapping(value = "/importExcel", method = RequestMethod.POST)
+    @RequiresPermissions("materialWarning:import")
     public Result<?> importExcel(HttpServletRequest request, HttpServletResponse response) {
         return super.importExcel(request, response, MaterialWarning.class);
     }
diff --git a/huaheng-wms-core/src/main/java/org/jeecg/modules/wms/config/parameterConfiguration/controller/ParameterConfigurationController.java b/huaheng-wms-core/src/main/java/org/jeecg/modules/wms/config/parameterConfiguration/controller/ParameterConfigurationController.java
index 823fbd9..94132c6 100644
--- a/huaheng-wms-core/src/main/java/org/jeecg/modules/wms/config/parameterConfiguration/controller/ParameterConfigurationController.java
+++ b/huaheng-wms-core/src/main/java/org/jeecg/modules/wms/config/parameterConfiguration/controller/ParameterConfigurationController.java
@@ -152,6 +152,7 @@ public class ParameterConfigurationController extends JeecgController<ParameterC
      * @param parameterConfiguration
      */
     @RequestMapping(value = "/exportXls")
+    @RequiresPermissions("parameterConfiguration:export")
     public ModelAndView exportXls(HttpServletRequest request, ParameterConfiguration parameterConfiguration) {
         return super.exportXls(request, parameterConfiguration, ParameterConfiguration.class, "参数配置");
     }
@@ -163,6 +164,7 @@ public class ParameterConfigurationController extends JeecgController<ParameterC
      * @return
      */
     @RequestMapping(value = "/importExcel", method = RequestMethod.POST)
+    @RequiresPermissions("parameterConfiguration:import")
     public Result<?> importExcel(HttpServletRequest request, HttpServletResponse response) {
         return super.importExcel(request, response, ParameterConfiguration.class);
     }
diff --git a/huaheng-wms-core/src/main/java/org/jeecg/modules/wms/config/port/controller/PortController.java b/huaheng-wms-core/src/main/java/org/jeecg/modules/wms/config/port/controller/PortController.java
index c78147e..91d7606 100644
--- a/huaheng-wms-core/src/main/java/org/jeecg/modules/wms/config/port/controller/PortController.java
+++ b/huaheng-wms-core/src/main/java/org/jeecg/modules/wms/config/port/controller/PortController.java
@@ -153,6 +153,7 @@ public class PortController extends JeecgController<Port, IPortService> {
      * @param port
      */
     @RequestMapping(value = "/exportXls")
+    @RequiresPermissions("port:export")
     public ModelAndView exportXls(HttpServletRequest request, Port port) {
         return super.exportXls(request, port, Port.class, "出入口");
     }
@@ -164,6 +165,7 @@ public class PortController extends JeecgController<Port, IPortService> {
      * @return
      */
     @RequestMapping(value = "/importExcel", method = RequestMethod.POST)
+    @RequiresPermissions("port:import")
     public Result<?> importExcel(HttpServletRequest request, HttpServletResponse response) {
         return super.importExcel(request, response, Port.class);
     }
diff --git a/huaheng-wms-core/src/main/java/org/jeecg/modules/wms/config/receiptType/controller/ReceiptTypeController.java b/huaheng-wms-core/src/main/java/org/jeecg/modules/wms/config/receiptType/controller/ReceiptTypeController.java
index 1fca040..c00eaab 100644
--- a/huaheng-wms-core/src/main/java/org/jeecg/modules/wms/config/receiptType/controller/ReceiptTypeController.java
+++ b/huaheng-wms-core/src/main/java/org/jeecg/modules/wms/config/receiptType/controller/ReceiptTypeController.java
@@ -156,6 +156,7 @@ public class ReceiptTypeController extends JeecgController<ReceiptType, IReceipt
      * @param receiptType
      */
     @RequestMapping(value = "/exportXls")
+    @RequiresPermissions("receiptType:export")
     public ModelAndView exportXls(HttpServletRequest request, ReceiptType receiptType) {
         return super.exportXls(request, receiptType, ReceiptType.class, "入库单类型");
     }
@@ -167,6 +168,7 @@ public class ReceiptTypeController extends JeecgController<ReceiptType, IReceipt
      * @return
      */
     @RequestMapping(value = "/importExcel", method = RequestMethod.POST)
+    @RequiresPermissions("receiptType:import")
     public Result<?> importExcel(HttpServletRequest request, HttpServletResponse response) {
         return super.importExcel(request, response, ReceiptType.class);
     }
diff --git a/huaheng-wms-core/src/main/java/org/jeecg/modules/wms/config/shipmentType/controller/ShipmentTypeController.java b/huaheng-wms-core/src/main/java/org/jeecg/modules/wms/config/shipmentType/controller/ShipmentTypeController.java
index 42d940a..48afa59 100644
--- a/huaheng-wms-core/src/main/java/org/jeecg/modules/wms/config/shipmentType/controller/ShipmentTypeController.java
+++ b/huaheng-wms-core/src/main/java/org/jeecg/modules/wms/config/shipmentType/controller/ShipmentTypeController.java
@@ -155,6 +155,7 @@ public class ShipmentTypeController extends JeecgController<ShipmentType, IShipm
      * @param shipmentType
      */
     @RequestMapping(value = "/exportXls")
+    @RequiresPermissions("shipmentType:export")
     public ModelAndView exportXls(HttpServletRequest request, ShipmentType shipmentType) {
         return super.exportXls(request, shipmentType, ShipmentType.class, "出库单类型");
     }
@@ -166,6 +167,7 @@ public class ShipmentTypeController extends JeecgController<ShipmentType, IShipm
      * @return
      */
     @RequestMapping(value = "/importExcel", method = RequestMethod.POST)
+    @RequiresPermissions("shipmentType:import")
     public Result<?> importExcel(HttpServletRequest request, HttpServletResponse response) {
         return super.importExcel(request, response, ShipmentType.class);
     }
diff --git a/huaheng-wms-core/src/main/java/org/jeecg/modules/wms/config/supplier/controller/SupplierController.java b/huaheng-wms-core/src/main/java/org/jeecg/modules/wms/config/supplier/controller/SupplierController.java
index 99416a7..6ac56ca 100644
--- a/huaheng-wms-core/src/main/java/org/jeecg/modules/wms/config/supplier/controller/SupplierController.java
+++ b/huaheng-wms-core/src/main/java/org/jeecg/modules/wms/config/supplier/controller/SupplierController.java
@@ -156,6 +156,7 @@ public class SupplierController extends JeecgController<Supplier, ISupplierServi
      * @param supplier
      */
     @RequestMapping(value = "/exportXls")
+    @RequiresPermissions("supplier:export")
     public ModelAndView exportXls(HttpServletRequest request, Supplier supplier) {
         return super.exportXls(request, supplier, Supplier.class, "供应商管理");
     }
@@ -167,6 +168,7 @@ public class SupplierController extends JeecgController<Supplier, ISupplierServi
      * @return
      */
     @RequestMapping(value = "/importExcel", method = RequestMethod.POST)
+    @RequiresPermissions("supplier:import")
     public Result<?> importExcel(HttpServletRequest request, HttpServletResponse response) {
         return super.importExcel(request, response, Supplier.class);
     }
diff --git a/huaheng-wms-core/src/main/java/org/jeecg/modules/wms/config/sysUserWarehouse/controller/SysUserWarehouseController.java b/huaheng-wms-core/src/main/java/org/jeecg/modules/wms/config/sysUserWarehouse/controller/SysUserWarehouseController.java
index ade0929..bf8abc2 100644
--- a/huaheng-wms-core/src/main/java/org/jeecg/modules/wms/config/sysUserWarehouse/controller/SysUserWarehouseController.java
+++ b/huaheng-wms-core/src/main/java/org/jeecg/modules/wms/config/sysUserWarehouse/controller/SysUserWarehouseController.java
@@ -8,6 +8,7 @@ import javax.annotation.Resource;
 import javax.servlet.http.HttpServletRequest;
 import javax.servlet.http.HttpServletResponse;
 
+import org.apache.shiro.authz.annotation.RequiresPermissions;
 import org.jeecg.common.api.vo.Result;
 import org.jeecg.common.aspect.annotation.AutoLog;
 import org.jeecg.common.system.base.controller.JeecgController;
@@ -138,6 +139,7 @@ public class SysUserWarehouseController extends JeecgController<SysUserWarehouse
      * @param sysUserWarehouse
      */
     @RequestMapping(value = "/exportXls")
+    @RequiresPermissions("sysUserWarehouse:export")
     public ModelAndView exportXls(HttpServletRequest request, SysUserWarehouse sysUserWarehouse) {
         return super.exportXls(request, sysUserWarehouse, SysUserWarehouse.class, "用户仓库关系表");
     }
@@ -149,6 +151,7 @@ public class SysUserWarehouseController extends JeecgController<SysUserWarehouse
      * @return
      */
     @RequestMapping(value = "/importExcel", method = RequestMethod.POST)
+    @RequiresPermissions("sysUserWarehouse:import")
     public Result<?> importExcel(HttpServletRequest request, HttpServletResponse response) {
         return super.importExcel(request, response, SysUserWarehouse.class);
     }
diff --git a/huaheng-wms-core/src/main/java/org/jeecg/modules/wms/config/zone/controller/ZoneController.java b/huaheng-wms-core/src/main/java/org/jeecg/modules/wms/config/zone/controller/ZoneController.java
index cb7f152..f503e32 100644
--- a/huaheng-wms-core/src/main/java/org/jeecg/modules/wms/config/zone/controller/ZoneController.java
+++ b/huaheng-wms-core/src/main/java/org/jeecg/modules/wms/config/zone/controller/ZoneController.java
@@ -155,6 +155,7 @@ public class ZoneController extends JeecgController<Zone, IZoneService> {
      * @param zone
      */
     @RequestMapping(value = "/exportXls")
+    @RequiresPermissions("zone:export")
     public ModelAndView exportXls(HttpServletRequest request, Zone zone) {
         return super.exportXls(request, zone, Zone.class, "库区管理");
     }
@@ -166,6 +167,7 @@ public class ZoneController extends JeecgController<Zone, IZoneService> {
      * @return
      */
     @RequestMapping(value = "/importExcel", method = RequestMethod.POST)
+    @RequiresPermissions("zone:import")
     public Result<?> importExcel(HttpServletRequest request, HttpServletResponse response) {
         return super.importExcel(request, response, Zone.class);
     }
diff --git a/huaheng-wms-core/src/main/java/org/jeecg/modules/wms/inventory/InventoryMaterialSummary/controller/InventoryMaterialSummaryController.java b/huaheng-wms-core/src/main/java/org/jeecg/modules/wms/inventory/InventoryMaterialSummary/controller/InventoryMaterialSummaryController.java
index 9955a46..2413b00 100644
--- a/huaheng-wms-core/src/main/java/org/jeecg/modules/wms/inventory/InventoryMaterialSummary/controller/InventoryMaterialSummaryController.java
+++ b/huaheng-wms-core/src/main/java/org/jeecg/modules/wms/inventory/InventoryMaterialSummary/controller/InventoryMaterialSummaryController.java
@@ -6,6 +6,7 @@ import javax.annotation.Resource;
 import javax.servlet.http.HttpServletRequest;
 import javax.servlet.http.HttpServletResponse;
 
+import org.apache.shiro.authz.annotation.RequiresPermissions;
 import org.jeecg.common.api.vo.Result;
 import org.jeecg.common.system.base.controller.JeecgController;
 import org.jeecg.common.system.query.QueryGenerator;
@@ -94,6 +95,7 @@ public class InventoryMaterialSummaryController extends JeecgController<Inventor
      * @param inventoryMaterialSummary
      */
     @RequestMapping(value = "/exportXls")
+    @RequiresPermissions("inventoryMaterialSummary:export")
     public ModelAndView exportXls(HttpServletRequest request, InventoryDetail inventoryMaterialSummary) {
         return super.exportXls(request, inventoryMaterialSummary, InventoryDetail.class, "物料汇总主表");
     }
@@ -105,6 +107,7 @@ public class InventoryMaterialSummaryController extends JeecgController<Inventor
      * @return
      */
     @RequestMapping(value = "/importExcel", method = RequestMethod.POST)
+    @RequiresPermissions("inventoryMaterialSummary:import")
     public Result<?> importExcel(HttpServletRequest request, HttpServletResponse response) {
         return super.importExcel(request, response, InventoryDetail.class);
     }
diff --git a/huaheng-wms-core/src/main/java/org/jeecg/modules/wms/inventory/inventoryHeader/controller/InventoryHeaderController.java b/huaheng-wms-core/src/main/java/org/jeecg/modules/wms/inventory/inventoryHeader/controller/InventoryHeaderController.java
index 3af29c9..4ea1919 100644
--- a/huaheng-wms-core/src/main/java/org/jeecg/modules/wms/inventory/inventoryHeader/controller/InventoryHeaderController.java
+++ b/huaheng-wms-core/src/main/java/org/jeecg/modules/wms/inventory/inventoryHeader/controller/InventoryHeaderController.java
@@ -10,6 +10,7 @@ import javax.servlet.http.HttpServletRequest;
 import javax.servlet.http.HttpServletResponse;
 
 import org.apache.shiro.SecurityUtils;
+import org.apache.shiro.authz.annotation.RequiresPermissions;
 import org.jeecg.common.api.vo.Result;
 import org.jeecg.common.aspect.annotation.AutoLog;
 import org.jeecg.common.system.base.controller.JeecgController;
@@ -139,6 +140,7 @@ public class InventoryHeaderController extends JeecgController<InventoryHeader, 
      * 导出
      * @return
      */
+    @RequiresPermissions("inventoryHeader:export")
     @RequestMapping(value = "/exportXls")
     public ModelAndView exportXls(HttpServletRequest request, InventoryHeader inventoryHeader) {
         return super.exportXls(request, inventoryHeader, InventoryHeader.class, "库存表");
@@ -148,6 +150,7 @@ public class InventoryHeaderController extends JeecgController<InventoryHeader, 
      * 导入
      * @return
      */
+    @RequiresPermissions("inventoryHeader:import")
     @RequestMapping(value = "/importExcel", method = RequestMethod.POST)
     public Result<?> importExcel(HttpServletRequest request, HttpServletResponse response) {
         return super.importExcel(request, response, InventoryHeader.class);
@@ -229,6 +232,7 @@ public class InventoryHeaderController extends JeecgController<InventoryHeader, 
      * @return
      */
     @RequestMapping(value = "/exportInventoryDetail")
+    @RequiresPermissions("inventoryDetail:export")
     public ModelAndView exportInventoryDetail(HttpServletRequest request, InventoryDetail inventoryDetail) {
         // Step.1 组装查询条件
         QueryWrapper<InventoryDetail> queryWrapper = QueryGenerator.initQueryWrapper(inventoryDetail, request.getParameterMap());
@@ -246,7 +250,7 @@ public class InventoryHeaderController extends JeecgController<InventoryHeader, 
         } else {
             exportList = pageList;
         }
-        
+
         // Step.3 AutoPoi 导出Excel
         ModelAndView mv = new ModelAndView(new JeecgEntityExcelView());
         mv.addObject(NormalExcelConstants.FILE_NAME, "库存详情"); // 此处设置的filename无效 ,前端会重更新设置一下
@@ -281,6 +285,7 @@ public class InventoryHeaderController extends JeecgController<InventoryHeader, 
      * @return
      */
     @RequestMapping(value = "/importInventoryDetail/{mainId}")
+    @RequiresPermissions("inventoryDetail:import")
     public Result<?> importInventoryDetail(HttpServletRequest request, HttpServletResponse response, @PathVariable("mainId") Integer mainId) {
         MultipartHttpServletRequest multipartRequest = (MultipartHttpServletRequest)request;
         Map<String, MultipartFile> fileMap = multipartRequest.getFileMap();
diff --git a/huaheng-wms-core/src/main/java/org/jeecg/modules/wms/inventory/inventoryTransaction/controller/InventoryTransactionController.java b/huaheng-wms-core/src/main/java/org/jeecg/modules/wms/inventory/inventoryTransaction/controller/InventoryTransactionController.java
index 2fe5986..23e1216 100644
--- a/huaheng-wms-core/src/main/java/org/jeecg/modules/wms/inventory/inventoryTransaction/controller/InventoryTransactionController.java
+++ b/huaheng-wms-core/src/main/java/org/jeecg/modules/wms/inventory/inventoryTransaction/controller/InventoryTransactionController.java
@@ -5,6 +5,7 @@ import java.util.Arrays;
 import javax.servlet.http.HttpServletRequest;
 import javax.servlet.http.HttpServletResponse;
 
+import org.apache.shiro.authz.annotation.RequiresPermissions;
 import org.jeecg.common.api.vo.Result;
 import org.jeecg.common.aspect.annotation.AutoLog;
 import org.jeecg.common.system.base.controller.JeecgController;
@@ -134,6 +135,7 @@ public class InventoryTransactionController extends JeecgController<InventoryTra
      * @param inventoryTransaction
      */
     @RequestMapping(value = "/exportXls")
+    @RequiresPermissions("inventoryTransaction:export")
     public ModelAndView exportXls(HttpServletRequest request, InventoryTransaction inventoryTransaction) {
         return super.exportXls(request, inventoryTransaction, InventoryTransaction.class, "库存交易记录");
     }
@@ -145,6 +147,7 @@ public class InventoryTransactionController extends JeecgController<InventoryTra
      * @return
      */
     @RequestMapping(value = "/importExcel", method = RequestMethod.POST)
+    @RequiresPermissions("inventoryTransaction:import")
     public Result<?> importExcel(HttpServletRequest request, HttpServletResponse response) {
         return super.importExcel(request, response, InventoryTransaction.class);
     }
diff --git a/huaheng-wms-core/src/main/java/org/jeecg/modules/wms/monitor/apiLog/controller/ApiLogController.java b/huaheng-wms-core/src/main/java/org/jeecg/modules/wms/monitor/apiLog/controller/ApiLogController.java
index abfe6fb..3932c33 100644
--- a/huaheng-wms-core/src/main/java/org/jeecg/modules/wms/monitor/apiLog/controller/ApiLogController.java
+++ b/huaheng-wms-core/src/main/java/org/jeecg/modules/wms/monitor/apiLog/controller/ApiLogController.java
@@ -5,6 +5,7 @@ import java.util.Arrays;
 import javax.servlet.http.HttpServletRequest;
 import javax.servlet.http.HttpServletResponse;
 
+import org.apache.shiro.authz.annotation.RequiresPermissions;
 import org.jeecg.common.api.vo.Result;
 import org.jeecg.common.aspect.annotation.AutoLog;
 import org.jeecg.common.system.base.controller.JeecgController;
@@ -130,6 +131,7 @@ public class ApiLogController extends JeecgController<ApiLog, IApiLogService> {
      * @param apiLog
      */
     @RequestMapping(value = "/exportXls")
+    @RequiresPermissions("apiLog:export")
     public ModelAndView exportXls(HttpServletRequest request, ApiLog apiLog) {
         return super.exportXls(request, apiLog, ApiLog.class, "接口日志");
     }
@@ -141,6 +143,7 @@ public class ApiLogController extends JeecgController<ApiLog, IApiLogService> {
      * @return
      */
     @RequestMapping(value = "/importExcel", method = RequestMethod.POST)
+    @RequiresPermissions("apiLog:import ")
     public Result<?> importExcel(HttpServletRequest request, HttpServletResponse response) {
         return super.importExcel(request, response, ApiLog.class);
     }
diff --git a/huaheng-wms-core/src/main/java/org/jeecg/modules/wms/monitor/operation/controller/OperationLogController.java b/huaheng-wms-core/src/main/java/org/jeecg/modules/wms/monitor/operation/controller/OperationLogController.java
index 6b57557..12821c3 100644
--- a/huaheng-wms-core/src/main/java/org/jeecg/modules/wms/monitor/operation/controller/OperationLogController.java
+++ b/huaheng-wms-core/src/main/java/org/jeecg/modules/wms/monitor/operation/controller/OperationLogController.java
@@ -5,6 +5,7 @@ import java.util.Arrays;
 import javax.servlet.http.HttpServletRequest;
 import javax.servlet.http.HttpServletResponse;
 
+import org.apache.shiro.authz.annotation.RequiresPermissions;
 import org.jeecg.common.api.vo.Result;
 import org.jeecg.common.aspect.annotation.AutoLog;
 import org.jeecg.common.system.base.controller.JeecgController;
@@ -138,6 +139,7 @@ public class OperationLogController extends JeecgController<OperationLog, IOpera
      * @param operationLog
      */
     @RequestMapping(value = "/exportXls")
+    @RequiresPermissions("operationLog:export")
     public ModelAndView exportXls(HttpServletRequest request, OperationLog operationLog) {
         return super.exportXls(request, operationLog, OperationLog.class, "操作记录表");
     }
@@ -149,6 +151,7 @@ public class OperationLogController extends JeecgController<OperationLog, IOpera
      * @return
      */
     @RequestMapping(value = "/importExcel", method = RequestMethod.POST)
+    @RequiresPermissions("operationLog:import")
     public Result<?> importExcel(HttpServletRequest request, HttpServletResponse response) {
         return super.importExcel(request, response, OperationLog.class);
     }
diff --git a/huaheng-wms-core/src/main/java/org/jeecg/modules/wms/receipt/receiptContainerHeader/controller/ReceiptContainerHeaderController.java b/huaheng-wms-core/src/main/java/org/jeecg/modules/wms/receipt/receiptContainerHeader/controller/ReceiptContainerHeaderController.java
index 6507bbe..846e2ba 100644
--- a/huaheng-wms-core/src/main/java/org/jeecg/modules/wms/receipt/receiptContainerHeader/controller/ReceiptContainerHeaderController.java
+++ b/huaheng-wms-core/src/main/java/org/jeecg/modules/wms/receipt/receiptContainerHeader/controller/ReceiptContainerHeaderController.java
@@ -161,6 +161,7 @@ public class ReceiptContainerHeaderController extends JeecgController<ReceiptCon
      * @return
      */
     @RequestMapping(value = "/exportXls")
+    @RequiresPermissions("receiptContainerHeader:export")
     public ModelAndView exportXls(HttpServletRequest request, ReceiptContainerHeader receiptContainerHeader) {
         return super.exportXls(request, receiptContainerHeader, ReceiptContainerHeader.class, "入库组盘");
     }
@@ -170,6 +171,7 @@ public class ReceiptContainerHeaderController extends JeecgController<ReceiptCon
      * @return
      */
     @RequestMapping(value = "/importExcel", method = RequestMethod.POST)
+    @RequiresPermissions("receiptContainerHeader:import")
     public Result<?> importExcel(HttpServletRequest request, HttpServletResponse response) {
         return super.importExcel(request, response, ReceiptContainerHeader.class);
     }
@@ -253,6 +255,7 @@ public class ReceiptContainerHeaderController extends JeecgController<ReceiptCon
      * @return
      */
     @RequestMapping(value = "/exportReceiptContainerDetail")
+    @RequiresPermissions("receiptContainerDetail:export")
     public ModelAndView exportReceiptContainerDetail(HttpServletRequest request, ReceiptContainerDetail receiptContainerDetail) {
         // Step.1 组装查询条件
         QueryWrapper<ReceiptContainerDetail> queryWrapper = QueryGenerator.initQueryWrapper(receiptContainerDetail, request.getParameterMap());
@@ -285,6 +288,7 @@ public class ReceiptContainerHeaderController extends JeecgController<ReceiptCon
      * @return
      */
     @RequestMapping(value = "/importReceiptContainerDetail/{mainId}")
+    @RequiresPermissions("receiptContainerDetail:import")
     public Result<?> importReceiptContainerDetail(HttpServletRequest request, HttpServletResponse response, @PathVariable("mainId") Integer mainId) {
         MultipartHttpServletRequest multipartRequest = (MultipartHttpServletRequest)request;
         Map<String, MultipartFile> fileMap = multipartRequest.getFileMap();
diff --git a/huaheng-wms-core/src/main/java/org/jeecg/modules/wms/receipt/receiptHeader/controller/ReceiptHeaderController.java b/huaheng-wms-core/src/main/java/org/jeecg/modules/wms/receipt/receiptHeader/controller/ReceiptHeaderController.java
index 80f807a..35f9bc4 100644
--- a/huaheng-wms-core/src/main/java/org/jeecg/modules/wms/receipt/receiptHeader/controller/ReceiptHeaderController.java
+++ b/huaheng-wms-core/src/main/java/org/jeecg/modules/wms/receipt/receiptHeader/controller/ReceiptHeaderController.java
@@ -175,6 +175,7 @@ public class ReceiptHeaderController extends JeecgController<ReceiptHeader, IRec
      * @return
      */
     @RequestMapping(value = "/exportXls")
+    @RequiresPermissions("receiptHeader:export")
     public ModelAndView exportXls(HttpServletRequest request, ReceiptHeader receiptHeader) {
         return super.exportXls(request, receiptHeader, ReceiptHeader.class, "入库表主表");
     }
@@ -184,6 +185,7 @@ public class ReceiptHeaderController extends JeecgController<ReceiptHeader, IRec
      * @return
      */
     @RequestMapping(value = "/importExcel", method = RequestMethod.POST)
+    @RequiresPermissions("receiptHeader:export")
     public Result<?> importExcel(HttpServletRequest request, HttpServletResponse response) {
         return super.importExcel(request, response, ReceiptHeader.class);
     }
@@ -286,6 +288,7 @@ public class ReceiptHeaderController extends JeecgController<ReceiptHeader, IRec
      * @return
      */
     @RequestMapping(value = "/exportReceiptDetail")
+    @RequiresPermissions("receiptDetail:export")
     public ModelAndView exportReceiptDetail(HttpServletRequest request, ReceiptDetail receiptDetail) {
         // Step.1 组装查询条件
         QueryWrapper<ReceiptDetail> queryWrapper = QueryGenerator.initQueryWrapper(receiptDetail, request.getParameterMap());
@@ -318,6 +321,7 @@ public class ReceiptHeaderController extends JeecgController<ReceiptHeader, IRec
      * @return
      */
     @RequestMapping(value = "/importReceiptDetail/{mainId}")
+    @RequiresPermissions("receiptDetail:import")
     public Result<?> importReceiptDetail(HttpServletRequest request, HttpServletResponse response, @PathVariable("mainId") Integer mainId) {
         MultipartHttpServletRequest multipartRequest = (MultipartHttpServletRequest)request;
         Map<String, MultipartFile> fileMap = multipartRequest.getFileMap();
diff --git a/huaheng-wms-core/src/main/java/org/jeecg/modules/wms/shipment/shipmentContainerHeader/controller/ShipmentContainerHeaderController.java b/huaheng-wms-core/src/main/java/org/jeecg/modules/wms/shipment/shipmentContainerHeader/controller/ShipmentContainerHeaderController.java
index 36c3903..0a0ca3e 100644
--- a/huaheng-wms-core/src/main/java/org/jeecg/modules/wms/shipment/shipmentContainerHeader/controller/ShipmentContainerHeaderController.java
+++ b/huaheng-wms-core/src/main/java/org/jeecg/modules/wms/shipment/shipmentContainerHeader/controller/ShipmentContainerHeaderController.java
@@ -145,6 +145,7 @@ public class ShipmentContainerHeaderController extends JeecgController<ShipmentC
      * @return
      */
     @RequestMapping(value = "/exportXls")
+    @RequiresPermissions("shipmentContainerHeader:export")
     public ModelAndView exportXls(HttpServletRequest request, ShipmentContainerHeader shipmentContainerHeader) {
         return super.exportXls(request, shipmentContainerHeader, ShipmentContainerHeader.class, "出库组盘");
     }
@@ -154,6 +155,7 @@ public class ShipmentContainerHeaderController extends JeecgController<ShipmentC
      * @return
      */
     @RequestMapping(value = "/importExcel", method = RequestMethod.POST)
+    @RequiresPermissions("shipmentContainerHeader:import")
     public Result<?> importExcel(HttpServletRequest request, HttpServletResponse response) {
         return super.importExcel(request, response, ShipmentContainerHeader.class);
     }
@@ -239,6 +241,7 @@ public class ShipmentContainerHeaderController extends JeecgController<ShipmentC
      * @return
      */
     @RequestMapping(value = "/exportShipmentContainerDetail")
+    @RequiresPermissions("shipmentContainerDetail:export")
     public ModelAndView exportShipmentContainerDetail(HttpServletRequest request, ShipmentContainerDetail shipmentContainerDetail) {
         // Step.1 组装查询条件
         QueryWrapper<ShipmentContainerDetail> queryWrapper = QueryGenerator.initQueryWrapper(shipmentContainerDetail, request.getParameterMap());
@@ -271,6 +274,7 @@ public class ShipmentContainerHeaderController extends JeecgController<ShipmentC
      * @return
      */
     @RequestMapping(value = "/importShipmentContainerDetail/{mainId}")
+    @RequiresPermissions("shipmentContainerDetail:import")
     public Result<?> importShipmentContainerDetail(HttpServletRequest request, HttpServletResponse response, @PathVariable("mainId") Integer mainId) {
         MultipartHttpServletRequest multipartRequest = (MultipartHttpServletRequest)request;
         Map<String, MultipartFile> fileMap = multipartRequest.getFileMap();
diff --git a/huaheng-wms-core/src/main/java/org/jeecg/modules/wms/shipment/shipmentHeader/controller/ShipmentHeaderController.java b/huaheng-wms-core/src/main/java/org/jeecg/modules/wms/shipment/shipmentHeader/controller/ShipmentHeaderController.java
index f13b87c..22ac8b3 100644
--- a/huaheng-wms-core/src/main/java/org/jeecg/modules/wms/shipment/shipmentHeader/controller/ShipmentHeaderController.java
+++ b/huaheng-wms-core/src/main/java/org/jeecg/modules/wms/shipment/shipmentHeader/controller/ShipmentHeaderController.java
@@ -173,6 +173,7 @@ public class ShipmentHeaderController extends JeecgController<ShipmentHeader, IS
      * @return
      */
     @RequestMapping(value = "/exportXls")
+    @RequiresPermissions("shipmentHeader:export")
     public ModelAndView exportXls(HttpServletRequest request, ShipmentHeader shipmentHeader) {
         return super.exportXls(request, shipmentHeader, ShipmentHeader.class, "出库单");
     }
@@ -182,6 +183,7 @@ public class ShipmentHeaderController extends JeecgController<ShipmentHeader, IS
      * @return
      */
     @RequestMapping(value = "/importExcel", method = RequestMethod.POST)
+    @RequiresPermissions("shipmentHeader:import")
     public Result<?> importExcel(HttpServletRequest request, HttpServletResponse response) {
         return super.importExcel(request, response, ShipmentHeader.class);
     }
@@ -298,6 +300,7 @@ public class ShipmentHeaderController extends JeecgController<ShipmentHeader, IS
      * @return
      */
     @RequestMapping(value = "/exportShipmentDetail")
+    @RequiresPermissions("shipmentDetail:export")
     public ModelAndView exportShipmentDetail(HttpServletRequest request, ShipmentDetail shipmentDetail) {
         // Step.1 组装查询条件
         QueryWrapper<ShipmentDetail> queryWrapper = QueryGenerator.initQueryWrapper(shipmentDetail, request.getParameterMap());
@@ -330,6 +333,7 @@ public class ShipmentHeaderController extends JeecgController<ShipmentHeader, IS
      * @return
      */
     @RequestMapping(value = "/importShipmentDetail/{mainId}")
+    @RequiresPermissions("shipmentDetail:import")
     public Result<?> importShipmentDetail(HttpServletRequest request, HttpServletResponse response, @PathVariable("mainId") Integer mainId) {
         MultipartHttpServletRequest multipartRequest = (MultipartHttpServletRequest)request;
         Map<String, MultipartFile> fileMap = multipartRequest.getFileMap();
diff --git a/huaheng-wms-core/src/main/java/org/jeecg/modules/wms/stocktaking/cycleCountHeader/controller/CycleCountHeaderController.java b/huaheng-wms-core/src/main/java/org/jeecg/modules/wms/stocktaking/cycleCountHeader/controller/CycleCountHeaderController.java
index d44b1df..3220aab 100644
--- a/huaheng-wms-core/src/main/java/org/jeecg/modules/wms/stocktaking/cycleCountHeader/controller/CycleCountHeaderController.java
+++ b/huaheng-wms-core/src/main/java/org/jeecg/modules/wms/stocktaking/cycleCountHeader/controller/CycleCountHeaderController.java
@@ -5,6 +5,7 @@ import java.util.Arrays;
 import javax.servlet.http.HttpServletRequest;
 import javax.servlet.http.HttpServletResponse;
 
+import org.apache.shiro.authz.annotation.RequiresPermissions;
 import org.jeecg.common.api.vo.Result;
 import org.jeecg.common.aspect.annotation.AutoLog;
 import org.jeecg.common.system.base.controller.JeecgController;
@@ -134,6 +135,7 @@ public class CycleCountHeaderController extends JeecgController<CycleCountHeader
      * @param cycleCountHeader
      */
     @RequestMapping(value = "/exportXls")
+    @RequiresPermissions("cycleCountHeader:export")
     public ModelAndView exportXls(HttpServletRequest request, CycleCountHeader cycleCountHeader) {
         return super.exportXls(request, cycleCountHeader, CycleCountHeader.class, "盘点主表");
     }
@@ -145,6 +147,7 @@ public class CycleCountHeaderController extends JeecgController<CycleCountHeader
      * @return
      */
     @RequestMapping(value = "/importExcel", method = RequestMethod.POST)
+    @RequiresPermissions("cycleCountHeader:export")
     public Result<?> importExcel(HttpServletRequest request, HttpServletResponse response) {
         return super.importExcel(request, response, CycleCountHeader.class);
     }
diff --git a/huaheng-wms-core/src/main/java/org/jeecg/modules/wms/task/agvTask/controller/AgvTaskController.java b/huaheng-wms-core/src/main/java/org/jeecg/modules/wms/task/agvTask/controller/AgvTaskController.java
index 616e5cb..6f16107 100644
--- a/huaheng-wms-core/src/main/java/org/jeecg/modules/wms/task/agvTask/controller/AgvTaskController.java
+++ b/huaheng-wms-core/src/main/java/org/jeecg/modules/wms/task/agvTask/controller/AgvTaskController.java
@@ -132,6 +132,7 @@ public class AgvTaskController extends JeecgController<AgvTask, IAgvTaskService>
      * @param agvTask
      */
     @RequestMapping(value = "/exportXls")
+    @RequiresPermissions("agvTask:export")
     public ModelAndView exportXls(HttpServletRequest request, AgvTask agvTask) {
         return super.exportXls(request, agvTask, AgvTask.class, "AGV任务");
     }
@@ -143,6 +144,7 @@ public class AgvTaskController extends JeecgController<AgvTask, IAgvTaskService>
      * @return
      */
     @RequestMapping(value = "/importExcel", method = RequestMethod.POST)
+    @RequiresPermissions("agvTask:import")
     public Result<?> importExcel(HttpServletRequest request, HttpServletResponse response) {
         return super.importExcel(request, response, AgvTask.class);
     }