From f6ebd1820968db8521bed86d25b183efe7eb877b Mon Sep 17 00:00:00 2001
From: lxl <lixuliang_hd@126.com>
Date: 星期四, 27 十月 2022 16:01:40 +0800
Subject: [PATCH] 权限

---
 src/views/datamanage/dictionaryManage.vue |  334 +++++++++++++++++++++++++++++++++++++++++++-----------
 1 files changed, 263 insertions(+), 71 deletions(-)

diff --git a/src/views/datamanage/dictionaryManage.vue b/src/views/datamanage/dictionaryManage.vue
index 050fcbc..b97d801 100644
--- a/src/views/datamanage/dictionaryManage.vue
+++ b/src/views/datamanage/dictionaryManage.vue
@@ -9,7 +9,10 @@
     <el-divider />
     <div class="searchComp">
       <el-form ref="ruleForm" :model="ruleForm" :inline="true">
-        <el-form-item :label="$t('dataManage.dictionaryManageObj.tableName')" prop="name">
+        <el-form-item
+          :label="$t('dataManage.dictionaryManageObj.tableName')"
+          prop="name"
+        >
           <el-select
             clearable
             v-model="queryName"
@@ -28,17 +31,19 @@
         <el-form-item>
           <el-button
             @click="InsertFormdialog = true"
+            v-if="btnStatus.insert"
             icon="el-icon-edit"
             type="success"
             size="small"
-            >{{$t('dataManage.dictionaryManageObj.add')}}</el-button
+            >{{ $t("dataManage.dictionaryManageObj.add") }}</el-button
           >
           <el-button
+            v-if="btnStatus.delete"
             @click="DelFormData"
             icon="el-icon-delete"
             type="danger"
             size="small"
-            >{{$t('dataManage.dictionaryManageObj.del')}}</el-button
+            >{{ $t("dataManage.dictionaryManageObj.del") }}</el-button
           >
         </el-form-item>
       </el-form>
@@ -54,14 +59,47 @@
             height="98%"
           >
             <el-table-column type="selection" width="55" />
-            <el-table-column prop="orderNum" :label="$t('dataManage.dictionaryManageObj.number')" />
-            <el-table-column min-width="100" prop="field" :label="$t('dataManage.dictionaryManageObj.fieldName')" />
-            <el-table-column min-width="90" prop="alias" :label="$t('dataManage.dictionaryManageObj.fieldAliasName')" />
-            <el-table-column min-width="100" prop="type" :label="$t('dataManage.dictionaryManageObj.fieldType')" />
-            <el-table-column min-width="60" prop="len" :label="$t('dataManage.dictionaryManageObj.fieldLength')" />
-            <el-table-column min-width="60" prop="precision" :label="$t('dataManage.dictionaryManageObj.FieldPrecision')" />
-            <el-table-column min-width="100" prop="tab" :label="$t('dataManage.dictionaryManageObj.rangeAssociationTable')" />
-            <el-table-column min-width="100" prop="bak" :label="$t('dataManage.dictionaryManageObj.remark')" />
+            <el-table-column
+              prop="orderNum"
+              :label="$t('dataManage.dictionaryManageObj.number')"
+            />
+            <el-table-column
+              min-width="100"
+              prop="field"
+              :label="$t('dataManage.dictionaryManageObj.fieldName')"
+            />
+            <el-table-column
+              min-width="90"
+              prop="alias"
+              :label="$t('dataManage.dictionaryManageObj.fieldAliasName')"
+            />
+            <el-table-column
+              min-width="100"
+              prop="type"
+              :label="$t('dataManage.dictionaryManageObj.fieldType')"
+            />
+            <el-table-column
+              min-width="60"
+              prop="len"
+              :label="$t('dataManage.dictionaryManageObj.fieldLength')"
+            />
+            <el-table-column
+              min-width="60"
+              prop="precision"
+              :label="$t('dataManage.dictionaryManageObj.FieldPrecision')"
+            />
+            <el-table-column
+              min-width="100"
+              prop="tab"
+              :label="
+                $t('dataManage.dictionaryManageObj.rangeAssociationTable')
+              "
+            />
+            <el-table-column
+              min-width="100"
+              prop="bak"
+              :label="$t('dataManage.dictionaryManageObj.remark')"
+            />
             <el-table-column
               min-width="100"
               prop="createTime"
@@ -85,15 +123,21 @@
               :label="$t('dataManage.dictionaryManageObj.updatePersonnel')"
             />
 
-            <el-table-column min-width="70" :label="$t('dataManage.dictionaryManageObj.operation')">
+            <el-table-column
+              min-width="70"
+              :label="$t('dataManage.dictionaryManageObj.operation')"
+            >
               <template slot-scope="scope">
-                <el-link @click="showDetail(scope.$index, scope.row)"
-                  >{{$t('dataManage.dictionaryManageObj.lookOver')}}</el-link
+                <el-link
+                  v-if="btnStatus.select"
+                  @click="showDetail(scope.$index, scope.row)"
+                  >{{ $t("dataManage.dictionaryManageObj.lookOver") }}</el-link
                 >
                 <el-link
+                  v-if="btnStatus.update"
                   @click="handleEdit(scope.$index, scope.row)"
                   style="margin-left: 10px"
-                  >{{$t('dataManage.dictionaryManageObj.revamp')}}</el-link
+                  >{{ $t("dataManage.dictionaryManageObj.revamp") }}</el-link
                 >
               </template>
             </el-table-column>
@@ -119,39 +163,87 @@
     <div class="infoBox" v-show="showinfoBox">
       <el-card class="box-card">
         <div slot="header" class="clearfix">
-          <span>{{$t('dataManage.dictionaryManageObj.particulars')}}</span>
+          <span>{{ $t("dataManage.dictionaryManageObj.particulars") }}</span>
           <div style="float: right; cursor: pointer" @click="closeDetial">
             <i class="el-icon-close"></i>
           </div>
         </div>
         <div class="contentBox">
-          <p>{{$t('dataManage.dictionaryManageObj.tableName')}}锛歿{ itemdetail.tab }}</p>
+          <p>
+            {{ $t("dataManage.dictionaryManageObj.tableName") }}锛歿{
+              itemdetail.tab
+            }}
+          </p>
           <el-divider></el-divider>
-          <p>{{$t('dataManage.dictionaryManageObj.tableAliasName')}}锛歿{ itemdetail.tabDesc }}</p>
+          <p>
+            {{ $t("dataManage.dictionaryManageObj.tableAliasName") }}锛歿{
+              itemdetail.tabDesc
+            }}
+          </p>
           <el-divider></el-divider>
           <!-- <p>琛ㄧ被鍨嬶細{{ itemdetail.type }}</p>
           <el-divider></el-divider> -->
-          <p>{{$t('dataManage.dictionaryManageObj.fieldName')}}锛歿{ itemdetail.field }}</p>
+          <p>
+            {{ $t("dataManage.dictionaryManageObj.fieldName") }}锛歿{
+              itemdetail.field
+            }}
+          </p>
           <el-divider></el-divider>
-          <p>{{$t('dataManage.dictionaryManageObj.fieldAliasName')}}锛歿{ itemdetail.alias }}</p>
+          <p>
+            {{ $t("dataManage.dictionaryManageObj.fieldAliasName") }}锛歿{
+              itemdetail.alias
+            }}
+          </p>
           <el-divider></el-divider>
-          <p>{{$t('dataManage.dictionaryManageObj.fieldType')}}锛歿{ itemdetail.type }}</p>
+          <p>
+            {{ $t("dataManage.dictionaryManageObj.fieldType") }}锛歿{
+              itemdetail.type
+            }}
+          </p>
           <el-divider></el-divider>
-          <p>{{$t('dataManage.dictionaryManageObj.fieldLength')}}锛歿{ itemdetail.len }}</p>
+          <p>
+            {{ $t("dataManage.dictionaryManageObj.fieldLength") }}锛歿{
+              itemdetail.len
+            }}
+          </p>
           <el-divider></el-divider>
-          <p>{{$t('dataManage.dictionaryManageObj.FieldPrecision')}}锛歿{ itemdetail.precision }}</p>
+          <p>
+            {{ $t("dataManage.dictionaryManageObj.FieldPrecision") }}锛歿{
+              itemdetail.precision
+            }}
+          </p>
           <el-divider></el-divider>
           <!-- <p>鍊煎煙鍏宠仈琛細{{ itemdetail.domain_name }}</p>
           <el-divider></el-divider> -->
-          <p>{{$t('dataManage.dictionaryManageObj.remark')}}锛歿{ itemdetail.bak }}</p>
+          <p>
+            {{ $t("dataManage.dictionaryManageObj.remark") }}锛歿{
+              itemdetail.bak
+            }}
+          </p>
           <el-divider></el-divider>
-          <p>{{$t('dataManage.dictionaryManageObj.creationTime')}}锛歿{ itemdetail.createTime }}</p>
+          <p>
+            {{ $t("dataManage.dictionaryManageObj.creationTime") }}锛歿{
+              itemdetail.createTime
+            }}
+          </p>
           <el-divider></el-divider>
-          <p>{{$t('dataManage.dictionaryManageObj.createPersonnel')}}锛歿{ itemdetail.createUser }}</p>
+          <p>
+            {{ $t("dataManage.dictionaryManageObj.createPersonnel") }}锛歿{
+              itemdetail.createUser
+            }}
+          </p>
           <el-divider></el-divider>
-          <p>{{$t('dataManage.dictionaryManageObj.updateTime')}}锛歿{ itemdetail.updateTime }}</p>
+          <p>
+            {{ $t("dataManage.dictionaryManageObj.updateTime") }}锛歿{
+              itemdetail.updateTime
+            }}
+          </p>
           <el-divider></el-divider>
-          <p>{{$t('dataManage.dictionaryManageObj.updatePersonnel')}}锛歿{ itemdetail.updateUser }}</p>
+          <p>
+            {{ $t("dataManage.dictionaryManageObj.updatePersonnel") }}锛歿{
+              itemdetail.updateUser
+            }}
+          </p>
         </div>
       </el-card>
     </div>
@@ -162,13 +254,22 @@
       :visible.sync="dialogFormVisible"
     >
       <el-form :model="upform">
-        <el-form-item :label="$t('dataManage.dictionaryManageObj.number')" :label-width="formLabelWidth">
+        <el-form-item
+          :label="$t('dataManage.dictionaryManageObj.number')"
+          :label-width="formLabelWidth"
+        >
           <el-input v-model="upform.orderNum" autocomplete="off"></el-input>
         </el-form-item>
-        <el-form-item :label="$t('dataManage.dictionaryManageObj.tableName')" :label-width="formLabelWidth">
+        <el-form-item
+          :label="$t('dataManage.dictionaryManageObj.tableName')"
+          :label-width="formLabelWidth"
+        >
           <el-input v-model="upform.tab" autocomplete="off"></el-input>
         </el-form-item>
-        <el-form-item :label="$t('dataManage.dictionaryManageObj.tableAliasName')" :label-width="formLabelWidth">
+        <el-form-item
+          :label="$t('dataManage.dictionaryManageObj.tableAliasName')"
+          :label-width="formLabelWidth"
+        >
           <el-input v-model="upform.tabDesc" autocomplete="off"></el-input>
         </el-form-item>
         <!-- <el-form-item label="绫诲瀷" :label-width="formLabelWidth">
@@ -182,31 +283,53 @@
             <el-option label="闈㈠嚑浣�" value="闈㈠嚑浣�"></el-option>
           </el-select>
         </el-form-item> -->
-        <el-form-item :label="$t('dataManage.dictionaryManageObj.fieldName')" :label-width="formLabelWidth">
+        <el-form-item
+          :label="$t('dataManage.dictionaryManageObj.fieldName')"
+          :label-width="formLabelWidth"
+        >
           <el-input v-model="upform.field" autocomplete="off"></el-input>
         </el-form-item>
-        <el-form-item :label="$t('dataManage.dictionaryManageObj.fieldAliasName')" :label-width="formLabelWidth">
+        <el-form-item
+          :label="$t('dataManage.dictionaryManageObj.fieldAliasName')"
+          :label-width="formLabelWidth"
+        >
           <el-input v-model="upform.alias" autocomplete="off"></el-input>
         </el-form-item>
-        <el-form-item :label="$t('dataManage.dictionaryManageObj.fieldType')" :label-width="formLabelWidth">
+        <el-form-item
+          :label="$t('dataManage.dictionaryManageObj.fieldType')"
+          :label-width="formLabelWidth"
+        >
           <el-input v-model="upform.type" autocomplete="off"></el-input>
         </el-form-item>
-        <el-form-item :label="$t('dataManage.dictionaryManageObj.fieldLength')" :label-width="formLabelWidth">
+        <el-form-item
+          :label="$t('dataManage.dictionaryManageObj.fieldLength')"
+          :label-width="formLabelWidth"
+        >
           <el-input v-model="upform.len" autocomplete="off"></el-input>
         </el-form-item>
-        <el-form-item :label="$t('dataManage.dictionaryManageObj.FieldPrecision')" :label-width="formLabelWidth">
+        <el-form-item
+          :label="$t('dataManage.dictionaryManageObj.FieldPrecision')"
+          :label-width="formLabelWidth"
+        >
           <el-input v-model="upform.precision" autocomplete="off"></el-input>
         </el-form-item>
         <!-- <el-form-item label="鍊煎煙鍚嶇О" :label-width="formLabelWidth">
           <el-input v-model="upform.domain_name" autocomplete="off"></el-input>
         </el-form-item> -->
-        <el-form-item :label="$t('dataManage.dictionaryManageObj.remark')" :label-width="formLabelWidth">
+        <el-form-item
+          :label="$t('dataManage.dictionaryManageObj.remark')"
+          :label-width="formLabelWidth"
+        >
           <el-input v-model="upform.bak" autocomplete="off"></el-input>
         </el-form-item>
       </el-form>
       <div slot="footer" class="dialog-footer">
-        <el-button @click="dialogFormVisible = false">{{$t('dataManage.dictionaryManageObj.cancel')}}</el-button>
-        <el-button type="primary" @click="updateForm">{{$t('dataManage.dictionaryManageObj.confirm')}}</el-button>
+        <el-button @click="dialogFormVisible = false">{{
+          $t("dataManage.dictionaryManageObj.cancel")
+        }}</el-button>
+        <el-button type="primary" @click="updateForm">{{
+          $t("dataManage.dictionaryManageObj.confirm")
+        }}</el-button>
       </div>
     </el-dialog>
     <el-dialog
@@ -216,13 +339,22 @@
       :visible.sync="InsertFormdialog"
     >
       <el-form :model="insertform">
-        <el-form-item :label="$t('dataManage.dictionaryManageObj.number')" :label-width="formLabelWidth">
+        <el-form-item
+          :label="$t('dataManage.dictionaryManageObj.number')"
+          :label-width="formLabelWidth"
+        >
           <el-input v-model="insertform.orderNum" autocomplete="off"></el-input>
         </el-form-item>
-        <el-form-item :label="$t('dataManage.dictionaryManageObj.tableName')" :label-width="formLabelWidth">
+        <el-form-item
+          :label="$t('dataManage.dictionaryManageObj.tableName')"
+          :label-width="formLabelWidth"
+        >
           <el-input v-model="insertform.tab" autocomplete="off"></el-input>
         </el-form-item>
-        <el-form-item :label="$t('dataManage.dictionaryManageObj.tableAliasName')" :label-width="formLabelWidth">
+        <el-form-item
+          :label="$t('dataManage.dictionaryManageObj.tableAliasName')"
+          :label-width="formLabelWidth"
+        >
           <el-input v-model="insertform.tabDesc" autocomplete="off"></el-input>
         </el-form-item>
         <!-- <el-form-item label="绫诲瀷" :label-width="formLabelWidth">
@@ -236,19 +368,34 @@
             <el-option label="闈㈠嚑浣�" value="闈㈠嚑浣�"></el-option>
           </el-select>
         </el-form-item> -->
-        <el-form-item :label="$t('dataManage.dictionaryManageObj.fieldName')" :label-width="formLabelWidth">
+        <el-form-item
+          :label="$t('dataManage.dictionaryManageObj.fieldName')"
+          :label-width="formLabelWidth"
+        >
           <el-input v-model="insertform.field" autocomplete="off"></el-input>
         </el-form-item>
-        <el-form-item :label="$t('dataManage.dictionaryManageObj.fieldAliasName')" :label-width="formLabelWidth">
+        <el-form-item
+          :label="$t('dataManage.dictionaryManageObj.fieldAliasName')"
+          :label-width="formLabelWidth"
+        >
           <el-input v-model="insertform.alias" autocomplete="off"></el-input>
         </el-form-item>
-        <el-form-item :label="$t('dataManage.dictionaryManageObj.fieldType')" :label-width="formLabelWidth">
+        <el-form-item
+          :label="$t('dataManage.dictionaryManageObj.fieldType')"
+          :label-width="formLabelWidth"
+        >
           <el-input v-model="insertform.type" autocomplete="off"></el-input>
         </el-form-item>
-        <el-form-item :label="$t('dataManage.dictionaryManageObj.fieldLength')" :label-width="formLabelWidth">
+        <el-form-item
+          :label="$t('dataManage.dictionaryManageObj.fieldLength')"
+          :label-width="formLabelWidth"
+        >
           <el-input v-model="insertform.len" autocomplete="off"></el-input>
         </el-form-item>
-        <el-form-item :label="$t('dataManage.dictionaryManageObj.FieldPrecision')" :label-width="formLabelWidth">
+        <el-form-item
+          :label="$t('dataManage.dictionaryManageObj.FieldPrecision')"
+          :label-width="formLabelWidth"
+        >
           <el-input
             v-model="insertform.precision"
             autocomplete="off"
@@ -260,13 +407,20 @@
             autocomplete="off"
           ></el-input>
         </el-form-item> -->
-        <el-form-item :label="$t('dataManage.dictionaryManageObj.remark')" :label-width="formLabelWidth">
+        <el-form-item
+          :label="$t('dataManage.dictionaryManageObj.remark')"
+          :label-width="formLabelWidth"
+        >
           <el-input v-model="insertform.bak" autocomplete="off"></el-input>
         </el-form-item>
       </el-form>
       <div slot="footer" class="dialog-footer">
-        <el-button @click="InsertFormdialog = false">{{$t('dataManage.dictionaryManageObj.cancel')}}</el-button>
-        <el-button type="primary" @click="insertFromData">{{$t('dataManage.dictionaryManageObj.confirm')}}</el-button>
+        <el-button @click="InsertFormdialog = false">{{
+          $t("dataManage.dictionaryManageObj.cancel")
+        }}</el-button>
+        <el-button type="primary" @click="insertFromData">{{
+          $t("dataManage.dictionaryManageObj.confirm")
+        }}</el-button>
       </div>
     </el-dialog>
   </div>
@@ -308,13 +462,29 @@
         pageSize: 10,
       },
       selectData: [],
+      btnStatus: {
+        select: false,
+        delete: false,
+        upload: false,
+        download: false,
+        insert: false,
+        update: false,
+      },
     };
   },
   created() {
     this.startQueryNameData();
     this.getSelectDictTab();
+    this.showPermsBtn();
   },
   methods: {
+    showPermsBtn() {
+      let currentPerms = this.$store.state.currentPerms;
+      let permsEntity = this.$store.state.permsEntity;
+      permsEntity
+        .filter((item) => item.perms == currentPerms)
+        .map((item) => (this.btnStatus[item.tag.substr(1)] = true));
+    },
     //涓嬫媺閫夐」璋冪敤
     async getSelectDictTab() {
       this.selectData = [];
@@ -377,20 +547,28 @@
     },
     //淇敼璇︽儏
     updateForm() {
-      this.$confirm(`${$t('dataManage.dictionaryManageObj.tipsUp')}`,`${$t('dataManage.dictionaryManageObj.tips')}`, {
-        confirmButtonText: `${$t('dataManage.dictionaryManageObj.confirm')}`,
-        cancelButtonText: `${$t('dataManage.dictionaryManageObj.cancel')}`,
-        type: "warning",
-      })
+      this.$confirm(
+        `${$t("dataManage.dictionaryManageObj.tipsUp")}`,
+        `${$t("dataManage.dictionaryManageObj.tips")}`,
+        {
+          confirmButtonText: `${$t("dataManage.dictionaryManageObj.confirm")}`,
+          cancelButtonText: `${$t("dataManage.dictionaryManageObj.cancel")}`,
+          type: "warning",
+        }
+      )
         .then(async () => {
           const data = await updateDict(this.upform);
           if (data.code != 200) {
-            this.$message.error(`${$t('dataManage.dictionaryManageObj.failModify')}`);
+            this.$message.error(
+              `${$t("dataManage.dictionaryManageObj.failModify")}`
+            );
           }
           this.dialogFormVisible = false;
           this.startQueryNameData();
           this.$message({
-            message: `${$t('dataManage.dictionaryManageObj.modifySuccessfully')}`,
+            message: `${$t(
+              "dataManage.dictionaryManageObj.modifySuccessfully"
+            )}`,
             type: "success",
           });
         })
@@ -426,20 +604,26 @@
     },
     //鏂板
     insertFromData() {
-      this.$confirm(`${$t('dataManage.dictionaryManageObj.tipsAdd')}`, `${$t('dataManage.dictionaryManageObj.tips')}`, {
-        confirmButtonText: `${$t('dataManage.dictionaryManageObj.confirm')}`,
-        cancelButtonText: `${$t('dataManage.dictionaryManageObj.cancel')}`,
-        type: "warning",
-      })
+      this.$confirm(
+        `${$t("dataManage.dictionaryManageObj.tipsAdd")}`,
+        `${$t("dataManage.dictionaryManageObj.tips")}`,
+        {
+          confirmButtonText: `${$t("dataManage.dictionaryManageObj.confirm")}`,
+          cancelButtonText: `${$t("dataManage.dictionaryManageObj.cancel")}`,
+          type: "warning",
+        }
+      )
         .then(async () => {
           const data = await insertDict(this.insertform);
           if (data.code != 200) {
-            this.$message.error( `${$t('dataManage.dictionaryManageObj.FailedAdd')}`);
+            this.$message.error(
+              `${$t("dataManage.dictionaryManageObj.FailedAdd")}`
+            );
           }
           this.InsertFormdialog = false;
           this.startQueryNameData();
           this.$message({
-            message: `${$t('dataManage.dictionaryManageObj.NewSuccess')}`,
+            message: `${$t("dataManage.dictionaryManageObj.NewSuccess")}`,
             type: "success",
           });
         })
@@ -457,19 +641,27 @@
       for (var i in this.multipleSelection) {
         std.push(this.multipleSelection[i].id);
       }
-      this.$confirm(`${$t('dataManage.dictionaryManageObj.tipsDelete')}`, `${$t('dataManage.dictionaryManageObj.tips')}`, {
-        confirmButtonText:`${$t('dataManage.dictionaryManageObj.confirm')}`,
-        cancelButtonText: `${$t('dataManage.dictionaryManageObj.cancel')}`,
-        type: "warning",
-      })
+      this.$confirm(
+        `${$t("dataManage.dictionaryManageObj.tipsDelete")}`,
+        `${$t("dataManage.dictionaryManageObj.tips")}`,
+        {
+          confirmButtonText: `${$t("dataManage.dictionaryManageObj.confirm")}`,
+          cancelButtonText: `${$t("dataManage.dictionaryManageObj.cancel")}`,
+          type: "warning",
+        }
+      )
         .then(async () => {
           const data = await deleteDicts({ ids: std.toString() });
           if (data.code != 200) {
-            this.$message.error(`${$t('dataManage.dictionaryManageObj.DeleteFailed')}`);
+            this.$message.error(
+              `${$t("dataManage.dictionaryManageObj.DeleteFailed")}`
+            );
           }
           this.$message({
             type: "success",
-            message:`${$t('dataManage.dictionaryManageObj.deletedSuccessfully')}`,
+            message: `${$t(
+              "dataManage.dictionaryManageObj.deletedSuccessfully"
+            )}`,
           });
           this.startQueryNameData();
         })

--
Gitblit v1.9.3