Prima parte di migliorie per la sincronizzazione dei dati

This commit is contained in:
2025-09-03 15:46:49 +02:00
parent 8be3fa9f9e
commit 374b99501e
32 changed files with 326 additions and 166 deletions

View File

@@ -1,22 +1,10 @@
using salesbook.Shared.Core.Dto;
using salesbook.Shared.Core.Helpers;
using salesbook.Shared.Core.Helpers;
using salesbook.Shared.Core.Interface;
namespace salesbook.Maui.Core.Services;
public class SyncDbService(IIntegryApiService integryApiService, LocalDbService localDb) : ISyncDbService
{
public async Task GetAndSaveActivity(string? dateFilter)
{
var allActivity = await integryApiService.RetrieveActivity(new CRMRetrieveActivityRequestDTO{DateFilter = dateFilter});
if (!allActivity.IsNullOrEmpty())
if (dateFilter is null)
await localDb.InsertAll(allActivity!);
else
await localDb.InsertOrUpdate(allActivity!);
}
public async Task GetAndSaveCommesse(string? dateFilter)
{
var allCommesse = await integryApiService.RetrieveAllCommesse(dateFilter);
@@ -28,46 +16,6 @@ public class SyncDbService(IIntegryApiService integryApiService, LocalDbService
await localDb.InsertOrUpdate(allCommesse!);
}
public async Task GetAndSaveProspect(string? dateFilter)
{
var taskSyncResponseDto = await integryApiService.RetrieveProspect(dateFilter);
if (!taskSyncResponseDto.PtbPros.IsNullOrEmpty())
if (dateFilter is null)
await localDb.InsertAll(taskSyncResponseDto.PtbPros!);
else
await localDb.InsertOrUpdate(taskSyncResponseDto.PtbPros!);
if (!taskSyncResponseDto.PtbProsRif.IsNullOrEmpty())
if (dateFilter is null)
await localDb.InsertAll(taskSyncResponseDto.PtbProsRif!);
else
await localDb.InsertOrUpdate(taskSyncResponseDto.PtbProsRif!);
}
public async Task GetAndSaveClienti(string? dateFilter)
{
var taskSyncResponseDto = await integryApiService.RetrieveAnagClie(dateFilter);
if (!taskSyncResponseDto.AnagClie.IsNullOrEmpty())
if (dateFilter is null)
await localDb.InsertAll(taskSyncResponseDto.AnagClie!);
else
await localDb.InsertOrUpdate(taskSyncResponseDto.AnagClie!);
if (!taskSyncResponseDto.VtbDest.IsNullOrEmpty())
if (dateFilter is null)
await localDb.InsertAll(taskSyncResponseDto.VtbDest!);
else
await localDb.InsertOrUpdate(taskSyncResponseDto.VtbDest!);
if (!taskSyncResponseDto.VtbCliePersRif.IsNullOrEmpty())
if (dateFilter is null)
await localDb.InsertAll(taskSyncResponseDto.VtbCliePersRif!);
else
await localDb.InsertOrUpdate(taskSyncResponseDto.VtbCliePersRif!);
}
public async Task GetAndSaveSettings(string? dateFilter)
{
if (dateFilter is not null)