From 2dd22b10b1d4e503f7fb5857d67037b75b483af7 Mon Sep 17 00:00:00 2001 From: richarjiang Date: Tue, 7 Apr 2026 15:47:23 +0800 Subject: [PATCH] =?UTF-8?q?feat:=20=E6=B7=BB=E5=8A=A0=E9=80=9A=E5=85=B3?= =?UTF-8?q?=E6=97=B6=E9=97=B4=E8=AE=B0=E5=BD=95=E5=8A=9F=E8=83=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 客户端上报通关时间(秒),存储到 wx_user_level_progress 表 Co-Authored-By: Claude Opus 4.6 --- src/modules/auth/auth.service.ts | 1 + src/modules/auth/dto/user-assets.dto.ts | 4 ++++ src/modules/auth/entities/user-level-progress.entity.ts | 3 +++ 3 files changed, 8 insertions(+) diff --git a/src/modules/auth/auth.service.ts b/src/modules/auth/auth.service.ts index 1d3b522..204cb0e 100644 --- a/src/modules/auth/auth.service.ts +++ b/src/modules/auth/auth.service.ts @@ -146,6 +146,7 @@ export class AuthService { const progress = this.userLevelProgressRepository.create({ userId, levelId: dto.levelId, + timeSpent: dto.timeSpent, }); await this.userLevelProgressRepository.save(progress); diff --git a/src/modules/auth/dto/user-assets.dto.ts b/src/modules/auth/dto/user-assets.dto.ts index 5c18983..0e4708d 100644 --- a/src/modules/auth/dto/user-assets.dto.ts +++ b/src/modules/auth/dto/user-assets.dto.ts @@ -34,6 +34,10 @@ export class EarnPointRequestDto { @IsString() @IsNotEmpty() levelId!: string; + + @ApiProperty({ description: '通关时间(秒)' }) + @IsNotEmpty() + timeSpent!: number; } export class GameDataResponseDto { diff --git a/src/modules/auth/entities/user-level-progress.entity.ts b/src/modules/auth/entities/user-level-progress.entity.ts index 6a54010..8760562 100644 --- a/src/modules/auth/entities/user-level-progress.entity.ts +++ b/src/modules/auth/entities/user-level-progress.entity.ts @@ -25,6 +25,9 @@ export class UserLevelProgress { @JoinColumn({ name: 'user_id' }) user!: User; + @Column({ type: 'int', name: 'time_spent', default: 0 }) + timeSpent!: number; + @CreateDateColumn({ name: 'completed_at' }) completedAt!: Date; }