fix: remove black border from blur effect, fix gallery save issue (uuid type), enhance logging
This commit is contained in:
parent
004d1de1ce
commit
9f25cc3708
@ -339,9 +339,15 @@ export async function POST(request: Request) {
|
||||
for (let i = 0; i < processedScenes.length; i++) {
|
||||
const scene = processedScenes[i];
|
||||
|
||||
console.log(`[SceneFusion] ========== Processing scene ${i + 1}/${processedScenes.length} ==========`);
|
||||
console.log(`[SceneFusion] Scene ID: ${scene.id}`);
|
||||
console.log(`[SceneFusion] Product Image URL: ${productImageUrl.substring(0, 80)}...`);
|
||||
console.log(`[SceneFusion] Scene Image URL: ${scene.imageUrl.substring(0, 80)}...`);
|
||||
console.log(`[SceneFusion] Custom Prompt: ${scene.customPrompt || '(none)'}`);
|
||||
|
||||
// 如果不是第一张图,等待5秒
|
||||
if (i > 0) {
|
||||
console.log(`[SceneFusion] Waiting 5 seconds before processing scene ${i + 1}/${processedScenes.length}...`);
|
||||
console.log(`[SceneFusion] Waiting 5 seconds before processing...`);
|
||||
await new Promise((resolve) => setTimeout(resolve, 5000));
|
||||
}
|
||||
|
||||
@ -356,26 +362,23 @@ export async function POST(request: Request) {
|
||||
model.modelId
|
||||
);
|
||||
|
||||
// 保存到数据库
|
||||
const messageId = `scene-fusion-${Date.now()}-${scene.id}`;
|
||||
const chatId = `scene-fusion-batch-${Date.now()}`;
|
||||
|
||||
// 保存到数据库(chatId 和 messageId 设为 null,因为场景裂变不关联聊天)
|
||||
try {
|
||||
await db.insert(generatedImage).values({
|
||||
userId: session.user.id,
|
||||
chatId,
|
||||
messageId,
|
||||
chatId: null, // 场景裂变不关联聊天
|
||||
messageId: null, // 场景裂变不关联消息
|
||||
thumbnailUrl: result.thumbnail,
|
||||
originalUrl: result.original,
|
||||
imageSize: "2K",
|
||||
prompt: scene.customPrompt
|
||||
? `${config.defaultPrompt} ${scene.customPrompt}`
|
||||
: config.defaultPrompt,
|
||||
? `[场景裂变] ${config.defaultPrompt} ${scene.customPrompt}`
|
||||
: `[场景裂变] ${config.defaultPrompt}`,
|
||||
modelId: model.modelId,
|
||||
});
|
||||
console.log(`[SceneFusion] Saved image to gallery: ${result.original.substring(0, 80)}...`);
|
||||
console.log(`[SceneFusion] ✅ Saved image to gallery: ${result.original.substring(0, 80)}...`);
|
||||
} catch (dbError) {
|
||||
console.error("[SceneFusion] Failed to save to gallery:", dbError);
|
||||
console.error("[SceneFusion] ❌ Failed to save to gallery:", dbError);
|
||||
}
|
||||
|
||||
results.push({
|
||||
|
||||
@ -522,14 +522,14 @@ export function SceneFusionView({ onBack }: SceneFusionViewProps) {
|
||||
<div className="w-full h-full flex flex-col items-center justify-center p-0 relative overflow-hidden">
|
||||
{scene.status === 'processing' ? (
|
||||
<>
|
||||
{/* 背景模糊图 */}
|
||||
{/* 背景模糊图 - 使用负边距扩展避免黑边 */}
|
||||
<img
|
||||
src={scene.image}
|
||||
alt="生成中"
|
||||
className="w-full h-full object-cover absolute inset-0 blur-md opacity-80"
|
||||
className="absolute -inset-4 w-[calc(100%+2rem)] h-[calc(100%+2rem)] object-cover blur-lg opacity-90"
|
||||
/>
|
||||
{/* 动态遮罩层 */}
|
||||
<div className="absolute inset-0 bg-black/40" />
|
||||
{/* 动态遮罩层 - 减轻暗度 */}
|
||||
<div className="absolute inset-0 bg-black/30" />
|
||||
|
||||
{/* 动态光效 - 模拟扫描效果 */}
|
||||
<div className="absolute inset-0 bg-[linear-gradient(90deg,transparent,rgba(255,255,255,0.3),transparent)] bg-[length:200%_100%] animate-[shimmer_2s_infinite]" />
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user