fix: перенёс уровни в бд и пофиксид их отображение на фронте
Backend CI / build-and-test (push) Successful in 52s
Frontend CI / build-and-check (push) Failing after 5m15s
🚀 Create and publish a Docker image / Detect changes in backend and frontend (push) Successful in 16s
🚀 Create and publish a Docker image / Build & publish backend image (push) Successful in 1m0s
🚀 Create and publish a Docker image / Build & publish frontend image (push) Successful in 32s
🚀 Create and publish a Docker image / Update stack on Portainer (push) Successful in 13s

This commit is contained in:
2026-05-18 02:28:05 +03:00
parent 302e01d705
commit 811b6ef51a
27 changed files with 1526 additions and 51 deletions
@@ -11,3 +11,8 @@ public record CoinTransactionDto(
string? Description,
DateTime CreatedAt
);
public record LevelProgressDto(
int CurrentLevelXp,
int? NextLevelXp
);
@@ -22,7 +22,9 @@ public record UserStatsDto(
int Xp,
int Coins,
int Level,
int AchievementsCount
int AchievementsCount,
int CurrentLevelXp,
int? NextLevelXp
);
public record UpdateUserRequest(
@@ -10,7 +10,8 @@ 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<int> CalculateLevelAsync(int xp);
Task<LevelProgressDto> GetLevelProgressAsync(int xp);
Task<List<UserAchievementDto>> GetUserAchievementsAsync(int userId);
Task<PagedResult<CoinTransactionDto>> GetTransactionsAsync(int userId, PaginationRequest pagination);
}