JLChen
2020-02-20 965290476c027deb96891cde1095d9a100581a6b
Crabtree/SmartHome/HDL/Operation/Control.cs
@@ -8,6 +8,7 @@
{
    public class Control
    {
        public static bool IsEnterBackground = false;
        public bool IsCanShowTip;
        public System.DateTime LatestDateTime = System.DateTime.Now;
@@ -218,6 +219,7 @@
                case Command.READ_JOG_OPEN_TIME_ACK:
                case Command.SET_JOG_CLOSE_TIME_ACK:
                case Command.READ_JOG_CLOSE_TIME_ACK:
                case Command.ReadRemarkACK:
                    receiveFlag += "";
                    break;
                case Command.ControlMusicModel1ACK:
@@ -385,7 +387,19 @@
        void managerSendCount (object o)
        {
            add ();
            if (Shared.SimpleControl.CommonPage.IsRemote && !isLocal) {
            if (CommonPage.IsRemote && !isLocal) {
                if (!SmartHome.MqttCommon.IsGatewayOnline) {
                    System.Console.WriteLine ($"网关不在线 取消发送:"+ SendFlag);
                    Packet.HaveSendCount = 3;
                    allDone.Set ();
                    return;
                }
                if (IsEnterBackground) {
                    System.Console.WriteLine ("已进入后台 取消发送");
                    Packet.HaveSendCount = 3;
                    allDone.Set ();
                    return;
                }
                System.Console.WriteLine ("远程发送数据:" + SendFlag);
                SmartHome.MqttCommon.MqttRemoteSend (Packet.Bytes);
                Packet.FlagDateTime = DateTime.Now;
@@ -406,7 +420,7 @@
                    Packet.HaveSendCount--;
                    //这里是重发两次
                    while (Packet.HaveSendCount < 3) {
                    while (Packet.HaveSendCount < 3 && BusSocket.IsRunning) {
                        if (Packet.FlagDateTime.AddMilliseconds (1000).Ticks <= System.DateTime.Now.Ticks) {
                            System.Console.WriteLine ("重发数据:" + SendFlag);
                            BusSocket.AsyncBeginSend (Packet);
@@ -550,6 +564,7 @@
            case Command.READ_JOG_OPEN_TIME_CMD:
            case Command.SET_JOG_CLOSE_TIME_CMD:
            case Command.READ_JOG_CLOSE_TIME_CMD:
            case Command.ReadRemark:
                this.SendFlag += "";
                break;
            case Command.ControlMusicModel2: