package com.ld.igds.protocol.fzzy.command;
|
|
import com.ld.igds.io.RemoteGasService;
|
import com.ld.igds.io.constant.OrderRespEnum;
|
import com.ld.igds.io.request.CheckGasRequest;
|
import com.ld.igds.io.response.GasResponse;
|
import com.ld.igds.protocol.fzzy.builder.GasCommandBuilder;
|
import com.ld.igds.protocol.fzzy.builder.GasStopCommandBuilder;
|
import com.ld.igds.protocol.fzzy.dto.SendMessage;
|
import com.ld.io.api.InvokeResult;
|
|
import lombok.extern.slf4j.Slf4j;
|
|
import org.springframework.stereotype.Component;
|
|
/**
|
* 气体采集命令实现
|
*/
|
@Slf4j
|
@Component(RemoteGasServiceImpl.BEAN_ID)
|
public class RemoteGasServiceImpl extends BaseRemoteImpl implements RemoteGasService {
|
|
public static final String BEAN_ID = "fzzy.remoteGasService";
|
|
|
@Override
|
public GasResponse checkGas(CheckGasRequest request) {
|
try {
|
SendMessage message = GasCommandBuilder.getInstance().buildMessage(request);
|
|
InvokeResult result = send(request.getIp(), request.getPort(),
|
message.getByteMsg());
|
|
log.error("平台------>>>>控制柜:气体检测-{}", message.toString());
|
|
if (InvokeResult.SUCCESS != result) {
|
log.error("平台------>>>>控制柜:气体检测-失败{}", result.getMessage());
|
return new GasResponse(OrderRespEnum.ORDER_ERROR.getCode(),
|
"采集执行失败:" + result.getMessage());
|
}
|
|
} catch (Exception e) {
|
log.error("气体检测异常:{}", e);
|
return new GasResponse(OrderRespEnum.ORDER_ERROR.getCode(),
|
"采集异常,原因:" + e.getMessage());
|
}
|
return new GasResponse(OrderRespEnum.ORDER_SUCCESS.getCode(),
|
"气体采集命令发送成功!");
|
}
|
|
@Override
|
public GasResponse stopCheckGas(CheckGasRequest request) {
|
try {
|
SendMessage message = GasStopCommandBuilder.getInstance().buildMessage(request);
|
|
InvokeResult result = send(request.getIp(), request.getPort(),
|
message.getByteMsg());
|
|
if (InvokeResult.SUCCESS != result) {
|
log.info("生成气体停止信息:" + message.getStrMsg());
|
|
return new GasResponse(OrderRespEnum.ORDER_ERROR.getCode(),
|
"停止命令发送失败:" + result.getMessage());
|
}
|
|
} catch (Exception e) {
|
log.error("气体检测异常:{}", e);
|
return new GasResponse(OrderRespEnum.ORDER_ERROR.getCode(),
|
"停止命令异常,原因:" + e.getMessage());
|
}
|
return new GasResponse(OrderRespEnum.ORDER_SUCCESS.getCode(),
|
"气体停止命令发送成功!");
|
}
|
|
@Override
|
public GasResponse checkGasByPoint(CheckGasRequest request) {
|
return checkGas(request);
|
}
|
}
|