package com.ld.igds.protocol.fzzy.command; import com.ld.igds.io.RemoteGrainService; import com.ld.igds.io.constant.OrderRespEnum; import com.ld.igds.io.request.CheckGrainRequest; import com.ld.igds.io.response.GrainResponse; import com.ld.igds.protocol.fzzy.builder.GrainCommandBuilder; import com.ld.igds.protocol.fzzy.dto.SendMessage; import com.ld.io.api.InvokeResult; import lombok.extern.slf4j.Slf4j; import org.springframework.stereotype.Component; /** * 当前协议实现,粮情模块命令接口 * * @author jiazx */ @Slf4j @Component(RemoteGrainServiceImpl.BEAN_ID) public class RemoteGrainServiceImpl extends BaseRemoteImpl implements RemoteGrainService { public static final String BEAN_ID = "fzzy.remoteGrainService"; @Override public GrainResponse checkGrain(CheckGrainRequest request) { try { // Step1 生成粮情信息 SendMessage message = GrainCommandBuilder.getInstance().buildMessage(request); // 发送命令 InvokeResult result = send(request.getIp(), request.getPort(), message.getByteMsg()); log.error("平台------>>>>控制柜:粮情检测-{}", message.toString()); // 封装返回信息 if (InvokeResult.SUCCESS == result) { return new GrainResponse(OrderRespEnum.ORDER_SUCCESS.getCode(), "粮情粮情发送成功!"); } else { log.error("平台------>>>>控制柜:粮情检测-失败{}", result.getMessage()); return new GrainResponse(OrderRespEnum.ORDER_ERROR.getCode(), "命令发送异常:" + result.getMessage()); } } catch (Exception e) { log.error("粮情检测异常:{}", e); return new GrainResponse(OrderRespEnum.ORDER_ERROR.getCode(), "后端异常:" + e.getMessage()); } } }