Ben Lin
2024-06-24 c8f8a9c645f7857859a9d56fac96192d994be70b
src/views/tigerprojects/system/lowcode/data.ts
@@ -31,38 +31,17 @@
 * @LastEditTime: 2024-06-14 09:08:11
 */
import {
  baseSchema,
  searchSchema,
  defectBaseColumn,
  crudSchema,
} from './normal/basDefectGrp';
import {
  onChangeFns,
  rsnBaseSchema,
  rsnCrudSchema,
  rsnSearchSchema,
  rsnBaseColumn,
} from './normal/basReasonGrp';
import { DeleteEntity, convertToTree, getEntity } from '/@/api/tigerapi/system';
import { ActionItem, BasicColumn, FormSchema } from '/@/components/Table';
import { useI18n } from '/@/hooks/web/useI18n';
import { isNullOrEmpty } from '/@/utils/is';
import { woCustFn, woformSchema } from '/@/views/components/bizMesWo';
import { useModal } from '/@/components/Modal';
import {
  pkgBaseColumn,
  pkgBaseSchema,
  pkgCrudSchema,
  pkgSearchSchema,
} from './basPkgrule';
import { GetRoutePTree } from '/@/api/tigerapi/mes/router';
const { t } = useI18n();
/**
 * @description: 低代码页面获取操作字段结构Json,如增加按钮及方法
 * 攻略:
 *  1. 另新建驼峰实体名.ts的文件,如:basDefectGrp.ts。以便区别不同页面的方法
 *  1. 另新建驼峰实体名.ts的文件,如:BAS_REASON.ts。以便区别不同页面的方法
 *  2. 替换主页面编辑按钮方法变为跳转到高级页面,方法中传入 { CODE: 主表记录的关键字段值,一般是XXX_CODE的值, ID: 当前记录的ID, Name: 'BAS_DEFECT'(跳转过去需要新增编辑的实体名), Title: `编辑不良代码组:${params['record']['DFTG_CODE']}`(定义tab页签的标题), pCode: 'DFTG_CODE'(主表的关键字段代码) }
 *     替换主页面新增按钮方法同上
 *  3. 在菜单管理新建一个高级页面。
@@ -107,7 +86,7 @@
  if (!isNullOrEmpty(fnName)) {
    switch (entityName) {
      case 'BAS_REASON':
        onChangeFns[fnName](e);
        // onChangeFns[fnName](e);
        break;
      default:
        break;
@@ -182,128 +161,10 @@
    case 'BIZ_MES_WO':
      _formSchema = woformSchema;
      break;
    case 'BAS_DEFECT_BaseForm':
      _formSchema = baseSchema;
      break;
    case 'BAS_DEFECT_Search':
      _formSchema = searchSchema;
      break;
    case 'BAS_DEFECT_Crud':
      _formSchema = crudSchema;
      break;
    case 'BAS_REASON_BaseForm':
      _formSchema = rsnBaseSchema;
      break;
    case 'BAS_REASON_Search':
      _formSchema = rsnSearchSchema;
      break;
    case 'BAS_REASON_Crud':
      _formSchema = rsnCrudSchema;
      break;
    case 'BAS_PKG_DTL_BaseForm':
      _formSchema = pkgBaseSchema;
      break;
    case 'BAS_PKG_DTL_Search':
      _formSchema = pkgSearchSchema;
      break;
    case 'BAS_PKG_DTL_Crud':
      _formSchema = pkgCrudSchema;
      break;
    default:
      break;
  }
  return _formSchema;
}
/**
 * @description: 获取表格列
 * @param {string} entityName
 * @return {*}
 */
export function GetBasicColumnAndInit(entityName: string, ...args) {
  let data: BasicColumn[] = [];
  switch (entityName) {
    case 'BAS_DEFECT':
      data = defectBaseColumn;
      args[0].value[entityName] = getFormSchema(entityName);
      args[0].value['BaseForm'] = getFormSchema('BAS_DEFECT_BaseForm');
      args[1].value = {
        BaseForm: args[4]({
          labelWidth: 120,
          schemas: args[0].value['BaseForm'],
          actionColOptions: {
            span: 24,
          },
          showActionButtonGroup: false,
        }),
      };
      args[2].value = [
        {
          name: 'BaseForm',
          slots: [],
          preIcons: {},
          title: '不良代码组信息',
          entityName: 'BAS_DEFECT_GRP',
        },
        // {
        //   name: 'prodinfo',
        //   slots: ['addRot', 'setRot'],
        //   preIcons: { addRot: 'search|svg', setRot: 'config|svg' },
        //   title: '产品信息',
        // },
        // { name: 'rotinfo', slots: ['add'], preIcons: { add: 'search|svg' }, title: '工艺信息' },
      ];
      break;
    case 'BAS_REASON':
      data = rsnBaseColumn;
      args[0].value['BaseForm'] = getFormSchema('BAS_REASON_BaseForm');
      args[1].value = {
        BaseForm: args[4]({
          labelWidth: 120,
          schemas: args[0].value['BaseForm'],
          actionColOptions: {
            span: 24,
          },
          showActionButtonGroup: false,
        }),
      };
      args[2].value = [
        {
          name: 'BaseForm',
          slots: [],
          preIcons: {},
          title: '不良原因组信息',
          entityName: 'BAS_REASON_GRP',
        },
      ];
      break;
    case 'BAS_PKG_DTL':
      data = pkgBaseColumn;
      args[0].value['BaseForm'] = getFormSchema('BAS_PKG_DTL_BaseForm');
      args[1].value = {
        BaseForm: args[4]({
          labelWidth: 120,
          schemas: args[0].value['BaseForm'],
          actionColOptions: {
            span: 24,
          },
          showActionButtonGroup: false,
        }),
      };
      args[2].value = [
        {
          name: 'BaseForm',
          slots: [],
          preIcons: {},
          title: '包装信息',
          entityName: 'BAS_PKG_RULE',
        },
      ];
      break;
    default:
      break;
  }
  return data;
}
/**
@@ -339,28 +200,4 @@
      break;
  }
  return title;
}
/**
 * @description: 获取需要新增时就默认的值,一般是主表信息
 * @param {string} type
 * @param {string} val
 * @return {*}
 */
export function getOthersValues(type: string, val: string, id: string) {
  let Values = {};
  switch (type) {
    case 'BAS_DEFECT':
      Values = { DFTG_CODE: val };
      break;
    case 'BAS_REASON':
      Values = { RSNG_CODE: val };
      break;
    case 'BAS_PKG_DTL':
      Values = { PKG_RULE_ID: id };
      break;
    default:
      break;
  }
  return Values;
}