From efe31fc8087dba6629fcb0a04f73f75c6686abde Mon Sep 17 00:00:00 2001
From: Surpriseplus <845948745@qq.com>
Date: 星期三, 12 十月 2022 16:26:08 +0800
Subject: [PATCH] 资源管理,样式管理上传下载,角色管理页面变更

---
 src/api/api.js                          |   16 +
 src/utils/auth.js                       |    2 
 src/views/userManage/resourceManage.vue |  102 ++++++++-
 src/views/userManage/roleManage.vue     |  175 ++++++++++++++++-
 src/views/datamanage/styleManage.vue    |  300 +++++++++++++++++++++++++++--
 5 files changed, 527 insertions(+), 68 deletions(-)

diff --git a/src/api/api.js b/src/api/api.js
index 8506e53..f5288b6 100644
--- a/src/api/api.js
+++ b/src/api/api.js
@@ -45,9 +45,9 @@
   return request.post('/role/insertRole', params);
 }
 //瑙掕壊绠$悊鍒犻櫎
-export function deleteRole(params) {
+export function deleteRoles(params) {
   //璇锋眰鍦板潃
-  return request.get('/role/deleteRole', { params: params });
+  return request.get('/role/deleteAuths', { params: params });
 }
 //瑙掕壊绠$悊淇敼
 export function updateRole(params) {
@@ -107,6 +107,11 @@
 export function updateStyle(params) {
   return request.post('/Style/updateStyle', params);
 }
+//鏍峰紡绠$悊涓婁紶
+export function upload_style(params) {
+  return request.post('/Style/upload', params);
+}
+
 //鐧诲綍鏃ュ織
 export function loginSelectByPageAndCount(params) {
   //璇锋眰鍦板潃
@@ -155,7 +160,10 @@
 export function deleteRess(params) {
   return request.get('/res/deleteRess', { params: params });
 }
-
+//璧勬簮涓婁紶
+export function upload_res(params) {
+  return request.post('/res/upload', params);
+}
 //鑾峰彇鍏挜鐢ㄤ簬鍔犲瘑
 export function getPublicKey(params) {
   //璇锋眰鍦板潃
@@ -171,7 +179,6 @@
   //璇锋眰鍦板潃
   return request.get('/sign/logout', { params: params });
 }
-
 
 //璇锋眰鑿滃崟鏍忔暟鎹�
 export function queryMenuTree() {
@@ -206,7 +213,6 @@
 export function updateDirTrees(params) {
   return request.post('/dir/updateDirs', params);
 }
-
 
 //璇锋眰鍗曚綅鏍�
 export function queryDepTree() {
diff --git a/src/utils/auth.js b/src/utils/auth.js
index fb714cf..c6b74ea 100644
--- a/src/utils/auth.js
+++ b/src/utils/auth.js
@@ -22,7 +22,7 @@
 // }
 //===========================
 //=======浣跨敤sessionStorage======
-const TokenKey = "Admin-Token";
+const TokenKey = 'Admin-Token';
 export function getToken() {
   return window.sessionStorage.getItem(TokenKey);
 }
diff --git a/src/views/datamanage/styleManage.vue b/src/views/datamanage/styleManage.vue
index c650435..ce36f97 100644
--- a/src/views/datamanage/styleManage.vue
+++ b/src/views/datamanage/styleManage.vue
@@ -106,7 +106,7 @@
               prop="descr"
               :label="$t('dataManage.styleObj.descr')"
             />
-            <el-table-column
+            <!-- <el-table-column
               align="center"
               prop="fileGuid"
               :label="$t('dataManage.styleObj.fileguid')"
@@ -137,13 +137,13 @@
               prop="updateTime"
               :label="$t('dataManage.styleObj.updateTime')"
               :formatter="formatTime"
-            />
+            /> -->
             <el-table-column
               align="center"
               prop="bak"
               :label="$t('dataManage.styleObj.bak')"
             />
-            <el-table-column min-width="150" :label="$t('common.operate')">
+            <el-table-column min-width="120" :label="$t('common.operate')">
               <template slot-scope="scope">
                 <el-button
                   @click="showDetail(scope.$index, scope.row)"
@@ -228,12 +228,14 @@
           <el-divider></el-divider>
           <p>
             <label> {{ $t('dataManage.styleObj.fileguid') }}:</label>
-            <label class="boxlabel">{{ itemdetail.fileguid }}</label>
+            <label class="boxlabel">{{ itemdetail.fileGuid }}</label>
           </p>
           <el-divider></el-divider>
           <p>
             <label> {{ $t('dataManage.styleObj.viewguid') }}:</label>
-            <label class="boxlabel">{{ itemdetail.viewguid }}</label>
+            <label class="boxlabel">  <div style="width:440px;height:200px;">
+                <img style="width:100%; height:100%" :src="itemdetail.imageFile" alt=""/>
+              </div></label>
           </p>
           <el-divider></el-divider>
           <p>
@@ -360,13 +362,57 @@
           :label="$t('dataManage.styleObj.fileguid')"
           :label-width="formLabelWidth"
         >
-          <el-input v-model="upform.fileGuid" autocomplete="off"></el-input>
+          <el-input v-model="upform.fileGuid" disabled autocomplete="off"></el-input>
+           <input
+            name="file1"
+
+            type="file"
+            id="editFile"
+            multiple="multiple"
+            style="display: none"
+            @change="editFile(0)"
+          />
+           <el-link
+            :underline="false"
+            @click="geteditFile(0)"
+            style="margin-left: 10px"
+            ><i class="el-icon-plus"></i
+          ></el-link>
+           <el-link
+           :title="$t('common.upload')"
+            :underline="false"
+            @click="seteditFile(0)"
+            style="margin-left: 10px"
+            ><i class="el-icon-upload2"></i
+          ></el-link>
         </el-form-item>
         <el-form-item
           :label="$t('dataManage.styleObj.viewguid')"
           :label-width="formLabelWidth"
         >
-          <el-input v-model="upform.viewGuid" autocomplete="off"></el-input>
+          <el-input v-model="upform.viewGuid" disabled autocomplete="off"></el-input>
+           <input
+            name="file1"
+            :accept="'.jpg,.png'"
+            type="file"
+            id="editimageFile"
+            multiple="multiple"
+            style="display: none"
+            @change="editFile(1)"
+          />
+           <el-link
+            :underline="false"
+            @click="geteditFile(1)"
+            style="margin-left: 10px"
+            ><i class="el-icon-plus"></i
+          ></el-link>
+           <el-link
+           :title="$t('common.upload')"
+            :underline="false"
+             @click="seteditFile(1)"
+            style="margin-left: 10px"
+            ><i class="el-icon-upload2"></i
+          ></el-link>
         </el-form-item>
         <el-form-item
           :label="$t('dataManage.styleObj.bak')"
@@ -443,7 +489,7 @@
         >
           <el-select
             v-model="insertform.status"
-            style="width: 745px"
+            style="width: 730px"
             :placeholder="$t('common.choose')"
           >
             <el-option
@@ -469,19 +515,63 @@
           :label="$t('dataManage.styleObj.descr')"
           :label-width="formLabelWidth"
         >
-          <el-input v-model="insertform.descr" autocomplete="off"></el-input>
+          <el-input v-model="insertform.descr"  autocomplete="off"></el-input>
         </el-form-item>
         <el-form-item
           :label="$t('dataManage.styleObj.fileguid')"
           :label-width="formLabelWidth"
         >
-          <el-input v-model="insertform.fileGuid" autocomplete="off"></el-input>
+          <el-input v-model="insertform.fileGuid" disabled autocomplete="off" />
+           <input
+            name="file1"
+
+            type="file"
+            id="insertFile"
+            multiple="multiple"
+            style="display: none"
+            @change="insertFile(0)"
+          />
+           <el-link
+            :underline="false"
+            @click="getInsertFile(0)"
+            style="margin-left: 10px"
+            ><i class="el-icon-plus"></i
+          ></el-link>
+           <el-link
+           :title="$t('common.upload')"
+            :underline="false"
+  @click="setinsertFile(0)"
+            style="margin-left: 10px"
+            ><i class="el-icon-upload2"></i
+          ></el-link>
         </el-form-item>
         <el-form-item
           :label="$t('dataManage.styleObj.viewguid')"
           :label-width="formLabelWidth"
         >
-          <el-input v-model="insertform.viewGuid" autocomplete="off"></el-input>
+          <el-input v-model="insertform.viewGuid" disabled autocomplete="off"/>
+           <input
+            name="file1"
+            :accept="'.jpg,.png'"
+            type="file"
+            id="insertimageFile"
+            multiple="multiple"
+            style="display: none"
+            @change="insertFile(1)"
+          />
+           <el-link
+            :underline="false"
+            @click="getInsertFile(1)"
+            style="margin-left: 10px"
+            ><i class="el-icon-plus"></i
+          ></el-link>
+           <el-link
+           :title="$t('common.upload')"
+            :underline="false"
+             @click="setinsertFile(1)"
+            style="margin-left: 10px"
+            ><i class="el-icon-upload2"></i
+          ></el-link>
         </el-form-item>
         <el-form-item
           :label="$t('dataManage.styleObj.bak')"
@@ -527,6 +617,9 @@
 <script>
 import $ from 'jquery';
 import moment from 'moment';
+import {
+  getToken
+} from '../../utils/auth.js'
 import MyBread from '../../components/MyBread.vue';
 import styleDirTree from './styleDirTree.vue';
 import styleDepTree from './styleDepTree.vue';
@@ -534,7 +627,8 @@
   select_Style_ByPageAndCount,
   insertStyle,
   deleteStyles,
-  updateStyle
+  updateStyle,
+  upload_style
 } from '../../api/api';
 export default {
   name: 'styleManage',
@@ -560,9 +654,14 @@
       showDirCata: false,
       showDepCata: false,
       tableData: [],
-      insertform: {},
+      insertform: {
+        fileGuid: null,
+        viewGuid: null,
+      },
       dirFlag: null,
       depFlag: null,
+      guidFile: null,
+      viewFile: null,
       count: 0,
       listData: {
         name: null,
@@ -575,6 +674,134 @@
     this.getRoleTabelData();
   },
   methods: {
+    filesReset() {
+      document.getElementById('insertFile').reset();
+      document.getElementById('insertimageFile').reset();
+      this.guidFile = null;
+      this.fileGuid = null;
+    },
+    getInsertFile(res) {
+      if (res == 0) {
+        $('#insertFile').click();
+      } else if (res == 1) {
+        $('#insertimageFile').click();
+      }
+    },
+    insertFile(res) {
+      if (res == 0) {
+        var val = document.getElementById('insertFile').files;
+        if (!val || !val.length) return;
+        this.insertform.fileGuid = val[0].name;
+      } else if (res == 1) {
+        var val = document.getElementById('insertimageFile').files;
+        if (!val || !val.length) return;
+        this.insertform.viewGuid = val[0].name;
+      }
+    },
+    async setinsertFile(res) {
+      if (res == 0) {
+        var fs = document.getElementById("insertFile");
+        if (fs.files.length == 0) {
+          return;
+        }
+        var formData = new FormData();
+        formData.append("file", fs.files[0]);
+        var val_data = await upload_style(formData);
+        if (val_data.code == 200) {
+          this.guidFile = val_data.result;
+          this.$message({
+            message: '涓婁紶鎴愬姛锛�',
+            type: 'success',
+          });
+        } else {
+          this.$message({
+            message: '涓婁紶澶辫触锛�',
+            type: 'warning',
+          });
+        }
+      } else if (res == 1) {
+        var fs = document.getElementById("insertimageFile");
+        if (fs.files.length == 0) {
+          return;
+        }
+        var formData = new FormData();
+        formData.append("file", fs.files[0]);
+        var val_data = await upload_style(formData);
+        if (val_data.code == 200) {
+          this.viewFile = val_data.result;
+          this.$message({
+            message: '涓婁紶鎴愬姛锛�',
+            type: 'success',
+          });
+        } else {
+          this.$message({
+            message: '涓婁紶澶辫触锛�',
+            type: 'warning',
+          });
+        }
+      }
+    },
+     geteditFile(res) {
+      if (res == 0) {
+        $('#editFile').click();
+      } else if (res == 1) {
+        $('#editimageFile').click();
+      }
+    },
+   editFile(res) {
+      if (res == 0) {
+        var val = document.getElementById('editFile').files;
+        if (!val || !val.length) return;
+        this.upform.fileGuid = val[0].name;
+      } else if (res == 1) {
+        var val = document.getElementById('editimageFile').files;
+        if (!val || !val.length) return;
+        this.upform.viewGuid = val[0].name;
+      }
+    },
+    async seteditFile(res) {
+      if (res == 0) {
+        var fs = document.getElementById("editFile");
+        if (fs.files.length == 0) {
+          return;
+        }
+        var formData = new FormData();
+        formData.append("file", fs.files[0]);
+        var val_data = await upload_style(formData);
+        if (val_data.code == 200) {
+          this.guidFile = val_data.result;
+          this.$message({
+            message: '涓婁紶鎴愬姛锛�',
+            type: 'success',
+          });
+        } else {
+          this.$message({
+            message: '涓婁紶澶辫触锛�',
+            type: 'warning',
+          });
+        }
+      } else if (res == 1) {
+        var fs = document.getElementById("editimageFile");
+        if (fs.files.length == 0) {
+          return;
+        }
+        var formData = new FormData();
+        formData.append("file", fs.files[0]);
+        var val_data = await upload_style(formData);
+        if (val_data.code == 200) {
+          this.viewFile = val_data.result;
+          this.$message({
+            message: '涓婁紶鎴愬姛锛�',
+            type: 'success',
+          });
+        } else {
+          this.$message({
+            message: '涓婁紶澶辫触锛�',
+            type: 'warning',
+          });
+        }
+      }
+    },
     handleSelectionChange(val) {
       this.multipleSelection = val;
     },
@@ -644,6 +871,7 @@
     insertFromDataClose() {
       this.InsertFormdialog = false;
       this.insertform = {};
+       this.filesReset();
     },
     async insertFromData() {
       if (this.insertform.dirid == null || this.insertform.depid == null) {
@@ -653,10 +881,18 @@
         });
         return;
       }
+      if (this.guidFile != null) {
+        this.insertform.fileGuid = this.guidFile;
+      }
+      if (this.viewFile != null) {
+        this.insertform.viewGuid = this.viewFile;
+      }
       const data = await insertStyle(this.insertform);
       if (data.code == 200) {
         this.InsertFormdialog = false;
         this.insertform = {};
+
+        this.filesReset();
         this.$message({
           message: '娣诲姞鎴愬姛锛�',
           type: 'success',
@@ -805,19 +1041,19 @@
     addstyle() {
       this.$router.push('/addstyle');
     },
-    statusFormat(res){
-      switch(res){
+    statusFormat(res) {
+      switch (res) {
         case "鍚敤":
           return 1;
           break;
-           case "鍋滅敤":
-             return 0;
+        case "鍋滅敤":
+          return 0;
           break;
-           case "Start Using":
+        case "Start Using":
           return 1;
           break;
-           case "Stop Using":
-             return 0;
+        case "Stop Using":
+          return 0;
           break;
       }
     },
@@ -829,10 +1065,16 @@
         });
         return;
       }
-    if(Number.isInteger(this.upform.status) == false){
-      this.upform.status = this.statusFormat(this.upform.status)
-    }
-     const data = await updateStyle(this.upform);
+      if (Number.isInteger(this.upform.status) == false) {
+        this.upform.status = this.statusFormat(this.upform.status)
+      }
+        if (this.guidFile != null) {
+        this.upform.fileGuid = this.guidFile;
+      }
+      if (this.viewFile != null) {
+        this.upform.viewGuid = this.viewFile;
+      }
+      const data = await updateStyle(this.upform);
       if (data.code == 200) {
         this.dialogFormVisible = false;
         this.upform = {};
@@ -854,7 +1096,8 @@
     removeUpdate() {
       this.upflag = false;
       this.dialogFormVisible = false;
-      this.upform = {}
+      this.upform = {};
+       this.filesReset();
     },
     submitForm(formName) {
       this.getRoleTabelData()
@@ -869,15 +1112,16 @@
       // });
     },
     resetForm(formName) {
-      this.ruleForm ={}
+      this.ruleForm = {}
       this.getRoleTabelData();
     },
     showDetail(index, row) {
+      var token = getToken();
       this.showinfoBox = true;
       this.itemdetail = row;
       this.itemdetail.createTime = this.formomentTime(this.itemdetail.createTime);
       this.itemdetail.updateTime = this.formomentTime(this.itemdetail.updateTime);
-
+      this.itemdetail.imageFile = BASE_URL + "/res/download?guid=" + row.viewGuid + "&token=" + token
     },
     closeDetial() {
       this.showinfoBox = false;
@@ -931,7 +1175,7 @@
   box-sizing: border-box;
 
   .el-input {
-    width: 745px;
+    width: 730px;
   }
 
   .searchComp {
diff --git a/src/views/userManage/resourceManage.vue b/src/views/userManage/resourceManage.vue
index 6554c01..7979415 100644
--- a/src/views/userManage/resourceManage.vue
+++ b/src/views/userManage/resourceManage.vue
@@ -91,19 +91,19 @@
 
         >
         </el-table-column>
-        <el-table-column
+        <!-- <el-table-column
           prop="img"
           align="center"
           :label="$t('userManage.resManageObj.img')"
         >
-        </el-table-column>
-         <el-table-column
+        </el-table-column> -->
+         <!-- <el-table-column
           prop="createUser"
           align="center"
           :label="$t('userManage.resManageObj.createUser')"
         >
-        </el-table-column>
-         <el-table-column
+        </el-table-column> -->
+         <!-- <el-table-column
           prop="createTime"
           align="center"
           :label="$t('userManage.resManageObj.createTime')"
@@ -122,7 +122,7 @@
           :label="$t('userManage.resManageObj.updateTime')"
             :formatter="formatTime"
         >
-        </el-table-column>
+        </el-table-column>-->
          <el-table-column
           prop="bak"
           align="center"
@@ -208,7 +208,11 @@
           <el-divider></el-divider>
           <p>
             <label> {{ $t('userManage.resManageObj.img') }}:</label>
-            <label class="boxlabel">{{ itemdetail.img }}</label>
+            <label class="boxlabel">
+              <div style="width:440px;height:200px;">
+                <img style="width:100%; height:100%" :src="itemdetail.imageFile" alt=""/>
+              </div>
+            </label>
           </p>
            <el-divider></el-divider>
              <p>
@@ -328,10 +332,18 @@
             @change="insertFile"
           />
             <el-link
+            :title="$t('common.append')"
             :underline="false"
             @click="getIsertFile"
             style="margin-left: 10px"
             ><i class="el-icon-plus"></i
+          ></el-link>
+           <el-link
+           :title="$t('common.upload')"
+            :underline="false"
+            @click="setUploadFile(0)"
+            style="margin-left: 10px"
+            ><i class="el-icon-upload2"></i
           ></el-link>
         </el-form-item>
          <el-form-item
@@ -426,6 +438,13 @@
             style="margin-left: 10px"
             ><i class="el-icon-plus"></i
           ></el-link>
+           <el-link
+           :title="$t('common.upload')"
+            :underline="false"
+            @click="setUploadFile(1)"
+            style="margin-left: 10px"
+            ><i class="el-icon-upload2"></i
+          ></el-link>
         </el-form-item>
          <el-form-item
           :label="$t('userManage.resManageObj.bak')"
@@ -444,7 +463,7 @@
         }}</el-button>
       </div>
     </el-dialog>
-        <div class="leftTree" v-if="showDirCata">
+    <div class="leftTree" v-if="showDirCata">
       <div class="treeBox">
         <style-dir-tree></style-dir-tree>
       </div>
@@ -475,9 +494,12 @@
 
 <script>
 import $ from 'jquery';
+import {
+  getToken
+} from '../../utils/auth.js'
 import moment from 'moment';
 import MyBread from '../../components/MyBread.vue';
-import { select_Res_ByPageAndCount, insertRes, updateRes, deleteRess }
+import { select_Res_ByPageAndCount, insertRes, updateRes, deleteRess, upload_res }
   from '../../api/api.js';
 import styleDirTree from '../datamanage/styleDirTree.vue';
 import styleDepTree from '../datamanage/styleDepTree.vue';
@@ -497,12 +519,14 @@
       showDepCata: false,
       dirFlag: null,
       depFlag: null,
+      ImageFile: null,
+      uploadFile: null,
       insertform: {
-        img:''
+        img: ''
       },
       tableData: [],
       itemdetail: {},
-      upform: { img:''},
+      upform: { img: '' },
       multipleSelection: [],
       count: 0,
       listData: {
@@ -520,18 +544,45 @@
     this.getRoleTabelData();
   },
   methods: {
-     getIsertFile() {
+    getIsertFile() {
       $('#imageFile').click();
     },
-    getupdateFile(){
- $('#editimageFile').click();
+    getupdateFile() {
+      $('#editimageFile').click();
+    },
+    async setUploadFile(res) {
+      var fs;
+      if (res == 0) {
+       fs = document.getElementById("imageFile");
+
+      }else if (res ==1) {
+        fs = document.getElementById("editimageFile");
+        if(fs.files.length == 0){
+          return;
+        }
+      }
+      var formData = new FormData();
+      formData.append("file", fs.files[0]);
+      var val_data = await upload_res(formData);
+      if (val_data.code == 200) {
+        this.uploadFile = val_data.result;
+        this.$message({
+          message: '涓婁紶鎴愬姛锛�',
+          type: 'success',
+        });
+      } else {
+        this.$message({
+          message: '涓婁紶澶辫触锛�',
+          type: 'warning',
+        });
+      }
     },
     insertFile() {
       var val = document.getElementById('imageFile').files;
       if (!val || !val.length) return;
       this.insertform.img = val[0].name;
     },
-  updateFile() {
+    updateFile() {
       var val = document.getElementById('editimageFile').files;
       if (!val || !val.length) return;
       this.upform.img = val[0].name;
@@ -606,10 +657,16 @@
       this.upform = {};
     },
     async EditFromData() {
+
+
+       if (this.uploadFile != null) {
+        this.upform.img = this.uploadFile;
+      }
       const data = await updateRes(this.upform);
       if (data.code == 200) {
         this.EditFormdialog = false;
         this.upform = {};
+        this.uploadFile = null;
         this.$message({
           message: '淇敼鎴愬姛锛�',
           type: 'success',
@@ -625,15 +682,16 @@
     },
     showDetail(index, row) {
       this.showinfoBox = true;
+      var token = getToken();
       this.itemdetail = row;
       this.itemdetail.createTime = this.formomentTime(this.itemdetail.createTime);
       this.itemdetail.updateTime = this.formomentTime(this.itemdetail.updateTime);
-
+      this.itemdetail.imageFile = BASE_URL + "/res/download?guid=" + row.img + "&token=" + token
     },
     handleEdit(index, row) {
       this.EditFormdialog = true;
       this.upform = row;
-            this.upform.depValue = row.depName;
+      this.upform.depValue = row.depName;
       this.upform.dirValue = row.dirName;
     },
     closeDetial() {
@@ -660,10 +718,16 @@
         });
         return;
       }
+      if (this.uploadFile != null) {
+        this.insertform.img = this.uploadFile;
+      }
       const data = await insertRes(this.insertform);
       if (data.code == 200) {
         this.InsertFormdialog = false;
-        this.insertform = {};
+        this.insertform= {
+        img: ''
+      };
+        this.uploadFile = null;
         this.$message({
           message: '娣诲姞鎴愬姛锛�',
           type: 'success',
@@ -716,7 +780,7 @@
   padding: 10px;
   box-sizing: border-box;
   .el-input {
-    width: 745px;
+    width: 730px;
   }
   .power_quire {
     margin: 10px auto;
diff --git a/src/views/userManage/roleManage.vue b/src/views/userManage/roleManage.vue
index f3d9e30..7da337d 100644
--- a/src/views/userManage/roleManage.vue
+++ b/src/views/userManage/roleManage.vue
@@ -47,10 +47,24 @@
             }}</el-button
           >
         </el-form-item>
+        <el-form-item>
+          <el-button @click="handleDelete()"
+            ><i class="el-icon-delete"></i>&nbsp;{{
+              $t('common.delete')
+            }}</el-button
+          >
+        </el-form-item>
       </el-form>
     </div>
     <div class="table_box">
-      <el-table :data="tableData" stripe style="width: 100%" height="99%">
+      <el-table
+        :data="tableData"
+        stripe
+        style="width: 100%"
+        @selection-change="handleSelectionChange"
+        height="99%"
+      >
+        <el-table-column type="selection" width="55" />
         <el-table-column
           align="center"
           type="index"
@@ -75,7 +89,7 @@
           :label="$t('userManage.RM.describe')"
         />
 
-        <el-table-column
+        <!-- <el-table-column
           align="center"
           prop="createUser"
           :label="$t('userManage.RM.creationuser')"
@@ -101,7 +115,7 @@
           align="center"
           prop="bak"
           :label="$t('userManage.RM.remarks')"
-        />
+        /> -->
         <el-table-column
           fixed="right"
           :label="$t('common.operate')"
@@ -114,12 +128,9 @@
               size="small"
               >{{ $t('common.update') }}</el-button
             >
-            <el-button
-              type="danger"
-              @click="handleDelete(scope.$index, scope.row)"
-              size="small"
-              >{{ $t('common.delete') }}</el-button
-            >
+            <el-button  @click="showDetail(scope.$index, scope.row)" type="primary" size="small">{{
+              $t('common.see')
+            }}</el-button>
           </template>
         </el-table-column>
       </el-table>
@@ -136,6 +147,7 @@
         </el-pagination>
       </div>
     </div>
+
     <el-dialog
       :title="$t('userManage.RM.insertRole')"
       top="15vh"
@@ -247,6 +259,62 @@
         >
       </div>
     </div>
+
+     <div class="infoBox" v-show="showinfoBox">
+      <el-card>
+        <div slot="header" class="clearfix">
+          <span>{{ $t('dataManage.styleObj.deInformation') }}</span>
+          <div style="float: right; cursor: pointer" @click="closeDetial"   >
+            <i class="el-icon-close"></i>
+          </div>
+        </div>
+               <div class="contentBox">
+          <p>
+            <label> {{ $t('userManage.RM.roleName') }}:</label>
+            <label class="boxlabel">{{ itemdetail.name }}</label>
+          </p>
+          <el-divider></el-divider>
+          <p>
+           <p>
+            <label> {{ $t('userManage.RM.ownedSystem') }}:</label>
+            <label class="boxlabel">{{ itemdetail.depName }}</label>
+          </p>
+          </p>
+          <el-divider></el-divider>
+          <p>
+            <label> {{ $t('userManage.RM.describe') }}:</label>
+            <label class="boxlabel">{{ itemdetail.descr }}</label>
+          </p>
+          <el-divider></el-divider>
+           <p>
+            <label> {{ $t('userManage.RM.creationuser') }}:</label>
+            <label class="boxlabel">{{ itemdetail.createUser }}</label>
+          </p>
+          <el-divider></el-divider>
+          <p>
+            <label> {{ $t('userManage.RM.creationtime') }}:</label>
+            <label class="boxlabel">{{ itemdetail.createTime }}</label>
+          </p>
+          <el-divider></el-divider>
+          <p>
+            <label> {{ $t('userManage.RM.updateonuser') }}:</label>
+            <label class="boxlabel">{{ itemdetail.UpdateUser }}</label>
+          </p>
+          <el-divider></el-divider>
+
+             <p>
+            <label> {{ $t('userManage.RM.updateontime') }}:</label>
+            <label class="boxlabel">{{ itemdetail.updateTime }}</label>
+          </p>
+           <el-divider></el-divider>
+             <p>
+            <label> {{ $t('userManage.RM.remarks') }}:</label>
+            <label class="boxlabel">{{ itemdetail.bak }}</label>
+          </p>
+           <el-divider></el-divider>
+        </div>
+      </el-card>
+    </div>
   </div>
 </template>
 
@@ -258,7 +326,7 @@
   select_Role_ByPageAndCount,
   selectdepTab,
   insertRole,
-  deleteRole,
+  deleteRoles,
   selectDep,
   updateRole,
 } from '../../api/api';
@@ -270,6 +338,7 @@
   },
   data() {
     return {
+      showinfoBox: false,
       showCata: false,
       formLabelWidth: '120px',
       InsertFormdialog: false,
@@ -284,6 +353,9 @@
       updateform: {},
       count: 0,
       selData: [],
+      itemdetail: {},
+      multipleSelection: [],
+
       listData: {
         name: null,
         depName: null,
@@ -293,13 +365,28 @@
     };
   },
   methods: {
+        closeDetial() {
+      this.showinfoBox = false;
+      this.itemdetail = {};
+    },
+      showDetail(index, row) {
+      this.showinfoBox = true;
+      this.itemdetail = row;
+      this.itemdetail.createTime = this.formomentTime(this.itemdetail.createTime);
+      this.itemdetail.updateTime = this.formomentTime(this.itemdetail.updateTime);
+
+    },
+    handleSelectionChange(val) {
+      this.multipleSelection = val;
+    },
     formatTime(row, column) {
       let date = row[column.property];
-
+      return this.formomentTime(date);
+    },
+    formomentTime(date) {
       if (date === undefined || date === null) {
-        return '';
+        return;
       }
-
       return moment(parseInt(date)).format('YYYY-MM-DD HH:mm:ss');
     },
     showDepTree(res) {
@@ -418,8 +505,13 @@
         });
       }
     },
-    async handleDelete(index, row) {
-      const data = await deleteRole({ id: row.id.toString() });
+    async handleDelete() {
+      var std = [];
+      for (var i in this.multipleSelection) {
+        std.push(this.multipleSelection[i].id);
+      }
+      const data = await deleteRoles({ ids: std.toString() });
+
       if (data.code == 200) {
         this.InsertFormdialog = false;
         this.$message({
@@ -519,5 +611,58 @@
   .text-center {
     text-align: center;
   }
+  .infoBox {
+    width: 500px;
+    border: 1px solid #eee;
+    position: absolute;
+    z-index: 100;
+    top: 25%;
+    right: 12%;
+    background-color: #fff;
+    .el-card {
+      background-color: transparent;
+      span {
+        font-size: 16px;
+        font-weight: 600;
+      }
+    }
+    .contentBox {
+      margin: 0 aotu 10px;
+      height: 485px;
+      overflow: auto;
+      p {
+        // background-color: #bfa;
+        // margin-bottom: 10px;
+        font-size: 14px;
+      }
+      .boxlabel {
+        margin-left: 10px;
+      }
+    }
+    /* 鏁翠綋鏍峰紡 */
+    .contentBox::-webkit-scrollbar {
+      width: 6px;
+      height: 6px;
+    }
+
+    /* 婊氬姩鏉� */
+    .contentBox::-webkit-scrollbar-thumb {
+      background-color: #b3d8ff;
+      border-radius: 6px;
+    }
+
+    /* 婊氬姩鏉¢紶鏍囩粡杩囨牱寮� */
+    .contentBox::-webkit-scrollbar-thumb:hover {
+      background-color: #b3d8ff;
+      border-radius: 6px;
+    }
+
+    /* 婊氬姩鏉¤建閬� */
+    .contentBox::-webkit-scrollbar-track-piece {
+      -webkit-box-shadow: inset 0 0 5px rgba(0, 0, 0, 0.2);
+      border-radius: 10px;
+      background: #ededed;
+    }
+  }
 }
 </style>

--
Gitblit v1.9.3