package com.ld.igds.protocol.fzzy.builder;
|
|
import com.ld.igds.constant.Constant;
|
import com.ld.igds.io.request.DeviceAutoControlRequest;
|
import com.ld.igds.io.request.DeviceControlRequest;
|
import com.ld.igds.protocol.fzzy.ServerUtils;
|
import com.ld.igds.protocol.fzzy.dto.MessageInfo;
|
import com.ld.igds.protocol.fzzy.dto.SendMessage;
|
import com.ld.igds.protocol.fzzy.req.Request3102;
|
import com.ld.igds.protocol.fzzy.req.Request3300;
|
|
/**
|
* 平台发起自动气调
|
*/
|
public class N2AutoCommandBuilder extends CommandBuilder {
|
|
private final static N2AutoCommandBuilder instance = new N2AutoCommandBuilder();
|
|
private N2AutoCommandBuilder() {
|
}
|
|
public static N2AutoCommandBuilder getInstance() {
|
return instance;
|
}
|
|
public SendMessage buildMessage(DeviceAutoControlRequest request) {
|
|
SendMessage message = new SendMessage();
|
message.setIp(request.getIp());
|
message.setPort(request.getPort());
|
|
message.setBegin(ServerUtils.MSG_BEGIN);
|
|
// 调整信息
|
buildInfo(message, request);
|
|
message.setEnd(ServerUtils.MSG_END);
|
|
// 生成整体命令信息和BYte信息
|
build(message);
|
|
return message;
|
}
|
|
public void buildInfo(SendMessage message, DeviceAutoControlRequest request) {
|
MessageInfo info = new MessageInfo();
|
info.setSign(request.getCompanyId());
|
info.setIedId(request.getSerId());
|
info.setFunctionId(ServerUtils.FUNCTION_3301);
|
info.setRespCode("0000");
|
info.setOrderId(request.getOrderId());
|
info.setUserData("0");
|
info.setSign("0000");
|
|
|
Request3300 sendReq = new Request3300();
|
sendReq.setHouseId(request.getDepotId());
|
sendReq.setMode(ServerUtils.P2CN2Mode(request.getModeTag()));
|
|
sendReq.setStatus("1");
|
if (Constant.YN_Y.equals(request.getModeClose())) {
|
sendReq.setStatus("2");
|
}
|
|
info.setContent(sendReq);
|
|
message.setInfo(info);
|
}
|
|
}
|