Ben Lin
2024-12-28 f9eb1a419834f97a3ab0124b132de4f977b1973b
src/views/tigerprojects/system/lowcode/entityts/BIZ_MES_WO.ts
@@ -22,6 +22,7 @@
import { useForm } from '/@/components/Form/index';
import { cloneDeep } from 'lodash-es';
import { useProdRouteStore } from '/@/store/modules/prodRoute';
import { Tag, Tooltip } from 'ant-design-vue';
const { t } = useI18n();
const { createErrorModal } = useMessage();
@@ -43,10 +44,86 @@
     * @description: 获取新增按钮的行为
     * @return {*}
     */
    CreateAction: (type: string) => {
      return {
        action: 'drawer', //drawer(打开左侧抽屉框) | go(跳转到新的页面)
      };
    CreateAction: (type: string, fnName: string) => {
      let action = {} as any;
      switch (fnName) {
        case 'ImportExcel':
          action = {
            action: 'importModal', //drawer(打开左侧抽屉框) | go(跳转到新的页面) | modal(打开模态窗口) | importModal(打开导入模态窗口)
            params: {
              tmpHeader: ['工单号', '计划日期', '计划数量'], /* 下载模板的标题字段 */
              filename: '工单计划模板.xlsx', /* 下载模板的文件名 */
              entityName: 'BIZ_MES_WO_BATCH', /* 导入表的表名 */
              checkJson: ['ORDER_NO', 'PLAN_DATE', 'PLAN_QTY'], /* 导入表需要检查的字段列表 */
              where: ['ORDER_NO'], /* 导入表需要查询的字段列表 */
              typeFullName:'Tiger.IBusiness.MES.IImportWoPlan,Tiger.IBusiness.MES', /* 导入的方法全名,通用导入用这个:Tiger.IBusiness.ICommonImportExcel,Tiger.IBusiness */
              baseColumns: [ /* 导入时界面显示数据的字段 */
                {
                  title: '工单号',
                  dataIndex: 'ORDER_NO',
                  ifShow: true,
                  width: 180,
                },
                {
                  title: '工单批次号',
                  dataIndex: 'BATCH_NO',
                  ifShow: true,
                  width: 180,
                  // customRender: ({ record }) => {
                  //   record.BATCH_NO = record.ORDER_NO+'-01'
                  //   return record.BATCH_NO
                  // },
                },
                {
                  title: '计划日期',
                  dataIndex: 'PLAN_DATE',
                  ifShow: true,
                  width: 180,
                },
                {
                  title: '计划数量',
                  dataIndex: 'PLAN_QTY',
                  ifShow: true,
                  width: 180,
                },
                {
                  title: '处理方式',
                  dataIndex: 'VALIDATION_TYPE',
                  ifShow: true,
                  width: 180,
                  customRender: ({ record }) => {
                    const status = record.VALIDATION_TYPE;
                    var text = '';
                    var color = 'green';
                    if (status == '数据异常') {
                      color = 'red';
                      text = status;
                    } else if (status == '修改') {
                      color = 'yellow';
                      text = status;
                    } else {
                      text = status;
                    }
                    return h(Tooltip, { title: text }, () => h(Tag, { color: color }, () => text));
                  },
                },
                {
                  title: '处理结果',
                  dataIndex: 'VALIDATION_RESULT',
                  ifShow: true,
                  width: 180,
                },
              ],
            },
          };
          break;
        default:
          action = {
            action: 'drawer', //drawer(打开左侧抽屉框) | go(跳转到新的页面) | modal(打开模态窗口)
          };
          break;
      }
      return action;
    },
    /**
     * @description: 操作字段自定义按钮
@@ -262,6 +339,16 @@
          break;
      }
    },
    /**
     * @description: 获取标题信息
     * @param {string} type
     * @return {*}
     */
    GetTitle: () => {
      return {
        importTitle: '工单计划导入', /* 打开模态窗口显示的标题 */
      };
    },
  };
  /* 以下是内部方法,不export,供上面的方法调用 */
@@ -312,7 +399,7 @@
        try {
          const form = param.values['forminfo'];
          const wo = param.values['mValues'];
          wo.STATUS = wo.STATUS == 3?wo.STATUS: 2;
          wo.STATUS = wo.STATUS == 3 ? wo.STATUS : 2;
          let input: SaveWoBatchInput = {
            Wo: wo,
            WoBatch: {
@@ -348,7 +435,7 @@
              ACT_END_TIME: wo.ACT_END_TIME,
              BATCH_NO: '',
            },
            IfToCust: form.IfToCust
            IfToCust: form.IfToCust,
          };
          SaveMesBatchWo(input).then((action) => {
            resolve(action);
@@ -402,15 +489,22 @@
      Name: 'WoRouteBinding',
      CODE: params['record'].ORDER_NO,
      Title: `工单[${params['record'].ORDER_NO}]工艺绑定`,
      colSlots: params['colSlots'].value, /* 表格内的查询表单字段的插槽列表,一般用于弹出选择框按钮 */
      crudColSlots: {BAS_PKG_DTL:['BAS_LABEL_TEMP1add'], ItemCode: ['BAS_CODE_RULE1add']} /* 增删改表单字段的插槽列表,一般用于弹出选择框按钮 */,
      OtherTableName: ['BAS_PKG_DTL', 'ItemCode'], /* 自定义显示列表的表名,跟上面增删改的表名一致,有多个就放列表中 */
      colSlots:
        params['colSlots'].value /* 表格内的查询表单字段的插槽列表,一般用于弹出选择框按钮 */,
      crudColSlots: {
        BAS_PKG_DTL: ['BAS_LABEL_TEMP1add'],
        ItemCode: ['BAS_CODE_RULE1add'],
      } /* 增删改表单字段的插槽列表,一般用于弹出选择框按钮 */,
      OtherTableName: [
        'BAS_PKG_DTL',
        'ItemCode',
      ] /* 自定义显示列表的表名,跟上面增删改的表名一致,有多个就放列表中 */,
      dense: true,
      pageTitle: `工单工艺绑定`,
      pageContent: `这里是管理工单的工艺绑定,一个工单可以绑定一个工艺路线,并可以保存为客户专用的工艺路线`,
      SessionName: 'WoRouteBinding_update',
      ifSave: false,
      rotType: 'Wo'
      rotType: 'Wo',
    };
    // 将对象转换为JSON字符串并保存到sessionStorage
    sessionStorage.removeItem(`${id.SessionName}_params`);