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 @@
-
-
-
-
- {{ parseTime(scope.row.datetime, '{y}-{m}') }}
-
-
-
-
-
-
-
-
-
-
-
- {{ formatCoefficient(scope.row.coefficient) }}
-
-
-
-
- 修改
- 删除
-
-
-
-
+
+
+
+
+
+ {{ parseTime(scope.row.datetime, '{y}-{m}') }}
+
+
+
+
+
+
+
+
+
+
+
+ {{ formatCoefficient(scope.row.coefficient) }}
+
+
+
+
+ 修改
+ 删除
+
+
+
+
+
\ 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 @@
-
-
-
-
-
- {{ formatDate(scope.row.datetime) }}
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+ {{ formatDate(scope.row.datetime) }}
+
+
-
-
-
-
- {{ formatDateTime(scope.row.createTime) }}
-
-
-
-
- 修改
- 删除
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ {{ formatDateTime(scope.row.createTime) }}
+
+
+
+
+ 修改
+ 删除
+
+
+
+
{
.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 @@
-
-
-
- {{ row.datetime ? row.datetime.substring(0, 10) : '' }}
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+ {{ row.datetime ? row.datetime.substring(0, 10) : '' }}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
{
.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 @@
-
-
-
- {{ parseTime(row.datetime, '{y}-{m}-{d}') }}
-
-
-
-
-
-
-
-
-
-
- {{ row.milk ? Number(row.milk).toFixed(2) : '-' }}
-
-
-
-
- {{ row.correctedMilk ? Number(row.correctedMilk).toFixed(2) : '-' }}
-
-
-
+
+
+
+
+ {{ parseTime(row.datetime, '{y}-{m}-{d}') }}
+
+
+
+
+
+
+
+
+
+
+ {{ row.milk ? Number(row.milk).toFixed(2) : '-' }}
+
+
+
+
+ {{ row.correctedMilk ? Number(row.correctedMilk).toFixed(2) : '-' }}
+
+
+
+
\ 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 @@
-
-
-
-
- {{ parseTime(scope.row.datetime, '{y}-{m}-{d}') }}
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- {{ parseTime(scope.row.createTime, '{y}-{m}-{d} {h}:{i}:{s}') }}
-
-
-
-
- 修改
- 删除
-
-
-
-
+
+
+
+
+
+ {{ parseTime(scope.row.datetime, '{y}-{m}-{d}') }}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ {{ parseTime(scope.row.createTime, '{y}-{m}-{d} {h}:{i}:{s}') }}
+
+
+
+
+ 修改
+ 删除
+
+
+
+
+
{
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 @@
-
-
-
-
- {{ parseTime(scope.row.datetime, '{y}-{m}-{d}') }}
-
-
-
-
-
-
-
-
-
-
-
- {{ scope.row.coefficient ? scope.row.coefficient.toFixed(2) : '' }}
-
-
-
-
- 修改
- 删除
-
-
-
-
+
+
+
+
+
+ {{ parseTime(scope.row.datetime, '{y}-{m}-{d}') }}
+
+
+
+
+
+
+
+
+
+
+
+ {{ scope.row.coefficient ? scope.row.coefficient.toFixed(2) : '' }}
+
+
+
+
+ 修改
+ 删除
+
+
+
+
+
\ 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 @@
-
-
-
-
-
- {{ formatDate(scope.row.datetime) }}
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+ {{ formatDate(scope.row.datetime) }}
+
+
-
-
-
-
- {{ formatDateTime(scope.row.createTime) }}
-
-
-
-
- 修改
- 删除
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ {{ formatDateTime(scope.row.createTime) }}
+
+
+
+
+ 修改
+ 删除
+
+
+
+
{
.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 @@
-
-
-
-
-
-
-
- {{ (scope.row.province || '') + (scope.row.city || '') + (scope.row.district || '') }}
-
-
-
-
-
-
-
-
-
- {{ parseTime(scope.row.createTime, '{y}-{m}-{d}') }}
-
-
+
+
+
+
+
+
+
+
+ {{ (scope.row.province || '') + (scope.row.city || '') + (scope.row.district || '') }}
+
+
+
+
+
+
+
+
+
+ {{ parseTime(scope.row.createTime, '{y}-{m}-{d}') }}
+
+
+
+
+
+
+
+ 修改
+ 删除
+
+
+
+
-
-
-
-
- 修改
- 删除
-
-
-
-
\ 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 @@
-
-
-
-
-
-
- {{ parseTime(scope.row.saleDate, '{y}-{m}-{d}') }}
-
-
-
-
-
-
-
-
-
-
-
- {{ scope.row.unitPrice }}
- 元/kg
- 元
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- {{ parseTime(scope.row.createdAt, '{y}-{m}-{d}') }}
-
-
-
-
-
- 修改
- 删除
-
-
-
+
+
+
+
+
+
+
+ {{ parseTime(scope.row.saleDate, '{y}-{m}-{d}') }}
+
+
+
+
+
+
+
+
+
+
+
+ {{ scope.row.unitPrice }}
+ 元/kg
+ 元
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ {{ parseTime(scope.row.createdAt, '{y}-{m}-{d}') }}
+
+
+
+
+
+ 修改
+ 删除
+
+
+
+
@@ -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