Ben Lin
2024-07-04 d582f081e148c5df7c1b334a94fa1df1cd2655a9
src/views/tigerprojects/system/lowcode/high/dtl.vue
@@ -42,7 +42,7 @@
  import { useForm } from '/@/components/Form/index';
  import GeneralModal from '/@/views/components/GeneralModal.vue';
  import normalDrawer from '../normalDrawer.vue';
  import { isNullOrEmpty, isNullOrUnDef } from '/@/utils/is';
  import { isFunction, isNullOrEmpty, isNullOrUnDef } from '/@/utils/is';
  import { useModal } from '/@/components/Modal';
  import { useGo } from '/@/hooks/web/usePage';
  import { DeleteEntity, getEntity } from '/@/api/tigerapi/system';
@@ -81,6 +81,7 @@
      GetTitle(type: string | undefined) {},
      GetUseTables(data: Ref<Recordable[]>, ...args) {},
      GetUseDrawers() {},
      CustInitData(data: Ref<any[]>, keyFieldValues: Ref<{}>, type: string) {},
    } as EntityCustFunctionType,
  ]);
  /* 动态import实体名.ts的自定义方法 */
@@ -96,6 +97,7 @@
      GetTitle,
      GetUseTables,
      GetUseDrawers,
      CustInitData,
    },
  ] = isNullOrUnDef(custImport.value['default'])
    ? EntityCustFunction.value
@@ -132,7 +134,7 @@
        sqlcmd += ` And ${drawers.value[i].code} = '${keyFieldValues.value[drawers.value[i].code]}'`;
      }
      /* type: all-表示需要code的所有的值 */
      if (drawers.value[i]['type'] == 'all') {
      if (drawers.value[i]['type'] == 'all' && data.value[drawers.value[i]['keyName']].length > 0) {
        sqlcmd += ` And ${drawers.value[i]['code']} in (${data.value[drawers.value[i]['keyName']].map((value) => `'${value[drawers.value[i]['code']]}'`).join(',')})`;
      }
      const list = await getEntity({
@@ -142,6 +144,10 @@
      });
      if (!isNullOrEmpty(list.Data) && !isNullOrEmpty(list.Data.Items)) {
        data.value[drawers.value[i].name] = list.Data.Items;
        // 自定义初始化数据
        if (CustInitData && isFunction(CustInitData)) {
          CustInitData(data, keyFieldValues, drawers.value[i].name);
        }
        useTables[drawers.value[i].name][1].setProps({
          dataSource: [],
        });
@@ -172,7 +178,7 @@
      crudColSlots: props.crudColSlots,
      data,
      name: item.name, //drawers列表里面的name,表示是哪一个实体,也就是高级表单中表格的名字
      keyName: item.keyName,
      keyName: item.keyName,
    };
    const actionItem = [
      {
@@ -254,21 +260,21 @@
    validate().then((res) => {
      const Keys = Object.getOwnPropertyNames(useFormData.value);
      for (const i in Keys) {
          keyFieldValues.value[item['code']] = objParams.value['IsID']
            ? res[Keys[i]]['ID']
            : res[Keys[i]][item['code']];
        }
        useDrawers[index][item['name']][1].openDrawer(true, {
          isUpdate: false,
          ifSave: true,
          entityName: item['name'], //props.entityName,
          // formJson: GetCrudForm(item, data), //获取增删改表单字段
          crudColSlots: props.crudColSlots,
          keyFieldValues: keyFieldValues.value,
          data,
          name: item['name'], //drawers列表里面的name,表示是哪一个实体,也就是高级表单中表格的名字
          keyName: item['keyName'],
        });
        keyFieldValues.value[item['code']] = objParams.value['IsID']
          ? res[Keys[i]]['ID']
          : res[Keys[i]][item['code']];
      }
      useDrawers[index][item['name']][1].openDrawer(true, {
        isUpdate: false,
        ifSave: true,
        entityName: item['name'], //props.entityName,
        // formJson: GetCrudForm(item, data), //获取增删改表单字段
        crudColSlots: props.crudColSlots,
        keyFieldValues: keyFieldValues.value,
        data,
        name: item['name'], //drawers列表里面的name,表示是哪一个实体,也就是高级表单中表格的名字
        keyName: item['keyName'],
      });
    });
  }