Implementato sistema robusto di salvataggio/caricamento profili Data Coupler
- Aggiunto metodo GetCredentialIdByNameAsync in CredentialService per recuperare ID credenziali per nome - Implementata gestione robusta dei profili duplicati con riattivazione, sovrascrittura e auto-rinomina - Migliorata logica di caricamento profili con simulazione workflow utente e logging dettagliato - Fixata gestione errori UNIQUE constraint nel salvataggio profili - Aggiunto supporto per salvataggio ID credenziali reali invece di placeholder - Implementato metodo GetProfileByNameIncludingInactiveAsync per gestire profili inattivi - Aggiunto logging esteso per debug e troubleshooting - Integrato componente ProfileSaver nella UI principale - Risolti errori di compilazione e validazione build completa - Migliorata gestione errori con feedback utente per credenziali/entità mancanti
This commit is contained in:
@@ -997,6 +997,25 @@
|
||||
<i class="fas fa-list"></i> Riepilogo Mapping
|
||||
</button>
|
||||
}
|
||||
</div>
|
||||
|
||||
<!-- Sezione Salvataggio Profilo -->
|
||||
<div>
|
||||
<ProfileSaver CanSave="@CanSaveProfile()"
|
||||
SourceType="@selectedSourceType"
|
||||
SourceCredentialId="@(GetCurrentSourceCredentialIdAsync().Result)"
|
||||
SourceCredentialName="@selectedDatabaseCredential"
|
||||
SourceSchema="@GetCurrentDatabaseSchema()"
|
||||
SourceTable="@(useCustomQuery ? "custom_query" : selectedTable)"
|
||||
SourceFilePath="@selectedFileName"
|
||||
DestinationType="rest"
|
||||
DestinationCredentialId="@(GetCurrentDestinationCredentialIdAsync().Result)"
|
||||
DestinationCredentialName="@selectedRestCredential"
|
||||
DestinationEndpoint="@selectedRestEntity?.Name"
|
||||
FieldMappings="@GetCurrentFieldMappings()"
|
||||
SourceKeyField="@sourceKeyField"
|
||||
UseRecordAssociations="@useRecordAssociations"
|
||||
OnProfileSaved="@OnProfileSaved" />
|
||||
</div> <div class="text-muted">
|
||||
@if (fieldMappings.Any())
|
||||
{
|
||||
@@ -1124,23 +1143,6 @@
|
||||
}
|
||||
</div>
|
||||
|
||||
<!-- Sezione Salvataggio Profilo -->
|
||||
@if (isDatabaseConnected && isRestConnected && fieldMappings.Any())
|
||||
{
|
||||
<div class="row mt-4">
|
||||
<div class="col-12">
|
||||
<ProfileSaver CanSave="CanSaveProfile()"
|
||||
SourceType="selectedSourceType"
|
||||
SourceSchema="@(availableTableNames.FirstOrDefault()?.Split('.').FirstOrDefault())"
|
||||
SourceTable="selectedTable"
|
||||
DestinationType="rest"
|
||||
DestinationEndpoint="@(selectedRestEntity?.Name)"
|
||||
FieldMappings="GetCurrentFieldMappings()"
|
||||
OnProfileSaved="OnProfileSaved" />
|
||||
</div>
|
||||
</div>
|
||||
}
|
||||
|
||||
<!-- Componente Gestione Profili -->
|
||||
<ProfileManagement ShowModal="showProfileManagement"
|
||||
Profiles="availableProfiles"
|
||||
|
||||
Reference in New Issue
Block a user