From 1b352f5f7952dd12e3e7173cda515315458a0853 Mon Sep 17 00:00:00 2001
From: lxl <lixuliang_hd@126.com>
Date: 星期三, 12 十月 2022 11:02:45 +0800
Subject: [PATCH] 1

---
 src/views/userManage/resourceManage.vue |  299 +++++++++++++++++++++++++++++++++++++++++++++++++++--------
 1 files changed, 256 insertions(+), 43 deletions(-)

diff --git a/src/views/userManage/resourceManage.vue b/src/views/userManage/resourceManage.vue
index b7a3294..6554c01 100644
--- a/src/views/userManage/resourceManage.vue
+++ b/src/views/userManage/resourceManage.vue
@@ -73,13 +73,13 @@
         >
         </el-table-column>
         <el-table-column
-          prop="depid"
+          prop="depName"
           align="center"
           :label="$t('userManage.resManageObj.depid')"
         >
         </el-table-column>
         <el-table-column
-          prop="dirid"
+          prop="dirName"
           align="center"
           :label="$t('userManage.resManageObj.dirid')"
         >
@@ -175,39 +175,64 @@
         </div>
                <div class="contentBox">
           <p>
-            <label> {{ $t('userManage.userInfoObj.name') }}:</label>
+            <label> {{ $t('userManage.resManageObj.name') }}:</label>
             <label class="boxlabel">{{ itemdetail.name }}</label>
           </p>
           <el-divider></el-divider>
           <p>
            <p>
-            <label> {{ $t('userManage.userInfoObj.tag') }}:</label>
-            <label class="boxlabel">{{ itemdetail.tag }}</label>
+            <label> {{ $t('userManage.resManageObj.server') }}:</label>
+            <label class="boxlabel">{{ itemdetail.server }}</label>
           </p>
           </p>
           <el-divider></el-divider>
           <p>
-            <label> {{ $t('userManage.userInfoObj.createUser') }}:</label>
-            <label class="boxlabel">{{ itemdetail.createUser }}</label>
+            <label> {{ $t('userManage.resManageObj.source') }}:</label>
+            <label class="boxlabel">{{ itemdetail.source }}</label>
           </p>
           <el-divider></el-divider>
            <p>
-            <label> {{ $t('userManage.userInfoObj.createTime') }}:</label>
+            <label> {{ $t('userManage.resManageObj.depid') }}:</label>
+            <label class="boxlabel">{{ itemdetail.depName }}</label>
+          </p>
+          <el-divider></el-divider>
+          <p>
+            <label> {{ $t('userManage.resManageObj.dirid') }}:</label>
+            <label class="boxlabel">{{ itemdetail.dirName }}</label>
+          </p>
+          <el-divider></el-divider>
+          <p>
+            <label> {{ $t('userManage.resManageObj.descr') }}:</label>
+            <label class="boxlabel">{{ itemdetail.descr }}</label>
+          </p>
+          <el-divider></el-divider>
+          <p>
+            <label> {{ $t('userManage.resManageObj.img') }}:</label>
+            <label class="boxlabel">{{ itemdetail.img }}</label>
+          </p>
+           <el-divider></el-divider>
+             <p>
+            <label> {{ $t('userManage.resManageObj.createUser') }}:</label>
+            <label class="boxlabel">{{ itemdetail.createUser }}</label>
+          </p>
+           <el-divider></el-divider>
+             <p>
+            <label> {{ $t('userManage.resManageObj.createTime') }}:</label>
             <label class="boxlabel">{{ itemdetail.createTime }}</label>
           </p>
-          <el-divider></el-divider>
-          <p>
-            <label> {{ $t('userManage.userInfoObj.updateUser') }}:</label>
+           <el-divider></el-divider>
+             <p>
+            <label> {{ $t('userManage.resManageObj.updateUser') }}:</label>
             <label class="boxlabel">{{ itemdetail.updateUser }}</label>
           </p>
-          <el-divider></el-divider>
-          <p>
-            <label> {{ $t('userManage.userInfoObj.updateTime') }}:</label>
+           <el-divider></el-divider>
+             <p>
+            <label> {{ $t('userManage.resManageObj.updateTime') }}:</label>
             <label class="boxlabel">{{ itemdetail.updateTime }}</label>
           </p>
-          <el-divider></el-divider>
-          <p>
-            <label> {{ $t('userManage.userInfoObj.bak') }}:</label>
+           <el-divider></el-divider>
+             <p>
+            <label> {{ $t('userManage.resManageObj.bak') }}:</label>
             <label class="boxlabel">{{ itemdetail.bak }}</label>
           </p>
            <el-divider></el-divider>
@@ -263,7 +288,7 @@
           :label="$t('userManage.resManageObj.depid')"
           :label-width="formLabelWidth"
         >
-          <el-input v-model="insertform.depid" disabled autocomplete="off"></el-input>
+          <el-input v-model="insertform.depValue" disabled autocomplete="off"></el-input>
             <el-link
             :underline="false"
             @click="showDepTree(0)"
@@ -275,10 +300,10 @@
           :label="$t('userManage.resManageObj.dirid')"
           :label-width="formLabelWidth"
         >
-          <el-input v-model="insertform.dirid" disabled autocomplete="off"></el-input>
+          <el-input v-model="insertform.dirValue" disabled autocomplete="off"></el-input>
             <el-link
             :underline="false"
-            @click="showDepTree(0)"
+            @click="showDirTree(0)"
             style="margin-left: 10px"
             ><i class="el-icon-plus"></i
           ></el-link>
@@ -289,14 +314,22 @@
         >
           <el-input v-model="insertform.descr" autocomplete="off"></el-input>
         </el-form-item>
-                 <el-form-item
+         <el-form-item
           :label="$t('userManage.resManageObj.img')"
           :label-width="formLabelWidth"
-        >
-          <el-input v-model="insertform.img" autocomplete="off"></el-input>
+        >    <el-input v-model="insertform.img" disabled autocomplete="off"></el-input>
+         <input
+            name="file1"
+            :accept="'.jpg,.png'"
+            type="file"
+            id="imageFile"
+            multiple="multiple"
+            style="display: none"
+            @change="insertFile"
+          />
             <el-link
             :underline="false"
-
+            @click="getIsertFile"
             style="margin-left: 10px"
             ><i class="el-icon-plus"></i
           ></el-link>
@@ -323,26 +356,83 @@
       style="overflow: hidden"
       :visible.sync="EditFormdialog"
       :before-close="EditFromDataClose"
-      width="30%"
     >
-      <el-form :model="upform">
+       <el-form :model="upform">
         <el-form-item
-          :label="$t('userManage.userInfoObj.name')"
+          :label="$t('userManage.resManageObj.name')"
           :label-width="formLabelWidth"
         >
-          <el-input v-model="upform.name"  ></el-input>
+          <el-input v-model="upform.name" autocomplete="off"></el-input>
         </el-form-item>
         <el-form-item
-          :label="$t('userManage.userInfoObj.tag')"
+          :label="$t('userManage.resManageObj.server')"
           :label-width="formLabelWidth"
         >
-          <el-input v-model="upform.tag"  ></el-input>
+          <el-input v-model="upform.server" autocomplete="off"></el-input>
         </el-form-item>
         <el-form-item
-          :label="$t('userManage.userInfoObj.bak')"
+          :label="$t('userManage.resManageObj.source')"
           :label-width="formLabelWidth"
         >
-          <el-input v-model="upform.bak" ></el-input>
+          <el-input v-model="upform.source" autocomplete="off"></el-input>
+        </el-form-item>
+          <el-form-item
+          :label="$t('userManage.resManageObj.depid')"
+          :label-width="formLabelWidth"
+        >
+          <el-input v-model="upform.depValue" disabled autocomplete="off"></el-input>
+            <el-link
+            :underline="false"
+            @click="showDepTree(1)"
+            style="margin-left: 10px"
+            ><i class="el-icon-plus"></i
+          ></el-link>
+        </el-form-item>
+                 <el-form-item
+          :label="$t('userManage.resManageObj.dirid')"
+          :label-width="formLabelWidth"
+        >
+          <el-input v-model="upform.dirValue" disabled autocomplete="off"></el-input>
+            <el-link
+            :underline="false"
+            @click="showDirTree(1)"
+            style="margin-left: 10px"
+            ><i class="el-icon-plus"></i
+          ></el-link>
+        </el-form-item>
+                 <el-form-item
+          :label="$t('userManage.resManageObj.descr')"
+          :label-width="formLabelWidth"
+        >
+          <el-input v-model="upform.descr" autocomplete="off"></el-input>
+        </el-form-item>
+                 <el-form-item
+          :label="$t('userManage.resManageObj.img')"
+          :label-width="formLabelWidth"
+        >
+          <el-input v-model="upform.img" disabled autocomplete="off"></el-input>
+             <input
+            name="file1"
+            :accept="'.jpg,.png'"
+            type="file"
+            id="editimageFile"
+            multiple="multiple"
+            style="display: none"
+            @change="updateFile"
+          />
+            <el-link
+            :underline="false"
+            @click="getupdateFile"
+            style="margin-left: 10px"
+            ><i class="el-icon-plus"></i
+          ></el-link>
+        </el-form-item>
+         <el-form-item
+          :label="$t('userManage.resManageObj.bak')"
+          :label-width="formLabelWidth"
+        >
+          <el-input v-model="upform.bak" autocomplete="off"></el-input>
+
         </el-form-item>
       </el-form>
       <div slot="footer" class="dialog-footer">
@@ -354,15 +444,45 @@
         }}</el-button>
       </div>
     </el-dialog>
+        <div class="leftTree" v-if="showDirCata">
+      <div class="treeBox">
+        <style-dir-tree></style-dir-tree>
+      </div>
+      <div class="btnBox">
+        <el-button type="primary" size="small" @click="selectDirCataName">{{
+          $t('common.confirm')
+        }}</el-button>
+        <el-button type="primary" size="small" @click="showDirCata = false">{{
+          $t('common.close')
+        }}</el-button>
+      </div>
+    </div>
+    <div class="leftTree" v-if="showDepCata">
+      <div class="treeBox">
+        <style-dep-tree></style-dep-tree>
+      </div>
+      <div class="btnBox">
+        <el-button type="primary" size="small" @click="selectDepCataName">{{
+          $t('common.confirm')
+        }}</el-button>
+        <el-button type="primary" size="small" @click="showDepCata = false">{{
+          $t('common.close')
+        }}</el-button>
+      </div>
+    </div>
   </div>
 </template>
 
 <script>
+import $ from 'jquery';
 import moment from 'moment';
 import MyBread from '../../components/MyBread.vue';
-import { select_Res_ByPageAndCount, insertAuth, updateAuth, deleteAuths } from '../../api/api.js';
+import { select_Res_ByPageAndCount, insertRes, updateRes, deleteRess }
+  from '../../api/api.js';
+import styleDirTree from '../datamanage/styleDirTree.vue';
+import styleDepTree from '../datamanage/styleDepTree.vue';
 export default {
-  components: { MyBread },
+  components: { MyBread, styleDirTree, styleDepTree },
   data() {
     return {
       formLabelWidth: '130px',
@@ -373,10 +493,16 @@
       InsertFormdialog: false,
       showinfoBox: false,
       EditFormdialog: false,
-      insertform: {},
+      showDirCata: false,
+      showDepCata: false,
+      dirFlag: null,
+      depFlag: null,
+      insertform: {
+        img:''
+      },
       tableData: [],
       itemdetail: {},
-      upform: {},
+      upform: { img:''},
       multipleSelection: [],
       count: 0,
       listData: {
@@ -394,12 +520,63 @@
     this.getRoleTabelData();
   },
   methods: {
+     getIsertFile() {
+      $('#imageFile').click();
+    },
+    getupdateFile(){
+ $('#editimageFile').click();
+    },
+    insertFile() {
+      var val = document.getElementById('imageFile').files;
+      if (!val || !val.length) return;
+      this.insertform.img = val[0].name;
+    },
+  updateFile() {
+      var val = document.getElementById('editimageFile').files;
+      if (!val || !val.length) return;
+      this.upform.img = val[0].name;
+    },
+    showDirTree(res) {
+      this.dirFlag = res;
+      this.showDirCata = true;
+    },
+    showDepTree(res) {
+      this.depFlag = res;
+      this.showDepCata = true;
+    },
+    selectDepCataName() {
+      this.showDepCata = false;
+      switch (this.depFlag) {
+        case 0:
+          this.insertform.depValue = this.$store.state.styleDepCateNodes.name;
+          this.insertform.depid = this.$store.state.styleDepCateNodes.id;
+          break;
+        case 1:
+          this.upform.depValue = this.$store.state.styleDepCateNodes.name;
+          this.upform.depid = this.$store.state.styleDepCateNodes.id;
+          break;
+      }
+    },
+    selectDirCataName() {
+      this.showDirCata = false;
+      switch (this.dirFlag) {
+        case 0:
+          // var data = this.$store.state.styleDirCateNodes;
+          this.insertform.dirValue = this.$store.state.styleDirCateNodes.name;
+          this.insertform.dirid = this.$store.state.styleDirCateNodes.id;
+          break;
+        case 1:
+          this.upform.dirValue = this.$store.state.styleDirCateNodes.name;
+          this.upform.dirid = this.$store.state.styleDirCateNodes.id;
+          break;
+      }
+    },
     async DelFromData() {
       var std = [];
       for (var i in this.multipleSelection) {
         std.push(this.multipleSelection[i].id);
       }
-      const data = await deleteAuths({ ids: std.toString() });
+      const data = await deleteRess({ ids: std.toString() });
       if (data.code == 200) {
         this.$message({
           message: '鍒犻櫎鎴愬姛锛�',
@@ -429,7 +606,7 @@
       this.upform = {};
     },
     async EditFromData() {
-      const data = await updateAuth(this.upform);
+      const data = await updateRes(this.upform);
       if (data.code == 200) {
         this.EditFormdialog = false;
         this.upform = {};
@@ -449,10 +626,15 @@
     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);
+
     },
     handleEdit(index, row) {
       this.EditFormdialog = true;
       this.upform = row;
+            this.upform.depValue = row.depName;
+      this.upform.dirValue = row.dirName;
     },
     closeDetial() {
       this.showinfoBox = false;
@@ -471,7 +653,14 @@
       this.insertform = {};
     },
     async insertFromData() {
-      const data = await insertAuth(this.insertform);
+      if (this.insertform.dirid == null || this.insertform.depid == null) {
+        this.$message({
+          message: '璇烽�夋嫨璧勬簮鎵�灞炵殑鐩綍鎴栧崟浣�',
+          type: 'warning',
+        });
+        return;
+      }
+      const data = await insertRes(this.insertform);
       if (data.code == 200) {
         this.InsertFormdialog = false;
         this.insertform = {};
@@ -493,6 +682,7 @@
       }
       this.listData.name = this.ruleForm.name;
       const data = await select_Res_ByPageAndCount(this.listData);
+      console.log(data)
       if (data.code != 200) {
         this.$message.error('鍒楄〃璋冪敤澶辫触');
       }
@@ -526,15 +716,15 @@
   padding: 10px;
   box-sizing: border-box;
   .el-input {
-     width: 745px;
+    width: 745px;
   }
   .power_quire {
-   margin: 10px auto;
+    margin: 10px auto;
     background: #fff;
     border-radius: 5px;
     border: 1px solid rgb(202, 201, 204);
     margin-bottom: 10px;
-      .el-form-item {
+    .el-form-item {
       margin: 5px;
     }
     .el-input {
@@ -542,7 +732,7 @@
     }
   }
   .table_box {
-    height:76%;
+    height: 76%;
     padding: 10px;
     background: #fff;
     border-radius: 5px;
@@ -551,6 +741,29 @@
   .pagination_box {
     margin-top: 20px;
   }
+  .leftTree {
+    position: absolute;
+    z-index: 10;
+    z-index: 9999;
+    top: 100px;
+    left: 800px;
+    width: 400px;
+    height: 600px;
+    background: #f0f2f5;
+    border: 1px solid #000;
+    .treeBox {
+      height: 550px;
+      overflow: auto;
+      /deep/ .el-tree-node__content:hover {
+        background-color: rgb(153, 153, 153);
+      }
+    }
+    .btnBox {
+      width: 160px;
+      margin: 10px auto 0;
+      // background-color: red;
+    }
+  }
   .infoBox {
     width: 500px;
     border: 1px solid #eee;

--
Gitblit v1.9.3