From dc3fc550fe292043cc452dc9aeb0c8a1eeab3b30 Mon Sep 17 00:00:00 2001
From: tuqin <tuqin@tuqin.cn>
Date: 星期四, 24 九月 2026 16:54:39 +0800
Subject: [PATCH] feat: 新增多模块导入导出入口
---
src/views/basicData/product/index.vue | 55 ++++++++++++++++++++++++++++++++++++++++---------------
1 files changed, 40 insertions(+), 15 deletions(-)
diff --git a/src/views/basicData/product/index.vue b/src/views/basicData/product/index.vue
index b05b215..deb3162 100644
--- a/src/views/basicData/product/index.vue
+++ b/src/views/basicData/product/index.vue
@@ -9,6 +9,9 @@
@clear="searchFilter"
clearable
prefix-icon="Search" />
+ <span style="margin-left: 12px">
+ <ImportExcel @uploadSuccess="handleImportSuccess" />
+ </span>
<el-button v-if="false"
type="primary"
@click="openProDia('addOne')"
@@ -72,13 +75,15 @@
@click="openModelDia('add')">
鏂板瑙勬牸鍨嬪彿
</el-button>
- <ImportExcel :product-id="currentId"
- @uploadSuccess="getModelList" />
<el-button type="danger"
@click="handleDelete"
style="margin-left: 10px"
plain>
鍒犻櫎
+ </el-button>
+ <el-button @click="handleExportModels"
+ style="margin-left: 10px">
+ 瀵煎嚭
</el-button>
</div>
<PIMTable rowKey="id"
@@ -104,8 +109,10 @@
<el-form-item label="浜у搧鍚嶇О锛�"
prop="productName">
<el-input v-model="form.productName"
+ type="textarea"
+ resize="vertical"
placeholder="璇疯緭鍏ヤ骇鍝佸悕绉�"
- maxlength="20"
+ maxlength="50"
show-word-limit
clearable
@keydown.enter.prevent />
@@ -132,17 +139,15 @@
:rules="modelRules"
ref="modelFormRef">
<el-row>
- <el-row>
- <el-col :span="24">
- <el-form-item label="浜у搧缂栧彿锛�"
- prop="productCode">
- <el-input v-model="modelForm.productCode"
- placeholder="璇疯緭鍏ヤ骇鍝佺紪鍙�"
- clearable
- @keydown.enter.prevent />
- </el-form-item>
- </el-col>
- </el-row>
+ <el-col :span="24">
+ <el-form-item label="浜у搧缂栧彿锛�"
+ prop="productCode">
+ <el-input v-model="modelForm.productCode"
+ placeholder="璇疯緭鍏ヤ骇鍝佺紪鍙�"
+ clearable
+ @keydown.enter.prevent />
+ </el-form-item>
+ </el-col>
<el-col :span="24">
<el-form-item label="瑙勬牸鍨嬪彿锛�"
prop="model">
@@ -335,7 +340,7 @@
rules: {
productName: [
{ required: true, message: "璇疯緭鍏�", trigger: "blur" },
- { max: 20, message: "浜у搧鍚嶇О涓嶈兘瓒呰繃20涓瓧绗�", trigger: "blur" },
+ { max: 50, message: "浜у搧鍚嶇О涓嶈兘瓒呰繃50涓瓧绗�", trigger: "blur" },
],
},
modelForm: {
@@ -536,6 +541,13 @@
tableLoading.value = false;
});
};
+ // 瀵煎叆瀹屾垚鍚庡埛鏂颁骇鍝佹爲涓庡彸渚ц鏍煎垪琛�
+ const handleImportSuccess = () => {
+ getProductTreeList();
+ if (currentId.value) {
+ getModelList();
+ }
+ };
// 鍒犻櫎瑙勬牸鍨嬪彿
const handleDelete = () => {
let ids = [];
@@ -565,6 +577,19 @@
proxy.$modal.msg("宸插彇娑�");
});
};
+ // 瀵煎嚭褰撳墠浜у搧鐨勮鏍煎瀷鍙�
+ const handleExportModels = () => {
+ if (!currentId.value) {
+ proxy.$modal.msgWarning("璇峰厛閫夋嫨浜у搧");
+ return;
+ }
+ proxy.download(
+ "/basic/product/exportModel",
+ { id: currentId.value },
+ "浜у搧瑙勬牸鍨嬪彿.xlsx"
+ );
+ };
+
const debounce = (fn, delay = 300) => {
let timer;
return (...args) => {
--
Gitblit v1.9.3