ludc
2023-11-14 2be0ef348c881796d66e112463f62be5ef374527
Source/UBCS-WEB/src/components/FormTemplate/FormTemplate.vue
@@ -43,7 +43,7 @@
<script>
import { getFormDetail } from "@/api/formTemplate";
import { getDictionary } from "../../api/system/dict";
import { getEnumDictionary } from "../../api/system/dict";
import vciWebRefer from "../refer/vciWebRefer.vue";
export default {
  name: "FormTemplate",
@@ -101,6 +101,9 @@
  },
  data() {
    return {
      add:'',
      codeattrsecValue:'',
      ValidataValue:false,
      eventFlag:{},
      TreeValueForm:'',
      updateIndex: 0,
@@ -132,6 +135,8 @@
  mounted() {
    this.handleResize();
  },
  updated() {
  },
  created() {
    if (this.LoadingStatus === 'code') {
      this.loading = false;
@@ -155,6 +160,7 @@
      immediate: true,
      handler(newV) {
        this.$emit("getFormData", newV);
        // console.log("getFormData", newV)
      },
    },
    TreeValue:{
@@ -165,7 +171,7 @@
      },
      deep:true,
      immediate:true
    }
    },
  },
  methods: {
    // 渲染表单模板
@@ -184,7 +190,11 @@
      let dictKeys = [];
      let slotColumnList = [];
      formItemList.forEach((formItem) => {
        // console.log('formItem',formItem)
        formItem = this.resetFormConfig(formItem);
        // if(formItem.type === "datetime"){
        //   return;
        // }
        if (formItem.type === "line") {
          group.push({
            label: formItem.text,
@@ -224,7 +234,15 @@
          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,
@@ -239,11 +257,12 @@
          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) ,
            (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,
@@ -286,6 +305,8 @@
            value: "key",
          },
        };
        // console.log('formItem',formItem)
        // console.log('columnItem',columnItem)
        slotColumnList.push(columnItem);
        if (group.length === 0) {
          column.push(columnItem);
@@ -303,7 +324,6 @@
      this.geDictData(dictKeys);
      this.getFormDetail();
    },
    //修改级联项
    changeChildItem(items,TreeValue) {
@@ -312,6 +332,7 @@
      let that=this;
      items.forEach((item) => {
        let formItem = this.resetFormConfig(item);
        if (formItem.field == "lcstatus") {
          formItem.field = formItem.field + "_text";
          formItem.readOnly = true;
@@ -331,6 +352,9 @@
          formItem.fieldMap[formItem.field + 'id'] = 'id'
        }
        let columnItem = {
          change:(val)=>{
            console.log('1',val)
          },
          label: formItem.text,
          labelslot: true,
          prop: this.$utilFunc.isValuableObj(formItem.referConfig)
@@ -344,7 +368,7 @@
          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) ||
@@ -437,6 +461,7 @@
              if (Object.hasOwnProperty.call(element, newAttr)) {
                const oldAttr = element[newAttr];
                formItem[newAttr] = formItem[oldAttr];
              }
            }
          } else if (configType === "directVoluation") {
@@ -486,13 +511,13 @@
    // 异步获取字典数据
    geDictData(dictKeys) {
      dictKeys.forEach((dictObj) => {
        getDictionary({ 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) {
                let dictData = (res.data.data || []).map((itm) => {
                  itm.value = itm.dictValue;
                  itm.key = itm.dictKey;
                  itm.value = itm.itemName;
                  itm.key = itm.itemValue;
                  return itm;
                });
                item.dicData = dictData;
@@ -510,6 +535,7 @@
          if (valid) {
            done();
            resolve(true);
            this.ValidataValue=true;
          } else {
            resolve(false);
          }