feat random bullshit GO!

This commit is contained in:
elar1s
2025-09-29 21:46:30 +03:00
parent 02934b1fd9
commit 63c89c48d5
71 changed files with 1976 additions and 1196 deletions

View File

@@ -0,0 +1,34 @@
using LctMonolith.Domain.Entities;
using LctMonolith.Infrastructure.Repositories;
namespace LctMonolith.Infrastructure.UnitOfWork;
/// <summary>
/// Unit of Work aggregates repositories and transaction boundary.
/// </summary>
public interface IUnitOfWork
{
IGenericRepository<AppUser> Users { get; }
IGenericRepository<Rank> Ranks { get; }
IGenericRepository<RankRequiredMission> RankRequiredMissions { get; }
IGenericRepository<RankRequiredCompetency> RankRequiredCompetencies { get; }
IGenericRepository<Mission> Missions { get; }
IGenericRepository<UserMission> UserMissions { get; }
IGenericRepository<MissionCompetencyReward> MissionCompetencyRewards { get; }
IGenericRepository<MissionArtifactReward> MissionArtifactRewards { get; }
IGenericRepository<Competency> Competencies { get; }
IGenericRepository<UserCompetency> UserCompetencies { get; }
IGenericRepository<Artifact> Artifacts { get; }
IGenericRepository<UserArtifact> UserArtifacts { get; }
IGenericRepository<StoreItem> StoreItems { get; }
IGenericRepository<UserInventoryItem> UserInventoryItems { get; }
IGenericRepository<Transaction> Transactions { get; }
IGenericRepository<EventLog> EventLogs { get; }
IGenericRepository<RefreshToken> RefreshTokens { get; }
IGenericRepository<Notification> Notifications { get; }
Task<int> SaveChangesAsync(CancellationToken ct = default);
Task BeginTransactionAsync(CancellationToken ct = default);
Task CommitAsync(CancellationToken ct = default);
Task RollbackAsync(CancellationToken ct = default);
}