package org.yzh.protocol.t808;
|
|
import io.github.yezhihao.protostar.annotation.Field;
|
import io.github.yezhihao.protostar.annotation.Message;
|
import lombok.Data;
|
import lombok.ToString;
|
import lombok.experimental.Accessors;
|
import org.yzh.protocol.basics.JTMessage;
|
import org.yzh.protocol.commons.JT808;
|
|
/**
|
* @author yezhihao
|
* https://gitee.com/yezhihao/jt808-server
|
*/
|
@ToString
|
@Data
|
@Accessors(chain = true)
|
@Message(JT808.终端注册)
|
public class T0100 extends JTMessage {
|
|
/** 设备安装车辆所在的省域,省域ID采用GB/T2260中规定的行政区划代码6位中前两位 */
|
@Field(length = 2, desc = "省域ID")
|
private int provinceId;
|
/** 设备安装车辆所在的市域或县域,市县域ID采用GB/T2260中规定的行政区划代码6位中后四位 */
|
@Field(length = 2, desc = "市县域ID")
|
private int cityId;
|
/** 终端制造商编码 */
|
@Field(length = 5, desc = "制造商ID", version = {-1, 0})
|
@Field(length = 11, desc = "制造商ID", version = 1)
|
private String makerId;
|
/** 由制造商自行定义,位数不足时,后补"0x00" */
|
@Field(length = 8, desc = "终端型号", version = -1)
|
@Field(length = 20, desc = "终端型号", version = 0)
|
@Field(length = 30, desc = "终端型号", version = 1)
|
private String deviceModel;
|
/** 由大写字母和数字组成,此终端ID由制造商自行定义 */
|
@Field(length = 7, desc = "终端ID", version = {-1, 0})
|
@Field(length = 30, desc = "终端ID", version = 1)
|
private String deviceId;
|
/** 按照JT/T415-2006的5.4.12 */
|
@Field(length = 1, desc = "车牌颜色:0.未上车牌 1.蓝色 2.黄色 3.黑色 4.白色 9.其他")
|
private int plateColor;
|
/** 车牌颜色为0时,表示车辆VIN 否则,表示公安交通管理部门颁发的机动车号牌 */
|
@Field(desc = "车辆标识")
|
private String plateNo;
|
|
@Override
|
public int getProtocolVersion() {
|
int bodyLength = getBodyLength();
|
if (bodyLength > 0 && bodyLength < 37)
|
return -1;
|
return super.getProtocolVersion();
|
}
|
}
|