新增羊只中羊只类型改为非必填;转场转群部分搜索框去除创建时间和事件类型;三个改**页面的新增,查询,导出完善;每页条数设置;填写数字的字段数可排序

This commit is contained in:
zyh
2025-10-23 16:37:00 +08:00
parent 9c200ba2f5
commit 6483eab3b3
12 changed files with 702 additions and 353 deletions

View File

@@ -1,15 +1,12 @@
<template>
<div class="app-container">
<el-form :model="queryParams" ref="queryRef" :inline="true" v-show="showSearch" label-width="68px">
<!-- <el-form-item label="羊只id" prop="sheepId">
<el-input v-model="queryParams.sheepId" placeholder="请输入羊只id" clearable @keyup.enter="handleQuery" />
</el-form-item> -->
<el-form-item label="创建时间" style="width: 300px">
<el-date-picker v-model="daterangeCreateTime" value-format="YYYY-MM-DD" type="daterange" range-separator="-"
start-placeholder="开始日期" end-placeholder="结束日期"></el-date-picker>
<el-form-item label="事件日期" style="width: 300px">
<el-date-picker v-model="daterangeEventDate" type="daterange" range-separator="-" start-placeholder="开始日期"
end-placeholder="结束日期" value-format="YYYY-MM-DD" />
</el-form-item>
<el-form-item label="耳号" prop="manageTag">
<el-input v-model="queryParams.manageTags" placeholder="请输入耳号" clearable @keyup.enter="handleQuery"
<el-input v-model="queryParams.manageTags" placeholder="请输入管理耳号或电子耳号" clearable @keyup.enter="handleQuery"
style="max-width: 160px;" />
</el-form-item>
<el-form-item label="新耳号" prop="newTag">
@@ -25,6 +22,12 @@
<el-option v-for="fold in sheepfoldOptions" :key="fold.id" :label="fold.sheepfoldName" :value="fold.id" />
</el-select>
</el-form-item>
<el-form-item label="耳号类型" prop="earType">
<el-select v-model="queryParams.earType" placeholder="请选择耳号类型" style="min-width:150px" clearable>
<el-option label="电子耳号" :value="0"></el-option>
<el-option label="管理耳号" :value="1"></el-option>
</el-select>
</el-form-item>
<el-form-item>
<el-button type="primary" icon="Search" @click="handleQuery">搜索</el-button>
<el-button icon="Refresh" @click="resetQuery">重置</el-button>
@@ -53,13 +56,6 @@
<el-table v-loading="loading" :data="changeEarList" @selection-change="handleSelectionChange">
<el-table-column type="selection" width="55" align="center" />
<!-- <el-table-column label="id" align="center" prop="id" />
<el-table-column label="羊只id" align="center" prop="sheepId" /> -->
<el-table-column label="创建时间" align="center" prop="createTime" width="180">
<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="manageTags" />
<el-table-column label="羊舍" align="center" prop="sheepfoldName" />
<el-table-column label="事件类型" align="center" prop="eventType" />
@@ -70,8 +66,19 @@
</el-table-column>
<el-table-column label="新耳号" align="center" prop="newTag" />
<el-table-column label="旧耳号" align="center" prop="oldTag" />
<el-table-column label="事件日期" align="center" prop="eventDate">
<template #default="scope">
<span>{{ parseTime(scope.row.eventDate, '{y}-{m}-{d}') }}</span>
</template>
</el-table-column>
<el-table-column label="技术员" align="center" prop="technician" />
<el-table-column label="备注" align="center" prop="comment" />
<el-table-column label="创建人" align="center" prop="createBy" />
<el-table-column label="创建时间" align="center" prop="createTime" width="180">
<template #default="scope">
<span>{{ parseTime(scope.row.createTime, '{y}-{m}-{d} {h}:{i}') }}</span>
</template>
</el-table-column>
<el-table-column label="操作" align="center" class-name="small-padding fixed-width">
<template #default="scope">
<!-- <el-button link type="primary" icon="Edit" @click="handleUpdate(scope.row)"
@@ -83,14 +90,11 @@
</el-table>
<pagination v-show="total > 0" :total="total" v-model:page="queryParams.pageNum"
v-model:limit="queryParams.pageSize" @pagination="getList" />
v-model:limit="queryParams.pageSize" @pagination="getList" :page-sizes="[20, 50, 100, 200, 500, 1000, 2000]" />
<!-- 添加或修改修改电子耳号记录对话框 -->
<el-dialog :title="title" v-model="open" width="500px" append-to-body>
<el-form ref="changeEarRef" :model="form" :rules="rules" label-width="80px">
<!-- <el-form-item label="羊只id" prop="sheepId">
<el-input v-model="form.sheepId" placeholder="请输入羊只id" />
</el-form-item> -->
<el-form-item label="耳号" prop="earNumber">
<el-input v-model="form.earNumber" placeholder="请输入管理耳号或电子耳号" @change="fetchOldTag" :disabled="!isAddMode" />
</el-form-item>
@@ -106,7 +110,14 @@
<el-form-item label="旧耳号" prop="oldTag">
<el-input v-model="form.oldTag" placeholder="请输入旧耳号/电子耳号" disabled />
</el-form-item>
<el-form-item label="备注" prop="comment" v-if="!isAddMode">
<el-form-item label="技术员" prop="technician">
<el-input v-model="form.technician" placeholder="请输入技术员" :disabled="!isAddMode" />
</el-form-item>
<el-form-item label="事件日期" prop="eventDate">
<el-date-picker v-model="form.eventDate" type="date" placeholder="请选择事件日期" value-format="YYYY-MM-DD"
:disabled="!isAddMode" />
</el-form-item>
<el-form-item label="备注" prop="comment">
<el-input v-model="form.comment" type="textarea" placeholder="请输入内容" :disabled="!isAddMode" />
</el-form-item>
</el-form>
@@ -136,19 +147,23 @@ const total = ref(0)
const title = ref("")
const daterangeCreateTime = ref([])
const isAddMode = ref(true);
const daterangeEventDate = ref([]);
const data = reactive({
form: {},
form: {
technician: null,
eventDate: null
},
queryParams: {
pageNum: 1,
pageSize: 10,
pageSize: 20,
manageTags: null,
// sheepId: null,
sheepfoldId: null,
earType: null,
newTag: null,
oldTag: null,
createTime: null
createTime: null,
earType: null,
},
rules: {
earNumber: [
@@ -163,6 +178,15 @@ const data = reactive({
oldTag: [
{ required: true, message: "请输入旧耳号", trigger: "change" }
],
technician: [
{ required: true, message: "请输入技术员", trigger: "blur" }
],
eventDate: [
{ required: true, message: "请选择事件日期", trigger: "change" }
],
comment: [
{ required: true, message: "请输入备注", trigger: "blur" }
]
}
})
@@ -182,6 +206,10 @@ async function getList() {
queryParams.value.params["beginCreateTime"] = daterangeCreateTime.value[0];
queryParams.value.params["endCreateTime"] = daterangeCreateTime.value[1];
}
if (daterangeEventDate.value && daterangeEventDate.value.length > 0) {
queryParams.value.params["beginEventDate"] = daterangeEventDate.value[0];
queryParams.value.params["endEventDate"] = daterangeEventDate.value[1];
}
const response = await listChangeEar(queryParams.value);
changeEarList.value = response.rows.map(item => {
@@ -202,12 +230,12 @@ function cancel() {
// 表单重置
function reset() {
form.value = {
// id: null,
// sheepId: null,
manageTags: null,
earType: null,
newTag: null,
oldTag: null,
technician: null,
eventDate: null,
comment: null,
createBy: null,
createTime: null
@@ -224,6 +252,7 @@ function handleQuery() {
/** 重置按钮操作 */
function resetQuery() {
daterangeCreateTime.value = []
daterangeEventDate.value = []
queryParams.value.sheepfoldName = null
queryParams.value.manageTags = null
queryParams.value.newTag = null