Ben Lin
2024-07-22 323e576c64129723df20fd18effb20d96d8d18b3
src/views/tigerprojects/system/lowcode/entityts/BIZ_MES_WO.ts
@@ -4,7 +4,7 @@
 * @version:
 * @Date: 2024-06-19 20:34:27
 * @LastEditors: Ben Lin
 * @LastEditTime: 2024-07-21 18:40:06
 * @LastEditTime: 2024-07-22 02:58:01
 */
import { Ref, h, ref, render, unref } from 'vue';
@@ -25,6 +25,7 @@
import { uploadApi } from '/@/api/sys/upload';
import { initRoute } from '../data';
import { SP_MES_PROD2WO } from '/@/api/tigerapi/mes/router';
import { cloneDeep } from 'lodash-es';
const { t } = useI18n();
const { createErrorModal } = useMessage();
@@ -39,7 +40,7 @@
  const isPrint = (type: number) => type === 5;
  const isPackage = (type: number) => type === 6;
  const ActionColumn: BasicColumn = {
    width: 220,
    width: 180,
    title: '操作',
    dataIndex: 'action',
    slots: { customRender: 'action' },
@@ -255,8 +256,21 @@
          });
          break;
        case 'set':
        case 'setRot':
          openRvModal(true, { rotId: selectVals.value['ROUTE_CODE'], slotName: slotName });
          break;
        case 'setRot':
          const id = {
            ID: params['record'].ID,
            Name: 'WoRouteBinding',
            CODE: params['record'].ITEM_CODE,
            Title: `工单[${params['record'].ITEM_CODE}]工艺绑定`,
            colSlots: [] /* 表格内的查询表单字段的插槽列表,一般用于弹出选择框按钮 */,
            crudColSlots: [] /* 增删改表单字段的插槽列表,一般用于弹出选择框按钮 */,
            dense: true,
            pageTitle: `工单工艺绑定`,
            pageContent: `这里是管理工单的工艺绑定,一个工单可以绑定多个工艺路线`,
          };
          go(`/WoRouteBinding/CP/${encodeURI(JSON.stringify(id))}`);
          break;
      }
    },
@@ -280,12 +294,17 @@
        try {
          const form = param.values['prodinfo'];
          const wo = param.values['mValues'];
          wo.ROUTE_STATUS = 1;
          wo.ROUTE_CODE = form.ROUTE_CODE;
          SaveEntity(wo, true, 'BIZ_MES_WO').then((action) => {
          const _wo = cloneDeep(wo);
          _wo.ROUTE_STATUS = 1;
          _wo.ROUTE_CODE = form.ROUTE_CODE;
          SaveEntity(_wo, true, 'BIZ_MES_WO').then((action) => {
            if (action.IsSuccessed) {
              SP_MES_PROD2WO({ rotId: form.ROT_ID, wo: wo.ORDER_NO });
              resolve(action);
              SP_MES_PROD2WO({ rotId: form.ROT_ID, wo: wo.ORDER_NO }).then((res) => {
                if (!res.IsSuccessed) {
                  SaveEntity(wo, true, 'BIZ_MES_WO');
                }
                resolve(res);
              });
            } else {
              reject(action);
            }
@@ -395,18 +414,26 @@
      edges: [],
    };
    initRoute(params['currlf'], params['record'].ROUTE_CODE, params['routeData'], params['currlf']);
    params['selectVals'].value['ROUTE_CODE'] = params['record'].ROUTE_CODE;
    openCustModal(true, {
      isUpdate: true,
      ctype: 'BIZ_MES_WO_Config',
      title: '工艺配置',
      width: '1200px',
      formEl: params['useFormData'].value, //如果是多个表单,增加多个插槽
      formElName: ['woinfo', 'prodinfo', 'rotinfo'], //表单插槽名称,支持多个表单
      RowKey: '',
      fnName: 'SaveCofig', //保存方法名
      others: params['routeData'].value,
      values: params['record'], //表单记录
    getEntity({
      sqlcmd: `ROT_CODE = '${params['record'].ROUTE_CODE}'`,
      entityName: 'MES_ROUTE',
      order: '',
    }).then((rot) => {
      params['selectVals'].value['ROUTE_CODE'] = params['record'].ROUTE_CODE;
      params['selectVals'].value['ROT_ID'] =
        !isNullOrEmpty(rot.Data) && !isNullOrEmpty(rot.Data.Items) ? rot.Data.Items[0].ID : '';
      openCustModal(true, {
        isUpdate: true,
        ctype: 'BIZ_MES_WO_Config',
        title: '工艺配置',
        width: '1200px',
        formEl: params['useFormData'].value, //如果是多个表单,增加多个插槽
        formElName: ['woinfo', 'prodinfo', 'rotinfo'], //表单插槽名称,支持多个表单
        RowKey: '',
        fnName: 'SaveCofig', //保存方法名
        others: params['routeData'].value,
        values: { ...params['record'], ...params['selectVals'].value }, //表单记录
      });
    });
  }