xiaoyi
3 天以前 5c243d9d05da668a32b1bc9a4f543ea081488d11
src/views/mes/pro/workorder/data.ts
@@ -3,6 +3,7 @@
import type { MesProWorkOrderApi } from '#/api/mes/pro/workorder';
import type { MesProWorkOrderBomApi } from '#/api/mes/pro/workorder/bom';
import type { MesProWorkOrderProcessApi } from '#/api/mes/pro/workorder/process';
import type { ErpSaleOrderApi } from '#/api/erp/sale/order';
import { h, markRaw } from 'vue';
@@ -23,6 +24,7 @@
  MdItemSelect,
} from '#/views/mes/md/item/components';
import { MdVendorSelect } from '#/views/mes/md/vendor/components';
import { ErpSaleOrderSelect } from '#/views/erp/sale/order/components';
/** 表单类型 */
export type FormType = 'confirm' | 'create' | 'detail' | 'finish' | 'update';
@@ -192,6 +194,30 @@
      componentProps: {
        disabled: headerReadonly,
        placeholder: '请选择客户',
      },
      dependencies: {
        triggerFields: ['orderSourceType'],
        show: (values) =>
          values.orderSourceType === MesProWorkOrderSourceTypeEnum.ORDER,
      },
    },
    {
      fieldName: 'saleOrderId',
      label: '营销订单',
      component: markRaw(ErpSaleOrderSelect),
      componentProps: {
        disabled: headerReadonly,
        placeholder: '请选择营销订单(ERP销售订单)',
        // 选中营销订单后自动带入客户
        onChange: async (item?: ErpSaleOrderApi.SaleOrder) => {
          if (!item) {
            return;
          }
          const values = (await formApi?.getValues()) ?? {};
          if (values.clientId == null && item.customerId) {
            await formApi?.setFieldValue('clientId', item.customerId);
          }
        },
      },
      dependencies: {
        triggerFields: ['orderSourceType'],
@@ -398,6 +424,11 @@
      width: 120,
    },
    {
      field: 'saleOrderNo',
      title: '营销订单号',
      width: 140,
    },
    {
      field: 'requestDate',
      title: '需求日期',
      width: 180,