Ben Lin
2024-10-22 78999ce1626d2a786f3a705281eeba79c2f1d6dd
src/views/tigerprojects/system/lowcode/high/dtl.vue
@@ -134,12 +134,18 @@
        sqlcmd += ` And ${drawers.value[i].code} = '${keyFieldValues.value[drawers.value[i].code]}'`;
      }
      /* type: all-表示需要code的所有的值 */
      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(',')})`;
      if (drawers.value[i]['type'] == 'all') {
        if (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(',')})`;
        } else {
          sqlcmd = ' 1!=1 '; //新增的时候不查数据,查也没有
        }
      }
      const list = await getEntity({
        sqlcmd: sqlcmd,
        entityName: isNullOrEmpty(drawers.value[i].dataType)? drawers.value[i].name: drawers.value[i].dataType,
        entityName: isNullOrEmpty(drawers.value[i].dataType)
          ? drawers.value[i].name
          : drawers.value[i].dataType,
        order: drawers.value[i].order,
      });
      if (!isNullOrEmpty(list.Data) && !isNullOrEmpty(list.Data.Items)) {
@@ -167,18 +173,20 @@
  function createActions(record, index, item) {
    const params = {
      record,
      isUpdate: true,
      ifSave: true,
      entityName: props.entityName,
      formJson: [], //getFormSchema(`${entityName.value}_Crud`),
      cType,
      isUpdate: true, //是更新还是新增
      ifSave: objParams.value['ifSave'], //是否直接保存表单到数据库,false的话要最后一起提交
      entityName: props.entityName, //实体名称
      formJson: [], //getFormSchema(`${entityName.value}_Crud`), //表单结构
      cType, //类型,以此来确定是哪种方法或者结构,根据实际情况而定
      dtlSlots,
      useModalData,
      useFormData,
      crudColSlots: props.crudColSlots,
      crudColSlots: isNullOrUnDef(objParams.value['crudColSlots'])
        ? []
        : objParams.value['crudColSlots'][item['name']],  //插槽列表
      data,
      name: item.name, //drawers列表里面的name,表示是哪一个实体,也就是高级表单中表格的名字
      keyName: item.keyName,
      keyName: item.keyName, //实际用来确定动态引入实体.ts的实体名称
    };
    const actionItem = [
      {
@@ -260,16 +268,25 @@
    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']];
        const _Keys = Object.getOwnPropertyNames(res[Keys[i]]);
        for (const j in _Keys) {
          if (_Keys[j] == item['code']) {
            keyFieldValues.value[item['code']] = objParams.value['IsID']
              ? res[Keys[i]]['ID']
              : res[Keys[i]][item['code']];
          } else if (_Keys[j] != 'ID') {
            keyFieldValues.value[_Keys[j]] = res[Keys[i]][_Keys[j]];
          }
        }
      }
      useDrawers[index][item['name']][1].openDrawer(true, {
        isUpdate: false,
        ifSave: true,
        ifSave: objParams.value['ifSave'],
        entityName: item['name'], //props.entityName,
        // formJson: GetCrudForm(item, data), //获取增删改表单字段
        crudColSlots: props.crudColSlots,
        crudColSlots: isNullOrUnDef(objParams.value['crudColSlots'])
          ? []
          : objParams.value['crudColSlots'][item['name']],
        keyFieldValues: keyFieldValues.value,
        data,
        name: item['name'], //drawers列表里面的name,表示是哪一个实体,也就是高级表单中表格的名字