src/views/production/components/ProductionDetailsTable.vue
@@ -110,7 +110,7 @@
      <template #default="{ row, $index }">
        <el-select
            clearable
            :model-value="getUserNameById(row.producer) || row.producer"
            :model-value="getUserNameById(row.producerId) || row.producerId"
            placeholder="请选择生产人"
            @change="(value) => handleUserSelectChange(row, value)"
            filterable
@@ -339,12 +339,13 @@
};
// 处理用户选择变化(新方法:名称选择转ID)
const handleUserSelectChange = (row, selectedName) => {
  console.log("handleUserSelectChange", row, selectedName);
  // 根据选择的名称找到对应的ID
  const userItem = userList.value.find(item => item.value === selectedName);
  if (userItem) {
    row.producer = userItem.key; // 设置为ID
    row.producerId = userItem.key; // 设置为ID
  } else {
    row.producer = ''; // 如果没找到,清空
    row.producerId = ''; // 如果没找到,清空
  }
};
// 暴露方法给父组件使用
@@ -364,7 +365,7 @@
      equipmentDepreciation: "",
      purchasePrice: "",
      totalCost: "",
      producer: "",
      producerId: "",
      ...rowData,
    };
    tableData.value = [...tableData.value, defaultRow];