新增羊只中羊只类型改为非必填;转场转群部分搜索框去除创建时间和事件类型;三个改**页面的新增,查询,导出完善;每页条数设置;填写数字的字段数可排序
This commit is contained in:
parent
9c200ba2f5
commit
6483eab3b3
@ -16,7 +16,7 @@
|
|||||||
"url": "https://gitee.com/y_project/RuoYi-Vue.git"
|
"url": "https://gitee.com/y_project/RuoYi-Vue.git"
|
||||||
},
|
},
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@element-plus/icons-vue": "^2.3.1",
|
"@element-plus/icons-vue": "^2.3.2",
|
||||||
"@vueup/vue-quill": "1.2.0",
|
"@vueup/vue-quill": "1.2.0",
|
||||||
"@vueuse/core": "10.11.0",
|
"@vueuse/core": "10.11.0",
|
||||||
"axios": "0.28.1",
|
"axios": "0.28.1",
|
||||||
|
|||||||
@ -1,13 +1,10 @@
|
|||||||
<template>
|
<template>
|
||||||
<div class="app-container">
|
<div class="app-container">
|
||||||
<el-form :model="queryParams" ref="queryRef" :inline="true" v-show="showSearch" label-width="68px">
|
<el-form :model="queryParams" ref="queryRef" :inline="true" v-show="showSearch" label-width="68px">
|
||||||
<!-- <el-form-item label="羊只id" prop="sheepId">
|
<!-- <el-form-item label="创建时间" style="width: 308px">
|
||||||
<el-input v-model="queryParams.sheepId" placeholder="请输入羊只id" clearable @keyup.enter="handleQuery" />
|
|
||||||
</el-form-item> -->
|
|
||||||
<el-form-item label="创建时间" style="width: 308px">
|
|
||||||
<el-date-picker v-model="daterangeCreateTime" value-format="YYYY-MM-DD" type="daterange" range-separator="-"
|
<el-date-picker v-model="daterangeCreateTime" value-format="YYYY-MM-DD" type="daterange" range-separator="-"
|
||||||
start-placeholder="开始日期" end-placeholder="结束日期"></el-date-picker>
|
start-placeholder="开始日期" end-placeholder="结束日期"></el-date-picker>
|
||||||
</el-form-item>
|
</el-form-item> -->
|
||||||
<el-form-item label="测量日期" style="width: 308px">
|
<el-form-item label="测量日期" style="width: 308px">
|
||||||
<el-date-picker v-model="daterangeMeasureDate" value-format="YYYY-MM-DD" type="daterange" range-separator="-"
|
<el-date-picker v-model="daterangeMeasureDate" value-format="YYYY-MM-DD" type="daterange" range-separator="-"
|
||||||
start-placeholder="开始日期" end-placeholder="结束日期"></el-date-picker>
|
start-placeholder="开始日期" end-placeholder="结束日期"></el-date-picker>
|
||||||
@ -59,17 +56,7 @@
|
|||||||
|
|
||||||
<el-table v-loading="loading" :data="body_measureList" @selection-change="handleSelectionChange">
|
<el-table v-loading="loading" :data="body_measureList" @selection-change="handleSelectionChange">
|
||||||
<el-table-column type="selection" width="55" align="center" />
|
<el-table-column type="selection" width="55" align="center" />
|
||||||
<el-table-column label="创建时间" align="center" prop="createTime" width="180" fixed>
|
<el-table-column label="管理耳号" align="center" prop="manageTags" min-width="100px" fixed />
|
||||||
<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="measureDate" width="120">
|
|
||||||
<template #default="scope">
|
|
||||||
<span>{{ parseTime(scope.row.measureDate, '{y}-{m}-{d}') }}</span>
|
|
||||||
</template>
|
|
||||||
</el-table-column>
|
|
||||||
<el-table-column label="管理耳号" align="center" prop="manageTags" min-width="100px" />
|
|
||||||
<el-table-column label="羊舍" align="center" prop="sheepfoldName" min-width="100px" />
|
<el-table-column label="羊舍" align="center" prop="sheepfoldName" min-width="100px" />
|
||||||
<el-table-column label="品种" align="center" prop="varietyName" />
|
<el-table-column label="品种" align="center" prop="varietyName" />
|
||||||
<el-table-column label="事件类型" align="center" prop="eventType" width="120" />
|
<el-table-column label="事件类型" align="center" prop="eventType" width="120" />
|
||||||
@ -79,43 +66,270 @@
|
|||||||
<span>{{ genderMap[scope.row.gender] || '未知' }}</span>
|
<span>{{ genderMap[scope.row.gender] || '未知' }}</span>
|
||||||
</template>
|
</template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column label="胎次" align="center" prop="parity" />
|
<el-table-column label="胎次" align="center" prop="parity">
|
||||||
<el-table-column label="出生体重(kg)" align="center" prop="birthWeight" min-width="100px" />
|
<template #header>
|
||||||
<el-table-column label="断奶体重(kg)" align="center" prop="weaningWeight" min-width="100px" />
|
<div style="display: flex; align-items: center; gap: 4px; cursor: pointer;" @click="handleSort('parity')">
|
||||||
<el-table-column label="当前体重(kg)" align="center" prop="currentWeight" min-width="100px" />
|
<span>胎次</span>
|
||||||
<el-table-column label="体高" align="center" prop="height" />
|
<el-icon size="16" style="color: skyblue;">
|
||||||
<el-table-column label="胸围" align="center" prop="bust" />
|
<ArrowUp v-if="!sortStates.parity.isSorting || sortStates.parity.isAsc" />
|
||||||
<el-table-column label="体斜长" align="center" prop="bodyLength" />
|
<ArrowDown v-else />
|
||||||
<el-table-column label="管围" align="center" prop="pipeLength" />
|
</el-icon>
|
||||||
<el-table-column label="胸深" align="center" prop="chestDepth" />
|
</div>
|
||||||
<el-table-column label="臀高" align="center" prop="hipHeight" />
|
</template>
|
||||||
<el-table-column label="尻宽" align="center" prop="rumpWidth" />
|
<template #default="scope">
|
||||||
<el-table-column label="尻高" align="center" prop="rumpHeignt" />
|
<span>{{ scope.row.parity }}</span>
|
||||||
<el-table-column label="腰角宽" align="center" prop="hipWidth" />
|
</template>
|
||||||
<el-table-column label="十字部高" align="center" prop="hipCrossHeight" />
|
</el-table-column>
|
||||||
|
|
||||||
|
<el-table-column label="出生体重(kg)" align="center" prop="birthWeight" min-width="100px">
|
||||||
|
<template #header>
|
||||||
|
<div style="display: flex; align-items: center; gap: 4px; cursor: pointer;"
|
||||||
|
@click="handleSort('birthWeight')">
|
||||||
|
<span>出生体重(kg)</span>
|
||||||
|
<el-icon size="16" style="color: skyblue;">
|
||||||
|
<ArrowUp v-if="!sortStates.birthWeight.isSorting || sortStates.birthWeight.isAsc" />
|
||||||
|
<ArrowDown v-else />
|
||||||
|
</el-icon>
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
<template #default="scope">
|
||||||
|
<span>{{ scope.row.birthWeight }}</span>
|
||||||
|
</template>
|
||||||
|
</el-table-column>
|
||||||
|
<el-table-column label="断奶体重(kg)" align="center" prop="weaningWeight" min-width="100px">
|
||||||
|
<template #header>
|
||||||
|
<div style="display: flex; align-items: center; gap: 4px; cursor: pointer;"
|
||||||
|
@click="handleSort('weaningWeight')">
|
||||||
|
<span>断奶体重(kg)</span>
|
||||||
|
<el-icon size="16" style="color: skyblue;">
|
||||||
|
<ArrowUp v-if="!sortStates.weaningWeight.isSorting || sortStates.weaningWeight.isAsc" />
|
||||||
|
<ArrowDown v-else />
|
||||||
|
</el-icon>
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
<template #default="scope">
|
||||||
|
<span>{{ scope.row.weaningWeight }}</span>
|
||||||
|
</template>
|
||||||
|
</el-table-column>
|
||||||
|
<el-table-column label="当前体重(kg)" align="center" prop="currentWeight" min-width="100px">
|
||||||
|
<template #header>
|
||||||
|
<div style="display: flex; align-items: center; gap: 4px; cursor: pointer;"
|
||||||
|
@click="handleSort('currentWeight')">
|
||||||
|
<span>当前体重(kg)</span>
|
||||||
|
<el-icon size="16" style="color: skyblue;">
|
||||||
|
<ArrowUp v-if="!sortStates.currentWeight.isSorting || sortStates.currentWeight.isAsc" />
|
||||||
|
<ArrowDown v-else />
|
||||||
|
</el-icon>
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
<template #default="scope">
|
||||||
|
<span>{{ scope.row.currentWeight }}</span>
|
||||||
|
</template>
|
||||||
|
</el-table-column>
|
||||||
|
<el-table-column label="体高" align="center" prop="height">
|
||||||
|
<template #header>
|
||||||
|
<div style="display: flex; align-items: center; gap: 4px; cursor: pointer;" @click="handleSort('height')">
|
||||||
|
<span>体高</span>
|
||||||
|
<el-icon size="16" style="color: skyblue;">
|
||||||
|
<ArrowUp v-if="!sortStates.height.isSorting || sortStates.height.isAsc" />
|
||||||
|
<ArrowDown v-else />
|
||||||
|
</el-icon>
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
<template #default="scope">
|
||||||
|
<span>{{ scope.row.height }}</span>
|
||||||
|
</template>
|
||||||
|
</el-table-column>
|
||||||
|
<el-table-column label="胸围" align="center" prop="bust">
|
||||||
|
<template #header>
|
||||||
|
<div style="display: flex; align-items: center; gap: 4px; cursor: pointer;" @click="handleSort('bust')">
|
||||||
|
<span>胸围</span>
|
||||||
|
<el-icon size="16" style="color: skyblue;">
|
||||||
|
<ArrowUp v-if="!sortStates.bust.isSorting || sortStates.bust.isAsc" />
|
||||||
|
<ArrowDown v-else />
|
||||||
|
</el-icon>
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
<template #default="scope">
|
||||||
|
<span>{{ scope.row.bust }}</span>
|
||||||
|
</template>
|
||||||
|
</el-table-column>
|
||||||
|
<el-table-column label="体斜长" align="center" prop="bodyLength">
|
||||||
|
<template #header>
|
||||||
|
<div style="display: flex; align-items: center; gap: 4px; cursor: pointer;" @click="handleSort('bodyLength')">
|
||||||
|
<span>体斜长</span>
|
||||||
|
<el-icon size="16" style="color: skyblue;">
|
||||||
|
<ArrowUp v-if="!sortStates.bodyLength.isSorting || sortStates.bodyLength.isAsc" />
|
||||||
|
<ArrowDown v-else />
|
||||||
|
</el-icon>
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
<template #default="scope">
|
||||||
|
<span>{{ scope.row.bodyLength }}</span>
|
||||||
|
</template>
|
||||||
|
</el-table-column>
|
||||||
|
<el-table-column label="管围" align="center" prop="pipeLength">
|
||||||
|
<template #header>
|
||||||
|
<div style="display: flex; align-items: center; gap: 4px; cursor: pointer;" @click="handleSort('pipeLength')">
|
||||||
|
<span>管围</span>
|
||||||
|
<el-icon size="16" style="color: skyblue;">
|
||||||
|
<ArrowUp v-if="!sortStates.pipeLength.isSorting || sortStates.pipeLength.isAsc" />
|
||||||
|
<ArrowDown v-else />
|
||||||
|
</el-icon>
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
<template #default="scope">
|
||||||
|
<span>{{ scope.row.pipeLength }}</span>
|
||||||
|
</template>
|
||||||
|
</el-table-column>
|
||||||
|
<el-table-column label="胸深" align="center" prop="chestDepth">
|
||||||
|
<template #header>
|
||||||
|
<div style="display: flex; align-items: center; gap: 4px; cursor: pointer;" @click="handleSort('chestDepth')">
|
||||||
|
<span>胸深</span>
|
||||||
|
<el-icon size="16" style="color: skyblue;">
|
||||||
|
<ArrowUp v-if="!sortStates.chestDepth.isSorting || sortStates.chestDepth.isAsc" />
|
||||||
|
<ArrowDown v-else />
|
||||||
|
</el-icon>
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
<template #default="scope">
|
||||||
|
<span>{{ scope.row.chestDepth }}</span>
|
||||||
|
</template>
|
||||||
|
</el-table-column>
|
||||||
|
<el-table-column label="臀高" align="center" prop="hipHeight">
|
||||||
|
<template #header>
|
||||||
|
<div style="display: flex; align-items: center; gap: 4px; cursor: pointer;" @click="handleSort('hipHeight')">
|
||||||
|
<span>臀高</span>
|
||||||
|
<el-icon size="16" style="color: skyblue;">
|
||||||
|
<ArrowUp v-if="!sortStates.hipHeight.isSorting || sortStates.hipHeight.isAsc" />
|
||||||
|
<ArrowDown v-else />
|
||||||
|
</el-icon>
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
<template #default="scope">
|
||||||
|
<span>{{ scope.row.hipHeight }}</span>
|
||||||
|
</template>
|
||||||
|
</el-table-column>
|
||||||
|
<el-table-column label="尻宽" align="center" prop="rumpWidth">
|
||||||
|
<template #header>
|
||||||
|
<div style="display: flex; align-items: center; gap: 4px; cursor: pointer;" @click="handleSort('rumpWidth')">
|
||||||
|
<span>尻宽</span>
|
||||||
|
<el-icon size="16" style="color: skyblue;">
|
||||||
|
<ArrowUp v-if="!sortStates.rumpWidth.isSorting || sortStates.rumpWidth.isAsc" />
|
||||||
|
<ArrowDown v-else />
|
||||||
|
</el-icon>
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
<template #default="scope">
|
||||||
|
<span>{{ scope.row.rumpWidth }}</span>
|
||||||
|
</template>
|
||||||
|
</el-table-column>
|
||||||
|
<el-table-column label="尻高" align="center" prop="rumpHeignt">
|
||||||
|
<template #header>
|
||||||
|
<div style="display: flex; align-items: center; gap: 4px; cursor: pointer;" @click="handleSort('rumpHeignt')">
|
||||||
|
<span>尻高</span>
|
||||||
|
<el-icon size="16" style="color: skyblue;">
|
||||||
|
<ArrowUp v-if="!sortStates.rumpHeignt.isSorting || sortStates.rumpHeignt.isAsc" />
|
||||||
|
<ArrowDown v-else />
|
||||||
|
</el-icon>
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
<template #default="scope">
|
||||||
|
<span>{{ scope.row.rumpHeignt }}</span>
|
||||||
|
</template>
|
||||||
|
</el-table-column>
|
||||||
|
<el-table-column label="腰角宽" align="center" prop="hipWidth">
|
||||||
|
<template #header>
|
||||||
|
<div style="display: flex; align-items: center; gap: 4px; cursor: pointer;" @click="handleSort('hipWidth')">
|
||||||
|
<span>腰角宽</span>
|
||||||
|
<el-icon size="16" style="color: skyblue;">
|
||||||
|
<ArrowUp v-if="!sortStates.hipWidth.isSorting || sortStates.hipWidth.isAsc" />
|
||||||
|
<ArrowDown v-else />
|
||||||
|
</el-icon>
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
<template #default="scope">
|
||||||
|
<span>{{ scope.row.hipWidth }}</span>
|
||||||
|
</template>
|
||||||
|
</el-table-column>
|
||||||
|
<el-table-column label="十字部高" align="center" prop="hipCrossHeight">
|
||||||
|
<template #header>
|
||||||
|
<div style="display: flex; align-items: center; gap: 4px; cursor: pointer;"
|
||||||
|
@click="handleSort('hipCrossHeight')">
|
||||||
|
<span>十字部高</span>
|
||||||
|
<el-icon size="16" style="color: skyblue;">
|
||||||
|
<ArrowUp v-if="!sortStates.hipCrossHeight.isSorting || sortStates.hipCrossHeight.isAsc" />
|
||||||
|
<ArrowDown v-else />
|
||||||
|
</el-icon>
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
<template #default="scope">
|
||||||
|
<span>{{ scope.row.hipCrossHeight }}</span>
|
||||||
|
</template>
|
||||||
|
</el-table-column>
|
||||||
<el-table-column label="繁育状态" align="center" prop="breedStatusName" width="100">
|
<el-table-column label="繁育状态" align="center" prop="breedStatusName" width="100">
|
||||||
<template #default="scope">
|
<template #default="scope">
|
||||||
<span>{{ scope.row.breedStatusName || '未设置' }}</span>
|
<span>{{ scope.row.breedStatusName || '未设置' }}</span>
|
||||||
</template>
|
</template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column label="泌乳天数" align="center" prop="lactationDay" width="100">
|
<el-table-column label="泌乳天数" align="center" prop="lactationDay" width="100">
|
||||||
|
<template #header>
|
||||||
|
<div style="display: flex; align-items: center; gap: 4px; cursor: pointer;"
|
||||||
|
@click="handleSort('lactationDay')">
|
||||||
|
<span>泌乳天数</span>
|
||||||
|
<el-icon size="16" style="color: skyblue;">
|
||||||
|
<ArrowUp v-if="!sortStates.lactationDay.isSorting || sortStates.lactationDay.isAsc" />
|
||||||
|
<ArrowDown v-else />
|
||||||
|
</el-icon>
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
<template #default="scope">
|
<template #default="scope">
|
||||||
<span>{{ scope.row.lactationDay || '-' }}</span>
|
<span>{{ scope.row.lactationDay || '-' }}</span>
|
||||||
</template>
|
</template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column label="怀孕天数" align="center" prop="gestationDay" width="100">
|
<el-table-column label="怀孕天数" align="center" prop="gestationDay" width="100">
|
||||||
|
<template #header>
|
||||||
|
<div style="display: flex; align-items: center; gap: 4px; cursor: pointer;"
|
||||||
|
@click="handleSort('gestationDay')">
|
||||||
|
<span>怀孕天数</span>
|
||||||
|
<el-icon size="16" style="color: skyblue;">
|
||||||
|
<ArrowUp v-if="!sortStates.gestationDay.isSorting || sortStates.gestationDay.isAsc" />
|
||||||
|
<ArrowDown v-else />
|
||||||
|
</el-icon>
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
<template #default="scope">
|
<template #default="scope">
|
||||||
<span>{{ scope.row.gestationDay || '-' }}</span>
|
<span>{{ scope.row.gestationDay || '-' }}</span>
|
||||||
</template>
|
</template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column label="配后天数" align="center" prop="postMatingDay" width="100">
|
<el-table-column label="配后天数" align="center" prop="postMatingDay" width="100">
|
||||||
|
<template #header>
|
||||||
|
<div style="display: flex; align-items: center; gap: 4px; cursor: pointer;"
|
||||||
|
@click="handleSort('postMatingDay')">
|
||||||
|
<span>配后天数</span>
|
||||||
|
<el-icon size="16" style="color: skyblue;">
|
||||||
|
<ArrowUp v-if="!sortStates.postMatingDay.isSorting || sortStates.postMatingDay.isAsc" />
|
||||||
|
<ArrowDown v-else />
|
||||||
|
</el-icon>
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
<template #default="scope">
|
<template #default="scope">
|
||||||
<span>{{ scope.row.postMatingDay || '-' }}</span>
|
<span>{{ scope.row.postMatingDay || '-' }}</span>
|
||||||
</template>
|
</template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column label="备注" align="center" prop="comment" min-width="100px" />
|
<el-table-column label="备注" align="center" prop="comment" min-width="100px" />
|
||||||
<el-table-column label="技术员" align="center" prop="technician" />
|
<el-table-column label="技术员" align="center" prop="technician" />
|
||||||
|
<el-table-column label="测量日期" align="center" prop="measureDate" width="120">
|
||||||
|
<template #default="scope">
|
||||||
|
<span>{{ parseTime(scope.row.measureDate, '{y}-{m}-{d}') }}</span>
|
||||||
|
</template>
|
||||||
|
</el-table-column>
|
||||||
<el-table-column label="创建人" align="center" prop="createBy" />
|
<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" fixed="right" min-width="130px">
|
<el-table-column label="操作" align="center" class-name="small-padding fixed-width" fixed="right" min-width="130px">
|
||||||
<template #default="scope">
|
<template #default="scope">
|
||||||
<el-button link type="primary" icon="Edit" @click="handleUpdate(scope.row)"
|
<el-button link type="primary" icon="Edit" @click="handleUpdate(scope.row)"
|
||||||
@ -127,7 +341,7 @@
|
|||||||
</el-table>
|
</el-table>
|
||||||
|
|
||||||
<pagination v-show="total > 0" :total="total" v-model:page="queryParams.pageNum"
|
<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="700px" append-to-body>
|
<el-dialog :title="title" v-model="open" width="700px" append-to-body>
|
||||||
@ -212,6 +426,8 @@ import { getSheepByManageTags } from "@/api/produce/manage_sheep/changeVariety"
|
|||||||
import { listSheepfold_management as listSheepfold } from '@/api/fileManagement/sheepfold_management'
|
import { listSheepfold_management as listSheepfold } from '@/api/fileManagement/sheepfold_management'
|
||||||
import { getVarietyOptions } from '@/api/produce/other/fixHoof'
|
import { getVarietyOptions } from '@/api/produce/other/fixHoof'
|
||||||
import { getCurrentInstance } from 'vue'
|
import { getCurrentInstance } from 'vue'
|
||||||
|
import { ArrowUp, ArrowDown } from '@element-plus/icons-vue'
|
||||||
|
|
||||||
const { proxy } = getCurrentInstance()
|
const { proxy } = getCurrentInstance()
|
||||||
|
|
||||||
const body_measureList = ref([])
|
const body_measureList = ref([])
|
||||||
@ -237,7 +453,7 @@ const data = reactive({
|
|||||||
form: { manageTags: null, technician: null },
|
form: { manageTags: null, technician: null },
|
||||||
queryParams: {
|
queryParams: {
|
||||||
pageNum: 1,
|
pageNum: 1,
|
||||||
pageSize: 10,
|
pageSize: 20,
|
||||||
sheepId: null,
|
sheepId: null,
|
||||||
sheepfoldId: null,
|
sheepfoldId: null,
|
||||||
varietyId: null,
|
varietyId: null,
|
||||||
@ -262,7 +478,20 @@ const data = reactive({
|
|||||||
|
|
||||||
const { queryParams, form, rules } = toRefs(data)
|
const { queryParams, form, rules } = toRefs(data)
|
||||||
|
|
||||||
/** 查询体尺测量列表 */
|
const [smFields, bsFields] = [
|
||||||
|
// sc_body_measure 表字段
|
||||||
|
['height', 'bust', 'bodyLength', 'pipeLength', 'chestDepth', 'hipHeight', 'rumpWidth', 'rumpHeignt', 'hipWidth', 'hipCrossHeight'],
|
||||||
|
// bas_sheep 表字段
|
||||||
|
['parity', 'birthWeight', 'weaningWeight', 'currentWeight', 'lactationDay', 'gestationDay', 'postMatingDay']
|
||||||
|
];
|
||||||
|
|
||||||
|
// 排序状态
|
||||||
|
const sortStates = reactive({
|
||||||
|
...smFields.reduce((obj, field) => ({ ...obj, [field]: { isSorting: false, isAsc: true } }), {}),
|
||||||
|
...bsFields.reduce((obj, field) => ({ ...obj, [field]: { isSorting: false, isAsc: true } }), {})
|
||||||
|
});
|
||||||
|
|
||||||
|
//查询体尺测量列表
|
||||||
function getList() {
|
function getList() {
|
||||||
loading.value = true
|
loading.value = true
|
||||||
queryParams.value.params = {}
|
queryParams.value.params = {}
|
||||||
@ -281,6 +510,23 @@ function getList() {
|
|||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 通用排序方法(所有需要排序的列共用)
|
||||||
|
* @param {String} prop - 排序字段
|
||||||
|
*/
|
||||||
|
function handleSort(prop) {
|
||||||
|
Object.keys(sortStates).forEach(key => {
|
||||||
|
sortStates[key].isSorting = false;
|
||||||
|
});
|
||||||
|
const current = sortStates[prop];
|
||||||
|
current.isSorting = true;
|
||||||
|
current.isAsc = !current.isAsc;
|
||||||
|
queryParams.value.orderBy = prop;
|
||||||
|
queryParams.value.sortDirection = current.isAsc ? 'ASC' : 'DESC';
|
||||||
|
queryParams.value.pageNum = 1;
|
||||||
|
getList();
|
||||||
|
}
|
||||||
|
|
||||||
// 耳号脱焦验证
|
// 耳号脱焦验证
|
||||||
function onManageTagsBlur() {
|
function onManageTagsBlur() {
|
||||||
const tag = form.value.manageTags?.trim();
|
const tag = form.value.manageTags?.trim();
|
||||||
@ -351,6 +597,12 @@ function resetQuery() {
|
|||||||
data.varietyName = '';
|
data.varietyName = '';
|
||||||
daterangeMeasureDate.value = [];
|
daterangeMeasureDate.value = [];
|
||||||
proxy.resetForm("queryRef");
|
proxy.resetForm("queryRef");
|
||||||
|
Object.keys(sortStates).forEach(key => {
|
||||||
|
sortStates[key].isSorting = false
|
||||||
|
sortStates[key].isAsc = true
|
||||||
|
})
|
||||||
|
queryParams.value.orderBy = null;
|
||||||
|
queryParams.value.sortDirection = null;
|
||||||
handleQuery();
|
handleQuery();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@ -1,13 +1,10 @@
|
|||||||
<template>
|
<template>
|
||||||
<div class="app-container">
|
<div class="app-container">
|
||||||
<el-form :model="queryParams" ref="queryRef" :inline="true" v-show="showSearch" label-width="68px">
|
<el-form :model="queryParams" ref="queryRef" :inline="true" v-show="showSearch" label-width="68px">
|
||||||
<!-- <el-form-item label="羊只id" prop="sheepId">
|
<!-- <el-form-item label="创建时间" style="width: 308px">
|
||||||
<el-input v-model="queryParams.sheepId" placeholder="请输入羊只id" clearable @keyup.enter="handleQuery" />
|
|
||||||
</el-form-item> -->
|
|
||||||
<el-form-item label="创建时间" style="width: 308px">
|
|
||||||
<el-date-picker v-model="daterangeCreateTime" value-format="YYYY-MM-DD" type="daterange" range-separator="-"
|
<el-date-picker v-model="daterangeCreateTime" value-format="YYYY-MM-DD" type="daterange" range-separator="-"
|
||||||
start-placeholder="开始日期" end-placeholder="结束日期"></el-date-picker>
|
start-placeholder="开始日期" end-placeholder="结束日期"></el-date-picker>
|
||||||
</el-form-item>
|
</el-form-item> -->
|
||||||
<el-form-item label="事件日期" style="width: 308px">
|
<el-form-item label="事件日期" style="width: 308px">
|
||||||
<el-date-picker v-model="daterangeDatetime" value-format="YYYY-MM-DD" type="daterange" range-separator="-"
|
<el-date-picker v-model="daterangeDatetime" value-format="YYYY-MM-DD" type="daterange" range-separator="-"
|
||||||
start-placeholder="开始日期" end-placeholder="结束日期"></el-date-picker>
|
start-placeholder="开始日期" end-placeholder="结束日期"></el-date-picker>
|
||||||
@ -58,27 +55,37 @@
|
|||||||
|
|
||||||
<el-table v-loading="loading" :data="body_scoreList" @selection-change="handleSelectionChange">
|
<el-table v-loading="loading" :data="body_scoreList" @selection-change="handleSelectionChange">
|
||||||
<el-table-column type="selection" width="55" align="center" />
|
<el-table-column type="selection" width="55" align="center" />
|
||||||
<!-- <el-table-column label="${comment}" align="center" prop="id" /> -->
|
<el-table-column label="管理耳号" align="center" prop="manageTags" min-width="100px" fixed />
|
||||||
<!-- <el-table-column label="羊只id" align="center" prop="sheepId" /> -->
|
<el-table-column label="品种" align="center" prop="varietyName" />
|
||||||
<el-table-column label="创建时间" align="center" prop="createTime" min-width="130px" fixed>
|
<el-table-column label="事件类型" align="center" prop="eventType" />
|
||||||
<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="datetime" min-width="120px">
|
<el-table-column label="事件日期" align="center" prop="datetime" min-width="120px">
|
||||||
<template #default="scope">
|
<template #default="scope">
|
||||||
<span>{{ parseTime(scope.row.datetime, '{y}-{m}-{d}') }}</span>
|
<span>{{ parseTime(scope.row.datetime, '{y}-{m}-{d}') }}</span>
|
||||||
</template>
|
</template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column label="管理耳号" align="center" prop="manageTags" min-width="100px" />
|
<el-table-column label="体况评分" align="center" prop="score" min-width="100px">
|
||||||
<el-table-column label="品种" align="center" prop="varietyName" />
|
<template #header>
|
||||||
<el-table-column label="事件类型" align="center" prop="eventType" />
|
<div style="display: flex; align-items: center; gap: 8px; cursor: pointer;" @click="handleScoreSort">
|
||||||
<el-table-column label="体况评分" align="center" prop="score" />
|
<span>体况评分</span>
|
||||||
<!-- <el-table-column label="羊舍id" align="center" prop="sheepfold" /> -->
|
<el-icon size="16" style="color: skyblue;">
|
||||||
|
<ArrowUp v-if="!sortByScore || sortScoreAsc" />
|
||||||
|
<ArrowDown v-else />
|
||||||
|
</el-icon>
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
<template #default="scope">
|
||||||
|
<span>{{ scope.row.score }}</span>
|
||||||
|
</template>
|
||||||
|
</el-table-column>
|
||||||
<el-table-column label="羊舍" align="center" prop="sheepfoldName" min-width="100px" />
|
<el-table-column label="羊舍" align="center" prop="sheepfoldName" min-width="100px" />
|
||||||
<el-table-column label="备注" align="center" prop="comment" min-width="130px" />
|
<el-table-column label="备注" align="center" prop="comment" min-width="130px" />
|
||||||
<el-table-column label="技术员" align="center" prop="technician" />
|
<el-table-column label="技术员" align="center" prop="technician" />
|
||||||
<el-table-column label="创建人" align="center" prop="createBy" />
|
<el-table-column label="创建人" align="center" prop="createBy" />
|
||||||
|
<el-table-column label="创建时间" align="center" prop="createTime" min-width="130px">
|
||||||
|
<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" min-width="150px" fixed="right">
|
<el-table-column label="操作" align="center" class-name="small-padding fixed-width" min-width="150px" fixed="right">
|
||||||
<template #default="scope">
|
<template #default="scope">
|
||||||
<!-- <el-button link type="primary" icon="Edit" @click="handleUpdate(scope.row)"
|
<!-- <el-button link type="primary" icon="Edit" @click="handleUpdate(scope.row)"
|
||||||
@ -90,14 +97,11 @@
|
|||||||
</el-table>
|
</el-table>
|
||||||
|
|
||||||
<pagination v-show="total > 0" :total="total" v-model:page="queryParams.pageNum"
|
<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-dialog :title="title" v-model="open" width="500px" append-to-body>
|
||||||
<el-form ref="body_scoreRef" :model="form" :rules="rules" label-width="80px">
|
<el-form ref="body_scoreRef" :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="manageTags">
|
<el-form-item label="管理耳号" prop="manageTags">
|
||||||
<el-input v-model="form.manageTags" placeholder="请输入管理耳号" @blur="onManageTagsBlur" :disabled="!isAdd"
|
<el-input v-model="form.manageTags" placeholder="请输入管理耳号" @blur="onManageTagsBlur" :disabled="!isAdd"
|
||||||
clearable />
|
clearable />
|
||||||
@ -115,9 +119,6 @@
|
|||||||
<el-option v-for="item in sheepfoldList" :key="item.id" :label="item.sheepfoldName" :value="item.id" />
|
<el-option v-for="item in sheepfoldList" :key="item.id" :label="item.sheepfoldName" :value="item.id" />
|
||||||
</el-select>
|
</el-select>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<!-- <el-form-item label="羊舍id" prop="sheepfold">
|
|
||||||
<el-input v-model="form.sheepfold" placeholder="请输入羊舍id" :disabled="!isAdd" />
|
|
||||||
</el-form-item> -->
|
|
||||||
<el-form-item label="备注" v-if="!isAdd">
|
<el-form-item label="备注" v-if="!isAdd">
|
||||||
<el-input v-model="form.comment" disabled type="textarea" rows="2" />
|
<el-input v-model="form.comment" disabled type="textarea" rows="2" />
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
@ -140,6 +141,7 @@ import { listBody_score, getBody_score, delBody_score, addBody_score, updateBody
|
|||||||
import { listSheepfold_management as listSheepfold } from '@/api/fileManagement/sheepfold_management'
|
import { listSheepfold_management as listSheepfold } from '@/api/fileManagement/sheepfold_management'
|
||||||
import { checkSheepByManageTags, getVarietyOptions } from "@/api/produce/other/fixHoof"
|
import { checkSheepByManageTags, getVarietyOptions } from "@/api/produce/other/fixHoof"
|
||||||
import { getCurrentInstance, ref, reactive, toRefs } from 'vue'
|
import { getCurrentInstance, ref, reactive, toRefs } from 'vue'
|
||||||
|
import { ArrowUp, ArrowDown } from '@element-plus/icons-vue'
|
||||||
|
|
||||||
const { proxy } = getCurrentInstance()
|
const { proxy } = getCurrentInstance()
|
||||||
|
|
||||||
@ -156,6 +158,8 @@ const daterangeDatetime = ref([])
|
|||||||
const daterangeCreateTime = ref([])
|
const daterangeCreateTime = ref([])
|
||||||
const sheepfoldList = ref([])
|
const sheepfoldList = ref([])
|
||||||
const isAdd = ref(false)
|
const isAdd = ref(false)
|
||||||
|
const sortByScore = ref(false)
|
||||||
|
const sortScoreAsc = ref(true)
|
||||||
|
|
||||||
const data = reactive({
|
const data = reactive({
|
||||||
form: {
|
form: {
|
||||||
@ -169,7 +173,7 @@ const data = reactive({
|
|||||||
},
|
},
|
||||||
queryParams: {
|
queryParams: {
|
||||||
pageNum: 1,
|
pageNum: 1,
|
||||||
pageSize: 10,
|
pageSize: 20,
|
||||||
manageTags: null,
|
manageTags: null,
|
||||||
varietyId: null,
|
varietyId: null,
|
||||||
sheepfold: null,
|
sheepfold: null,
|
||||||
@ -206,6 +210,13 @@ function getList() {
|
|||||||
queryParams.value.params["beginCreateTime"] = daterangeCreateTime.value[0]
|
queryParams.value.params["beginCreateTime"] = daterangeCreateTime.value[0]
|
||||||
queryParams.value.params["endCreateTime"] = daterangeCreateTime.value[1]
|
queryParams.value.params["endCreateTime"] = daterangeCreateTime.value[1]
|
||||||
}
|
}
|
||||||
|
if (sortByScore.value) {
|
||||||
|
queryParams.value.orderBy = "score";
|
||||||
|
queryParams.value.sortDirection = sortScoreAsc.value ? "ASC" : "DESC";
|
||||||
|
} else {
|
||||||
|
queryParams.value.orderBy = null;
|
||||||
|
queryParams.value.sortDirection = null;
|
||||||
|
}
|
||||||
listBody_score(queryParams.value).then(response => {
|
listBody_score(queryParams.value).then(response => {
|
||||||
body_scoreList.value = response.rows
|
body_scoreList.value = response.rows
|
||||||
total.value = response.total
|
total.value = response.total
|
||||||
@ -243,6 +254,18 @@ function onManageTagsBlur() {
|
|||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
//体况评分排序
|
||||||
|
function handleScoreSort() {
|
||||||
|
if (sortByScore.value) {
|
||||||
|
sortScoreAsc.value = !sortScoreAsc.value;
|
||||||
|
} else {
|
||||||
|
sortByScore.value = true;
|
||||||
|
sortScoreAsc.value = true;
|
||||||
|
}
|
||||||
|
queryParams.value.pageNum = 1;
|
||||||
|
getList();
|
||||||
|
}
|
||||||
|
|
||||||
//加载羊舍数据
|
//加载羊舍数据
|
||||||
const sheepfoldOptions = ref([])
|
const sheepfoldOptions = ref([])
|
||||||
function getSheepfoldOptions() {
|
function getSheepfoldOptions() {
|
||||||
@ -285,6 +308,8 @@ function resetQuery() {
|
|||||||
daterangeCreateTime.value = []
|
daterangeCreateTime.value = []
|
||||||
queryParams.value.varietyId = null;
|
queryParams.value.varietyId = null;
|
||||||
proxy.resetForm("queryRef")
|
proxy.resetForm("queryRef")
|
||||||
|
sortByScore.value = false;
|
||||||
|
sortScoreAsc.value = true;
|
||||||
handleQuery()
|
handleQuery()
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@ -1,13 +1,10 @@
|
|||||||
<template>
|
<template>
|
||||||
<div class="app-container">
|
<div class="app-container">
|
||||||
<el-form :model="queryParams" ref="queryRef" :inline="true" v-show="showSearch" label-width="68px">
|
<el-form :model="queryParams" ref="queryRef" :inline="true" v-show="showSearch" label-width="68px">
|
||||||
<!-- <el-form-item label="羊只id" prop="sheepId">
|
<!-- <el-form-item label="创建时间" style="width: 308px">
|
||||||
<el-input v-model="queryParams.sheepId" placeholder="请输入羊只id" clearable @keyup.enter="handleQuery" />
|
|
||||||
</el-form-item> -->
|
|
||||||
<el-form-item label="创建时间" style="width: 308px">
|
|
||||||
<el-date-picker v-model="daterangeCreateTime" value-format="YYYY-MM-DD" type="daterange" range-separator="-"
|
<el-date-picker v-model="daterangeCreateTime" value-format="YYYY-MM-DD" type="daterange" range-separator="-"
|
||||||
start-placeholder="开始日期" end-placeholder="结束日期"></el-date-picker>
|
start-placeholder="开始日期" end-placeholder="结束日期"></el-date-picker>
|
||||||
</el-form-item>
|
</el-form-item> -->
|
||||||
<el-form-item label="事件日期" style="width: 308px">
|
<el-form-item label="事件日期" style="width: 308px">
|
||||||
<el-date-picker v-model="daterangeEventDate" value-format="YYYY-MM-DD" type="daterange" range-separator="-"
|
<el-date-picker v-model="daterangeEventDate" value-format="YYYY-MM-DD" type="daterange" range-separator="-"
|
||||||
start-placeholder="开始日期" end-placeholder="结束日期"></el-date-picker>
|
start-placeholder="开始日期" end-placeholder="结束日期"></el-date-picker>
|
||||||
@ -53,29 +50,68 @@
|
|||||||
|
|
||||||
<el-table v-loading="loading" :data="breast_ratingList" @selection-change="handleSelectionChange">
|
<el-table v-loading="loading" :data="breast_ratingList" @selection-change="handleSelectionChange">
|
||||||
<el-table-column type="selection" width="55" align="center" />
|
<el-table-column type="selection" width="55" align="center" />
|
||||||
<el-table-column label="创建时间" align="center" prop="createTime" min-width="150" fixed>
|
<el-table-column label="管理耳号" align="center" prop="manageTags" min-width="100px" fixed />
|
||||||
<template #default="scope">
|
<el-table-column label="品种" align="center" prop="varietyName" />
|
||||||
<span>{{ parseTime(scope.row.createTime, '{y}-{m}-{d} {h}:{i}') }}</span>
|
<el-table-column label="事件类型" align="center" prop="eventType" />
|
||||||
</template>
|
|
||||||
</el-table-column>
|
|
||||||
<el-table-column label="事件日期" align="center" prop="eventDate" min-width="120px">
|
<el-table-column label="事件日期" align="center" prop="eventDate" min-width="120px">
|
||||||
<template #default="scope">
|
<template #default="scope">
|
||||||
<span>{{ parseTime(scope.row.eventDate, '{y}-{m}-{d}') }}</span>
|
<span>{{ parseTime(scope.row.eventDate, '{y}-{m}-{d}') }}</span>
|
||||||
</template>
|
</template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column label="管理耳号" align="center" prop="manageTags" min-width="100px" />
|
|
||||||
<el-table-column label="品种" align="center" prop="varietyName" />
|
|
||||||
<el-table-column label="事件类型" align="center" prop="eventType" />
|
|
||||||
<el-table-column label="羊舍" align="center" prop="sheepfoldName" min-width="120px" />
|
<el-table-column label="羊舍" align="center" prop="sheepfoldName" min-width="120px" />
|
||||||
<el-table-column label="乳房深度" align="center" prop="depth" />
|
<el-table-column label="乳房深度" align="center" prop="depth">
|
||||||
<el-table-column label="乳房长度" align="center" prop="length" />
|
<template #header>
|
||||||
|
<div style="display: flex; align-items: center; gap: 4px; cursor: pointer;" @click="handleDepthSort">
|
||||||
|
<span>乳房深度</span>
|
||||||
|
<el-icon size="16" style="color: #409EFF;">
|
||||||
|
<ArrowUp v-if="!sortByDepth || sortDepthAsc" />
|
||||||
|
<ArrowDown v-else />
|
||||||
|
</el-icon>
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
<template #default="scope">
|
||||||
|
<span>{{ scope.row.depth }}</span>
|
||||||
|
</template>
|
||||||
|
</el-table-column>
|
||||||
|
<el-table-column label="乳房长度" align="center" prop="length">
|
||||||
|
<template #header>
|
||||||
|
<div style="display: flex; align-items: center; gap: 4px; cursor: pointer;" @click="handleLengthSort">
|
||||||
|
<span>乳房长度</span>
|
||||||
|
<el-icon size="16" style="color: #409EFF;">
|
||||||
|
<ArrowUp v-if="!sortByLength || sortLengthAsc" />
|
||||||
|
<ArrowDown v-else />
|
||||||
|
</el-icon>
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
<template #default="scope">
|
||||||
|
<span>{{ scope.row.length }}</span>
|
||||||
|
</template>
|
||||||
|
</el-table-column>
|
||||||
<el-table-column label="乳房位置" align="center" prop="position" />
|
<el-table-column label="乳房位置" align="center" prop="position" />
|
||||||
<el-table-column label="乳房附着" align="center" prop="adbere" />
|
<el-table-column label="乳房附着" align="center" prop="adbere" />
|
||||||
<el-table-column label="乳房间隔度" align="center" prop="spacing" min-width="120px" />
|
<el-table-column label="乳房间隔度" align="center" prop="spacing" min-width="120px" />
|
||||||
<el-table-column label="乳房评分" align="center" prop="score" />
|
<el-table-column label="乳房评分" align="center" prop="score">
|
||||||
|
<template #header>
|
||||||
|
<div style="display: flex; align-items: center; gap: 4px; cursor: pointer;" @click="handleScoreSort">
|
||||||
|
<span>乳房评分</span>
|
||||||
|
<el-icon size="16" style="color: #409EFF;">
|
||||||
|
<ArrowUp v-if="!sortByScore || sortScoreAsc" />
|
||||||
|
<ArrowDown v-else />
|
||||||
|
</el-icon>
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
<template #default="scope">
|
||||||
|
<span>{{ scope.row.score }}</span>
|
||||||
|
</template>
|
||||||
|
</el-table-column>
|
||||||
<el-table-column label="备注" align="center" prop="comment" />
|
<el-table-column label="备注" align="center" prop="comment" />
|
||||||
<el-table-column label="技术员" align="center" prop="technician" />
|
<el-table-column label="技术员" align="center" prop="technician" />
|
||||||
<el-table-column label="创建人" align="center" prop="createBy" />
|
<el-table-column label="创建人" align="center" prop="createBy" />
|
||||||
|
<el-table-column label="创建时间" align="center" prop="createTime" min-width="150">
|
||||||
|
<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" min-width="120px" fixed="right">
|
<el-table-column label="操作" align="center" class-name="small-padding fixed-width" min-width="120px" fixed="right">
|
||||||
<template #default="scope">
|
<template #default="scope">
|
||||||
<!-- <el-button link type="primary" icon="Edit" @click="handleUpdate(scope.row)"
|
<!-- <el-button link type="primary" icon="Edit" @click="handleUpdate(scope.row)"
|
||||||
@ -87,14 +123,11 @@
|
|||||||
</el-table>
|
</el-table>
|
||||||
|
|
||||||
<pagination v-show="total > 0" :total="total" v-model:page="queryParams.pageNum"
|
<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="550px" append-to-body>
|
<el-dialog :title="title" v-model="open" width="550px" append-to-body>
|
||||||
<el-form ref="breast_ratingRef" :model="form" :rules="rules" label-width="115px">
|
<el-form ref="breast_ratingRef" :model="form" :rules="rules" label-width="115px">
|
||||||
<!-- <el-form-item label="羊只id" prop="sheepId">
|
|
||||||
<el-input v-model="form.sheepId" placeholder="请输入羊只id" />
|
|
||||||
</el-form-item> -->
|
|
||||||
<el-form-item label="管理耳号" prop="manageTags">
|
<el-form-item label="管理耳号" prop="manageTags">
|
||||||
<el-input v-model="form.manageTags" placeholder="请输入管理耳号" @blur="onManageTagsBlur" clearable
|
<el-input v-model="form.manageTags" placeholder="请输入管理耳号" @blur="onManageTagsBlur" clearable
|
||||||
:disabled="!isAdd" />
|
:disabled="!isAdd" />
|
||||||
@ -144,6 +177,7 @@ import { listBreast_rating, getBreast_rating, delBreast_rating, addBreast_rating
|
|||||||
import { checkSheepByManageTags, getVarietyOptions } from "@/api/produce/other/fixHoof"
|
import { checkSheepByManageTags, getVarietyOptions } from "@/api/produce/other/fixHoof"
|
||||||
import { listSheepfold_management as listSheepfold } from '@/api/fileManagement/sheepfold_management'
|
import { listSheepfold_management as listSheepfold } from '@/api/fileManagement/sheepfold_management'
|
||||||
import { getCurrentInstance, reactive, ref } from "vue"
|
import { getCurrentInstance, reactive, ref } from "vue"
|
||||||
|
import { ArrowUp, ArrowDown } from '@element-plus/icons-vue'
|
||||||
|
|
||||||
const { proxy } = getCurrentInstance()
|
const { proxy } = getCurrentInstance()
|
||||||
|
|
||||||
@ -159,6 +193,15 @@ const title = ref("")
|
|||||||
const daterangeCreateTime = ref([])
|
const daterangeCreateTime = ref([])
|
||||||
const daterangeEventDate = ref([]);
|
const daterangeEventDate = ref([]);
|
||||||
const isAdd = ref(false)
|
const isAdd = ref(false)
|
||||||
|
// 乳房深度排序
|
||||||
|
const sortByDepth = ref(false)
|
||||||
|
const sortDepthAsc = ref(true)
|
||||||
|
// 乳房长度排序
|
||||||
|
const sortByLength = ref(false)
|
||||||
|
const sortLengthAsc = ref(true)
|
||||||
|
// 乳房评分排序
|
||||||
|
const sortByScore = ref(false)
|
||||||
|
const sortScoreAsc = ref(true)
|
||||||
const data = reactive({
|
const data = reactive({
|
||||||
form: {
|
form: {
|
||||||
id: null,
|
id: null,
|
||||||
@ -175,7 +218,7 @@ const data = reactive({
|
|||||||
},
|
},
|
||||||
queryParams: {
|
queryParams: {
|
||||||
pageNum: 1,
|
pageNum: 1,
|
||||||
pageSize: 10,
|
pageSize: 20,
|
||||||
manageTags: null
|
manageTags: null
|
||||||
},
|
},
|
||||||
rules: {
|
rules: {
|
||||||
@ -208,6 +251,20 @@ function getList() {
|
|||||||
queryParams.value.params["beginCreateTime"] = daterangeCreateTime.value[0]
|
queryParams.value.params["beginCreateTime"] = daterangeCreateTime.value[0]
|
||||||
queryParams.value.params["endCreateTime"] = daterangeCreateTime.value[1]
|
queryParams.value.params["endCreateTime"] = daterangeCreateTime.value[1]
|
||||||
}
|
}
|
||||||
|
if (sortByDepth.value) {
|
||||||
|
queryParams.value.orderBy = "depth";
|
||||||
|
queryParams.value.sortDirection = sortDepthAsc.value ? "ASC" : "DESC";
|
||||||
|
} else if (sortByLength.value) {
|
||||||
|
queryParams.value.orderBy = "length";
|
||||||
|
queryParams.value.sortDirection = sortLengthAsc.value ? "ASC" : "DESC";
|
||||||
|
} else if (sortByScore.value) {
|
||||||
|
queryParams.value.orderBy = "score";
|
||||||
|
queryParams.value.sortDirection = sortScoreAsc.value ? "ASC" : "DESC";
|
||||||
|
} else {
|
||||||
|
queryParams.value.orderBy = null;
|
||||||
|
queryParams.value.sortDirection = null;
|
||||||
|
}
|
||||||
|
|
||||||
listBreast_rating(queryParams.value).then(response => {
|
listBreast_rating(queryParams.value).then(response => {
|
||||||
breast_ratingList.value = response.rows
|
breast_ratingList.value = response.rows
|
||||||
total.value = response.total
|
total.value = response.total
|
||||||
@ -239,6 +296,49 @@ function onManageTagsBlur() {
|
|||||||
form.value.comment = null;
|
form.value.comment = null;
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
//乳房深度排序
|
||||||
|
function handleDepthSort() {
|
||||||
|
console.log("sortByDepth before:", sortByDepth.value);
|
||||||
|
sortByLength.value = false;
|
||||||
|
sortByScore.value = false;
|
||||||
|
if (sortByDepth.value) {
|
||||||
|
sortDepthAsc.value = !sortDepthAsc.value;
|
||||||
|
} else {
|
||||||
|
sortByDepth.value = true;
|
||||||
|
sortDepthAsc.value = true;
|
||||||
|
}
|
||||||
|
queryParams.value.pageNum = 1;
|
||||||
|
console.log("sortByDepth after:", sortByDepth.value);
|
||||||
|
getList();
|
||||||
|
}
|
||||||
|
|
||||||
|
//乳头长度排序
|
||||||
|
function handleLengthSort() {
|
||||||
|
sortByDepth.value = false;
|
||||||
|
sortByScore.value = false;
|
||||||
|
if (sortByLength.value) {
|
||||||
|
sortLengthAsc.value = !sortLengthAsc.value;
|
||||||
|
} else {
|
||||||
|
sortByLength.value = true;
|
||||||
|
sortLengthAsc.value = true;
|
||||||
|
}
|
||||||
|
queryParams.value.pageNum = 1;
|
||||||
|
getList();
|
||||||
|
}
|
||||||
|
|
||||||
|
//乳况评分排序
|
||||||
|
function handleScoreSort() {
|
||||||
|
sortByDepth.value = false;
|
||||||
|
sortByLength.value = false;
|
||||||
|
if (sortByScore.value) {
|
||||||
|
sortScoreAsc.value = !sortScoreAsc.value;
|
||||||
|
} else {
|
||||||
|
sortByScore.value = true;
|
||||||
|
sortScoreAsc.value = true;
|
||||||
|
}
|
||||||
|
queryParams.value.pageNum = 1;
|
||||||
|
getList();
|
||||||
|
}
|
||||||
|
|
||||||
// 取消按钮
|
// 取消按钮
|
||||||
function cancel() {
|
function cancel() {
|
||||||
@ -277,6 +377,12 @@ function resetQuery() {
|
|||||||
daterangeCreateTime.value = []
|
daterangeCreateTime.value = []
|
||||||
daterangeEventDate.value = [];
|
daterangeEventDate.value = [];
|
||||||
proxy.resetForm("queryRef")
|
proxy.resetForm("queryRef")
|
||||||
|
sortByDepth.value = false
|
||||||
|
sortByLength.value = false
|
||||||
|
sortByScore.value = false
|
||||||
|
sortDepthAsc.value = true
|
||||||
|
sortLengthAsc.value = true
|
||||||
|
sortScoreAsc.value = true
|
||||||
handleQuery()
|
handleQuery()
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@ -1,9 +1,10 @@
|
|||||||
<template>
|
<template>
|
||||||
<div class="app-container">
|
<div class="app-container">
|
||||||
<!-- 顶部按钮 -->
|
<!-- 顶部按钮 -->
|
||||||
<el-button type="warning" icon="Upload" @click="handleExportForm">导出</el-button>
|
|
||||||
<el-button type="primary" plain icon="Plus" @click="handleImport"
|
<el-button type="primary" plain icon="Plus" @click="handleImport"
|
||||||
v-hasPermi="['produce:add_sheep:import']">导入</el-button>
|
v-hasPermi="['produce:add_sheep:import']">导入</el-button>
|
||||||
|
<el-button type="warning" icon="Upload" @click="handleExportForm">下载模板</el-button>
|
||||||
|
|
||||||
|
|
||||||
<!-- 新增/编辑表单 -->
|
<!-- 新增/编辑表单 -->
|
||||||
<el-form :model="form" ref="formRef" label-position="left" label-width="120px" style="margin-top:15px"
|
<el-form :model="form" ref="formRef" label-position="left" label-width="120px" style="margin-top:15px"
|
||||||
@ -178,7 +179,6 @@ const rules = {
|
|||||||
birthday: [{ required: true, message: '请选择出生日期', trigger: 'change' }],
|
birthday: [{ required: true, message: '请选择出生日期', trigger: 'change' }],
|
||||||
gender: [{ required: true, message: '请选择性别', trigger: 'change' }],
|
gender: [{ required: true, message: '请选择性别', trigger: 'change' }],
|
||||||
varietyId: [{ required: true, message: '请选择品种', trigger: 'change' }],
|
varietyId: [{ required: true, message: '请选择品种', trigger: 'change' }],
|
||||||
typeId: [{ required: true, message: '请选择羊只类别', trigger: 'change' }],
|
|
||||||
joinDate: [{ required: true, message: '请选择入群日期', trigger: 'change' }],
|
joinDate: [{ required: true, message: '请选择入群日期', trigger: 'change' }],
|
||||||
technician: [{ required: true, message: '请输入技术员', trigger: 'change' }],
|
technician: [{ required: true, message: '请输入技术员', trigger: 'change' }],
|
||||||
}
|
}
|
||||||
@ -238,11 +238,11 @@ function handleRanchChange(ranchId) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
//羊舍列表
|
//羊舍列表
|
||||||
function getSheepfoldOptions() {
|
//function getSheepfoldOptions() {
|
||||||
// listSheepfold({ pageNum: 1, pageSize: 9999 }).then(res => {
|
// listSheepfold({ pageNum: 1, pageSize: 9999 }).then(res => {
|
||||||
// sheepfoldOptions.value = res.rows || []
|
// sheepfoldOptions.value = res.rows || []
|
||||||
// })
|
// })
|
||||||
}
|
//}
|
||||||
|
|
||||||
//品种列表
|
//品种列表
|
||||||
function getVarietyOptions() {
|
function getVarietyOptions() {
|
||||||
@ -382,7 +382,7 @@ function handleImportError(err) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
onMounted(() => {
|
onMounted(() => {
|
||||||
getSheepfoldOptions()
|
// getSheepfoldOptions()
|
||||||
loadSheepTypeList()
|
loadSheepTypeList()
|
||||||
loadRanchList()
|
loadRanchList()
|
||||||
getVarietyOptions()
|
getVarietyOptions()
|
||||||
|
|||||||
@ -1,17 +1,9 @@
|
|||||||
<template>
|
<template>
|
||||||
<div class="app-container">
|
<div class="app-container">
|
||||||
<el-form :model="queryParams" ref="queryRef" :inline="true" v-show="showSearch" label-width="68px">
|
<el-form :model="queryParams" ref="queryRef" :inline="true" v-show="showSearch" label-width="68px">
|
||||||
<!-- <el-form-item label="羊只id" prop="sheepId">
|
<el-form-item label="事件日期" style="width: 308px">
|
||||||
<el-input
|
<el-date-picker v-model="daterangeEventDate" type="daterange" range-separator="-" start-placeholder="开始日期"
|
||||||
v-model="queryParams.sheepId"
|
end-placeholder="结束日期" value-format="YYYY-MM-DD" />
|
||||||
placeholder="请输入羊只id"
|
|
||||||
clearable
|
|
||||||
@keyup.enter="handleQuery"
|
|
||||||
/>
|
|
||||||
</el-form-item> -->
|
|
||||||
<el-form-item label="创建时间" style="width: 308px">
|
|
||||||
<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>
|
</el-form-item>
|
||||||
<el-form-item label="管理耳号" prop="manageTags">
|
<el-form-item label="管理耳号" prop="manageTags">
|
||||||
<el-input v-model="queryParams.manageTags" placeholder="请输入管理耳号" clearable @keyup.enter="handleQuery"
|
<el-input v-model="queryParams.manageTags" placeholder="请输入管理耳号" clearable @keyup.enter="handleQuery"
|
||||||
@ -58,19 +50,23 @@
|
|||||||
|
|
||||||
<el-table v-loading="loading" :data="changeCommentList" @selection-change="handleSelectionChange">
|
<el-table v-loading="loading" :data="changeCommentList" @selection-change="handleSelectionChange">
|
||||||
<el-table-column type="selection" width="55" align="center" />
|
<el-table-column type="selection" width="55" align="center" />
|
||||||
<!-- <el-table-column label="${comment}" 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="manageTags" />
|
||||||
<el-table-column label="羊舍" align="center" prop="sheepfoldName" />
|
<el-table-column label="羊舍" align="center" prop="sheepfoldName" />
|
||||||
<el-table-column label="事件类型" align="center" prop="eventType" width="120" />
|
<el-table-column label="事件类型" align="center" prop="eventType" width="120" />
|
||||||
<el-table-column label="新备注" align="center" prop="newComment" />
|
<el-table-column label="新备注" align="center" prop="newComment" />
|
||||||
<el-table-column label="原备注" align="center" prop="oldComment" />
|
<el-table-column label="原备注" align="center" prop="oldComment" />
|
||||||
|
<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="createBy" />
|
<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">
|
<el-table-column label="操作" align="center" class-name="small-padding fixed-width">
|
||||||
<template #default="scope">
|
<template #default="scope">
|
||||||
<!-- <el-button link type="primary" icon="Edit" @click="handleUpdate(scope.row)"
|
<!-- <el-button link type="primary" icon="Edit" @click="handleUpdate(scope.row)"
|
||||||
@ -82,14 +78,11 @@
|
|||||||
</el-table>
|
</el-table>
|
||||||
|
|
||||||
<pagination v-show="total > 0" :total="total" v-model:page="queryParams.pageNum"
|
<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-dialog :title="title" v-model="open" width="500px" append-to-body>
|
||||||
<el-form ref="changeCommentRef" :model="form" :rules="rules" label-width="80px">
|
<el-form ref="changeCommentRef" :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="manageTags">
|
<el-form-item label="管理耳号" prop="manageTags">
|
||||||
<el-input v-model="form.manageTags" placeholder="请输入管理耳号" @blur="onManageTagsBlur" :disabled="!isAddMode" />
|
<el-input v-model="form.manageTags" placeholder="请输入管理耳号" @blur="onManageTagsBlur" :disabled="!isAddMode" />
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
@ -99,6 +92,13 @@
|
|||||||
<el-form-item label="原备注" prop="oldComment">
|
<el-form-item label="原备注" prop="oldComment">
|
||||||
<el-input v-model="form.oldComment" placeholder="请输入原备注" disabled />
|
<el-input v-model="form.oldComment" placeholder="请输入原备注" disabled />
|
||||||
</el-form-item>
|
</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="technician">
|
||||||
|
<el-input v-model="form.technician" placeholder="请输入技术员" :disabled="!isAddMode" />
|
||||||
|
</el-form-item>
|
||||||
</el-form>
|
</el-form>
|
||||||
<template #footer>
|
<template #footer>
|
||||||
<div class="dialog-footer">
|
<div class="dialog-footer">
|
||||||
@ -128,11 +128,12 @@ const total = ref(0)
|
|||||||
const title = ref("")
|
const title = ref("")
|
||||||
const daterangeCreateTime = ref([])
|
const daterangeCreateTime = ref([])
|
||||||
const isAddMode = ref(true);
|
const isAddMode = ref(true);
|
||||||
|
const daterangeEventDate = ref([])
|
||||||
const data = reactive({
|
const data = reactive({
|
||||||
form: { manageTags: null, },
|
form: { manageTags: null, eventDate: null, technician: null },
|
||||||
queryParams: {
|
queryParams: {
|
||||||
pageNum: 1,
|
pageNum: 1,
|
||||||
pageSize: 10,
|
pageSize: 20,
|
||||||
sheepId: null,
|
sheepId: null,
|
||||||
manageTags: null,
|
manageTags: null,
|
||||||
sheepfoldId: null,
|
sheepfoldId: null,
|
||||||
@ -146,6 +147,12 @@ const data = reactive({
|
|||||||
],
|
],
|
||||||
newComment: [
|
newComment: [
|
||||||
{ required: true, message: "请输入新备注", trigger: "blur" }
|
{ required: true, message: "请输入新备注", trigger: "blur" }
|
||||||
|
],
|
||||||
|
eventDate: [
|
||||||
|
{ required: true, message: "请选择事件日期", trigger: "change" }
|
||||||
|
],
|
||||||
|
technician: [
|
||||||
|
{ required: true, message: "请输入技术员", trigger: "blur" }
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
@ -163,6 +170,10 @@ function getList() {
|
|||||||
if (queryParams.value.sheepfoldId) {
|
if (queryParams.value.sheepfoldId) {
|
||||||
queryParams.value.params["sheepfoldId"] = queryParams.value.sheepfoldId;
|
queryParams.value.params["sheepfoldId"] = queryParams.value.sheepfoldId;
|
||||||
}
|
}
|
||||||
|
if (daterangeEventDate.value.length > 0) {
|
||||||
|
queryParams.value.params["beginEventDate"] = daterangeEventDate.value[0];
|
||||||
|
queryParams.value.params["endEventDate"] = daterangeEventDate.value[1];
|
||||||
|
}
|
||||||
listChangeComment(queryParams.value).then(response => {
|
listChangeComment(queryParams.value).then(response => {
|
||||||
changeCommentList.value = response.rows
|
changeCommentList.value = response.rows
|
||||||
total.value = response.total
|
total.value = response.total
|
||||||
@ -205,6 +216,7 @@ function reset() {
|
|||||||
sheepId: null,
|
sheepId: null,
|
||||||
newComment: null,
|
newComment: null,
|
||||||
oldComment: null,
|
oldComment: null,
|
||||||
|
technician: null,
|
||||||
createBy: null,
|
createBy: null,
|
||||||
createTime: null
|
createTime: null
|
||||||
}
|
}
|
||||||
@ -220,6 +232,7 @@ function handleQuery() {
|
|||||||
/** 重置按钮操作 */
|
/** 重置按钮操作 */
|
||||||
function resetQuery() {
|
function resetQuery() {
|
||||||
daterangeCreateTime.value = []
|
daterangeCreateTime.value = []
|
||||||
|
daterangeEventDate.value = []
|
||||||
queryParams.value.sheepfoldId = null
|
queryParams.value.sheepfoldId = null
|
||||||
proxy.resetForm("queryRef")
|
proxy.resetForm("queryRef")
|
||||||
handleQuery()
|
handleQuery()
|
||||||
|
|||||||
@ -1,15 +1,12 @@
|
|||||||
<template>
|
<template>
|
||||||
<div class="app-container">
|
<div class="app-container">
|
||||||
<el-form :model="queryParams" ref="queryRef" :inline="true" v-show="showSearch" label-width="68px">
|
<el-form :model="queryParams" ref="queryRef" :inline="true" v-show="showSearch" label-width="68px">
|
||||||
<!-- <el-form-item label="羊只id" prop="sheepId">
|
<el-form-item label="事件日期" style="width: 300px">
|
||||||
<el-input v-model="queryParams.sheepId" placeholder="请输入羊只id" clearable @keyup.enter="handleQuery" />
|
<el-date-picker v-model="daterangeEventDate" type="daterange" range-separator="-" start-placeholder="开始日期"
|
||||||
</el-form-item> -->
|
end-placeholder="结束日期" value-format="YYYY-MM-DD" />
|
||||||
<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>
|
</el-form-item>
|
||||||
<el-form-item label="耳号" prop="manageTag">
|
<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;" />
|
style="max-width: 160px;" />
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item label="新耳号" prop="newTag">
|
<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-option v-for="fold in sheepfoldOptions" :key="fold.id" :label="fold.sheepfoldName" :value="fold.id" />
|
||||||
</el-select>
|
</el-select>
|
||||||
</el-form-item>
|
</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-form-item>
|
||||||
<el-button type="primary" icon="Search" @click="handleQuery">搜索</el-button>
|
<el-button type="primary" icon="Search" @click="handleQuery">搜索</el-button>
|
||||||
<el-button icon="Refresh" @click="resetQuery">重置</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 v-loading="loading" :data="changeEarList" @selection-change="handleSelectionChange">
|
||||||
<el-table-column type="selection" width="55" align="center" />
|
<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="manageTags" />
|
||||||
<el-table-column label="羊舍" align="center" prop="sheepfoldName" />
|
<el-table-column label="羊舍" align="center" prop="sheepfoldName" />
|
||||||
<el-table-column label="事件类型" align="center" prop="eventType" />
|
<el-table-column label="事件类型" align="center" prop="eventType" />
|
||||||
@ -70,8 +66,19 @@
|
|||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column label="新耳号" align="center" prop="newTag" />
|
<el-table-column label="新耳号" align="center" prop="newTag" />
|
||||||
<el-table-column label="旧耳号" align="center" prop="oldTag" />
|
<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="comment" />
|
||||||
<el-table-column label="创建人" align="center" prop="createBy" />
|
<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">
|
<el-table-column label="操作" align="center" class-name="small-padding fixed-width">
|
||||||
<template #default="scope">
|
<template #default="scope">
|
||||||
<!-- <el-button link type="primary" icon="Edit" @click="handleUpdate(scope.row)"
|
<!-- <el-button link type="primary" icon="Edit" @click="handleUpdate(scope.row)"
|
||||||
@ -83,14 +90,11 @@
|
|||||||
</el-table>
|
</el-table>
|
||||||
|
|
||||||
<pagination v-show="total > 0" :total="total" v-model:page="queryParams.pageNum"
|
<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-dialog :title="title" v-model="open" width="500px" append-to-body>
|
||||||
<el-form ref="changeEarRef" :model="form" :rules="rules" label-width="80px">
|
<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-form-item label="耳号" prop="earNumber">
|
||||||
<el-input v-model="form.earNumber" placeholder="请输入管理耳号或电子耳号" @change="fetchOldTag" :disabled="!isAddMode" />
|
<el-input v-model="form.earNumber" placeholder="请输入管理耳号或电子耳号" @change="fetchOldTag" :disabled="!isAddMode" />
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
@ -106,7 +110,14 @@
|
|||||||
<el-form-item label="旧耳号" prop="oldTag">
|
<el-form-item label="旧耳号" prop="oldTag">
|
||||||
<el-input v-model="form.oldTag" placeholder="请输入旧耳号/电子耳号" disabled />
|
<el-input v-model="form.oldTag" placeholder="请输入旧耳号/电子耳号" disabled />
|
||||||
</el-form-item>
|
</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-input v-model="form.comment" type="textarea" placeholder="请输入内容" :disabled="!isAddMode" />
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-form>
|
</el-form>
|
||||||
@ -136,19 +147,23 @@ const total = ref(0)
|
|||||||
const title = ref("")
|
const title = ref("")
|
||||||
const daterangeCreateTime = ref([])
|
const daterangeCreateTime = ref([])
|
||||||
const isAddMode = ref(true);
|
const isAddMode = ref(true);
|
||||||
|
const daterangeEventDate = ref([]);
|
||||||
|
|
||||||
const data = reactive({
|
const data = reactive({
|
||||||
form: {},
|
form: {
|
||||||
|
technician: null,
|
||||||
|
eventDate: null
|
||||||
|
},
|
||||||
queryParams: {
|
queryParams: {
|
||||||
pageNum: 1,
|
pageNum: 1,
|
||||||
pageSize: 10,
|
pageSize: 20,
|
||||||
manageTags: null,
|
manageTags: null,
|
||||||
// sheepId: null,
|
|
||||||
sheepfoldId: null,
|
sheepfoldId: null,
|
||||||
earType: null,
|
earType: null,
|
||||||
newTag: null,
|
newTag: null,
|
||||||
oldTag: null,
|
oldTag: null,
|
||||||
createTime: null
|
createTime: null,
|
||||||
|
earType: null,
|
||||||
},
|
},
|
||||||
rules: {
|
rules: {
|
||||||
earNumber: [
|
earNumber: [
|
||||||
@ -163,6 +178,15 @@ const data = reactive({
|
|||||||
oldTag: [
|
oldTag: [
|
||||||
{ required: true, message: "请输入旧耳号", trigger: "change" }
|
{ 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["beginCreateTime"] = daterangeCreateTime.value[0];
|
||||||
queryParams.value.params["endCreateTime"] = daterangeCreateTime.value[1];
|
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);
|
const response = await listChangeEar(queryParams.value);
|
||||||
|
|
||||||
changeEarList.value = response.rows.map(item => {
|
changeEarList.value = response.rows.map(item => {
|
||||||
@ -202,12 +230,12 @@ function cancel() {
|
|||||||
// 表单重置
|
// 表单重置
|
||||||
function reset() {
|
function reset() {
|
||||||
form.value = {
|
form.value = {
|
||||||
// id: null,
|
|
||||||
// sheepId: null,
|
|
||||||
manageTags: null,
|
manageTags: null,
|
||||||
earType: null,
|
earType: null,
|
||||||
newTag: null,
|
newTag: null,
|
||||||
oldTag: null,
|
oldTag: null,
|
||||||
|
technician: null,
|
||||||
|
eventDate: null,
|
||||||
comment: null,
|
comment: null,
|
||||||
createBy: null,
|
createBy: null,
|
||||||
createTime: null
|
createTime: null
|
||||||
@ -224,6 +252,7 @@ function handleQuery() {
|
|||||||
/** 重置按钮操作 */
|
/** 重置按钮操作 */
|
||||||
function resetQuery() {
|
function resetQuery() {
|
||||||
daterangeCreateTime.value = []
|
daterangeCreateTime.value = []
|
||||||
|
daterangeEventDate.value = []
|
||||||
queryParams.value.sheepfoldName = null
|
queryParams.value.sheepfoldName = null
|
||||||
queryParams.value.manageTags = null
|
queryParams.value.manageTags = null
|
||||||
queryParams.value.newTag = null
|
queryParams.value.newTag = null
|
||||||
|
|||||||
@ -1,17 +1,9 @@
|
|||||||
<template>
|
<template>
|
||||||
<div class="app-container">
|
<div class="app-container">
|
||||||
<el-form :model="queryParams" ref="queryRef" :inline="true" v-show="showSearch" label-width="68px">
|
<el-form :model="queryParams" ref="queryRef" :inline="true" v-show="showSearch" label-width="68px">
|
||||||
<!-- <el-form-item label="羊只id" prop="sheepId">
|
<el-form-item label="事件日期" style="width: 308px">
|
||||||
<el-input
|
<el-date-picker v-model="daterangeEventDate" type="daterange" range-separator="-" start-placeholder="开始日期"
|
||||||
v-model="queryParams.sheepId"
|
end-placeholder="结束日期" value-format="YYYY-MM-DD" />
|
||||||
placeholder="请输入羊只id"
|
|
||||||
clearable
|
|
||||||
@keyup.enter="handleQuery"
|
|
||||||
/>
|
|
||||||
</el-form-item> -->
|
|
||||||
<el-form-item label="创建日期" style="width: 308px">
|
|
||||||
<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>
|
</el-form-item>
|
||||||
<el-form-item label="管理耳号" prop="manageTags">
|
<el-form-item label="管理耳号" prop="manageTags">
|
||||||
<el-input v-model="queryParams.manageTags" placeholder="请输入管理耳号" clearable @keyup.enter="handleQuery"
|
<el-input v-model="queryParams.manageTags" placeholder="请输入管理耳号" clearable @keyup.enter="handleQuery"
|
||||||
@ -60,20 +52,24 @@
|
|||||||
|
|
||||||
<el-table v-loading="loading" :data="changeVarietyList" @selection-change="handleSelectionChange">
|
<el-table v-loading="loading" :data="changeVarietyList" @selection-change="handleSelectionChange">
|
||||||
<el-table-column type="selection" width="55" align="center" />
|
<el-table-column type="selection" width="55" align="center" />
|
||||||
<!-- <el-table-column label="${comment}" 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="manageTags" />
|
||||||
<el-table-column label="羊舍" align="center" prop="sheepfoldName" />
|
<el-table-column label="羊舍" align="center" prop="sheepfoldName" />
|
||||||
<el-table-column label="事件类型" align="center" prop="eventType" width="120" />
|
<el-table-column label="事件类型" align="center" prop="eventType" width="120" />
|
||||||
<el-table-column label="原品种" align="center" prop="varietyOld" />
|
<el-table-column label="原品种" align="center" prop="varietyOld" />
|
||||||
<el-table-column label="新品种" align="center" prop="varietyNew" />
|
<el-table-column label="新品种" align="center" prop="varietyNew" />
|
||||||
|
<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="comment" />
|
||||||
<el-table-column label="创建人" align="center" prop="createBy" />
|
<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">
|
<el-table-column label="操作" align="center" class-name="small-padding fixed-width">
|
||||||
<template #default="scope">
|
<template #default="scope">
|
||||||
<!-- <el-button link type="primary" icon="Edit" @click="handleUpdate(scope.row)"
|
<!-- <el-button link type="primary" icon="Edit" @click="handleUpdate(scope.row)"
|
||||||
@ -85,14 +81,11 @@
|
|||||||
</el-table>
|
</el-table>
|
||||||
|
|
||||||
<pagination v-show="total > 0" :total="total" v-model:page="queryParams.pageNum"
|
<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-dialog :title="title" v-model="open" width="500px" append-to-body>
|
||||||
<el-form ref="changeVarietyRef" :model="form" :rules="rules" label-width="80px">
|
<el-form ref="changeVarietyRef" :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="manageTags">
|
<el-form-item label="管理耳号" prop="manageTags">
|
||||||
<el-input v-model="form.manageTags" placeholder="请输入管理耳号" @blur="onManageTagsBlur" :disabled="!isAdd" />
|
<el-input v-model="form.manageTags" placeholder="请输入管理耳号" @blur="onManageTagsBlur" :disabled="!isAdd" />
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
@ -104,6 +97,13 @@
|
|||||||
<el-option v-for="item in varietyOptions" :key="item.value" :label="item.label" :value="item.value" />
|
<el-option v-for="item in varietyOptions" :key="item.value" :label="item.label" :value="item.value" />
|
||||||
</el-select>
|
</el-select>
|
||||||
</el-form-item>
|
</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="!isAdd" />
|
||||||
|
</el-form-item>
|
||||||
|
<el-form-item label="技术员" prop="technician">
|
||||||
|
<el-input v-model="form.technician" placeholder="请输入技术员" :disabled="!isAdd" />
|
||||||
|
</el-form-item>
|
||||||
<el-form-item label="备注" prop="comment" v-if="!isAdd">
|
<el-form-item label="备注" prop="comment" v-if="!isAdd">
|
||||||
<el-input v-model="form.comment" placeholder="请输入备注" :disabled="!isAdd" />
|
<el-input v-model="form.comment" placeholder="请输入备注" :disabled="!isAdd" />
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
@ -138,19 +138,21 @@ const daterangeCreateTime = ref([])
|
|||||||
const isAdd = ref(false);
|
const isAdd = ref(false);
|
||||||
|
|
||||||
const varietyOptions = ref([])
|
const varietyOptions = ref([])
|
||||||
|
const daterangeEventDate = ref([]);
|
||||||
const data = reactive({
|
const data = reactive({
|
||||||
form: {
|
form: {
|
||||||
manageTags: null,
|
manageTags: null,
|
||||||
|
technician: null,
|
||||||
|
eventDate: null
|
||||||
},
|
},
|
||||||
queryParams: {
|
queryParams: {
|
||||||
pageNum: 1,
|
pageNum: 1,
|
||||||
pageSize: 10,
|
pageSize: 20,
|
||||||
// sheepId: null,
|
|
||||||
manageTags: null,
|
manageTags: null,
|
||||||
sheepfoldId: null,
|
sheepfoldId: null,
|
||||||
varietyOld: null,
|
varietyOld: null,
|
||||||
varietyNew: null,
|
varietyNew: null,
|
||||||
createTime: null
|
createTime: null,
|
||||||
},
|
},
|
||||||
rules: {
|
rules: {
|
||||||
manageTags: [
|
manageTags: [
|
||||||
@ -162,6 +164,12 @@ const data = reactive({
|
|||||||
varietyNew: [
|
varietyNew: [
|
||||||
{ required: true, message: "请选择新品种", trigger: "blur" }
|
{ required: true, message: "请选择新品种", trigger: "blur" }
|
||||||
],
|
],
|
||||||
|
technician: [
|
||||||
|
{ required: true, message: "请输入技术员", trigger: "blur" }
|
||||||
|
],
|
||||||
|
eventDate: [
|
||||||
|
{ required: true, message: "请选择事件日期", trigger: "change" }
|
||||||
|
]
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
|
|
||||||
@ -178,6 +186,10 @@ function getList() {
|
|||||||
if (queryParams.value.sheepfoldId) {
|
if (queryParams.value.sheepfoldId) {
|
||||||
queryParams.value.params["sheepfoldId"] = queryParams.value.sheepfoldId;
|
queryParams.value.params["sheepfoldId"] = queryParams.value.sheepfoldId;
|
||||||
}
|
}
|
||||||
|
if (daterangeEventDate.value.length > 0) {
|
||||||
|
queryParams.value.params["beginEventDate"] = daterangeEventDate.value[0];
|
||||||
|
queryParams.value.params["endEventDate"] = daterangeEventDate.value[1];
|
||||||
|
}
|
||||||
listChangeVariety(queryParams.value).then(response => {
|
listChangeVariety(queryParams.value).then(response => {
|
||||||
changeVarietyList.value = response.rows
|
changeVarietyList.value = response.rows
|
||||||
total.value = response.total
|
total.value = response.total
|
||||||
@ -240,13 +252,21 @@ function reset() {
|
|||||||
function handleQuery() {
|
function handleQuery() {
|
||||||
loadVarietyOptions()
|
loadVarietyOptions()
|
||||||
queryParams.value.pageNum = 1
|
queryParams.value.pageNum = 1
|
||||||
|
if (daterangeEventDate.value.length > 0) {
|
||||||
|
queryParams.value.beginEventDate = daterangeEventDate.value[0];
|
||||||
|
queryParams.value.endEventDate = daterangeEventDate.value[1];
|
||||||
|
} else {
|
||||||
|
queryParams.value.beginEventDate = null;
|
||||||
|
queryParams.value.endEventDate = null;
|
||||||
|
}
|
||||||
getList()
|
getList()
|
||||||
}
|
}
|
||||||
|
|
||||||
/** 重置按钮操作 */
|
/** 重置按钮操作 */
|
||||||
function resetQuery() {
|
function resetQuery() {
|
||||||
daterangeCreateTime.value = []
|
daterangeCreateTime.value = []
|
||||||
queryParams.value.sheepfoldId = null;
|
queryParams.value.sheepfoldId = null
|
||||||
|
daterangeEventDate.value = []
|
||||||
proxy.resetForm("queryRef")
|
proxy.resetForm("queryRef")
|
||||||
handleQuery()
|
handleQuery()
|
||||||
}
|
}
|
||||||
|
|||||||
@ -1,10 +1,6 @@
|
|||||||
<template>
|
<template>
|
||||||
<div class="app-container">
|
<div class="app-container">
|
||||||
<el-form :model="queryParams" ref="queryRef" :inline="true" v-show="showSearch" label-width="68px">
|
<el-form :model="queryParams" ref="queryRef" :inline="true" v-show="showSearch" label-width="68px">
|
||||||
<el-form-item label="创建时间" style="width: 308px">
|
|
||||||
<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>
|
|
||||||
<el-form-item label="转群日期" style="width: 308px">
|
<el-form-item label="转群日期" style="width: 308px">
|
||||||
<el-date-picker v-model="daterangeTransDate" value-format="YYYY-MM-DD" type="daterange" range-separator="-"
|
<el-date-picker v-model="daterangeTransDate" value-format="YYYY-MM-DD" type="daterange" range-separator="-"
|
||||||
start-placeholder="开始日期" end-placeholder="结束日期" />
|
start-placeholder="开始日期" end-placeholder="结束日期" />
|
||||||
@ -13,11 +9,6 @@
|
|||||||
<el-input v-model="queryParams.manageTags" placeholder="请输入耳号" clearable @keyup.enter="handleQuery"
|
<el-input v-model="queryParams.manageTags" placeholder="请输入耳号" clearable @keyup.enter="handleQuery"
|
||||||
style="width: 150px;" />
|
style="width: 150px;" />
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item label="事件类型" prop="eventType">
|
|
||||||
<el-select v-model="queryParams.eventType" placeholder="请选择事件类型" style="min-width:150px" clearable required>
|
|
||||||
<el-option v-for="dict in eventTypeOptions" :key="dict.value" :label="dict.label" :value="dict.value" />
|
|
||||||
</el-select>
|
|
||||||
</el-form-item>
|
|
||||||
<el-form-item label="转出羊舍" prop="foldFrom" style="width: 308px">
|
<el-form-item label="转出羊舍" prop="foldFrom" style="width: 308px">
|
||||||
<el-select v-model="queryParams.foldFrom" placeholder="请选择转出羊舍" style="min-width:150px" clearable>
|
<el-select v-model="queryParams.foldFrom" placeholder="请选择转出羊舍" style="min-width:150px" clearable>
|
||||||
<el-option v-for="item in sheepfoldOptions" :key="item.id" :label="item.sheepfoldName" :value="item.id" />
|
<el-option v-for="item in sheepfoldOptions" :key="item.id" :label="item.sheepfoldName" :value="item.id" />
|
||||||
@ -38,11 +29,6 @@
|
|||||||
<el-option v-for="type in sheepTypeOptions" :key="type.id" :label="type.name" :value="type.id" />
|
<el-option v-for="type in sheepTypeOptions" :key="type.id" :label="type.name" :value="type.id" />
|
||||||
</el-select>
|
</el-select>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<!-- <el-form-item label="状态" prop="status">
|
|
||||||
<el-select v-model="queryParams.status" style="width: 150px;" placeholder="请选择状态" clearable>
|
|
||||||
<el-option v-for="dict in status" :key="dict.value" :label="dict.label" :value="dict.value" />
|
|
||||||
</el-select>
|
|
||||||
</el-form-item> -->
|
|
||||||
<el-form-item>
|
<el-form-item>
|
||||||
<el-button type="primary" icon="Search" @click="handleQuery">搜索</el-button>
|
<el-button type="primary" icon="Search" @click="handleQuery">搜索</el-button>
|
||||||
<el-button icon="Refresh" @click="resetQuery">重置</el-button>
|
<el-button icon="Refresh" @click="resetQuery">重置</el-button>
|
||||||
@ -54,10 +40,6 @@
|
|||||||
<el-button type="primary" plain icon="Plus" @click="handleAdd"
|
<el-button type="primary" plain icon="Plus" @click="handleAdd"
|
||||||
v-hasPermi="['trans_group:trans_group:add']">新增</el-button>
|
v-hasPermi="['trans_group:trans_group:add']">新增</el-button>
|
||||||
</el-col>
|
</el-col>
|
||||||
<!-- <el-col :span="1.5">
|
|
||||||
<el-button type="success" plain icon="Edit" :disabled="single" @click="handleUpdate"
|
|
||||||
v-hasPermi="['trans_group:trans_group:edit']">修改</el-button>
|
|
||||||
</el-col> -->
|
|
||||||
<el-col :span="1.5">
|
<el-col :span="1.5">
|
||||||
<el-button type="danger" plain icon="Delete" :disabled="multiple" @click="handleDelete"
|
<el-button type="danger" plain icon="Delete" :disabled="multiple" @click="handleDelete"
|
||||||
v-hasPermi="['trans_group:trans_group:remove']">删除</el-button>
|
v-hasPermi="['trans_group:trans_group:remove']">删除</el-button>
|
||||||
@ -71,34 +53,24 @@
|
|||||||
|
|
||||||
<el-table v-loading="loading" :data="trans_groupList" @selection-change="handleSelectionChange">
|
<el-table v-loading="loading" :data="trans_groupList" @selection-change="handleSelectionChange">
|
||||||
<el-table-column type="selection" width="55" align="center" />
|
<el-table-column type="selection" width="55" align="center" />
|
||||||
<el-table-column label="创建时间" align="center" prop="createTime" min-width="120" fixed>
|
<el-table-column label="管理耳号" align="center" prop="manageTags" min-width="100" fixed />
|
||||||
<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="transDate" min-width="120" />
|
|
||||||
<el-table-column label="管理耳号" align="center" prop="manageTags" min-width="100" />
|
|
||||||
<el-table-column label="事件类型" align="center" prop="eventTypeText" />
|
<el-table-column label="事件类型" align="center" prop="eventTypeText" />
|
||||||
<el-table-column label="转出羊舍" align="center" prop="foldFromName" min-width="130" />
|
<el-table-column label="转出羊舍" align="center" prop="foldFromName" min-width="130" />
|
||||||
<el-table-column label="转入羊舍" align="center" prop="foldToName" min-width="130" />
|
<el-table-column label="转入羊舍" align="center" prop="foldToName" min-width="130" />
|
||||||
|
<el-table-column label="转群日期" align="center" prop="transDate" min-width="120" />
|
||||||
<el-table-column label="品种" align="center" prop="varietyName" />
|
<el-table-column label="品种" align="center" prop="varietyName" />
|
||||||
<el-table-column label="羊只类别" align="center" prop="sheepTypeName" />
|
<el-table-column label="羊只类别" align="center" prop="sheepTypeName" />
|
||||||
<el-table-column label="转群原因" align="center" prop="reasonText" min-width="120" />
|
<el-table-column label="转群原因" align="center" prop="reasonText" min-width="120" />
|
||||||
<el-table-column label="技术员" align="center" prop="technician" />
|
<el-table-column label="技术员" align="center" prop="technician" />
|
||||||
<!-- <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="comment" min-width="120" />
|
<el-table-column label="备注" align="center" prop="comment" min-width="120" />
|
||||||
<el-table-column label="创建人" align="center" prop="createBy" />
|
<el-table-column label="创建人" align="center" prop="createBy" />
|
||||||
|
<el-table-column label="创建时间" align="center" prop="createTime" min-width="120">
|
||||||
|
<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" min-width="160" fixed="right">
|
<el-table-column label="操作" align="center" class-name="small-padding fixed-width" min-width="160" fixed="right">
|
||||||
<template #default="scope">
|
<template #default="scope">
|
||||||
<!-- <el-button link type="primary" icon="Edit" @click="handleApprove(scope.row)"
|
|
||||||
v-hasPermi="['trans_group:trans_group:approve']">
|
|
||||||
审批
|
|
||||||
</el-button> -->
|
|
||||||
<el-button link type="primary" icon="Delete" @click="handleDelete(scope.row)"
|
<el-button link type="primary" icon="Delete" @click="handleDelete(scope.row)"
|
||||||
v-hasPermi="['trans_group:trans_group:remove']">
|
v-hasPermi="['trans_group:trans_group:remove']">
|
||||||
删除
|
删除
|
||||||
@ -108,7 +80,7 @@
|
|||||||
</el-table>
|
</el-table>
|
||||||
|
|
||||||
<pagination v-show="total > 0" :total="total" v-model:page="queryParams.pageNum"
|
<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-dialog :title="title" v-model="open" width="500px" append-to-body>
|
||||||
@ -177,44 +149,7 @@
|
|||||||
</template>
|
</template>
|
||||||
</el-dialog>
|
</el-dialog>
|
||||||
|
|
||||||
<!-- 审批对话框 -->
|
|
||||||
<!-- <el-dialog :title="'审批转群记录'" v-model="approveDialog" width="500px" append-to-body>
|
|
||||||
<el-form ref="approveFormRef" :model="approveForm" label-width="120px">
|
|
||||||
<el-form-item label="耳号">
|
|
||||||
<el-input v-model="displayManageTags" disabled />
|
|
||||||
</el-form-item>
|
|
||||||
<el-form-item label="事件类型">
|
|
||||||
<el-input :value="approveForm.eventTypeText || '未知'" disabled />
|
|
||||||
</el-form-item>
|
|
||||||
<el-form-item label="转出羊舍">
|
|
||||||
<el-input :value="sheepfoldNameMap[approveForm.foldFrom] || approveForm.foldFrom" disabled />
|
|
||||||
</el-form-item>
|
|
||||||
<el-form-item label="转入羊舍">
|
|
||||||
<el-input :value="sheepfoldNameMap[approveForm.foldTo] || approveForm.foldTo" disabled />
|
|
||||||
</el-form-item>
|
|
||||||
<el-form-item label="品种">
|
|
||||||
<el-input :value="approveForm.varietyName" disabled />
|
|
||||||
</el-form-item>
|
|
||||||
<el-form-item label="转群原因">
|
|
||||||
<el-input :value="approveForm.reasonText" disabled />
|
|
||||||
</el-form-item>
|
|
||||||
<el-form-item label="状态">
|
|
||||||
<el-input :value="approveForm.statusText" disabled />
|
|
||||||
</el-form-item>
|
|
||||||
<el-form-item label="技术员">
|
|
||||||
<el-input v-model="approveForm.technician" disabled />
|
|
||||||
</el-form-item>
|
|
||||||
<el-form-item label="备注">
|
|
||||||
<el-input v-model="approveForm.comment" disabled />
|
|
||||||
</el-form-item>
|
|
||||||
</el-form>
|
|
||||||
<template #footer>
|
|
||||||
<div class="dialog-footer">
|
|
||||||
<el-button type="primary" @click="handleApproveAgree">同意</el-button>
|
|
||||||
<el-button type="danger" @click="handleApproveReject">驳回</el-button>
|
|
||||||
</div>
|
|
||||||
</template>
|
|
||||||
</el-dialog> -->
|
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
@ -238,11 +173,7 @@ const multiple = ref(false);
|
|||||||
const total = ref(0);
|
const total = ref(0);
|
||||||
const title = ref('');
|
const title = ref('');
|
||||||
const daterangeTransDate = ref([]);
|
const daterangeTransDate = ref([]);
|
||||||
const daterangeCreateTime = ref([]);
|
|
||||||
const eventTypeOptions = trans_group_event_type || [];
|
const eventTypeOptions = trans_group_event_type || [];
|
||||||
// const approveDialog = ref(false);
|
|
||||||
// const approveForm = ref({});
|
|
||||||
// const displayManageTags = ref('');
|
|
||||||
const sheepOptions = ref([]);
|
const sheepOptions = ref([]);
|
||||||
const sheepfoldOptions = ref([]);
|
const sheepfoldOptions = ref([]);
|
||||||
const sheepfoldNameMap = ref({});
|
const sheepfoldNameMap = ref({});
|
||||||
@ -261,17 +192,15 @@ const data = reactive({
|
|||||||
},
|
},
|
||||||
queryParams: {
|
queryParams: {
|
||||||
pageNum: 1,
|
pageNum: 1,
|
||||||
pageSize: 10,
|
pageSize: 20,
|
||||||
sheepId: null,
|
sheepId: null,
|
||||||
manageTags: null,
|
manageTags: null,
|
||||||
eventType: null,
|
|
||||||
ranchId: null,
|
ranchId: null,
|
||||||
foldTo: null,
|
foldTo: null,
|
||||||
foldFrom: null,
|
foldFrom: null,
|
||||||
varietyId: null,
|
varietyId: null,
|
||||||
sheepTypeId: null,
|
sheepTypeId: null,
|
||||||
status: null,
|
status: null,
|
||||||
createTime: null,
|
|
||||||
},
|
},
|
||||||
rules: {
|
rules: {
|
||||||
manageTags: [{ required: true, message: '请输入耳号', trigger: 'blur' }],
|
manageTags: [{ required: true, message: '请输入耳号', trigger: 'blur' }],
|
||||||
@ -290,10 +219,6 @@ const { queryParams, form, rules } = toRefs(data);
|
|||||||
function getList() {
|
function getList() {
|
||||||
loading.value = true;
|
loading.value = true;
|
||||||
queryParams.value.params = {};
|
queryParams.value.params = {};
|
||||||
if (daterangeCreateTime.value?.length) {
|
|
||||||
queryParams.value.params.beginCreateTime = daterangeCreateTime.value[0];
|
|
||||||
queryParams.value.params.endCreateTime = daterangeCreateTime.value[1];
|
|
||||||
}
|
|
||||||
if (daterangeTransDate.value?.length) {
|
if (daterangeTransDate.value?.length) {
|
||||||
queryParams.value.params.beginTransDate = daterangeTransDate.value[0];
|
queryParams.value.params.beginTransDate = daterangeTransDate.value[0];
|
||||||
queryParams.value.params.endTransDate = daterangeTransDate.value[1];
|
queryParams.value.params.endTransDate = daterangeTransDate.value[1];
|
||||||
@ -566,9 +491,7 @@ function handleQuery() {
|
|||||||
|
|
||||||
//重置搜索框
|
//重置搜索框
|
||||||
function resetQuery() {
|
function resetQuery() {
|
||||||
daterangeCreateTime.value = [];
|
|
||||||
daterangeTransDate.value = [];
|
daterangeTransDate.value = [];
|
||||||
queryParams.value.eventType = null;
|
|
||||||
proxy.resetForm('queryRef');
|
proxy.resetForm('queryRef');
|
||||||
handleQuery();
|
handleQuery();
|
||||||
}
|
}
|
||||||
@ -698,40 +621,6 @@ function handleExport() {
|
|||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
// 审核
|
|
||||||
//function handleApprove(row) {
|
|
||||||
// approveForm.value = { ...row };
|
|
||||||
// approveDialog.value = true;
|
|
||||||
// displayManageTags.value = row.manageTags;
|
|
||||||
// }
|
|
||||||
|
|
||||||
// 审批同意
|
|
||||||
// function handleApproveAgree() {
|
|
||||||
// if (typeof approveForm.value.foldTo !== 'number') {
|
|
||||||
// approveForm.value.foldTo = Number(approveForm.value.foldTo);
|
|
||||||
// }
|
|
||||||
|
|
||||||
// approveForm.value.status = 1;
|
|
||||||
// approveScTransGroup(approveForm.value).then(() => {
|
|
||||||
// approveDialog.value = false;
|
|
||||||
// proxy.$modal.msgSuccess('审批通过,羊只所在羊舍已更新');
|
|
||||||
// getList();
|
|
||||||
// }).catch(error => {
|
|
||||||
// proxy.$modal.msgError(`审批失败:${error.message}`);
|
|
||||||
// });
|
|
||||||
// }
|
|
||||||
|
|
||||||
// function handleApproveReject() {
|
|
||||||
// approveForm.value.status = 2;
|
|
||||||
// approveScTransGroup(approveForm.value).then(() => {
|
|
||||||
// approveDialog.value = false;
|
|
||||||
// proxy.$modal.msgSuccess('审批已驳回');
|
|
||||||
// getList();
|
|
||||||
// }).catch(error => {
|
|
||||||
// proxy.$modal.msgError(`审批失败:${error.message}`);
|
|
||||||
// });
|
|
||||||
// }
|
|
||||||
|
|
||||||
//加载羊舍数据
|
//加载羊舍数据
|
||||||
function loadSheepfold() {
|
function loadSheepfold() {
|
||||||
listSheepfold({ pageNum: 1, pageSize: 9999 }).then((res) => {
|
listSheepfold({ pageNum: 1, pageSize: 9999 }).then((res) => {
|
||||||
|
|||||||
@ -2,10 +2,6 @@
|
|||||||
<div class="app-container">
|
<div class="app-container">
|
||||||
<!-- 查询表单 -->
|
<!-- 查询表单 -->
|
||||||
<el-form :model="queryParams" ref="queryRef" :inline="true" v-show="showSearch" label-width="68px">
|
<el-form :model="queryParams" ref="queryRef" :inline="true" v-show="showSearch" label-width="68px">
|
||||||
<el-form-item label="创建时间" style="width: 308px">
|
|
||||||
<el-date-picker v-model="daterangeCreateTime" value-format="YYYY-MM-DD" type="daterange" range-separator="-"
|
|
||||||
start-placeholder="开始日期" end-placeholder="结束日期" />
|
|
||||||
</el-form-item>
|
|
||||||
<el-form-item label="转场日期" style="width: 308px">
|
<el-form-item label="转场日期" style="width: 308px">
|
||||||
<el-date-picker v-model="transitionDateRange" value-format="YYYY-MM-DD" type="daterange" range-separator="-"
|
<el-date-picker v-model="transitionDateRange" value-format="YYYY-MM-DD" type="daterange" range-separator="-"
|
||||||
start-placeholder="开始日期" end-placeholder="结束日期"></el-date-picker>
|
start-placeholder="开始日期" end-placeholder="结束日期"></el-date-picker>
|
||||||
@ -19,12 +15,6 @@
|
|||||||
<el-option v-for="item in varietyOptions" :key="item.id" :label="item.variety" :value="item.id" />
|
<el-option v-for="item in varietyOptions" :key="item.id" :label="item.variety" :value="item.id" />
|
||||||
</el-select>
|
</el-select>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item label="事件类型" prop="eventType" style="width: 308px">
|
|
||||||
<el-select v-model="queryParams.eventType" placeholder="请选择事件类型" clearable style="min-width:150px">
|
|
||||||
<el-option label="转场转入" value="转场转入" />
|
|
||||||
<el-option label="转场转出" value="转场转出" />
|
|
||||||
</el-select>
|
|
||||||
</el-form-item>
|
|
||||||
<el-form-item label="转场类型" prop="transType" style="width: 308px">
|
<el-form-item label="转场类型" prop="transType" style="width: 308px">
|
||||||
<el-select v-model="queryParams.transType" placeholder="请选择转场类型" clearable style="min-width:150px">
|
<el-select v-model="queryParams.transType" placeholder="请选择转场类型" clearable style="min-width:150px">
|
||||||
<el-option label="内部调拨" :value="0" />
|
<el-option label="内部调拨" :value="0" />
|
||||||
@ -77,19 +67,14 @@
|
|||||||
<!-- 列表 -->
|
<!-- 列表 -->
|
||||||
<el-table v-loading="loading" :data="transition_infoList" @selection-change="handleSelectionChange">
|
<el-table v-loading="loading" :data="transition_infoList" @selection-change="handleSelectionChange">
|
||||||
<el-table-column type="selection" width="55" align="center" />
|
<el-table-column type="selection" width="55" align="center" />
|
||||||
<el-table-column label="创建时间" align="center" prop="createTime" min-width="130" fixed>
|
<el-table-column label="管理耳号" align="center" prop="manageTags" min-width="100" fixed />
|
||||||
<template #default="scope">
|
<el-table-column label="事件类型" align="center" prop="eventType" min-width="120" />
|
||||||
<span>{{ parseTime(scope.row.createTime, '{y}-{m}-{d} {h}:{i}') }}</span>
|
<el-table-column label="转场类型" align="center" prop="transTypeText" />
|
||||||
</template>
|
|
||||||
</el-table-column>
|
|
||||||
<el-table-column label="转场日期" align="center" prop="transitionDate" min-width="150">
|
<el-table-column label="转场日期" align="center" prop="transitionDate" min-width="150">
|
||||||
<template #default="scope">
|
<template #default="scope">
|
||||||
<span>{{ parseTime(scope.row.transitionDate, '{y}-{m}-{d}') }}</span>
|
<span>{{ parseTime(scope.row.transitionDate, '{y}-{m}-{d}') }}</span>
|
||||||
</template>
|
</template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column label="管理耳号" align="center" prop="manageTags" min-width="100" />
|
|
||||||
<el-table-column label="事件类型" align="center" prop="eventType" min-width="120" />
|
|
||||||
<el-table-column label="转场类型" align="center" prop="transTypeText" />
|
|
||||||
<el-table-column label="品种" align="center" prop="varietyName" />
|
<el-table-column label="品种" align="center" prop="varietyName" />
|
||||||
<el-table-column label="转入牧场" align="center" prop="transTo" min-width="120" />
|
<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="transFrom" />
|
||||||
@ -108,6 +93,11 @@
|
|||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column label="备注" align="center" prop="comment" />
|
<el-table-column label="备注" align="center" prop="comment" />
|
||||||
<el-table-column label="创建人" align="center" prop="createBy" />
|
<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" min-width="180" fixed="right">
|
<el-table-column label="操作" align="center" min-width="180" fixed="right">
|
||||||
<template #default="scope">
|
<template #default="scope">
|
||||||
<el-button link type="primary" icon="Edit" @click="handleApprove(scope.row)"
|
<el-button link type="primary" icon="Edit" @click="handleApprove(scope.row)"
|
||||||
@ -119,7 +109,7 @@
|
|||||||
</el-table>
|
</el-table>
|
||||||
|
|
||||||
<pagination v-show="total > 0" :total="total" v-model:page="queryParams.pageNum"
|
<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-dialog :title="title" v-model="open" width="500px" append-to-body>
|
||||||
@ -250,7 +240,6 @@ const multiple = ref(true)
|
|||||||
const total = ref(0)
|
const total = ref(0)
|
||||||
const title = ref('')
|
const title = ref('')
|
||||||
const transitionDateRange = ref([])
|
const transitionDateRange = ref([])
|
||||||
const daterangeCreateTime = ref([])
|
|
||||||
const approveDialog = ref(false)
|
const approveDialog = ref(false)
|
||||||
const approveForm = ref({})
|
const approveForm = ref({})
|
||||||
const displayManageTags = ref('')
|
const displayManageTags = ref('')
|
||||||
@ -275,15 +264,13 @@ const data = reactive({
|
|||||||
},
|
},
|
||||||
queryParams: {
|
queryParams: {
|
||||||
pageNum: 1,
|
pageNum: 1,
|
||||||
pageSize: 10,
|
pageSize: 20,
|
||||||
manageTags: [],
|
manageTags: [],
|
||||||
varietyId: null,
|
varietyId: null,
|
||||||
eventType: null,
|
|
||||||
transType: null,
|
transType: null,
|
||||||
transTo: null,
|
transTo: null,
|
||||||
transFrom: null,
|
transFrom: null,
|
||||||
status: null,
|
status: null,
|
||||||
createTime: null,
|
|
||||||
transitionDate: null
|
transitionDate: null
|
||||||
},
|
},
|
||||||
rules: {
|
rules: {
|
||||||
@ -316,10 +303,6 @@ const { queryParams, form, rules } = toRefs(data)
|
|||||||
function getList() {
|
function getList() {
|
||||||
loading.value = true
|
loading.value = true
|
||||||
queryParams.value.params = {}
|
queryParams.value.params = {}
|
||||||
if (daterangeCreateTime.value?.length) {
|
|
||||||
queryParams.value.params.beginCreateTime = daterangeCreateTime.value[0]
|
|
||||||
queryParams.value.params.endCreateTime = daterangeCreateTime.value[1]
|
|
||||||
}
|
|
||||||
if (queryParams.value.transType !== null) {
|
if (queryParams.value.transType !== null) {
|
||||||
queryParams.value.params.transType = queryParams.value.transType;
|
queryParams.value.params.transType = queryParams.value.transType;
|
||||||
}
|
}
|
||||||
@ -380,10 +363,8 @@ function loadSheepOptions() {
|
|||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
// 加载牧场下的羊舍
|
//加载转入牧场下的羊舍
|
||||||
// 修改:加载转入牧场下的接收羊舍(使用牧场ID而非名称)
|
|
||||||
function loadSheepfoldsByRanch(ranchName) {
|
function loadSheepfoldsByRanch(ranchName) {
|
||||||
// 1. 根据转入牧场名称匹配牧场ID
|
|
||||||
const matchedRanch = ranchOptions.value.find(
|
const matchedRanch = ranchOptions.value.find(
|
||||||
ranch => ranch.ranchName === ranchName
|
ranch => ranch.ranchName === ranchName
|
||||||
);
|
);
|
||||||
@ -392,14 +373,13 @@ function loadSheepfoldsByRanch(ranchName) {
|
|||||||
acceptSheepfold.value = [];
|
acceptSheepfold.value = [];
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
const ranchId = matchedRanch.id; // 获取匹配的牧场ID
|
const ranchId = matchedRanch.id;
|
||||||
|
|
||||||
// 2. 使用牧场ID调用接口加载羊舍(修正参数)
|
|
||||||
request({
|
request({
|
||||||
url: '/sheepfold_management/sheepfold_management/list',
|
url: '/sheepfold_management/sheepfold_management/list',
|
||||||
method: 'get',
|
method: 'get',
|
||||||
params: {
|
params: {
|
||||||
ranchId: ranchId, // 关键:使用牧场ID而非名称
|
ranchId: ranchId,
|
||||||
pageNum: 1,
|
pageNum: 1,
|
||||||
pageSize: 999
|
pageSize: 999
|
||||||
}
|
}
|
||||||
@ -414,7 +394,6 @@ function loadSheepfoldsByRanch(ranchName) {
|
|||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
// 通过牧场 ID 查询牧场名称
|
|
||||||
async function getRanchNameByRanchId(ranchId) {
|
async function getRanchNameByRanchId(ranchId) {
|
||||||
if (!ranchId) return '';
|
if (!ranchId) return '';
|
||||||
try {
|
try {
|
||||||
@ -591,7 +570,7 @@ function getTransTypeLabel(value) {
|
|||||||
return item ? item.label : '未知类型';
|
return item ? item.label : '未知类型';
|
||||||
}
|
}
|
||||||
|
|
||||||
// 获取状态文本(与转群页面一致)
|
// 获取状态文本
|
||||||
function getStatusLabel(value) {
|
function getStatusLabel(value) {
|
||||||
const statusArray = status.value;
|
const statusArray = status.value;
|
||||||
if (!Array.isArray(statusArray)) {
|
if (!Array.isArray(statusArray)) {
|
||||||
@ -615,7 +594,6 @@ function handleQuery() {
|
|||||||
|
|
||||||
//重置
|
//重置
|
||||||
function resetQuery() {
|
function resetQuery() {
|
||||||
daterangeCreateTime.value = []
|
|
||||||
queryParams.value.transType = null;
|
queryParams.value.transType = null;
|
||||||
transitionDateRange.value = [];
|
transitionDateRange.value = [];
|
||||||
proxy.resetForm("queryRef")
|
proxy.resetForm("queryRef")
|
||||||
|
|||||||
@ -2,8 +2,8 @@
|
|||||||
<div class="app-container">
|
<div class="app-container">
|
||||||
<!-- 搜索区域 -->
|
<!-- 搜索区域 -->
|
||||||
<el-form :model="queryParams" ref="queryRef" :inline="true" v-show="showSearch" label-width="68px">
|
<el-form :model="queryParams" ref="queryRef" :inline="true" v-show="showSearch" label-width="68px">
|
||||||
<el-form-item label="创建时间" style="width: 308px">
|
<el-form-item label="事件日期" style="width: 308px">
|
||||||
<el-date-picker v-model="daterangeCreateTime" value-format="YYYY-MM-DD" type="daterange" range-separator="-"
|
<el-date-picker v-model="daterangeEventDate" value-format="YYYY-MM-DD" type="daterange" range-separator="-"
|
||||||
start-placeholder="开始日期" end-placeholder="结束日期" />
|
start-placeholder="开始日期" end-placeholder="结束日期" />
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item label="管理耳号" prop="manageTags">
|
<el-form-item label="管理耳号" prop="manageTags">
|
||||||
@ -51,19 +51,23 @@
|
|||||||
<!-- 列表表格 -->
|
<!-- 列表表格 -->
|
||||||
<el-table v-loading="loading" :data="castrateList" @selection-change="handleSelectionChange">
|
<el-table v-loading="loading" :data="castrateList" @selection-change="handleSelectionChange">
|
||||||
<el-table-column type="selection" width="55" align="center" />
|
<el-table-column type="selection" width="55" align="center" />
|
||||||
<!-- <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="manageTags" />
|
||||||
<el-table-column label="事件类型" align="center" prop="eventType" width="120" />
|
<el-table-column label="事件类型" align="center" prop="eventType" width="120" />
|
||||||
|
<el-table-column label="事件日期" align="center" prop="eventDate" width="130">
|
||||||
|
<template #default="scope">
|
||||||
|
<span>{{ parseTime(scope.row.eventDate, '{y}-{m}-{d}') }}</span>
|
||||||
|
</template>
|
||||||
|
</el-table-column>
|
||||||
<el-table-column label="羊舍" align="center" prop="sheepfoldName" />
|
<el-table-column label="羊舍" align="center" prop="sheepfoldName" />
|
||||||
<el-table-column label="品种" align="center" prop="varietyName" />
|
<el-table-column label="品种" align="center" prop="varietyName" />
|
||||||
<el-table-column label="备注" align="center" prop="comment" />
|
<el-table-column label="备注" align="center" prop="comment" />
|
||||||
<el-table-column label="技术员" align="center" prop="technician" />
|
<el-table-column label="技术员" align="center" prop="technician" />
|
||||||
<el-table-column label="创建人" align="center" prop="createBy" />
|
<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">
|
<el-table-column label="操作" align="center" class-name="small-padding fixed-width">
|
||||||
<template #default="scope">
|
<template #default="scope">
|
||||||
<!-- 按需添加 是否需要修改功能 -->
|
<!-- 按需添加 是否需要修改功能 -->
|
||||||
@ -76,7 +80,7 @@
|
|||||||
</el-table>
|
</el-table>
|
||||||
|
|
||||||
<pagination v-show="total > 0" :total="total" v-model:page="queryParams.pageNum"
|
<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-dialog :title="title" v-model="open" width="500px" append-to-body>
|
||||||
@ -101,6 +105,9 @@
|
|||||||
<el-form-item label="技术员" prop="technician">
|
<el-form-item label="技术员" prop="technician">
|
||||||
<el-input v-model="form.technician" placeholder="请输入技术员" />
|
<el-input v-model="form.technician" placeholder="请输入技术员" />
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
|
<el-form-item label="事件日期" prop="eventDate">
|
||||||
|
<el-date-picker v-model="form.eventDate" value-format="YYYY-MM-DD" type="date" placeholder="请选择事件日期" />
|
||||||
|
</el-form-item>
|
||||||
</el-form>
|
</el-form>
|
||||||
<template #footer>
|
<template #footer>
|
||||||
<div class="dialog-footer">
|
<div class="dialog-footer">
|
||||||
@ -131,37 +138,38 @@ const title = ref('')
|
|||||||
const daterangeCreateTime = ref([])
|
const daterangeCreateTime = ref([])
|
||||||
const sheepOptions = ref([])
|
const sheepOptions = ref([])
|
||||||
const varietyOptions = ref([])
|
const varietyOptions = ref([])
|
||||||
|
const daterangeEventDate = ref([])
|
||||||
|
|
||||||
const data = reactive({
|
const data = reactive({
|
||||||
form: {
|
form: {
|
||||||
manageTags: [],
|
manageTags: [],
|
||||||
sheepfold: null,
|
sheepfold: null,
|
||||||
|
sheepfoldDisabled: false,
|
||||||
technician: null,
|
technician: null,
|
||||||
tagDetails: {}
|
tagDetails: {},
|
||||||
|
eventDate: null,
|
||||||
},
|
},
|
||||||
queryParams: {
|
queryParams: {
|
||||||
pageNum: 1,
|
pageNum: 1,
|
||||||
pageSize: 10,
|
pageSize: 20,
|
||||||
manageTags: null,
|
manageTags: null,
|
||||||
// sheepId: null,
|
// sheepId: null,
|
||||||
sheepfold: null,
|
sheepfold: null,
|
||||||
varietyId: null,
|
varietyId: null,
|
||||||
technician: null,
|
technician: null,
|
||||||
createTime: null
|
createTime: null,
|
||||||
|
beginEventDate: null,
|
||||||
|
endEventDate: null,
|
||||||
},
|
},
|
||||||
rules: {
|
rules: {
|
||||||
// sheepId: [
|
|
||||||
// { required: true, message: '羊只id不能为空', trigger: 'blur' }
|
|
||||||
// ],
|
|
||||||
manageTags: [
|
manageTags: [
|
||||||
{ required: true, message: '请输入管理耳号', trigger: 'blur' }
|
{ required: true, message: '请输入管理耳号', trigger: 'blur' }
|
||||||
],
|
],
|
||||||
// sheepfold: [
|
|
||||||
// { required: true, message: '请选择羊舍', trigger: 'change' }
|
|
||||||
// ],
|
|
||||||
technician: [
|
technician: [
|
||||||
{ required: true, message: '请输入技术员', trigger: 'blur' }
|
{ required: true, message: '请输入技术员', trigger: 'blur' }
|
||||||
|
],
|
||||||
|
eventDate: [
|
||||||
|
{ required: true, message: '请选择事件日期', trigger: 'change' }
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
@ -257,9 +265,14 @@ function getList() {
|
|||||||
q.params.beginCreateTime = daterangeCreateTime.value[0];
|
q.params.beginCreateTime = daterangeCreateTime.value[0];
|
||||||
q.params.endCreateTime = daterangeCreateTime.value[1];
|
q.params.endCreateTime = daterangeCreateTime.value[1];
|
||||||
}
|
}
|
||||||
|
if (daterangeEventDate.value?.length) {
|
||||||
|
q.params.beginEventDate = daterangeEventDate.value[0];
|
||||||
|
q.params.endEventDate = daterangeEventDate.value[1];
|
||||||
|
}
|
||||||
|
|
||||||
listCastrate(q).then(res => {
|
listCastrate(q).then(res => {
|
||||||
castrateList.value = res.rows;
|
castrateList.value = res.rows;
|
||||||
|
console.log("后端返回的列表数据:", res.rows);
|
||||||
total.value = res.total;
|
total.value = res.total;
|
||||||
loading.value = false;
|
loading.value = false;
|
||||||
});
|
});
|
||||||
@ -282,6 +295,7 @@ function reset() {
|
|||||||
manageTags: [],
|
manageTags: [],
|
||||||
sheepfold: null,
|
sheepfold: null,
|
||||||
technician: null,
|
technician: null,
|
||||||
|
eventDate: null
|
||||||
};
|
};
|
||||||
sheepOptions.value = [];
|
sheepOptions.value = [];
|
||||||
proxy.resetForm('castrateRef');
|
proxy.resetForm('castrateRef');
|
||||||
@ -296,6 +310,7 @@ function handleQuery() {
|
|||||||
//重置
|
//重置
|
||||||
function resetQuery() {
|
function resetQuery() {
|
||||||
daterangeCreateTime.value = []
|
daterangeCreateTime.value = []
|
||||||
|
daterangeEventDate.value = []
|
||||||
proxy.resetForm('queryRef')
|
proxy.resetForm('queryRef')
|
||||||
handleQuery()
|
handleQuery()
|
||||||
}
|
}
|
||||||
@ -388,7 +403,8 @@ function submitForm() {
|
|||||||
sheepfold: details.sheepfoldId || form.value.sheepfold,
|
sheepfold: details.sheepfoldId || form.value.sheepfold,
|
||||||
technician: form.value.technician,
|
technician: form.value.technician,
|
||||||
varietyId: details.varietyId,
|
varietyId: details.varietyId,
|
||||||
comment: details.comment
|
comment: details.comment,
|
||||||
|
eventDate: form.value.eventDate
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
|
||||||
|
|||||||
@ -1,8 +1,8 @@
|
|||||||
<template>
|
<template>
|
||||||
<div class="app-container">
|
<div class="app-container">
|
||||||
<el-form :model="queryParams" ref="queryRef" :inline="true" v-show="showSearch" label-width="68px">
|
<el-form :model="queryParams" ref="queryRef" :inline="true" v-show="showSearch" label-width="68px">
|
||||||
<el-form-item label="创建时间" style="width: 308px">
|
<el-form-item label="事件日期" style="width: 308px">
|
||||||
<el-date-picker v-model="daterangeCreateTime" value-format="YYYY-MM-DD" type="daterange" range-separator="-"
|
<el-date-picker v-model="daterangeEventDate" value-format="YYYY-MM-DD" type="daterange" range-separator="-"
|
||||||
start-placeholder="开始日期" end-placeholder="结束日期" />
|
start-placeholder="开始日期" end-placeholder="结束日期" />
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item label="管理耳号" prop="manageTags">
|
<el-form-item label="管理耳号" prop="manageTags">
|
||||||
@ -50,18 +50,23 @@
|
|||||||
<!-- 列表 -->
|
<!-- 列表 -->
|
||||||
<el-table v-loading="loading" :data="fixHoofList" @selection-change="handleSelectionChange">
|
<el-table v-loading="loading" :data="fixHoofList" @selection-change="handleSelectionChange">
|
||||||
<el-table-column type="selection" width="55" align="center" />
|
<el-table-column type="selection" width="55" align="center" />
|
||||||
<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="manageTags" />
|
||||||
<el-table-column label="事件类型" align="center" prop="eventType" width="120" />
|
<el-table-column label="事件类型" align="center" prop="eventType" width="120" />
|
||||||
|
<el-table-column label="事件日期" align="center" prop="eventDate" width="130">
|
||||||
|
<template #default="scope">
|
||||||
|
<span>{{ parseTime(scope.row.eventDate, '{y}-{m}-{d}') }}</span>
|
||||||
|
</template>
|
||||||
|
</el-table-column>
|
||||||
<el-table-column label="羊舍" align="center" prop="sheepfoldName" />
|
<el-table-column label="羊舍" align="center" prop="sheepfoldName" />
|
||||||
<el-table-column label="品种" align="center" prop="varietyName" />
|
<el-table-column label="品种" align="center" prop="varietyName" />
|
||||||
<el-table-column label="备注" align="center" prop="comment" />
|
<el-table-column label="备注" align="center" prop="comment" />
|
||||||
<el-table-column label="技术员" align="center" prop="technician" />
|
<el-table-column label="技术员" align="center" prop="technician" />
|
||||||
<el-table-column label="创建人" align="center" prop="createBy" />
|
<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">
|
<el-table-column label="操作" align="center" class-name="small-padding fixed-width">
|
||||||
<template #default="scope">
|
<template #default="scope">
|
||||||
<!-- 按需添加 是否需要修改功能 -->
|
<!-- 按需添加 是否需要修改功能 -->
|
||||||
@ -74,7 +79,7 @@
|
|||||||
</el-table>
|
</el-table>
|
||||||
|
|
||||||
<pagination v-show="total > 0" :total="total" v-model:page="queryParams.pageNum"
|
<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-dialog :title="title" v-model="open" width="500px" append-to-body>
|
||||||
@ -99,6 +104,10 @@
|
|||||||
<el-form-item label="技术员" prop="technician">
|
<el-form-item label="技术员" prop="technician">
|
||||||
<el-input v-model="form.technician" placeholder="请输入技术员" />
|
<el-input v-model="form.technician" placeholder="请输入技术员" />
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
|
<el-form-item label="事件日期" prop="eventDate">
|
||||||
|
<el-date-picker v-model="form.eventDate" value-format="YYYY-MM-DD" type="date" placeholder="请选择事件日期"
|
||||||
|
clearable />
|
||||||
|
</el-form-item>
|
||||||
</el-form>
|
</el-form>
|
||||||
<template #footer>
|
<template #footer>
|
||||||
<div class="dialog-footer">
|
<div class="dialog-footer">
|
||||||
@ -128,16 +137,18 @@ const title = ref('')
|
|||||||
const daterangeCreateTime = ref([])
|
const daterangeCreateTime = ref([])
|
||||||
const varietyOptions = ref([])
|
const varietyOptions = ref([])
|
||||||
const sheepOptions = ref([])
|
const sheepOptions = ref([])
|
||||||
|
const daterangeEventDate = ref([])
|
||||||
|
|
||||||
const data = reactive({
|
const data = reactive({
|
||||||
form: {
|
form: {
|
||||||
sheepfold: null,
|
sheepfold: null,
|
||||||
manageTags: [],
|
manageTags: [],
|
||||||
tagDetails: {},
|
tagDetails: {},
|
||||||
|
eventDate: null,
|
||||||
},
|
},
|
||||||
queryParams: {
|
queryParams: {
|
||||||
pageNum: 1,
|
pageNum: 1,
|
||||||
pageSize: 10,
|
pageSize: 20,
|
||||||
sheepId: null,
|
sheepId: null,
|
||||||
sheepfold: null,
|
sheepfold: null,
|
||||||
varietyId: null,
|
varietyId: null,
|
||||||
@ -153,6 +164,9 @@ const data = reactive({
|
|||||||
],
|
],
|
||||||
technician: [
|
technician: [
|
||||||
{ required: true, message: '请输入技术员', trigger: 'blur' }
|
{ required: true, message: '请输入技术员', trigger: 'blur' }
|
||||||
|
],
|
||||||
|
eventDate: [
|
||||||
|
{ required: true, message: '请选择事件日期', trigger: 'change' }
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
@ -240,6 +254,11 @@ function getList() {
|
|||||||
q.params.beginCreateTime = daterangeCreateTime.value[0]
|
q.params.beginCreateTime = daterangeCreateTime.value[0]
|
||||||
q.params.endCreateTime = daterangeCreateTime.value[1]
|
q.params.endCreateTime = daterangeCreateTime.value[1]
|
||||||
}
|
}
|
||||||
|
if (daterangeEventDate.value?.length) {
|
||||||
|
q.params.beginEventDate = daterangeEventDate.value[0]
|
||||||
|
q.params.endEventDate = daterangeEventDate.value[1]
|
||||||
|
}
|
||||||
|
|
||||||
listFixHoof(q).then(res => {
|
listFixHoof(q).then(res => {
|
||||||
fixHoofList.value = res.rows
|
fixHoofList.value = res.rows
|
||||||
total.value = res.total
|
total.value = res.total
|
||||||
@ -263,7 +282,8 @@ function reset() {
|
|||||||
sheepfold: null,
|
sheepfold: null,
|
||||||
manageTags: [],
|
manageTags: [],
|
||||||
varietyId: null,
|
varietyId: null,
|
||||||
varietyName: null
|
varietyName: null,
|
||||||
|
eventDate: null
|
||||||
}
|
}
|
||||||
sheepOptions.value = [];
|
sheepOptions.value = [];
|
||||||
proxy.resetForm('fixHoofRef')
|
proxy.resetForm('fixHoofRef')
|
||||||
@ -278,6 +298,7 @@ function handleQuery() {
|
|||||||
//重置
|
//重置
|
||||||
function resetQuery() {
|
function resetQuery() {
|
||||||
daterangeCreateTime.value = []
|
daterangeCreateTime.value = []
|
||||||
|
daterangeEventDate.value = []
|
||||||
queryParams.value.varietyId = null
|
queryParams.value.varietyId = null
|
||||||
proxy.resetForm('queryRef')
|
proxy.resetForm('queryRef')
|
||||||
handleQuery()
|
handleQuery()
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user