新增羊只,转群功能完善
This commit is contained in:
parent
d26bd861fd
commit
edab958f7c
10
src/api/produce/sheep/sheep.js
Normal file
10
src/api/produce/sheep/sheep.js
Normal file
@ -0,0 +1,10 @@
|
|||||||
|
import request from '@/utils/request';
|
||||||
|
|
||||||
|
// 新增羊只基本信息
|
||||||
|
export function addSheep(data) {
|
||||||
|
return request({
|
||||||
|
url: '/produce/sheep', // 确保这是正确的后端接口地址
|
||||||
|
method: 'post',
|
||||||
|
data: data
|
||||||
|
});
|
||||||
|
}
|
@ -143,21 +143,24 @@ const rules = {
|
|||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
//表单验证
|
//表单验证 提交表单数据
|
||||||
const submitForm = () => {
|
const submitForm = () => {
|
||||||
formRef.value.validate((valid) => {
|
formRef.value.validate((valid) => {
|
||||||
console.log('表单验证结果:', valid);
|
|
||||||
if (valid) {
|
if (valid) {
|
||||||
addSheep(form.value)
|
addSheep(form.value) // 调用 API 方法,addSheep 应已在 @/api/sheep/sheep.js 中定义
|
||||||
.then(response => {
|
.then(response => {
|
||||||
console.log('后端响应:', response);
|
|
||||||
if (response.code === 200) {
|
if (response.code === 200) {
|
||||||
alert('新增成功');
|
alert('新增成功');
|
||||||
resetForm();
|
resetForm();
|
||||||
|
// 可以在这里添加刷新列表的逻辑,例如调用 list 方法
|
||||||
} else {
|
} else {
|
||||||
alert(response.msg || '新增失败');
|
alert(response.msg || '新增失败');
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
|
.catch(error => {
|
||||||
|
console.error('新增失败:', error);
|
||||||
|
alert('新增失败,请稍后重试');
|
||||||
|
});
|
||||||
} else {
|
} else {
|
||||||
alert('请填写所有必填字段');
|
alert('请填写所有必填字段');
|
||||||
}
|
}
|
||||||
|
@ -107,9 +107,8 @@
|
|||||||
</el-select>
|
</el-select>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item label="转群原因" prop="reason">
|
<el-form-item label="转群原因" prop="reason">
|
||||||
<el-select v-model="form.reason" placeholder="请选择转群原因">
|
<el-select v-model="form.reason" placeholder="请选择转群原因" clearable>
|
||||||
<el-option v-for="dict in trans_group_reason" :key="dict.value" :label="dict.label"
|
<el-option v-for="dict in trans_group_reason" :key="dict.value" :label="dict.label" :value="dict.value" />
|
||||||
:value="dict.value"></el-option>
|
|
||||||
</el-select>
|
</el-select>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item label="技术员" prop="technician">
|
<el-form-item label="技术员" prop="technician">
|
||||||
@ -134,15 +133,16 @@
|
|||||||
<el-form-item label="羊只id">
|
<el-form-item label="羊只id">
|
||||||
<el-input v-model="approveForm.sheepId" disabled />
|
<el-input v-model="approveForm.sheepId" disabled />
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item label="转入羊舍">
|
|
||||||
<el-input v-model="approveForm.foldTo" disabled />
|
|
||||||
</el-form-item>
|
|
||||||
<el-form-item label="转出羊舍">
|
<el-form-item label="转出羊舍">
|
||||||
<el-input v-model="approveForm.foldFrom" disabled />
|
<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>
|
||||||
<el-form-item label="转群原因">
|
<el-form-item label="转群原因">
|
||||||
<el-select v-model="approveForm.reason" disabled>
|
<el-select v-model="approveForm.reason" disabled>
|
||||||
<el-option v-for="dict in trans_group_reason" :key="dict.value" :label="dict.label" :value="dict.value" />
|
<el-option :label="trans_group_reason.find(d => d.value == approveForm.reason)?.label || ''"
|
||||||
|
:value="approveForm.reason" />
|
||||||
</el-select>
|
</el-select>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item label="技术员">
|
<el-form-item label="技术员">
|
||||||
@ -165,6 +165,7 @@
|
|||||||
import { listTrans_group, getTrans_group, delTrans_group, addTrans_group, updateTrans_group } from "@/api/produce/manage_sheep/trans_group/trans_group"
|
import { listTrans_group, getTrans_group, delTrans_group, addTrans_group, updateTrans_group } from "@/api/produce/manage_sheep/trans_group/trans_group"
|
||||||
import { listSheepfold_management as listSheepfold } from '@/api/sheepfold_management/sheepfold_management';
|
import { listSheepfold_management as listSheepfold } from '@/api/sheepfold_management/sheepfold_management';
|
||||||
|
|
||||||
|
|
||||||
const { proxy } = getCurrentInstance()
|
const { proxy } = getCurrentInstance()
|
||||||
const { trans_group_reason, status } = proxy.useDict('trans_group_reason', 'status')
|
const { trans_group_reason, status } = proxy.useDict('trans_group_reason', 'status')
|
||||||
|
|
||||||
@ -284,9 +285,12 @@ function handleUpdate(row) {
|
|||||||
reset()
|
reset()
|
||||||
const _id = row.id || ids.value
|
const _id = row.id || ids.value
|
||||||
getTrans_group(_id).then(response => {
|
getTrans_group(_id).then(response => {
|
||||||
form.value = response.data
|
const data = response.data
|
||||||
|
data.foldFrom = Number(data.foldFrom)
|
||||||
|
data.foldTo = Number(data.foldTo)
|
||||||
|
data.reason = String(data.reason)
|
||||||
|
form.value = data
|
||||||
open.value = true
|
open.value = true
|
||||||
title.value = "修改转群记录"
|
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -329,7 +333,6 @@ function handleExport() {
|
|||||||
}, `trans_group_${new Date().getTime()}.xlsx`);
|
}, `trans_group_${new Date().getTime()}.xlsx`);
|
||||||
}
|
}
|
||||||
|
|
||||||
getList()
|
|
||||||
|
|
||||||
// 审批记录的对话框
|
// 审批记录的对话框
|
||||||
const approveDialog = ref(false);
|
const approveDialog = ref(false);
|
||||||
@ -337,7 +340,6 @@ const approveForm = ref({});
|
|||||||
|
|
||||||
// 审批按钮操作
|
// 审批按钮操作
|
||||||
function handleApprove(row) {
|
function handleApprove(row) {
|
||||||
// 打开审批对话框
|
|
||||||
approveForm.value = { ...row };
|
approveForm.value = { ...row };
|
||||||
approveDialog.value = true;
|
approveDialog.value = true;
|
||||||
}
|
}
|
||||||
@ -366,7 +368,7 @@ function handleApproveReject() {
|
|||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
//羊舍名称
|
//加载所有羊舍
|
||||||
const sheepfoldOptions = ref([]);
|
const sheepfoldOptions = ref([]);
|
||||||
|
|
||||||
function getSheepfoldOptions() {
|
function getSheepfoldOptions() {
|
||||||
@ -376,7 +378,32 @@ function getSheepfoldOptions() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
onMounted(() => {
|
onMounted(() => {
|
||||||
getList();
|
|
||||||
getSheepfoldOptions();
|
getSheepfoldOptions();
|
||||||
});
|
});
|
||||||
|
|
||||||
|
|
||||||
|
const sheepfoldNameMap = ref({})
|
||||||
|
|
||||||
|
function loadSheepfoldMap() {
|
||||||
|
listSheepfold({ pageNum: 1, pageSize: 9999 }).then(res => {
|
||||||
|
sheepfoldNameMap.value = res.rows.reduce((acc, item) => {
|
||||||
|
acc[item.id] = item.sheepfoldName
|
||||||
|
return acc
|
||||||
|
}, {})
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
onMounted(() => {
|
||||||
|
nextTick(() => {
|
||||||
|
if (trans_group_reason.value && trans_group_reason.value.length) {
|
||||||
|
trans_group_reason.value.forEach(item => {
|
||||||
|
item.value = Number(item.value)
|
||||||
|
})
|
||||||
|
}
|
||||||
|
loadSheepfoldMap()
|
||||||
|
})
|
||||||
|
})
|
||||||
|
|
||||||
|
|
||||||
|
getList()
|
||||||
</script>
|
</script>
|
||||||
|
Loading…
x
Reference in New Issue
Block a user