1
lxl
2022-10-12 1b352f5f7952dd12e3e7173cda515315458a0853
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;