Ben Lin
2024-07-03 a745761147b17a42b4698250a170ef4c0fa0b09b
产品绑定工艺优化
已修改10个文件
316 ■■■■■ 文件已修改
src/views/components/CustModal.vue 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/components/RouteViewModal.vue 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/tigerprojects/mes/prod/biz_mes_wo/index.vue 137 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/tigerprojects/system/lowcode/composition/CarGridNav.vue 9 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/tigerprojects/system/lowcode/composition/index.vue 9 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/tigerprojects/system/lowcode/data.ts 4 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/tigerprojects/system/lowcode/entityts/ProdRouteBinding.ts 11 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/tigerprojects/system/lowcode/entityts/QMS_INS_ITEM.ts 96 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/tigerprojects/system/lowcode/entityts/QMS_INS_STD.ts 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/tigerprojects/system/lowcode/high/dtl.vue 36 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/components/CustModal.vue
@@ -4,7 +4,7 @@
 * @version: 
 * @Date: 2024-06-05 15:46:07
 * @LastEditors: Ben Lin
 * @LastEditTime: 2024-06-28 14:26:49
 * @LastEditTime: 2024-07-03 19:19:16
-->
<template>
  <BasicModal
@@ -30,7 +30,7 @@
  </BasicModal>
</template>
<script lang="ts" setup>
  import { ref, unref, nextTick, watch } from 'vue';
  import { ref, unref, nextTick, watch, Ref } from 'vue';
  import { BasicModal, useModalInner } from '/@/components/Modal';
  import { FormSchema } from '/@/components/Form/index';
  import { custFunction } from './data';
@@ -38,6 +38,8 @@
  import { Layout, LayoutContent, Card } from 'ant-design-vue';
  import { useMessage } from '/@/hooks/web/useMessage';
  import { useI18n } from '/@/hooks/web/useI18n';
  import { initRoute } from '../tigerprojects/system/lowcode/data';
  import LogicFlow from '@logicflow/core';
  const { t } = useI18n();
  const { notification, createErrorModal } = useMessage();
@@ -116,7 +118,7 @@
  /**
   * @description: 弹框确定按钮方法
   * @return {*}
   */
   */
  async function handleSuccess() {
    try {
      var values = {} as any;
src/views/components/RouteViewModal.vue
@@ -4,7 +4,7 @@
 * @version: 
 * @Date: 2024-06-18 15:09:48
 * @LastEditors: Ben Lin
 * @LastEditTime: 2024-06-30 13:07:46
 * @LastEditTime: 2024-07-03 21:00:23
-->
<template>
  <BasicModal
@@ -35,7 +35,7 @@
  const slotName = ref('');
  const [registerModal, { setModalProps, closeModal }] = useModalInner(async (data) => {
    setModalProps({ confirmLoading: false });
    setModalProps({ confirmLoading: false, cancelText: '关闭', showOkBtn: false });
    rotId.value = data?.rotId;
    slotName.value = data?.slotName;
    submitFn.value = data?.submitFn; //'rvSubmit'
src/views/tigerprojects/mes/prod/biz_mes_wo/index.vue
@@ -4,7 +4,7 @@
 * @version: 
 * @Date: 2024-05-25 00:27:00
 * @LastEditors: Ben Lin
 * @LastEditTime: 2024-06-28 11:40:38
 * @LastEditTime: 2024-07-03 20:51:05
-->
<template>
  <div>
@@ -95,7 +95,10 @@
          </template>
        </BasicForm>
        <!-- 自定义内容 -->
        <div style="height: 200px" id="lfContainer" v-if="isCustEl[item.name]"></div>
        <!-- <div style="height: 200px" id="lfContainer" v-if="isCustEl[item.name]"></div> -->
        <div class="h-full" style="height: 380px" v-if="isCustEl[item.name]">
          <FlowChartView :data="routeData" @init="init" />
        </div>
      </template>
    </CustModal>
    <RouteViewModal @register="registerRv" @success="RvItemSuccess" />
@@ -110,6 +113,7 @@
  import WoModal from './WoModal.vue';
  import GeneralModal from '/@/views/components/GeneralModal.vue';
  import RouteViewModal from '/@/views/components/RouteViewModal.vue';
  import { FlowChartView } from '/@/components/FlowChart';
  import CustModal from '/@/views/components/CustModal.vue';
  import { useDrawer } from '/@/components/Drawer';
  import { columns, searchFormSchema } from './biz_mes_wo.data';
@@ -121,15 +125,7 @@
  import { SaveEntity, getListByPage } from '/@/api/tigerapi/system';
  import { GetSelectSuccess, OpenSelectItem, getFormSchema } from '/@/views/components/data';
  import LogicFlow from '@logicflow/core';
  import { getRouteData } from '/@/api/tigerapi/mes/router';
  import actionRect from '/@/components/FlowChart/src/actionRect';
  import TestNode from '/@/components/FlowChart/src/TestNode';
  import CollectNode from '/@/components/FlowChart/src/CollectNode';
  import AssemblyNode from '/@/components/FlowChart/src/AssemblyNode';
  import PackingNode from '/@/components/FlowChart/src/PackingNode';
  import RepairNode from '/@/components/FlowChart/src/RepairNode';
  import customEdge from '/@/components/FlowChart/src/customEdge';
  import { BpmnElement } from '@logicflow/extension';
  import { initRoute } from '../../../system/lowcode/data';
  const { t } = useI18n();
  const ASteps = Steps;
@@ -147,10 +143,10 @@
    tip: '加载中...',
  });
  const lfInstance = ref(null) as Ref<LogicFlow | null>;
  const [registerRv, { openModal: openRvModal }] = useModal();
  const [registerRv, { openModal: openRvModal, closeModal }] = useModal();
  const [registerWo, { openModal: openWoModal }] = useModal();
  const [registerItemAdd, { openModal: openItemModal }] = useModal();
  const [registerCust, { openModal: openCustModal, closeModal }] = useModal();
  const [registerCust, { openModal: openCustModal }] = useModal();
  const [registerTable, { getForm, reload }] = useTable({
    title: '工单信息',
    api: getListByPage,
@@ -230,6 +226,16 @@
  onMounted(async () => {});
  const currlf = ref(null) as Ref<LogicFlow | null>;
  /**
   * @description: 工艺路线初始化
   * @param {*} lf
   * @return {*}
   */
  async function init(lf, rotId) {
    initRoute(lf, rotId, routeData, currlf);
  }
  //新增
  function addWo() {
    openDrawer(true, {
@@ -267,21 +273,17 @@
      { name: 'rotinfo', slots: ['add'], preIcons: { add: 'search|svg' }, title: '工艺信息' },
    ];
    // rotSchema.value = getFormSchema('rotinfo');
    //工艺路线渲染图初始化
    if (lfInstance.value != null) {
      routeData.value = {
        nodes: [],
        edges: [],
      };
      const lf = unref(lfInstance)!;
      lf.render({});
    }
    routeData.value = {
      nodes: [],
      edges: [],
    };
    initRoute(currlf, record.ROUTE_CODE, routeData, currlf);
    selectVals.value['ROUTE_CODE'] = record.ROUTE_CODE;
    openCustModal(true, {
      isUpdate: true,
      ctype: cType,
      title: '工艺配置',
      width: '1000px',
      width: '1200px',
      formEl: useFormData.value, //如果是多个表单,增加多个插槽
      formElName: ['woinfo', 'prodinfo', 'rotinfo'], //表单插槽名称,支持多个表单
      RowKey: '',
@@ -292,12 +294,12 @@
      values: record, //表单记录
    });
  }
  /**
   * @description: 下发
   * @param {*} record
   * @return {*}
   */
   */
  function handleRelease(record: Recordable) {
    if (record.STATUS == 2) {
      createErrorModal({
@@ -331,12 +333,12 @@
      values: record, //表单记录
    });
  }
  /**
   * @description: 取消下发
   * @param {*} record
   * @return {*}
   */
   */
  function handleUnRelease(record: Recordable) {
    if (record.STATUS == 0) {
      createErrorModal({
@@ -384,12 +386,12 @@
      }
    });
  }
  /**
   * @description: 删除
   * @param {*} record
   * @return {*}
   */
   */
  function handleDelete(record: Recordable) {
    DeleteMesWo(record.ID).then((action) => {
      if (action.IsSuccessed) {
@@ -400,20 +402,20 @@
      }
    });
  }
  /**
   * @description: 弹出框确定返回
   * @param {*} d
   * @return {*}
   */
   */
  function custSuccess(d) {
    reload();
  }
  /**
   * @description: 点击打开物料列表框
   * @return {*}
   */
   */
  function handleSelectItem() {
    openItemModal(true, {
      title: '物料列表',
@@ -445,7 +447,7 @@
      ],
      tableName: 'BAS_ITEM',
      rowKey: 'ITEM_CODE',
      searchInfo: {TABLE_NAME: 'BAS_ITEM'}
      searchInfo: { TABLE_NAME: 'BAS_ITEM' },
    });
  }
@@ -454,20 +456,20 @@
   * @param {*} d
   * @param {*} u
   * @return {*}
   */
   */
  function handleItemSuccess(d, u) {
    getForm().setFieldsValue({
      ITEM_CODE: d.values['val'],
    });
  }
  /**
   * @description: 各表单内弹出选择框选择成功后方法
   * @param {*} d
   * @param {*} u
   * @param {*} item
   * @return {*}
   */
   */
  function handleEntSuccess(d, u, item) {
    var values = GetSelectSuccess(d, u, cType.value);
    selectVals.value = values; //保存弹出框选择的结果
@@ -479,7 +481,10 @@
        nodes: [],
        edges: [],
      };
      init(selectVals.value['ROUTE_CODE']);
      init(currlf, selectVals.value['ROUTE_CODE']);
      const { transformModel, width, height } = unref(currlf).graphModel;
      transformModel.focusOn(300, 200, width, height);
    }
  }
@@ -487,7 +492,7 @@
   * @description: 弹出选择框
   * @param {*} item
   * @return {*}
   */
   */
  function handleCustClick(item) {
    //打开自定义模态框
    OpenSelectItem(
@@ -498,56 +503,8 @@
      selectVals.value['ROUTE_CODE'],
    ); //[openRvModal], selectVals.value['ID']这是自定义参数,按实际需求
  }
  function RvItemSuccess(d, u) {}
  async function init(rotId) {
    LogicFlow.use(BpmnElement);
    lfInstance.value = new LogicFlow({
      container: document.querySelector('#lfContainer'),
      edgeGenerator: (sourceNode) => {
        // console.log('a');
        // 起始节点类型 rect 时使用 自定义的边 custom-edge
        if (sourceNode.properties.isReturn) return 'custom-edge';
        // if (sourceNode.type === 'rect') return 'custom-edge';
        // return 'custom-edge';
      },
    });
    const lf = unref(lfInstance)!;
    // lf?.setDefaultEdgeType('line');
    lf.register(customEdge);
    lf.register(actionRect);
    lf.register(TestNode);
    lf.register(CollectNode);
    lf.register(AssemblyNode);
    lf.register(PackingNode);
    lf.register(RepairNode);
    lf.render({});
    //通过工艺路线ID获取图形数据,并渲染
    var _data = await getRouteData(rotId);
    console.log('组件已挂载', _data);
    //工艺路线全信息,包括Node、Edge和Act
    // routeConfig.routeData = _data.Data;
    if (_data.Data != null) {
      //工艺路线主信息
      var currRoute = _data.Data.route;
      _data.Data.nodes.forEach((n) => {
        n.node.properties = JSON.parse(n.node.properties);
        routeData.value.nodes.push(n.node);
      });
      console.log('111', routeData.value);
      _data.Data.edges.forEach((e) => {
        e.edge.properties = JSON.parse(e.edge.properties);
        routeData.value.edges.push(e.edge);
      });
      _data.Data.acts.forEach((act) => {
        act.node.properties = JSON.parse(act.node.properties);
        routeData.value.nodes.push(act.node);
      });
      console.log('init', unref(lf).getGraphData(), JSON.parse(JSON.stringify(routeData.value)));
      lf.render(routeData.value);
      // lf.graphModel.resize(500, 400);
      lf.graphModel.fitView();
      lf.graphModel.translateCenter();
  function RvItemSuccess(d, u) {
    closeModal();
    }
  }
</script>
src/views/tigerprojects/system/lowcode/composition/CarGridNav.vue
@@ -4,14 +4,16 @@
 * @version: 
 * @Date: 2024-06-20 12:13:27
 * @LastEditors: Ben Lin
 * @LastEditTime: 2024-07-01 16:49:22
 * @LastEditTime: 2024-07-03 20:31:07
-->
<template>
  <Card :title="GetTitle(props.configType)['navTitle']">
    <CardGrid
      v-for="item in GetNavItems(props.configType)"
      :key="item.title"
      @click="navChangeItem(item.action, useModalData[item.action][1].openModal)"
      @click="
        navChangeItem(item.action, useModalData[item.action][1].openModal, openRvModal, selectedNodes)
      "
    >
      <span class="flex flex-col items-center">
        <Icon :icon="item.icon" :color="item.color" size="20" />
@@ -55,6 +57,7 @@
  const ACard = Card;
  const objParams = inject('objParams') as Ref<any>;
  const selectedNodes = inject('selectedNodes') as Ref<any>;
  const props = defineProps({
    configType: { type: String },
    nodes: { type: Array as PropType<any[]> },
@@ -138,4 +141,6 @@
  async function handleSuccess(d, u, item, objParams, refreshPage) {
    GetSelectSuccess(d, u, item, objParams, refreshPage);
  }
  function RvItemSuccess(d, u) {}
</script>
src/views/tigerprojects/system/lowcode/composition/index.vue
@@ -4,7 +4,7 @@
 * @version: 
 * @Date: 2024-06-18 23:30:30
 * @LastEditors: Ben Lin
 * @LastEditTime: 2024-06-29 06:16:43
 * @LastEditTime: 2024-07-03 19:21:09
-->
<template>
  <PageWrapper
@@ -25,8 +25,8 @@
          <template #[item] v-for="item in otherSlots" :key="item">
            <!-- 自定义内容 -->
            <div class="h-full" style="height: 400px">
              <FlowChartView :data="routeData" @init="init"
            /></div>
              <FlowChartView :data="routeData" @init="init" />
            </div>
          </template>
        </CarGridNav>
        <Config v-if="showConfig" :configType="configType" @success="configSuccess" />
@@ -88,7 +88,6 @@
  import { isNullOrUnDef } from '/@/utils/is';
  import { useGo } from '/@/hooks/web/usePage';
  import { useMessage } from '/@/hooks/web/useMessage';
  import { getRouteData } from '/@/api/tigerapi/mes/router';
  import LogicFlow from '@logicflow/core';
  defineOptions({ name: 'DeptManagement' });
@@ -121,7 +120,7 @@
  const custImport = ref<any>(null);
  const [registerCust, { openModal: openCustomModal, closeModal }] = useModal();
  provide<Ref<any>>('objParams', objParams);
  provide<Ref<any>>('selectedNodes', selectedNodes);
  provide<Ref<any>>('selectedNodes', nodes);
  setTitle(objParams.value.Title); //设置标签页标题
  /**
src/views/tigerprojects/system/lowcode/data.ts
@@ -4,7 +4,7 @@
 * @version:
 * @Date: 2024-06-02 17:52:35
 * @LastEditors: Ben Lin
 * @LastEditTime: 2024-07-02 19:40:27
 * @LastEditTime: 2024-07-03 20:19:37
 */
import { ActionItem, FormSchema } from '/@/components/Table';
@@ -174,6 +174,8 @@
      routeData.value.nodes.push(act.node);
    });
    unref(lf).render(routeData.value);
    // lf.graphModel.translateCenter();
    // lf.graphModel.fitView();
  }
}
src/views/tigerprojects/system/lowcode/entityts/ProdRouteBinding.ts
@@ -4,7 +4,7 @@
 * @version:
 * @Date: 2024-06-19 20:34:27
 * @LastEditors: Ben Lin
 * @LastEditTime: 2024-06-29 02:57:03
 * @LastEditTime: 2024-07-03 20:40:54
 */
import { Ref, h, ref, render, unref } from 'vue';
@@ -387,8 +387,6 @@
     */
    navChangeItem: (action: any, ...args) => {
      switch (action) {
        case 'editRoute':
          break;
        case 'addRoute':
          args[0](true, {
            title: '工艺路线列表',
@@ -429,6 +427,9 @@
          args[0](true, {
            title: '请完成以下步骤',
          });
          break;
        case 'editRoute':
          args[1](true, { rotId: args[2][0].id, slotName: '' });
          break;
      }
    },
@@ -472,7 +473,7 @@
      // newElement.textContent = 'New Element =>'+type;
      // newElement.style.height = '250px';
      newElement.id = 'lfContainer';
      newElement.className = "h-full";
      newElement.className = 'h-full';
      // newElement.style.color = 'blue';
      // newElement.style.fontSize = '16px';
      return newElement;
@@ -485,7 +486,7 @@
     */
    CustFunc: (type: string | undefined, ...args) => {
      if (type == 'Route') {
        initRoute(args[0], args[1]);
        // initRoute(args[0], args[1]);
      }
    },
  };
src/views/tigerprojects/system/lowcode/entityts/QMS_INS_ITEM.ts
@@ -4,16 +4,13 @@
 * @version:
 * @Date: 2024-06-19 20:34:27
 * @LastEditors: Ben Lin
 * @LastEditTime: 2024-07-02 19:43:08
 * @LastEditTime: 2024-07-03 19:00:59
 */
import { Ref, h, unref } from 'vue';
import { DeleteEntity, GetEnum, getEntity } from '/@/api/tigerapi/system';
import { ActionItem, BasicColumn, FormSchema, useTable } from '/@/components/Table';
import { isNullOrEmpty, isNullOrUnDef } from '/@/utils/is';
import { buildUUID } from '/@/utils/uuid';
import { useUserStore } from '/@/store/modules/user';
import { formatToDateTime } from '/@/utils/dateUtil';
import { Tag } from 'ant-design-vue';
import { useLocale } from '/@/locales/useLocale';
import { useDrawer } from '/@/components/Drawer';
@@ -40,9 +37,19 @@
        if (item['ID'] == d.ID)
          return {
            ...item,
            INS_CODE: d.INS_CODE,
            INS_NAME: d.INS_NAME,
            STD_CODE: d.STD_CODE,
            STD_NAME: d.STD_NAME,
            STD_TYPE: d.STD_TYPE,
            CTGY_CODE: d.CTGY_CODE,
            IS_NECESSARY: d.IS_NECESSARY,
            IS_JUDGE: d.IS_JUDGE,
            INS_TOOL: d.INS_TOOL,
            QNTV_UNIT: d.QNTV_UNIT,
            QNTV_TIMES: d.QNTV_TIMES,
            QNTV_DEVIATION: d.QNTV_DEVIATION,
            QNTV_UPPER: d.QNTV_UPPER,
            QNTV_LOWER: d.QNTV_LOWER,
            QLTV_LIST: d.QLTV_LIST,
            REMARK: d.REMARK,
          };
        return item;
@@ -215,8 +222,14 @@
      }
      return data;
    },
    /**
     * @description: 一些其他的字段值,一般是增删改是带入的关键字段值
     * @param {string} val
     * @param {string} id
     * @return {*}
     */
    KeyFieldValues: (val: string, id: string) => {
      return { TECH_STD: val };
      return { STD_CODE: val };
    },
    /**
     * @description: 获取标题信息
@@ -241,14 +254,15 @@
   * @return {*}
   */
  function Del(args: Fn[], params: {}) {
    const name = params['name'];
    if (!isNullOrEmpty(params['data'])) {
      var _data = params['data'].value.filter((item) => item['ID'] != params['record']['ID']);
      params['data'].value = _data;
      var _data = params['data'].value[name].filter((item) => item['ID'] != params['record']['ID']);
      params['data'].value[name] = _data;
      args[6]({
        dataSource: [],
      });
      args[6]({
        dataSource: params['data'],
        dataSource: params['data'].value[name],
      });
      args[1]();
    } else {
@@ -296,8 +310,12 @@
        },
      },
      {
        title: '检验标准编码',
        title: '技术要求',
        dataIndex: 'TECH_STD',
      },
      {
        title: '检验标准编码',
        dataIndex: 'STD_CODE',
      },
      {
        title: '是否必检',
@@ -419,7 +437,7 @@
      },
      {
        label: '检验标准',
        field: 'TECH_STD',
        field: 'STD_CODE',
        component: 'ApiSelect',
        colProps: {
          span: 24,
@@ -452,6 +470,60 @@
        },
      },
      {
        label: '是否必检',
        field: 'IS_NECESSARY',
        component: 'Select',
        required: true,
        colProps: {
          span: 24,
        },
        componentProps: {
          options: [
            {
              label: '是',
              value: 'Y',
              key: 'Y',
            },
            {
              label: '否',
              value: 'N',
              key: 'N',
            },
          ],
        },
      },
      {
        label: '是否判定结果',
        field: 'IS_JUDGE',
        component: 'Select',
        required: true,
        colProps: {
          span: 24,
        },
        componentProps: {
          options: [
            {
              label: '是',
              value: 'Y',
              key: 'Y',
            },
            {
              label: '否',
              value: 'N',
              key: 'N',
            },
          ],
        },
      },
      {
        label: '技术要求',
        field: 'TECH_STD',
        component: 'Input',
        colProps: {
          span: 24,
        },
      },
      {
        label: '备注',
        field: 'REMARK',
        component: 'Input',
src/views/tigerprojects/system/lowcode/entityts/QMS_INS_STD.ts
@@ -131,7 +131,7 @@
    };
    // 将对象转换为JSON字符串并保存到sessionStorage
    sessionStorage.removeItem(`${param.SessionName}_params`);
    sessionStorage.setItem(`${param.SessionName}_update_params`, encodeURI(JSON.stringify(param)));
    sessionStorage.setItem(`${param.SessionName}_params`, encodeURI(JSON.stringify(param)));
    args[5](`/QMS_INS_ITEM/High/${encodeURI(JSON.stringify({ sName: param.SessionName, Name: param.Name }))}`);
  }
src/views/tigerprojects/system/lowcode/high/dtl.vue
@@ -124,7 +124,7 @@
  /**
   * @description: 挂载组件完成时
   * @return {*}
   */
   */
  onMounted(async () => {
    for (const i in drawers.value) {
      let sqlcmd = ' 1 =1 ';
@@ -244,27 +244,25 @@
   * @param {*} index
   * @param {*} item
   * @return {*}
   */
   */
  function handleCreate(index, item) {
    validate().then((res) => {
      const Keys = Object.getOwnPropertyNames(useFormData.value);
      let i;
      for (i = 0; i < Keys.length; i++) {
        keyFieldValues.value[objParams.value['pCode']] = objParams.value['IsID']
          ? res[Keys[i]]['ID']
          : res[Keys[i]][objParams.value['pCode']] == '0' ||
              isNullOrUnDef(res[Keys[i]][objParams.value['pCode']])
            ? res[Keys[i]][objParams.value['mCode']]
            : res[Keys[i]][objParams.value['pCode']];
      for (const t in drawers.value) {
        for (const i in Keys) {
          keyFieldValues.value[drawers.value[t]['code']] = objParams.value['IsID']
            ? res[Keys[i]]['ID']
            : res[Keys[i]][drawers.value[t]['code']];
        }
        useDrawers[index][item][1].openDrawer(true, {
          isUpdate: false,
          ifSave: true,
          entityName: drawers.value[t]['name'], //props.entityName,
          formJson: GetCrudForm(item, data), //获取增删改表单字段
          crudColSlots: props.crudColSlots,
          keyFieldValues: keyFieldValues.value,
        });
      }
      useDrawers[index][item][1].openDrawer(true, {
        isUpdate: false,
        ifSave: true,
        entityName: props.entityName,
        formJson: GetCrudForm(item, data), //获取增删改表单字段
        crudColSlots: props.crudColSlots,
        keyFieldValues: keyFieldValues.value,
      });
    });
  }
@@ -274,7 +272,7 @@
   * @param {*} u
   * @param {*} item 页面上循环抽屉列表传入的实体名字,作为各表格相关方法的key,从而调用各表格相关的方法,如:useTables[item][1].setProps
   * @return {*}
   */
   */
  function handleSuccess(d, u, item) {
    if (!isNullOrUnDef(custImport.value)) {
      /* 自定义编辑方法,根据实体名去调用 */