From af728f8ea642f61dde542e11fa8009b6034b7329 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=E7=A0=82=E7=B3=96?= <2178503051@qq.com>
Date: Sat, 6 Jun 2026 10:49:02 +0800
Subject: [PATCH] =?UTF-8?q?refactor(crm/contract):=20=E6=8A=BD=E5=8F=96?=
=?UTF-8?q?=E5=90=88=E5=90=8C=E5=AF=BC=E5=87=BA=E9=A2=84=E8=A7=88=E7=BB=84?=
=?UTF-8?q?=E4=BB=B6=E5=88=B0=E7=8B=AC=E7=AB=8B=E6=96=87=E4=BB=B6?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../components/ContractExportDialog.vue | 410 ++++++++++++++++++
.../crm/contract/components/ContractList.vue | 273 +-----------
klp-ui/src/views/crm/contract/index.vue | 14 +-
3 files changed, 421 insertions(+), 276 deletions(-)
create mode 100644 klp-ui/src/views/crm/contract/components/ContractExportDialog.vue
diff --git a/klp-ui/src/views/crm/contract/components/ContractExportDialog.vue b/klp-ui/src/views/crm/contract/components/ContractExportDialog.vue
new file mode 100644
index 00000000..adec1916
--- /dev/null
+++ b/klp-ui/src/views/crm/contract/components/ContractExportDialog.vue
@@ -0,0 +1,410 @@
+
+
+
+
+
产品表列配置
+
全选
+
+ {{ col.label }}
+
+
+
勾选的列将显示在导出的产品表中
+
+
+
+
+
+
+ 取 消
+ 确认导出
+
+
+
+
+
diff --git a/klp-ui/src/views/crm/contract/components/ContractList.vue b/klp-ui/src/views/crm/contract/components/ContractList.vue
index b61bf0bb..67e0643e 100644
--- a/klp-ui/src/views/crm/contract/components/ContractList.vue
+++ b/klp-ui/src/views/crm/contract/components/ContractList.vue
@@ -120,7 +120,7 @@
{{ row.isTop ? '取消置顶' : '置顶' }}
详情编辑
- 导出
+ 导出
修改
删除
@@ -134,41 +134,11 @@
-
-
-
-
-
-
产品表列配置
-
全选
-
- {{ col.label }}
-
-
-
勾选的列将显示在导出的产品表中
-
-
-
-
-
-
-
- 取 消
- 确认导出
-
-
diff --git a/klp-ui/src/views/crm/contract/index.vue b/klp-ui/src/views/crm/contract/index.vue
index 7b80a373..a5a189a4 100644
--- a/klp-ui/src/views/crm/contract/index.vue
+++ b/klp-ui/src/views/crm/contract/index.vue
@@ -5,6 +5,8 @@
+
+
@@ -184,6 +186,7 @@ import { listDeliveryWaybill } from "@/api/wms/deliveryWaybill";
import ContractList from "./components/ContractList.vue";
import ContractPreview from "./components/ContractPreview.vue";
import ContractTabs from "./components/ContractTabs.vue";
+import ContractExportDialog from "./components/ContractExportDialog.vue";
import ProductContent from "./components/ProductContent.vue";
import ContractTemplateManager from "./components/ContractTemplateManager.vue";
import CustomerSelect from "@/components/KLPService/CustomerSelect/index.vue";
@@ -194,6 +197,7 @@ export default {
ContractList,
ContractPreview,
ContractTabs,
+ ContractExportDialog,
ProductContent,
ContractTemplateManager,
CustomerSelect,
@@ -229,6 +233,9 @@ export default {
},
// 表单参数
form: {},
+ // 导出预览
+ exportDialogVisible: false,
+ exportRow: null,
// 表单校验
rules: {
contractId: [
@@ -558,10 +565,9 @@ export default {
})
},
/** 导出按钮操作 */
- handleExport() {
- this.download('crm/order/export', {
- ...this.queryParams
- }, `order_${new Date().getTime()}.xlsx`)
+ handleExport(row) {
+ this.exportRow = row;
+ this.exportDialogVisible = true;
},
/** 导出合同操作 */
handleExportContract(row) {