Ben Lin
2024-06-07 aa0bc81d06736cc1a1bd210dde61f57736585d43
src/views/tigerprojects/system/lowcode/normal/index.vue
@@ -32,7 +32,13 @@
  import { useRoute } from 'vue-router';
  import { Tag, Tooltip } from 'ant-design-vue';
  import { isNullOrEmpty } from '/@/utils/is';
  import { GetActionColumn, GetActionsData, OpenSelectItem, GetSelectSuccess } from './data';
  import {
    GetActionColumn,
    GetActionsData,
    OpenSelectItem,
    GetSelectSuccess,
    custOnChange,
  } from './data';
  import { useModal } from '/@/components/Modal';
  import { useLocale } from '/@/locales/useLocale';
@@ -121,7 +127,9 @@
        searchForms[i].componentProps.api == 'GetEnum'
      ) {
        searchForms[i].componentProps.api = GetEnum;
        searchForms[i].componentProps.params.name = `${objParams.value.ID}+${searchForms[i].field}s`;
        searchForms[
          i
        ].componentProps.params.name = `${objParams.value.ID}+${searchForms[i].field}s`;
        searchForms[i].componentProps.labelField = unref(getLocale) == 'zh_CN' ? 'Desc' : 'Name';
      }
      if (
@@ -132,6 +140,7 @@
        searchForms[i].componentProps.api = getEntity;
        searchForms[i].componentProps.resultField = 'Data.Items';
      }
      onChangeConfig(searchForms[i]);
    }
    _searchFormSchema.value = searchForms;
    var _cruds = JSON.parse(data.Data.Items[0].FORM_JSON);
@@ -153,6 +162,7 @@
        _cruds[i].componentProps.api = getEntity;
        _cruds[i].componentProps.resultField = 'Data.Items';
      }
      onChangeConfig(_cruds[i]);
    }
    _crudFormSchema.value = _cruds;
@@ -180,4 +190,18 @@
  function handleSelectItem() {
    OpenSelectItem(openItemModal, getForm().getFieldsValue()['0']);
  }
  /* Select 自定义onChange方法 */
  function onChangeConfig(obj: any) {
    if (obj.component == 'Select') {
      var options = obj.componentProps.options;
      var onChange = obj.componentProps.onChange;
      obj.componentProps = ({ schema, tableAction, formActionType, formModel }) => {
        return {
          options: options,
          onChange: (e) => custOnChange(e, onChange, objParams.value.ID),
        };
      };
    }
  }
</script>