lihang
2023-04-20 b03d0d157d871c532909f9f70cbf49fd6d80504d
Source/UBCS-WEB/src/views/modeling/original.vue
@@ -1,6 +1,14 @@
<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">
    <avue-crud v-model="form" :option="option" :data="data" ref="crud"
               @on-load="onLoad"
               @row-save="rowSave"
               @row-update="rowUpdate"
               :before-open="beforeOpen"
               @row-del="rowDel"
               :page.sync="page"
               @refresh-change="refreshChange"
    >
      <template slot-scope="{row,index,type}" slot="selInputForm">
        <div style="margin-left: 75px">
          <el-input  v-model="form.text" :size="size"
@@ -34,10 +42,23 @@
</template>
<script>
import {
  getList,
  remove,
  add,
  update, getPage
} from "@/api/omd/OmdAttribute";
import {
  getDictionary
} from "@/api/omd/dictbiz";
export default {
  name: "passwords.vue",
  name: "original.vue",
  data() {
    return {
      datas:[],
      formAtrr:{},
      rouname:"",
      // 业务类型对话框
      packageBox:false,
@@ -47,7 +68,18 @@
      Typelist:[],
      //版本数据
      banList:[],
      // 属性类型下拉框数据
      typeSelectList : [
        {
          label: "哈哈哈",
          value:0
        },],
      // 是否为空
      nullable : [],
      form:{
        text: ""
      },
      detailForm: {
        text:""
      },
      page: {
@@ -56,30 +88,7 @@
        total: 100
      },
      data: [
        {
          name:"a",
          prop:"VTstring",
          admin:"默认",
          desc:"测试A"
        },
        {
          name:"b",
          prop:"VTstring",
          admin:"默认",
          desc:"测试B"
        },
        {
          name:"c",
          prop:"VTstring",
          admin:"默认",
          desc:"测试C"
        },
        {
          name:"d",
          prop:"VTstring",
          admin:"默认",
          desc:"测试D"
        }
      ],
      option:{
        selection: true,
@@ -90,22 +99,27 @@
        tabs: true,
        column:[
          {
            label: '属性名',
            prop: 'name',
            label: '属性编号',
            prop: 'key',
            align: 'left',
            display: false
          }, {
            label: '属性名称',
            prop: 'label',
            align: 'left',
            display:false
          },
          {
            label: '标签',
            prop: 'tag',
            hide:true,
            prop: 'hashtag',
            // hide: true,
            display: false
          },
          {
            label: '是否使用枚举',
            prop: 'isnot',
            prop: 'usingDict',
            type: 'switch',
            hide:true,
            // hide: true,
            labelWidth: 132,
            display: false,
            dicData:[{
@@ -118,53 +132,39 @@
          },
          {
            label: '属性类型',
            prop: 'prop',
            type:"select",
            prop: 'typeValue',
            display: false,
            dicData:[
              {
                label:"测试1",
                value:0
              },
              {
                label:"测试2",
                value:1
              },
              {
                label:"测试3",
                value:2
              }
            ]
            // hide: true
          },
          {
            label: '默认值',
            prop: 'admin',
            prop: 'defaultValue',
            display: false
          },
          {
            label: '允许为空',
            prop: 'isDefault',
            prop: 'nullable',
            type: 'switch',
            display: false,
            hide:true,
            labelWidth: 132,
            dicData:[{
              label:'不允许',
              value:0
            },{
              label:'允许',
                  label: '否',
              value:1
                }, {
                  label: '是',
                  value: 0
            }]
          },
          {
            label: "长度",
            prop: "length",
            prop: "maxLength",
            hide: true,
            display: false
          },
          {
            label: '描述',
            prop: 'desc',
            prop: 'description',
            type:"textarea",
            display: false
          },
@@ -175,60 +175,63 @@
            prop:"index",
            column: [
              {
                label: '属性名',
                prop: 'name',
                label: '属性编码',
                prop: 'key',
                align: 'left',
              },
              {
                label: '属性名称',
                prop: 'label',
                align: 'left',
              },
              {
                label: '标签',
                prop: 'tag',
                prop: 'hashtag',
                hide:true
              },{
                label: '属性类型字典码',
                prop: 'typeCode',
                display: false,
                value: 'attributeType'
              },
              {
                label: '属性类型',
                prop: 'prop',
                prop: 'typeKey',
                type:"select",
                dicData:[
                  {
                    label:"测试1",
                    value:0
                dicUrl: '/api/ubcs-omd/dict-biz/dictionary?code=attributeType',
                dicType: 'String',
                props: {
                  label: 'dictValue',
                  value: 'dictKey'
                  },
                rules: [
                  {
                    label:"测试2",
                    value:1
                  },
                  {
                    label:"测试3",
                    value:2
                    required: true,
                    message: "请选择属性类型",
                    trigger: "click"
                  }
                ]
              },
              {
                label: '默认值',
                prop: 'admin',
                prop: 'defaultValue',
              },
              {
                label: '允许为空',
                prop: 'isDefault',
                prop: 'nullable',
                type: 'switch',
                hide:true,
                labelWidth: 132,
                dicData:[{
                  label:'不允许',
                  value:0
                },{
                  label:'允许',
                  value:1
                }]
                dicData: this.nullable
              },
              {
                label: "长度",
                prop: "length",
                prop: "maxLength",
                hide: true
              },
              {
                label: '描述',
                prop: 'desc',
                prop: 'description',
                type:"textarea"
              },
            ]
@@ -253,7 +256,8 @@
                    label:"链接类型",
                    value:1
                  },
                ]},
                ]
              },
              {
                prop:"selInput",
                placeholder: false,
@@ -298,11 +302,11 @@
                labelWidth: 132,
                span:8,
                dicData:[{
                  label:'是',
                  value:0
                },{
                  label:'否',
                  value:1
                }, {
                  label: '是',
                  value: 0
                }]
              },
              {
@@ -343,7 +347,6 @@
          }
        ]
      },
    }
  },
@@ -400,77 +403,77 @@
    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();
    //
    // }
    refreshChange() {
      this.onLoad(this.pageParent, this.query);
    },
    beforeOpen(done, type) {
      if (['view', 'edit'].includes(type)) {
        // 查看和编辑逻辑
        console.log("编辑")
      } else {
        //新增逻辑
        console.log(this.Typelist)
        console.log(this.banList)
    // rowDel(row){
    //   this.$confirm("确定将选择数据删除?", {
    //     confirmButtonText: "确定",
    //     cancelButtonText: "取消",
    //     type: "warning"
    //   })
    //     .then(() => {
    //       return getremove(row.id);
    //     })
    //     .then(() => {
    //       this.$message({
    //         type: "success",
    //         message: "操作成功!"
    //       });
    //       this.onLoad();
    //     });
    // },
    // rowSave(row,done){
    //   getadd(row).then(()=>{
    //     this.$message({
    //       type: "success",
    //       message: "操作成功!"
    //     });
    //     done(row)
    //     this.onLoad()
    //   }).catch((res)=>{
    //     this.$message({
    //       type: "success",
    //       message:res
    //     });
    //   })
    // },
    // rowUpdate(row,index,done){
    //   getupdata(row).then(()=>{
    //     this.onLoad()
    //     this.$message({
    //       type: "success",
    //       message: "修改成功!"
    //     });
    //     done(row)
    //   })
    // },
    // onLoad(page, params = {}) {
    //   // this.loading = true;
    //   // getPage(this.page.currentPage, this.page.pageSize, Object.assign(params, this.query)).then(res => {
    //   //   // const data = res.data.data;
    //   //   // this.page.total = data.total;
    //   //   // this.data = data.records;
    //   //   // this.loading = false;
    //   //   // this.selectionClear();
    //   //   this.data=res.data.data.records
    //   // })
    // }
  // }
        console.log("新增")
        console.log(this.typeSelectList)
      }
      done();
    },
    rowDel(row) {
      this.$confirm("确定将选择数据删除?", {
        confirmButtonText: "确定",
        cancelButtonText: "取消",
        type: "warning"
      })
        .then(() => {
          return remove(row.id);
        })
        .then(() => {
          this.$message({
            type: "success",
            message: "操作成功!"
          });
          this.onLoad();
        });
    },
    rowSave(row, done) {
      add(row).then(() => {
        this.$message({
          type: "success",
          message: "操作成功!"
        });
        done(row)
        this.onLoad()
      }).catch((res) => {
        this.$message({
          type: "success",
          message: res
        });
      })
    },
    rowUpdate(row, index, done) {
      update(row).then(() => {
        this.onLoad()
        this.$message({
          type: "success",
          message: "修改成功!"
        });
        done(row)
      })
    },
    onLoad(page, params = {}) {
      this.loading = true;
      getPage(this.page.currentPage, this.page.pageSize, Object.assign(params, this.query)).then(res => {
        const data = res.data.data;
        this.page.total = data.total;
        this.data = data.records;
        this.loading = false;
        this.data = res.data.data.records
      })
    },
  },
}
</script>