refactor: reorganize Application layer into folder structure

This commit is contained in:
2026-06-01 18:15:17 +03:30
parent dca3fc62ca
commit 775ae0d9b4
50 changed files with 618 additions and 492 deletions

View File

@@ -0,0 +1,39 @@
using GreenHome.Domain;
namespace GreenHome.Application;
/// <summary>
/// Service for managing AI queries and their history
/// </summary>
public interface IAIQueryService
{
/// <summary>
/// Saves an AI query to the database
/// </summary>
Task<AIQuery> SaveQueryAsync(AIQuery query, CancellationToken cancellationToken = default);
/// <summary>
/// Gets AI query history for a specific device
/// </summary>
Task<List<AIQuery>> GetDeviceQueriesAsync(int deviceId, int take = 50, CancellationToken cancellationToken = default);
/// <summary>
/// Gets AI query history for a specific user
/// </summary>
Task<List<AIQuery>> GetUserQueriesAsync(int userId, int take = 50, CancellationToken cancellationToken = default);
/// <summary>
/// Gets total token usage for a device
/// </summary>
Task<int> GetDeviceTotalTokensAsync(int deviceId, CancellationToken cancellationToken = default);
/// <summary>
/// Gets total token usage for a user
/// </summary>
Task<int> GetUserTotalTokensAsync(int userId, CancellationToken cancellationToken = default);
/// <summary>
/// Gets AI query statistics (totals, averages, today's usage)
/// </summary>
Task<AIQueryStats> GetStatsAsync(CancellationToken cancellationToken = default);
}