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/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(() => {}) } // 打开列设置对话框 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 @@ 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