Sfoglia il codice sorgente

代码生成模板调整修复

Yue 2 anni fa
parent
commit
1da7c94197

+ 1 - 1
SERVER/VberAdminPlus/vber-generator/src/main/java/com/vber/generator/controller/GenController.java

@@ -86,7 +86,7 @@ public class GenController extends BaseController {
     }
     }
 
 
     /**
     /**
-     * 生成权限名单
+     * 生成新项目
      */
      */
     @PostMapping("/projectReactor")
     @PostMapping("/projectReactor")
     public R<Void> projectReactor(@Validated ProjectInfo projectInfo) {
     public R<Void> projectReactor(@Validated ProjectInfo projectInfo) {

+ 4 - 3
SERVER/VberAdminPlus/vber-generator/src/main/java/com/vber/generator/service/impl/GenMenuServiceImpl.java

@@ -77,7 +77,7 @@ public class GenMenuServiceImpl implements IGenMenuService {
 
 
     private void generatorStart() {
     private void generatorStart() {
         perms = new ArrayList();
         perms = new ArrayList();
-        vuePermissionStr = "/**\n\n";
+        vuePermissionStr = "/**\n\n\n";
         vuePermissionStr += "class permissionName {\n";
         vuePermissionStr += "class permissionName {\n";
 
 
         javaPermissionStr = "";
         javaPermissionStr = "";
@@ -93,9 +93,10 @@ public class GenMenuServiceImpl implements IGenMenuService {
     }
     }
 
 
     private void generatorEnd() {
     private void generatorEnd() {
-        vuePermissionStr += "}\n";
+        vuePermissionStr += "}\n\n";
+        vuePermissionStr += "//eslint-disable-next-line new-cap\n";
         vuePermissionStr += "export const permissionNames = new permissionName()\n";
         vuePermissionStr += "export const permissionNames = new permissionName()\n";
-        vuePermissionStr += "export default permissionName\n\n";
+        vuePermissionStr += "export default permissionName\n\n\n";
         vuePermissionStr += "*/\n";
         vuePermissionStr += "*/\n";
 
 
         javaPermissionStr += "}\n";
         javaPermissionStr += "}\n";

+ 3 - 1
SERVER/VberAdminPlus/vber-generator/src/main/resources/vm/ts/api.ts.vm

@@ -8,7 +8,8 @@ class ${businessName}Api {
     list${BusinessName} = (query: any) => {
     list${BusinessName} = (query: any) => {
         return Rs.get({
         return Rs.get({
             url: '/${moduleName}/${businessName}/list',
             url: '/${moduleName}/${businessName}/list',
-            params: query
+            params: query,
+            loading: false
         })
         })
     }
     }
 
 
@@ -16,6 +17,7 @@ class ${businessName}Api {
     get${BusinessName} = (${pkColumn.javaField}: string) => {
     get${BusinessName} = (${pkColumn.javaField}: string) => {
         return Rs.get({
         return Rs.get({
             url: '/${moduleName}/${businessName}/' + ${pkColumn.javaField},
             url: '/${moduleName}/${businessName}/' + ${pkColumn.javaField},
+            loading: false
         })
         })
     }
     }
 
 

+ 86 - 116
SERVER/VberAdminPlus/vber-generator/src/main/resources/vm/vue/index-tree.vue.vm

@@ -1,12 +1,7 @@
-
-
 <script setup lang="ts" name="${BusinessName}">
 <script setup lang="ts" name="${BusinessName}">
-  import apis from "@/api"
-  import message from "@/core/utils/message"
-  import { permissionNames } from "@/core/services/PermissionNames"
-  //import VbUpload from "@/components/upload/VbUpload.vue"
-  //import VbEditor from "@/components/editor/VbEditor.vue"
-
+  import apis from "@a"
+  import {permissionNames} from "@@/services/PermissionNames"
+      #set($javaPkField="")
 
 
       #if(${dicts} != '')
       #if(${dicts} != '')
           #set($dictsNoSymbol=$dicts.replace("'", ""))
           #set($dictsNoSymbol=$dicts.replace("'", ""))
@@ -16,7 +11,7 @@
   const tableRef = ref()
   const tableRef = ref()
   const modalRef = ref()
   const modalRef = ref()
   const opts = reactive({
   const opts = reactive({
-    columns:[
+    columns: [
         #foreach ($column in $columns)
         #foreach ($column in $columns)
             #set($javaField=$column.javaField)
             #set($javaField=$column.javaField)
             #set($parentheseIndex=$column.columnComment.indexOf("("))
             #set($parentheseIndex=$column.columnComment.indexOf("("))
@@ -26,34 +21,35 @@
                 #set($comment=$column.columnComment)
                 #set($comment=$column.columnComment)
             #end
             #end
             #if($column.pk)
             #if($column.pk)
-              { field: "$javaField", name: "$comment", width: 100, isSort: true, visible:true },
+                #set($javaPkField=$javaField)
+              {field: "$javaField", name: "$comment", width: 100, isSort: true, visible: true},
             #elseif($column.list)
             #elseif($column.list)
                 #if($javaField.indexOf("Time")==${javaField.length()} - 4)
                 #if($javaField.indexOf("Time")==${javaField.length()} - 4)
-                  { field: "$javaField", name: "$comment", visible:true, isSort: true, width:185 },
+                  {field: "$javaField", name: "$comment", visible: true, isSort: true, width: 185},
                 #elseif($javaField=="remark")
                 #elseif($javaField=="remark")
-                  { field: "$javaField", name: "$comment", visible:true, tooltip:true },
+                  {field: "$javaField", name: "$comment", visible: true, tooltip: true},
                 #elseif($column.dictType)
                 #elseif($column.dictType)
-                  { field: "$javaField", name: "$comment", visible:true, width:100 },
+                  {field: "$javaField", name: "$comment", visible: true, width: 100},
                 #else
                 #else
-                  { field: "$javaField", name: "$comment", visible:true },
+                  {field: "$javaField", name: "$comment", visible: true},
                 #end
                 #end
             #end
             #end
         #end
         #end
-      { field: "actions", name: `操作`, width: 150 },
+      {field: "actions", name: `操作`, width: 150},
     ],
     ],
     queryParams: {
     queryParams: {
         #foreach ($column in $columns)
         #foreach ($column in $columns)
             #if($column.query)
             #if($column.query)
                 #if($column.htmlType == "datetime" && $column.queryType == "BETWEEN")
                 #if($column.htmlType == "datetime" && $column.queryType == "BETWEEN")
                     #set($AttrName=$column.javaField.substring(0,1).toUpperCase() + ${column.javaField.substring(1)})
                     #set($AttrName=$column.javaField.substring(0,1).toUpperCase() + ${column.javaField.substring(1)})
-                  dateRange${AttrName}:undefined,
+                  dateRange${AttrName}: undefined,
                 #else
                 #else
                         $column.javaField: undefined,
                         $column.javaField: undefined,
                 #end
                 #end
             #end
             #end
         #end
         #end
     },
     },
-    searchFormItems:[
+    searchFormItems: [
         #foreach($column in $columns)
         #foreach($column in $columns)
             #if($column.query)
             #if($column.query)
                 #set($dictType=$column.dictType)
                 #set($dictType=$column.dictType)
@@ -94,7 +90,7 @@
                       #else
                       #else
                         component: "VS",
                         component: "VS",
                         placeholder: "请选择${comment}",
                         placeholder: "请选择${comment}",
-                        data:[],
+                        data: [],
                       #end
                       #end
                   #elseif($column.htmlType == "datetime")
                   #elseif($column.htmlType == "datetime")
                       #if( "BETWEEN" == $column.queryType)
                       #if( "BETWEEN" == $column.queryType)
@@ -102,7 +98,7 @@
                         placeholder: "请选择${comment}",
                         placeholder: "请选择${comment}",
                         props: {
                         props: {
                           type: "daterange",
                           type: "daterange",
-                          valueFormat:"YYYY-MM-DD",
+                          valueFormat: "YYYY-MM-DD",
                           rangeSeparator: "-",
                           rangeSeparator: "-",
                           startPlaceholder: "开始日期",
                           startPlaceholder: "开始日期",
                           endPlaceholder: "结束日期",
                           endPlaceholder: "结束日期",
@@ -118,26 +114,26 @@
                         placeholder: "请选择${comment}",
                         placeholder: "请选择${comment}",
                         props: {
                         props: {
                           type: "date",
                           type: "date",
-                          valueFormat:"YYYY-MM-DD",
+                          valueFormat: "YYYY-MM-DD",
                         },
                         },
                       #end
                       #end
                   #end
                   #end
               },
               },
             #end
             #end
         #end
         #end
-    ],
+    ] as any,
     permission: permissionNames.${ModuleName}${BusinessName}List,
     permission: permissionNames.${ModuleName}${BusinessName}List,
-    handleBtns: [
-      {
-        key: "handleUpdate",
-        show: false,
+    handleBtns: [],
+    handleFuns: {
+      handleUpdate: () => {
+        const row = tableRef.value.getSelected()
+        handleUpdate(row)
       },
       },
-      {
-        key: "handleDelete",
-        show: false,
+      handleDelete: () => {
+        const rows = tableRef.value.getSelecteds()
+        handleDelete(rows)
       },
       },
-    ],
-    handleFuns: {},
+    },
     customBtns: [],
     customBtns: [],
     tableListFun: getTableData,
     tableListFun: getTableData,
     getEntityFun: apis.${moduleName}.${businessName}Api.get${BusinessName},
     getEntityFun: apis.${moduleName}.${businessName}Api.get${BusinessName},
@@ -145,7 +141,7 @@
     exportUrl: apis.${moduleName}.${businessName}Api.exportUrl,
     exportUrl: apis.${moduleName}.${businessName}Api.exportUrl,
     exportName: "${BusinessName}",
     exportName: "${BusinessName}",
     modalTitle: "${functionName}",
     modalTitle: "${functionName}",
-    formItems:[
+    formItems: [
         #foreach($column in $columns)
         #foreach($column in $columns)
             #set($field=$column.javaField)
             #set($field=$column.javaField)
             #if($column.insert && !$column.pk)
             #if($column.insert && !$column.pk)
@@ -173,12 +169,12 @@
                         component: VbUpload,
                         component: VbUpload,
                       #elseif($column.htmlType == "upload")
                       #elseif($column.htmlType == "upload")
                         component: VbUpload,
                         component: VbUpload,
-                        props:{
+                        props: {
                           uploadType: "file",
                           uploadType: "file",
                         },
                         },
                       #elseif($column.htmlType == "summernote"||$column.htmlType == "editor")
                       #elseif($column.htmlType == "summernote"||$column.htmlType == "editor")
-                        component: VbEditor,
-                        props:{
+                        component: "VE",
+                        props: {
                           minHeight: 192,
                           minHeight: 192,
                         },
                         },
                       #elseif($column.htmlType == "select")
                       #elseif($column.htmlType == "select")
@@ -192,7 +188,7 @@
                           #else
                           #else
                             component: "VS",
                             component: "VS",
                             placeholder: "请选择${comment}",
                             placeholder: "请选择${comment}",
-                            data:[],
+                            data: [],
                           #end
                           #end
                       #elseif($column.htmlType == "checkbox")
                       #elseif($column.htmlType == "checkbox")
                           #if( "" != $dictType)
                           #if( "" != $dictType)
@@ -203,7 +199,7 @@
                             },
                             },
                           #else
                           #else
                             component: "C",
                             component: "C",
-                            data:[],
+                            data: [],
                           #end
                           #end
                       #elseif($column.htmlType == "radio")
                       #elseif($column.htmlType == "radio")
                           #if( "" != $dictType)
                           #if( "" != $dictType)
@@ -214,14 +210,14 @@
                             },
                             },
                           #else
                           #else
                             component: "R",
                             component: "R",
-                            data:[],
+                            data: [],
                           #end
                           #end
                       #elseif($column.htmlType == "datetime")
                       #elseif($column.htmlType == "datetime")
                         component: "D",
                         component: "D",
                         props: {
                         props: {
-                          placeholder:"请选择${comment}",
+                          placeholder: "请选择${comment}",
                           type: "date",
                           type: "date",
-                          valueFormat:"YYYY-MM-DD",
+                          valueFormat: "YYYY-MM-DD",
                         },
                         },
                       #elseif($column.htmlType == "textarea")
                       #elseif($column.htmlType == "textarea")
                         placeholder: "请输入${comment}",
                         placeholder: "请输入${comment}",
@@ -235,11 +231,11 @@
                 #end
                 #end
             #end
             #end
         #end
         #end
-    ],
+    ] as any,
     resetForm: () => {
     resetForm: () => {
       form.value = emptyFormData.value
       form.value = emptyFormData.value
     },
     },
-    labelWidth:"80px",
+    labelWidth: "80px",
     emptyFormData: {
     emptyFormData: {
         #foreach($column in $columns)
         #foreach($column in $columns)
             #set($field=$column.javaField)
             #set($field=$column.javaField)
@@ -251,9 +247,7 @@
         #end
         #end
     },
     },
   });
   });
-  const { queryParams, emptyFormData } = toRefs(opts)
-
-  const ${businessName}Options = ref()
+  const {queryParams, emptyFormData} = toRefs(opts)
   const form = ref<any>(emptyFormData.value)
   const form = ref<any>(emptyFormData.value)
 
 
   /** 搜索按钮操作 */
   /** 搜索按钮操作 */
@@ -264,7 +258,7 @@
               #if($AttrName=="CreateTime")
               #if($AttrName=="CreateTime")
                 addDateRange(queryParams.value, queryParams.value.dateRange${AttrName})
                 addDateRange(queryParams.value, queryParams.value.dateRange${AttrName})
               #else
               #else
-                addDateRange(queryParams.value, queryParams.value.dateRange${AttrName},"${AttrName}")
+                addDateRange(queryParams.value, queryParams.value.dateRange${AttrName}, "${AttrName}")
               #end
               #end
           #end
           #end
       #end
       #end
@@ -280,7 +274,7 @@
               #if($AttrName=="CreateTime")
               #if($AttrName=="CreateTime")
                 addDateRange(queryParams.value, queryParams.value.dateRange${AttrName})
                 addDateRange(queryParams.value, queryParams.value.dateRange${AttrName})
               #else
               #else
-                addDateRange(queryParams.value, queryParams.value.dateRange${AttrName},"${AttrName}")
+                addDateRange(queryParams.value, queryParams.value.dateRange${AttrName}, "${AttrName}")
               #end
               #end
           #else
           #else
           #end
           #end
@@ -290,7 +284,7 @@
 
 
   /** 修改按钮操作 */
   /** 修改按钮操作 */
   function handleUpdate(row: any) {
   function handleUpdate(row: any) {
-    tableRef.value.defaultHandleFuns["handleUpdate"]("", row)
+    tableRef.value.defaultHandleFuns.handleUpdate("", row)
       #foreach ($column in $columns)
       #foreach ($column in $columns)
           #if($column.htmlType == "checkbox")
           #if($column.htmlType == "checkbox")
             form.value.$column.javaField = form.value.${column.javaField}.split(",");
             form.value.$column.javaField = form.value.${column.javaField}.split(",");
@@ -299,8 +293,8 @@
   }
   }
 
 
   /** 删除按钮操作 */
   /** 删除按钮操作 */
-  function handleDelete(rows: Array<any>) {
-    tableRef.value.defaultHandleFuns["handleDelete"]("", rows)
+  function handleDelete(rows: any[]) {
+    tableRef.value.defaultHandleFuns.handleDelete("", rows)
   }
   }
 
 
   /** 提交按钮 */
   /** 提交按钮 */
@@ -318,19 +312,10 @@
     });
     });
   }
   }
 
 
-  function getTreeselect() {
-          ${businessName}Options.value = []
-    apis.${moduleName}.${businessName}Api.list${BusinessName}({}).then((response) => {
-      const ${businessName}: any = { ${businessName}Id: 0, ${businessName}Name: "主类目", children: [] }
-      ${businessName}.children = handleTree(response.data, "menuId")
-      ${businessName}Options.value.push(${businessName})
-    })
-  }
-
   function getTableData(q: any) {
   function getTableData(q: any) {
     return new Promise((resolve) => {
     return new Promise((resolve) => {
       apis.${moduleName}.${businessName}Api.list${BusinessName}(q).then((res) => {
       apis.${moduleName}.${businessName}Api.list${BusinessName}(q).then((res) => {
-        res.data = handleTree(res.data, "${businessName}Id")
+        res.data = handleTree(res.data, "$treeCode")
         resolve(res)
         resolve(res)
       })
       })
     })
     })
@@ -338,103 +323,88 @@
 </script>
 </script>
 <template>
 <template>
   <div class="app-container">
   <div class="app-container">
-    <VbTreeTable
+    <VbDataTable
         ref="tableRef"
         ref="tableRef"
-        keyField="${businessName}Id"
-        iconField="${businessName}Name"
-        parentField="parentId"
+        :is-tree="true"
+        keyField="${treeCode}"
+        iconField="${treeName}"
+        parentField="${treeParentCode}"
         childrenField="children"
         childrenField="children"
-        :no-page="true"
-        :expand-depth="1"
-        :interval-left="10"
-        :show-right-column-btn="false"
-        :has-checkbox="false"
+        :columns="opts.columns"
         :handle-perm="opts.permission"
         :handle-perm="opts.permission"
         :handle-btns="opts.handleBtns"
         :handle-btns="opts.handleBtns"
         :handle-funs="opts.handleFuns"
         :handle-funs="opts.handleFuns"
         :search-form-items="opts.searchFormItems"
         :search-form-items="opts.searchFormItems"
-        :header="opts.columns"
         :custom-btns="opts.customBtns"
         :custom-btns="opts.customBtns"
         :remote-fun="opts.tableListFun"
         :remote-fun="opts.tableListFun"
         :get-entiy-fun="opts.getEntityFun"
         :get-entiy-fun="opts.getEntityFun"
         :delete-entiy-fun="opts.deleteEntityFun"
         :delete-entiy-fun="opts.deleteEntityFun"
+        :export-url="opts.exportUrl"
+        :export-name="opts.exportName"
         :modal="modalRef"
         :modal="modalRef"
         :reset-form-fun="opts.resetForm"
         :reset-form-fun="opts.resetForm"
         v-model:form-data="form"
         v-model:form-data="form"
         :query-params="queryParams"
         :query-params="queryParams"
+        :check-multiple="true"
         :reset-search-form-fun="resetQuery"
         :reset-search-form-fun="resetQuery"
-        :custom-search-fun="handleQuery"
-    >
-#foreach($column in $columns)
-    #set($javaField=$column.javaField)
-    #set($parentheseIndex=$column.columnComment.indexOf("("))
-    #if($parentheseIndex != -1)
-        #set($comment=$column.columnComment.substring(0, $parentheseIndex))
-    #else
-        #set($comment=$column.columnComment)
-    #end
-    #if($column.list && $column.htmlType == "imageUpload")
-      <template #${javaField}="{ row }">
-        <image-preview :src="row.${javaField}" :width="50" :height="50"/>
-      </template>
-    #elseif($column.list && "" != $column.dictType)
-      <template #${javaField}="{ row }">
-          #if($column.htmlType == "checkbox")
-            <DictTag type="${column.dictType}" :value="row.${javaField} ? row.${javaField}.split(',') : []"></DictTag>
-          #else
-            <DictTag type="${column.dictType}" :value="row.${javaField}"></DictTag>
-          #end
-      </template>
-    #end
-#end
+        :custom-search-fun="handleQuery">
+        #foreach($column in $columns)
+            #set($javaField=$column.javaField)
+            #set($parentheseIndex=$column.columnComment.indexOf("("))
+            #if($parentheseIndex != -1)
+                #set($comment=$column.columnComment.substring(0, $parentheseIndex))
+            #else
+                #set($comment=$column.columnComment)
+            #end
+            #if($column.list && $column.htmlType == "imageUpload")
+              <template #${javaField}="{ row }">
+                <image-preview :src="row.${javaField}" :width="50" :height="50"/>
+              </template>
+            #elseif($column.list && "" != $column.dictType)
+              <template #${javaField}="{ row }">
+                  #if($column.htmlType == "checkbox")
+                    <DictTag type="${column.dictType}"
+                             :value="row.${javaField} ? row.${javaField}.split(',') : []"></DictTag>
+                  #else
+                    <DictTag type="${column.dictType}" :value="row.${javaField}"></DictTag>
+                  #end
+              </template>
+            #end
+        #end
       <template #actions="{ row }">
       <template #actions="{ row }">
-        <vb-tooltip content="新增" placement="top" >
-          <el-button
-              link
-              type="primary"
-              @click="handleCreate(row)"
-              v-hasPermission="permissionNames.${ModuleName}${BusinessName}Add"
-          >
-            <template #icon>
-              <KTIcon icon-name="plus-square" icon-type="duotone" class="fs-3"></KTIcon>
-            </template>
-          </el-button>
-        </vb-tooltip>
-        <vb-tooltip content="修改" placement="top" >
+        <vb-tooltip content="修改" placement="top">
           <el-button
           <el-button
               link
               link
               type="primary"
               type="primary"
               @click="handleUpdate(row)"
               @click="handleUpdate(row)"
-              v-hasPermission="permissionNames.${ModuleName}${BusinessName}Edit"
-          >
+              v-hasPermission="permissionNames.${ModuleName}${BusinessName}Edit">
             <template #icon>
             <template #icon>
-              <KTIcon icon-name="notepad-edit" icon-type="duotone" class="fs-3"></KTIcon>
+              <VbIcon icon-name="notepad-edit" icon-type="duotone" class="fs-3"></VbIcon>
             </template>
             </template>
           </el-button>
           </el-button>
         </vb-tooltip>
         </vb-tooltip>
-        <vb-tooltip content="删除" placement="top" >
+        <vb-tooltip content="删除" placement="top">
           <el-button
           <el-button
               link
               link
               type="primary"
               type="primary"
               @click="handleDelete([row])"
               @click="handleDelete([row])"
-              v-hasPermission="permissionNames.${ModuleName}${BusinessName}Remove"
-          >
+              v-hasPermission="permissionNames.${ModuleName}${BusinessName}Remove">
             <template #icon>
             <template #icon>
-              <KTIcon icon-name="trash-square" icon-type="duotone" class="fs-3"></KTIcon>
+              <VbIcon icon-name="trash-square" icon-type="duotone" class="fs-3"></VbIcon>
             </template>
             </template>
           </el-button>
           </el-button>
         </vb-tooltip>
         </vb-tooltip>
       </template>
       </template>
-    </VbTreeTable>
+    </VbDataTable>
     <VbModal
     <VbModal
         v-model:modal="modalRef"
         v-model:modal="modalRef"
         :title="opts.modalTitle"
         :title="opts.modalTitle"
         :form-data="form"
         :form-data="form"
         :form-items="opts.formItems"
         :form-items="opts.formItems"
         :label-width="opts.labelWidth"
         :label-width="opts.labelWidth"
-        @confirm="submitForm"
         append-to-body
         append-to-body
-    >
+        @confirm="submitForm">
     </VbModal>
     </VbModal>
   </div>
   </div>
 </template>
 </template>
+

+ 329 - 336
SERVER/VberAdminPlus/vber-generator/src/main/resources/vm/vue/index.vue.vm

@@ -1,331 +1,327 @@
-
-
 <script setup lang="ts" name="${BusinessName}">
 <script setup lang="ts" name="${BusinessName}">
-import apis from "@/api"
-import message from "@/core/utils/message"
-import { permissionNames } from "@/core/services/PermissionNames"
-//import VbUpload from "@/components/upload/VbUpload.vue"
-//import VbEditor from "@/components/editor/VbEditor.vue"
+  import apis from "@a"
+  import {permissionNames} from "@@/services/PermissionNames"
 
 
 
 
-#if(${dicts} != '')
-#set($dictsNoSymbol=$dicts.replace("'", ""))
-const { ${dictsNoSymbol} } = useDict(${dicts});
-#end
+      #if(${dicts} != '')
+          #set($dictsNoSymbol=$dicts.replace("'", ""))
+      const { ${dictsNoSymbol} } = useDict(${dicts});
+      #end
 
 
-const tableRef = ref()
-const modalRef = ref()
-const opts = reactive({
-  columns:[
-#foreach ($column in $columns)
-#set($javaField=$column.javaField)
-#set($parentheseIndex=$column.columnComment.indexOf("("))
-#if($parentheseIndex != -1)
-    #set($comment=$column.columnComment.substring(0, $parentheseIndex))
-#else
-    #set($comment=$column.columnComment)
-#end
-#if($column.pk)
-    { field: "$javaField", name: "$comment", width: 100, isSort: true, visible:true },
-#elseif($column.list)
-#if($javaField.indexOf("Time")==${javaField.length()} - 4)
-    { field: "$javaField", name: "$comment", visible:true, isSort: true, width:185 },
-#elseif($javaField=="remark")
-    { field: "$javaField", name: "$comment", visible:true, tooltip:true },
-#elseif($column.dictType)
-    { field: "$javaField", name: "$comment", visible:true, width:100 },
-#else
-    { field: "$javaField", name: "$comment", visible:true },
-#end
-#end
-#end
-    { field: "actions", name: `操作`, width: 150 },
-  ],
-  queryParams: {
-#foreach ($column in $columns)
-#if($column.query)
-  #if($column.htmlType == "datetime" && $column.queryType == "BETWEEN")
-  #set($AttrName=$column.javaField.substring(0,1).toUpperCase() + ${column.javaField.substring(1)})
-    dateRange${AttrName}:undefined,
-  #else
-    $column.javaField: undefined,
-  #end
-#end
-#end
-  },
-  searchFormItems:[
-#foreach($column in $columns)
-#if($column.query)
-    #set($dictType=$column.dictType)
-    #set($AttrName=$column.javaField.substring(0,1).toUpperCase() + ${column.javaField.substring(1)})
-    #set($parentheseIndex=$column.columnComment.indexOf("("))
-    #if($parentheseIndex != -1)
-        #set($comment=$column.columnComment.substring(0, $parentheseIndex))
-    #else
-        #set($comment=$column.columnComment)
-    #end
-    {
-    #if($column.htmlType == "datetime" && "BETWEEN" == $column.queryType)
-      field: "dateRange${AttrName}",
-    #else
-      field: "${column.javaField}",
-    #end
-      label: "${comment}",
-      class: "w-100",
-      required: false,
-    #if($column.htmlType == "input")
-      placeholder: "请输入${comment}",
-      component: "I",
-      listeners: {
-        keyup: (e: KeyboardEvent) => {
-          if (e.code == "Enter") {
-            handleQuery()
-          }
-        },
-      },
-    #elseif($column.htmlType == "select"|| $column.htmlType == "radio")
-    #if( "" != $dictType)
-      component: "Dict",
-      props: {
-        placeholder: "请选择${comment}",
-        dictType: "${dictType}",
-        type: "select",
-      },
-    #else
-      component: "VS",
-      placeholder: "请选择${comment}",
-      data:[],
-    #end
-    #elseif($column.htmlType == "datetime")
-    #if( "BETWEEN" == $column.queryType)
-      component: "D",
-      placeholder: "请选择${comment}",
-      props: {
-        type: "daterange",
-        valueFormat:"YYYY-MM-DD",
-        rangeSeparator: "-",
-        startPlaceholder: "开始日期",
-        endPlaceholder: "结束日期",
-      },
-      listeners: {
-        change: (v: any) => {
-          queryParams.value.dateRange${AttrName} = v
-        },
+  const tableRef = ref()
+  const modalRef = ref()
+  const opts = reactive({
+    columns: [
+        #foreach ($column in $columns)
+            #set($javaField=$column.javaField)
+            #set($parentheseIndex=$column.columnComment.indexOf("("))
+            #if($parentheseIndex != -1)
+                #set($comment=$column.columnComment.substring(0, $parentheseIndex))
+            #else
+                #set($comment=$column.columnComment)
+            #end
+            #if($column.pk)
+              {field: "$javaField", name: "$comment", width: 100, isSort: true, visible: true},
+            #elseif($column.list)
+                #if($javaField.indexOf("Time")==${javaField.length()} - 4)
+                  {field: "$javaField", name: "$comment", visible: true, isSort: true, width: 185},
+                #elseif($javaField=="remark")
+                  {field: "$javaField", name: "$comment", visible: true, tooltip: true},
+                #elseif($column.dictType)
+                  {field: "$javaField", name: "$comment", visible: true, width: 100},
+                #else
+                  {field: "$javaField", name: "$comment", visible: true},
+                #end
+            #end
+        #end
+      {field: "actions", name: `操作`, width: 150},
+    ],
+    queryParams: {
+        #foreach ($column in $columns)
+            #if($column.query)
+                #if($column.htmlType == "datetime" && $column.queryType == "BETWEEN")
+                    #set($AttrName=$column.javaField.substring(0,1).toUpperCase() + ${column.javaField.substring(1)})
+                  dateRange${AttrName}: undefined,
+                #else
+                        $column.javaField: undefined,
+                #end
+            #end
+        #end
+    },
+    searchFormItems: [
+        #foreach($column in $columns)
+            #if($column.query)
+                #set($dictType=$column.dictType)
+                #set($AttrName=$column.javaField.substring(0,1).toUpperCase() + ${column.javaField.substring(1)})
+                #set($parentheseIndex=$column.columnComment.indexOf("("))
+                #if($parentheseIndex != -1)
+                    #set($comment=$column.columnComment.substring(0, $parentheseIndex))
+                #else
+                    #set($comment=$column.columnComment)
+                #end
+              {
+                  #if($column.htmlType == "datetime" && "BETWEEN" == $column.queryType)
+                    field: "dateRange${AttrName}",
+                  #else
+                    field: "${column.javaField}",
+                  #end
+                label: "${comment}",
+                class: "w-100",
+                required: false,
+                  #if($column.htmlType == "input")
+                    placeholder: "请输入${comment}",
+                    component: "I",
+                    listeners: {
+                      keyup: (e: KeyboardEvent) => {
+                        if (e.code == "Enter") {
+                          handleQuery()
+                        }
+                      },
+                    },
+                  #elseif($column.htmlType == "select"|| $column.htmlType == "radio")
+                      #if( "" != $dictType)
+                        component: "Dict",
+                        props: {
+                          placeholder: "请选择${comment}",
+                          dictType: "${dictType}",
+                          type: "select",
+                        },
+                      #else
+                        component: "VS",
+                        placeholder: "请选择${comment}",
+                        data: [],
+                      #end
+                  #elseif($column.htmlType == "datetime")
+                      #if( "BETWEEN" == $column.queryType)
+                        component: "D",
+                        placeholder: "请选择${comment}",
+                        props: {
+                          type: "daterange",
+                          valueFormat: "YYYY-MM-DD",
+                          rangeSeparator: "-",
+                          startPlaceholder: "开始日期",
+                          endPlaceholder: "结束日期",
+                        },
+                        listeners: {
+                          change: (v: any) => {
+                            queryParams.value.dateRange${AttrName} = v
+                          },
+                        },
+                        span: 5,
+                      #else
+                        component: "D",
+                        placeholder: "请选择${comment}",
+                        props: {
+                          type: "date",
+                          valueFormat: "YYYY-MM-DD",
+                        },
+                      #end
+                  #end
+              },
+            #end
+        #end
+    ] as any,
+    permission: permissionNames.${ModuleName}${BusinessName}List,
+    handleBtns: [],
+    handleFuns: {
+      handleUpdate: () => {
+        const row = tableRef.value.getSelected()
+        handleUpdate(row)
       },
       },
-      span: 5,
-    #else
-      component: "D",
-      placeholder: "请选择${comment}",
-      props: {
-        type: "date",
-        valueFormat:"YYYY-MM-DD",
+      handleDelete: () => {
+        const rows = tableRef.value.getSelecteds()
+        handleDelete(rows)
       },
       },
-    #end
-    #end
-    },
-    #end
-#end
-  ],
-  permission: permissionNames.${ModuleName}${BusinessName}List,
-  handleBtns: [],
-  handleFuns: {
-    handleUpdate: () => {
-      const row = tableRef.value.getSelected()
-      handleUpdate(row)
     },
     },
-    handleDelete: () => {
-      const rows = tableRef.value.getSelecteds()
-      handleDelete(rows)
+    customBtns: [],
+    tableListFun: apis.${moduleName}.${businessName}Api.list${BusinessName},
+    getEntityFun: apis.${moduleName}.${businessName}Api.get${BusinessName},
+    deleteEntityFun: apis.${moduleName}.${businessName}Api.del${BusinessName},
+    exportUrl: apis.${moduleName}.${businessName}Api.exportUrl,
+    exportName: "${BusinessName}",
+    modalTitle: "${functionName}",
+    formItems: [
+        #foreach($column in $columns)
+            #set($field=$column.javaField)
+            #if($column.insert && !$column.pk)
+                #if(($column.usableColumn) || (!$column.superColumn))
+                    #set($parentheseIndex=$column.columnComment.indexOf("("))
+                    #if($parentheseIndex != -1)
+                        #set($comment=$column.columnComment.substring(0, $parentheseIndex))
+                    #else
+                        #set($comment=$column.columnComment)
+                    #end
+                    #set($dictType=$column.dictType)
+                  {
+                    field: "${field}",
+                    label: "${comment}",
+                    class: "w-100",
+                      #if($column.required)
+                        required: true,
+                      #else
+                        required: false,
+                      #end
+                      #if($column.htmlType == "input")
+                        placeholder: "请输入${comment}",
+                        component: "I",
+                      #elseif($column.htmlType == "upload"||$column.htmlType == "image-upload")
+                        component: VbUpload,
+                      #elseif($column.htmlType == "upload")
+                        component: VbUpload,
+                        props: {
+                          uploadType: "file",
+                        },
+                      #elseif($column.htmlType == "summernote"||$column.htmlType == "editor")
+                        component: "VE",
+                        props: {
+                          minHeight: 192,
+                        },
+                      #elseif($column.htmlType == "select")
+                          #if( "" != $dictType)
+                            component: "Dict",
+                            props: {
+                              placeholder: "请选择${comment}",
+                              dictType: "${dictType}",
+                              type: "select",
+                            },
+                          #else
+                            component: "VS",
+                            placeholder: "请选择${comment}",
+                            data: [],
+                          #end
+                      #elseif($column.htmlType == "checkbox")
+                          #if( "" != $dictType)
+                            component: "Dict",
+                            props: {
+                              dictType: "${dictType}",
+                              type: "checkbox",
+                            },
+                          #else
+                            component: "C",
+                            data: [],
+                          #end
+                      #elseif($column.htmlType == "radio")
+                          #if( "" != $dictType)
+                            component: "Dict",
+                            props: {
+                              dictType: "${dictType}",
+                              type: "radio",
+                            },
+                          #else
+                            component: "R",
+                            data: [],
+                          #end
+                      #elseif($column.htmlType == "datetime")
+                        component: "D",
+                        props: {
+                          placeholder: "请选择${comment}",
+                          type: "date",
+                          valueFormat: "YYYY-MM-DD",
+                        },
+                      #elseif($column.htmlType == "textarea")
+                        placeholder: "请输入${comment}",
+                        component: "I",
+                        props: {
+                          type: "textarea",
+                          rows: 5,
+                        },
+                      #end
+                  },
+                #end
+            #end
+        #end
+    ] as any,
+    resetForm: () => {
+      form.value = emptyFormData.value
     },
     },
-  },
-  customBtns: [],
-  tableListFun: apis.${moduleName}.${businessName}Api.list${BusinessName},
-  getEntityFun: apis.${moduleName}.${businessName}Api.get${BusinessName},
-  deleteEntityFun: apis.${moduleName}.${businessName}Api.del${BusinessName},
-  exportUrl: apis.${moduleName}.${businessName}Api.exportUrl,
-  exportName: "${BusinessName}",
-  modalTitle: "${functionName}",
-  formItems:[
-#foreach($column in $columns)
-#set($field=$column.javaField)
-#if($column.insert && !$column.pk)
-#if(($column.usableColumn) || (!$column.superColumn))
-#set($parentheseIndex=$column.columnComment.indexOf("("))
-#if($parentheseIndex != -1)
-  #set($comment=$column.columnComment.substring(0, $parentheseIndex))
-#else
-  #set($comment=$column.columnComment)
-#end
-#set($dictType=$column.dictType)
-    {
-      field: "${field}",
-      label: "${comment}",
-      class: "w-100",
-#if($column.required)
-      required: true,
-#else
-      required: false,
-#end
-#if($column.htmlType == "input")
-      placeholder: "请输入${comment}",
-      component: "I",
-#elseif($column.htmlType == "upload"||$column.htmlType == "image-upload")
-      component: VbUpload,
-#elseif($column.htmlType == "upload")
-      component: VbUpload,
-      props:{
-        uploadType: "file",
-      },
-#elseif($column.htmlType == "summernote"||$column.htmlType == "editor")
-      component: VbEditor,
-      props:{
-        minHeight: 192,
-      },
-#elseif($column.htmlType == "select")
-    #if( "" != $dictType)
-      component: "Dict",
-      props: {
-        placeholder: "请选择${comment}",
-        dictType: "${dictType}",
-        type: "select",
-      },
-    #else
-      component: "VS",
-      placeholder: "请选择${comment}",
-      data:[],
-    #end
-#elseif($column.htmlType == "checkbox")
-    #if( "" != $dictType)
-      component: "Dict",
-      props: {
-        dictType: "${dictType}",
-        type: "checkbox",
-      },
-    #else
-      component: "C",
-      data:[],
-    #end
-#elseif($column.htmlType == "radio")
-    #if( "" != $dictType)
-      component: "Dict",
-      props: {
-        dictType: "${dictType}",
-        type: "radio",
-      },
-    #else
-      component: "R",
-      data:[],
-    #end
-#elseif($column.htmlType == "datetime")
-      component: "D",
-      props: {
-        placeholder:"请选择${comment}",
-        type: "date",
-        valueFormat:"YYYY-MM-DD",
-      },
-#elseif($column.htmlType == "textarea")
-      placeholder: "请输入${comment}",
-      component: "I",
-      props: {
-        type: "textarea",
-        rows: 5,
-      },
-#end
+    labelWidth: "80px",
+    emptyFormData: {
+        #foreach($column in $columns)
+            #set($field=$column.javaField)
+            #if($column.insert && !$column.pk)
+                #if(($column.usableColumn) || (!$column.superColumn))
+                        $column.javaField: undefined,
+                #end
+            #end
+        #end
     },
     },
-#end
-#end
-#end
-  ],
-  resetForm: () => {
-    form.value = emptyFormData.value
-  },
-  labelWidth:"80px",
-  emptyFormData: {
-      #foreach($column in $columns)
-          #set($field=$column.javaField)
-          #if($column.insert && !$column.pk)
-              #if(($column.usableColumn) || (!$column.superColumn))
-                      $column.javaField: undefined,
+  });
+  const {queryParams, emptyFormData} = toRefs(opts)
+  const form = ref<any>(emptyFormData.value)
+
+  /** 搜索按钮操作 */
+  function handleQuery() {
+      #foreach ($column in $columns)
+          #if($column.htmlType == "datetime" && $column.queryType == "BETWEEN")
+              #set($AttrName=$column.javaField.substring(0,1).toUpperCase() + ${column.javaField.substring(1)})
+              #if($AttrName=="CreateTime")
+                addDateRange(queryParams.value, queryParams.value.dateRange${AttrName})
+              #else
+                addDateRange(queryParams.value, queryParams.value.dateRange${AttrName}, "${AttrName}")
               #end
               #end
           #end
           #end
       #end
       #end
-  },
-});
-const { queryParams, emptyFormData } = toRefs(opts)
-const form = ref<any>(emptyFormData.value)
-
-/** 搜索按钮操作 */
-function handleQuery() {
-    #foreach ($column in $columns)
-        #if($column.htmlType == "datetime" && $column.queryType == "BETWEEN")
-            #set($AttrName=$column.javaField.substring(0,1).toUpperCase() + ${column.javaField.substring(1)})
-            #if($AttrName=="CreateTime")
-              addDateRange(queryParams.value, queryParams.value.dateRange${AttrName})
-            #else
-              addDateRange(queryParams.value, queryParams.value.dateRange${AttrName},"${AttrName}")
-            #end
-        #end
-    #end
-  tableRef.value?.search()
-}
+    tableRef.value?.search()
+  }
 
 
-/** 重置按钮操作 */
-function resetQuery() {
-    #foreach ($column in $columns)
-        #if($column.htmlType == "datetime" && $column.queryType == "BETWEEN")
-            #set($AttrName=$column.javaField.substring(0,1).toUpperCase() + ${column.javaField.substring(1)})
-          queryParams.value.dateRange${AttrName} = [] as any
-            #if($AttrName=="CreateTime")
-              addDateRange(queryParams.value, queryParams.value.dateRange${AttrName})
-            #else
-              addDateRange(queryParams.value, queryParams.value.dateRange${AttrName},"${AttrName}")
-            #end
-        #else
-        #end
-    #end
-  //
-}
+  /** 重置按钮操作 */
+  function resetQuery() {
+      #foreach ($column in $columns)
+          #if($column.htmlType == "datetime" && $column.queryType == "BETWEEN")
+              #set($AttrName=$column.javaField.substring(0,1).toUpperCase() + ${column.javaField.substring(1)})
+            queryParams.value.dateRange${AttrName} = [] as any
+              #if($AttrName=="CreateTime")
+                addDateRange(queryParams.value, queryParams.value.dateRange${AttrName})
+              #else
+                addDateRange(queryParams.value, queryParams.value.dateRange${AttrName}, "${AttrName}")
+              #end
+          #else
+          #end
+      #end
+    //
+  }
 
 
-/** 修改按钮操作 */
-function handleUpdate(row: any) {
-  tableRef.value.defaultHandleFuns["handleUpdate"]("", row)
-#foreach ($column in $columns)
-#if($column.htmlType == "checkbox")
-  form.value.$column.javaField = form.value.${column.javaField}.split(",");
-#end
-#end
-}
+  /** 修改按钮操作 */
+  function handleUpdate(row: any) {
+    tableRef.value.defaultHandleFuns.handleUpdate("", row)
+      #foreach ($column in $columns)
+          #if($column.htmlType == "checkbox")
+            form.value.$column.javaField = form.value.${column.javaField}.split(",");
+          #end
+      #end
+  }
 
 
-/** 删除按钮操作 */
-function handleDelete(rows: Array<any>) {
-  tableRef.value.defaultHandleFuns["handleDelete"]("", rows)
-}
+  /** 删除按钮操作 */
+  function handleDelete(rows: any[]) {
+    tableRef.value.defaultHandleFuns.handleDelete("", rows)
+  }
 
 
-/** 提交按钮 */
-function submitForm() {
-    #foreach ($column in $columns)
-        #if($column.htmlType == "checkbox")
-          form.value.$column.javaField = form.value.${column.javaField}.join(",");
-        #end
-    #end
-    #if($table.sub)
-      form.value.${subclassName}List = ${subclassName}List.value;
-    #end
-      apis.${moduleName}.${businessName}Api.addOrUpdate${BusinessName}(form.value).then(() => {
-        handleQuery()
-      });
-}
+  /** 提交按钮 */
+  function submitForm() {
+      #foreach ($column in $columns)
+          #if($column.htmlType == "checkbox")
+            form.value.$column.javaField = form.value.${column.javaField}.join(",");
+          #end
+      #end
+      #if($table.sub)
+        form.value.${subclassName}List = ${subclassName}List.value;
+      #end
+    apis.${moduleName}.${businessName}Api.addOrUpdate${BusinessName}(form.value).then(() => {
+      handleQuery()
+    });
+  }
 
 
 </script>
 </script>
 <template>
 <template>
   <div class="app-container">
   <div class="app-container">
     <VbDataTable
     <VbDataTable
         ref="tableRef"
         ref="tableRef"
+        keyField="$pkColumn.javaField"
+        :columns="opts.columns"
         :handle-perm="opts.permission"
         :handle-perm="opts.permission"
         :handle-btns="opts.handleBtns"
         :handle-btns="opts.handleBtns"
         :handle-funs="opts.handleFuns"
         :handle-funs="opts.handleFuns"
         :search-form-items="opts.searchFormItems"
         :search-form-items="opts.searchFormItems"
-        :header="opts.columns"
         :custom-btns="opts.customBtns"
         :custom-btns="opts.customBtns"
         :remote-fun="opts.tableListFun"
         :remote-fun="opts.tableListFun"
         :get-entiy-fun="opts.getEntityFun"
         :get-entiy-fun="opts.getEntityFun"
@@ -338,52 +334,50 @@ function submitForm() {
         :query-params="queryParams"
         :query-params="queryParams"
         :check-multiple="true"
         :check-multiple="true"
         :reset-search-form-fun="resetQuery"
         :reset-search-form-fun="resetQuery"
-        :custom-search-fun="handleQuery"
-    >
-#foreach($column in $columns)
-#set($javaField=$column.javaField)
-#set($parentheseIndex=$column.columnComment.indexOf("("))
-#if($parentheseIndex != -1)
-    #set($comment=$column.columnComment.substring(0, $parentheseIndex))
-#else
-    #set($comment=$column.columnComment)
-#end
-#if($column.list && $column.htmlType == "imageUpload")
-      <template #${javaField}="{ row }">
-        <image-preview :src="row.${javaField}" :width="50" :height="50"/>
-      </template>
-#elseif($column.list && "" != $column.dictType)
-      <template #${javaField}="{ row }">
-    #if($column.htmlType == "checkbox")
-        <DictTag type="${column.dictType}" :value="row.${javaField} ? row.${javaField}.split(',') : []"></DictTag>
-    #else
-        <DictTag type="${column.dictType}" :value="row.${javaField}"></DictTag>
-    #end
-      </template>
-#end
-#end
+        :custom-search-fun="handleQuery">
+        #foreach($column in $columns)
+            #set($javaField=$column.javaField)
+            #set($parentheseIndex=$column.columnComment.indexOf("("))
+            #if($parentheseIndex != -1)
+                #set($comment=$column.columnComment.substring(0, $parentheseIndex))
+            #else
+                #set($comment=$column.columnComment)
+            #end
+            #if($column.list && $column.htmlType == "imageUpload")
+              <template #${javaField}="{ row }">
+                <image-preview :src="row.${javaField}" :width="50" :height="50"/>
+              </template>
+            #elseif($column.list && "" != $column.dictType)
+              <template #${javaField}="{ row }">
+                  #if($column.htmlType == "checkbox")
+                    <DictTag type="${column.dictType}"
+                             :value="row.${javaField} ? row.${javaField}.split(',') : []"></DictTag>
+                  #else
+                    <DictTag type="${column.dictType}" :value="row.${javaField}"></DictTag>
+                  #end
+              </template>
+            #end
+        #end
       <template #actions="{ row }">
       <template #actions="{ row }">
-        <vb-tooltip content="修改" placement="top" >
+        <vb-tooltip content="修改" placement="top">
           <el-button
           <el-button
               link
               link
               type="primary"
               type="primary"
               @click="handleUpdate(row)"
               @click="handleUpdate(row)"
-              v-hasPermission="permissionNames.${ModuleName}${BusinessName}Edit"
-          >
+              v-hasPermission="permissionNames.${ModuleName}${BusinessName}Edit">
             <template #icon>
             <template #icon>
-              <KTIcon icon-name="notepad-edit" icon-type="duotone" class="fs-3"></KTIcon>
+              <VbIcon icon-name="notepad-edit" icon-type="duotone" class="fs-3"></VbIcon>
             </template>
             </template>
           </el-button>
           </el-button>
         </vb-tooltip>
         </vb-tooltip>
-        <vb-tooltip content="删除" placement="top" >
+        <vb-tooltip content="删除" placement="top">
           <el-button
           <el-button
               link
               link
               type="primary"
               type="primary"
               @click="handleDelete([row])"
               @click="handleDelete([row])"
-              v-hasPermission="permissionNames.${ModuleName}${BusinessName}Remove"
-          >
+              v-hasPermission="permissionNames.${ModuleName}${BusinessName}Remove">
             <template #icon>
             <template #icon>
-              <KTIcon icon-name="trash-square" icon-type="duotone" class="fs-3"></KTIcon>
+              <VbIcon icon-name="trash-square" icon-type="duotone" class="fs-3"></VbIcon>
             </template>
             </template>
           </el-button>
           </el-button>
         </vb-tooltip>
         </vb-tooltip>
@@ -395,9 +389,8 @@ function submitForm() {
         :form-data="form"
         :form-data="form"
         :form-items="opts.formItems"
         :form-items="opts.formItems"
         :label-width="opts.labelWidth"
         :label-width="opts.labelWidth"
-        @confirm="submitForm"
         append-to-body
         append-to-body
-    >
+        @confirm="submitForm">
     </VbModal>
     </VbModal>
   </div>
   </div>
 </template>
 </template>

+ 79 - 76
SERVER/VberAdminPlus/vber-system/src/main/java/com/vber/system/permissions/PermissionName.java

@@ -79,79 +79,82 @@ public class PermissionName {
 }
 }
 
 
 
 
-/**
- * class permissionName {
- * SystemUser = "system:user"
- * SystemUserQuery = "system:user:query"
- * SystemUserAdd = "system:user:add"
- * SystemUserEdit = "system:user:edit"
- * SystemUserRemove = "system:user:remove"
- * SystemUserExport = "system:user:export"
- * SystemUserImport = "system:user:import"
- * SystemUserResetPwd = "system:user:resetPwd"
- * SystemRole = "system:role"
- * SystemRoleQuery = "system:role:query"
- * SystemRoleAdd = "system:role:add"
- * SystemRoleEdit = "system:role:edit"
- * SystemRoleRemove = "system:role:remove"
- * SystemRoleExport = "system:role:export"
- * SystemMenu = "system:menu"
- * SystemMenuQuery = "system:menu:query"
- * SystemMenuAdd = "system:menu:add"
- * SystemMenuEdit = "system:menu:edit"
- * SystemMenuRemove = "system:menu:remove"
- * SystemDept = "system:dept"
- * SystemDeptQuery = "system:dept:query"
- * SystemDeptAdd = "system:dept:add"
- * SystemDeptEdit = "system:dept:edit"
- * SystemDeptRemove = "system:dept:remove"
- * SystemPost = "system:post"
- * SystemPostQuery = "system:post:query"
- * SystemPostAdd = "system:post:add"
- * SystemPostEdit = "system:post:edit"
- * SystemPostRemove = "system:post:remove"
- * SystemPostExport = "system:post:export"
- * SystemDict = "system:dict"
- * SystemDictQuery = "system:dict:query"
- * SystemDictAdd = "system:dict:add"
- * SystemDictEdit = "system:dict:edit"
- * SystemDictRemove = "system:dict:remove"
- * SystemDictExport = "system:dict:export"
- * SystemConfig = "system:config"
- * SystemConfigQuery = "system:config:query"
- * SystemConfigAdd = "system:config:add"
- * SystemConfigEdit = "system:config:edit"
- * SystemConfigRemove = "system:config:remove"
- * SystemConfigExport = "system:config:export"
- * SystemNotice = "system:notice"
- * SystemNoticeQuery = "system:notice:query"
- * SystemNoticeAdd = "system:notice:add"
- * SystemNoticeEdit = "system:notice:edit"
- * SystemNoticeRemove = "system:notice:remove"
- * MonitorOperlog = "monitor:operlog"
- * MonitorOperlogQuery = "monitor:operlog:query"
- * MonitorOperlogRemove = "monitor:operlog:remove"
- * MonitorOperlogExport = "monitor:operlog:export"
- * MonitorLogininfor = "monitor:logininfor"
- * MonitorLogininforQuery = "monitor:logininfor:query"
- * MonitorLogininforRemove = "monitor:logininfor:remove"
- * MonitorLogininforExport = "monitor:logininfor:export"
- * MonitorLogininforUnlock = "monitor:logininfor:unlock"
- * SystemOss = "system:oss"
- * SystemOssQuery = "system:oss:query"
- * SystemOssUpload = "system:oss:upload"
- * SystemOssDownload = "system:oss:download"
- * SystemOssRemove = "system:oss:remove"
- * SystemOssAdd = "system:oss:add"
- * SystemOssEdit = "system:oss:edit"
- * MonitorOnline = "monitor:online"
- * MonitorOnlineQuery = "monitor:online:query"
- * MonitorOnlineBatchLogout = "monitor:online:batchLogout"
- * MonitorOnlineForceLogout = "monitor:online:forceLogout"
- * MonitorCache = "monitor:cache"
- * MonitorAdmin = "monitor:admin"
- * MonitorXxljob = "monitor:xxljob"
- * }
- * export const permissionNames = new permissionName()
- * export default permissionName
- */
+/*
+
+   class permissionName {
+   SystemUser = "system:user"
+   SystemUserQuery = "system:user:query"
+   SystemUserAdd = "system:user:add"
+   SystemUserEdit = "system:user:edit"
+   SystemUserRemove = "system:user:remove"
+   SystemUserExport = "system:user:export"
+   SystemUserImport = "system:user:import"
+   SystemUserResetPwd = "system:user:resetPwd"
+   SystemRole = "system:role"
+   SystemRoleQuery = "system:role:query"
+   SystemRoleAdd = "system:role:add"
+   SystemRoleEdit = "system:role:edit"
+   SystemRoleRemove = "system:role:remove"
+   SystemRoleExport = "system:role:export"
+   SystemMenu = "system:menu"
+   SystemMenuQuery = "system:menu:query"
+   SystemMenuAdd = "system:menu:add"
+   SystemMenuEdit = "system:menu:edit"
+   SystemMenuRemove = "system:menu:remove"
+   SystemDept = "system:dept"
+   SystemDeptQuery = "system:dept:query"
+   SystemDeptAdd = "system:dept:add"
+   SystemDeptEdit = "system:dept:edit"
+   SystemDeptRemove = "system:dept:remove"
+   SystemPost = "system:post"
+   SystemPostQuery = "system:post:query"
+   SystemPostAdd = "system:post:add"
+   SystemPostEdit = "system:post:edit"
+   SystemPostRemove = "system:post:remove"
+   SystemPostExport = "system:post:export"
+   SystemDict = "system:dict"
+   SystemDictQuery = "system:dict:query"
+   SystemDictAdd = "system:dict:add"
+   SystemDictEdit = "system:dict:edit"
+   SystemDictRemove = "system:dict:remove"
+   SystemDictExport = "system:dict:export"
+   SystemConfig = "system:config"
+   SystemConfigQuery = "system:config:query"
+   SystemConfigAdd = "system:config:add"
+   SystemConfigEdit = "system:config:edit"
+   SystemConfigRemove = "system:config:remove"
+   SystemConfigExport = "system:config:export"
+   SystemNotice = "system:notice"
+   SystemNoticeQuery = "system:notice:query"
+   SystemNoticeAdd = "system:notice:add"
+   SystemNoticeEdit = "system:notice:edit"
+   SystemNoticeRemove = "system:notice:remove"
+   MonitorOperlog = "monitor:operlog"
+   MonitorOperlogQuery = "monitor:operlog:query"
+   MonitorOperlogRemove = "monitor:operlog:remove"
+   MonitorOperlogExport = "monitor:operlog:export"
+   MonitorLogininfor = "monitor:logininfor"
+   MonitorLogininforQuery = "monitor:logininfor:query"
+   MonitorLogininforRemove = "monitor:logininfor:remove"
+   MonitorLogininforExport = "monitor:logininfor:export"
+   MonitorLogininforUnlock = "monitor:logininfor:unlock"
+   SystemOss = "system:oss"
+   SystemOssQuery = "system:oss:query"
+   SystemOssUpload = "system:oss:upload"
+   SystemOssDownload = "system:oss:download"
+   SystemOssRemove = "system:oss:remove"
+   SystemOssAdd = "system:oss:add"
+   SystemOssEdit = "system:oss:edit"
+   MonitorOnline = "monitor:online"
+   MonitorOnlineQuery = "monitor:online:query"
+   MonitorOnlineBatchLogout = "monitor:online:batchLogout"
+   MonitorOnlineForceLogout = "monitor:online:forceLogout"
+   MonitorCache = "monitor:cache"
+   MonitorAdmin = "monitor:admin"
+   MonitorXxljob = "monitor:xxljob"
+   }
+   // eslint-disable-next-line new-cap
+   export const permissionNames = new permissionName()
+   export default permissionName
+
+        */