Completato form attività e filtri

This commit is contained in:
2025-06-16 11:58:49 +02:00
parent 0032648e76
commit 7ca4de628b
44 changed files with 1241 additions and 924 deletions

View File

@@ -1,4 +1,5 @@
using Template.Shared.Core.Interface;
using Template.Shared.Core.Helpers;
using Template.Shared.Core.Interface;
namespace Template.Maui.Core.Services;
@@ -6,65 +7,80 @@ public class SyncDbService(IIntegryApiService integryApiService, LocalDbService
{
public async Task GetAndSaveActivity(string? dateFilter)
{
var allActivity = await integryApiService.GetActivity(dateFilter);
var allActivity = await integryApiService.RetrieveActivity(dateFilter);
if (allActivity is not null)
if (!allActivity.IsNullOrEmpty())
if (dateFilter is null)
await localDb.InsertAll(allActivity);
await localDb.InsertAll(allActivity!);
else
await localDb.InsertOrUpdate(allActivity);
await localDb.InsertOrUpdate(allActivity!);
}
public async Task GetAndSaveCommesse(string? dateFilter)
{
var allCommesse = await integryApiService.GetAllCommesse(dateFilter);
var allCommesse = await integryApiService.RetrieveAllCommesse(dateFilter);
if (allCommesse is not null)
if (!allCommesse.IsNullOrEmpty())
if (dateFilter is null)
await localDb.InsertAll(allCommesse);
await localDb.InsertAll(allCommesse!);
else
await localDb.InsertOrUpdate(allCommesse);
await localDb.InsertOrUpdate(allCommesse!);
}
public async Task GetAndSaveProspect(string? dateFilter)
{
var tasks = new List<Task>();
var taskSyncResponseDto = await integryApiService.GetProspect(dateFilter);
var taskSyncResponseDto = await integryApiService.RetrieveProspect(dateFilter);
if (taskSyncResponseDto.PtbPros is not null)
tasks.Add(dateFilter is null
? localDb.InsertAll(taskSyncResponseDto.PtbPros)
: localDb.InsertOrUpdate(taskSyncResponseDto.PtbPros));
if (!taskSyncResponseDto.PtbPros.IsNullOrEmpty())
if (dateFilter is null)
await localDb.InsertAll(taskSyncResponseDto.PtbPros!);
else
await localDb.InsertOrUpdate(taskSyncResponseDto.PtbPros!);
if (taskSyncResponseDto.PtbProsRif is not null)
tasks.Add(dateFilter is null
? localDb.Insert(taskSyncResponseDto.PtbProsRif)
: localDb.InsertOrUpdate(taskSyncResponseDto.PtbProsRif));
await Task.WhenAll(tasks.AsEnumerable());
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 tasks = new List<Task>();
var taskSyncResponseDto = await integryApiService.GetAnagClie(dateFilter);
var taskSyncResponseDto = await integryApiService.RetrieveAnagClie(dateFilter);
if (taskSyncResponseDto.AnagClie is not null)
tasks.Add(dateFilter is null
? localDb.InsertAll(taskSyncResponseDto.AnagClie)
: localDb.InsertOrUpdate(taskSyncResponseDto.AnagClie));
if (!taskSyncResponseDto.AnagClie.IsNullOrEmpty())
if (dateFilter is null)
await localDb.InsertAll(taskSyncResponseDto.AnagClie!);
else
await localDb.InsertOrUpdate(taskSyncResponseDto.AnagClie!);
if (taskSyncResponseDto.VtbDest is not null)
tasks.Add(dateFilter is null
? localDb.Insert(taskSyncResponseDto.VtbDest)
: localDb.InsertOrUpdate(taskSyncResponseDto.VtbDest));
if (!taskSyncResponseDto.VtbDest.IsNullOrEmpty())
if (dateFilter is null)
await localDb.InsertAll(taskSyncResponseDto.VtbDest!);
else
await localDb.InsertOrUpdate(taskSyncResponseDto.VtbDest!);
if (taskSyncResponseDto.VtbCliePersRif is not null)
tasks.Add(dateFilter is null
? localDb.Insert(taskSyncResponseDto.VtbCliePersRif)
: localDb.InsertOrUpdate(taskSyncResponseDto.VtbCliePersRif));
await Task.WhenAll(tasks.AsEnumerable());
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)
await localDb.ResetSettingsDb();
var settingsResponse = await integryApiService.RetrieveSettings();
if (!settingsResponse.ActivityResults.IsNullOrEmpty())
await localDb.InsertAll(settingsResponse.ActivityResults!);
if (!settingsResponse.ActivityTypes.IsNullOrEmpty())
await localDb.InsertAll(settingsResponse.ActivityTypes!);
if (!settingsResponse.StbUsers.IsNullOrEmpty())
await localDb.InsertAll(settingsResponse.StbUsers!);
}
}