diff --git a/WebDoorCreator.API/Controllers/QueueController.cs b/WebDoorCreator.API/Controllers/QueueController.cs index 155d356..c94819a 100644 --- a/WebDoorCreator.API/Controllers/QueueController.cs +++ b/WebDoorCreator.API/Controllers/QueueController.cs @@ -39,20 +39,6 @@ namespace WebDoorCreator.API.Controllers return answ; } - /// - /// Invio elenco risultati elaborazioni (modalità boolean di esecuzione corretta) - /// - /// Risultati elaborazioni in formato CalcResultDTO - /// - [HttpPost("SaveProcResult")] - public async Task SaveProcResult(List calcResults) - { - string answ = "NA"; - bool fatto = await QDataServ.SaveProcessingResult(calcResults); - answ = fatto ? "OK" : "NO"; - return answ; - } - /// /// Reset delle code di chiamata x ripetere simulazione /// @@ -71,6 +57,20 @@ namespace WebDoorCreator.API.Controllers return answ; } + /// + /// Invio elenco risultati elaborazioni (modalità boolean di esecuzione corretta) + /// + /// Risultati elaborazioni in formato CalcResultDTO + /// + [HttpPost("SaveProcResult")] + public async Task SaveProcResult(List calcResults) + { + string answ = "NA"; + bool fatto = await QDataServ.SaveProcessingResult(calcResults); + answ = fatto ? "OK" : "NO"; + return answ; + } + /// /// Elenco richieste raggruppate x stato /// @@ -85,7 +85,6 @@ namespace WebDoorCreator.API.Controllers var actProc = await QDataServ.RequestProcessing(); answ.Add("processing", actProc); - var actDone = await QDataServ.RequestDone(); answ.Add("done", actProc); return answ; diff --git a/WeebDoorCreator.SDK/WDC.cs b/WeebDoorCreator.SDK/WDC.cs index f128488..39fe920 100644 --- a/WeebDoorCreator.SDK/WDC.cs +++ b/WeebDoorCreator.SDK/WDC.cs @@ -26,6 +26,32 @@ namespace WeebDoorCreator.SDK #region Public Properties + /// + /// Numero di chiamate in coda da processare + /// + public int numTask2proc + { + get + { + int answ = 0; + try + { + var rawData = callUrlGet(urlActLenght); + if (rawData != "ERR") + { + var returnData = JsonConvert.DeserializeObject>(rawData); + // rendo! + if (returnData.ContainsKey(pendQueue)) + { + answ = (int)returnData[pendQueue]; + } + } + } + catch { } + return answ; + } + } + /// /// Effettua test alive all'indirizzo del server /// @@ -34,9 +60,17 @@ namespace WeebDoorCreator.SDK get { bool answ = false; - var rawData = callUrlGet(urlAlive); - string returnData = JsonConvert.DeserializeObject(rawData); - answ = returnData == "OK"; + try + { + var rawData = callUrlGet(urlAlive); + if (rawData != "ERR") + { + string returnData = JsonConvert.DeserializeObject(rawData); + answ = returnData == "OK"; + } + } + catch + { } // rendo! return answ; } @@ -57,37 +91,19 @@ namespace WeebDoorCreator.SDK } } - /// - /// Numero di chiamate in coda da processare - /// - public int numTask2proc + #endregion Public Properties + + #region Public Methods + + public static PingReply testPingDevice(string address) { - get - { - int answ = 0; - try - { - var rawData = callUrlGet(urlActLenght); - var returnData = JsonConvert.DeserializeObject>(rawData); - // rendo! - if (returnData.ContainsKey(pendQueue)) - { - answ = (int)returnData[pendQueue]; - } - } - catch { } - return answ; - } - } - /// - /// Status delle code chiamate - /// - public Dictionary queueStatus() - { - var rawData = callUrlGet(urlActLenght); - var returnData = JsonConvert.DeserializeObject>(rawData); - return returnData; + Ping myPing = new Ping(); + // timeout a 1 sec! + PingReply answ = myPing.Send(address, 2000); + // rendo! + return answ; } + /// /// Elenco degli item da processare, nel formato DoorId, Vers /// @@ -99,7 +115,7 @@ namespace WeebDoorCreator.SDK { "numItems", $"{maxNum}" } }; var rawData = callUrlGet(urlTakeNextItems, parList); - if (!string.IsNullOrEmpty(rawData)) + if (!string.IsNullOrEmpty(rawData) && rawData != "ERR") { returnData = JsonConvert.DeserializeObject>(rawData); } @@ -107,18 +123,19 @@ namespace WeebDoorCreator.SDK } /// - /// Restitusice l'elenco degli esiti di processing + /// Status delle code chiamate /// - /// - /// - public string SendProcResults(List calcResults) + public Dictionary queueStatus() { - string payload = JsonConvert.SerializeObject(calcResults); - var rawData = callUrlPost(urlSaveProcRes, payload); - return rawData; + var rawData = callUrlGet(urlActLenght); + Dictionary returnData = new Dictionary(); + if (rawData != "ERR") + { + returnData = JsonConvert.DeserializeObject>(rawData); + } + return returnData; } - /// /// Reset delel code di processing /// @@ -133,30 +150,29 @@ namespace WeebDoorCreator.SDK return rawData; } - #endregion Public Properties - - #region Public Methods - - public static PingReply testPingDevice(string address) + /// + /// Restitusice l'elenco degli esiti di processing + /// + /// + /// + public string SendProcResults(List calcResults) { - Ping myPing = new Ping(); - // timeout a 1 sec! - PingReply answ = myPing.Send(address, 2000); - // rendo! - return answ; + string payload = JsonConvert.SerializeObject(calcResults); + var rawData = callUrlPost(urlSaveProcRes, payload); + return rawData; } #endregion Public Methods #region Protected Fields - protected const string urlAlive = "/api/Alive"; - protected const string urlActLenght = "api/Queue/ActLenght"; - protected const string urlResetQueue = "api/Queue/ResetQueue"; - protected const string urlStatusList = "api/Queue/StatusList"; - protected const string urlSaveProcRes = "api/Queue/SaveProcResult"; - protected const string urlTakeNextItems = "api/Queue/TakeNextItems"; protected const string pendQueue = "pending"; + protected const string urlActLenght = "api/Queue/ActLenght"; + protected const string urlAlive = "/api/Alive"; + protected const string urlResetQueue = "api/Queue/ResetQueue"; + protected const string urlSaveProcRes = "api/Queue/SaveProcResult"; + protected const string urlStatusList = "api/Queue/StatusList"; + protected const string urlTakeNextItems = "api/Queue/TakeNextItems"; #endregion Protected Fields @@ -216,6 +232,7 @@ namespace WeebDoorCreator.SDK // restituisco valore! return answ; } + /// /// Effettua chiamata URL GET con parametri e restituisce risultato /// @@ -227,7 +244,7 @@ namespace WeebDoorCreator.SDK string answ = ""; // cerco online RestClient client = new RestClient(apiUrl); - // compongo + // compongo string paramsQuery = ""; foreach (var item in paramsList) { @@ -255,6 +272,7 @@ namespace WeebDoorCreator.SDK // restituisco valore! return answ; } + /// /// Effettua chiamata URL GET con parametri e restituisce risultato /// @@ -289,6 +307,7 @@ namespace WeebDoorCreator.SDK // restituisco valore! return answ; } + /// /// Effettua chiamata URL POST con parametri (opzionali) e payload (opzionale) e restituisce risultato /// @@ -302,7 +321,7 @@ namespace WeebDoorCreator.SDK // cerco online RestClient client = new RestClient(apiUrl); var request = new RestRequest(URL); - // compongo + // compongo string paramsQuery = ""; if (paramsList != null && paramsList.Count > 0) {