From 888a6d9ec82ee49994b0aca827f239004bb27b94 Mon Sep 17 00:00:00 2001 From: YunaiV Date: Sat, 4 Oct 2025 16:29:36 +0800 Subject: [PATCH] =?UTF-8?q?feat=EF=BC=9A=E3=80=90antd=E3=80=91=E3=80=90erp?= =?UTF-8?q?=20=E7=B3=BB=E7=BB=9F=E3=80=91sale=20=E9=87=8D=E6=9E=84?= =?UTF-8?q?=E4=BB=A3=E7=A0=81=E9=A3=8E=E6=A0=BC=EF=BC=88=E5=A4=84=E7=90=86?= =?UTF-8?q?=E6=96=87=E6=A1=88=E7=AD=89=EF=BC=89?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- apps/web-antd/src/views/erp/sale/order/data.ts | 2 +- apps/web-antd/src/views/erp/sale/order/index.vue | 4 ++-- .../views/erp/sale/order/modules/item-form.vue | 2 +- apps/web-antd/src/views/erp/sale/out/data.ts | 3 ++- apps/web-antd/src/views/erp/sale/out/index.vue | 4 ++-- .../src/views/erp/sale/out/modules/item-form.vue | 2 +- .../erp/sale/out/modules/sale-order-select.vue | 6 +++--- apps/web-antd/src/views/erp/sale/return/data.ts | 15 +++++++++------ apps/web-antd/src/views/erp/sale/return/index.vue | 4 ++-- .../views/erp/sale/return/modules/item-form.vue | 7 +++---- 10 files changed, 26 insertions(+), 23 deletions(-) diff --git a/apps/web-antd/src/views/erp/sale/order/data.ts b/apps/web-antd/src/views/erp/sale/order/data.ts index 177410ec4..34f5c25d8 100644 --- a/apps/web-antd/src/views/erp/sale/order/data.ts +++ b/apps/web-antd/src/views/erp/sale/order/data.ts @@ -111,7 +111,7 @@ export function useFormSchema(formType: string): VbenFormSchema[] { }, { fieldName: 'items', - label: '产品清单', + label: '销售产品清单', component: 'Input', formItemClass: 'col-span-3', }, diff --git a/apps/web-antd/src/views/erp/sale/order/index.vue b/apps/web-antd/src/views/erp/sale/order/index.vue index 5018318bf..08051a651 100644 --- a/apps/web-antd/src/views/erp/sale/order/index.vue +++ b/apps/web-antd/src/views/erp/sale/order/index.vue @@ -19,13 +19,13 @@ import { import { $t } from '#/locales'; import { useGridColumns, useGridFormSchema } from './data'; -import SaleOrderForm from './modules/form.vue'; +import Form from './modules/form.vue'; /** ERP 销售订单列表 */ defineOptions({ name: 'ErpSaleOrder' }); const [FormModal, formModalApi] = useVbenModal({ - connectedComponent: SaleOrderForm, + connectedComponent: Form, destroyOnClose: true, }); diff --git a/apps/web-antd/src/views/erp/sale/order/modules/item-form.vue b/apps/web-antd/src/views/erp/sale/order/modules/item-form.vue index 06427aa63..3ef1139b6 100644 --- a/apps/web-antd/src/views/erp/sale/order/modules/item-form.vue +++ b/apps/web-antd/src/views/erp/sale/order/modules/item-form.vue @@ -308,7 +308,7 @@ onMounted(async () => { class="mt-2 flex justify-center" :actions="[ { - label: '添加产品', + label: '添加销售产品', type: 'default', onClick: handleAdd, }, diff --git a/apps/web-antd/src/views/erp/sale/out/data.ts b/apps/web-antd/src/views/erp/sale/out/data.ts index cd5d7f0f8..f1ee55c44 100644 --- a/apps/web-antd/src/views/erp/sale/out/data.ts +++ b/apps/web-antd/src/views/erp/sale/out/data.ts @@ -125,7 +125,7 @@ export function useFormSchema(formType: string): VbenFormSchema[] { }, { fieldName: 'items', - label: '产品清单', + label: '出库产品清单', component: 'Input', formItemClass: 'col-span-3', }, @@ -495,6 +495,7 @@ export function useGridColumns(): VxeTableGridOptions['columns'] { }, ]; } + /** 列表的搜索表单 */ export function useOrderGridFormSchema(): VbenFormSchema[] { return [ diff --git a/apps/web-antd/src/views/erp/sale/out/index.vue b/apps/web-antd/src/views/erp/sale/out/index.vue index 693a5ead8..cb38ad9fe 100644 --- a/apps/web-antd/src/views/erp/sale/out/index.vue +++ b/apps/web-antd/src/views/erp/sale/out/index.vue @@ -19,13 +19,13 @@ import { import { $t } from '#/locales'; import { useGridColumns, useGridFormSchema } from './data'; -import SaleOutForm from './modules/form.vue'; +import Form from './modules/form.vue'; /** ERP 销售出库列表 */ defineOptions({ name: 'ErpSaleOut' }); const [FormModal, formModalApi] = useVbenModal({ - connectedComponent: SaleOutForm, + connectedComponent: Form, destroyOnClose: true, }); diff --git a/apps/web-antd/src/views/erp/sale/out/modules/item-form.vue b/apps/web-antd/src/views/erp/sale/out/modules/item-form.vue index e5aa180d0..1174a69a3 100644 --- a/apps/web-antd/src/views/erp/sale/out/modules/item-form.vue +++ b/apps/web-antd/src/views/erp/sale/out/modules/item-form.vue @@ -39,7 +39,7 @@ const emit = defineEmits([ 'update:total-price', ]); -const tableData = ref([]); +const tableData = ref([]); // 表格数据 const productOptions = ref([]); // 产品下拉选项 const warehouseOptions = ref([]); // 仓库下拉选项 diff --git a/apps/web-antd/src/views/erp/sale/out/modules/sale-order-select.vue b/apps/web-antd/src/views/erp/sale/out/modules/sale-order-select.vue index 8f2ef8446..1a3c8b368 100644 --- a/apps/web-antd/src/views/erp/sale/out/modules/sale-order-select.vue +++ b/apps/web-antd/src/views/erp/sale/out/modules/sale-order-select.vue @@ -72,15 +72,15 @@ const [Grid] = useVbenVxeGrid({ }, }); -/** 选择采购订单 */ +/** 选择销售订单 */ function handleSelectOrder(selectOrder: ErpSaleOrderApi.SaleOrder) { order.value = selectOrder; } -/** 确认选择采购订单 */ +/** 确认选择销售订单 */ const handleOk = () => { if (!order.value) { - message.warning('请选择一个采购订单'); + message.warning('请选择一个销售订单'); return; } emit('update:order', order.value); diff --git a/apps/web-antd/src/views/erp/sale/return/data.ts b/apps/web-antd/src/views/erp/sale/return/data.ts index 1191fe14c..d451e2388 100644 --- a/apps/web-antd/src/views/erp/sale/return/data.ts +++ b/apps/web-antd/src/views/erp/sale/return/data.ts @@ -125,7 +125,7 @@ export function useFormSchema(formType: string): VbenFormSchema[] { }, { fieldName: 'items', - label: '产品清单', + label: '退货产品清单', component: 'Input', formItemClass: 'col-span-3', }, @@ -143,10 +143,9 @@ export function useFormSchema(formType: string): VbenFormSchema[] { }, { fieldName: 'discountPrice', - label: '收款优惠', + label: '退款优惠', component: 'InputNumber', componentProps: { - placeholder: '付款优惠', precision: 2, formatter: erpPriceInputFormatter, disabled: true, @@ -241,17 +240,21 @@ export function useFormItemColumns(): VxeTableGridOptions['columns'] { minWidth: 150, slots: { default: 'remark' }, }, + // TODO @AI:formData[0]?.outCount != null { field: 'totalCount', - title: '原数量', + title: '已出库', formatter: 'formatAmount3', minWidth: 120, + fixed: 'right', }, + // TODO @AI:formData[0]?.returnCount != null { field: 'returnCount', - title: '已退货数量', + title: '已退货', formatter: 'formatAmount3', minWidth: 120, + fixed: 'right', }, { field: 'count', @@ -444,7 +447,7 @@ export function useGridColumns(): VxeTableGridOptions['columns'] { }, { field: 'productNames', - title: '产品信息', + title: '退货产品信息', showOverflow: 'tooltip', minWidth: 120, }, diff --git a/apps/web-antd/src/views/erp/sale/return/index.vue b/apps/web-antd/src/views/erp/sale/return/index.vue index 712ecb15d..5c4c297d6 100644 --- a/apps/web-antd/src/views/erp/sale/return/index.vue +++ b/apps/web-antd/src/views/erp/sale/return/index.vue @@ -19,13 +19,13 @@ import { import { $t } from '#/locales'; import { useGridColumns, useGridFormSchema } from './data'; -import SaleReturnForm from './modules/form.vue'; +import Form from './modules/form.vue'; /** ERP 销售退货列表 */ defineOptions({ name: 'ErpSaleReturn' }); const [FormModal, formModalApi] = useVbenModal({ - connectedComponent: SaleReturnForm, + connectedComponent: Form, destroyOnClose: true, }); diff --git a/apps/web-antd/src/views/erp/sale/return/modules/item-form.vue b/apps/web-antd/src/views/erp/sale/return/modules/item-form.vue index ba94da813..01e86e1b5 100644 --- a/apps/web-antd/src/views/erp/sale/return/modules/item-form.vue +++ b/apps/web-antd/src/views/erp/sale/return/modules/item-form.vue @@ -197,16 +197,15 @@ onMounted(async () => { - \ No newline at end of file +