Добавил слой Application

This commit is contained in:
2026-04-28 15:52:32 +03:00
parent df0e30a1ae
commit d64447f0be
25 changed files with 595 additions and 0 deletions
@@ -0,0 +1,16 @@
using UniVerse.Application.DTOs.Achievements;
using UniVerse.Application.DTOs.Common;
using UniVerse.Application.DTOs.Gamification;
using UniVerse.Domain.Enums;
namespace UniVerse.Application.Interfaces;
public interface IGamificationService
{
Task AwardCoinsAsync(int userId, int amount, CoinTransactionType type,
int? reviewId = null, int? achievementId = null, string? description = null);
Task CheckAndAwardAchievementsAsync(int userId);
int CalculateLevel(int xp);
Task<List<UserAchievementDto>> GetUserAchievementsAsync(int userId);
Task<PagedResult<CoinTransactionDto>> GetTransactionsAsync(int userId, PaginationRequest pagination);
}