using LiMan.APi.Data; using LiMan.DbSync.DbModels; using LiMan.DbSync.Services; using Microsoft.AspNetCore.Http; using Microsoft.AspNetCore.Mvc; using NLog; using System; using System.Collections.Generic; using System.Linq; using System.Threading.Tasks; namespace LiMan.APi.Controllers { /// /// Controller per sync tabelle standard /// [Route("api/dbsync")] [ApiController] public class DbSyncController : ControllerBase { #region Public Constructors /// /// Init generico /// /// public DbSyncController(ApiDataService DataService, DbSyncService SyncService) { mainDataService = DataService; syncDataService = SyncService; Log.Info("Avviata classe DbSyncController"); } #endregion Public Constructors #region Public Methods /// /// Recupera elenco dati Config x setup locale GET api/dbsync/conf/[id]?[CodApp] /// /// Codice cliente/Installazione /// Codice Applicazione /// [HttpGet("conf/{id}")] public async Task> Get(string id, string CodApp) { // ora recupero le info richieste dall'applicativo List result = await syncDataService.ConfigGetAll(CodApp); await mainDataService.recordCall(id, CodApp, $"GET:api/dbsync/conf/"); return result; } /// /// Recupera elenco dati AnagKeyVal x setup locale GET api/dbsync/anagkeyval/[id]?[CodApp] /// /// Codice cliente/Installazione /// Codice Applicazione /// [HttpGet("anagkeyval/{id}")] public async Task> GetAnagKeyVal(string id, string CodApp) { // ora recupero le info richieste dall'applicativo List result = await syncDataService.AnagKeyValGetAll(CodApp); await mainDataService.recordCall(id, CodApp, $"GET:api/dbsync/anagkeyval/"); return result; } /// /// Recupera elenco dati Vocabolario x setup locale GET api/dbsync/anagkeyval/[id]?[CodApp] /// /// Codice cliente/Installazione /// Codice Applicazione /// [HttpGet("vocabolario/{id}")] public async Task> GetVocabolario(string id, string CodApp) { // ora recupero le info richieste dall'applicativo List result = await syncDataService.VocabolarioGetAll(CodApp); await mainDataService.recordCall(id, CodApp, $"GET:api/dbsync/vocabolario/"); return result; } #endregion Public Methods #region Protected Properties /// /// Dataservice x accesso DB /// protected ApiDataService mainDataService { get; set; } /// /// Dataservice x accesso DB /// protected DbSyncService syncDataService { get; set; } #endregion Protected Properties #region Private Fields /// /// Classe per logging /// private static Logger Log = LogManager.GetCurrentClassLogger(); #endregion Private Fields } }