Completato form attività e filtri
This commit is contained in:
@@ -19,10 +19,34 @@ public class LocalDbService
|
||||
_connection.CreateTableAsync<StbActivity>();
|
||||
_connection.CreateTableAsync<VtbCliePersRif>();
|
||||
_connection.CreateTableAsync<VtbDest>();
|
||||
_connection.CreateTableAsync<StbActivityResult>();
|
||||
_connection.CreateTableAsync<StbActivityType>();
|
||||
_connection.CreateTableAsync<StbUser>();
|
||||
}
|
||||
|
||||
public async Task ResetSettingsDb()
|
||||
{
|
||||
try
|
||||
{
|
||||
await _connection.ExecuteAsync("DROP TABLE IF EXISTS stb_activity_result;");
|
||||
await _connection.ExecuteAsync("DROP TABLE IF EXISTS stb_activity_type;");
|
||||
await _connection.ExecuteAsync("DROP TABLE IF EXISTS stb_user;");
|
||||
|
||||
await _connection.CreateTableAsync<StbActivityResult>();
|
||||
await _connection.CreateTableAsync<StbActivityType>();
|
||||
await _connection.CreateTableAsync<StbUser>();
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
Console.WriteLine($"Errore durante il reset del database(settings): {ex.Message}");
|
||||
throw;
|
||||
}
|
||||
}
|
||||
|
||||
public async Task ResetDb()
|
||||
{
|
||||
await ResetSettingsDb();
|
||||
|
||||
try
|
||||
{
|
||||
await _connection.ExecuteAsync("DROP TABLE IF EXISTS anag_clie;");
|
||||
|
||||
@@ -9,25 +9,7 @@ namespace Template.Maui.Core.Services;
|
||||
|
||||
public class ManageDataService(LocalDbService localDb, IMapper mapper) : IManageDataService
|
||||
{
|
||||
public Task<List<AnagClie>> GetAnagClie(Expression<Func<AnagClie, bool>>? whereCond = null) =>
|
||||
localDb.Get(whereCond);
|
||||
|
||||
public Task<List<JtbComt>> GetJtbComt(Expression<Func<JtbComt, bool>>? whereCond = null) =>
|
||||
localDb.Get(whereCond);
|
||||
|
||||
public Task<List<PtbPros>> GetPtbPros(Expression<Func<PtbPros, bool>>? whereCond = null) =>
|
||||
localDb.Get(whereCond);
|
||||
|
||||
public Task<List<PtbProsRif>> GetPtbProsRif(Expression<Func<PtbProsRif, bool>>? whereCond = null) =>
|
||||
localDb.Get(whereCond);
|
||||
|
||||
public Task<List<StbActivity>> GetStbActivity(Expression<Func<StbActivity, bool>>? whereCond = null) =>
|
||||
localDb.Get(whereCond);
|
||||
|
||||
public Task<List<VtbCliePersRif>> GetVtbCliePersRif(Expression<Func<VtbCliePersRif, bool>>? whereCond = null) =>
|
||||
localDb.Get(whereCond);
|
||||
|
||||
public Task<List<VtbDest>> GetVtbDest(Expression<Func<VtbDest, bool>>? whereCond = null) =>
|
||||
public Task<List<T>> GetTable<T>(Expression<Func<T, bool>>? whereCond = null) where T : new() =>
|
||||
localDb.Get(whereCond);
|
||||
|
||||
public async Task<List<ActivityDTO>> GetActivity(Expression<Func<StbActivity, bool>>? whereCond = null)
|
||||
@@ -70,7 +52,8 @@ public class ManageDataService(LocalDbService localDb, IMapper mapper) : IManage
|
||||
{
|
||||
string? ragSoc;
|
||||
|
||||
if (distinctClient.TryGetValue(activity.CodAnag, out ragSoc) || distinctProspect.TryGetValue(activity.CodAnag, out ragSoc))
|
||||
if (distinctClient.TryGetValue(activity.CodAnag, out ragSoc) ||
|
||||
distinctProspect.TryGetValue(activity.CodAnag, out ragSoc))
|
||||
{
|
||||
dto.Cliente = ragSoc;
|
||||
}
|
||||
@@ -86,6 +69,9 @@ public class ManageDataService(LocalDbService localDb, IMapper mapper) : IManage
|
||||
return returnDto;
|
||||
}
|
||||
|
||||
public Task InsertOrUpdate<T>(T objectToSave) =>
|
||||
localDb.InsertOrUpdate<T>([objectToSave]);
|
||||
|
||||
public Task ClearDb() =>
|
||||
localDb.ResetDb();
|
||||
}
|
||||
@@ -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!);
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user