Admin.NET/WCS.Application/Hub/PlcHub.cs
@@ -63,7 +63,57 @@
            PLCTaskAction.boRefresh = context.BoRefresh.Value;
            await _sysConfigService.UpdateConfigValue("sys_Refresh", context.BoRefresh.Value);
        }
        await _plcHubContext.Clients.All.UpdateService(new PLCServiceModel() { BoRunningState = PLCTaskAction.boRunningState, BoRefresh = PLCTaskAction.boRefresh, BoOffline = PLCTaskAction.boOffline, BoDemo = PLCTaskAction.boDemo});
        //演示模式
        if (context.BoDemo.HasValue)
        {
            PLCTaskAction.boDemo = context.BoDemo.Value;
            //PLC连接
            var plcStackeConn = PLCTaskAction.listPlcConn.First(m => m.PlcIP == "10.18.51.120");
            if (plcStackeConn.Connected)
            {
                //写入流程字
                var ret = plcStackeConn.SetPlcDBValue(PLCDataTypeEnum.Bit, "DB119", "0", PLCTaskAction.boDemo == true ? "1" : "0");
                if (ret.IsSucceed)
                {
                    await _sysConfigService.UpdateConfigValue("sys_demo", context.BoDemo.Value);
                }
                else
                {
                    PLCTaskAction.boDemo = !PLCTaskAction.boDemo;
                }
            }
            else
            {
                PLCTaskAction.boDemo = !PLCTaskAction.boDemo;
            }
        }
        //滚筒反转
        if (context.BoDrumReversal.HasValue)
        {
            PLCTaskAction.boDrumReversal = context.BoDrumReversal.Value;
            //PLC连接
            var plcStackeConn = PLCTaskAction.listPlcConn.First(m => m.PlcIP == "10.18.51.120");
            if (plcStackeConn.Connected)
            {
                //写入流程字
                var ret = plcStackeConn.SetPlcDBValue(PLCDataTypeEnum.Bit, "DB119", "0.1", PLCTaskAction.boDemo == true ? "1" : "0");
                if (ret.IsSucceed)
                {
                    await _sysConfigService.UpdateConfigValue("sys_DrumReversal", context.BoDrumReversal.Value);
                }
                else
                {
                    PLCTaskAction.boDrumReversal = !PLCTaskAction.boDrumReversal;
                }
            }
            else
            {
                PLCTaskAction.boDrumReversal = !PLCTaskAction.boDrumReversal;
            }
        }
        await _plcHubContext.Clients.All.UpdateService(new PLCServiceModel() { BoRunningState = PLCTaskAction.boRunningState, BoRefresh = PLCTaskAction.boRefresh, BoOffline = PLCTaskAction.boOffline, BoDemo = PLCTaskAction.boDemo, BoDrumReversal = PLCTaskAction.boDrumReversal });
    }
}
public class PLCServiceModel
@@ -77,4 +127,6 @@
    public bool? BoRefresh { get; set; }
    public bool? BoDemo { get; set; }
    public bool? BoDrumReversal { get; set; }
}