feat(envelope): ReceiverStatusTable-Komponente unter Envelope-Tabelle hinzugefügt und Backend-Unterstützung integriert

- ReceiverStatusTableComponent als Unterkomponente der EnvelopeTable erstellt, um Empfängerstatus anzuzeigen.
- ReceiverStatusTable in EnvelopeTable mit Tabs und dynamischem Datenladen integriert.
- EnvelopeTable angepasst, um Empfängerdaten über den EnvelopeReceiverService abzurufen und in ReceiverStatusTable anzuzeigen.
- Backend aktualisiert, um das Abrufen von Umschlägen nach Benutzer zu unterstützen:
  - `ReadByUserAsync`-Methode im Envelope-Repository hinzugefügt, um Umschläge für einen bestimmten Benutzer abzufragen.
  - Servicemethode implementiert, um die abgefragten Umschläge in DTOs zu konvertieren und das Ergebnis zurückzugeben.
This commit is contained in:
Developer 02
2024-09-06 11:32:39 +02:00
parent 8753875d93
commit 97f07bc72d
8 changed files with 37 additions and 27 deletions

View File

@@ -1,5 +1,4 @@
using DigitalData.Core.Infrastructure;
using DigitalData.UserManager.Infrastructure.Repositories;
using EnvelopeGenerator.Domain.Entities;
using EnvelopeGenerator.Infrastructure.Contracts;
using Microsoft.EntityFrameworkCore;
@@ -14,7 +13,7 @@ namespace EnvelopeGenerator.Infrastructure.Repositories
public async Task<IEnumerable<Envelope>> ReadAllWithAsync(bool documents = false, bool history = false, bool documentReceiverElement = false)
{
var query = _dbSet.AsQueryable();
var query = _dbSet.AsNoTracking();
if (documents)
if (documentReceiverElement)
@@ -30,7 +29,7 @@ namespace EnvelopeGenerator.Infrastructure.Repositories
public async Task<Envelope?> ReadByUuidAsync(string uuid, bool withDocuments = false, bool withHistory = false, bool withDocumentReceiverElement = false, bool withUser = false, bool withAll = false)
{
var query = _dbSet.Where(e => e.Uuid == uuid);
var query = _dbSet.AsNoTracking().Where(e => e.Uuid == uuid);
if (withAll || withDocuments)
if (withAll || withDocumentReceiverElement)
@@ -46,5 +45,8 @@ namespace EnvelopeGenerator.Infrastructure.Repositories
return await query.FirstOrDefaultAsync();
}
public async Task<IEnumerable<Envelope>> ReadByUserAsync(int userId) => await _dbSet.AsNoTracking()
.Where(e => e.UserId == userId).ToListAsync();
}
}