Ben Lin
2024-12-17 dc63cd71100864be7486b2a4e947017e0880880e
src/views/tigerprojects/mes/prod/biz_mes_wo/biz_mes_wo.data.ts
@@ -1,11 +1,9 @@
import { BasicColumn, FormSchema } from '/@/components/Table';
import { optionsListApi, optionsListApiType } from '/@/api/tigerapi/mes/smt/tool';
import { h, unref } from 'vue';
import { Tag, Tooltip } from 'ant-design-vue';
import { useLocale } from '/@/locales/useLocale';
import { MesWoStatus } from '/@/api/tigerapi/mes/wo';
import { useI18n } from '/@/hooks/web/useI18n';
import { GetEnum } from '/@/api/tigerapi/system';
import { GetEnum, getEntity } from '/@/api/tigerapi/system';
const { getLocale } = useLocale();
const { t } = useI18n();
@@ -36,13 +34,37 @@
      let text = '';
      let color = '';
      switch (record.ORDER_TYPE) {
        case 'Normal':
          text = '正常';
        case 0:
          text = '计划';
          color = '#8a8a8a';
          break;
        case 1:
          text = '标准';
          color = 'green';
          break;
        case 'Rework':
        case 2:
          text = '返工';
          color = 'red';
          break;
        case 3:
          text = '在库改制';
          color = 'blue';
          break;
        case 5:
          text = '委外';
          color = 'yellow';
          break;
        case 6:
          text = '研发';
          color = 'orange';
          break;
        case 7:
          text = '预测';
          color = '#078737';
          break;
        case 8:
          text = '拆卸';
          color = '#e1822c';
          break;
        default:
          break;
@@ -56,7 +78,7 @@
    sorter: true,
    resizable: true,
    customRender: ({ record }) => {
      const status = record.STATUS;
      const status = record.ROUTE_STATUS;
      let text = '';
      let color = '';
      switch (status) {
@@ -121,6 +143,12 @@
      }
      return h(Tooltip, { title: text }, () => h(Tag, { color: color }, () => text));
    },
  },
  {
    title: '计划数量',
    dataIndex: 'PLAN_QTY',
    sorter: true,
    resizable: true,
  },
  {
    title: '工艺路线编码',
@@ -258,20 +286,16 @@
  {
    field: 'ORDER_TYPE',
    label: '工单类型',
    component: 'Select',
    component: 'ApiSelect',
    colProps: { span: 8 },
    defaultValue: '',
    componentProps: {
      options: [
        {
          label: '正常',
          value: 'Normal',
        },
        {
          label: '返工',
          value: 'Rework',
        },
      ],
      api: GetEnum,
      params: { name: 'BIZ_MES_WO+ORDER_TYPEs' },
      resultField: 'Data',
      labelField: unref(getLocale) == 'zh_CN' ? 'Desc' : 'Name',
      valueField: 'Value',
      placeholder: '请选择工单类型',
    },
  },
  {
@@ -289,6 +313,14 @@
      span: 4,
    },
  },
  {
    field: 'TABLE_NAME',
    label: '表名',
    component: 'Input',
    colProps: { span: 8 },
    defaultValue: 'BIZ_MES_WO', ////必需在页面的查询部分加入'TABLE_NAME'字段并赋值表名,这样就可以用通用分页查询
    ifShow: false,
  },
];
//新增组件export const
@@ -298,7 +330,7 @@
    label: '工单号',
    required: true,
    component: 'Input',
    colProps: { span: 12 },
    colProps: { span: 24 },
  },
  {
    field: 'ID',
@@ -311,26 +343,27 @@
    label: '工单描述',
    component: 'Input',
    show: false,
    colProps: { span: 12 },
    colProps: { span: 24 },
  },
  {
    field: 'ORDER_TYPE',
    label: '工单类型',
    component: 'Select',
    colProps: { span: 12 },
    defaultValue: 'Normal',
    component: 'ApiSelect',
    colProps: { span: 24 },
    defaultValue: 1,
    componentProps: {
      options: [
        {
          label: '正常',
          value: 'Normal',
        },
        {
          label: '返工',
          value: 'Rework',
        },
      ],
      api: GetEnum,
      params: { name: 'BIZ_MES_WO+ORDER_TYPEs' },
      resultField: 'Data',
      labelField: unref(getLocale) == 'zh_CN' ? 'Desc' : 'Name',
      valueField: 'Value',
    },
  },
  {
    field: 'PLAN_QTY',
    label: '计划数量',
    component: 'Input',
    show: true,
  },
  {
    field: 'STATUS',
@@ -343,75 +376,92 @@
    label: '父工单',
    //required: true,
    component: 'Input',
    colProps: { span: 12 },
    colProps: { span: 24 },
  },
  {
    field: 'ITEM_CODE',
    label: '物料编码',
    required: true,
    component: 'Input',
    colProps: { span: 12 },
    colProps: { span: 20 },
  },
  {
    field: '0',
    component: 'Input',
    label: '1',
    colSlot: 'addItem',
    colProps: {
      span: 4,
    },
  },
  {
    field: 'ITEM_TYPE',
    label: '物料类型',
    //required: true,
    component: 'Input',
    colProps: { span: 12 },
    colProps: { span: 24 },
  },
  {
    field: 'ITEM_MODEL',
    label: '机型',
    //required: true,
    component: 'Input',
    colProps: { span: 12 },
    colProps: { span: 24 },
  },
  {
    field: 'PRIORITY',
    label: '优先级',
    //required: true,
    component: 'Input',
    colProps: { span: 12 },
    colProps: { span: 24 },
  },
  {
    field: 'CUST_CODE',
    label: '客户编码',
    required: true,
    component: 'Input',
    colProps: { span: 12 },
  },
  {
    field: 'FACTORY',
    label: '工厂',
    required: true,
    component: 'ApiSelect',
    colProps: { span: 12 },
    componentProps: {
      api: optionsListApiType,
      resultField: 'Data',
      labelField: 'Name',
      valueField: 'Value',
    },
    colProps: { span: 24 },
  },
  {
    field: 'PLAN_LINE',
    label: '计划线体',
    required: true,
    component: 'Input',
    colProps: { span: 12 },
    component: 'ApiSelect',
    colProps: { span: 24 },
    componentProps: {
      api: getEntity,
      params: { entityName: 'MES_LINE', sqlcmd: ' 1=1 ' },
      resultField: 'Data.Items',
      labelField: 'LINE_NAME',
      valueField: 'LINE_CODE',
    },
  },
  {
    field: 'ACT_LINE',
    label: '实际线体',
    // required: true,
    component: 'Input',
    colProps: { span: 12 },
    component: 'ApiSelect',
    colProps: { span: 24 },
    componentProps: {
      api: getEntity,
      params: { entityName: 'MES_LINE', sqlcmd: ' 1=1 ' },
      resultField: 'Data.Items',
      labelField: 'LINE_NAME',
      valueField: 'LINE_CODE',
    },
  },
  {
    field: 'PLAN_START_TIME',
    label: '计划开始时间',
    required: true,
    component: 'DatePicker',
    colProps: { span: 24 },
  },
  {
    field: 'PLAN_END_TIME',
    label: '计划开始时间',
    label: '计划结束时间',
    required: true,
    component: 'Input',
    colProps: { span: 12 },
    component: 'DatePicker',
    colProps: { span: 24 },
  },
];