ningshuxia
2022-10-28 3ccb7c60e1ed8b6748ed7fb8b64b1dbe50d62abf
Socket/IStation.DataDockingSocket4NT/control/SendControlJobHelper.cs
@@ -10,8 +10,11 @@
    /// <summary>
    /// 发送控制指令辅助类
    /// </summary>
    public class SendControlJobHelper
    public class SendControlJobHelper
    {
        /// <summary>
        /// 从MQ里面获取控制指令 辅助类
        /// </summary>
        private static RabbitMqExChangeHelper _queueHelper = null;
        /// <summary>
@@ -43,41 +46,45 @@
                {
                    try
                    {
                        if(paras==null)
                        if (paras == null)
                        {
                            LogHelper.Info("南通控制命令,数据序列化失败");
                            NtLogHelper.Info("南通控制命令,数据序列化失败");
                            return true;
                        }
                        byte[] bts = null;
                        switch (paras.Type)
                        switch (paras.ControlType)
                        {
                            case 0:bts = null; break;//从辅助类中获取  关闭
                            case 1: bts = null; break;//从辅助类中获取 开启
                            case -1:bts = null;break;//从辅助类中获取 变频
                            default: break;
                        }
                        if (bts != null)
                        {
                            if (session != null)
                            {
                                if (session.IsConnected)
                            case Model.MonitorTestControlParas.eControlType.Stop:
                                {
                                    session.Send(bts, 0, bts.Length);
                                    LogHelper.Info(session.SessionName + ":" + BitTransfer.ToString(bts) + ", 发送一条请求控制指令");
                                    ShutDownMsgHelper.StartJob(session);
                                }
                            }
                                break;
                            case Model.MonitorTestControlParas.eControlType.Start:
                                {
                                    if (string.IsNullOrEmpty(paras.Context))
                                        return false;
                                    var context = Model.MonitorTestControlParas.StartContext.ToModel(paras.Context);
                                    if (context == null)
                                        return default;
                                    NtLogHelper.Debug(context.ToJson());
                                    StartUpMsgHelper.StartJob(session, context);
                                }
                                break;
                            default:
                                return false;
                        }
                        return true;
                    }
                    catch (Exception ex)
                    {
                        LogHelper.Error("南通控制命令,数据消息队列出错,自动跳过", ex);
                        NtLogHelper.Error("南通控制命令,数据消息队列出错,自动跳过", ex);
                        return true;
                    }
                });
            });
        }
    }
}