diff --git a/src/components/feed/PigBreedTable.vue b/src/components/feed/PigBreedTable.vue
index 8de6bbdd..7786a973 100644
--- a/src/components/feed/PigBreedTable.vue
+++ b/src/components/feed/PigBreedTable.vue
@@ -59,6 +59,12 @@
+
+
+
+ 查看详情
+
+
@@ -83,6 +89,21 @@
@size-change="handleSizeChange"
@current-change="handleCurrentChange"
>
+
+
+
+
+
@@ -90,16 +111,26 @@
import {ref, onMounted} from 'vue';
import {FeedApi} from '../../api/feed';
import {ElMessageBox, ElMessage} from 'element-plus';
+import PigNutrientRequirementsDisplay from './PigNutrientRequirementsDisplay.vue'; // 导入新的组件
export default {
name: 'PigBreedTable',
emits: ['edit'], // 声明触发的事件
+ components: {
+ PigNutrientRequirementsDisplay, // 注册组件
+ },
setup(props, { emit }) {
const tableData = ref([]);
const loading = ref(false);
const searchKeyword = ref('');
const expandRowKeys = ref([]); // 用于控制展开行
+ // 营养需求弹窗相关
+ const showNutrientDialog = ref(false);
+ const currentNutrientRequirements = ref([]);
+ const currentBreedName = ref('');
+ const currentAgeStageName = ref('');
+
const pagination = ref({
page: 1,
page_size: 10,
@@ -180,6 +211,14 @@ export default {
return cellValue;
};
+ // 处理查看营养需求详情
+ const handleViewNutrientRequirements = (pigType) => {
+ currentNutrientRequirements.value = pigType.pig_nutrient_requirements || [];
+ currentBreedName.value = pigType.breed_name;
+ currentAgeStageName.value = pigType.age_stage_name;
+ showNutrientDialog.value = true;
+ };
+
const handleEdit = (row) => {
emit('edit', row); // 触发 edit 事件,并传递当前行数据
};
@@ -216,11 +255,16 @@ export default {
searchKeyword,
expandRowKeys,
pagination,
+ showNutrientDialog,
+ currentNutrientRequirements,
+ currentBreedName,
+ currentAgeStageName,
handleSearch,
handleSizeChange,
handleCurrentChange,
handleExpandChange,
weightFormatter, // 暴露给模板
+ handleViewNutrientRequirements, // 暴露给模板
handleEdit,
handleDelete,
fetchPigBreeds, // 将方法暴露出去