人生轨迹功能完善
This commit is contained in:
@@ -98,7 +98,9 @@ const transformToBackendFormat = (frontendData) => {
|
||||
style,
|
||||
length,
|
||||
content,
|
||||
isSelected
|
||||
isSelected,
|
||||
character,
|
||||
events
|
||||
} = frontendData;
|
||||
|
||||
// 解析内容生成标题和各部分
|
||||
@@ -127,6 +129,55 @@ const transformToBackendFormat = (frontendData) => {
|
||||
});
|
||||
}
|
||||
|
||||
// 格式化角色信息
|
||||
let characterInfo = '';
|
||||
if (character) {
|
||||
const parts = [
|
||||
`姓名:${character.nickname || '未设置'}`,
|
||||
`性别:${character.gender || '未设置'}`,
|
||||
`MBTI:${character.mbti || '未设置'}`,
|
||||
`星座:${character.zodiac || '未设置'}`,
|
||||
`职业:${character.profession || '未设置'}`,
|
||||
`兴趣爱好:${character.hobbies?.join(',') || '无'}`
|
||||
];
|
||||
|
||||
if (character.future) {
|
||||
if (character.future.vision) parts.push(`未来愿景:${character.future.vision}`);
|
||||
if (character.future.ideal) parts.push(`理想生活:${character.future.ideal}`);
|
||||
}
|
||||
|
||||
characterInfo = parts.join('\n');
|
||||
}
|
||||
|
||||
// 格式化过往经历
|
||||
let lifeEventsSummary = '';
|
||||
const eventParts = [];
|
||||
|
||||
// 1. 核心记忆 (Childhood, Joy, Low from character data)
|
||||
if (character) {
|
||||
if (character.childhood?.text) {
|
||||
eventParts.push(`【童年记忆】(${character.childhood.date || '未知时间'}): ${character.childhood.text}`);
|
||||
}
|
||||
if (character.joy?.text) {
|
||||
eventParts.push(`【高光时刻】(${character.joy.date || '未知时间'}): ${character.joy.text}`);
|
||||
}
|
||||
if (character.low?.text) {
|
||||
eventParts.push(`【至暗时刻】(${character.low.date || '未知时间'}): ${character.low.text}`);
|
||||
}
|
||||
}
|
||||
|
||||
// 2. 详细人生事件
|
||||
if (events && Array.isArray(events)) {
|
||||
events.forEach(e => {
|
||||
const dateStr = e.time || e.eventDate || '未知时间';
|
||||
const titleStr = e.title || '无标题';
|
||||
const contentStr = e.content || '';
|
||||
eventParts.push(`【人生事件】(${dateStr}) ${titleStr}${contentStr ? ': ' + contentStr : ''}`);
|
||||
});
|
||||
}
|
||||
|
||||
lifeEventsSummary = eventParts.join('\n');
|
||||
|
||||
return {
|
||||
id,
|
||||
title,
|
||||
@@ -138,7 +189,9 @@ const transformToBackendFormat = (frontendData) => {
|
||||
plotClimax,
|
||||
plotEnding,
|
||||
plotJson: content ? { fullContent: content } : null,
|
||||
isSelected
|
||||
isSelected,
|
||||
characterInfo,
|
||||
lifeEventsSummary
|
||||
};
|
||||
};
|
||||
|
||||
|
||||
Reference in New Issue
Block a user