搜索栏以及表头冻结

This commit is contained in:
zyh
2026-03-01 15:21:11 +08:00
parent 9a6e31a5be
commit 83beadc988
12 changed files with 586 additions and 517 deletions

View File

@@ -1,5 +1,6 @@
<template>
<div class="app-container">
<div class="app-container"
style="height: calc(100vh - 84px); display: flex; flex-direction: column; overflow: hidden;">
<!-- 查询表单 -->
<el-form :model="queryParams" ref="queryRef" :inline="true" v-show="showSearch" label-width="68px">
<el-form-item label="转场日期" style="width: 308px">
@@ -128,53 +129,58 @@
</el-row>
<!-- 列表 -->
<el-table v-loading="loading" :data="transition_infoList" @selection-change="handleSelectionChange">
<el-table-column type="selection" width="55" align="center" />
<el-table-column label="管理耳号" align="center" prop="manageTags" min-width="100" fixed />
<el-table-column label="品种" align="center" prop="varietyName" />
<el-table-column label="事件类型" align="center" prop="eventType" min-width="120" />
<el-table-column label="转场日期" align="center" prop="transitionDate" min-width="150">
<template #default="scope">
<span>{{ parseTime(scope.row.transitionDate, '{y}-{m}-{d}') }}</span>
</template>
</el-table-column>
<el-table-column label="转场类型" align="center" prop="transTypeText" />
<el-table-column label="转入牧场" align="center" prop="transTo" min-width="120" />
<el-table-column label="转出牧场" align="center" prop="transFrom" />
<el-table-column label="羊舍" align="center" prop="sheepfoldName" min-width="120" />
<el-table-column label="技术员" align="center" prop="technician" />
<el-table-column label="创建人" align="center" prop="createBy" />
<el-table-column label="创建时间" align="center" prop="createTime" min-width="130">
<template #default="scope">
<span>{{ parseTime(scope.row.createTime, '{y}-{m}-{d} {h}:{i}') }}</span>
</template>
</el-table-column>
<el-table-column label="备注" align="center" prop="comment" />
<el-table-column label="状态" align="center" prop="status">
<template #default="scope">
<dict-tag :options="status" :value="scope.row.status" />
</template>
</el-table-column>
<!-- <el-table-column label="当前状态" align="center" prop="status" min-width="120">
<div style="flex: 1; overflow: hidden;">
<el-table v-loading="loading" :data="transition_infoList" @selection-change="handleSelectionChange" height="100%"
style="width: 100%">
<el-table-column type="selection" width="55" align="center" />
<el-table-column label="管理耳号" align="center" prop="manageTags" min-width="100" fixed />
<el-table-column label="品种" align="center" prop="varietyName" />
<el-table-column label="事件类型" align="center" prop="eventType" min-width="120" />
<el-table-column label="转场日期" align="center" prop="transitionDate" min-width="150">
<template #default="scope">
<span>{{ parseTime(scope.row.transitionDate, '{y}-{m}-{d}') }}</span>
</template>
</el-table-column>
<el-table-column label="转场类型" align="center" prop="transTypeText" />
<el-table-column label="转入牧场" align="center" prop="transTo" min-width="120" />
<el-table-column label="转出牧场" align="center" prop="transFrom" />
<el-table-column label="羊舍" align="center" prop="sheepfoldName" min-width="120" />
<el-table-column label="技术员" align="center" prop="technician" />
<el-table-column label="创建人" align="center" prop="createBy" />
<el-table-column label="创建时间" align="center" prop="createTime" min-width="130">
<template #default="scope">
<span>{{ parseTime(scope.row.createTime, '{y}-{m}-{d} {h}:{i}') }}</span>
</template>
</el-table-column>
<el-table-column label="备注" align="center" prop="comment" />
<el-table-column label="状态" align="center" prop="status">
<template #default="scope">
<dict-tag :options="status" :value="scope.row.status" />
</template>
</el-table-column>
<!-- <el-table-column label="当前状态" align="center" prop="status" min-width="120">
<template #default="scope">
<span v-if="scope.row.status === 0">待审批</span>
<span v-else-if="scope.row.status === 1 || scope.row.status === 2">审批完成</span>
<span v-else>未知状态</span>
</template>
</el-table-column> -->
<el-table-column label="操作" align="center" min-width="180" fixed="right">
<template #default="scope">
<el-button link type="primary" icon="Edit" @click="handleApprove(scope.row)"
v-hasPermi="['produce:transition_info:approve']" :disabled="scope.row.status !== 0">审批</el-button>
<el-button link type="primary" icon="Delete" @click="handleDelete(scope.row)"
v-hasPermi="['produce:transition_info:remove']">删除</el-button>
</template>
</el-table-column>
</el-table>
<pagination v-show="total > 0" :total="total" v-model:page="queryParams.pageNum"
v-model:limit="queryParams.pageSize" @pagination="getList" :page-sizes="[20, 50, 100, 200, 500, 1000, 2000]" />
<el-table-column label="操作" align="center" min-width="180" fixed="right">
<template #default="scope">
<el-button link type="primary" icon="Edit" @click="handleApprove(scope.row)"
v-hasPermi="['produce:transition_info:approve']" :disabled="scope.row.status !== 0">审批</el-button>
<el-button link type="primary" icon="Delete" @click="handleDelete(scope.row)"
v-hasPermi="['produce:transition_info:remove']">删除</el-button>
</template>
</el-table-column>
</el-table>
</div>
<div style="flex-shrink: 0; padding: 10px 0;">
<pagination v-show="total > 0" :total="total" v-model:page="queryParams.pageNum"
v-model:limit="queryParams.pageSize" @pagination="getList" :page-sizes="[20, 50, 100, 200, 500, 1000, 2000]" />
</div>
<!-- 新增/修改 -->
<el-dialog :title="title" v-model="open" width="700px" append-to-body>
<el-form ref="transition_infoRef" :model="form" :rules="rules" label-width="80px">
@@ -574,7 +580,7 @@ async function loadSheepInfo() {
// 导出
function handleExport() {
queryParams.value.ids = ids.value;
queryParams.value.ids = ids.value;
try {
proxy.download('/produce/manage_sheep/transition_info/export', { ...queryParams.value }, `转场记录${Date.now()}.xlsx`);
} finally {
@@ -694,7 +700,7 @@ async function handleUpdate(row) {
form.value = {
...response.data,
manageTags: [response.data.manageTags],
comment: response.data.comment || ''
comment: response.data.comment || ''
};
open.value = true;
title.value = "修改转场";
@@ -795,10 +801,10 @@ async function handleRanchChange(ranchName) {
batchTags.value = sheepList.map(s => s.manageTags);
batchSheep.value = sheepList;
form.value.manageTags = batchTags.value.join(' ');
// 自动填充转出牧场(当前选中的牧场)
form.value.transFrom = ranchName;
sheepOptions.value = sheepList;
}
/* 粘贴事件 */