using CPATapi.Server.Interfaces; using CPATapi.Server.Models; using Dapper; namespace CPATapi.Server.Repository; internal class ZeitConsensRepository(IConfiguration config) : Repository(config), IZeitConsensRepository { public async Task> GetUsersAsync() { await using var con = await OpenAsync("ZeitConsens"); return await con.QueryAsync(""" SELECT DISTINCT MA_USER_NAME FROM dbo.MA_DATEN WHERE MA_USER_NAME IS NOT NULL AND MA_USER_AKTIV = 1 ORDER BY MA_USER_NAME """); } public async Task> GetStampsAsync(string user, DateTime from, DateTime to) { await using var con = await OpenAsync("ZeitConsens"); return await con.QueryAsync(""" SELECT MA_NR ,BU_BU FROM dbo.BU INNER JOIN dbo.MA_DATEN on MA_NR = BU_MA_NR WHERE MA_USER_NAME = @user AND BU_BU >= @from AND BU_BU < @to """, new { user, from, to }); } }