private void AbortTask(TaskFlowManagement.CurrentProcessTask TaskJob, Node Node, string Message) { _TaskReport.On_Alarm_Happen(AlarmManagement.NewAlarm(Node, Message)); _TaskReport.On_TaskJob_Aborted(TaskJob); _TaskReport.On_Message_Log("CMD", TaskJob.TaskName.ToString() + " " + (TaskJob.Params.ContainsKey("@Target") ? TaskJob.Params["@Target"] : "") + " Aborted"); }
private void FinishTask(TaskFlowManagement.CurrentProcessTask TaskJob) { if (TaskJob.TaskName.ToString().IndexOf("CCLINK") == -1) { _TaskReport.On_Message_Log("CMD", TaskJob.TaskName.ToString() + " " + (TaskJob.Params.ContainsKey("@Target") ? TaskJob.Params["@Target"] : "") + " Finished"); } _TaskReport.On_TaskJob_Finished(TaskJob); }
public void Excute(object input) { TaskFlowManagement.CurrentProcessTask TaskJob = (TaskFlowManagement.CurrentProcessTask)input; if (TaskJob.TaskName != TaskFlowManagement.Command.CCLINK_GET_IO && TaskJob.TaskName != TaskFlowManagement.Command.CCLINK_SET_IO) { logger.Debug("ITaskFlow:" + TaskJob.TaskName.ToString() + " Index:" + TaskJob.CurrentIndex.ToString()); } if (TaskJob.CurrentIndex == 0 && TaskJob.TaskName.ToString().IndexOf("CCLINK") == -1) { _TaskReport.On_Message_Log("CMD", TaskJob.TaskName.ToString() + " " + (TaskJob.Params.ContainsKey("@Target") ? TaskJob.Params["@Target"] : "") + " Executing"); } string Message = ""; Node Target = null; Node Position = null; string tmp = ""; string Value = ""; if (TaskJob.Params != null) { foreach (KeyValuePair <string, string> item in TaskJob.Params) { switch (item.Key) { case "@Target": Target = NodeManagement.Get(item.Value); break; case "@Position": Position = NodeManagement.Get(item.Value); break; case "@Value": Value = item.Value; break; } } } try { switch (TaskJob.TaskName) { } } catch (Exception e) { logger.Error("Excute fail Task Name:" + TaskJob.TaskName.ToString() + " " + (TaskJob.Params.ContainsKey("@Target") ? TaskJob.Params["@Target"] : "") + " exception: " + e.StackTrace); AbortTask(TaskJob, NodeManagement.Get("SYSTEM"), e.StackTrace); return; } return; }
public void On_TaskJob_Aborted(TaskFlowManagement.CurrentProcessTask Task) { }
public void On_TaskJob_Finished(TaskFlowManagement.CurrentProcessTask Task) { }
public void On_TaskJob_Aborted(TaskFlowManagement.CurrentProcessTask Task, string NodeName, string ReportType, string Message) { }
public void On_Connection_Message(object Msg) { try { JObject restoredObject = JsonConvert.DeserializeObject <JObject>(Msg.ToString()); //JObject可使用LINQ方式存取 //var q = from p in restoredObject.Properties() // where p.Name == "Name" // select p; TaskFlowManagement.CurrentProcessTask Task = null; Node Node = null; CommandReturnMessage ReturnMsg = null; Transaction Txn = null; switch (restoredObject.Property("Event").Value.ToString()) { case "NodeReq": ReqNode = JsonConvert.DeserializeObject <Node>(restoredObject.Property("Node").Value.ToString()); NodeAvailable = true; break; case "SystemConfig": SystemConfig SysCfg = JsonConvert.DeserializeObject <SystemConfig>(restoredObject.Property("SystemConfig").Value.ToString()); //Dictionary<string, string> param = new Dictionary<string, string>(); //param.Add("@Target","ROBOT01"); //NewTask("123123", TaskFlowManagement.Command.ROBOT_HOME,param); break; case "On_TaskJob_Ack": Task = JsonConvert.DeserializeObject <TaskFlowManagement.CurrentProcessTask>(restoredObject.Property("Task").Value.ToString()); _Report.On_TaskJob_Ack(Task); break; case "On_TaskJob_Finished": Task = JsonConvert.DeserializeObject <TaskFlowManagement.CurrentProcessTask>(restoredObject.Property("Task").Value.ToString()); _Report.On_TaskJob_Finished(Task); break; case "On_TaskJob_Aborted": Task = JsonConvert.DeserializeObject <TaskFlowManagement.CurrentProcessTask>(restoredObject.Property("Task").Value.ToString()); string NodeName = restoredObject.Property("NodeName").Value.ToString(); string ReportType = restoredObject.Property("ReportType").Value.ToString(); string Message = restoredObject.Property("Message").Value.ToString(); _Report.On_TaskJob_Aborted(Task); break; case "On_Alarm_Happend": //TransferControl.Management.AlarmManagement.AlarmInfo Alarm = JsonConvert.DeserializeObject<TransferControl.Management.AlarmManagement.AlarmInfo>(restoredObject.Property("Alarm").Value.ToString()); //_Report.On_Alarm_Happen(Alarm); break; case "On_Event_Trigger": Node = JsonConvert.DeserializeObject <Node>(restoredObject.Property("Node").Value.ToString()); ReturnMsg = JsonConvert.DeserializeObject <CommandReturnMessage>(restoredObject.Property("Msg").Value.ToString()); _Report.On_Event_Trigger(Node, ReturnMsg); break; case "On_Command_Excuted": Node = JsonConvert.DeserializeObject <Node>(restoredObject.Property("Node").Value.ToString()); Txn = JsonConvert.DeserializeObject <Transaction>(restoredObject.Property("Txn").Value.ToString()); ReturnMsg = JsonConvert.DeserializeObject <CommandReturnMessage>(restoredObject.Property("Msg").Value.ToString()); _Report.On_Command_Excuted(Node, Txn, ReturnMsg); break; case "On_Command_Finished": Node = JsonConvert.DeserializeObject <Node>(restoredObject.Property("Node").Value.ToString()); Txn = JsonConvert.DeserializeObject <Transaction>(restoredObject.Property("Txn").Value.ToString()); ReturnMsg = JsonConvert.DeserializeObject <CommandReturnMessage>(restoredObject.Property("Msg").Value.ToString()); _Report.On_Command_Finished(Node, Txn, ReturnMsg); break; } } catch (Exception e) { MessageLog("CMD", e.Message); MessageLog("CMD", e.StackTrace); MessageLog("CMD", Msg.ToString()); } }