From cb8dacad927cd15b723570ac6b840b3f8721bedd Mon Sep 17 00:00:00 2001 From: HashMap Date: Wed, 4 Mar 2026 19:38:57 +0800 Subject: [PATCH 1/3] =?UTF-8?q?perf(views/frozen-sale):=20=E4=B8=8B?= =?UTF-8?q?=E6=8B=89=E5=88=97=E8=A1=A8=E5=BD=95=E5=85=A5=20&=20=E8=87=AA?= =?UTF-8?q?=E5=8A=A8=E5=A1=AB=E5=85=85=E4=BF=A1=E6=81=AF?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit + 支持下拉列表录入客户并根据选中信息自动填充其他关联信息 --- src/views/frozen/sale/index.vue | 38 +++++++++++++++++++++++++++++---- 1 file changed, 34 insertions(+), 4 deletions(-) diff --git a/src/views/frozen/sale/index.vue b/src/views/frozen/sale/index.vue index d34b089..c0e0b7d 100644 --- a/src/views/frozen/sale/index.vue +++ b/src/views/frozen/sale/index.vue @@ -99,7 +99,11 @@ - + + + + @@ -239,14 +243,14 @@ From 9591d478276aac6adbd60fcf9283e67abc6dc0a4 Mon Sep 17 00:00:00 2001 From: ll <1079863556@qq.com> Date: Wed, 4 Mar 2026 20:48:22 +0800 Subject: [PATCH 2/3] =?UTF-8?q?=E7=BE=8A=E5=8F=AA=E6=A1=A3=E6=A1=88?= =?UTF-8?q?=E5=AF=BC=E5=87=BA=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/views/fileManagement/sheep_file/index.vue | 21 ++++++++++++++++--- 1 file changed, 18 insertions(+), 3 deletions(-) diff --git a/src/views/fileManagement/sheep_file/index.vue b/src/views/fileManagement/sheep_file/index.vue index 1f88030..5cf289f 100644 --- a/src/views/fileManagement/sheep_file/index.vue +++ b/src/views/fileManagement/sheep_file/index.vue @@ -1271,16 +1271,31 @@ function handleDelete(row) { }).catch(() => {}) } -// 8. 修改 handleExport 函数,导出时也包含自定义筛选条件 +// 8. 修复:精确读取表格实际显示的列进行导出 function handleExport() { const exportParams = { ...queryParams.value } - // 如果有自定义筛选条件,合并到导出参数中 + // 1. 处理勾选的行 + if (ids.value.length > 0) { + exportParams.exportIds = ids.value.join(',') + } + + // 2. 【核心修复】直接遍历 columns,只有 visible 为 true 的才允许导出!绝对防漏 + const actualVisibleCols = Object.keys(columns).filter(key => columns[key].visible); + if (actualVisibleCols.length > 0) { + exportParams.visibleColumns = actualVisibleCols.join(',') + } + + // 3. 合并自定义筛选 if (isCustomFilterActive.value && Object.keys(customFilterParams.value).length > 0) { Object.assign(exportParams, customFilterParams.value) } - proxy.download('sheep_file/sheep_file/export', exportParams, `sheep_file_${new Date().getTime()}.xlsx`) + const tipMsg = ids.value.length > 0 ? "是否确认导出选中的数据项?" : "未勾选具体行,是否确认导出当前条件下的所有数据?"; + + proxy.$modal.confirm(tipMsg).then(function() { + proxy.download('sheep_file/sheep_file/export', exportParams, `sheep_file_${new Date().getTime()}.xlsx`) + }).catch(() => {}) } // 打开列设置对话框 From 8a331158e5453f8d3a06cbe26a1a7b3c7cc207ba Mon Sep 17 00:00:00 2001 From: ll <1079863556@qq.com> Date: Thu, 5 Mar 2026 11:29:31 +0800 Subject: [PATCH 3/3] =?UTF-8?q?=E5=A5=B6=E5=93=81=E7=AE=A1=E7=90=86?= =?UTF-8?q?=E9=94=80=E5=94=AE=E7=AE=A1=E7=90=86=E5=9B=BA=E5=AE=9A=E8=A1=A8?= =?UTF-8?q?=E5=A4=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../dryMatterCorrection/index.vue | 92 ++++-- .../freshMilkTest/freshMilkTest/index.vue | 268 ++++++++++-------- .../milkInOutStore/milkInOutStore/index.vue | 90 ++++-- .../milkProdclasses/milkProdclasses/index.vue | 76 +++-- .../dairyProducts/parityCorrection/index.vue | 61 +++- .../rawMilkTest/rawMilkTest/index.vue | 117 +++++--- .../dairyProducts/sheepMilkAnalysis/index.vue | 51 +++- .../dairyProducts/weightCorrection/index.vue | 84 ++++-- .../yogurtTest/yogurtTest/index.vue | 267 +++++++++-------- src/views/sale/customer/index.vue | 93 ++++-- .../sale/saleRecord/saleRecord/index.vue | 143 ++++++---- 11 files changed, 836 insertions(+), 506 deletions(-) diff --git a/src/views/dairyProducts/dryMatterCorrection/index.vue b/src/views/dairyProducts/dryMatterCorrection/index.vue index 4e76b4b..e7f8da9 100644 --- a/src/views/dairyProducts/dryMatterCorrection/index.vue +++ b/src/views/dairyProducts/dryMatterCorrection/index.vue @@ -69,37 +69,40 @@ - - - - - - - - - - - - - - - - - - +
+ + + + + + + + + + + + + + + + + +
+ \ No newline at end of file diff --git a/src/views/dairyProducts/freshMilkTest/freshMilkTest/index.vue b/src/views/dairyProducts/freshMilkTest/freshMilkTest/index.vue index 170c2bf..453262b 100644 --- a/src/views/dairyProducts/freshMilkTest/freshMilkTest/index.vue +++ b/src/views/dairyProducts/freshMilkTest/freshMilkTest/index.vue @@ -75,126 +75,128 @@ - - - - - - - - - - - - - - - - - - - +
+ + + + + + - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + +
{ .el-dialog__body { padding: 15px 20px; } + + +/* 1. 将整个页面容器变为弹性布局,并固定总高度 */ +.app-container { + /* calc(100vh - 84px) 中的 84px 是顶部导航栏和标签栏的大致高度, + 如果你的系统顶部更高或更低,可以适当调整这个数值(例如 100px 或 120px) */ + height: calc(100vh - 84px); + display: flex; + flex-direction: column; + overflow: hidden; +} + +/* 2. 让搜索表单、操作按钮、应用筛选提示、分页组件 不被挤压变形 */ +.el-form, +.mb8, +.applied-filters, +.pagination-container { + flex-shrink: 0; +} + +/* 3. 让刚刚新增的表格包裹层自动撑满中间的所有剩余空间 */ +.table-wrapper { + flex: 1; /* 占据所有剩余空间 */ + min-height: 0; /* 🌟 关键:防止 flex 子项高度无限撑开导致页面出现滚动条 */ + overflow: hidden; + display: flex; + flex-direction: column; +} \ No newline at end of file diff --git a/src/views/dairyProducts/milkInOutStore/milkInOutStore/index.vue b/src/views/dairyProducts/milkInOutStore/milkInOutStore/index.vue index 208e356..8531f54 100644 --- a/src/views/dairyProducts/milkInOutStore/milkInOutStore/index.vue +++ b/src/views/dairyProducts/milkInOutStore/milkInOutStore/index.vue @@ -49,36 +49,38 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + +
{ .mb-4 { margin-bottom: 16px; } + + +/* 1. 将整个页面容器变为弹性布局,并固定总高度 */ +.app-container { + /* calc(100vh - 84px) 中的 84px 是顶部导航栏和标签栏的大致高度, + 如果你的系统顶部更高或更低,可以适当调整这个数值(例如 100px 或 120px) */ + height: calc(100vh - 84px); + display: flex; + flex-direction: column; + overflow: hidden; +} + +/* 2. 让搜索表单、操作按钮、应用筛选提示、分页组件 不被挤压变形 */ +.el-form, +.mb8, +.applied-filters, +.pagination-container { + flex-shrink: 0; +} + +/* 3. 让刚刚新增的表格包裹层自动撑满中间的所有剩余空间 */ +.table-wrapper { + flex: 1; /* 占据所有剩余空间 */ + min-height: 0; /* 🌟 关键:防止 flex 子项高度无限撑开导致页面出现滚动条 */ + overflow: hidden; + display: flex; + flex-direction: column; +} \ No newline at end of file diff --git a/src/views/dairyProducts/milkProdclasses/milkProdclasses/index.vue b/src/views/dairyProducts/milkProdclasses/milkProdclasses/index.vue index 4c13fad..076b754 100644 --- a/src/views/dairyProducts/milkProdclasses/milkProdclasses/index.vue +++ b/src/views/dairyProducts/milkProdclasses/milkProdclasses/index.vue @@ -93,29 +93,31 @@ - - - - - - - - - - - - - - - - - +
+ + + + + + + + + + + + + + + + + +
\ No newline at end of file diff --git a/src/views/dairyProducts/parityCorrection/index.vue b/src/views/dairyProducts/parityCorrection/index.vue index 75155a9..a135583 100644 --- a/src/views/dairyProducts/parityCorrection/index.vue +++ b/src/views/dairyProducts/parityCorrection/index.vue @@ -48,20 +48,22 @@ - - - - - - - - - - - +
+ + + + + + + + + + +
+ \ No newline at end of file + + + \ No newline at end of file diff --git a/src/views/dairyProducts/rawMilkTest/rawMilkTest/index.vue b/src/views/dairyProducts/rawMilkTest/rawMilkTest/index.vue index 215579c..a5f4f78 100644 --- a/src/views/dairyProducts/rawMilkTest/rawMilkTest/index.vue +++ b/src/views/dairyProducts/rawMilkTest/rawMilkTest/index.vue @@ -75,48 +75,50 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ { initVisibleColumns() getList() }) - \ No newline at end of file + + + \ No newline at end of file diff --git a/src/views/dairyProducts/sheepMilkAnalysis/index.vue b/src/views/dairyProducts/sheepMilkAnalysis/index.vue index 6058e7f..2db816c 100644 --- a/src/views/dairyProducts/sheepMilkAnalysis/index.vue +++ b/src/views/dairyProducts/sheepMilkAnalysis/index.vue @@ -67,17 +67,19 @@ 导出 - - - +
+ + + +
\ No newline at end of file diff --git a/src/views/dairyProducts/weightCorrection/index.vue b/src/views/dairyProducts/weightCorrection/index.vue index ba8a12b..84264f0 100644 --- a/src/views/dairyProducts/weightCorrection/index.vue +++ b/src/views/dairyProducts/weightCorrection/index.vue @@ -69,33 +69,35 @@ - - - - - - - - - - - - - - - - - - +
+ + + + + + + + + + + + + + + + + +
+ \ No newline at end of file diff --git a/src/views/dairyProducts/yogurtTest/yogurtTest/index.vue b/src/views/dairyProducts/yogurtTest/yogurtTest/index.vue index 9959ffa..428c390 100644 --- a/src/views/dairyProducts/yogurtTest/yogurtTest/index.vue +++ b/src/views/dairyProducts/yogurtTest/yogurtTest/index.vue @@ -75,126 +75,128 @@ - - - - - - - - - - - - - - - - - - - +
+ + + + + + - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + +
{ .el-dialog__body { padding: 15px 20px; } + +/* 1. 将整个页面容器变为弹性布局,并固定总高度 */ +.app-container { + /* calc(100vh - 84px) 中的 84px 是顶部导航栏和标签栏的大致高度, + 如果你的系统顶部更高或更低,可以适当调整这个数值(例如 100px 或 120px) */ + height: calc(100vh - 84px); + display: flex; + flex-direction: column; + overflow: hidden; +} + +/* 2. 让搜索表单、操作按钮、应用筛选提示、分页组件 不被挤压变形 */ +.el-form, +.mb8, +.applied-filters, +.pagination-container { + flex-shrink: 0; +} + +/* 3. 让刚刚新增的表格包裹层自动撑满中间的所有剩余空间 */ +.table-wrapper { + flex: 1; /* 占据所有剩余空间 */ + min-height: 0; /* 🌟 关键:防止 flex 子项高度无限撑开导致页面出现滚动条 */ + overflow: hidden; + display: flex; + flex-direction: column; +} \ No newline at end of file diff --git a/src/views/sale/customer/index.vue b/src/views/sale/customer/index.vue index 9af626f..a91c2d9 100644 --- a/src/views/sale/customer/index.vue +++ b/src/views/sale/customer/index.vue @@ -70,37 +70,39 @@ - - - - - - - - - - - - - - - - +
+ + + + + + + + + + + + + + + + + + + + + + + +
- - - - - -
- \ No newline at end of file + + + \ No newline at end of file diff --git a/src/views/sale/saleRecord/saleRecord/index.vue b/src/views/sale/saleRecord/saleRecord/index.vue index 10ea8c0..7b40aba 100644 --- a/src/views/sale/saleRecord/saleRecord/index.vue +++ b/src/views/sale/saleRecord/saleRecord/index.vue @@ -180,63 +180,65 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
@@ -815,4 +817,31 @@ function diseaseTypeFormat(row) { background-color: #f5f7fa; border-radius: 4px; } + +/* 1. 将整个页面容器变为弹性布局,并固定总高度 */ +.app-container { + /* calc(100vh - 84px) 中的 84px 是顶部导航栏和标签栏的大致高度, + 如果你的系统顶部更高或更低,可以适当调整这个数值(例如 100px 或 120px) */ + height: calc(100vh - 84px); + display: flex; + flex-direction: column; + overflow: hidden; +} + +/* 2. 让搜索表单、操作按钮、应用筛选提示、分页组件 不被挤压变形 */ +.el-form, +.mb8, +.applied-filters, +.pagination-container { + flex-shrink: 0; +} + +/* 3. 让刚刚新增的表格包裹层自动撑满中间的所有剩余空间 */ +.table-wrapper { + flex: 1; /* 占据所有剩余空间 */ + min-height: 0; /* 🌟 关键:防止 flex 子项高度无限撑开导致页面出现滚动条 */ + overflow: hidden; + display: flex; + flex-direction: column; +} \ No newline at end of file