ludc
2023-12-08 c892580371ef4679c858e2da98f71a9345aa3d80
Source/UBCS-WEB/src/components/FormTemplate/FormTemplate.vue
@@ -3,37 +3,37 @@
<template>
  <div>
    <avue-form
      v-model="form"
      :option="option"
      v-loading="loading"
      ref="form"
      :style="{ minHeight: loading ? '300px' : '' }"
      :key="updateIndex"
      ref="form"
      v-model="form"
      v-loading="loading"
      :option="option"
      :style="{ minHeight: loading ? '300px' : '' }"
    >
      <template :slot="item.prop + 'Label'" v-for="item in slotColumnList">
      <template v-for="item in slotColumnList" :slot="item.prop + 'Label'">
        <span>
          <span>{{ item.label }} </span>
          <el-tooltip
            v-if="item.keyAttr"
            class="item"
            effect="dark"
            content="该属性为关键属性"
            effect="dark"
            placement="top-start"
          >
            <i class="el-icon-star-on key_attr_icon"></i>
          </el-tooltip>
        </span>
      </template>
      <template :slot="item.prop + ''" v-for="item in slotColumnList">
      <template v-for="item in slotColumnList" :slot="item.prop + ''">
        <vciWebRefer
          :key="item.dataKey" :data-key="item.dataKey"
          v-if="item.type == 'refer'"
          :referConfig="item.referConfig || {}"
          :value="form[item.referConfig.field] || item.value"
          :text="form[item.referConfig.showField]"
          v-if="item.type == 'refer'" :key="item.dataKey"
          :data-key="item.dataKey"
          :disabled="item.disabled"
          :display="item.display"
          :referConfig="item.referConfig || {}"
          :reloadData="item.referConfig.reloadData || false"
          :text="form[item.referConfig.showField]"
          :value="form[item.referConfig.field] || item.value"
          @setReferValue="setReferValue"
        ></vciWebRefer>
      </template>
@@ -42,12 +42,13 @@
</template>
<script>
import { getFormDetail } from "@/api/formTemplate";
import { getEnumDictionary } from "../../api/system/dict";
import {getFormDetail} from "@/api/formTemplate";
import {getEnumDictionary} from "../../api/system/dict";
import vciWebRefer from "../refer/vciWebRefer.vue";
export default {
  name: "FormTemplate",
  components: { vciWebRefer },
  components: {vciWebRefer},
  props: {
    // 默认禁用元素
    disabledProp: {
@@ -62,9 +63,9 @@
      type: String,
      default: "",
    },
    LoadingStatus:{
    LoadingStatus: {
      type: String,
      default : "code"
      default: "code"
    },
    // 列表数据oid
    rowOid: {
@@ -74,7 +75,7 @@
    // 表单类型(add, edit, detail)
    type: {
      type: String,
      default: "",
      default: "add",
    },
    // 自定义表单类型
    selfColumnType: {
@@ -91,21 +92,39 @@
      type: Number,
      default: 8,
    },
    TreeValue:{
    TreeValue: {
      type: String,
      default: "",
    },
    eventList:{
      type:Array
    eventList: {
      type: Array
    },
    status: {
      type: String,
      default: "",
    },
    selectRow: {
      type: Array,
      default: []
    }
  },
  data() {
    return {
      add:'',
      codeattrsecValue:'',
      ValidataValue:false,
      eventFlag:{},
      TreeValueForm:'',
      selectValue: "",
      //年代号
      dataYearCode: {
        type: "",
        value: ""
      },
      filteredObject: {},
      filteredArray: [],
      isSeriesType: {},
      attrList: [],
      add: '',
      codeattrsecValue: '',
      ValidataValue: false,
      eventFlag: {},
      TreeValueForm: '',
      updateIndex: 0,
      form: {},
      option: {
@@ -130,6 +149,7 @@
      // 表单属性
      attributes: [],
      slotColumnList: [],
      isShow: "",
    };
  },
  mounted() {
@@ -160,24 +180,53 @@
      immediate: true,
      handler(newV) {
        this.$emit("getFormData", newV);
        // console.log("getFormData", newV)
      },
    },
    TreeValue:{
      handler(newval,oldval){
        if(newval){
          this.TreeValueForm=newval;
    attrList: {
      deep: true,
      immediate: true,
      handler(newVal, oldVal) {
        if (newVal) {
          this.$emit("attrList", newVal)
        }
      }
    },
    TreeValue: {
      handler(newval, oldval) {
        if (newval) {
          this.TreeValueForm = newval;
        }
      },
      deep:true,
      immediate:true
      deep: true,
      immediate: true
    },
    isShow: {
      handler(newV) {
        this.$emit("isShow", newV)
      }
    },
    dataYearCode: {
      deep: true,
      immediate: true,
      handler(newV) {
        this.$emit("dataYearCode", newV)
      }
    },
    selectRow: {
      handler(newval) {
        // console.log(newval);
        let ids = newval.map(item => item.id);
        this.selectValue = ids.join(",");
      },
      deep: true,
      immediate: true
    }
  },
  methods: {
    // 渲染表单模板
    templateRender(formItemList,TreeValue) {
    templateRender(formItemList, TreeValue) {
      if (this.eventList) {
        this.eventFlag= this.eventList.some(item => {
        this.eventFlag = this.eventList.some(item => {
          if (item.classifyInvokeEditFlag === 'true') {
            this.eventObject = item;
            return true;
@@ -190,8 +239,18 @@
      let dictKeys = [];
      let slotColumnList = [];
      formItemList.forEach((formItem) => {
        console.log('formItem',formItem)
        formItem = this.resetFormConfig(formItem);
        // console.log(formItem)
        //属性码段规则
        if (formItem.secType === "codeattrsec") {
          this.attrList.push(formItem);
        }
        //系列号规则
        if (formItem.field === "codeStandardEditType") {
          if (this.status === "amend") {
            formItem.readOnly = true;
          }
        }
        if (formItem.type === "line") {
          group.push({
            label: formItem.text,
@@ -207,130 +266,12 @@
          (!Array.isArray(formItem.dicData) || formItem.dicData.length === 0) &&
          (!Array.isArray(formItem.data) || formItem.data.length === 0)
        ) {
          dictKeys.push({ dictKey: formItem.comboxKey, field: formItem.field });
          dictKeys.push({dictKey: formItem.comboxKey, field: formItem.field});
        }
        // 禁用部分属性(外部传值禁用和参照禁用)
        if (this.disabledProp.includes(formItem.field)) {
          formItem.readOnly = true;
        }
        if (formItem.field == "lcstatus") {
          formItem.field = formItem.field + "_text";
          formItem.readOnly = true;
        }
        // 设置表单校验的规则,文本
        let message = "请选择";
        let trigger = "change";
        if (formItem.type === "text") {
          message = "请输入";
          trigger = "blur";
        }
        let fieldMapKey=''
        if( formItem.type == "refer" && !formItem.fieldMap){
          fieldMapKey=formItem.field+'Id'
          formItem.fieldMap={}
          formItem.fieldMap[fieldMapKey]='id'
          formItem.fieldMap[formItem.field+'id']='id'
        }
        let columnItem = {
          change:(val)=>{
            if(val.column.field === "drawingno"){
              this.codeattrsecValue=val.value;
            }
            // console.log(this.codeattrsecValue)
          },
          dataKey:formItem.dataKey || formItem.field,
          label: formItem.text,
          labelslot: true,
          prop: this.$utilFunc.isValuableObj(formItem.referConfig)
            ? formItem.showField || formItem.field
            : formItem.field,
          field: formItem.field,
          type: this.columnType[formItem.type],
          dicData: this.getDataList(formItem.type, formItem.data),
          disabled: this.type === "detail" ? true : formItem.readOnly || (formItem.codeValueApplyStatus && formItem.codeValueApplyStatus == 2 ?true : false) ,
          prepend: this.preOrSufFixShow("text", formItem.prefix),
          append: this.preOrSufFixShow("text", formItem.suffix),
          prefixIcon: this.preOrSufFixShow("icon", formItem.prefix),
          suffixIcon: this.preOrSufFixShow("icon", formItem.suffix),
          valueFormat:formItem.dateFormate,
          format: formItem.dateFormate,
          keyAttr: formItem.keyAttr,
          value: (formItem.dicData && formItem.dicData.length > 0 && formItem.secType == "codefixedsec" ? formItem.dicData[0].id : null) ||
            (formItem.secType == "codedatesec" ? formItem.codeDateValue: null) || ( TreeValue && formItem.secType == "codelevelsec" ? TreeValue : null) ||
            (formItem.secType == "codeattrsec" ? this.add : null),
          placeholder: formItem.inputTip,
          comboxKey: formItem.comboxKey,
          tip: formItem.tooltips,
          // hidden:formItem.secType && formItem.codeValueApplyStatus == 3 ? true : false,
          // readonly:formItem.codeValueApplyStatus && formItem.codeValueApplyStatus == 2 ?true : false ,
          display: !formItem.hidden,
          maxlength: formItem.maxlength,
          filterable: true,
          referConfig:
            formItem.type == "refer"
              ? {
                title: formItem.text,
                showField: formItem.showField || formItem.field,
                field: formItem.field,
                fieldMap:formItem.fieldMap || {},
                placeholder: formItem.inputTip,
                options: formItem.referConfig
              }
              : {},
          span: formItem.span
            ? formItem.span
            : formItem.type === "textarea"
              ? 24
              : this.localTrendsSpan,
          rules: [
            {
              required: formItem.required,
              message: `${message}${formItem.text}`,
              trigger,
            },
            {
              // 如果没有正则则匹配任何字符
              pattern: formItem.verify ? formItem.verify : /[\s\S.]*/g,
              message: formItem.tooltips,
              trigger,
            },
          ],
          props: {
            label: "value",
            value: "key",
          },
        };
        // console.log('formItem',formItem)
        // console.log('columnItem',columnItem)
        slotColumnList.push(columnItem);
        if (group.length === 0) {
          column.push(columnItem);
        } else {
          group[group.length - 1]["column"].push(columnItem);
        }
      });
      this.slotColumnList = slotColumnList;
      this.$set(this.option, "column", column);
      this.$set(this.option, "group", group);
      this.updateIndex++;
      if (this.type === "add") {
        this.loading = false;
      }
      this.geDictData(dictKeys);
      this.getFormDetail();
    },
    //修改级联项
    changeChildItem(items,TreeValue) {
      let column = this.option.column;
      let group = this.option.group;
      let that=this;
      items.forEach((item) => {
        let formItem = this.resetFormConfig(item);
        if (formItem.field == "lcstatus") {
          formItem.field = formItem.field + "_text";
          formItem.readOnly = true;
@@ -349,10 +290,32 @@
          formItem.fieldMap[fieldMapKey] = 'id'
          formItem.fieldMap[formItem.field + 'id'] = 'id'
        }
        let columnItem = {
          change:(val)=>{
            console.log('1',val)
          change: (val) => {
            if (val.column.field === "drawingno") {
              this.codeattrsecValue = val.value;
              return;
            }
            //修订为-系列号
            if (val.column.field === "reviseSeries") {
              if (val.value === "false") {
                this.isShow = true;
              } else {
                this.isShow = false;
              }
            }
            if (val.column.field === "releaseDate") {
              if (val.value) {
                this.dataYearCode.type = val.column.valueFormat;
                this.dataYearCode.value = val.value;
              } else {
                this.dataYearCode.type = "";
                this.dataYearCode.value = "";
              }
            }
          },
          dataKey: formItem.dataKey || formItem.field,
          label: formItem.text,
          labelslot: true,
          prop: this.$utilFunc.isValuableObj(formItem.referConfig)
@@ -361,21 +324,24 @@
          field: formItem.field,
          type: this.columnType[formItem.type],
          dicData: this.getDataList(formItem.type, formItem.data),
          disabled: this.type === "detail" ? true : formItem.readOnly || (formItem.codeValueApplyStatus && formItem.codeValueApplyStatus == 2 ? true : false),
          disabled: this.type === "detail" ? true : formItem.readOnly || (formItem.codeValueApplyStatus && formItem.codeValueApplyStatus == 2 ? true : false) ||
            (this.status === 'amend' ? (formItem.field === "reviseSeries" ? (formItem.value == 'false' ? true : false) : false) : false),
          prepend: this.preOrSufFixShow("text", formItem.prefix),
          append: this.preOrSufFixShow("text", formItem.suffix),
          prefixIcon: this.preOrSufFixShow("icon", formItem.prefix),
          suffixIcon: this.preOrSufFixShow("icon", formItem.suffix),
          valueFormat: formItem.dateFormate,
          valueFormat: formItem.dateFormate || "yyyy-MM-dd HH:mm:ss",
          format: formItem.dateFormate,
          keyAttr: formItem.keyAttr,
          value: (formItem.dicData && formItem.dicData.length > 0 && formItem.secType == "codefixedsec" ? formItem.dicData[0].id : null) ||
            (formItem.secType == "codedatesec" ? formItem.codeDateValue : null) || (TreeValue && formItem.secType == "codelevelsec" ? TreeValue : null),
          value: formItem.defaultValue || (formItem.dicData && formItem.dicData.length > 0 && formItem.secType == "codefixedsec" ? formItem.dicData[0].id : null) ||
            (formItem.secType == "codedatesec" ? formItem.codeDateValue : null) || (TreeValue && formItem.secType == "codelevelsec" ? TreeValue : null) ||
            (formItem.secType == "codeattrsec" ? this.add : null) || (this.status === "apply" && formItem.field === "codeStandardEditType" ? "1" : null) ||
            (this.status === "amend" && formItem.field === "codeStandardEditType" ? "2" : null) ||
            //父组件如果是参照数据会将selectRow置空,selectRow不为空就说明不是参照要回填源标准号数据
            (this.status === "amend" ? (this.selectRow && (formItem.field === "oldcode" ? this.selectValue : null)) : null),
          placeholder: formItem.inputTip,
          comboxKey: formItem.comboxKey,
          tip: formItem.tooltips,
          // hidden:formItem.secType && formItem.codeValueApplyStatus == 3 ? true : false,
          // readonly:formItem.codeValueApplyStatus && formItem.codeValueApplyStatus == 2 ?true : false ,
          display: !formItem.hidden,
          maxlength: formItem.maxlength,
          filterable: true,
@@ -413,9 +379,120 @@
            value: "key",
          },
        };
        this.filteredObject = columnItem
        slotColumnList.push(columnItem);
        if (group.length === 0) {
          that.slotColumnList.forEach((colItem,index) => {
          column.push(columnItem);
        } else {
          group[group.length - 1]["column"].push(columnItem);
        }
      });
      this.slotColumnList = slotColumnList;
      this.$set(this.option, "column", column);
      this.$set(this.option, "group", group);
      this.updateIndex++;
      if (this.type === "add") {
        this.loading = false;
      }
      this.geDictData(dictKeys);
      this.getFormDetail();
    },
    //修改级联项
    changeChildItem(items, TreeValue, type) {
      type = type || "add";
      let column = this.option.column;
      let group = this.option.group;
      // let column = [];
      // let group = [];
      let that = this;
      items.forEach((item) => {
        let formItem = this.resetFormConfig(item);
        if (formItem.field == "lcstatus") {
          formItem.field = formItem.field + "_text";
          formItem.readOnly = true;
        }
        // 设置表单校验的规则,文本
        let message = "请选择";
        let trigger = "change";
        if (formItem.type === "text") {
          message = "请输入";
          trigger = "blur";
        }
        let fieldMapKey = ''
        if (formItem.type == "refer" && !formItem.fieldMap) {
          fieldMapKey = formItem.field + 'Id'
          formItem.fieldMap = {}
          formItem.fieldMap[fieldMapKey] = 'id'
          formItem.fieldMap[formItem.field + 'id'] = 'id'
        }
        let columnItem = {
          label: formItem.text,
          labelslot: true,
          prop: this.$utilFunc.isValuableObj(formItem.referConfig)
            ? formItem.showField || formItem.field
            : formItem.field,
          field: formItem.field,
          type: this.columnType[formItem.type],
          dicData: this.getDataList(formItem.type, formItem.data),
          disabled: this.type === "detail" ? true : formItem.readOnly || (formItem.codeValueApplyStatus && formItem.codeValueApplyStatus == 2 ? true : false) ||
            (this.status  ? (formItem.field === "reviseSeries" ? (formItem.value == 'false' ? true : false) : false) : false),
          prepend: this.preOrSufFixShow("text", formItem.prefix),
          append: this.preOrSufFixShow("text", formItem.suffix),
          prefixIcon: this.preOrSufFixShow("icon", formItem.prefix),
          suffixIcon: this.preOrSufFixShow("icon", formItem.suffix),
          valueFormat: formItem.dateFormate || "yyyy-MM-dd HH:mm:ss",
          format: formItem.dateFormate,
          keyAttr: formItem.keyAttr,
          value: formItem.defaultValue || (formItem.dicData && formItem.dicData.length > 0 && formItem.secType == "codefixedsec" ? formItem.dicData[0].id : null) ||
            (formItem.secType == "codedatesec" ? formItem.codeDateValue : null) || (TreeValue && formItem.secType == "codelevelsec" ? TreeValue : null) ||
            (formItem.secType == "codeattrsec" ? this.add : null) || (this.status === "apply" && formItem.field === "codeStandardEditType" ? "1" : null) ||
            (this.status === "amend" && formItem.field === "codeStandardEditType" ? "2" : null) ||
            //父组件如果是参照数据会将selectRow置空,selectRow不为空就说明不是参照要回填源标准号数据
            (this.status === "amend" ? (this.selectRow && (formItem.field === "oldcode" ? this.selectValue : null)) : null),
          placeholder: formItem.inputTip,
          comboxKey: formItem.comboxKey,
          tip: formItem.tooltips,
          display: !formItem.hidden,
          maxlength: formItem.maxlength,
          filterable: true,
          referConfig:
            formItem.type == "refer"
              ? {
                title: formItem.text,
                showField: formItem.showField || formItem.field,
                field: formItem.field,
                fieldMap: formItem.fieldMap || {},
                placeholder: formItem.inputTip,
                options: formItem.referConfig
              }
              : {},
          span: formItem.span
            ? formItem.span
            : formItem.type === "textarea"
              ? 24
              : this.localTrendsSpan,
          rules: [
            {
              required: formItem.required,
              message: `${message}${formItem.text}`,
              trigger,
            },
            {
              // 如果没有正则则匹配任何字符
              pattern: formItem.verify ? formItem.verify : /[\s\S.]*/g,
              message: formItem.tooltips,
              trigger,
            },
          ],
          props: {
            label: "value",
            value: "key",
          },
        };
        if (group.length === 0) {
          that.slotColumnList.forEach((colItem, index) => {
            if (colItem.field == columnItem.field) {
              that.slotColumnList[index] = columnItem;
              column[index] = columnItem;
@@ -423,14 +500,134 @@
            }
          })
        } else {
          that.slotColumnList.forEach((colItem,index) => {
          that.slotColumnList.forEach((colItem, index) => {
            if (colItem.field == columnItem.field) {
              that.slotColumnList[index] = columnItem;
              return;
            }
          })
          group.forEach((groupItem,index) => {
            groupItem.column.forEach((colItem,colIndex) => {
          group.forEach((groupItem, index) => {
            groupItem.column.forEach((colItem, colIndex) => {
              if (colItem.field == columnItem.field) {
                group[index].column[colIndex] = columnItem;
                return;
              }
            })
          });
        }
      });
      that.$set(that.option, "column", column);
      that.$set(that.option, "group", group);
    },
    //标准-修订
    changeStatusItem(items, TreeValue, type) {
      type = type || "add";
      // let column = this.option.column;
      // let group = this.option.group;
      let column = [];
      let group = [];
      let that = this;
      items.forEach((item) => {
        let formItem = this.resetFormConfig(item);
        if (formItem.field == "lcstatus") {
          formItem.field = formItem.field + "_text";
          formItem.readOnly = true;
        }
        // 设置表单校验的规则,文本
        let message = "请选择";
        let trigger = "change";
        if (formItem.type === "text") {
          message = "请输入";
          trigger = "blur";
        }
        let fieldMapKey = ''
        if (formItem.type == "refer" && !formItem.fieldMap) {
          fieldMapKey = formItem.field + 'Id'
          formItem.fieldMap = {}
          formItem.fieldMap[fieldMapKey] = 'id'
          formItem.fieldMap[formItem.field + 'id'] = 'id'
        }
        let columnItem = {
          label: formItem.text,
          labelslot: true,
          prop: this.$utilFunc.isValuableObj(formItem.referConfig)
            ? formItem.showField || formItem.field
            : formItem.field,
          field: formItem.field,
          type: this.columnType[formItem.type],
          dicData: this.getDataList(formItem.type, formItem.data),
          disabled: this.type === "detail" ? true : formItem.readOnly || (formItem.codeValueApplyStatus && formItem.codeValueApplyStatus == 2 ? true : false) ||
            (this.status === 'amend' ? (formItem.field === "reviseSeries" ? (formItem.value == 'false' ? true : false) : false) : false),
          prepend: this.preOrSufFixShow("text", formItem.prefix),
          append: this.preOrSufFixShow("text", formItem.suffix),
          prefixIcon: this.preOrSufFixShow("icon", formItem.prefix),
          suffixIcon: this.preOrSufFixShow("icon", formItem.suffix),
          valueFormat: formItem.dateFormate || "yyyy-MM-dd HH:mm:ss",
          format: formItem.dateFormate,
          keyAttr: formItem.keyAttr,
          value: formItem.defaultValue || (formItem.dicData && formItem.dicData.length > 0 && formItem.secType == "codefixedsec" ? formItem.dicData[0].id : null) ||
            (formItem.secType == "codedatesec" ? formItem.codeDateValue : null) || (TreeValue && formItem.secType == "codelevelsec" ? TreeValue : null) ||
            (formItem.secType == "codeattrsec" ? this.add : null) || (this.status === "apply" && formItem.field === "codeStandardEditType" ? "1" : null) ||
            (this.status === "amend" && formItem.field === "codeStandardEditType" ? "2" : null) ||
            //父组件如果是参照数据会将selectRow置空,selectRow不为空就说明不是参照要回填源标准号数据
            (this.status === "amend" ? (this.selectRow && (formItem.field === "oldcode" ? this.selectValue : null)) : null),
          placeholder: formItem.inputTip,
          comboxKey: formItem.comboxKey,
          tip: formItem.tooltips,
          display: !formItem.hidden,
          maxlength: formItem.maxlength,
          filterable: true,
          referConfig:
            formItem.type == "refer"
              ? {
                title: formItem.text,
                showField: formItem.showField || formItem.field,
                field: formItem.field,
                fieldMap: formItem.fieldMap || {},
                placeholder: formItem.inputTip,
                options: formItem.referConfig
              }
              : {},
          span: formItem.span
            ? formItem.span
            : formItem.type === "textarea"
              ? 24
              : this.localTrendsSpan,
          rules: [
            {
              required: formItem.required,
              message: `${message}${formItem.text}`,
              trigger,
            },
            {
              // 如果没有正则则匹配任何字符
              pattern: formItem.verify ? formItem.verify : /[\s\S.]*/g,
              message: formItem.tooltips,
              trigger,
            },
          ],
          props: {
            label: "value",
            value: "key",
          },
        };
        if (group.length === 0) {
          that.slotColumnList.forEach((colItem, index) => {
            if (colItem.field == columnItem.field) {
              that.slotColumnList[index] = columnItem;
              column[index] = columnItem;
              return;
            }
          })
        } else {
          that.slotColumnList.forEach((colItem, index) => {
            if (colItem.field == columnItem.field) {
              that.slotColumnList[index] = columnItem;
              return;
            }
          })
          group.forEach((groupItem, index) => {
            groupItem.column.forEach((colItem, colIndex) => {
              if (colItem.field == columnItem.field) {
                group[index].column[colIndex] = columnItem;
                return;
@@ -509,7 +706,7 @@
    // 异步获取字典数据
    geDictData(dictKeys) {
      dictKeys.forEach((dictObj) => {
        getEnumDictionary({ code: dictObj.dictKey }).then((res) => {
        getEnumDictionary({code: dictObj.dictKey}).then((res) => {
          if (res.data && res.data.code === 200) {
            this.option.column = this.option.column.map((item) => {
              if (item.field === dictObj.field) {
@@ -533,7 +730,7 @@
          if (valid) {
            done();
            resolve(true);
            this.ValidataValue=true;
            this.ValidataValue = true;
          } else {
            resolve(false);
          }
@@ -543,12 +740,16 @@
    // 获取表单详情数据
    getFormDetail() {
      if (this.type === "add") return;
      getFormDetail({ templateOid: this.templateOid, oid: this.rowOid }).then(
        (res) => {
          this.form = Object.assign(this.form, res.data.data[0]);
          this.loading = false;
        }
      );
      if (this.templateOid) {
        getFormDetail({templateOid: this.templateOid, oid: this.rowOid}).then(
          (res) => {
            this.form = Object.assign(this.form, res.data.data[0]);
            this.loading = false;
          }
        );
        return;
      }
    },
    setReferValue(data) {
      if (data.field) {
@@ -572,7 +773,7 @@
                if (mapField.indexOf("attribute.") > -1) {
                  temp = _item['attributes'][mapField.subString("attribute.".length)] || _item['attributes']['data'][mapField.subString("attribute.".length)];
                } else {
                  temp = _item['attributes'][mapField] ||_item['attributes']['data'][mapField] || _item[mapField];
                  temp = _item['attributes'][mapField] || _item['attributes']['data'][mapField] || _item[mapField];
                }
              } else {
                //有多个