Files
Data-Coupler/CredentialManager/Services/IDataCouplerProfileService.cs
T
Alessio 7e450a358b feat: Aggiunto sistema completo di gestione profili per Data Coupler
- Creata nuova libreria Components con componenti Blazor riutilizzabili
  * ProfileSelector: dropdown per selezione profili salvati
  * ProfileSaver: componente per salvare configurazioni correnti come profili
  * ProfileManagement: modale per gestione profili salvati
  * ProfileQuickActions: bottoni azioni rapide per operazioni sui profili

- Esteso CredentialManager con entità e servizi per DataCouplerProfile
  * Aggiunto modello DataCouplerProfile con configurazioni mapping e metadati
  * Implementata migrazione Entity Framework per memorizzazione profili
  * Creato DataCouplerProfileService per operazioni CRUD
  * Aggiunto CredentialDbContextFactory per operazioni database design-time

- Migliorato componente principale DataCoupler con integrazione profili
  * Integrata funzionalità caricamento/salvataggio profili
  * Aggiunto selettore profili nella parte superiore dell'interfaccia
  * Mantenuta retrocompatibilità con funzionalità esistenti
  * Migliorata esperienza utente con gestione configurazioni salvate

- Aggiornata struttura progetto e dipendenze
  * Aggiunto progetto Components alla soluzione
  * Aggiornati riferimenti progetti e import
  * Rimosso progetto obsoleto TestDatabaseFix

Questo aggiornamento migliora significativamente il flusso di lavoro permettendo agli utenti di salvare, caricare e gestire configurazioni complete di accoppiamento dati come
2025-07-02 00:00:05 +02:00

50 lines
1.3 KiB
C#

using CredentialManager.Models;
namespace CredentialManager.Services;
/// <summary>
/// Interfaccia per il servizio di gestione dei profili Data Coupler
/// </summary>
public interface IDataCouplerProfileService
{
/// <summary>
/// Ottiene tutti i profili attivi
/// </summary>
Task<IEnumerable<DataCouplerProfile>> GetAllProfilesAsync();
/// <summary>
/// Ottiene un profilo per ID
/// </summary>
Task<DataCouplerProfile?> GetProfileByIdAsync(int id);
/// <summary>
/// Ottiene un profilo per nome
/// </summary>
Task<DataCouplerProfile?> GetProfileByNameAsync(string name);
/// <summary>
/// Salva un nuovo profilo
/// </summary>
Task<DataCouplerProfile> SaveProfileAsync(DataCouplerProfile profile);
/// <summary>
/// Aggiorna un profilo esistente
/// </summary>
Task<DataCouplerProfile> UpdateProfileAsync(DataCouplerProfile profile);
/// <summary>
/// Elimina un profilo
/// </summary>
Task<bool> DeleteProfileAsync(int id);
/// <summary>
/// Aggiorna la data di ultimo utilizzo di un profilo
/// </summary>
Task UpdateLastUsedAsync(int id);
/// <summary>
/// Verifica se esiste un profilo con il nome specificato
/// </summary>
Task<bool> ProfileExistsAsync(string name, int? excludeId = null);
}