public static bool AddZMKResponses(string id, object resp) { bool result = false; var schObj = SchedulerPayload.Get().Where(s => s.Id == id).FirstOrDefault(); //schObj.ZMKResponse.Add(resp); schObj.History.Add(resp); //update payload SchedulerPayload.Update(schObj); return(result); }
public static bool AddZMKResponses(string id, string resp, string type) { bool result = false; var schObj = SchedulerPayload.Get().Where(s => s.Id == id).FirstOrDefault(); JObject so = JObject.Parse(resp); switch (type) { case "ExecuteCode": var objExecute = JsonConvert.DeserializeObject <ExecuteCodeResponse>(resp); schObj.History.Add(objExecute); break; case "Train": var obj = JsonConvert.DeserializeObject <TrainingResponse>(resp); schObj.History.Add(obj); break; } //update payload SchedulerPayload.Update(schObj); return(result); }
public async Task <IActionResult> GetSelectedTaskAysnc(string id) { var taskData = SchedulerPayload.Get().Where(s => s.Id == id).FirstOrDefault(); var _type = SchedulerPayload.Get().Where(s => s.Id == id).Select(t => t.Type).FirstOrDefault(); List <object> taskHistNew = new List <object>(); if (!string.IsNullOrEmpty(taskData.Id)) { string origid = ""; if (id.IndexOf('-') > 0) { origid = id.Substring(0, id.IndexOf('-')); } else { origid = id; } var resp = await nnclient.GetRunningTaskByTaskName(origid); if ((JObject.Parse(resp)["runningTask"].Count() == 0) && (taskData.Id != taskData.Name)) { resp = await nnclient.GetRunningTaskByTaskName(origid.Substring(0, origid.IndexOf(taskData.Name))); } var joResp = JsonConvert.DeserializeObject <ZMM.Models.ClientJsonObjects.ZMKCodeExecution.RootObject>(resp); JArray jArr = JArray.FromObject(joResp.runningTask); Console.WriteLine($">>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>ZMK RUNNING TASK: {joResp}"); // JObject joResp = JObject.Parse(resp); // JArray jArr = (JArray)joResp["runningTask"]; // if (taskData.Recurrence == "REPEAT") { taskHistNew.Clear(); foreach (var j in taskData.History) { if (_type.Contains("PYTHON")) { ExecuteCodeResponse ecr = (ExecuteCodeResponse)j; string _status = jArr.Where(s => s["idforData"].ToString() == ecr.idforData).Select(s => s["status"].Value <string>()).FirstOrDefault(); ecr.status = _status; taskHistNew.Add(ecr); } if (_type.Contains("AUTOML")) { AutoMLResponse obj = (AutoMLResponse)j; string _status = jArr.Where(s => s["idforData"].ToString() == obj.idforData).Select(s => s["status"].Value <string>()).FirstOrDefault(); obj.status = _status; taskHistNew.Add(obj); } if (_type.Contains("NN")) { TrainingResponse obj = (TrainingResponse)j; string _status = jArr.Where(s => s["idforData"].ToString() == obj.idforData).Select(s => s["status"].Value <string>()).FirstOrDefault(); obj.status = _status; taskHistNew.Add(obj); } } } else if (taskData.Recurrence == "ONE_TIME") { taskHistNew.Clear(); foreach (var j in taskData.History) { if (j.ToString() == "ZMM.Models.ResponseMessages.TrainingResponse") { TrainingResponse jlist = (TrainingResponse)j; string _idfordata = jArr.Where(s => s["idforData"].ToString() == jlist.idforData).Select(s => s["idforData"].Value <string>()).FirstOrDefault(); if (!string.IsNullOrEmpty(_idfordata)) { JObject obj = JObject.FromObject(new { idforData = _idfordata, status = jArr.Where(s => s["idforData"].ToString() == jlist.idforData).Select(s => s["status"].Value <string>()).FirstOrDefault(), executedAt = jlist.executedAt }); taskHistNew.Add(obj); } } else { var jo = JObject.Parse(j.ToString()); string _idfordata = jArr.Where(s => s["idforData"].ToString() == jo["idforData"].ToString()).Select(s => s["idforData"].Value <string>()).FirstOrDefault(); if (!string.IsNullOrEmpty(_idfordata)) { JObject obj = JObject.FromObject(new { idforData = _idfordata, status = jArr.Where(s => s["idforData"].ToString() == jo["idforData"].ToString()).Select(s => s["status"].Value <string>()).FirstOrDefault(), executedAt = jo["executedAt"].ToString() }); taskHistNew.Add(obj); } } } } taskData.History.Clear(); taskData.History = taskHistNew; SchedulerPayload.Update(taskData); return(Json(SchedulerPayload.Get().Where(s => s.Id == id).FirstOrDefault())); } else { return(Ok(new { })); } }