管道基础大数据平台系统开发-【前端】-新系統界面
Surpriseplus
2023-01-16 21ddc9ec1b1b76d2ce20e512328e65acaf1af2bf
src/views/datamanage/domainManage.vue
@@ -9,12 +9,14 @@
    <el-divider />
    <div class="mainBox">
      <div class="leftTree">
        <el-tree
      <div style="width:450px">
          <el-tree
          :data="domainData"
          :props="defaultProps"
          :default-expand-all="true"
          @node-click="toggleTabs"
        ></el-tree>
      </div>
      </div>
      <div class="right">
        <div class="inquire">
@@ -92,11 +94,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"
@@ -198,7 +200,11 @@
    <el-dialog
      width="510px"
      top="5vh"
      :title="behavior"
      :title="
        behavior == '新增用户'
          ? `${$t('common.append')}`
          : `${$t('common.update')}`
      "
      :visible.sync="dialogFormVisible"
      :before-close="handleClose"
    >
@@ -207,7 +213,16 @@
          :label="$t('dataManage.domainManage.domName')"
          :label-width="formLabelWidth"
        >
          <el-input v-model="editForm.domName" autocomplete="off"></el-input>
          <el-select v-model="editForm.domName" placeholder="请选择">
            <el-option
              v-for="item in domainOptions"
              :key="item.value"
              :label="item.label"
              :value="item.value"
            >
            </el-option>
          </el-select>
          <!-- <el-input v-model="editForm.domName" autocomplete="off"></el-input> -->
        </el-form-item>
        <el-form-item
          :label="$t('dataManage.domainManage.domDesc')"
@@ -215,6 +230,7 @@
        >
          <el-input v-model="editForm.domDesc" autocomplete="off"></el-input>
        </el-form-item>
        <el-form-item
          :label="$t('dataManage.domainManage.domCode')"
          :label-width="formLabelWidth"
@@ -253,20 +269,23 @@
        </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
        >
      </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
@@ -283,6 +302,7 @@
  insertDomain,
  deleteDomain,
  updateDomain,
  domain_selectDomainNames,
} from '../../api/api';
import MyBread from '../../components/MyBread.vue';
export default {
@@ -290,6 +310,7 @@
  components: { MyBread },
  data() {
    return {
      domainOptions: [],
      multipleSelection: [],
      behavior: '',
      formLabelWidth: '100px',
@@ -297,7 +318,9 @@
      showinfoBox: false,
      fullscreenLoading: false,
      itemdetail: {},
      editForm: {},
      editForm: {
        domName: '',
      },
      queryForm: {
        code: '',
      },
@@ -323,17 +346,17 @@
      },
      domainData: [
        {
          tabDesc: '基础数据',
          val: '基础数据',
          children: [],
        },
        {
          tabDesc: '业务数据',
          val: '业务数据',
          children: [],
        },
      ],
      defaultProps: {
        children: 'children',
        label: 'tabDesc',
        label: 'val',
      },
    };
  },
@@ -347,15 +370,37 @@
    },
  },
  methods: {
    toggleTabs(data) {
    async toggleTabs(data) {
      this.fullscreenLoading = true;
      this.listData.ns = data.ns;
      this.listData.tab = data.tab;
      this.listData.pageIndex = 1;
      this.listData.pageSize = 10;
      const res = await domain_selectDomainNames(data);
      if (res.code != 200) {
        this.$message.error('domain调用失败');
      }
      var std = [];
      for (var i = 0; i < res.result.length; i++) {
        std.push({
          value: res.result[i],
          label: res.result[i],
        });
      }
      this.domainOptions = std;
      this.editForm.domName = res.result[0];
      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);
      });
    },
@@ -370,6 +415,12 @@
      getDomainTabs().then((res) => {
        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;
      });
@@ -380,7 +431,7 @@
    queryInfo() {
      let searchData = {
        code: this.queryForm.code,
        name: this.queryForm.code,
        ns: this.listData.ns,
        tab: this.listData.tab,
        pageIndex: this.listData.pageIndex,
@@ -392,7 +443,6 @@
          this.tableData = res.result;
          this.count = res.count;
        } else {
          console.log('查询接口报错');
          this.$notify.error({
            title: res.code,
            message: res.result,
@@ -404,7 +454,9 @@
      this.queryForm = {};
      this.$store.state.verCateNode = {};
      this.$bus.$emit('clearTressLabel', true);
      this.getAllTabelData();
      this.listData.pageIndex = 1;
      this.listData.pageSize = 10;
      this.queryInfo();
    },
    // 删除多条
    deleteInfo() {
@@ -460,8 +512,8 @@
    sendAdd(formName) {
      this.$refs[formName].validate((valid) => {
        if (valid) {
          // console.log(this.editForm);
          this.fullscreenLoading = true;
          insertDomain(this.editForm)
            .then((res) => {
              setTimeout(() => {
@@ -484,7 +536,7 @@
              }, 500);
            })
            .catch((res) => {
              alert('修改失败,请重试!');
              alert('添加失败,请重试!');
              this.fullscreenLoading = false;
            });
        } else {
@@ -601,9 +653,9 @@
<style lang="less" scoped>
//@import url(); 引入公共css类
.domainBox {
  height: 80%;
  width: 97%;
  position: absolute;
  height: 98%;
  width: 98%;
  padding: 1%;
  .mainBox {
    width: 100%;
    height: 92%;
@@ -611,7 +663,7 @@
    justify-content: space-between;
    .leftTree {
      width: 15%;
      height: 96%;
      height: 91%;
      border: 1px solid white;
      border-radius: 5px;
      padding: 1%;
@@ -620,7 +672,7 @@
    }
    .right {
      width: 80%;
      height: 96%;
      height: 91%;
      border: 1px solid white;
      border-radius: 5px;
      padding: 1%;