新增羊只下载模板,导入修复,新增断奶体重字段

This commit is contained in:
zyh
2026-01-19 12:47:17 +08:00
parent 3a85eb2aa2
commit 7b2e282a36

View File

@@ -58,11 +58,24 @@
<el-input v-model="form.bornWeight" placeholder="请输入出生体重" /> <el-input v-model="form.bornWeight" placeholder="请输入出生体重" />
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="10">
<el-form-item label="断奶体重(kg)" prop="weaningWeight">
<el-input v-model="form.weaningWeight" placeholder="请输入断奶体重" />
</el-form-item>
</el-col>
</el-row>
<el-row :gutter="20">
<el-col :span="10"> <el-col :span="10">
<el-form-item label="出生日期" prop="birthday"> <el-form-item label="出生日期" prop="birthday">
<el-date-picker v-model="form.birthday" type="date" placeholder="选择出生日期" /> <el-date-picker v-model="form.birthday" type="date" placeholder="选择出生日期" />
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="10">
<el-form-item label="胎次" prop="parity">
<el-input-number v-model="form.parity" :min="0" label="胎次" />
</el-form-item>
</el-col>
</el-row> </el-row>
<el-row :gutter="20"> <el-row :gutter="20">
@@ -75,14 +88,6 @@
</el-select> </el-select>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="10">
<el-form-item label="胎次" prop="parity">
<el-input-number v-model="form.parity" :min="0" label="胎次" />
</el-form-item>
</el-col>
</el-row>
<el-row :gutter="20">
<el-col :span="10"> <el-col :span="10">
<el-form-item label="品种" prop="varietyId"> <el-form-item label="品种" prop="varietyId">
<el-select v-model="form.varietyId" placeholder="请选择品种" clearable> <el-select v-model="form.varietyId" placeholder="请选择品种" clearable>
@@ -90,6 +95,9 @@
</el-select> </el-select>
</el-form-item> </el-form-item>
</el-col> </el-col>
</el-row>
<el-row :gutter="20">
<el-col :span="10"> <el-col :span="10">
<el-form-item label="羊只类别" prop="typeId"> <el-form-item label="羊只类别" prop="typeId">
<el-select v-model="form.typeId" placeholder="请选择羊只类别" clearable> <el-select v-model="form.typeId" placeholder="请选择羊只类别" clearable>
@@ -97,10 +105,6 @@
</el-select> </el-select>
</el-form-item> </el-form-item>
</el-col> </el-col>
</el-row>
<el-row :gutter="20">
<el-col :span="10"> <el-col :span="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="请输入技术员" />
@@ -130,7 +134,6 @@
<div class="el-upload__text">将文件拖到此处<em>点击上传</em></div> <div class="el-upload__text">将文件拖到此处<em>点击上传</em></div>
</el-upload> </el-upload>
<template #footer> <template #footer>
<el-button type="info" @click="downloadTemplate">下载模板</el-button>
<el-button type="primary" @click="submitUpload"> </el-button> <el-button type="primary" @click="submitUpload"> </el-button>
</template> </template>
</el-dialog> </el-dialog>
@@ -162,7 +165,8 @@ const form = ref({
typeId: null, typeId: null,
joinDate: '', joinDate: '',
comment: '', comment: '',
technician: '' technician: '',
weaningWeight: ''
}) })
const formRef = ref(null) const formRef = ref(null)
const sheepfoldOptions = ref([]) const sheepfoldOptions = ref([])
@@ -176,6 +180,7 @@ const rules = {
ranchId: [{ required: true, message: '请选择牧场', trigger: 'change' }], ranchId: [{ required: true, message: '请选择牧场', trigger: 'change' }],
sheepfold: [{ required: true, message: '请选择羊舍', trigger: 'change' }], sheepfold: [{ required: true, message: '请选择羊舍', trigger: 'change' }],
bornWeight: [{ required: true, message: '请输入出生体重', trigger: 'change' }], bornWeight: [{ required: true, message: '请输入出生体重', trigger: 'change' }],
weaningWeight: [{ required: true, message: '请输入断奶体重', trigger: 'blur' }],
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' }],
@@ -237,13 +242,6 @@ function handleRanchChange(ranchId) {
}); });
} }
//羊舍列表
//function getSheepfoldOptions() {
// listSheepfold({ pageNum: 1, pageSize: 9999 }).then(res => {
// sheepfoldOptions.value = res.rows || []
// })
//}
//品种列表 //品种列表
function getVarietyOptions() { function getVarietyOptions() {
request({ request({
@@ -330,7 +328,7 @@ function resetForm() {
technician: '' technician: ''
} }
} }
//导出 //下载模板
function handleExportForm() { function handleExportForm() {
exportSheepForm(form.value).then(res => { exportSheepForm(form.value).then(res => {
const blob = new Blob([res], { type: 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet' }) const blob = new Blob([res], { type: 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet' })
@@ -350,15 +348,6 @@ const headers = ref({ Authorization: 'Bearer ' + getToken() })
function handleImport() { function handleImport() {
importOpen.value = true importOpen.value = true
} }
function downloadTemplate() {
request({ url: '/produce/manage_sheep/add_sheep/importTemplate', method: 'get', responseType: 'blob' }).then(res => {
const blob = new Blob([res], { type: 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet' })
const link = document.createElement('a')
link.href = URL.createObjectURL(blob)
link.download = `羊只模板_${Date.now()}.xlsx`
link.click()
})
}
function submitUpload() { function submitUpload() {
uploadRef.value?.submit() uploadRef.value?.submit()
} }
@@ -382,7 +371,6 @@ function handleImportError(err) {
} }
onMounted(() => { onMounted(() => {
// getSheepfoldOptions()
loadSheepTypeList() loadSheepTypeList()
loadRanchList() loadRanchList()
getVarietyOptions() getVarietyOptions()