From 3f7a1f34aff16f12de093a9579201e518b0c309b Mon Sep 17 00:00:00 2001
From: 云 <2163098428@qq.com>
Date: 星期五, 24 七月 2026 15:16:04 +0800
Subject: [PATCH] refactor(erp): 将文件上传字段从 fileUrl 改为 blobIds 并支持多附件上传
---
src/views/erp/purchase/in/data.ts | 5 +
src/api/erp/finance/receipt/index.ts | 2
src/views/erp/finance/payment/data.ts | 5 +
src/views/erp/sale/return/modules/form.vue | 13 ++
src/views/erp/purchase/order/data.ts | 5 +
src/views/erp/purchase/request/data.ts | 6 +
src/views/erp/sale/return/data.ts | 5 +
src/api/erp/sale/return/index.ts | 2
src/api/erp/sale/out/index.ts | 2
src/api/erp/purchase/request/index.ts | 2
src/api/erp/finance/payment/index.ts | 2
src/api/erp/purchase/order/index.ts | 2
src/api/erp/stock/out/index.ts | 2
src/views/erp/stock/move/data.ts | 5 +
src/views/erp/purchase/in/modules/form.vue | 13 ++
src/api/erp/stock/in/index.ts | 2
src/views/erp/finance/payment/modules/form.vue | 15 ++-
src/views/erp/purchase/return/data.ts | 5 +
src/views/erp/purchase/return/modules/form.vue | 13 ++
src/views/erp/sale/out/modules/form.vue | 13 ++
src/views/erp/finance/receipt/data.ts | 5 +
src/views/erp/sale/order/data.ts | 5 +
src/api/erp/stock/move/index.ts | 2
src/views/erp/stock/check/data.ts | 5 +
src/views/erp/stock/out/data.ts | 5 +
src/api/erp/stock/check/index.ts | 2
src/api/erp/sale/order/index.ts | 2
src/views/erp/finance/receipt/modules/form.vue | 15 ++-
src/views/erp/sale/out/data.ts | 5 +
src/views/erp/purchase/order/modules/form.vue | 13 ++
src/views/erp/stock/in/data.ts | 5 +
31 files changed, 135 insertions(+), 48 deletions(-)
diff --git a/src/api/erp/finance/payment/index.ts b/src/api/erp/finance/payment/index.ts
index 004713c..7f8586d 100644
--- a/src/api/erp/finance/payment/index.ts
+++ b/src/api/erp/finance/payment/index.ts
@@ -15,7 +15,7 @@
paymentPrice: number; // 瀹為檯浠樻閲戦
status: number; // 鐘舵��
remark: string; // 澶囨敞
- fileUrl?: string; // 闄勪欢
+ attachmentList?: { id: number; name?: string; url?: string }[]; // 闄勪欢鍒楄〃
accountId?: number; // 浠樻璐︽埛
accountName?: string; // 璐︽埛鍚嶇О
financeUserId?: number; // 璐㈠姟浜哄憳
diff --git a/src/api/erp/finance/receipt/index.ts b/src/api/erp/finance/receipt/index.ts
index f871035..b334a49 100644
--- a/src/api/erp/finance/receipt/index.ts
+++ b/src/api/erp/finance/receipt/index.ts
@@ -28,7 +28,7 @@
receiptPrice: number; // 瀹為檯鏀舵閲戦
status: number; // 鐘舵��
remark: string; // 澶囨敞
- fileUrl?: string; // 闄勪欢
+ attachmentList?: { id: number; name?: string; url?: string }[]; // 闄勪欢鍒楄〃
accountId?: number; // 鏀舵璐︽埛
accountName?: string; // 璐︽埛鍚嶇О
financeUserId?: number; // 璐㈠姟浜哄憳
diff --git a/src/api/erp/purchase/order/index.ts b/src/api/erp/purchase/order/index.ts
index 000cdf2..5ea3dff 100644
--- a/src/api/erp/purchase/order/index.ts
+++ b/src/api/erp/purchase/order/index.ts
@@ -19,7 +19,7 @@
accountId?: number; // 缁撶畻璐︽埛缂栧彿
status?: number; // 鐘舵��
remark?: string; // 澶囨敞
- fileUrl?: string; // 闄勪欢鍦板潃
+ attachmentList?: { id: number; name?: string; url?: string }[]; // 闄勪欢鍒楄〃
inCount?: number; // 閲囪喘鍏ュ簱鏁伴噺
count?: number; // 鏁伴噺
returnCount?: number; // 閲囪喘閫�璐ф暟閲�
diff --git a/src/api/erp/purchase/request/index.ts b/src/api/erp/purchase/request/index.ts
index 4d5a60d..46796c5 100644
--- a/src/api/erp/purchase/request/index.ts
+++ b/src/api/erp/purchase/request/index.ts
@@ -17,7 +17,7 @@
supplierId?: number; // 渚涘簲鍟嗙紪鍙�
supplierName?: string; // 渚涘簲鍟嗗悕绉�
discountPercent?: number; // 浼樻儬鐜�
- fileUrl?: string; // 闄勪欢鍦板潃
+ attachmentList?: { id: number; name?: string; url?: string }[]; // 闄勪欢鍒楄〃
remark?: string; // 澶囨敞
totalCount?: number; // 鎬绘暟閲�
totalPrice?: number; // 鎬婚噾棰�
diff --git a/src/api/erp/sale/order/index.ts b/src/api/erp/sale/order/index.ts
index 5fb0764..7e42f11 100644
--- a/src/api/erp/sale/order/index.ts
+++ b/src/api/erp/sale/order/index.ts
@@ -17,7 +17,7 @@
remark: string; // 澶囨敞
outCount: number; // 閿�鍞嚭搴撴暟閲�
outStatus?: number; // 鍑哄簱鐘舵�侊細0-鏈嚭搴擄紝1-閮ㄥ垎鍑哄簱锛�2-鍏ㄩ儴鍑哄簱
- fileUrl?: string; // 闄勪欢鍦板潃
+ attachmentList?: { id: number; name?: string; url?: string }[]; // 闄勪欢鍒楄〃
inCount?: number; // 閲囪喘鍏ュ簱鏁伴噺
returnCount: number; // 閿�鍞��璐ф暟閲�
totalProductPrice?: number; // 浜у搧閲戦锛屽崟浣嶏細鍏�
diff --git a/src/api/erp/sale/out/index.ts b/src/api/erp/sale/out/index.ts
index 85f5a66..8de729a 100644
--- a/src/api/erp/sale/out/index.ts
+++ b/src/api/erp/sale/out/index.ts
@@ -21,7 +21,7 @@
totalProductPrice?: number; // 鍚堣鍟嗗搧閲戦
taxPrice?: number; // 鍚堣绋庨
totalTaxPrice?: number; // 鍚堣绋庨
- fileUrl?: string; // 闄勪欢鍦板潃
+ attachmentList?: { id: number; name?: string; url?: string }[]; // 闄勪欢鍒楄〃
items?: SaleOutItem[];
}
diff --git a/src/api/erp/sale/return/index.ts b/src/api/erp/sale/return/index.ts
index 18af375..575a650 100644
--- a/src/api/erp/sale/return/index.ts
+++ b/src/api/erp/sale/return/index.ts
@@ -20,7 +20,7 @@
totalProductPrice?: number; // 鍚堣鍟嗗搧閲戦
taxPrice?: number; // 鍚堣绋庨
totalTaxPrice?: number; // 鍚堣绋庨
- fileUrl?: string; // 闄勪欢鍦板潃
+ attachmentList?: { id: number; name?: string; url?: string }[]; // 闄勪欢鍒楄〃
items?: SaleReturnItem[];
}
diff --git a/src/api/erp/stock/check/index.ts b/src/api/erp/stock/check/index.ts
index c67ea62..52f8c72 100644
--- a/src/api/erp/stock/check/index.ts
+++ b/src/api/erp/stock/check/index.ts
@@ -12,7 +12,7 @@
totalPrice: number; // 鍚堣閲戦锛屽崟浣嶏細鍏�
status: number; // 鐘舵��
remark: string; // 澶囨敞
- fileUrl?: string; // 闄勪欢
+ attachmentList?: { id: number; name?: string; url?: string }[]; // 闄勪欢鍒楄〃
productNames?: string; // 浜у搧淇℃伅
creatorName?: string; // 鍒涘缓浜�
items?: StockCheckItem[]; // 鐩樼偣浜у搧娓呭崟
diff --git a/src/api/erp/stock/in/index.ts b/src/api/erp/stock/in/index.ts
index b6e4a50..cda42a2 100644
--- a/src/api/erp/stock/in/index.ts
+++ b/src/api/erp/stock/in/index.ts
@@ -14,7 +14,7 @@
totalPrice: number; // 鍚堣閲戦锛屽崟浣嶏細鍏�
status: number; // 鐘舵��
remark: string; // 澶囨敞
- fileUrl?: string; // 闄勪欢
+ attachmentList?: { id: number; name?: string; url?: string }[]; // 闄勪欢鍒楄〃
productNames?: string; // 浜у搧淇℃伅
creatorName?: string; // 鍒涘缓浜�
items?: StockInItem[]; // 鍏ュ簱浜у搧娓呭崟
diff --git a/src/api/erp/stock/move/index.ts b/src/api/erp/stock/move/index.ts
index aaf09b2..4abc28c 100644
--- a/src/api/erp/stock/move/index.ts
+++ b/src/api/erp/stock/move/index.ts
@@ -12,7 +12,7 @@
totalPrice: number; // 鍚堣閲戦锛屽崟浣嶏細鍏�
status: number; // 鐘舵��
remark: string; // 澶囨敞
- fileUrl?: string; // 闄勪欢
+ attachmentList?: { id: number; name?: string; url?: string }[]; // 闄勪欢鍒楄〃
fromWarehouseId?: number; // 鏉ユ簮浠撳簱缂栧彿
createTime: Date; // 鍒涘缓鏃堕棿
creator: string; // 鍒涘缓浜�
diff --git a/src/api/erp/stock/out/index.ts b/src/api/erp/stock/out/index.ts
index 94588e1..cb85ab2 100644
--- a/src/api/erp/stock/out/index.ts
+++ b/src/api/erp/stock/out/index.ts
@@ -13,7 +13,7 @@
totalPrice: number; // 鍚堣閲戦锛屽崟浣嶏細鍏�
status: number; // 鐘舵��
remark: string; // 澶囨敞
- fileUrl?: string; // 闄勪欢
+ attachmentList?: { id: number; name?: string; url?: string }[]; // 闄勪欢鍒楄〃
items?: StockOutItem[]; // 鍑哄簱浜у搧娓呭崟
}
diff --git a/src/views/erp/finance/payment/data.ts b/src/views/erp/finance/payment/data.ts
index b1fb694..3d04084 100644
--- a/src/views/erp/finance/payment/data.ts
+++ b/src/views/erp/finance/payment/data.ts
@@ -86,10 +86,13 @@
formItemClass: 'col-span-2',
},
{
- fieldName: 'fileUrl',
+ fieldName: 'blobIds',
label: '闄勪欢',
component: 'FileUpload',
componentProps: {
+ valueKey: 'id',
+ maxNumber: 10,
+ multiple: true,
showDescription: formType !== 'detail',
disabled: formType === 'detail',
},
diff --git a/src/views/erp/finance/payment/modules/form.vue b/src/views/erp/finance/payment/modules/form.vue
index b9c8cd4..41987a3 100644
--- a/src/views/erp/finance/payment/modules/form.vue
+++ b/src/views/erp/finance/payment/modules/form.vue
@@ -23,9 +23,7 @@
const emit = defineEmits(['success']);
const formData = ref<
- ErpFinancePaymentApi.FinancePayment & {
- fileUrl?: string;
- }
+ ErpFinancePaymentApi.FinancePayment
>({
id: undefined,
no: '',
@@ -34,7 +32,6 @@
financeUserId: undefined,
paymentTime: undefined,
remark: '',
- fileUrl: undefined,
totalPrice: 0,
discountPrice: 0,
paymentPrice: 0,
@@ -163,6 +160,16 @@
modalApi.lock();
try {
formData.value = await getFinancePayment(data.id);
+ if (formData.value?.attachmentList?.length) {
+ const blobIds = formData.value.attachmentList.map((item) => ({
+ uid: String(item.id),
+ name: item.name || '',
+ url: item.url || '',
+ status: 'done',
+ id: item.id,
+ }));
+ formApi.setFieldValue('blobIds', blobIds);
+ }
// 璁剧疆鍒� values
await formApi.setValues(formData.value, false);
} finally {
diff --git a/src/views/erp/finance/receipt/data.ts b/src/views/erp/finance/receipt/data.ts
index 6f51e6a..87e7ea4 100644
--- a/src/views/erp/finance/receipt/data.ts
+++ b/src/views/erp/finance/receipt/data.ts
@@ -86,10 +86,13 @@
formItemClass: 'col-span-2',
},
{
- fieldName: 'fileUrl',
+ fieldName: 'blobIds',
label: '闄勪欢',
component: 'FileUpload',
componentProps: {
+ valueKey: 'id',
+ maxNumber: 10,
+ multiple: true,
showDescription: formType !== 'detail',
disabled: formType === 'detail',
},
diff --git a/src/views/erp/finance/receipt/modules/form.vue b/src/views/erp/finance/receipt/modules/form.vue
index 6b2d217..9435b4c 100644
--- a/src/views/erp/finance/receipt/modules/form.vue
+++ b/src/views/erp/finance/receipt/modules/form.vue
@@ -23,9 +23,7 @@
const emit = defineEmits(['success']);
const formData = ref<
- ErpFinanceReceiptApi.FinanceReceipt & {
- fileUrl?: string;
- }
+ ErpFinanceReceiptApi.FinanceReceipt
>({
id: undefined,
no: '',
@@ -34,7 +32,6 @@
financeUserId: 0,
receiptTime: new Date(),
remark: '',
- fileUrl: undefined,
totalPrice: 0,
discountPrice: 0,
receiptPrice: 0,
@@ -177,6 +174,16 @@
modalApi.lock();
try {
formData.value = await getFinanceReceipt(data.id);
+ if (formData.value?.attachmentList?.length) {
+ const blobIds = formData.value.attachmentList.map((item) => ({
+ uid: String(item.id),
+ name: item.name || '',
+ url: item.url || '',
+ status: 'done',
+ id: item.id,
+ }));
+ formApi.setFieldValue('blobIds', blobIds);
+ }
// 璁剧疆鍒� values
await formApi.setValues(formData.value, false);
} finally {
diff --git a/src/views/erp/purchase/in/data.ts b/src/views/erp/purchase/in/data.ts
index 2eb48e6..b379d63 100644
--- a/src/views/erp/purchase/in/data.ts
+++ b/src/views/erp/purchase/in/data.ts
@@ -87,10 +87,13 @@
formItemClass: 'col-span-2',
},
{
- fieldName: 'fileUrl',
+ fieldName: 'blobIds',
label: '闄勪欢',
component: 'FileUpload',
componentProps: {
+ valueKey: 'id',
+ maxNumber: 10,
+ multiple: true,
showDescription: formType !== 'detail',
disabled: formType === 'detail',
},
diff --git a/src/views/erp/purchase/in/modules/form.vue b/src/views/erp/purchase/in/modules/form.vue
index 3a58289..cfe0b69 100644
--- a/src/views/erp/purchase/in/modules/form.vue
+++ b/src/views/erp/purchase/in/modules/form.vue
@@ -29,7 +29,6 @@
accountId?: number;
customerId?: number;
discountPercent?: number;
- fileUrl?: string;
order?: ErpPurchaseOrderApi.PurchaseOrder;
orderId?: number;
orderNo?: string;
@@ -40,7 +39,6 @@
accountId: undefined,
inTime: undefined,
remark: undefined,
- fileUrl: undefined,
discountPercent: 0,
supplierId: undefined,
discountPrice: 0,
@@ -124,7 +122,6 @@
accountId: order.accountId!,
remark: order.remark!,
discountPercent: order.discountPercent!,
- fileUrl: order.fileUrl!,
};
// 灏嗚鍗曢」璁剧疆鍒板叆搴撳崟椤�
order.items!.forEach((item: any) => {
@@ -193,6 +190,16 @@
modalApi.lock();
try {
formData.value = await getPurchaseIn(data.id);
+ if (formData.value?.attachmentList?.length) {
+ const blobIds = formData.value.attachmentList.map((item) => ({
+ uid: String(item.id),
+ name: item.name || '',
+ url: item.url || '',
+ status: 'done',
+ id: item.id,
+ }));
+ formApi.setFieldValue('blobIds', blobIds);
+ }
// 璁剧疆鍒� values
await formApi.setValues(formData.value, false);
} finally {
diff --git a/src/views/erp/purchase/order/data.ts b/src/views/erp/purchase/order/data.ts
index d13eb84..9ff3b0d 100644
--- a/src/views/erp/purchase/order/data.ts
+++ b/src/views/erp/purchase/order/data.ts
@@ -87,10 +87,13 @@
formItemClass: 'col-span-2',
},
{
- fieldName: 'fileUrl',
+ fieldName: 'blobIds',
label: '闄勪欢',
component: 'FileUpload',
componentProps: {
+ valueKey: 'id',
+ maxNumber: 10,
+ multiple: true,
showDescription: formType !== 'detail',
disabled: formType === 'detail',
},
diff --git a/src/views/erp/purchase/order/modules/form.vue b/src/views/erp/purchase/order/modules/form.vue
index 40d3490..e9994ea 100644
--- a/src/views/erp/purchase/order/modules/form.vue
+++ b/src/views/erp/purchase/order/modules/form.vue
@@ -85,9 +85,6 @@
...item,
id: undefined,
}));
- if (data.fileUrl && Array.isArray(data.fileUrl)) {
- data.fileUrl = data.fileUrl.length > 0 ? data.fileUrl[0] : '';
- }
await (formType.value === 'create'
? createPurchaseOrder(data)
: updatePurchaseOrder(data));
@@ -154,6 +151,16 @@
modalApi.lock();
try {
formData.value = await getPurchaseOrder(data.id);
+ if (formData.value?.attachmentList?.length) {
+ const blobIds = formData.value.attachmentList.map((item) => ({
+ uid: String(item.id),
+ name: item.name || '',
+ url: item.url || '',
+ status: 'done',
+ id: item.id,
+ }));
+ formApi.setFieldValue('blobIds', blobIds);
+ }
await formApi.setValues(formData.value);
} finally {
modalApi.unlock();
diff --git a/src/views/erp/purchase/request/data.ts b/src/views/erp/purchase/request/data.ts
index eb869d1..f00591c 100644
--- a/src/views/erp/purchase/request/data.ts
+++ b/src/views/erp/purchase/request/data.ts
@@ -103,11 +103,13 @@
formItemClass: 'col-span-2',
},
{
- fieldName: 'fileUrl',
+ fieldName: 'blobIds',
label: '闄勪欢',
component: 'FileUpload',
componentProps: {
- placeholder: '璇蜂笂浼犻檮浠�',
+ valueKey: 'id',
+ maxNumber: 10,
+ multiple: true,
disabled: formType === 'detail',
},
formItemClass: 'col-span-2',
diff --git a/src/views/erp/purchase/return/data.ts b/src/views/erp/purchase/return/data.ts
index 8f82c78..fdbcf2e 100644
--- a/src/views/erp/purchase/return/data.ts
+++ b/src/views/erp/purchase/return/data.ts
@@ -87,10 +87,13 @@
formItemClass: 'col-span-2',
},
{
- fieldName: 'fileUrl',
+ fieldName: 'blobIds',
label: '闄勪欢',
component: 'FileUpload',
componentProps: {
+ valueKey: 'id',
+ maxNumber: 10,
+ multiple: true,
showDescription: formType !== 'detail',
disabled: formType === 'detail',
},
diff --git a/src/views/erp/purchase/return/modules/form.vue b/src/views/erp/purchase/return/modules/form.vue
index dc90705..7c811dd 100644
--- a/src/views/erp/purchase/return/modules/form.vue
+++ b/src/views/erp/purchase/return/modules/form.vue
@@ -28,7 +28,6 @@
ErpPurchaseReturnApi.PurchaseReturn & {
accountId?: number;
discountPercent?: number;
- fileUrl?: string;
order?: ErpPurchaseOrderApi.PurchaseOrder;
orderId?: number;
orderNo?: string;
@@ -40,7 +39,6 @@
accountId: undefined,
returnTime: undefined,
remark: undefined,
- fileUrl: undefined,
discountPercent: 0,
supplierId: undefined,
discountPrice: 0,
@@ -123,7 +121,6 @@
accountId: order.accountId!,
remark: order.remark!,
discountPercent: order.discountPercent!,
- fileUrl: order.fileUrl!,
};
// 灏嗚鍗曢」璁剧疆鍒伴��璐у崟椤�
order.items!.forEach((item: any) => {
@@ -193,6 +190,16 @@
modalApi.lock();
try {
formData.value = await getPurchaseReturn(data.id);
+ if (formData.value?.attachmentList?.length) {
+ const blobIds = formData.value.attachmentList.map((item) => ({
+ uid: String(item.id),
+ name: item.name || '',
+ url: item.url || '',
+ status: 'done',
+ id: item.id,
+ }));
+ formApi.setFieldValue('blobIds', blobIds);
+ }
// 璁剧疆鍒� values
await formApi.setValues(formData.value, false);
} finally {
diff --git a/src/views/erp/sale/order/data.ts b/src/views/erp/sale/order/data.ts
index 1fad18d..75bb9de 100644
--- a/src/views/erp/sale/order/data.ts
+++ b/src/views/erp/sale/order/data.ts
@@ -111,10 +111,13 @@
formItemClass: 'col-span-2',
},
{
- fieldName: 'fileUrl',
+ fieldName: 'blobIds',
label: '闄勪欢',
component: 'FileUpload',
componentProps: {
+ valueKey: 'id',
+ maxNumber: 10,
+ multiple: true,
showDescription: formType !== 'detail',
disabled: formType === 'detail',
},
diff --git a/src/views/erp/sale/out/data.ts b/src/views/erp/sale/out/data.ts
index b7fc5b8..15f309e 100644
--- a/src/views/erp/sale/out/data.ts
+++ b/src/views/erp/sale/out/data.ts
@@ -104,10 +104,13 @@
formItemClass: 'col-span-2',
},
{
- fieldName: 'fileUrl',
+ fieldName: 'blobIds',
label: '闄勪欢',
component: 'FileUpload',
componentProps: {
+ valueKey: 'id',
+ maxNumber: 10,
+ multiple: true,
showDescription: formType !== 'detail',
disabled: formType === 'detail',
},
diff --git a/src/views/erp/sale/out/modules/form.vue b/src/views/erp/sale/out/modules/form.vue
index 9483f64..98e9563 100644
--- a/src/views/erp/sale/out/modules/form.vue
+++ b/src/views/erp/sale/out/modules/form.vue
@@ -25,7 +25,6 @@
accountId?: number;
customerId?: number;
discountPercent?: number;
- fileUrl?: string;
order?: ErpSaleOrderApi.SaleOrder;
orderId?: number;
orderNo?: string;
@@ -36,7 +35,6 @@
accountId: undefined,
outTime: undefined,
remark: undefined,
- fileUrl: undefined,
discountPercent: 0,
customerId: undefined,
discountPrice: 0,
@@ -119,7 +117,6 @@
accountId: order.accountId!,
remark: order.remark!,
discountPercent: order.discountPercent!,
- fileUrl: order.fileUrl!,
};
// 灏嗚鍗曢」璁剧疆鍒板嚭搴撳崟椤�
order.items!.forEach((item: any) => {
@@ -188,6 +185,16 @@
modalApi.lock();
try {
formData.value = await getSaleOut(data.id);
+ if (formData.value?.attachmentList?.length) {
+ const blobIds = formData.value.attachmentList.map((item) => ({
+ uid: String(item.id),
+ name: item.name || '',
+ url: item.url || '',
+ status: 'done',
+ id: item.id,
+ }));
+ formApi.setFieldValue('blobIds', blobIds);
+ }
// 璁剧疆鍒� values
await formApi.setValues(formData.value, false);
} finally {
diff --git a/src/views/erp/sale/return/data.ts b/src/views/erp/sale/return/data.ts
index 206d90d..bb92f50 100644
--- a/src/views/erp/sale/return/data.ts
+++ b/src/views/erp/sale/return/data.ts
@@ -100,10 +100,13 @@
formItemClass: 'col-span-2',
},
{
- fieldName: 'fileUrl',
+ fieldName: 'blobIds',
label: '闄勪欢',
component: 'FileUpload',
componentProps: {
+ valueKey: 'id',
+ maxNumber: 10,
+ multiple: true,
showDescription: formType !== 'detail',
disabled: formType === 'detail',
},
diff --git a/src/views/erp/sale/return/modules/form.vue b/src/views/erp/sale/return/modules/form.vue
index 76ce63a..59437d7 100644
--- a/src/views/erp/sale/return/modules/form.vue
+++ b/src/views/erp/sale/return/modules/form.vue
@@ -29,7 +29,6 @@
accountId?: number;
customerId?: number;
discountPercent?: number;
- fileUrl?: string;
order?: ErpSaleOrderApi.SaleOrder;
orderId?: number;
orderNo?: string;
@@ -40,7 +39,6 @@
accountId: undefined,
returnTime: undefined,
remark: undefined,
- fileUrl: undefined,
discountPercent: 0,
customerId: undefined,
discountPrice: 0,
@@ -124,7 +122,6 @@
accountId: order.accountId!,
remark: order.remark!,
discountPercent: order.discountPercent!,
- fileUrl: order.fileUrl!,
};
// 灏嗚鍗曢」璁剧疆鍒伴��璐у崟椤�
order.items!.forEach((item: any) => {
@@ -193,6 +190,16 @@
modalApi.lock();
try {
formData.value = await getSaleReturn(data.id);
+ if (formData.value?.attachmentList?.length) {
+ const blobIds = formData.value.attachmentList.map((item) => ({
+ uid: String(item.id),
+ name: item.name || '',
+ url: item.url || '',
+ status: 'done',
+ id: item.id,
+ }));
+ formApi.setFieldValue('blobIds', blobIds);
+ }
// 璁剧疆鍒� values
await formApi.setValues(formData.value, false);
} finally {
diff --git a/src/views/erp/stock/check/data.ts b/src/views/erp/stock/check/data.ts
index 054c35f..d58c9f5 100644
--- a/src/views/erp/stock/check/data.ts
+++ b/src/views/erp/stock/check/data.ts
@@ -56,10 +56,13 @@
formItemClass: 'col-span-2',
},
{
- fieldName: 'fileUrl',
+ fieldName: 'blobIds',
label: '闄勪欢',
component: 'FileUpload',
componentProps: {
+ valueKey: 'id',
+ maxNumber: 10,
+ multiple: true,
showDescription: formType !== 'detail',
disabled: formType === 'detail',
},
diff --git a/src/views/erp/stock/in/data.ts b/src/views/erp/stock/in/data.ts
index 67c3598..85e8e81 100644
--- a/src/views/erp/stock/in/data.ts
+++ b/src/views/erp/stock/in/data.ts
@@ -71,10 +71,13 @@
formItemClass: 'col-span-2',
},
{
- fieldName: 'fileUrl',
+ fieldName: 'blobIds',
label: '闄勪欢',
component: 'FileUpload',
componentProps: {
+ valueKey: 'id',
+ maxNumber: 10,
+ multiple: true,
showDescription: formType !== 'detail',
disabled: formType === 'detail',
},
diff --git a/src/views/erp/stock/move/data.ts b/src/views/erp/stock/move/data.ts
index aba8a00..0baf242 100644
--- a/src/views/erp/stock/move/data.ts
+++ b/src/views/erp/stock/move/data.ts
@@ -56,10 +56,13 @@
formItemClass: 'col-span-2',
},
{
- fieldName: 'fileUrl',
+ fieldName: 'blobIds',
label: '闄勪欢',
component: 'FileUpload',
componentProps: {
+ valueKey: 'id',
+ maxNumber: 10,
+ multiple: true,
showDescription: formType !== 'detail',
disabled: formType === 'detail',
},
diff --git a/src/views/erp/stock/out/data.ts b/src/views/erp/stock/out/data.ts
index 50da807..c764bff 100644
--- a/src/views/erp/stock/out/data.ts
+++ b/src/views/erp/stock/out/data.ts
@@ -73,10 +73,13 @@
formItemClass: 'col-span-2',
},
{
- fieldName: 'fileUrl',
+ fieldName: 'blobIds',
label: '闄勪欢',
component: 'FileUpload',
componentProps: {
+ valueKey: 'id',
+ maxNumber: 10,
+ multiple: true,
showDescription: formType !== 'detail',
disabled: formType === 'detail',
},
--
Gitblit v1.9.3