管道基础大数据平台系统开发-【前端】-新系統界面
TreeWish
2023-03-03 b6c8e7c61f0270598ba7fdbc44f79512e010d0fe
src/views/userManage/roleManage.vue
@@ -1,27 +1,30 @@
<template>
  <div class="logLog_box">
    <My-bread
      :list="[
    <My-bread :list="[
        `${$t('operatManage.operatManage')}`,
        `${$t('userManage.roleManage')}`,
      ]"
    ></My-bread>
      ]"></My-bread>
    <el-divider />
    <div class="inquire subpage_Div"  ref="container">
      <el-form ref="ruleForm" :model="roleForm" :inline="true">
    <div
      class="inquire subpage_Div"
      ref="container"
    >
      <el-form
        ref="ruleForm"
        :model="roleForm"
        :inline="true"
      >
        <div class="flex_box">
          <div style="margin-right: auto">
            <el-form-item :label="$t('userManage.RM.roleName')" prop="username">
              <el-input v-model="roleForm.username" style="width: 200px" />
            </el-form-item>
            <el-form-item
              :label="$t('userManage.RM.ownedSystem')"
              prop="ownedSystem"
            >
              <el-select
                :popper-append-to-body="false"
                size="small"
                v-model="roleForm.depValue"
                placeholder="请选择"
                :placeholder="$t('userManage.RM.ownedSystemHolder')"
                style="width: 200px"
              >
                <el-option
@@ -44,24 +47,39 @@
            :placeholder="$t('common.pleaseInput')"
          /> -->
            </el-form-item>
            <el-form-item
                :label="$t('userManage.RM.roleName')"
                prop="username"
            >
              <el-input
                  v-model="roleForm.username"
                  :placeholder="$t('userManage.RM.roleNameHolder')"
                  size="small"
                  style="width: 200px"
              >
                <i slot="suffix" class="el-icon-search" @click="onSubmit"></i>
              </el-input>
            </el-form-item>
          </div>
          <div>
            <el-form-item>
              <el-button type="info" size="small" @click="resetForm('ruleForm')"
                ><i class="el-icon-delete"></i>&nbsp;{{
                  $t("userManage.RM.reset")
                }}</el-button
              >
            </el-form-item>
<!--            <el-form-item>-->
<!--              <el-button-->
<!--                size="small"-->
<!--                type="primary"-->
<!--                @click="onSubmit('ruleForm')"-->
<!--              ><i class="el-icon-search"></i> &nbsp;{{-->
<!--                  $t("userManage.RM.query")-->
<!--                }}</el-button>-->
<!--            </el-form-item>-->
            <el-form-item>
              <el-button
                size="small"
                type="primary"
                @click="onSubmit('ruleForm')"
                ><i class="el-icon-search"></i> &nbsp;{{
                  $t("userManage.RM.query")
                }}</el-button
              >
                  type="success"
                  size="small"
                  @click="setInsertFormdialog"
                  v-if="menuStatus.insert"
              ><i class="el-icon-circle-plus-outline"></i> &nbsp;{{
                  $t("userManage.RM.add")
                }}</el-button>
            </el-form-item>
            <el-form-item>
              <el-button
@@ -69,21 +87,18 @@
                size="small"
                @click="handleDelete()"
                v-if="menuStatus.delete"
                ><i class="el-icon-delete"></i>&nbsp;{{
              ><i class="el-icon-delete"></i>&nbsp;{{
                  $t("common.delete")
                }}</el-button
              >
                }}</el-button>
            </el-form-item>
            <el-form-item>
              <el-button
                type="success"
                size="small"
                @click="setInsertFormdialog"
                v-if="menuStatus.insert"
                ><i class="el-icon-circle-plus-outline"></i> &nbsp;{{
                  $t("userManage.RM.add")
                }}</el-button
              >
                  type="info"
                  size="small"
                  @click="resetForm('ruleForm')"
              ><i class="el-icon-delete"></i>&nbsp;{{
                  $t("userManage.RM.reset")
                }}</el-button>
            </el-form-item>
          </div>
        </div>
@@ -135,21 +150,33 @@
        </el-form-item> -->
      </el-form>
    </div>
    <div class="table_box subpage_Div" :style="styleVar">
    <div class="dividing-line"></div>
    <div
      class="table_box subpage_Div"
      :style="styleVar"
    >
      <el-table
        :data="tableData"
        style="width: 100%"
        height="calc(100% - 57px)"
        border
        height="calc(100% - 45px)"
        @selection-change="handleSelectionChange"
      >
        <el-table-column type="selection" width="55" />
        <el-table-column
          type="selection"
          width="55"
        />
        <el-table-column
          align="center"
          type="index"
          :label="$t('userManage.RM.index')"
          width="70px"
        />
        <el-table-column align="center" prop="id" v-if="false" />
        <el-table-column
          align="center"
          prop="id"
          v-if="false"
        />
        <el-table-column
          align="center"
          prop="name"
@@ -211,22 +238,27 @@
          width="200"
        >
          <template slot-scope="scope">
             <el-button
            type="primary"
              @click="showDetail(scope.$index, scope.row)"
              size="small"
              plain
            >{{ $t("common.see") }}</el-button>
            <el-button
              v-if="menuStatus.update"
              type="warning"
              @click="handleEdit(scope.$index, scope.row)"
              size="small"
              >{{ $t("common.update") }}</el-button
            >
            <el-button
              @click="showDetail(scope.$index, scope.row)"
              size="small"
              >{{ $t("common.see") }}</el-button
            >
              plain
            >{{ $t("common.update") }}</el-button>
          </template>
        </el-table-column>
      </el-table>
      <div style="margin-top: 25px" class="pagination_box">
      <div
        style="margin-top: 10px"
        class="pagination_box"
      >
        <el-pagination
          @size-change="handleSizeChange"
          @current-change="handleCurrentChange"
@@ -242,18 +274,18 @@
    <el-dialog
      :title="$t('userManage.RM.insertRole')"
      top="15vh"
      width="50vh"
      :before-close="handleClose"
      style="overflow: hidden"
      :visible.sync="InsertFormdialog"
    >
      <el-form :model="insertform">
        <div style="height: 500px; overflow: auto">
      <el-form :model="insertform" label-position="top">
        <el-form-item
          :label="$t('userManage.RM.roleName')"
          :label-width="formLabelWidth"
        >
          <el-input
            style="width: 95%"
             style="width:85%"
            v-model="insertform.name"
            autocomplete="off"
          ></el-input>
@@ -268,7 +300,7 @@
            :popper-append-to-body="false"
            v-model="insertform.depValue"
            placeholder="请选择"
            style="width: 95%"
             style="width:85%"
          >
            <el-option
              :value="insertform.depid"
@@ -301,7 +333,7 @@
          :label-width="formLabelWidth"
        >
          <el-input
            style="width: 95%"
            style="width:85%"
            v-model="insertform.descr"
            autocomplete="off"
          ></el-input>
@@ -310,42 +342,62 @@
          :label="$t('userManage.RM.isAdmin')"
          :label-width="formLabelWidth"
        >
          <el-radio v-model="insertform.isAdmin" label="1">是</el-radio>
          <el-radio v-model="insertform.isAdmin" label="0">否</el-radio>
          <el-radio
            v-model="insertform.isAdmin"
            label="1"
          >是</el-radio>
          <el-radio
            v-model="insertform.isAdmin"
            label="0"
          >否</el-radio>
        </el-form-item>
        <el-form-item
          :label="$t('userManage.RM.remarks')"
          :label-width="formLabelWidth"
        >
          <el-input
            style="width: 95%"
             style="width:85%"
            v-model="insertform.bak"
            autocomplete="off"
          ></el-input>
        </el-form-item>
      </el-form>
      <div slot="footer" class="dialog-footer">
        <el-button size="small" @click="insertFromClose">{{
        </div>
      <div
        slot="footer"
        class="dialog-footer"
      >
        <el-button
          size="small"
          @click="insertFromClose"
        >{{
          $t("common.close")
        }}</el-button>
        <el-button type="primary" size="small" @click="insertFromData">{{
        <el-button
          type="primary"
          size="small"
          @click="insertFromData"
        >{{
          $t("common.confirm")
        }}</el-button>
      </div>
    </el-dialog>
    <el-dialog
      :title="$t('userManage.RM.updateRole')"
      top="15vh"
      width="50vh"
      style="overflow: hidden"
      :visible.sync="UpdateFormdialog"
      :before-close="handleCloseEdit"
    >
      <el-form :model="updateform">
        <div style="height: 500px; overflow: auto">
      <el-form :model="updateform" label-position="top">
        <el-form-item
          :label="$t('userManage.RM.roleName')"
          :label-width="formLabelWidth"
        >
          <el-input v-model="updateform.name" autocomplete="off"></el-input>
          <el-input
            v-model="updateform.name"
            autocomplete="off"
             style="width:85%"
          ></el-input>
        </el-form-item>
        <el-form-item
@@ -357,7 +409,7 @@
            :popper-append-to-body="false"
            v-model="updateform.depValue"
            placeholder="请选择"
            style="width: 95%"
             style="width:85%"
          >
            <el-option
              :value="updateform.depid"
@@ -390,49 +442,90 @@
          :label="$t('userManage.RM.isAdmin')"
          :label-width="formLabelWidth"
        >
          <el-radio v-model="updateform.isAdmin" label="1">是</el-radio>
          <el-radio v-model="updateform.isAdmin" label="0">否</el-radio>
          <el-radio
            v-model="updateform.isAdmin"
            label="1"
          >是</el-radio>
          <el-radio
            v-model="updateform.isAdmin"
            label="0"
          >否</el-radio>
        </el-form-item>
        <el-form-item
          :label="$t('userManage.RM.describe')"
          :label-width="formLabelWidth"
        >
          <el-input v-model="updateform.descr" autocomplete="off"></el-input>
          <el-input
            v-model="updateform.descr"
            autocomplete="off"
             style="width:85%"
          ></el-input>
        </el-form-item>
        <el-form-item
          :label="$t('userManage.RM.remarks')"
          :label-width="formLabelWidth"
        >
          <el-input v-model="updateform.bak" autocomplete="off"></el-input>
          <el-input
            v-model="updateform.bak"
            autocomplete="off"
             style="width:85%"
          ></el-input>
        </el-form-item>
      </el-form>
      <div slot="footer" class="dialog-footer">
        <el-button size="small" @click="updateFromClose">{{
        </div>
      <div
        slot="footer"
        class="dialog-footer"
      >
        <el-button
          size="small"
          @click="updateFromClose"
        >{{
          $t("common.close")
        }}</el-button>
        <el-button type="primary" size="small" @click="updateFromData">{{
        <el-button
          type="primary"
          size="small"
          @click="updateFromData"
        >{{
          $t("common.confirm")
        }}</el-button>
      </div>
    </el-dialog>
    <div class="leftTree subpage_Div box_div" v-if="showCata">
    <div
      class="leftTree subpage_Div box_div"
      v-if="showCata"
    >
      <div class="treeBox">
        <role-dep-tree></role-dep-tree>
      </div>
      <div class="btnBox">
        <el-button type="primary" size="small" @click="selectCataName"
          >确定</el-button
        >
        <el-button type="info" size="small" @click="showCata = false"
          >取消</el-button
        >
        <el-button
          type="primary"
          size="small"
          @click="selectCataName"
        >确定</el-button>
        <el-button
          type="info"
          size="small"
          @click="showCata = false"
        >取消</el-button>
      </div>
    </div>
<div class="infoBox_box" v-show="showinfoBox">
    <div
      class="infoBox box_div subpage_Div"
    <div class="infoBox box_div subpage_Div" v-show="showinfoBox">
      <div slot="header" class="clearfix">
    >
      <div
        slot="header"
        class="clearfix"
      >
        <span>{{ $t("dataManage.styleObj.deInformation") }}</span>
        <div style="float: right; cursor: pointer" @click="closeDetial">
        <div
          style="float: right; cursor: pointer"
          @click="closeDetial"
        >
          <i class="el-icon-close"></i>
        </div>
      </div>
@@ -488,6 +581,7 @@
        <el-divider></el-divider>
      </div>
    </div>
</div>
  </div>
</template>
@@ -562,7 +656,7 @@
    };
  },
  methods: {
     onResize() {
    onResize() {
      this.timer && clearTimeout(this.timer);
      this.timer = setTimeout(() => {
        this.calHeight();
@@ -572,7 +666,8 @@
      this.$nextTick(() => {
        const rect = this.$refs.container.getBoundingClientRect();
        this.tableHeight = `${rect.height + 97}px`;
        this.styleVar["height"] = `calc(100% - ${rect.height + 97}px)`;
        // this.styleVar["height"] = `calc(100% - ${rect.height + 97}px)`;
        this.styleVar["height"] = `calc(100% - ${rect.height + 30}px)`;
      });
    },
    handleRouleDepList(data, node, nodeData) {
@@ -679,7 +774,7 @@
      if (data.code != 200) {
        this.$message.error("列表调用失败");
      }
      console.log(data);
      this.tableData = data.result;
      this.count = data.count;
    },
@@ -699,8 +794,12 @@
      });
    },
    insertFromClose() {
      this.InsertFormdialog = false;
      this.insertform = {};
      this.$confirm("关闭后无法保存,是否关闭?")
        .then((_) => {
          this.InsertFormdialog = false;
          this.insertform = {};
        })
        .catch((_) => { });
    },
    async insertFromData() {
      if (this.insertform.depValue == null) {
@@ -727,8 +826,13 @@
      }
    },
    updateFromClose() {
      this.UpdateFormdialog = false;
      this.updateform = {};
      this.$confirm("关闭后无法保存,是否关闭?")
        .then((_) => {
          this.UpdateFormdialog = false;
          this.updateform = {};
          this.getRoleTabelData();
        })
        .catch((_) => { });
    },
    async updateFromData() {
      if (this.updateform.depValue == null) {
@@ -801,7 +905,12 @@
      this.updateform = row;
      this.updateform.isAdmin = row.isAdmin.toString();
      const data = await selectDep({ id: row.depid });
      this.updateform.depValue = data.result.name;
      if (data.result == null) {
        this.updateform.depValue = null;
      } else {
        this.updateform.depValue = data.result.name;
      }
      this.UpdateFormdialog = true;
    },
    onSubmit() {
@@ -824,6 +933,21 @@
          this.menuStatus.update = true;
          break;
      }
    },
    handleClose() {
      this.$confirm("关闭后无法保存,是否关闭?")
        .then((_) => {
          this.InsertFormdialog = false
        })
        .catch((_) => { });
    },
    handleCloseEdit() {
      this.$confirm("关闭后无法保存,是否关闭?")
        .then((_) => {
          this.UpdateFormdialog = false
          this.getRoleTabelData();
        })
        .catch((_) => { });
    },
  },
  beforeDestroy() {
@@ -852,7 +976,7 @@
.logLog_box {
  height: 98%;
  width: 98%;
  padding: 1%;
  padding: 0.5%;
  .el-input {
    width: 300px;
@@ -878,12 +1002,12 @@
  .inquire {
    height: auto;
    padding: 8px;
    margin-top: 20px;
    //padding: 8px;
    //margin-top: 20px;
    border-radius: 5px;
    margin-bottom: 20px;
    //margin-bottom: 20px;
    // width: calc(100% - 22px);
    .el-form-item {