增加苏安院实体IBP盘逻辑

This commit is contained in:
thesai 2022-11-21 11:22:40 +08:00
parent 60d126cb28
commit 2143f8b302
12 changed files with 1883 additions and 4 deletions

View File

@ -256,4 +256,10 @@ public class DeviceController {
AccountVO accountVO) { AccountVO accountVO) {
this.deviceService.addOrUpdateHhcjDeviceConfig(accountVO); this.deviceService.addOrUpdateHhcjDeviceConfig(accountVO);
} }
@PostMapping("/say/addOrUpdate")
public void addOrUpdateSayDeviceConfig(@RequestAttribute(name = AuthenticateInterceptor.LOGIN_USER_KEY)
AccountVO accountVO) {
this.deviceService.addOrUpdateSayDeviceConfig(accountVO);
}
} }

View File

@ -104,7 +104,7 @@ public class VirtualRealityIbpService implements IVirtualRealityIbpService {
break; break;
case JJTC: case JJTC:
stands.forEach(stand -> ciApiService.standEC(simulation, stand)); stands.forEach(stand -> ciApiService.standEC(simulation, stand));
ibp.query(VirtualRealityIbp.Mean.SIGNAL_ALARM, null).orderToOn(); //考虑兼容上下行都有蜂鸣器的情况 ibp.query(VirtualRealityIbp.Mean.SIGNAL_ALARM, element.getUp()).orderToOn(); //考虑兼容上下行都有蜂鸣器的情况
break; break;
case QXJJTC: case QXJJTC:
stands.forEach(stand -> ciApiService.cancelStandEC(simulation, stand)); stands.forEach(stand -> ciApiService.cancelStandEC(simulation, stand));

View File

@ -190,4 +190,6 @@ public interface DeviceService {
void addOrUpdateSrDeviceConfig(AccountVO accountVO, Long mapId); void addOrUpdateSrDeviceConfig(AccountVO accountVO, Long mapId);
void addOrUpdateHhcjDeviceConfig(AccountVO accountVO); void addOrUpdateHhcjDeviceConfig(AccountVO accountVO);
void addOrUpdateSayDeviceConfig(AccountVO accountVO);
} }

View File

@ -19,6 +19,7 @@ import club.joylink.rtss.vo.client.project.hhcj.HhcjPsdConfigVO;
import club.joylink.rtss.vo.client.project.richor.ZjdIbpConfigVO; import club.joylink.rtss.vo.client.project.richor.ZjdIbpConfigVO;
import club.joylink.rtss.vo.client.project.richor.ZjdPsdConfigVO; import club.joylink.rtss.vo.client.project.richor.ZjdPsdConfigVO;
import club.joylink.rtss.vo.client.project.richor.ZjdPslConfigVO; import club.joylink.rtss.vo.client.project.richor.ZjdPslConfigVO;
import club.joylink.rtss.vo.client.project.say.SayIbpConfigVO;
import club.joylink.rtss.vo.client.project.sdy.SdyPsdConfigVO; import club.joylink.rtss.vo.client.project.sdy.SdyPsdConfigVO;
import club.joylink.rtss.vo.client.project.sdy.SdyPslConfigVO; import club.joylink.rtss.vo.client.project.sdy.SdyPslConfigVO;
import club.joylink.rtss.vo.client.project.sr.SrSectionConfigVO; import club.joylink.rtss.vo.client.project.sr.SrSectionConfigVO;
@ -464,6 +465,51 @@ public class DeviceServiceImpl implements DeviceService {
} }
} }
@Override
public void addOrUpdateSayDeviceConfig(AccountVO accountVO) {
// 删除旧配置
ProjectDeviceExample example = new ProjectDeviceExample();
example.createCriteria()
.andProjectCodeEqualTo(Project.RICHOR_HHCJ.name())
.andTypeIn(ProjectDeviceType.PlcDeviceList().stream()
.map(Enum::name).collect(Collectors.toList()));
this.projectDeviceDAO.deleteByExample(example);
// 保存新配置
List<ProjectDevice> list = this.buildSayProjectDevices(accountVO);
for (ProjectDevice projectDevice : list) {
this.projectDeviceDAO.insert(projectDevice);
}
}
private List<ProjectDevice> buildSayProjectDevices(AccountVO accountVO) {
LocalDateTime now = LocalDateTime.now();
List<ProjectDevice> list = new ArrayList<>();
String projectCode = Project.SAY.name();
String prefix = "say-";
// PLC网关
ProjectDevice plcGateway = new ProjectDevice();
plcGateway.setProjectCode(projectCode);
plcGateway.setCode(prefix + "gateway");
plcGateway.setType(ProjectDeviceType.PLC_GATEWAY.name());
plcGateway.setCreator(accountVO.getId());
plcGateway.setCreateTime(now);
PlcGatewayConfigVO plcGatewayConfigVO = new PlcGatewayConfigVO(0, 256);
plcGateway.setConfig(plcGatewayConfigVO.toJson());
list.add(plcGateway);
// IBP盘
ProjectDevice ibp = new ProjectDevice();
ibp.setProjectCode(projectCode);
ibp.setCode(prefix + "ibp");
ibp.setType(ProjectDeviceType.IBP.name());
ibp.setCreator(accountVO.getId());
ibp.setCreateTime(now);
SayIbpConfigVO ibpConfigVO = new SayIbpConfigVO();
ibp.setConfig(ibpConfigVO.toJson());
list.add(ibp);
return list;
}
private List<ProjectDevice> buildHhcjProjectDevices(AccountVO accountVO) { private List<ProjectDevice> buildHhcjProjectDevices(AccountVO accountVO) {
LocalDateTime now = LocalDateTime.now(); LocalDateTime now = LocalDateTime.now();
List<ProjectDevice> list = new ArrayList<>(); List<ProjectDevice> list = new ArrayList<>();

View File

@ -16,6 +16,7 @@ import club.joylink.rtss.simulation.cbtc.device.real.modbustcp.heb.device.Heb1Ps
import club.joylink.rtss.simulation.cbtc.device.real.modbustcp.heb.device.Heb1PslConfig; import club.joylink.rtss.simulation.cbtc.device.real.modbustcp.heb.device.Heb1PslConfig;
import club.joylink.rtss.simulation.cbtc.device.real.modbustcp.hhcj.HhcjIbpConfig; import club.joylink.rtss.simulation.cbtc.device.real.modbustcp.hhcj.HhcjIbpConfig;
import club.joylink.rtss.simulation.cbtc.device.real.modbustcp.hhcj.HhcjPsdConfig; import club.joylink.rtss.simulation.cbtc.device.real.modbustcp.hhcj.HhcjPsdConfig;
import club.joylink.rtss.simulation.cbtc.device.real.modbustcp.say.SayIbpConfig;
import club.joylink.rtss.simulation.cbtc.device.real.modbustcp.xty.XtyPsdConfig; import club.joylink.rtss.simulation.cbtc.device.real.modbustcp.xty.XtyPsdConfig;
import club.joylink.rtss.simulation.cbtc.device.real.modbustcp.zjd.ZjdIbpConfig; import club.joylink.rtss.simulation.cbtc.device.real.modbustcp.zjd.ZjdIbpConfig;
import club.joylink.rtss.simulation.cbtc.device.real.modbustcp.zjd.ZjdPslConfig; import club.joylink.rtss.simulation.cbtc.device.real.modbustcp.zjd.ZjdPslConfig;
@ -181,6 +182,13 @@ public class ProjectJointSimulationServiceImpl implements ProjectJointSimulation
} }
break; break;
} }
case SAY: {
switch (config.getDeviceType()) {
case IBP:
return ((SayIbpConfig) config).getConfigVO().getIbpCode();
}
break;
}
} }
return null; return null;
} }

View File

@ -191,6 +191,10 @@ public class VirtualRealityIbp extends VirtualRealityDevice {
this.turnOn = false; this.turnOn = false;
this.turnOff = true; this.turnOff = true;
} }
public boolean isLight() {
return Type.LIGHT.equals(this.type);
}
} }
@Getter @Getter

View File

@ -1,10 +1,10 @@
package club.joylink.rtss.simulation.cbtc.device.real.modbustcp; package club.joylink.rtss.simulation.cbtc.device.real.modbustcp;
import club.joylink.rtss.simulation.cbtc.device.real.modbustcp.handler.ModbusMessageHandler2;
import club.joylink.rtss.vo.client.project.PlcGatewayConfigVO;
import com.digitalpetri.modbus.requests.ModbusRequest; import com.digitalpetri.modbus.requests.ModbusRequest;
import com.digitalpetri.modbus.requests.ReadCoilsRequest; import com.digitalpetri.modbus.requests.ReadCoilsRequest;
import com.digitalpetri.modbus.responses.ReadCoilsResponse; import com.digitalpetri.modbus.responses.ReadCoilsResponse;
import club.joylink.rtss.simulation.cbtc.device.real.modbustcp.handler.ModbusMessageHandler2;
import club.joylink.rtss.vo.client.project.PlcGatewayConfigVO;
import io.netty.channel.Channel; import io.netty.channel.Channel;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component; import org.springframework.stereotype.Component;

View File

@ -0,0 +1,30 @@
package club.joylink.rtss.simulation.cbtc.device.real.modbustcp.say;
import club.joylink.rtss.simulation.cbtc.device.real.modbustcp.device.RealDeviceConfig;
import club.joylink.rtss.util.JsonUtils;
import club.joylink.rtss.vo.client.project.ProjectDeviceVO;
import club.joylink.rtss.vo.client.project.say.SayIbpConfigVO;
import lombok.Getter;
import lombok.Setter;
@Getter
@Setter
public class SayIbpConfig extends RealDeviceConfig {
private SayIbpConfigVO configVO;
//防淹门上行关门到位
private boolean fymSxKmdw;
private boolean fymXxKmdw;
//排烟风机1号风机运行
private boolean pyfj1Yx;
private boolean pyfj2Yx;
//消防水泵1/2号运行
private boolean xfsbYx;
public SayIbpConfig(ProjectDeviceVO projectDevice) {
super(projectDevice);
if (projectDevice != null) {
this.configVO = JsonUtils.read(projectDevice.getConfig(), SayIbpConfigVO.class);
}
}
}

View File

@ -0,0 +1,595 @@
package club.joylink.rtss.simulation.cbtc.device.real.modbustcp.say;
import club.joylink.rtss.services.IVirtualRealityIbpService;
import club.joylink.rtss.simulation.cbtc.Simulation;
import club.joylink.rtss.simulation.cbtc.data.vr.VirtualRealityIbp;
import club.joylink.rtss.simulation.cbtc.device.real.modbustcp.PlcGatewayService;
import club.joylink.rtss.simulation.cbtc.device.real.modbustcp.RealDeviceService;
import club.joylink.rtss.simulation.cbtc.device.real.modbustcp.device.PlcGateway;
import club.joylink.rtss.simulation.cbtc.device.real.modbustcp.device.RealDeviceConfig;
import club.joylink.rtss.vo.client.project.say.SayIbpConfigVO;
import io.netty.buffer.ByteBuf;
import io.netty.channel.Channel;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.Objects;
@Service
public class SayIbpServiceImpl implements RealDeviceService {
@Autowired
private IVirtualRealityIbpService iVirtualRealityIbpService;
@Autowired
private PlcGatewayService plcGatewayService;
@Override
public boolean canHandle(RealDeviceConfig deviceConfig) {
return deviceConfig instanceof SayIbpConfig;
}
@Override
public void init(Simulation simulation, RealDeviceConfig deviceConfig) {
PlcGateway plcGateway = simulation.queryPlcGatewayDevice();
if (plcGateway == null)
return;
SayIbpConfig config = (SayIbpConfig) deviceConfig;
VirtualRealityIbp vrIbp = (VirtualRealityIbp) config.getMapElement();
if (vrIbp == null)
return;
SayIbpConfigVO configVO = config.getConfigVO();
int baseAddr = plcGateway.getConfig().getAddr() + configVO.getAddr();
Channel channel = plcGateway.getChannel();
//防淹门默认车站控制
plcGatewayService.writeSingleCoil(baseAddr, configVO.getFym_w_sxczkz_d(), true, channel);
plcGatewayService.writeSingleCoil(baseAddr, configVO.getFym_w_xxczkz_d(), true, channel);
plcGatewayService.writeSingleCoil(baseAddr, configVO.getFym_w_sxjdkz_d(), false, channel);
plcGatewayService.writeSingleCoil(baseAddr, configVO.getFym_w_xxjdkz_d(), false, channel);
}
@Override
public void handle(Simulation simulation, RealDeviceConfig deviceConfig, ByteBuf byteBuf) {
PlcGateway plcGateway = simulation.queryPlcGatewayDevice();
if (plcGateway == null)
return;
SayIbpConfig config = (SayIbpConfig) deviceConfig;
VirtualRealityIbp vrIbp = (VirtualRealityIbp) config.getMapElement();
if (vrIbp == null)
return;
SayIbpConfigVO configVO = config.getConfigVO();
ByteBuf deviceStatus = RealDeviceConfig.getDeviceCoilStatus(byteBuf, configVO.getAddr(), configVO.getQuantity());
//总试灯
boolean zsd_r_kg = RealDeviceConfig.getBitOf(deviceStatus, configVO.getZsd_r_kg());
//------------------------------ 信号 ------------------------------
boolean xh_r_xxkc_kg = RealDeviceConfig.getBitOf(deviceStatus, configVO.getXh_r_xxkc_kg());
boolean xh_r_xxqxkc_kg = RealDeviceConfig.getBitOf(deviceStatus, configVO.getXh_r_xxqxkc_kg());
boolean xh_r_xxjjtc_kg = RealDeviceConfig.getBitOf(deviceStatus, configVO.getXh_r_xxjjtc_kg());
boolean xh_r_xxqxjt_kg = RealDeviceConfig.getBitOf(deviceStatus, configVO.getXh_r_xxqxjt_kg());
boolean xh_r_xxqdbj_kg = RealDeviceConfig.getBitOf(deviceStatus, configVO.getXh_r_xxqdbj_kg());
boolean xh_r_sxkc_kg = RealDeviceConfig.getBitOf(deviceStatus, configVO.getXh_r_sxkc_kg());
boolean xh_r_sxqxkc_kg = RealDeviceConfig.getBitOf(deviceStatus, configVO.getXh_r_sxqxkc_kg());
boolean xh_r_sxjjtc_kg = RealDeviceConfig.getBitOf(deviceStatus, configVO.getXh_r_sxjjtc_kg());
boolean xh_r_sxqxjt_kg = RealDeviceConfig.getBitOf(deviceStatus, configVO.getXh_r_sxqxjt_kg());
boolean xh_r_sxqdbj_kg = RealDeviceConfig.getBitOf(deviceStatus, configVO.getXh_r_sxqdbj_kg());
boolean xh_r_sd_kg = RealDeviceConfig.getBitOf(deviceStatus, configVO.getXh_r_xhsd_kg());
iVirtualRealityIbpService.pressOrRelease(simulation, vrIbp, VirtualRealityIbp.Mean.KC, false, xh_r_xxkc_kg);
iVirtualRealityIbpService.pressOrRelease(simulation, vrIbp, VirtualRealityIbp.Mean.ZZKC, false, xh_r_xxqxkc_kg);
iVirtualRealityIbpService.pressOrRelease(simulation, vrIbp, VirtualRealityIbp.Mean.JJTC, false, xh_r_xxjjtc_kg);
iVirtualRealityIbpService.pressOrRelease(simulation, vrIbp, VirtualRealityIbp.Mean.QXJJTC, false, xh_r_xxqxjt_kg);
iVirtualRealityIbpService.pressOrRelease(simulation, vrIbp, VirtualRealityIbp.Mean.BJQC, false, xh_r_xxqdbj_kg);
iVirtualRealityIbpService.pressOrRelease(simulation, vrIbp, VirtualRealityIbp.Mean.KC, true, xh_r_sxkc_kg);
iVirtualRealityIbpService.pressOrRelease(simulation, vrIbp, VirtualRealityIbp.Mean.ZZKC, true, xh_r_sxqxkc_kg);
iVirtualRealityIbpService.pressOrRelease(simulation, vrIbp, VirtualRealityIbp.Mean.JJTC, true, xh_r_sxjjtc_kg);
iVirtualRealityIbpService.pressOrRelease(simulation, vrIbp, VirtualRealityIbp.Mean.QXJJTC, true, xh_r_sxqxjt_kg);
iVirtualRealityIbpService.pressOrRelease(simulation, vrIbp, VirtualRealityIbp.Mean.BJQC, true, xh_r_sxqdbj_kg);
iVirtualRealityIbpService.pressOrRelease(simulation, vrIbp, VirtualRealityIbp.Mean.SD, null, xh_r_sd_kg);
iVirtualRealityIbpService.updateOnOrOff(simulation, vrIbp, VirtualRealityIbp.Mean.KC, false, xh_r_xxkc_kg);
iVirtualRealityIbpService.updateOnOrOff(simulation, vrIbp, VirtualRealityIbp.Mean.JJTC, false, xh_r_xxjjtc_kg);
iVirtualRealityIbpService.updateOnOrOff(simulation, vrIbp, VirtualRealityIbp.Mean.QXJJTC, false, xh_r_xxqxjt_kg);
iVirtualRealityIbpService.updateOnOrOff(simulation, vrIbp, VirtualRealityIbp.Mean.BJQC, false, xh_r_xxqdbj_kg);
iVirtualRealityIbpService.updateOnOrOff(simulation, vrIbp, VirtualRealityIbp.Mean.KC, true, xh_r_sxkc_kg);
iVirtualRealityIbpService.updateOnOrOff(simulation, vrIbp, VirtualRealityIbp.Mean.JJTC, true, xh_r_sxjjtc_kg);
iVirtualRealityIbpService.updateOnOrOff(simulation, vrIbp, VirtualRealityIbp.Mean.QXJJTC, true, xh_r_sxqxjt_kg);
iVirtualRealityIbpService.updateOnOrOff(simulation, vrIbp, VirtualRealityIbp.Mean.BJQC, true, xh_r_sxqdbj_kg);
iVirtualRealityIbpService.updateOnOrOff(simulation, vrIbp, VirtualRealityIbp.Mean.SD, null, xh_r_sd_kg);
boolean xh_w_xxkc_d = RealDeviceConfig.getBitOf(deviceStatus, configVO.getXh_w_xxkc_d());
boolean xh_w_xxqxkc_kgd = RealDeviceConfig.getBitOf(deviceStatus, configVO.getXh_w_xxqxkc_kgd());
boolean xh_w_xxjjtc_d = RealDeviceConfig.getBitOf(deviceStatus, configVO.getXh_w_xxjjtc_d());
boolean xh_w_xxjtbj_fmq = RealDeviceConfig.getBitOf(deviceStatus, configVO.getXh_w_xxjtbj_fmq());
boolean xh_w_sxkc_d = RealDeviceConfig.getBitOf(deviceStatus, configVO.getXh_w_sxkc_d());
boolean xh_w_sxqxkc_kgd = RealDeviceConfig.getBitOf(deviceStatus, configVO.getXh_w_sxqxkc_kgd());
boolean xh_w_sxjjtc_d = RealDeviceConfig.getBitOf(deviceStatus, configVO.getXh_w_sxjjtc_d());
boolean xh_w_sxjtbj_fmq = RealDeviceConfig.getBitOf(deviceStatus, configVO.getXh_w_sxjtbj_fmq());
iVirtualRealityIbpService.updateOnOrOff(simulation, vrIbp, VirtualRealityIbp.Mean.kcLight, false, xh_w_xxkc_d);
iVirtualRealityIbpService.updateOnOrOff(simulation, vrIbp, VirtualRealityIbp.Mean.ZZKC, false, xh_w_xxqxkc_kgd);
iVirtualRealityIbpService.updateOnOrOff(simulation, vrIbp, VirtualRealityIbp.Mean.jjtcLight, false, xh_w_xxjjtc_d);
iVirtualRealityIbpService.updateOnOrOff(simulation, vrIbp, VirtualRealityIbp.Mean.SIGNAL_ALARM, false, xh_w_xxjtbj_fmq);
iVirtualRealityIbpService.updateOnOrOff(simulation, vrIbp, VirtualRealityIbp.Mean.kcLight, true, xh_w_sxkc_d);
iVirtualRealityIbpService.updateOnOrOff(simulation, vrIbp, VirtualRealityIbp.Mean.ZZKC, true, xh_w_sxqxkc_kgd);
iVirtualRealityIbpService.updateOnOrOff(simulation, vrIbp, VirtualRealityIbp.Mean.jjtcLight, true, xh_w_sxjjtc_d);
iVirtualRealityIbpService.updateOnOrOff(simulation, vrIbp, VirtualRealityIbp.Mean.SIGNAL_ALARM, true, xh_w_sxjtbj_fmq);
//------------------------------ 屏蔽门 ------------------------------
boolean psd_r_xxkm_kg = RealDeviceConfig.getBitOf(deviceStatus, configVO.getPsd_r_xxkm_kg());
boolean psd_r_xxgm_kg = RealDeviceConfig.getBitOf(deviceStatus, configVO.getPsd_r_xxgm_kg());
boolean psd_r_xxpy_kg = RealDeviceConfig.getBitOf(deviceStatus, configVO.getPsd_r_xxpy_kg());
boolean psd_r_xxqk_kg = RealDeviceConfig.getBitOf(deviceStatus, configVO.getPsd_r_xxqk_kg());
boolean psd_r_sxkm_kg = RealDeviceConfig.getBitOf(deviceStatus, configVO.getPsd_r_sxkm_kg());
boolean psd_r_sxgm_kg = RealDeviceConfig.getBitOf(deviceStatus, configVO.getPsd_r_sxgm_kg());
boolean psd_r_sxpy_kg = RealDeviceConfig.getBitOf(deviceStatus, configVO.getPsd_r_sxpy_kg());
boolean psd_r_sxqk_kg = RealDeviceConfig.getBitOf(deviceStatus, configVO.getPsd_r_sxqk_kg());
boolean psd_r_sd_kg = RealDeviceConfig.getBitOf(deviceStatus, configVO.getPsd_r_sd_kg());
iVirtualRealityIbpService.pressOrRelease(simulation, vrIbp, VirtualRealityIbp.Mean.KM, false, psd_r_xxkm_kg);
iVirtualRealityIbpService.pressOrRelease(simulation, vrIbp, VirtualRealityIbp.Mean.GM, false, psd_r_xxgm_kg);
iVirtualRealityIbpService.pressOrRelease(simulation, vrIbp, VirtualRealityIbp.Mean.KM, true, psd_r_sxkm_kg);
iVirtualRealityIbpService.pressOrRelease(simulation, vrIbp, VirtualRealityIbp.Mean.GM, true, psd_r_sxgm_kg);
iVirtualRealityIbpService.pressOrRelease(simulation, vrIbp, VirtualRealityIbp.Mean.PSD_SD, null, psd_r_sd_kg);
iVirtualRealityIbpService.updateOnOrOff(simulation, vrIbp, VirtualRealityIbp.Mean.KM, false, psd_r_xxkm_kg);
iVirtualRealityIbpService.updateOnOrOff(simulation, vrIbp, VirtualRealityIbp.Mean.GM, false, psd_r_xxgm_kg);
iVirtualRealityIbpService.updateOnOrOff(simulation, vrIbp, VirtualRealityIbp.Mean.KM, true, psd_r_sxkm_kg);
iVirtualRealityIbpService.updateOnOrOff(simulation, vrIbp, VirtualRealityIbp.Mean.GM, true, psd_r_sxgm_kg);
iVirtualRealityIbpService.updateOnOrOff(simulation, vrIbp, VirtualRealityIbp.Mean.PSD_SD, null, psd_r_sd_kg);
boolean psd_w_xxkmzt_d = RealDeviceConfig.getBitOf(deviceStatus, configVO.getPsd_w_xxkmzt_d());
boolean psd_w_xxgbsj_d = RealDeviceConfig.getBitOf(deviceStatus, configVO.getPsd_w_xxgbsj_d());
boolean psd_w_xxpy_d = RealDeviceConfig.getBitOf(deviceStatus, configVO.getPsd_w_xxpy_d());
boolean psd_w_xxqk_d = RealDeviceConfig.getBitOf(deviceStatus, configVO.getPsd_w_xxqk_d());
boolean psd_w_sxkmzt_d = RealDeviceConfig.getBitOf(deviceStatus, configVO.getPsd_w_sxkmzt_d());
boolean psd_w_sxgbsj_d = RealDeviceConfig.getBitOf(deviceStatus, configVO.getPsd_w_sxgbsj_d());
boolean psd_w_sxpy_d = RealDeviceConfig.getBitOf(deviceStatus, configVO.getPsd_w_sxpy_d());
boolean psd_w_sxqk_d = RealDeviceConfig.getBitOf(deviceStatus, configVO.getPsd_w_sxqk_d());
iVirtualRealityIbpService.updateOnOrOff(simulation, vrIbp, VirtualRealityIbp.Mean.kmLight, false, psd_w_xxkmzt_d);
iVirtualRealityIbpService.updateOnOrOff(simulation, vrIbp, VirtualRealityIbp.Mean.gmLight, false, psd_w_xxgbsj_d);
iVirtualRealityIbpService.updateOnOrOff(simulation, vrIbp, VirtualRealityIbp.Mean.kmLight, true, psd_w_sxkmzt_d);
iVirtualRealityIbpService.updateOnOrOff(simulation, vrIbp, VirtualRealityIbp.Mean.gmLight, true, psd_w_sxgbsj_d);
int baseAddr = plcGateway.getConfig().getAddr() + configVO.getAddr();
Channel channel = plcGateway.getChannel();
plcGatewayService.checkEqualAndWriteSingleCoil(baseAddr, configVO.getPsd_w_xxpy_d(), psd_w_xxpy_d, psd_r_xxpy_kg || psd_r_sd_kg || zsd_r_kg, channel);
plcGatewayService.checkEqualAndWriteSingleCoil(baseAddr, configVO.getPsd_w_xxqk_d(), psd_w_xxqk_d, psd_r_xxqk_kg || psd_r_sd_kg || zsd_r_kg, channel);
plcGatewayService.checkEqualAndWriteSingleCoil(baseAddr, configVO.getPsd_w_sxpy_d(), psd_w_sxpy_d, psd_r_sxpy_kg || psd_r_sd_kg || zsd_r_kg, channel);
plcGatewayService.checkEqualAndWriteSingleCoil(baseAddr, configVO.getPsd_w_sxqk_d(), psd_w_sxqk_d, psd_r_sxqk_kg || psd_r_sd_kg || zsd_r_kg, channel);
for (VirtualRealityIbp.IbpElement element : vrIbp.getAllElements()) {
Boolean on;
if (element.isLight() && zsd_r_kg) {
on = true;
} else {
if (element.isTurnOn()) {
on = true;
} else if (element.isTurnOff()) {
on = false;
} else {
continue;
}
}
if (element.isLight() && zsd_r_kg) {
on = true;
}
if (element.getMean() == null) {
continue;
}
boolean currentIsOn = false;
Integer addr = null;
switch (element.getMean()) {
case KC:
break;
case ZZKC:
if (Objects.equals(true, element.getUp())) {
addr = configVO.getXh_w_sxqxkc_kgd();
currentIsOn = xh_w_sxqxkc_kgd;
} else {
addr = configVO.getXh_w_xxqxkc_kgd();
currentIsOn = xh_w_xxqxkc_kgd;
}
break;
case JJTC:
break;
case QXJJTC:
break;
case BJQC:
break;
case SIGNAL_ALARM:
if (Objects.equals(true, element.getUp())) {
addr = configVO.getXh_w_sxjtbj_fmq();
currentIsOn = xh_w_sxjtbj_fmq;
} else {
addr = configVO.getXh_w_xxjtbj_fmq();
currentIsOn = xh_w_xxjtbj_fmq;
}
break;
case kcLight:
if (Objects.equals(true, element.getUp())) {
addr = configVO.getXh_w_sxkc_d();
currentIsOn = xh_w_sxkc_d;
} else if (Objects.equals(false, element.getUp())) {
addr = configVO.getXh_w_xxkc_d();
currentIsOn = xh_w_xxkc_d;
}
break;
case jjtcLight:
if (Objects.equals(true, element.getUp())) {
addr = configVO.getXh_w_sxjjtc_d();
currentIsOn = xh_w_sxjjtc_d;
} else if (Objects.equals(false, element.getUp())) {
addr = configVO.getXh_w_xxjjtc_d();
currentIsOn = xh_w_xxjjtc_d;
}
break;
case SD:
break;
case KM:
break;
case PSD_SMKM:
break;
case GM:
break;
case XXYS:
break;
case SXYS:
break;
case PSD_HSJC:
break;
case PSD_ALARM:
break;
case PSD_BJQC:
break;
case gmLight:
if (Objects.equals(true, element.getUp())) {
addr = configVO.getPsd_w_sxgbsj_d();
currentIsOn = psd_w_sxgbsj_d;
} else if (Objects.equals(false, element.getUp())) {
addr = configVO.getPsd_w_xxgbsj_d();
currentIsOn = psd_w_xxgbsj_d;
}
break;
case kmLight:
if (Objects.equals(true, element.getUp())) {
addr = configVO.getPsd_w_sxkmzt_d();
currentIsOn = psd_w_sxkmzt_d;
} else if (Objects.equals(false, element.getUp())) {
addr = configVO.getPsd_w_xxkmzt_d();
currentIsOn = psd_w_xxkmzt_d;
}
break;
case PSD_CZYX_LIGHT:
break;
case PSD_HSJC_LIGHT:
break;
case PSD_SDCZ_LIGHT:
break;
case PSD_GZBJ_LIGHT:
break;
case PSD_SD:
break;
case AXLE_RESET:
break;
case AXLE_PRE_RESET:
break;
case PRERESET_Z:
break;
}
if (addr != null) {
plcGatewayService.checkEqualAndWriteSingleCoil(baseAddr, addr, currentIsOn, on, channel);
}
}
//------------------------------ 防淹门 ------------------------------
boolean fym_r_xxjzqq_kg = RealDeviceConfig.getBitOf(deviceStatus, configVO.getFym_r_xxjzqq_kg());
boolean fym_r_xxgb_kg = RealDeviceConfig.getBitOf(deviceStatus, configVO.getFym_r_xxgb_kg());
boolean fym_r_sxkq_kg = RealDeviceConfig.getBitOf(deviceStatus, configVO.getFym_r_sxkq_kg());
boolean fym_r_sxtz_kg = RealDeviceConfig.getBitOf(deviceStatus, configVO.getFym_r_sxtz_kg());
boolean fym_r_sxgb_kg = RealDeviceConfig.getBitOf(deviceStatus, configVO.getFym_r_sxgb_kg());
boolean fym_r_sxjzqq_kg = RealDeviceConfig.getBitOf(deviceStatus, configVO.getFym_r_sxjzqq_kg());
boolean fym_r_bjqr_kg = RealDeviceConfig.getBitOf(deviceStatus, configVO.getFym_r_bjqr_kg());
boolean fym_r_xxkq_kg = RealDeviceConfig.getBitOf(deviceStatus, configVO.getFym_r_xxkq_kg());
boolean fym_r_xxtz_kg = RealDeviceConfig.getBitOf(deviceStatus, configVO.getFym_r_xxtz_kg());
boolean fym_w_sxgb_kgd = RealDeviceConfig.getBitOf(deviceStatus, configVO.getFym_w_sxgb_kgd());
boolean fym_w_sxkq_kgd = RealDeviceConfig.getBitOf(deviceStatus, configVO.getFym_w_sxkq_kgd());
boolean fym_w_sdzzdw_d = RealDeviceConfig.getBitOf(deviceStatus, configVO.getFym_w_sdzzdw_d());
boolean fym_w_xxyjbj_d = RealDeviceConfig.getBitOf(deviceStatus, configVO.getFym_w_xxyjbj_d());
boolean fym_w_sxjdkz_d = RealDeviceConfig.getBitOf(deviceStatus, configVO.getFym_w_sxjdkz_d());
boolean fym_w_sxejbj_d = RealDeviceConfig.getBitOf(deviceStatus, configVO.getFym_w_sxejbj_d());
boolean fym_w_sxczkz_d = RealDeviceConfig.getBitOf(deviceStatus, configVO.getFym_w_sxczkz_d());
boolean fym_w_sxyjbj_d = RealDeviceConfig.getBitOf(deviceStatus, configVO.getFym_w_sxyjbj_d());
boolean fym_w_sxgmdw_d = RealDeviceConfig.getBitOf(deviceStatus, configVO.getFym_w_sxgmdw_d());
boolean fym_w_sxyxgm_d = RealDeviceConfig.getBitOf(deviceStatus, configVO.getFym_w_sxyxgm_d());
boolean fym_w_sxkmdw_d = RealDeviceConfig.getBitOf(deviceStatus, configVO.getFym_w_sxkmdw_d());
boolean fym_w_sxjxzt_d = RealDeviceConfig.getBitOf(deviceStatus, configVO.getFym_w_sxjxzt_d());
boolean fym_w_xxczkz_d = RealDeviceConfig.getBitOf(deviceStatus, configVO.getFym_w_xxczkz_d());
boolean fym_w_xxjdkz_d = RealDeviceConfig.getBitOf(deviceStatus, configVO.getFym_w_xxjdkz_d());
boolean fym_w_xxjxzt_d = RealDeviceConfig.getBitOf(deviceStatus, configVO.getFym_w_xxjxzt_d());
boolean fym_w_xxejbj_d = RealDeviceConfig.getBitOf(deviceStatus, configVO.getFym_w_xxejbj_d());
boolean fym_w_xxkmdw_d = RealDeviceConfig.getBitOf(deviceStatus, configVO.getFym_w_xxkmdw_d());
boolean fym_w_xxyxgm_d = RealDeviceConfig.getBitOf(deviceStatus, configVO.getFym_w_xxyxgm_d());
boolean fym_w_sxsdzzdw_d = RealDeviceConfig.getBitOf(deviceStatus, configVO.getFym_w_sxsdzzdw_d());
boolean fym_w_xxgmdw_d = RealDeviceConfig.getBitOf(deviceStatus, configVO.getFym_w_xxgmdw_d());
boolean fym_w_xxkq_kgd = RealDeviceConfig.getBitOf(deviceStatus, configVO.getFym_w_xxkq_kgd());
boolean fym_w_xxgb_kgd = RealDeviceConfig.getBitOf(deviceStatus, configVO.getFym_w_xxgb_kgd());
boolean fym_w_jl_fmq = RealDeviceConfig.getBitOf(deviceStatus, configVO.getFym_w_jl_fmq());
boolean fym_w_jd_fmq = RealDeviceConfig.getBitOf(deviceStatus, configVO.getFym_w_jd_fmq());
plcGatewayService.checkEqualAndWriteSingleCoil(baseAddr, configVO.getFym_w_sxgb_kgd(), fym_w_sxgb_kgd, fym_r_sxgb_kg, channel);
plcGatewayService.checkEqualAndWriteSingleCoil(baseAddr, configVO.getFym_w_sxgb_kgd(), fym_w_sxkq_kgd, fym_r_sxkq_kg, channel);
plcGatewayService.checkEqualAndWriteSingleCoil(baseAddr, configVO.getFym_w_xxgb_kgd(), fym_w_xxgb_kgd, fym_r_xxgb_kg, channel);
plcGatewayService.checkEqualAndWriteSingleCoil(baseAddr, configVO.getFym_w_sxgb_kgd(), fym_w_xxkq_kgd, fym_r_xxkq_kg, channel);
plcGatewayService.checkEqualAndWriteSingleCoil(baseAddr, configVO.getFym_w_sdzzdw_d(), fym_w_sdzzdw_d, zsd_r_kg, channel);
plcGatewayService.checkEqualAndWriteSingleCoil(baseAddr, configVO.getFym_w_xxyjbj_d(), fym_w_xxyjbj_d, zsd_r_kg, channel);
plcGatewayService.checkEqualAndWriteSingleCoil(baseAddr, configVO.getFym_w_sxjdkz_d(), fym_w_sxjdkz_d, zsd_r_kg, channel);
plcGatewayService.checkEqualAndWriteSingleCoil(baseAddr, configVO.getFym_w_sxejbj_d(), fym_w_sxejbj_d, zsd_r_kg, channel);
plcGatewayService.checkEqualAndWriteSingleCoil(baseAddr, configVO.getFym_w_sxczkz_d(), fym_w_sxczkz_d, zsd_r_kg, channel);
plcGatewayService.checkEqualAndWriteSingleCoil(baseAddr, configVO.getFym_w_sxyjbj_d(), fym_w_sxyjbj_d, zsd_r_kg, channel);
plcGatewayService.checkEqualAndWriteSingleCoil(baseAddr, configVO.getFym_w_sxgmdw_d(), fym_w_sxgmdw_d, zsd_r_kg, channel);
plcGatewayService.checkEqualAndWriteSingleCoil(baseAddr, configVO.getFym_w_sxyxgm_d(), fym_w_sxyxgm_d, zsd_r_kg, channel);
plcGatewayService.checkEqualAndWriteSingleCoil(baseAddr, configVO.getFym_w_sxkmdw_d(), fym_w_sxkmdw_d, zsd_r_kg, channel);
plcGatewayService.checkEqualAndWriteSingleCoil(baseAddr, configVO.getFym_w_sxjxzt_d(), fym_w_sxjxzt_d, zsd_r_kg, channel);
plcGatewayService.checkEqualAndWriteSingleCoil(baseAddr, configVO.getFym_w_xxczkz_d(), fym_w_xxczkz_d, zsd_r_kg, channel);
plcGatewayService.checkEqualAndWriteSingleCoil(baseAddr, configVO.getFym_w_xxjdkz_d(), fym_w_xxjdkz_d, zsd_r_kg, channel);
plcGatewayService.checkEqualAndWriteSingleCoil(baseAddr, configVO.getFym_w_xxjxzt_d(), fym_w_xxjxzt_d, zsd_r_kg, channel);
plcGatewayService.checkEqualAndWriteSingleCoil(baseAddr, configVO.getFym_w_xxejbj_d(), fym_w_xxejbj_d, zsd_r_kg, channel);
plcGatewayService.checkEqualAndWriteSingleCoil(baseAddr, configVO.getFym_w_xxkmdw_d(), fym_w_xxkmdw_d, zsd_r_kg, channel);
plcGatewayService.checkEqualAndWriteSingleCoil(baseAddr, configVO.getFym_w_xxyxgm_d(), fym_w_xxyxgm_d, zsd_r_kg, channel);
plcGatewayService.checkEqualAndWriteSingleCoil(baseAddr, configVO.getFym_w_sxsdzzdw_d(), fym_w_sxsdzzdw_d, zsd_r_kg, channel);
plcGatewayService.checkEqualAndWriteSingleCoil(baseAddr, configVO.getFym_w_xxgmdw_d(), fym_w_xxgmdw_d, zsd_r_kg, channel);
//虚拟防淹门开关门
if (fym_r_sxkq_kg) {
config.setFymSxKmdw(true);
} else if (fym_r_sxgb_kg) {
config.setFymSxKmdw(false);
}
if (fym_r_xxkq_kg) {
config.setFymXxKmdw(true);
} else if (fym_r_xxgb_kg) {
config.setFymXxKmdw(false);
}
plcGatewayService.checkEqualAndWriteSingleCoil(baseAddr, configVO.getFym_w_sxkmdw_d(), fym_w_sxkmdw_d, config.isFymSxKmdw() || zsd_r_kg, channel);
plcGatewayService.checkEqualAndWriteSingleCoil(baseAddr, configVO.getFym_w_sxkmdw_d(), fym_w_sxgmdw_d, !config.isFymSxKmdw() || zsd_r_kg, channel);
plcGatewayService.checkEqualAndWriteSingleCoil(baseAddr, configVO.getFym_w_sxkmdw_d(), fym_w_xxkmdw_d, config.isFymXxKmdw() || zsd_r_kg, channel);
plcGatewayService.checkEqualAndWriteSingleCoil(baseAddr, configVO.getFym_w_sxkmdw_d(), fym_w_xxgmdw_d, !config.isFymXxKmdw() || zsd_r_kg, channel);
//------------------------------ 隧道通风模式 ------------------------------
boolean sdtf_r_xpxxcwhz_kg = RealDeviceConfig.getBitOf(deviceStatus, configVO.getSdtf_r_xpxxcwhz_kg());
boolean sdtf_r_xpxxcthz_kg = RealDeviceConfig.getBitOf(deviceStatus, configVO.getSdtf_r_xpxxcthz_kg());
boolean sdtf_r_pmxxcthz_kg = RealDeviceConfig.getBitOf(deviceStatus, configVO.getSdtf_r_pmxxcthz_kg());
boolean sdtf_r_pmxxcwhz_kg = RealDeviceConfig.getBitOf(deviceStatus, configVO.getSdtf_r_pmxxcwhz_kg());
boolean sdtf_r_xpxxzs_kg = RealDeviceConfig.getBitOf(deviceStatus, configVO.getSdtf_r_xpxxzs_kg());
boolean sdtf_r_xxczsdhz_kg = RealDeviceConfig.getBitOf(deviceStatus, configVO.getSdtf_r_xxczsdhz_kg());
boolean sdtf_r_pmxxzs_kg = RealDeviceConfig.getBitOf(deviceStatus, configVO.getSdtf_r_pmxxzs_kg());
boolean sdtf_r_xpsxzs_kg = RealDeviceConfig.getBitOf(deviceStatus, configVO.getSdtf_r_xpsxzs_kg());
boolean sdtf_r_sxczsdhz_kg = RealDeviceConfig.getBitOf(deviceStatus, configVO.getSdtf_r_sxczsdhz_kg());
boolean sdtf_r_pmsxzs_kg = RealDeviceConfig.getBitOf(deviceStatus, configVO.getSdtf_r_pmsxzs_kg());
boolean sdtf_r_xpsxcthz_kg = RealDeviceConfig.getBitOf(deviceStatus, configVO.getSdtf_r_xpsxcthz_kg());
boolean sdtf_r_xpsxcwhz_kg = RealDeviceConfig.getBitOf(deviceStatus, configVO.getSdtf_r_xpsxcwhz_kg());
boolean sdtf_r_pmsxcwhz_kg = RealDeviceConfig.getBitOf(deviceStatus, configVO.getSdtf_r_pmsxcwhz_kg());
boolean sdtf_r_pmsxcthz_kg = RealDeviceConfig.getBitOf(deviceStatus, configVO.getSdtf_r_pmsxcthz_kg());
boolean sdtf_w_xpxxcwhz_kgd = RealDeviceConfig.getBitOf(deviceStatus, configVO.getSdtf_w_xpxxcwhz_kgd());
boolean sdtf_w_xpxxcthz_kgd = RealDeviceConfig.getBitOf(deviceStatus, configVO.getSdtf_w_xpxxcthz_kgd());
boolean sdtf_w_pmxxcthz_kgd = RealDeviceConfig.getBitOf(deviceStatus, configVO.getSdtf_w_pmxxcthz_kgd());
boolean sdtf_w_pmxxcwhz_kgd = RealDeviceConfig.getBitOf(deviceStatus, configVO.getSdtf_w_pmxxcwhz_kgd());
boolean sdtf_w_xpxxzs_kgd = RealDeviceConfig.getBitOf(deviceStatus, configVO.getSdtf_w_xpxxzs_kgd());
boolean sdtf_w_xxczsdhz_kgd = RealDeviceConfig.getBitOf(deviceStatus, configVO.getSdtf_w_xxczsdhz_kgd());
boolean sdtf_w_pmxxzs_kgd = RealDeviceConfig.getBitOf(deviceStatus, configVO.getSdtf_w_pmxxzs_kgd());
boolean sdtf_w_xpsxzs_kgd = RealDeviceConfig.getBitOf(deviceStatus, configVO.getSdtf_w_xpsxzs_kgd());
boolean sdtf_w_sxczsdhz_kgd = RealDeviceConfig.getBitOf(deviceStatus, configVO.getSdtf_w_sxczsdhz_kgd());
boolean sdtf_w_pmsxzs_kgd = RealDeviceConfig.getBitOf(deviceStatus, configVO.getSdtf_w_pmsxzs_kgd());
boolean sdtf_w_xpsxcthz_kgd = RealDeviceConfig.getBitOf(deviceStatus, configVO.getSdtf_w_xpsxcthz_kgd());
boolean sdtf_w_xpsxcwhz_kgd = RealDeviceConfig.getBitOf(deviceStatus, configVO.getSdtf_w_xpsxcwhz_kgd());
boolean sdtf_w_pmsxcwhz_kgd = RealDeviceConfig.getBitOf(deviceStatus, configVO.getSdtf_w_pmsxcwhz_kgd());
boolean sdtf_w_pmsxcthz_kgd = RealDeviceConfig.getBitOf(deviceStatus, configVO.getSdtf_w_pmsxcthz_kgd());
plcGatewayService.checkEqualAndWriteSingleCoil(baseAddr, configVO.getSdtf_w_xpxxcwhz_kgd(), sdtf_w_xpxxcwhz_kgd, sdtf_r_xpxxcwhz_kg, channel);
plcGatewayService.checkEqualAndWriteSingleCoil(baseAddr, configVO.getSdtf_w_xpxxcthz_kgd(), sdtf_w_xpxxcthz_kgd, sdtf_r_xpxxcthz_kg, channel);
plcGatewayService.checkEqualAndWriteSingleCoil(baseAddr, configVO.getSdtf_w_pmxxcthz_kgd(), sdtf_w_pmxxcthz_kgd, sdtf_r_pmxxcthz_kg, channel);
plcGatewayService.checkEqualAndWriteSingleCoil(baseAddr, configVO.getSdtf_w_pmxxcwhz_kgd(), sdtf_w_pmxxcwhz_kgd, sdtf_r_pmxxcwhz_kg, channel);
plcGatewayService.checkEqualAndWriteSingleCoil(baseAddr, configVO.getSdtf_w_xpxxzs_kgd(), sdtf_w_xpxxzs_kgd, sdtf_r_xpxxzs_kg, channel);
plcGatewayService.checkEqualAndWriteSingleCoil(baseAddr, configVO.getSdtf_w_xxczsdhz_kgd(), sdtf_w_xxczsdhz_kgd, sdtf_r_xxczsdhz_kg, channel);
plcGatewayService.checkEqualAndWriteSingleCoil(baseAddr, configVO.getSdtf_w_pmxxzs_kgd(), sdtf_w_pmxxzs_kgd, sdtf_r_pmxxzs_kg, channel);
plcGatewayService.checkEqualAndWriteSingleCoil(baseAddr, configVO.getSdtf_w_xpsxzs_kgd(), sdtf_w_xpsxzs_kgd, sdtf_r_xpsxzs_kg, channel);
plcGatewayService.checkEqualAndWriteSingleCoil(baseAddr, configVO.getSdtf_w_sxczsdhz_kgd(), sdtf_w_sxczsdhz_kgd, sdtf_r_sxczsdhz_kg, channel);
plcGatewayService.checkEqualAndWriteSingleCoil(baseAddr, configVO.getSdtf_w_pmsxzs_kgd(), sdtf_w_pmsxzs_kgd, sdtf_r_pmsxzs_kg, channel);
plcGatewayService.checkEqualAndWriteSingleCoil(baseAddr, configVO.getSdtf_w_xpsxcthz_kgd(), sdtf_w_xpsxcthz_kgd, sdtf_r_xpsxcthz_kg, channel);
plcGatewayService.checkEqualAndWriteSingleCoil(baseAddr, configVO.getSdtf_w_xpsxcwhz_kgd(), sdtf_w_xpsxcwhz_kgd, sdtf_r_xpsxcwhz_kg, channel);
plcGatewayService.checkEqualAndWriteSingleCoil(baseAddr, configVO.getSdtf_w_pmsxcwhz_kgd(), sdtf_w_pmsxcwhz_kgd, sdtf_r_pmsxcwhz_kg, channel);
plcGatewayService.checkEqualAndWriteSingleCoil(baseAddr, configVO.getSdtf_w_pmsxcthz_kgd(), sdtf_w_pmsxcthz_kgd, sdtf_r_pmsxcthz_kg, channel);
//------------------------------ 车站火灾模式 ------------------------------
boolean hz_r_A_04kv_kg = RealDeviceConfig.getBitOf(deviceStatus, configVO.getHz_r_A_04kv_kg());
boolean hz_r_A_zlbyqs2_kg = RealDeviceConfig.getBitOf(deviceStatus, configVO.getHz_r_A_zlbyqs2_kg());
boolean hz_r_A_xdcs_kg = RealDeviceConfig.getBitOf(deviceStatus, configVO.getHz_r_A_xdcs_kg());
boolean hz_r_A_hkdks_kg = RealDeviceConfig.getBitOf(deviceStatus, configVO.getHz_r_A_hkdks_kg());
boolean hz_r_A_zykggs_kg = RealDeviceConfig.getBitOf(deviceStatus, configVO.getHz_r_A_zykggs_kg());
boolean hz_r_A_zlbyqs1_kg = RealDeviceConfig.getBitOf(deviceStatus, configVO.getHz_r_A_zlbyqs1_kg());
boolean hz_r_A_kzs_kg = RealDeviceConfig.getBitOf(deviceStatus, configVO.getHz_r_A_kzs_kg());
boolean hz_r_A_zszdzzs_kg = RealDeviceConfig.getBitOf(deviceStatus, configVO.getHz_r_A_zszdzzs_kg());
boolean hz_r_A_sbjchkjf_kg = RealDeviceConfig.getBitOf(deviceStatus, configVO.getHz_r_A_sbjchkjf_kg());
boolean hz_r_B_xdcs_kg = RealDeviceConfig.getBitOf(deviceStatus, configVO.getHz_r_B_xdcs_kg());
boolean hz_r_A_lsjf_kg = RealDeviceConfig.getBitOf(deviceStatus, configVO.getHz_r_A_lsjf_kg());
boolean hz_r_fyfq1_kg = RealDeviceConfig.getBitOf(deviceStatus, configVO.getHz_r_fyfq1_kg());
boolean hz_r_fyfq2_kg = RealDeviceConfig.getBitOf(deviceStatus, configVO.getHz_r_fyfq2_kg());
boolean hz_r_ehcrktd_kg = RealDeviceConfig.getBitOf(deviceStatus, configVO.getHz_r_ehcrktd_kg());
boolean hz_r_B_hkdks_kg = RealDeviceConfig.getBitOf(deviceStatus, configVO.getHz_r_B_hkdks_kg());
boolean hz_r_A_hkjf_kg = RealDeviceConfig.getBitOf(deviceStatus, configVO.getHz_r_A_hkjf_kg());
boolean hz_r_B_hkjf_kg = RealDeviceConfig.getBitOf(deviceStatus, configVO.getHz_r_B_hkjf_kg());
boolean hz_r_B_zhjksbs_kg = RealDeviceConfig.getBitOf(deviceStatus, configVO.getHz_r_B_zhjksbs_kg());
boolean hz_r_B_rdzhdys_kg = RealDeviceConfig.getBitOf(deviceStatus, configVO.getHz_r_B_rdzhdys_kg());
boolean hz_r_B_txsbs_kg = RealDeviceConfig.getBitOf(deviceStatus, configVO.getHz_r_B_txsbs_kg());
boolean hz_r_B_mytxsbs_kg = RealDeviceConfig.getBitOf(deviceStatus, configVO.getHz_r_B_mytxsbs_kg());
boolean hz_r_B_gasbs_kg = RealDeviceConfig.getBitOf(deviceStatus, configVO.getHz_r_B_gasbs_kg());
boolean hz_r_B_aqmkzs_kg = RealDeviceConfig.getBitOf(deviceStatus, configVO.getHz_r_B_aqmkzs_kg());
boolean hz_r_B_xhsbjdys_kg = RealDeviceConfig.getBitOf(deviceStatus, configVO.getHz_r_B_xhsbjdys_kg());
boolean hz_r_zdsd_xn = RealDeviceConfig.getBitOf(deviceStatus, configVO.getHz_r_zdsd_xn());
boolean hz_r_qtqy_kg = RealDeviceConfig.getBitOf(deviceStatus, configVO.getHz_r_qtqy_kg());
boolean hz_w_B_xdcs_kgd = RealDeviceConfig.getBitOf(deviceStatus, configVO.getHz_w_B_xdcs_kgd());
boolean hz_w_B_hkdks_kgd = RealDeviceConfig.getBitOf(deviceStatus, configVO.getHz_w_B_hkdks_kgd());
boolean hz_w_fyfq2_kgd = RealDeviceConfig.getBitOf(deviceStatus, configVO.getHz_w_fyfq2_kgd());
boolean hz_w_ehcrktd_kgd = RealDeviceConfig.getBitOf(deviceStatus, configVO.getHz_w_ehcrktd_kgd());
boolean hz_w_A_zszdzzs_kgd = RealDeviceConfig.getBitOf(deviceStatus, configVO.getHz_w_A_zszdzzs_kgd());
boolean hz_w_A_zykggs_kgd = RealDeviceConfig.getBitOf(deviceStatus, configVO.getHz_w_A_zykggs_kgd());
boolean hz_w_A_zlbyqs2_kgd = RealDeviceConfig.getBitOf(deviceStatus, configVO.getHz_w_A_zlbyqs2_kgd());
boolean hz_w_A_zlbyqs1_kgd = RealDeviceConfig.getBitOf(deviceStatus, configVO.getHz_w_A_zlbyqs1_kgd());
boolean hz_w_A_xdcs_kgd = RealDeviceConfig.getBitOf(deviceStatus, configVO.getHz_w_A_xdcs_kgd());
boolean hz_w_A_kzs_kgd = RealDeviceConfig.getBitOf(deviceStatus, configVO.getHz_w_A_kzs_kgd());
boolean hz_w_A_04kv_kgd = RealDeviceConfig.getBitOf(deviceStatus, configVO.getHz_w_A_04kv_kgd());
boolean hz_w_A_hkdks_kgd = RealDeviceConfig.getBitOf(deviceStatus, configVO.getHz_w_A_hkdks_kgd());
boolean hz_w_A_sbjchkjf_kgd = RealDeviceConfig.getBitOf(deviceStatus, configVO.getHz_w_A_sbjchkjf_kgd());
boolean hz_w_A_hkjf_kgd = RealDeviceConfig.getBitOf(deviceStatus, configVO.getHz_w_A_hkjf_kgd());
boolean hz_w_fyfq1_kgd = RealDeviceConfig.getBitOf(deviceStatus, configVO.getHz_w_fyfq1_kgd());
boolean hz_w_A_lsjf_kgd = RealDeviceConfig.getBitOf(deviceStatus, configVO.getHz_w_A_lsjf_kgd());
boolean hz_w_B_gasbs_kgd = RealDeviceConfig.getBitOf(deviceStatus, configVO.getHz_w_B_gasbs_kgd());
boolean hz_w_B_zhjksbs_kgd = RealDeviceConfig.getBitOf(deviceStatus, configVO.getHz_w_B_zhjksbs_kgd());
boolean hz_w_B_hkjf_kgd = RealDeviceConfig.getBitOf(deviceStatus, configVO.getHz_w_B_hkjf_kgd());
boolean hz_w_B_xhsbjdys_kgd = RealDeviceConfig.getBitOf(deviceStatus, configVO.getHz_w_B_xhsbjdys_kgd());
boolean hz_w_B_txsbs_kgd = RealDeviceConfig.getBitOf(deviceStatus, configVO.getHz_w_B_txsbs_kgd());
boolean hz_w_B_rdzhdys_kgd = RealDeviceConfig.getBitOf(deviceStatus, configVO.getHz_w_B_rdzhdys_kgd());
boolean hz_w_B_mytxsbs_kgd = RealDeviceConfig.getBitOf(deviceStatus, configVO.getHz_w_B_mytxsbs_kgd());
boolean hz_w_B_aqmkzs_kgd = RealDeviceConfig.getBitOf(deviceStatus, configVO.getHz_w_B_aqmkzs_kgd());
boolean hz_w_qtqy_kgd = RealDeviceConfig.getBitOf(deviceStatus, configVO.getHz_w_qtqy_kgd());
plcGatewayService.checkEqualAndWriteSingleCoil(baseAddr, configVO.getHz_w_B_xdcs_kgd(), hz_w_B_xdcs_kgd, hz_r_B_xdcs_kg, channel);
plcGatewayService.checkEqualAndWriteSingleCoil(baseAddr, configVO.getHz_w_B_hkdks_kgd(), hz_w_B_hkdks_kgd, hz_r_B_hkdks_kg, channel);
plcGatewayService.checkEqualAndWriteSingleCoil(baseAddr, configVO.getHz_w_fyfq2_kgd(), hz_w_fyfq2_kgd, hz_r_fyfq2_kg, channel);
plcGatewayService.checkEqualAndWriteSingleCoil(baseAddr, configVO.getHz_w_ehcrktd_kgd(), hz_w_ehcrktd_kgd, hz_r_ehcrktd_kg, channel);
plcGatewayService.checkEqualAndWriteSingleCoil(baseAddr, configVO.getHz_w_A_zszdzzs_kgd(), hz_w_A_zszdzzs_kgd, hz_r_A_zszdzzs_kg, channel);
plcGatewayService.checkEqualAndWriteSingleCoil(baseAddr, configVO.getHz_w_A_zykggs_kgd(), hz_w_A_zykggs_kgd, hz_r_A_zykggs_kg, channel);
plcGatewayService.checkEqualAndWriteSingleCoil(baseAddr, configVO.getHz_w_A_zlbyqs2_kgd(), hz_w_A_zlbyqs2_kgd, hz_r_A_zlbyqs2_kg, channel);
plcGatewayService.checkEqualAndWriteSingleCoil(baseAddr, configVO.getHz_w_A_zlbyqs1_kgd(), hz_w_A_zlbyqs1_kgd, hz_r_A_zlbyqs1_kg, channel);
plcGatewayService.checkEqualAndWriteSingleCoil(baseAddr, configVO.getHz_w_A_xdcs_kgd(), hz_w_A_xdcs_kgd, hz_r_A_xdcs_kg, channel);
plcGatewayService.checkEqualAndWriteSingleCoil(baseAddr, configVO.getHz_w_A_kzs_kgd(), hz_w_A_kzs_kgd, hz_r_A_kzs_kg, channel);
plcGatewayService.checkEqualAndWriteSingleCoil(baseAddr, configVO.getHz_w_A_04kv_kgd(), hz_w_A_04kv_kgd, hz_r_A_04kv_kg, channel);
plcGatewayService.checkEqualAndWriteSingleCoil(baseAddr, configVO.getHz_w_A_hkdks_kgd(), hz_w_A_hkdks_kgd, hz_r_A_hkdks_kg, channel);
plcGatewayService.checkEqualAndWriteSingleCoil(baseAddr, configVO.getHz_w_A_sbjchkjf_kgd(), hz_w_A_sbjchkjf_kgd, hz_r_A_sbjchkjf_kg, channel);
plcGatewayService.checkEqualAndWriteSingleCoil(baseAddr, configVO.getHz_w_A_hkjf_kgd(), hz_w_A_hkjf_kgd, hz_r_A_hkjf_kg, channel);
plcGatewayService.checkEqualAndWriteSingleCoil(baseAddr, configVO.getHz_w_fyfq1_kgd(), hz_w_fyfq1_kgd, hz_r_fyfq1_kg, channel);
plcGatewayService.checkEqualAndWriteSingleCoil(baseAddr, configVO.getHz_w_A_lsjf_kgd(), hz_w_A_lsjf_kgd, hz_r_A_lsjf_kg, channel);
plcGatewayService.checkEqualAndWriteSingleCoil(baseAddr, configVO.getHz_w_B_gasbs_kgd(), hz_w_B_gasbs_kgd, hz_r_B_gasbs_kg, channel);
plcGatewayService.checkEqualAndWriteSingleCoil(baseAddr, configVO.getHz_w_B_zhjksbs_kgd(), hz_w_B_zhjksbs_kgd, hz_r_B_zhjksbs_kg, channel);
plcGatewayService.checkEqualAndWriteSingleCoil(baseAddr, configVO.getHz_w_B_hkjf_kgd(), hz_w_B_hkjf_kgd, hz_r_B_hkjf_kg, channel);
plcGatewayService.checkEqualAndWriteSingleCoil(baseAddr, configVO.getHz_w_B_xhsbjdys_kgd(), hz_w_B_xhsbjdys_kgd, hz_r_B_xhsbjdys_kg, channel);
plcGatewayService.checkEqualAndWriteSingleCoil(baseAddr, configVO.getHz_w_B_txsbs_kgd(), hz_w_B_txsbs_kgd, hz_r_B_txsbs_kg, channel);
plcGatewayService.checkEqualAndWriteSingleCoil(baseAddr, configVO.getHz_w_B_rdzhdys_kgd(), hz_w_B_rdzhdys_kgd, hz_r_B_rdzhdys_kg, channel);
plcGatewayService.checkEqualAndWriteSingleCoil(baseAddr, configVO.getHz_w_B_mytxsbs_kgd(), hz_w_B_mytxsbs_kgd, hz_r_B_mytxsbs_kg, channel);
plcGatewayService.checkEqualAndWriteSingleCoil(baseAddr, configVO.getHz_w_B_aqmkzs_kgd(), hz_w_B_aqmkzs_kgd, hz_r_B_aqmkzs_kg, channel);
plcGatewayService.checkEqualAndWriteSingleCoil(baseAddr, configVO.getHz_w_qtqy_kgd(), hz_w_qtqy_kgd, hz_r_qtqy_kg, channel);
//------------------------------ 排烟风机 ------------------------------
boolean pyfj_r_1_qd_kg = RealDeviceConfig.getBitOf(deviceStatus, configVO.getPyfj_r_1_qd_kg());
boolean pyfj_r_1_tz_kg = RealDeviceConfig.getBitOf(deviceStatus, configVO.getPyfj_r_1_tz_kg());
boolean pyfj_r_2_qd_kg = RealDeviceConfig.getBitOf(deviceStatus, configVO.getPyfj_r_2_qd_kg());
boolean pyfj_r_2_tz_kg = RealDeviceConfig.getBitOf(deviceStatus, configVO.getPyfj_r_2_tz_kg());
boolean pyfj_w_1_yx_d = RealDeviceConfig.getBitOf(deviceStatus, configVO.getPyfj_w_1_yx_d());
boolean pyfj_w_2_yx_d = RealDeviceConfig.getBitOf(deviceStatus, configVO.getPyfj_w_2_yx_d());
//虚拟排烟风机开关
if (pyfj_r_1_qd_kg) {
config.setPyfj1Yx(true);
} else if (pyfj_r_1_tz_kg) {
config.setPyfj1Yx(false);
}
if (pyfj_r_2_qd_kg) {
config.setPyfj2Yx(true);
} else if (pyfj_r_2_tz_kg) {
config.setPyfj2Yx(false);
}
plcGatewayService.checkEqualAndWriteSingleCoil(baseAddr, configVO.getPyfj_w_1_yx_d(), pyfj_w_1_yx_d, config.isPyfj1Yx() || zsd_r_kg, channel);
plcGatewayService.checkEqualAndWriteSingleCoil(baseAddr, configVO.getPyfj_w_2_yx_d(), pyfj_w_2_yx_d, config.isPyfj2Yx() || zsd_r_kg, channel);
//------------------------------ 消防水泵 ------------------------------
boolean xfsb_r_qd_kg = RealDeviceConfig.getBitOf(deviceStatus, configVO.getXfsb_r_qd_kg());
boolean xfsb_r_tz_kg = RealDeviceConfig.getBitOf(deviceStatus, configVO.getXfsb_r_tz_kg());
boolean xfsb_w_1mhsb_d = RealDeviceConfig.getBitOf(deviceStatus, configVO.getXfsb_w_1mhsb_d());
boolean xfsb_w_2mhsb_d = RealDeviceConfig.getBitOf(deviceStatus, configVO.getXfsb_w_2mhsb_d());
//虚拟消防水泵开关
if (xfsb_r_qd_kg) {
config.setXfsbYx(true);
} else if (xfsb_r_tz_kg) {
config.setXfsbYx(false);
}
plcGatewayService.checkEqualAndWriteSingleCoil(baseAddr, configVO.getXfsb_w_1mhsb_d(), xfsb_w_1mhsb_d, config.isXfsbYx() || zsd_r_kg, channel);
plcGatewayService.checkEqualAndWriteSingleCoil(baseAddr, configVO.getXfsb_w_2mhsb_d(), xfsb_w_2mhsb_d, config.isXfsbYx() || zsd_r_kg, channel);
//------------------------------ AFC ------------------------------
boolean afc_r_jjsf_kg = RealDeviceConfig.getBitOf(deviceStatus, configVO.getAfc_r_jjsf_kg());
boolean afc_r_zdsd_xn = RealDeviceConfig.getBitOf(deviceStatus, configVO.getAfc_r_zdsd_xn());
boolean afc_w_jjsfzs_d = RealDeviceConfig.getBitOf(deviceStatus, configVO.getAfc_w_jjsfzs_d());
boolean afc_w_zdsd_xn = RealDeviceConfig.getBitOf(deviceStatus, configVO.getAfc_w_zdsd_xn());
boolean afc_w_jjsf_kgd = RealDeviceConfig.getBitOf(deviceStatus, configVO.getAfc_w_jjsf_kgd());
plcGatewayService.checkEqualAndWriteSingleCoil(baseAddr, configVO.getAfc_w_jjsf_kgd(), afc_w_jjsf_kgd, afc_r_jjsf_kg, channel);
plcGatewayService.checkEqualAndWriteSingleCoil(baseAddr, configVO.getAfc_w_jjsfzs_d(), afc_w_jjsfzs_d, afc_r_jjsf_kg || zsd_r_kg, channel);
//------------------------------ 门禁 ------------------------------
boolean mj_r_zdsd_xn = RealDeviceConfig.getBitOf(deviceStatus, configVO.getMj_r_zdsd_xn());
boolean mj_r_jjsf_kg = RealDeviceConfig.getBitOf(deviceStatus, configVO.getMj_r_jjsf_kg());
boolean mj_w_zczt_d = RealDeviceConfig.getBitOf(deviceStatus, configVO.getMj_w_zczt_d());
boolean mj_w_jjsf_kgd = RealDeviceConfig.getBitOf(deviceStatus, configVO.getMj_w_jjsf_kgd());
boolean mj_w_sfzt_d = RealDeviceConfig.getBitOf(deviceStatus, configVO.getMj_w_sfzt_d());
plcGatewayService.checkEqualAndWriteSingleCoil(baseAddr, configVO.getMj_w_jjsf_kgd(), mj_w_jjsf_kgd, mj_r_jjsf_kg, channel);
plcGatewayService.checkEqualAndWriteSingleCoil(baseAddr, configVO.getMj_w_sfzt_d(), mj_w_sfzt_d, mj_r_jjsf_kg || zsd_r_kg, channel);
plcGatewayService.checkEqualAndWriteSingleCoil(baseAddr, configVO.getMj_w_zczt_d(), mj_w_zczt_d, zsd_r_kg, channel);
//------------------------------ 自动扶梯 ------------------------------
boolean zdft_r_dt_3jt_kg = RealDeviceConfig.getBitOf(deviceStatus, configVO.getZdft_r_dt_3jt_kg());
boolean zdft_r_dt_2jt_kg = RealDeviceConfig.getBitOf(deviceStatus, configVO.getZdft_r_dt_2jt_kg());
boolean zdft_r_dt_6jt_kg = RealDeviceConfig.getBitOf(deviceStatus, configVO.getZdft_r_dt_6jt_kg());
boolean zdft_r_jzyx_xn = RealDeviceConfig.getBitOf(deviceStatus, configVO.getZdft_r_jzyx_xn());
boolean zdft_r_dt_5jt_kg = RealDeviceConfig.getBitOf(deviceStatus, configVO.getZdft_r_dt_5jt_kg());
boolean zdft_r_dt_7jt_kg = RealDeviceConfig.getBitOf(deviceStatus, configVO.getZdft_r_dt_7jt_kg());
boolean zdft_r_dt_4jt_kg = RealDeviceConfig.getBitOf(deviceStatus, configVO.getZdft_r_dt_4jt_kg());
boolean zdft_r_tt_1jt_kg = RealDeviceConfig.getBitOf(deviceStatus, configVO.getZdft_r_tt_1jt_kg());
boolean zdft_r_tt_2jt_kg = RealDeviceConfig.getBitOf(deviceStatus, configVO.getZdft_r_tt_2jt_kg());
boolean zdft_r_tt_3jt_kg = RealDeviceConfig.getBitOf(deviceStatus, configVO.getZdft_r_tt_3jt_kg());
boolean zdft_r_tt_4jt_kg = RealDeviceConfig.getBitOf(deviceStatus, configVO.getZdft_r_tt_4jt_kg());
boolean zdft_r_tt_7jt_kg = RealDeviceConfig.getBitOf(deviceStatus, configVO.getZdft_r_tt_7jt_kg());
boolean zdft_r_tt_5jt_kg = RealDeviceConfig.getBitOf(deviceStatus, configVO.getZdft_r_tt_5jt_kg());
boolean zdft_r_dt_1jt_kg = RealDeviceConfig.getBitOf(deviceStatus, configVO.getZdft_r_dt_1jt_kg());
boolean zdft_r_tt_6jt_kg = RealDeviceConfig.getBitOf(deviceStatus, configVO.getZdft_r_tt_6jt_kg());
boolean zdft_w_dt_3jt_kgd = RealDeviceConfig.getBitOf(deviceStatus, configVO.getZdft_w_dt_3jt_kgd());
boolean zdft_w_dt_2jt_kgd = RealDeviceConfig.getBitOf(deviceStatus, configVO.getZdft_w_dt_2jt_kgd());
boolean zdft_w_dt_6jt_kgd = RealDeviceConfig.getBitOf(deviceStatus, configVO.getZdft_w_dt_6jt_kgd());
boolean zdft_w_dt_5jt_kgd = RealDeviceConfig.getBitOf(deviceStatus, configVO.getZdft_w_dt_5jt_kgd());
boolean zdft_w_dt_7jt_kgd = RealDeviceConfig.getBitOf(deviceStatus, configVO.getZdft_w_dt_7jt_kgd());
boolean zdft_w_dt_4jt_kgd = RealDeviceConfig.getBitOf(deviceStatus, configVO.getZdft_w_dt_4jt_kgd());
boolean zdft_w_tt_1jt_kgd = RealDeviceConfig.getBitOf(deviceStatus, configVO.getZdft_w_tt_1jt_kgd());
boolean zdft_w_tt_2jt_kgd = RealDeviceConfig.getBitOf(deviceStatus, configVO.getZdft_w_tt_2jt_kgd());
boolean zdft_w_tt_3jt_kgd = RealDeviceConfig.getBitOf(deviceStatus, configVO.getZdft_w_tt_3jt_kgd());
boolean zdft_w_tt_4jt_kgd = RealDeviceConfig.getBitOf(deviceStatus, configVO.getZdft_w_tt_4jt_kgd());
boolean zdft_w_tt_7jt_kgd = RealDeviceConfig.getBitOf(deviceStatus, configVO.getZdft_w_tt_7jt_kgd());
boolean zdft_w_tt_5jt_kgd = RealDeviceConfig.getBitOf(deviceStatus, configVO.getZdft_w_tt_5jt_kgd());
boolean zdft_w_dt_1jt_kgd = RealDeviceConfig.getBitOf(deviceStatus, configVO.getZdft_w_dt_1jt_kgd());
boolean zdft_w_tt_6jt_kgd = RealDeviceConfig.getBitOf(deviceStatus, configVO.getZdft_w_tt_6jt_kgd());
plcGatewayService.checkEqualAndWriteSingleCoil(baseAddr, configVO.getZdft_w_dt_3jt_kgd(), zdft_w_dt_3jt_kgd, zdft_r_dt_3jt_kg, channel);
plcGatewayService.checkEqualAndWriteSingleCoil(baseAddr, configVO.getZdft_w_dt_2jt_kgd(), zdft_w_dt_2jt_kgd, zdft_r_dt_2jt_kg, channel);
plcGatewayService.checkEqualAndWriteSingleCoil(baseAddr, configVO.getZdft_w_dt_6jt_kgd(), zdft_w_dt_6jt_kgd, zdft_r_dt_6jt_kg, channel);
plcGatewayService.checkEqualAndWriteSingleCoil(baseAddr, configVO.getZdft_w_dt_5jt_kgd(), zdft_w_dt_5jt_kgd, zdft_r_dt_5jt_kg, channel);
plcGatewayService.checkEqualAndWriteSingleCoil(baseAddr, configVO.getZdft_w_dt_7jt_kgd(), zdft_w_dt_7jt_kgd, zdft_r_dt_7jt_kg, channel);
plcGatewayService.checkEqualAndWriteSingleCoil(baseAddr, configVO.getZdft_w_dt_4jt_kgd(), zdft_w_dt_4jt_kgd, zdft_r_dt_4jt_kg, channel);
plcGatewayService.checkEqualAndWriteSingleCoil(baseAddr, configVO.getZdft_w_tt_1jt_kgd(), zdft_w_tt_1jt_kgd, zdft_r_tt_1jt_kg, channel);
plcGatewayService.checkEqualAndWriteSingleCoil(baseAddr, configVO.getZdft_w_tt_2jt_kgd(), zdft_w_tt_2jt_kgd, zdft_r_tt_2jt_kg, channel);
plcGatewayService.checkEqualAndWriteSingleCoil(baseAddr, configVO.getZdft_w_tt_3jt_kgd(), zdft_w_tt_3jt_kgd, zdft_r_tt_3jt_kg, channel);
plcGatewayService.checkEqualAndWriteSingleCoil(baseAddr, configVO.getZdft_w_tt_4jt_kgd(), zdft_w_tt_4jt_kgd, zdft_r_tt_4jt_kg, channel);
plcGatewayService.checkEqualAndWriteSingleCoil(baseAddr, configVO.getZdft_w_tt_7jt_kgd(), zdft_w_tt_7jt_kgd, zdft_r_tt_7jt_kg, channel);
plcGatewayService.checkEqualAndWriteSingleCoil(baseAddr, configVO.getZdft_w_tt_5jt_kgd(), zdft_w_tt_5jt_kgd, zdft_r_tt_5jt_kg, channel);
plcGatewayService.checkEqualAndWriteSingleCoil(baseAddr, configVO.getZdft_w_dt_1jt_kgd(), zdft_w_dt_1jt_kgd, zdft_r_dt_1jt_kg, channel);
plcGatewayService.checkEqualAndWriteSingleCoil(baseAddr, configVO.getZdft_w_tt_6jt_kgd(), zdft_w_tt_6jt_kgd, zdft_r_tt_6jt_kg, channel);
}
}

View File

@ -11,6 +11,7 @@ import club.joylink.rtss.simulation.cbtc.device.real.modbustcp.gzb.GzbSwitchConf
import club.joylink.rtss.simulation.cbtc.device.real.modbustcp.heb.device.*; import club.joylink.rtss.simulation.cbtc.device.real.modbustcp.heb.device.*;
import club.joylink.rtss.simulation.cbtc.device.real.modbustcp.hhcj.HhcjIbpConfig; import club.joylink.rtss.simulation.cbtc.device.real.modbustcp.hhcj.HhcjIbpConfig;
import club.joylink.rtss.simulation.cbtc.device.real.modbustcp.hhcj.HhcjPsdConfig; import club.joylink.rtss.simulation.cbtc.device.real.modbustcp.hhcj.HhcjPsdConfig;
import club.joylink.rtss.simulation.cbtc.device.real.modbustcp.say.SayIbpConfig;
import club.joylink.rtss.simulation.cbtc.device.real.modbustcp.sdy.SdyPsdConfig; import club.joylink.rtss.simulation.cbtc.device.real.modbustcp.sdy.SdyPsdConfig;
import club.joylink.rtss.simulation.cbtc.device.real.modbustcp.sdy.SdyPslConfig; import club.joylink.rtss.simulation.cbtc.device.real.modbustcp.sdy.SdyPslConfig;
import club.joylink.rtss.simulation.cbtc.device.real.modbustcp.xty.XtyPsdConfig; import club.joylink.rtss.simulation.cbtc.device.real.modbustcp.xty.XtyPsdConfig;
@ -124,12 +125,30 @@ public class ProjectDeviceVO {
case RICHOR_HHCJ: { case RICHOR_HHCJ: {
return hhcjDeviceConfigConvert(voList); return hhcjDeviceConfigConvert(voList);
} }
case SAY: {
return sayDeviceConfigConvert(voList);
}
} }
} }
return list; return list;
} }
private static List<RealDeviceConfig> sayDeviceConfigConvert(List<ProjectDeviceVO> voList) {
List<RealDeviceConfig> list = new ArrayList<>();
for (ProjectDeviceVO deviceVO : voList) {
switch (deviceVO.getType()) {
case IBP:
list.add(new SayIbpConfig(deviceVO));
break;
case PLC_GATEWAY:
list.add(new PlcGateway(deviceVO));
break;
}
}
return list;
}
private static List<RealDeviceConfig> hhcjDeviceConfigConvert(List<ProjectDeviceVO> voList) { private static List<RealDeviceConfig> hhcjDeviceConfigConvert(List<ProjectDeviceVO> voList) {
List<RealDeviceConfig> list = new ArrayList<>(); List<RealDeviceConfig> list = new ArrayList<>();
for (ProjectDeviceVO deviceVO : voList) { for (ProjectDeviceVO deviceVO : voList) {

File diff suppressed because it is too large Load Diff

View File

@ -191,7 +191,7 @@ common:
spring: spring:
profiles: local profiles: local
datasource: datasource:
url: jdbc:mysql://192.168.0.254:3306/joylink?useSSL=false&characterEncoding=utf-8&serverTimezone=Asia/Shanghai&allowPublicKeyRetrieval=true url: jdbc:mysql://192.168.1.254:3306/joylink?useSSL=false&characterEncoding=utf-8&serverTimezone=Asia/Shanghai&allowPublicKeyRetrieval=true
username: root username: root
password: localdb password: localdb