package com.zy.acs.common.domain.protocol; 
 | 
  
 | 
import com.zy.acs.common.utils.Utils; 
 | 
import lombok.Data; 
 | 
import lombok.extern.slf4j.Slf4j; 
 | 
  
 | 
import java.io.Serializable; 
 | 
  
 | 
/** 
 | 
 * 动作命令包 
 | 
 * Created by vincent on 2023/3/21 
 | 
 */ 
 | 
@Data 
 | 
@Slf4j 
 | 
public class AGV_02_DOWN implements IMessageBody, Serializable { 
 | 
  
 | 
    private static final long serialVersionUID = 1664188062202647371L; 
 | 
  
 | 
    @Override 
 | 
    public byte[] writeToBytes() { 
 | 
        String serialNo = Utils.zeroFill(this.serialNo, 16); 
 | 
        byte[] serialNoBytes = Utils.reverse(serialNo.getBytes()); 
 | 
        byte cmdCodeByte = (byte) this.getCmdCode(); 
 | 
        byte valByte = (byte) this.getVal(); 
 | 
  
 | 
        byte[] cmdBodyBytes = commandBody.writeToBytes(); 
 | 
  
 | 
        return Utils.merge(serialNoBytes, cmdCodeByte, valByte, cmdBodyBytes); 
 | 
    } 
 | 
  
 | 
    @Override 
 | 
    public void readFromBytes(byte[] messageBodyBytes) { 
 | 
  
 | 
    } 
 | 
  
 | 
    // 流水号 - 16 
 | 
    private String serialNo; 
 | 
  
 | 
    // 命令码 
 | 
    private int cmdCode; 
 | 
  
 | 
    // 属性值 
 | 
    private int val; 
 | 
  
 | 
    // 动作参数 
 | 
    private ICommandBody commandBody; 
 | 
  
 | 
} 
 |