田源
2023-04-14 6c4d4b494ef9c8fb134ece79e3993038a0358639
Source/UBCS-WEB/src/views/modeling/original.vue
@@ -1,81 +1,35 @@
<template>
  <basic-container>
    <avue-crud v-model="form" :option="option" :data="data" ref="crud"   :before-open="beforeOpen" @on-load="onLoad" @row-save="rowSave" @row-update="rowUpdate" @row-del="rowDel" :page.sync="page">
      <template slot-scope="{row,index,type}" slot="hideboxForm">
        <avue-form :option="option.codomainoption"></avue-form>
        <div v-if="tablefalge">
          <el-input style="width: 140px;margin-left: 300px"></el-input>
          <el-button style="margin-left: 15px" type="primary">搜索</el-button>
          <el-table
            ref="multipleTable"
            :data="tableData"
            tooltip-effect="dark"
            style="width: 100%"
            max-height="510"
            @selection-change="handleSelectionChange">
            <el-table-column
              type="selection"
              width="55">
            </el-table-column>
            <el-table-column
              prop="name"
              label="业务类型名"
            >
            </el-table-column>
            <el-table-column
              prop="label"
              label="标签"
              show-overflow-tooltip>
            </el-table-column>
            <el-table-column
              prop="father"
              label="父类"
              show-overflow-tooltip>
            </el-table-column>
            <el-table-column
              prop="rules"
              label="版本规则"
              show-overflow-tooltip>
            </el-table-column>
            <el-table-column
              prop="cycle"
              label="生命周期"
              show-overflow-tooltip>
            </el-table-column>
          </el-table>
          <el-button style="margin-left: 320px;margin-top: 13px" type="primary">确定</el-button>
          <el-button>取消</el-button>
    <avue-crud v-model="form" :option="option" :data="data" ref="crud" :before-open="beforeOpen" @on-load="onLoad" @row-save="rowSave" @row-update="rowUpdate" @row-del="rowDel" :page.sync="page">
      <template slot-scope="{row,index,type}" slot="selInputForm">
        <div style="margin-left: 75px">
          <el-input  v-model="form.text" :size="size"
                     style="width: 210px" :readonly="true"></el-input>
          <el-button type="primary" style="margin-left: 10px" @click="addHandle">选择</el-button>
          <el-button type="info">取消</el-button>
        </div>
        <div  v-if="!tablefalge">
          <el-input style="width: 140px;margin-left: 300px"></el-input>
          <el-button style="margin-left: 15px" type="primary">搜索</el-button>
          <el-table
            :data="tableDatas"
            stripe
            style="width: 100%">
            <el-table-column
              type="selection"
              width="55">
            </el-table-column>
            <el-table-column
              prop="name"
              label="链接类型">
            </el-table-column>
          </el-table>
          <el-button style="margin-left: 320px;margin-top: 13px" type="primary">确定</el-button>
          <el-button>取消</el-button>
        </div>
<!--        <div v-if="tablefalge">-->
<!--          <el-button style="margin-left: 320px;margin-top: 13px" type="primary">确定</el-button>-->
<!--          <el-button>取消</el-button>-->
<!--        </div>-->
      </template>
    </avue-crud>
    <el-dialog :visible.sync="packageBox"
               append-to-body
               title="查看业务类型"
               width="1000px">
      <original-range @rowchange="rowchange"></original-range>
      <span slot="footer" class="dialog-footer">
            <el-button @click="dialoghandelfalse">取 消</el-button>
            <el-button type="primary" @click="dialoghandeltrue">确 定</el-button>
  </span>
    </el-dialog>
    <el-dialog :visible.sync="packageLinkBox"
               append-to-body
               title="查看链接类型"
               width="1000px">
      <original-link @rowLinkchange="rowLinkchange"></original-link>
      <span slot="footer" class="dialog-footer">
            <el-button @click="Linkdialoghandelfalse">取 消</el-button>
            <el-button type="primary" @click="Linkdialoghandeltrue">确 定</el-button>
  </span>
    </el-dialog>
  </basic-container>
</template>
@@ -84,91 +38,23 @@
  name: "passwords.vue",
  data() {
    return {
      tablefalge:false,
      tableDatas: [ {
        name: 'input',
      }, {
        name: 'checkbox',
      }, {
        name: 'switch',
      }],
      tableData: [{
        name: 'abc',
        label: '客户',
        father:'客户',
        rules:'规则',
        cycle:'cba'
      rouname:"",
      // 业务类型对话框
      packageBox:false,
      //链接类型对话框
      packageLinkBox:false,
      //值域下拉框数据
      Typelist:[],
      //版本数据
      banList:[],
      form:{
        text:""
      },
        {
          name: 'abc',
          label: '客户',
          father:'客户',
          rules:'规则',
          cycle:'cba'
        },
        {
          name: 'abc',
          label: '客户',
          father:'客户',
          rules:'规则',
          cycle:'cba'
        },
        {
          name: 'abc',
          label: '客户',
          father:'客户',
          rules:'规则',
          cycle:'cba'
        },
        {
          name: 'abc',
          label: '客户',
          father:'客户',
          rules:'规则',
          cycle:'cba'
        },
        {
          name: 'abc',
          label: '客户',
          father:'客户',
          rules:'规则',
          cycle:'cba'
        },
        {
          name: 'abc',
          label: '客户',
          father:'客户',
          rules:'规则',
          cycle:'cba'
        },
        {
          name: 'abc',
          label: '客户',
          father:'客户',
          rules:'规则',
          cycle:'cba'
        },   {
          name: 'abc',
          label: '客户',
          father:'客户',
          rules:'规则',
          cycle:'cba'
        },
        {
          name: 'abc',
          label: '客户',
          father:'客户',
          rules:'规则',
          cycle:'cba'
        },],
      form:{},
      page: {
        pageSize: 10,
        currentPage: 1,
        total: 100
      },
      appflage:true,
      data: [
        {
          name:"a",
@@ -197,52 +83,11 @@
      ],
      option:{
        selection: true,
        dialogType:'drawer',
        headerAlign: 'center',
        border: true,
        index: true,
        rowKey:'id',
        tabs: true,
        codomainoption:{
          submitBtn: false,
          emptyBtn: false,
          column: [
            {
              placeholder:"请选择值域",
              span:24,
              label: '值域',
              prop: 'select',
              type:"select",
              value:0,
              change:this.selectChange,
              dicData:[
                {
                  label:"业务类型",
                  value:0
                },
                {
                  label:"链接类型",
                  value:1
                },
              ]},
            {
              label: "选择版本",
              prop:"banben",
              type:'select',
              display:false,
              dicData: [
                {
                  label: '当前版本次',
                  value:0
                },
                {
                  label: '最新版本次',
                  value:1
                }
              ]
            }
          ]
        },
        column:[
          {
            label: '属性名',
@@ -392,11 +237,54 @@
            label: '值域',
            column:[
              {
                prop: 'hidebox',
                formsolt:true,
                hide: true,
                span:24,
                placeholder:"请选择值域",
                span:12,
                label: '值域',
                prop: 'range',
                value:0,
                type:"select",
                change:this.selectChange,
                dicData:[
                  {
                    label:"业务类型",
                    value:0
                  },
                  {
                    label:"链接类型",
                    value:1
                  },
                ]},
              {
                prop:"selInput",
                placeholder: false,
                readonly:true,
                display: true,
                formslot: true,
              },
              {
                label: "选择版本",
                prop:"banben",
                type:'select',
                value:0,
                change: this.selchange,
                display: true,
                dicData: [
                  {
                    label: '当前版本次',
                    value:0
                  },
                  {
                    label: '最新版本次',
                    value:1
                  }
                ]
              },
              {
                //默认表格插槽
                prop:"default",
                span:24,
                display: false
              }
            ]
          },
          {
@@ -463,30 +351,71 @@
  created() {
  },
  methods:{
    selectChange(val){
      console.log(val)
      this.tablefalge=!this.tablefalge
      if(val.value == 0){
        this.tablefalge=true
        this.option.codomainoption.column[1].display=false
      }else if(val.value == null || val.value == 1){
        this.tablefalge=false;
        this.option.codomainoption.column[1].display=true
    rowLinkchange(row){
      this.form.text=row.name
    },
    rowchange(row){
      this.form.text=row.name
    },
    //值域类型选择
    addHandle() {
      this.packageBox=true
      if(this.Typelist.value == 0){
        this.packageBox=true
        this.packageLinkBox=false
      }else if(this.Typelist.value == 1){
        this.packageBox=false
        this.packageLinkBox=true
      }
    },
    beforeOpen (done, type) {
          if (['view', 'edit'].includes(type)) {
            // 查看和编辑逻辑
            console.log("编辑")
          } else {
            //新增逻辑
            this.tablefalge=false
            console.log(this.tablefalge)
            console.log("新增")
          }
          done();
    // 值域业务类型对话框取消
    dialoghandelfalse() {
      this.packageBox=false;
      this.form.text=""
    },
    //值域业务类型对话框确定
    dialoghandeltrue(){
      this.packageBox=false
    },
    // 值域链接类型对话框取消
    Linkdialoghandelfalse(){
      this.packageLinkBox=false;
      this.form.text=""
    },
    //值域链接类型对话框确定
    Linkdialoghandeltrue(){
      this.packageLinkBox=false
    },
    selectChange(val){
      this.Typelist=val
      }
     if(val.value == 0 ){
       this.option.group[1].column[2].display=false
     }else if(val .value == 1  ){
       this.option.group[1].column[2].display=true
     }else if(val.column.value == 0){
       this.option.group[1].column[2].display=false
     }
      },
    selchange(val){
      this.banList=val
    },
    // beforeOpen (done, type) {
    //   if (['view', 'edit'].includes(type)) {
    //     // 查看和编辑逻辑
    //     console.log("编辑")
    //   } else {
    //     //新增逻辑
    //     console.log(this.Typelist)
    //     console.log(this.banList)
    //
    //     console.log("新增")
    //   }
    //   done();
    //
    // }
    },
    // rowDel(row){
    //   this.$confirm("确定将选择数据删除?", {
    //     confirmButtonText: "确定",
@@ -540,10 +469,11 @@
    //   //   this.data=res.data.data.records
    //   // })
    // }
  }
  // }
}
</script>
<style lang="scss">
</style>