管道基础大数据平台系统开发-【前端】-新系統界面
1
Surpriseplus
2022-11-24 12d4c8077c73db88abee8d21b7a86ab802254e0e
src/views/datamanage/domainManage.vue
@@ -1,6 +1,11 @@
<template>
  <div class="authorityManagement_box">
    <My-bread :list="[`${$t('dataManage.dataManage')}`, `值域管理`]"></My-bread>
  <div class="domainBox">
    <My-bread
      :list="[
        `${$t('dataManage.dataManage')}`,
        `${$t('dataManage.rangeManage')}`,
      ]"
    ></My-bread>
    <el-divider />
    <div class="mainBox">
      <div class="leftTree">
@@ -14,7 +19,10 @@
      <div class="right">
        <div class="inquire">
          <el-form ref="queryForm" :model="queryForm" :inline="true">
            <el-form-item :label="$t('dataManage.vmobj.keyword')" prop="name">
            <el-form-item
              :label="$t('dataManage.domainManage.domCode')"
              prop="name"
            >
              <el-input
                v-model="queryForm.code"
                :placeholder="$t('common.pleaseInput')"
@@ -25,20 +33,23 @@
                @click="queryInfo('queryForm')"
                icon="el-icon-search"
                size="small"
                >{{ $t("common.iquery") }}</el-button
                class="primary"
                >{{ $t('common.iquery') }}</el-button
              >
              <el-button
                @click="resetInfo('queryForm')"
                icon="el-icon-delete"
                size="small"
                >{{ $t("common.empty") }}</el-button
                type="info"
                >{{ $t('common.empty') }}</el-button
              >
              <el-button
                v-if="btnStatus.insert"
                @click="showAddDialog"
                icon="el-icon-plus"
                size="small"
                >{{ $t("common.append") }}</el-button
                type="success"
                >{{ $t('common.append') }}</el-button
              >
              <el-button
                v-if="btnStatus.delete"
@@ -46,7 +57,7 @@
                type="danger"
                size="small"
                icon="el-icon-delete"
                >{{ $t("common.delete") }}</el-button
                >{{ $t('common.delete') }}</el-button
              >
            </el-form-item>
          </el-form>
@@ -54,11 +65,8 @@
        <div class="table_box">
          <el-table
            :data="tableData"
            border
            style="width: 100%"
            fit
            @selection-change="handleSelectionChange"
            height="99%"
            height="100%"
          >
            <el-table-column type="selection" width="50" />
            <el-table-column
@@ -87,11 +95,11 @@
              prop="codeDesc"
              :label="$t('dataManage.domainManage.codeDesc')"
            />
            <el-table-column
            <!-- <el-table-column
              align="center"
              prop="bsm"
              :label="$t('dataManage.domainManage.bsm')"
            />
            /> -->
            <el-table-column
              align="center"
              prop="level"
@@ -110,23 +118,24 @@
            <el-table-column min-width="150" :label="$t('common.operate')">
              <template slot-scope="scope"
                ><el-button @click="showDetail(scope.row)" size="small"
                  >查看</el-button
                ><el-button
                  class="primary"
                  @click="showDetail(scope.row)"
                  size="small"
                  >{{ $t('common.details') }}</el-button
                >
                <el-button
                  v-if="btnStatus.update"
                  type="warning"
                  @click="handleEdit(scope.$index, scope.row)"
                  size="small"
                  >{{ $t("common.update") }}</el-button
                  >{{ $t('common.update') }}</el-button
                >
              </template>
            </el-table-column>
          </el-table>
        </div>
        <div
          class="pagination_box"
          style="margin-top: 20px; margin-left: 200px"
        >
        <div class="pagination_box" style="margin-top: 20px">
          <el-pagination
            @size-change="handleSizeChange"
            @current-change="handleCurrentChange"
@@ -143,32 +152,60 @@
    <div class="infoBox" v-show="showinfoBox">
      <el-card class="box-card">
        <div slot="header" class="clearfix">
          <span>详细信息</span>
          <span>{{ $t('common.details') }}</span>
          <div style="float: right; cursor: pointer" @click="closeDetial">
            <i class="el-icon-close"></i>
          </div>
        </div>
        <div class="contentBox">
          <p>数据名称:{{ itemdetail.domName }}</p>
          <p>
            {{ $t('dataManage.domainManage.domName') }}:{{
              itemdetail.domName
            }}
          </p>
          <el-divider></el-divider>
          <p>所属目录:{{ itemdetail.path }}</p>
          <p>
            {{ $t('dataManage.domainManage.domDesc') }}:{{
              itemdetail.domDesc
            }}
          </p>
          <el-divider></el-divider>
          <p>创建时间:{{ itemdetail.create_time }}</p>
          <p>
            {{ $t('dataManage.domainManage.domCode') }}:{{
              itemdetail.domCode
            }}
          </p>
          <el-divider></el-divider>
          <p>创建人员:{{ itemdetail.create_user }}</p>
          <p>
            {{ $t('dataManage.domainManage.codeDesc') }}:{{
              itemdetail.codeDesc
            }}
          </p>
          <el-divider></el-divider>
          <p>上传单位:{{ itemdetail.up_unit }}</p>
          <p>{{ $t('dataManage.domainManage.bsm') }}:{{ itemdetail.bsm }}</p>
          <el-divider></el-divider>
          <p>数据状态:{{ itemdetail.status }}</p>
          <p>
            {{ $t('dataManage.domainManage.level') }}:{{ itemdetail.level }}
          </p>
          <el-divider></el-divider>
          <p>数据版本:{{ itemdetail.version }}</p>
          <p>
            {{ $t('dataManage.domainManage.orderid') }}:{{
              itemdetail.orderid
            }}
          </p>
          <el-divider></el-divider>
          <p>{{ $t('dataManage.domainManage.bak') }}:{{ itemdetail.bak }}</p>
        </div>
      </el-card>
    </div>
    <el-dialog
      width="510px"
      top="5vh"
      :title="behavior"
      :title="
        behavior == '新增用户'
          ? `${$t('common.append')}`
          : `${$t('common.update')}`
      "
      :visible.sync="dialogFormVisible"
      :before-close="handleClose"
    >
@@ -223,23 +260,26 @@
        </el-form-item>
      </el-form>
      <div v-if="behavior == '修改信息'" slot="footer" class="dialog-footer">
        <el-button @click="cancelEdit()">重置</el-button>
        <el-button @click="cancelEdit()">{{ $t('common.reset') }}</el-button>
        <el-button
          size="medium"
          type="primary"
          class="primary"
          type="info"
          @click="sendEdit('editForm')"
          v-loading.fullscreen.lock="fullscreenLoading"
          >{{ $t("common.confirm") }}</el-button
          >{{ $t('common.confirm') }}</el-button
        >
      </div>
      <div v-else slot="footer" class="dialog-footer">
        <el-button @click="cancelAdd('editForm')">重置</el-button>
        <el-button type="info" @click="cancelAdd('editForm')">{{
          $t('common.reset')
        }}</el-button>
        <el-button
          size="medium"
          type="primary"
          class="primary"
          @click="sendAdd('editForm')"
          v-loading.fullscreen.lock="fullscreenLoading"
          >{{ $t("common.confirm") }}</el-button
          >{{ $t('common.confirm') }}</el-button
        >
      </div>
    </el-dialog>
@@ -253,33 +293,33 @@
  insertDomain,
  deleteDomain,
  updateDomain,
} from "../../api/api";
import MyBread from "../../components/MyBread.vue";
} from '../../api/api';
import MyBread from '../../components/MyBread.vue';
export default {
  name: "domainManage",
  name: 'domainManage',
  components: { MyBread },
  data() {
    return {
      multipleSelection: [],
      behavior: "",
      formLabelWidth: "100px",
      behavior: '',
      formLabelWidth: '100px',
      dialogFormVisible: false,
      showinfoBox: false,
      fullscreenLoading: false,
      itemdetail: {},
      editForm: {},
      queryForm: {
        code: "",
        code: '',
      },
      insertform: {},
      initialForm: "",
      initialForm: '',
      tableData: [],
      count: 0,
      rowFlag: null,
      listData: {
        ns: "",
        tab: "",
        ns: '',
        tab: '',
        pageIndex: 1,
        pageSize: 10,
      },
@@ -293,17 +333,17 @@
      },
      domainData: [
        {
          tabDesc: "基础数据",
          val: '基础数据',
          children: [],
        },
        {
          tabDesc: "业务数据",
          val: '业务数据',
          children: [],
        },
      ],
      defaultProps: {
        children: "children",
        label: "tabDesc",
        children: 'children',
        label: 'val',
      },
    };
  },
@@ -321,11 +361,18 @@
      this.fullscreenLoading = true;
      this.listData.ns = data.ns;
      this.listData.tab = data.tab;
      debugger;
      getSingleTab(this.listData).then((res) => {
        setTimeout(() => {
          this.tableData = res.result;
          this.count = res.count;
          this.fullscreenLoading = false;
          if (res.code == 200) {
            this.tableData = res.result;
            this.count = res.count;
            this.fullscreenLoading = false;
          } else {
            this.tableData = [];
            this.count = 0;
            this.fullscreenLoading = false;
          }
        }, 500);
      });
    },
@@ -338,8 +385,14 @@
    },
    getAllTabelData() {
      getDomainTabs().then((res) => {
        let bdres = res.result.filter((item) => item.ns == "bd");
        let bsres = res.result.filter((item) => item.ns == "bs");
        let bdres = res.result.filter((item) => item.ns == 'bd');
        let bsres = res.result.filter((item) => item.ns == 'bs');
        for (var i in bdres) {
          bdres[i].val = bdres[i].tabDesc + '(' + bdres[i].tab + ')';
        }
        for (var i in bsres) {
          bsres[i].val = bsres[i].tabDesc + '(' + bsres[i].tab + ')';
        }
        this.domainData[0].children = bdres;
        this.domainData[1].children = bsres;
      });
@@ -362,7 +415,7 @@
          this.tableData = res.result;
          this.count = res.count;
        } else {
          console.log("查询接口报错");
          console.log('查询接口报错');
          this.$notify.error({
            title: res.code,
            message: res.result,
@@ -373,19 +426,19 @@
    resetInfo() {
      this.queryForm = {};
      this.$store.state.verCateNode = {};
      this.$bus.$emit("clearTressLabel", true);
      this.$bus.$emit('clearTressLabel', true);
      this.getAllTabelData();
    },
    // 删除多条
    deleteInfo() {
      this.$confirm("确定是否删除所选内容?", "提示", {
        confirmButtonText: "确定",
        cancelButtonText: "取消",
        type: "warning",
      this.$confirm('确定是否删除所选内容?', '提示', {
        confirmButtonText: '确定',
        cancelButtonText: '取消',
        type: 'warning',
      })
        .then(() => {
          if (this.multipleSelection.length == 0) {
            alert("请选择要删除的对象");
            alert('请选择要删除的对象');
            return;
          } else {
            var std = [];
@@ -396,8 +449,8 @@
              console.log(res);
              if (res.code == 200) {
                this.$message({
                  type: "success",
                  message: "删除成功!",
                  type: 'success',
                  message: '删除成功!',
                });
                this.multipleSelection = [];
                getSingleTab(this.listData).then((res) => {
@@ -408,18 +461,18 @@
                  }, 500);
                });
              } else {
                this.$message.error("删除失败");
                this.$message.error('删除失败');
                this.multipleSelection = [];
              }
            });
          }
        })
        .catch(() => {
          this.$message("已取消删除");
          this.$message('已取消删除');
        });
    },
    showAddDialog() {
      this.behavior = "新增用户";
      this.behavior = '新增用户';
      this.editForm = {};
      this.dialogFormVisible = true;
    },
@@ -430,16 +483,16 @@
    sendAdd(formName) {
      this.$refs[formName].validate((valid) => {
        if (valid) {
          // console.log(this.editForm);
          this.fullscreenLoading = true;
          debugger;
          insertDomain(this.editForm)
            .then((res) => {
              setTimeout(() => {
                this.fullscreenLoading = false;
                if (res.code == 200) {
                  this.$message({
                    message: "添加成功",
                    type: "success",
                    message: '添加成功',
                    type: 'success',
                  });
                  getSingleTab(this.listData).then((res) => {
                    setTimeout(() => {
@@ -454,17 +507,17 @@
              }, 500);
            })
            .catch((res) => {
              alert("修改失败,请重试!");
              alert('添加失败,请重试!');
              this.fullscreenLoading = false;
            });
        } else {
          console.log("error submit!!");
          console.log('error submit!!');
          return false;
        }
      });
    },
    handleClose(done) {
      this.$confirm("关闭后无法保存,是否关闭?")
      this.$confirm('关闭后无法保存,是否关闭?')
        .then((_) => {
          this.editForm = {};
          done();
@@ -486,7 +539,7 @@
      this.dialogFormVisible = true;
      this.initialForm = JSON.stringify(row); //备份
      this.editForm = row;
      this.behavior = "修改信息";
      this.behavior = '修改信息';
    },
    editFromDataClose() {
      this.dialogFormVisible = false;
@@ -495,10 +548,10 @@
    // 提交修改
    sendEdit() {
      this.$confirm("是否确定编辑?", "提示", {
        confirmButtonText: "确定",
        cancelButtonText: "取消",
        type: "warning",
      this.$confirm('是否确定编辑?', '提示', {
        confirmButtonText: '确定',
        cancelButtonText: '取消',
        type: 'warning',
      })
        .then(() => {
          this.dialogFormVisible = false;
@@ -514,22 +567,22 @@
                  }, 500);
                });
                this.$message({
                  message: "修改成功",
                  type: "success",
                  message: '修改成功',
                  type: 'success',
                });
                this.editForm = {};
              } else {
                alert("修改失败,请重试!");
                alert('修改失败,请重试!');
                this.fullscreenLoading = false;
              }
            })
            .catch(() => {
              alert("修改失败,请重试!");
              alert('修改失败,请重试!');
              this.fullscreenLoading = false;
            });
        })
        .catch(() => {
          alert("修改失败,请重试!");
          alert('修改失败,请重试!');
          this.fullscreenLoading = false;
        });
    },
@@ -570,31 +623,35 @@
</script>
<style lang="less" scoped>
//@import url(); 引入公共css类
.authorityManagement_box {
  background: rgb(240, 242, 245);
  border-radius: 10px;
  height: 100%;
  padding: 10px;
  box-sizing: border-box;
  .el-input {
    width: 300px !important;
  }
.domainBox {
  height: 80%;
  width: 97%;
  position: absolute;
  .mainBox {
    width: 100%;
    height: 92%;
    display: flex;
    justify-content: space-between;
    .leftTree {
      width: 15%;
      height: 90vh;
      border-radius: 10px;
      overflow: auto;
      height: 96%;
      border: 1px solid white;
      border-radius: 5px;
      padding: 1%;
      max-height: 670px;
      overflow-y: auto;
    }
    .right {
      width: 84%;
      height: 92vh;
      // background-color: #bfa;
      width: 80%;
      height: 96%;
      border: 1px solid white;
      border-radius: 5px;
      padding: 1%;
      max-height: 670px;
      overflow-y: auto;
      .inquire {
        margin-bottom: 10px;
        background: #fff;
        border-radius: 5px;
        border: 1px solid rgb(202, 201, 204);
        .el-form-item {
@@ -603,51 +660,13 @@
      }
      .table_box {
        width: 100%;
        height: 90%;
        height: 80%;
        margin: 0 auto;
        overflow: auto;
        background: #fff;
        // .el-table {
        //   height: 100%;
        // }
        .el-table /deep/ th.el-table__cell > .cell {
          padding: 15px !important;
        }
        // .el-table /deep/ .el-table__header-wrapper tr th {
        //   background-color: rgb(255, 255, 255) !important;
        //   color: rgb(0, 0, 0);
        // }
        // // 修改每行样式:
        // .el-table /deep/ .el-table__row {
        //   background-color: rgba(255, 255, 255) !important;
        //   color: rgb(0, 0, 0);
        // }
        // .el-table /deep/ .el-table__body tr.current-row > td {
        //   background-color: rgb(211, 211, 211) !important;
        // }
        // .el-table /deep/ .el-table__body tr:hover > td {
        //   background-color: rgb(211, 211, 211) !important;
        // }
        // // 修改表格每行边框的样式:
        // .el-table /deep/ td,
        // .el-table /deep/ th.is-leaf {
        //   border-bottom: 1px solid #eee;
        //   border-right: 1px solid #eee;
        // }
        // .el-table /deep/ .el-table__cell {
        //   padding: 0;
        // }
        // 设置表格每行的高度:
        // .el-table /deep/ .el-table__header tr,
        // .el-table /deep/ .el-table__header th {
        //   height: 40px;
        // }
        // .el-table__body tr,
        // .el-table__body td {
        //   height: 40px;
        //   padding: 0;
        // }
        // 设置表格边框颜色:
        .el-table--border::after,
        .el-table--group::after {
@@ -656,44 +675,150 @@
        .el-table::before {
          height: 0;
        }
        //   a {
        //     color: #000;
        //   }
      }
    }
  }
  .infoBox {
    width: 500px;
    border: 1px solid #eee;
    position: absolute;
    z-index: 100;
    top: 15%;
    right: 25%;
    background-color: #fff;
    color: white;
    background-color: #303030;
    .el-card {
      background-color: transparent;
      color: white;
      span {
        font-size: 16px;
        font-weight: 600;
        color: white;
      }
    }
    .contentBox {
      margin: 0 aotu 10px;
      height: 600px;
      height: 500px;
      overflow: auto;
      color: white;
      overflow-y: auto;
      p {
        // background-color: #bfa;
        // margin-bottom: 10px;
        color: white;
        font-size: 14px;
      }
    }
  }
  .pagination_box {
    margin-top: 20px;
    /deep/.el-input__inner {
      background-color: transparent !important;
      border: 1px solid;
      color: white;
    }
    /deep/.el-pagination__total {
      color: white;
    }
    /deep/.el-pagination__jump {
      color: white;
    }
    /deep/.el-pager li.active {
      color: #409eff;
    }
    /deep/.el-pager li {
      color: white;
      background: transparent;
    }
    /deep/.el-pager li {
      color: white;
    }
    /deep/.btn-prev {
      background: transparent;
    }
    /deep/.btn-next {
      background: transparent;
    }
    /deep/.btn-next i {
      color: white;
    }
    /deep/.btn-prev i {
      color: white;
    }
  }
  /deep/.el-form-item__label {
    color: white;
  }
  // 设置输入框的背景色、字体颜色、边框属性设置;
  /deep/.el-input__inner {
    background-color: transparent !important ;
    color: #fff;
    border: 1px solid;
  }
  /*修改table 表体的背景颜色和文字颜色*/
  /deep/ .el-table {
    background-color: transparent;
    th,
    td {
      background-color: transparent;
    }
    .el-table__expanded-cell {
      background-color: transparent !important;
    }
    // 表头背景色
    th.el-table__cell {
      background-color: #303030;
      color: #fff;
    }
    tr > td {
      background-color: #303030;
      color: #fff;
    }
    // hover效果
    tr:hover > td {
      background-color: rgba(255, 255, 255, 0.3) !important;
    }
    tbody tr:hover {
      background-color: rgba(255, 255, 255, 0.3) !important;
      // text-align: center;
    }
    // 滚动条宽高
    .el-table__body-wrapper::-webkit-scrollbar {
      width: 5px;
      height: 5px;
    }
    .el-table__body-wrapper::-webkit-scrollbar {
      width: 5px;
      /*滚动条宽度*/
      height: 5px;
      /*滚动条高度*/
    }
    /*定义滚动条轨道 内阴影+圆角*/
    .el-table__body-wrapper::-webkit-scrollbar-track {
      box-shadow: 0px 1px 3px #216fe6 inset;
      /*滚动条的背景区域的内阴影*/
      border-radius: 10px;
    }
    /*定义滑块 内阴影+圆角*/
    .el-table__body-wrapper::-webkit-scrollbar-thumb {
      box-shadow: 0px 1px 3px #216fe6 inset;
      border-radius: 6px;
      background-color: #216fe6;
    }
  }
  /deep/ .el-dialog {
    width: 620px !important;
    margin-top: 10vh !important;
  }
  /deep/ .el-select .el-input__inner {
    border-color: #fff !important;
  }
  /deep/.el-dialog .el-input__inner {
    width: 300px;
  }
@@ -707,5 +832,21 @@
    margin: 0 auto;
    justify-content: center;
  }
  .primary {
    background: #409eff;
    border: #409eff;
    color: white;
  }
  /deep/ .el-dialog {
    background: #303030;
  }
  /deep/.el-range-editor.is-active,
  .el-range-editor.is-active:hover,
  .el-select .el-input.is-focus .el-input__inner {
    border: 1px solid;
  }
  /deep/.el-dialog__title {
    color: white;
  }
}
</style>