田源
2024-09-29 7d05c69630d066c0992368423f90e440e3638f91
Source/UBCS-WEB/src/views/integration/systemInfo.vue
@@ -1,13 +1,16 @@
<template>
  <basic-container>
    <avue-crud ref="crud" :data="data" :option="option" :page.sync="page" :search.sync="search" :table-loading="loading"
    <avue-crud ref="crud" :data="data" :option="option" :page.sync="page" :permission="permissionList"
               :search.sync="search"
               :table-loading="loading"
               @on-load="getDataList" @row-save="handleSave" @row-del="handleDelete" @row-update="handleEdit"
               @refresh-change="handleRefresh" @size-change="handleSizePage" @current-change="handleCurrentPage"
               @selection-change="selectionChange" @row-click="handleRowClick">
      <template slot="menuLeft">
        <!-- <el-button icon="el-icon-search" size="small" type="primary" @click="handleStatus">查 询
        </el-button> -->
        <el-button icon="el-icon-delete" size="small" type="danger" @click="handleDeleteByIds" v-if="this.permission.systemInfo.systemInfo_remove">删 除
        <el-button v-if="permissionList.delBtn" icon="el-icon-delete" size="small" type="danger"
                   @click="handleDeleteByIds">删 除
        </el-button>
      </template>
      <template slot="search" slot-scope="{row,size}">
@@ -19,7 +22,7 @@
                  :size="size" clearable style="width:300px;margin-left: 10px;"
                  @clear="handleClear" @keyup.enter.native="handleEnter"></el-input>
      </template>
      <template #menu="{row,index,size}" v-if="this.permission.systemInfo.systemInfo_empower">
      <template v-if="permissionList.empower" #menu="{row,index,size}">
        <el-button icon="el-icon-menu" size="small" type="text" @click="classifyHandler(row)">分类授权</el-button>
      </template>
@@ -56,6 +59,7 @@
  batchAddSave
} from '@/api/integration/sysInfo.js'
import {mapGetters} from "vuex";
export default {
  data() {
    return {
@@ -98,69 +102,75 @@
  },
  computed: {
    ...mapGetters(["permission"]),
    option(){
      return{
          height: "auto",
          tip: false,
          border: true,
          align: 'center',
          menuAlign: 'center',
          index: true,
          searchMenuSpan: 8,
          addBtn:this.permission.systemInfo.systemInfo_add,
          editBtn:this.permission.systemInfo.systemInfo_edit,
          delBtn:this.permission.systemInfo.systemInfo_remove,
          searchBtn: false,
          emptyBtn: false,
          columnBtn: false,
          defaultSort: {
            prop: 'id,name',
            order: 'descending'
    permissionList() {
      return {
        addBtn: this.vaildData(this.permission.systemInfo.systemInfo_add, false),
        editBtn: this.vaildData(this.permission.systemInfo.systemInfo_edit, false),
        delBtn: this.vaildData(this.permission.systemInfo.systemInfo_delete, false),
        empower: this.vaildData(this.permission.systemInfo.systemInfo_empower, false),
      }
    },
    option() {
      return {
        height: "auto",
        calcHeight: 20,
        tip: false,
        border: true,
        align: 'center',
        menuAlign: 'center',
        index: true,
        searchMenuSpan: 8,
        searchBtn: false,
        emptyBtn: false,
        columnBtn: false,
        defaultSort: {
          prop: 'id,name',
          order: 'descending'
        },
        selection: true,
        column: [
          {
            label: '系统编号',
            prop: 'id',
            sortable: true,
            rules: [{
              required: true,
              message: '系统编号不能为空',
              trigger: 'blur'
            }],
            // maxlength: 30,    //字数限制
          }, {
            label: '系统名称',
            prop: 'name',
            sortable: true,
            rules: [{
              required: true,
              message: '系统名称不能为空',
              trigger: 'blur'
            }],
            // maxlength: 30,    //字数限制
          },
          selection: true,
          column: [
            {
              label: '系统编号',
              prop: 'id',
              sortable: true,
              rules: [{
                required: true,
                message: '系统编号不能为空',
                trigger: 'blur'
              }],
              // maxlength: 30,    //字数限制
            }, {
              label: '系统名称',
              prop: 'name',
              sortable: true,
              rules: [{
                required: true,
                message: '系统名称不能为空',
                trigger: 'blur'
              }],
              // maxlength: 30,    //字数限制
            },
            {
              label: '系统描述',
              prop: 'description',
              type: 'textarea'
            }
          ]
          {
            label: '系统描述',
            prop: 'description',
            type: 'textarea'
          }
        ]
      }
    }
  },
  methods: {
    //重置
    resetting(){
    resetting() {
      this.$refs.tree.setCheckedKeys([])
      // console.log(this.ParentList)
    },
    empower() {
      batchAddSave(this.checkAll.oid, this.checkAll.id, this.ParentList).then(res => {
        // console.log(res.data)
        if(res.data.code === 200){
        if (res.data.code === 200) {
          this.$message.success(res.data.msg)
          this.dialogVisible=false;
          this.dialogVisible = false;
        }
      })
    },
@@ -234,16 +244,17 @@
      sysInfoTree({systemOid: row.oid, systemId: row.id}).then(res => {
        let List = [];
        let value = 0;
        let NumberList= [];
        let NumberList = [];
        function traverse(obj, parent) {
          //重新构建一次选中当前row的数据
          const record = {
            label: obj.text,
            oid: obj.oid,
            attributes:{
            attributes: {
              classifyId: obj.attributes.classifyId,
              classifyOid: obj.attributes.classifyOid,
              selected:obj.attributes.selected
              selected: obj.attributes.selected
            },
            classParentOid: obj.parentId,
            value: value,
@@ -276,6 +287,7 @@
            }
          }
        }
        for (let item of res.data) {
          traverse(item, null);
        }
@@ -341,6 +353,7 @@
            message: '新增数据成功!'
          })
          done(row)
          await this.getDataList();
          // this.$refs.crud.refreshTable()
          // this.getDataList()
        }
@@ -361,6 +374,7 @@
          })
          done(row)
        }
        await this.getDataList();
      } catch {
        loading()
      }
@@ -447,7 +461,9 @@
}
</script>
<style lang="scss" scoped>
::v-deep(.avue-crud .el-select) {
  width: 100px !important;
}
  ::v-deep{
      .avue-crud .el-select {
      width: 100px !important;
    }
  }
</style>