This commit is contained in:
2025-12-16 15:42:38 +01:00
parent 29410708c8
commit 362894d1a5
147 changed files with 780 additions and 375 deletions

View File

@@ -0,0 +1,16 @@
import { Achievement, AchievementProps } from '@core/identity/domain/entities/Achievement';
export interface IAchievementRepository {
save(achievement: Achievement): Promise<void>;
findById(id: string): Promise<Achievement | null>;
}
export class CreateAchievementUseCase {
constructor(private readonly achievementRepository: IAchievementRepository) {}
async execute(props: Omit<AchievementProps, 'createdAt'>): Promise<Achievement> {
const achievement = Achievement.create(props);
await this.achievementRepository.save(achievement);
return achievement;
}
}