package com.ld.igds.protocol.fzzy.command; import com.ld.igds.io.RemotePressureService; import com.ld.igds.protocol.fzzy.builder.PressureCommandBuilder; import com.ld.igds.protocol.fzzy.dto.SendMessage; import lombok.extern.slf4j.Slf4j; import org.springframework.stereotype.Component; import com.ld.igds.io.constant.OrderRespEnum; import com.ld.igds.io.request.BaseRequest; import com.ld.igds.io.response.BaseResponse; import com.ld.igds.io.response.PestResponse; import com.ld.io.api.InvokeResult; /** * 气压检测 */ @Slf4j @Component(RemotePressureServiceImpl.BEAN_ID) public class RemotePressureServiceImpl extends BaseRemoteImpl implements RemotePressureService { public static final String BEAN_ID = "fzzy.remotePressureServiceImpl"; @Override public BaseResponse checkPressure(BaseRequest request) { try { SendMessage message = PressureCommandBuilder.getInstance().buildMessage(request); InvokeResult result = send(request.getIp(), request.getPort(), message.getByteMsg()); if (InvokeResult.SUCCESS != result) { log.info("生成气压采集信息:" + message.getStrMsg()); return new PestResponse(OrderRespEnum.ORDER_ERROR.getCode(), "采集执行失败:" + result.getMessage()); } } catch (Exception e) { log.error("气压检测异常:{}", e); return new PestResponse(OrderRespEnum.ORDER_ERROR.getCode(), "采集异常,原因:" + e.getMessage()); } return new PestResponse(OrderRespEnum.ORDER_SUCCESS.getCode(), "气压采集命令发送成功!"); } }