generated from Integry/Template_NetMauiBlazorHybrid
86 lines
3.2 KiB
C#
86 lines
3.2 KiB
C#
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(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);
|
|
|
|
if (!allCommesse.IsNullOrEmpty())
|
|
if (dateFilter is null)
|
|
await localDb.InsertAll(allCommesse!);
|
|
else
|
|
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)
|
|
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!);
|
|
}
|
|
} |