Ben Lin
2024-09-11 08f1b081e006f0f3b83bcbdf47f4ef494e18450b
src/views/tigerprojects/system/lowcode/normal/index.vue
@@ -4,7 +4,7 @@
 * @version: 
 * @Date: 2024-05-30 13:28:20
 * @LastEditors: Ben Lin
 * @LastEditTime: 2024-07-25 14:50:59
 * @LastEditTime: 2024-08-06 19:57:41
-->
<template>
  <div>
@@ -26,6 +26,8 @@
  import { useGo } from '/@/hooks/web/usePage';
  import { useI18n } from '/@/hooks/web/useI18n';
  import { getRoleButtons } from '/@/api/sys/menu';
  import { EntityCustFunctionType } from '/@/api/tigerapi/model/basModel';
  import { isFunction } from 'xe-utils';
  const { getLocale } = useLocale();
  const { t } = useI18n();
@@ -34,12 +36,12 @@
  const go = useGo();
  const objParams = ref(JSON.parse(decodeURI(route.params?.id as string)));
  const entityName = ref(objParams.value.ID);
  const _columns = ref([]);
  const _searchFormSchema = ref([]);
  const _crudFormSchema = ref([]);
  const _columns = ref<any[]>([]);
  const _searchFormSchema = ref<any[]>([]);
  const _crudFormSchema = ref<any[]>([]);
  const useModalData = ref({}); //表单中插槽渲染按钮打开模态框useModal方法
  const isExistSql = ref('');
  const custImport = ref<any>(null);
  const custImport = ref<any[]>([]);
  const isMounted = ref(false);
  const buttons = ref([]);
  const AuthOption = ref({
@@ -76,10 +78,18 @@
    // }
    // _columns.value = objs;
    isMounted.value = false;
    const EntityCustFunction = ref([
      {
        ActionItem(params: Recordable<any>, data, ...args) {},
      } as EntityCustFunctionType,
    ]);
    /* 动态import实体名.ts的自定义方法 */
    try {
      custImport.value = await import(`../entityts/${objParams.value.ID}.ts`);
    } catch (e) {}
    const [{ InitCrudFormSchema }] = isNullOrUnDef(custImport.value['default'])
      ? EntityCustFunction.value
      : custImport.value['default']();
    isMounted.value = true;
    //获取表单中插槽渲染的按钮点击弹出模态窗口的实例
@@ -115,7 +125,14 @@
      onChangeConfig(searchForms[i]);
    }
    _searchFormSchema.value = searchForms;
    var _cruds = JSON.parse(data.Data.Items[0].FORM_JSON);
    var _cruds: any[] = [];
    /* 如果有初始化增删改页面结构的方法,则进入 */
    if (InitCrudFormSchema && isFunction(InitCrudFormSchema)) {
      _cruds = InitCrudFormSchema(objParams.value.ID);
    } else {
    /* 没有初始化增删改页面结构的方法时进入 */
      _cruds = JSON.parse(data.Data.Items[0].FORM_JSON);
    }
    for (const i in _cruds) {
      if (
        !isNullOrEmpty(_cruds[i].componentProps) &&