Ben Lin
2025-03-05 abbc201b41a1a25a19ccf7cff8df633dadcf5d88
src/views/tigerprojects/system/lowcode/entityts/BAS_DEFECT_GRP.ts
@@ -4,33 +4,16 @@
 * @version:
 * @Date: 2024-06-19 20:34:27
 * @LastEditors: Ben Lin
 * @LastEditTime: 2024-06-24 15:52:18
 * @LastEditTime: 2024-08-04 14:20:02
 */
import { ActionItem, BasicColumn } from '/@/components/Table';
import { buildUUID } from '/@/utils/uuid';
import { useI18n } from '/@/hooks/web/useI18n';
import { isNullOrUnDef } from '/@/utils/is';
const { t } = useI18n();
function _default() {
  /**
   * @description: 自定义编辑方法
   * @param {Fn} args
   * @param {*} params
   * @return {*}
   */
  function DftGrpEdit(args: Fn[], params: {}) {
    const param = {
      CODE: params['record']['DFTG_CODE'],
      ID: params['record']['ID'],
      Name: 'BAS_DEFECT',
      Title: `编辑不良代码组:${params['record']['DFTG_CODE']}`,
      pCode: 'DFTG_CODE',
      IsID: false,
    };
    args[5](`/BAS_DEFECT/High/${encodeURI(JSON.stringify(param))}`);
  }
  const ActionColumn: BasicColumn = {
    width: 100,
    title: '操作',
@@ -38,40 +21,58 @@
    slots: { customRender: 'action' },
    fixed: 'right',
  };
  /**
   * @description: 一些自定义方法
   * @return {*}
   */
  const methods = {
    /**
     * @description: 获取新增按钮的行为
     * @return {*}
     */
    CreateAction: (fnName: string) => {
    CreateAction: (type: string) => {
      return {
        action: 'go', //drawer(打开左侧抽屉框) | go(跳转到新的页面)
        action: 'go', //drawer(打开左侧抽屉框) | go(跳转到新的页面) | edit(如果是表格可编辑页面就是自定义方法)
        url: 'BAS_DEFECT/High',
        params: {
          CODE: '0',
          ID: buildUUID(),
          Name: 'BAS_DEFECT',
          Title: '新增不良代码组',
          pCode: 'DFTG_CODE',
          // pCode: 'DFTG_CODE',
          IsID: false,
          ifSave: false,
          drawers: [{ name: 'BAS_DEFECT', code: 'DFTG_CODE', type: 'one', keyName: 'BAS_DEFECT' }], //drawers是右边弹出增改侧框的名字列表
        },
      };
    },
    /**
     * @description: 产品绑定工艺路线操作字段自定义按钮
     * @description: 操作字段自定义按钮
     * @return {*}
     */
    ActionItem: (params: Recordable<any>, data, ...args): ActionItem[] => {
      data[0].onClick = DftGrpEdit.bind(null, args, params);
      if (!isNullOrUnDef(data[0])) {
        data[0].onClick = DftGrpEdit.bind(null, args, params);
      }
      return data;
    },
    GetSelectSuccess:(d, u) => {
    /**
     * @description: 弹出选择框成功返回方法
     * @param {*} d
     * @param {*} u
     * @return {*}
     */
    GetSelectSuccess: (d, u) => {
      return {
        ITEM_CODE: d.values['val'],
      };
    },
    OpenSelectItem:(openItemModal: Fn) => {
    /**
     * @description: 弹出选择框打开方法
     * @param {Fn} openItemModal
     * @return {*}
     */
    OpenSelectItem: (openItemModal: Fn, ...args) => {
      openItemModal(true, {
        title: '物料列表',
        schemas: [
@@ -102,11 +103,43 @@
        ],
        tableName: 'BAS_ITEM',
        rowKey: 'ITEM_CODE',
        searchInfo: {TABLE_NAME: 'BAS_ITEM'}
        searchInfo: { TABLE_NAME: 'BAS_ITEM' },
      });
    }
    },
    GetUseForm: () => {
      return {};
    },
  };
  /* 以下是内部方法,不export,供上面的方法调用 */
  /**
   * @description: 自定义编辑方法
   * @param {Fn} args
   * @param {*} params
   * @return {*}
   */
  function DftGrpEdit(args: Fn[], params: {}) {
    const go = args[5]
    const param = {
      CODE: params['record']['DFTG_CODE'], //主表的代码字段,一般是唯一的
      ID: params['record']['ID'],
      Name: 'BAS_DEFECT', //高级页面中明细表的实体名
      SessionName: 'BAS_DEFECT_update',
      Title: `编辑不良代码组:${params['record']['DFTG_CODE']}`,
      pCode: 'DFTG_CODE',
      IsID: false,
      ifSave: false,
      drawers: [{ name: 'BAS_DEFECT', code: 'DFTG_CODE', type: 'one', keyName: 'BAS_DEFECT' }], //drawers是右边弹出增改侧框的名字列表
    };
    // 将对象转换为JSON字符串并保存到sessionStorage
    sessionStorage.removeItem(`${param.SessionName}_params`);
    sessionStorage.setItem(`${param.SessionName}_params`, encodeURI(JSON.stringify(param)));
    go(
      `/BAS_DEFECT/High/${encodeURI(JSON.stringify({ sName: param.SessionName, Name: param.Name }))}`,
    );
  }
  return [methods, ActionColumn];
}