|
|
@@ -39,6 +39,7 @@
|
|
|
<PoemReadingDialogue
|
|
|
v-if="dialogue?.type === 'poem_reading'"
|
|
|
:content="dialogue?.content"
|
|
|
+ :role-id="getRoleIdByRoleName(dialogue?.roleName, scriptRoles)"
|
|
|
@evaluation-complete="$emit('poem-reading-complete', $event)"
|
|
|
/>
|
|
|
|
|
|
@@ -120,6 +121,18 @@ const getQuestionType = (questDialogue) => {
|
|
|
}
|
|
|
return 'AI Q&A';
|
|
|
};
|
|
|
+
|
|
|
+/**
|
|
|
+ * 根据角色名称获取角色ID
|
|
|
+ * @param {String} roleName - 角色名称
|
|
|
+ * @param {Array} roles - 角色列表
|
|
|
+ * @returns {String|Number} 角色ID,如果找不到则返回原值
|
|
|
+ */
|
|
|
+ const getRoleIdByRoleName = (roleName, roles) => {
|
|
|
+ if (!roleName || !roles) return roleName;
|
|
|
+ const role = roles.find(r => r.name === roleName);
|
|
|
+ return role ? role.id : roleName;
|
|
|
+ };
|
|
|
</script>
|
|
|
|
|
|
<style scoped lang="scss">
|