From 6ebcfebf58fe23ea401de1050b15ba85e41763a9 Mon Sep 17 00:00:00 2001
From: gaoluyang <2820782392@qq.com>
Date: 星期六, 17 十月 2026 18:36:52 +0800
Subject: [PATCH] feat(wls): 仓储物流单据跨模块关联字段改为手工填写
---
src/views/wls/outsourceissue/data.ts | 37 +---
src/views/wls/productreceipt/data.ts | 17 -
src/views/wls/outsourcereceipt/data.ts | 37 +---
src/views/wls/returnissue/data.ts | 34 +--
src/views/wls/salesnotice/data.ts | 32 +--
src/views/wls/returnsales/modules/form.vue | 31 ---
src/views/wls/packages/data.ts | 59 +-----
src/views/wls/returnvendor/data.ts | 49 +----
src/views/wls/productsales/data.ts | 77 ++-------
src/views/wls/arrivalnotice/data.ts | 42 +----
src/views/wls/returnsales/data.ts | 41 +---
11 files changed, 121 insertions(+), 335 deletions(-)
diff --git a/src/views/wls/arrivalnotice/data.ts b/src/views/wls/arrivalnotice/data.ts
index 995e60f..3095b3f 100644
--- a/src/views/wls/arrivalnotice/data.ts
+++ b/src/views/wls/arrivalnotice/data.ts
@@ -13,8 +13,6 @@
import { generateAutoCode } from '#/api/mes/md/autocode/record';
import { getRangePickerDefaultProps } from '#/utils';
import { MdmItemSelect } from '#/views/basicData/mdm/components';
-import { ErpPurchaseOrderSelect } from '#/views/erp/purchase/order/components';
-import { MdVendorSelect } from '#/views/mes/md/vendor/components';
/** 琛ㄥ崟绫诲瀷 */
export type FormType = 'create' | 'detail' | 'update';
@@ -77,45 +75,21 @@
rules: 'required',
},
{
- fieldName: 'vendorName',
- label: '',
+ fieldName: 'purchaseOrderCode',
+ label: '閲囪喘璁㈠崟鍙�',
component: 'Input',
- dependencies: {
- triggerFields: [''],
- show: () => false,
- },
- },
- {
- fieldName: 'purchaseOrderId',
- label: '閲囪喘璁㈠崟',
- component: markRaw(ErpPurchaseOrderSelect),
componentProps: {
- placeholder: '璇烽�夋嫨閲囪喘璁㈠崟',
- onChange: (item: any) => {
- if (item?.supplierId && formApi) {
- formApi.setFieldValue('vendorId', item.supplierId);
- formApi.setFieldValue('vendorName', item.supplierName);
- }
- },
+ placeholder: '璇疯緭鍏ラ噰璐鍗曞彿',
},
},
{
- fieldName: 'vendorId',
+ fieldName: 'vendorName',
label: '渚涘簲鍟�',
- component: markRaw(MdVendorSelect),
+ component: 'Input',
componentProps: {
- placeholder: '璇烽�夋嫨渚涘簲鍟�',
- disabled: true,
+ placeholder: '璇疯緭鍏ヤ緵搴斿晢鍚嶇О',
},
- dependencies: {
- triggerFields: ['vendorName'],
- componentProps: (values) => ({
- placeholder: '璇烽�夋嫨渚涘簲鍟�',
- disabled: true,
- vendorName: values.vendorName as string,
- }),
- },
- rules: 'selectRequired',
+ rules: 'required',
},
{
fieldName: 'arrivalDate',
@@ -180,7 +154,7 @@
},
},
{
- fieldName: 'purchaseOrderNo',
+ fieldName: 'purchaseOrderCode',
label: '閲囪喘璁㈠崟鍙�',
component: 'Input',
componentProps: {
diff --git a/src/views/wls/outsourceissue/data.ts b/src/views/wls/outsourceissue/data.ts
index dd70166..aab0af6 100644
--- a/src/views/wls/outsourceissue/data.ts
+++ b/src/views/wls/outsourceissue/data.ts
@@ -1,6 +1,5 @@
锘縤mport type { VbenFormApi, VbenFormSchema } from '#/adapter/form';
import type { VxeTableGridOptions } from '#/adapter/vxe-table';
-import type { MesProWorkOrderApi } from '#/api/mes/pro/workorder';
import type { MesWmMaterialStockApi } from '#/api/mes/wm/materialstock';
import type { MesWmOutsourceIssueApi } from '#/api/mes/wm/outsourceissue';
import type { MesWmOutsourceIssueDetailApi } from '#/api/mes/wm/outsourceissue/detail';
@@ -8,20 +7,13 @@
import { h, markRaw } from 'vue';
-import {
- DICT_TYPE,
- MesAutoCodeRuleCode,
- MesProWorkOrderStatusEnum,
- MesProWorkOrderTypeEnum,
-} from '@vben/constants';
+import { DICT_TYPE, MesAutoCodeRuleCode } from '@vben/constants';
import { Button } from 'ant-design-vue';
import { generateAutoCode } from '#/api/mes/md/autocode/record';
import { getRangePickerDefaultProps } from '#/utils';
import { MdItemSelect } from '#/views/mes/md/item/components';
-import { MdVendorSelect } from '#/views/mes/md/vendor/components';
-import { ProWorkOrderSelect } from '#/views/mes/pro/workorder/components';
import { WmMaterialStockSelect } from '#/views/wls/materialstock/components';
import {
WmWarehouseAreaSelect,
@@ -104,25 +96,19 @@
},
},
{
- fieldName: 'workOrderId',
- label: '澶栧崗璁㈠崟',
- component: markRaw(ProWorkOrderSelect),
+ fieldName: 'workOrderCode',
+ label: '澶栧崗璁㈠崟鍙�',
+ component: 'Input',
componentProps: {
- // 閫夋嫨澶栧崗璁㈠崟鍚庯紝鑷姩鍥炲~渚涘簲鍟�
- onChange: async (workOrder?: MesProWorkOrderApi.WorkOrder) => {
- await formApi?.setFieldValue('vendorId', workOrder?.vendorId);
- },
- status: MesProWorkOrderStatusEnum.CONFIRMED,
- type: MesProWorkOrderTypeEnum.OUTSOURCE,
+ placeholder: '璇疯緭鍏ュ鍗忚鍗曞彿',
},
- rules: 'selectRequired',
},
{
- fieldName: 'vendorId',
+ fieldName: 'vendorName',
label: '渚涘簲鍟�',
- component: markRaw(MdVendorSelect),
+ component: 'Input',
componentProps: {
- placeholder: '璇烽�夋嫨渚涘簲鍟�',
+ placeholder: '璇疯緭鍏ヤ緵搴斿晢鍚嶇О',
},
},
{
@@ -160,11 +146,12 @@
},
},
{
- fieldName: 'vendorId',
+ fieldName: 'vendorName',
label: '渚涘簲鍟�',
- component: markRaw(MdVendorSelect),
+ component: 'Input',
componentProps: {
- placeholder: '璇烽�夋嫨渚涘簲鍟�',
+ allowClear: true,
+ placeholder: '璇疯緭鍏ヤ緵搴斿晢鍚嶇О',
},
},
{
diff --git a/src/views/wls/outsourcereceipt/data.ts b/src/views/wls/outsourcereceipt/data.ts
index 4d336b4..01081ea 100644
--- a/src/views/wls/outsourcereceipt/data.ts
+++ b/src/views/wls/outsourcereceipt/data.ts
@@ -1,18 +1,12 @@
锘縤mport type { VbenFormApi, VbenFormSchema } from '#/adapter/form';
import type { VxeTableGridOptions } from '#/adapter/vxe-table';
-import type { MesProWorkOrderApi } from '#/api/mes/pro/workorder';
import type { MesWmOutsourceReceiptApi } from '#/api/mes/wm/outsourcereceipt';
import type { MesWmOutsourceReceiptDetailApi } from '#/api/mes/wm/outsourcereceipt/detail';
import type { MesWmOutsourceReceiptLineApi } from '#/api/mes/wm/outsourcereceipt/line';
import { h, markRaw } from 'vue';
-import {
- DICT_TYPE,
- MesAutoCodeRuleCode,
- MesProWorkOrderStatusEnum,
- MesProWorkOrderTypeEnum,
-} from '@vben/constants';
+import { DICT_TYPE, MesAutoCodeRuleCode } from '@vben/constants';
import { getDictOptions } from '@vben/hooks';
import { Button } from 'ant-design-vue';
@@ -21,8 +15,6 @@
import { generateAutoCode } from '#/api/mes/md/autocode/record';
import { getRangePickerDefaultProps } from '#/utils';
import { MdItemSelect } from '#/views/mes/md/item/components';
-import { MdVendorSelect } from '#/views/mes/md/vendor/components';
-import { ProWorkOrderSelect } from '#/views/mes/pro/workorder/components';
import {
WmWarehouseAreaSelect,
WmWarehouseLocationSelect,
@@ -94,25 +86,19 @@
rules: 'required',
},
{
- fieldName: 'workOrderId',
- label: '澶栧崗璁㈠崟',
- component: markRaw(ProWorkOrderSelect),
+ fieldName: 'workOrderCode',
+ label: '澶栧崗璁㈠崟鍙�',
+ component: 'Input',
componentProps: {
- // 閫夋嫨澶栧崗璁㈠崟鍚庯紝鑷姩鍥炲~渚涘簲鍟�
- onChange: async (workOrder?: MesProWorkOrderApi.WorkOrder) => {
- await formApi?.setFieldValue('vendorId', workOrder?.vendorId);
- },
- status: MesProWorkOrderStatusEnum.CONFIRMED,
- type: MesProWorkOrderTypeEnum.OUTSOURCE,
+ placeholder: '璇疯緭鍏ュ鍗忚鍗曞彿',
},
- rules: 'selectRequired',
},
{
- fieldName: 'vendorId',
+ fieldName: 'vendorName',
label: '渚涘簲鍟�',
- component: markRaw(MdVendorSelect),
+ component: 'Input',
componentProps: {
- placeholder: '璇烽�夋嫨渚涘簲鍟�',
+ placeholder: '璇疯緭鍏ヤ緵搴斿晢鍚嶇О',
},
},
{
@@ -170,11 +156,12 @@
},
},
{
- fieldName: 'vendorId',
+ fieldName: 'vendorName',
label: '渚涘簲鍟�',
- component: markRaw(MdVendorSelect),
+ component: 'Input',
componentProps: {
- placeholder: '璇烽�夋嫨渚涘簲鍟�',
+ allowClear: true,
+ placeholder: '璇疯緭鍏ヤ緵搴斿晢鍚嶇О',
},
},
{
diff --git a/src/views/wls/packages/data.ts b/src/views/wls/packages/data.ts
index ec8952a..5fa1c2e 100644
--- a/src/views/wls/packages/data.ts
+++ b/src/views/wls/packages/data.ts
@@ -8,18 +8,14 @@
import {
DICT_TYPE,
MesAutoCodeRuleCode,
- MesProWorkOrderStatusEnum,
} from '@vben/constants';
import { Button } from 'ant-design-vue';
import { generateAutoCode } from '#/api/mes/md/autocode/record';
import { getSimpleUserList } from '#/api/system/user';
-import { ErpSaleOrderSelect } from '#/views/erp/sale/order/components';
-import { MdClientSelect } from '#/views/mes/md/client/components';
import { MdItemSelect } from '#/views/mes/md/item/components';
import { MdUnitMeasureSelect } from '#/views/mes/md/unitmeasure/components';
-import { ProWorkOrderSelect } from '#/views/mes/pro/workorder/components';
/** 琛ㄥ崟绫诲瀷 */
export type FormType = 'create' | 'detail' | 'update';
@@ -97,27 +93,11 @@
},
{
fieldName: 'salesOrderCode',
- component: 'Input',
- dependencies: {
- triggerFields: [''],
- show: () => false,
- },
- },
- {
- fieldName: 'saleOrderId',
label: '閿�鍞鍗曠紪鍙�',
- component: markRaw(ErpSaleOrderSelect),
+ component: 'Input',
componentProps: {
- placeholder: '璇烽�夋嫨閿�鍞鍗�',
- onChange: (item: any) => {
- if (formApi) {
- formApi.setFieldValue('salesOrderCode', item?.no ?? '');
- formApi.setFieldValue('clientId', item?.customerId ?? undefined);
- formApi.setFieldValue('clientName', item?.customerName ?? '');
- }
- },
+ placeholder: '璇疯緭鍏ラ攢鍞鍗曠紪鍙�',
},
- rules: 'selectRequired',
},
{
fieldName: 'invoiceCode',
@@ -128,20 +108,11 @@
},
},
{
- fieldName: 'clientId',
- component: 'Input',
- dependencies: {
- triggerFields: [''],
- show: () => false,
- },
- },
- {
fieldName: 'clientName',
label: '瀹㈡埛',
component: 'Input',
componentProps: {
- placeholder: '閫夋嫨閿�鍞鍗曞悗鑷姩鍙嶆樉',
- disabled: true,
+ placeholder: '璇疯緭鍏ュ鎴峰悕绉�',
},
},
{
@@ -250,11 +221,12 @@
},
},
{
- fieldName: 'clientId',
+ fieldName: 'clientName',
label: '瀹㈡埛',
- component: markRaw(MdClientSelect),
+ component: 'Input',
componentProps: {
- placeholder: '璇烽�夋嫨瀹㈡埛',
+ allowClear: true,
+ placeholder: '璇疯緭鍏ュ鎴峰悕绉�',
},
},
{
@@ -444,14 +416,12 @@
export function useLineFormSchema(): VbenFormSchema[] {
return [
{
- fieldName: 'workOrderId',
- label: '鐢熶骇璁㈠崟',
- component: markRaw(ProWorkOrderSelect),
+ fieldName: 'workOrderCode',
+ label: '鐢熶骇璁㈠崟鍙�',
+ component: 'Input',
componentProps: {
- placeholder: '璇烽�夋嫨鐢熶骇璁㈠崟',
- status: MesProWorkOrderStatusEnum.CONFIRMED,
+ placeholder: '璇疯緭鍏ョ敓浜ц鍗曞彿',
},
- rules: 'selectRequired',
},
{
fieldName: 'itemId',
@@ -572,11 +542,12 @@
},
},
{
- fieldName: 'clientId',
+ fieldName: 'clientName',
label: '瀹㈡埛',
- component: markRaw(MdClientSelect),
+ component: 'Input',
componentProps: {
- placeholder: '璇烽�夋嫨瀹㈡埛',
+ allowClear: true,
+ placeholder: '璇疯緭鍏ュ鎴峰悕绉�',
},
},
{
diff --git a/src/views/wls/productreceipt/data.ts b/src/views/wls/productreceipt/data.ts
index f249a84..0b78d18 100644
--- a/src/views/wls/productreceipt/data.ts
+++ b/src/views/wls/productreceipt/data.ts
@@ -7,18 +7,13 @@
import { h, markRaw } from 'vue';
-import {
- DICT_TYPE,
- MesAutoCodeRuleCode,
- MesProWorkOrderStatusEnum,
-} from '@vben/constants';
+import { DICT_TYPE, MesAutoCodeRuleCode } from '@vben/constants';
import { Button } from 'ant-design-vue';
import { generateAutoCode } from '#/api/mes/md/autocode/record';
import { getRangePickerDefaultProps } from '#/utils';
import { MdItemSelect } from '#/views/mes/md/item/components';
-import { ProWorkOrderSelect } from '#/views/mes/pro/workorder/components';
import { WmMaterialStockSelect } from '#/views/wls/materialstock/components';
import {
WmWarehouseAreaSelect,
@@ -103,12 +98,12 @@
rules: 'required',
},
{
- fieldName: 'workOrderId',
- label: '鐢熶骇璁㈠崟',
- component: markRaw(ProWorkOrderSelect),
+ fieldName: 'workOrderCode',
+ label: '鐢熶骇璁㈠崟鍙�',
+ component: 'Input',
componentProps: {
- status: MesProWorkOrderStatusEnum.CONFIRMED,
- checkMethod: (row: any) => row.productionStatus !== 0,
+ disabled: isHeaderReadonly(formType),
+ placeholder: '璇疯緭鍏ョ敓浜ц鍗曞彿',
},
},
{
diff --git a/src/views/wls/productsales/data.ts b/src/views/wls/productsales/data.ts
index 9522d75..3e7881e 100644
--- a/src/views/wls/productsales/data.ts
+++ b/src/views/wls/productsales/data.ts
@@ -4,31 +4,21 @@
import type { MesWmProductSalesApi } from '#/api/mes/wm/productsales';
import type { MesWmProductSalesDetailApi } from '#/api/mes/wm/productsales/detail';
import type { MesWmProductSalesLineApi } from '#/api/mes/wm/productsales/line';
-import type { MesWmSalesNoticeApi } from '#/api/mes/wm/salesnotice';
import type { MesWmSalesNoticeLineApi } from '#/api/mes/wm/salesnotice/line';
import { h, markRaw } from 'vue';
-import {
- DICT_TYPE,
- MesAutoCodeRuleCode,
- MesWmSalesNoticeStatusEnum,
-} from '@vben/constants';
+import { DICT_TYPE, MesAutoCodeRuleCode } from '@vben/constants';
import { getDictOptions } from '@vben/hooks';
import { Button } from 'ant-design-vue';
import { z } from '#/adapter/form';
-import CrmCustomerSelect from '#/components/crm-customer-select.vue';
import { generateAutoCode } from '#/api/mes/md/autocode/record';
-import { ErpSaleOrderSelect } from '#/views/erp/sale/order/components';
import { getRangePickerDefaultProps } from '#/utils';
import { MdItemSelect } from '#/views/mes/md/item/components';
import { WmMaterialStockSelect } from '#/views/wls/materialstock/components';
-import {
- WmSalesNoticeLineSelect,
- WmSalesNoticeSelect,
-} from '#/views/wls/salesnotice/components';
+import { WmSalesNoticeLineSelect } from '#/views/wls/salesnotice/components';
import {
WmWarehouseAreaSelect,
WmWarehouseLocationSelect,
@@ -120,44 +110,12 @@
rules: 'required',
},
{
- fieldName: 'noticeId',
- label: '鍙戣揣閫氱煡鍗�',
- component: markRaw(WmSalesNoticeSelect),
+ fieldName: 'noticeCode',
+ label: '鍙戣揣閫氱煡鍗曞彿',
+ component: 'Input',
componentProps: {
disabled: isHeaderReadonly(formType),
- // 閫夋嫨鍙戣揣閫氱煡鍗曞悗锛岃嚜鍔ㄥ洖濉攢鍞鍗曞彿銆佸鎴枫�佹敹璐т汉淇℃伅
- onChange: async (notice?: MesWmSalesNoticeApi.SalesNotice) => {
- await formApi?.setValues({
- clientId: notice?.clientId,
- contactAddress: notice?.recipientAddress,
- contactName: notice?.recipientName,
- contactTelephone: notice?.recipientTelephone,
- salesOrderCode: notice?.salesOrderCode,
- });
- },
- status: MesWmSalesNoticeStatusEnum.APPROVED,
- },
- },
- {
- fieldName: 'saleOrderId',
- label: '閿�鍞鍗曠紪鍙�',
- component: markRaw(ErpSaleOrderSelect),
- componentProps: {
- disabled: isHeaderReadonly(formType),
- placeholder: '璇烽�夋嫨閿�鍞鍗�',
- onChange: (item: any) => {
- if (formApi) {
- formApi.setFieldValue('salesOrderCode', item?.no ?? '');
- if (item?.customerId) {
- formApi.setFieldValue('clientId', item.customerId);
- }
- }
- },
- },
- rules: 'selectRequired',
- dependencies: {
- triggerFields: ['salesOrderCode'],
- if: () => formType === 'create',
+ placeholder: '璇疯緭鍏ュ彂璐ч�氱煡鍗曞彿',
},
},
{
@@ -165,12 +123,8 @@
label: '閿�鍞鍗曠紪鍙�',
component: 'Input',
componentProps: {
- disabled: true,
- placeholder: '閿�鍞鍗曠紪鍙�',
- },
- dependencies: {
- triggerFields: [''],
- if: () => formType !== 'create',
+ disabled: isHeaderReadonly(formType),
+ placeholder: '璇疯緭鍏ラ攢鍞鍗曠紪鍙�',
},
},
{
@@ -187,14 +141,14 @@
rules: 'required',
},
{
- fieldName: 'clientId',
+ fieldName: 'clientName',
label: '瀹㈡埛',
- component: markRaw(CrmCustomerSelect),
+ component: 'Input',
componentProps: {
disabled: isHeaderReadonly(formType),
- placeholder: '璇烽�夋嫨瀹㈡埛',
+ placeholder: '璇疯緭鍏ュ鎴峰悕绉�',
},
- rules: 'selectRequired',
+ rules: 'required',
},
{
fieldName: 'contactName',
@@ -294,11 +248,12 @@
},
},
{
- fieldName: 'clientId',
+ fieldName: 'clientName',
label: '瀹㈡埛',
- component: markRaw(CrmCustomerSelect),
+ component: 'Input',
componentProps: {
- placeholder: '璇烽�夋嫨瀹㈡埛',
+ allowClear: true,
+ placeholder: '璇疯緭鍏ュ鎴峰悕绉�',
},
},
{
diff --git a/src/views/wls/returnissue/data.ts b/src/views/wls/returnissue/data.ts
index 22549d5..ff3033b 100644
--- a/src/views/wls/returnissue/data.ts
+++ b/src/views/wls/returnissue/data.ts
@@ -8,19 +8,13 @@
import { h, markRaw } from 'vue';
-import {
- DICT_TYPE,
- MesAutoCodeRuleCode,
- MesProWorkOrderStatusEnum,
-} from '@vben/constants';
+import { DICT_TYPE, MesAutoCodeRuleCode } from '@vben/constants';
import { getDictOptions } from '@vben/hooks';
import { Button } from 'ant-design-vue';
import { z } from '#/adapter/form';
import { generateAutoCode } from '#/api/mes/md/autocode/record';
-import { MdWorkstationSelect } from '#/views/mes/md/workstation/components';
-import { ProWorkOrderSelect } from '#/views/mes/pro/workorder/components';
import { WmProductIssueLineSelect } from '#/views/wls/productissue/components';
import { WmMaterialStockSelect } from '#/views/wls/materialstock/components';
import {
@@ -105,20 +99,21 @@
rules: 'required',
},
{
- fieldName: 'workOrderId',
- label: '鐢熶骇璁㈠崟',
- component: markRaw(ProWorkOrderSelect),
+ fieldName: 'workOrderCode',
+ label: '鐢熶骇璁㈠崟鍙�',
+ component: 'Input',
componentProps: {
- status: MesProWorkOrderStatusEnum.CONFIRMED,
+ disabled: isHeaderReadonly(formType),
+ placeholder: '璇疯緭鍏ョ敓浜ц鍗曞彿',
},
- rules: 'selectRequired',
},
{
- fieldName: 'workstationId',
+ fieldName: 'workstationName',
label: '宸ヤ綔绔�',
- component: markRaw(MdWorkstationSelect),
+ component: 'Input',
componentProps: {
- placeholder: '璇烽�夋嫨宸ヤ綔绔�',
+ disabled: isHeaderReadonly(formType),
+ placeholder: '璇疯緭鍏ュ伐浣滅珯鍚嶇О',
},
},
{
@@ -168,11 +163,12 @@
},
},
{
- fieldName: 'workOrderId',
- label: '鐢熶骇璁㈠崟',
- component: markRaw(ProWorkOrderSelect),
+ fieldName: 'workOrderCode',
+ label: '鐢熶骇璁㈠崟鍙�',
+ component: 'Input',
componentProps: {
- placeholder: '璇烽�夋嫨鐢熶骇璁㈠崟',
+ allowClear: true,
+ placeholder: '璇疯緭鍏ョ敓浜ц鍗曞彿',
},
},
{
diff --git a/src/views/wls/returnsales/data.ts b/src/views/wls/returnsales/data.ts
index 7a3214b..b139e54 100644
--- a/src/views/wls/returnsales/data.ts
+++ b/src/views/wls/returnsales/data.ts
@@ -13,9 +13,7 @@
import { Button } from 'ant-design-vue';
import { z } from '#/adapter/form';
-import CrmCustomerSelect from '#/components/crm-customer-select.vue';
import { generateAutoCode } from '#/api/mes/md/autocode/record';
-import { ErpSaleOrderSelect } from '#/views/erp/sale/order/components';
import { MdItemSelect } from '#/views/mes/md/item/components';
import { WmBatchSelect } from '#/views/wls/batch/components';
import {
@@ -36,7 +34,6 @@
export function useFormSchema(
formType: FormType,
formApi?: VbenFormApi,
- onOrderChange?: (item: Record<string, unknown> | undefined) => void,
): VbenFormSchema[] {
return [
{
@@ -91,39 +88,20 @@
},
{
fieldName: 'salesOrderCode',
- component: 'Input',
- dependencies: {
- triggerFields: [''],
- show: () => false,
- },
- },
- {
- fieldName: 'saleOrderId',
label: '閿�鍞鍗曞彿',
- component: markRaw(ErpSaleOrderSelect),
+ component: 'Input',
componentProps: {
- outStatus: 3,
- placeholder: '璇烽�夋嫨閿�鍞鍗�',
- onChange: (item: any) => {
- if (formApi) {
- formApi.setFieldValue('salesOrderCode', item?.no ?? '');
- if (item?.customerId) {
- formApi.setFieldValue('clientId', item.customerId);
- }
- }
- onOrderChange?.(item);
- },
+ placeholder: '璇疯緭鍏ラ攢鍞鍗曞彿',
},
- rules: 'selectRequired',
},
{
- fieldName: 'clientId',
+ fieldName: 'clientName',
label: '瀹㈡埛',
- component: markRaw(CrmCustomerSelect),
+ component: 'Input',
componentProps: {
- placeholder: '璇烽�夋嫨瀹㈡埛',
+ placeholder: '璇疯緭鍏ュ鎴峰悕绉�',
},
- rules: 'selectRequired',
+ rules: 'required',
},
{
fieldName: 'returnDate',
@@ -192,11 +170,12 @@
},
},
{
- fieldName: 'clientId',
+ fieldName: 'clientName',
label: '瀹㈡埛',
- component: markRaw(CrmCustomerSelect),
+ component: 'Input',
componentProps: {
- placeholder: '璇烽�夋嫨瀹㈡埛',
+ allowClear: true,
+ placeholder: '璇疯緭鍏ュ鎴峰悕绉�',
},
},
{
diff --git a/src/views/wls/returnsales/modules/form.vue b/src/views/wls/returnsales/modules/form.vue
index 2f57364..a62483b 100644
--- a/src/views/wls/returnsales/modules/form.vue
+++ b/src/views/wls/returnsales/modules/form.vue
@@ -19,9 +19,6 @@
submitReturnSales,
updateReturnSales,
} from '#/api/mes/wm/returnsales';
-import type { ErpSaleOrderApi } from '#/api/erp/sale/order';
-
-import { getSaleOrder, getSaleOrderPage } from '#/api/erp/sale/order';
import { $t } from '#/locales';
import { useFormSchema } from '../data';
@@ -31,7 +28,6 @@
const formType = ref<FormType>('create');
const formData = ref<MesWmReturnSalesApi.ReturnSales>();
const originalSnapshot = ref(''); // 琛ㄥ崟鍘熷鏁版嵁蹇収锛岀敤浜庢彁浜ゆ椂璺宠繃鏈彉鏇寸殑淇濆瓨璇锋眰
-const saleOrderItems = ref<ErpSaleOrderApi.SaleOrderItem[]>([]); // 褰撳墠閿�鍞鍗曠殑鐗╂枡琛�
const isEditable = computed(() =>
// 鏄惁涓虹紪杈戞ā寮忥紙鍙繚瀛橈級
['create', 'update'].includes(formType.value),
@@ -174,15 +170,7 @@
const data = modalApi.getData<{ formType: FormType; id?: number }>();
formType.value = data.formType;
formApi.setState({
- schema: useFormSchema(formType.value, formApi, (item) => {
- if (item?.id) {
- getSaleOrder(item.id as number).then((order) => {
- saleOrderItems.value = (order as ErpSaleOrderApi.SaleOrder)?.items || [];
- });
- } else {
- saleOrderItems.value = [];
- }
- }),
+ schema: useFormSchema(formType.value, formApi),
});
formApi.setDisabled(!isEditable.value);
modalApi.setState({ showConfirmButton: isEditable.value });
@@ -190,21 +178,6 @@
modalApi.lock();
try {
formData.value = await getReturnSales(data.id);
- // 閫氳繃閿�鍞鍗曞彿鍙嶆煡璁㈠崟ID锛岀‘淇� ErpSaleOrderSelect 鑳芥纭洖鏄�
- if (formData.value?.salesOrderCode && !formData.value.saleOrderId) {
- const orderPage = await getSaleOrderPage({
- pageNo: 1,
- pageSize: 1,
- no: formData.value.salesOrderCode,
- } as Record<string, unknown> as never);
- const list = (orderPage as Record<string, unknown>)?.list as Array<Record<string, unknown>> | undefined;
- if (list?.length) {
- const orderId = list[0].id as number;
- (formData.value as Record<string, unknown>).saleOrderId = orderId;
- const order = await getSaleOrder(orderId);
- saleOrderItems.value = order?.items || [];
- }
- }
// 璁剧疆鍒� values
await formApi.setValues(formData.value);
} finally {
@@ -227,7 +200,7 @@
:client-id="formData.clientId"
:form-type="formType"
:return-id="formData.id"
- :sale-order-items="saleOrderItems"
+ :sale-order-items="[]"
:sales-order-code="formData.salesOrderCode"
/>
</div>
diff --git a/src/views/wls/returnvendor/data.ts b/src/views/wls/returnvendor/data.ts
index a337f07..2504e58 100644
--- a/src/views/wls/returnvendor/data.ts
+++ b/src/views/wls/returnvendor/data.ts
@@ -13,8 +13,6 @@
import { generateAutoCode } from '#/api/mes/md/autocode/record';
import { MdItemSelect } from '#/views/mes/md/item/components';
-import { MdVendorSelect } from '#/views/mes/md/vendor/components';
-import { ErpPurchaseOrderSelect } from '#/views/erp/purchase/order/components';
import { WmBatchSelect } from '#/views/wls/batch/components';
import { WmMaterialStockSelect } from '#/views/wls/materialstock/components';
import {
@@ -88,45 +86,23 @@
rules: 'required',
},
{
- fieldName: 'vendorName',
- label: '',
+ fieldName: 'purchaseOrderCode',
+ label: '閲囪喘璁㈠崟鍙�',
component: 'Input',
- dependencies: {
- triggerFields: [''],
- show: () => false,
- },
- },
- {
- fieldName: 'purchaseOrderId',
- label: '閲囪喘璁㈠崟',
- component: markRaw(ErpPurchaseOrderSelect),
componentProps: {
- placeholder: '璇烽�夋嫨閲囪喘璁㈠崟',
- onChange: (item: any) => {
- if (item?.supplierId && formApi) {
- formApi.setFieldValue('vendorId', item.supplierId);
- formApi.setFieldValue('vendorName', item.supplierName);
- }
- },
+ disabled: isHeaderReadonly(formType),
+ placeholder: '璇疯緭鍏ラ噰璐鍗曞彿',
},
},
{
- fieldName: 'vendorId',
+ fieldName: 'vendorName',
label: '渚涘簲鍟�',
- component: markRaw(MdVendorSelect),
+ component: 'Input',
componentProps: {
- placeholder: '璇烽�夋嫨渚涘簲鍟�',
- disabled: true,
+ disabled: isHeaderReadonly(formType),
+ placeholder: '璇疯緭鍏ヤ緵搴斿晢',
},
- dependencies: {
- triggerFields: ['vendorName'],
- componentProps: (values) => ({
- placeholder: '璇烽�夋嫨渚涘簲鍟�',
- disabled: true,
- vendorName: values.vendorName as string,
- }),
- },
- rules: 'selectRequired',
+ rules: 'required',
},
{
fieldName: 'returnDate',
@@ -211,11 +187,12 @@
},
},
{
- fieldName: 'vendorId',
+ fieldName: 'vendorName',
label: '渚涘簲鍟�',
- component: markRaw(MdVendorSelect),
+ component: 'Input',
componentProps: {
- placeholder: '璇烽�夋嫨渚涘簲鍟�',
+ allowClear: true,
+ placeholder: '璇疯緭鍏ヤ緵搴斿晢',
},
},
];
diff --git a/src/views/wls/salesnotice/data.ts b/src/views/wls/salesnotice/data.ts
index 6818446..c0b807a 100644
--- a/src/views/wls/salesnotice/data.ts
+++ b/src/views/wls/salesnotice/data.ts
@@ -14,8 +14,6 @@
import { z } from '#/adapter/form';
import { generateAutoCode } from '#/api/mes/md/autocode/record';
-import CrmCustomerSelect from '#/components/crm-customer-select.vue';
-import { ErpSaleOrderSelect } from '#/views/erp/sale/order/components';
import { MdItemSelect } from '#/views/mes/md/item/components';
/** 琛ㄥ崟绫诲瀷 */
@@ -83,28 +81,21 @@
rules: 'required',
},
{
- fieldName: 'saleOrderId',
- label: '閿�鍞鍗�',
- component: markRaw(ErpSaleOrderSelect),
+ fieldName: 'saleOrderCode',
+ label: '閿�鍞鍗曠紪鍙�',
+ component: 'Input',
componentProps: {
- placeholder: '璇烽�夋嫨閿�鍞鍗�',
- // 閫夋嫨閿�鍞鍗曞悗锛岃嚜鍔ㄥ洖濉鎴蜂俊鎭�
- onChange: (item: any) => {
- if (item?.customerId && formApi) {
- formApi.setFieldValue('clientId', item.customerId);
- }
- },
+ placeholder: '璇疯緭鍏ラ攢鍞鍗曠紪鍙�',
},
},
{
- fieldName: 'clientId',
+ fieldName: 'clientName',
label: '瀹㈡埛',
- component: markRaw(CrmCustomerSelect),
+ component: 'Input',
componentProps: {
- placeholder: '璇烽�夋嫨瀹㈡埛',
- disabled: true,
+ placeholder: '璇疯緭鍏ュ鎴峰悕绉�',
},
- rules: 'selectRequired',
+ rules: 'required',
},
{
fieldName: 'salesDate',
@@ -186,11 +177,12 @@
},
},
{
- fieldName: 'clientId',
+ fieldName: 'clientName',
label: '瀹㈡埛',
- component: markRaw(CrmCustomerSelect),
+ component: 'Input',
componentProps: {
- placeholder: '璇烽�夋嫨瀹㈡埛',
+ allowClear: true,
+ placeholder: '璇疯緭鍏ュ鎴峰悕绉�',
},
},
];
--
Gitblit v1.9.3