mirror of
https://gitee.com/pan648540858/wvp-GB28181-pro.git
synced 2026-05-26 23:17:50 +08:00
部标-修复0003注销消息处理
This commit is contained in:
parent
75575f939c
commit
459a8cd77a
@ -12,17 +12,12 @@ import io.netty.buffer.CompositeByteBuf;
|
|||||||
import io.netty.buffer.UnpooledByteBufAllocator;
|
import io.netty.buffer.UnpooledByteBufAllocator;
|
||||||
import io.netty.channel.ChannelHandlerContext;
|
import io.netty.channel.ChannelHandlerContext;
|
||||||
import io.netty.handler.codec.ByteToMessageDecoder;
|
import io.netty.handler.codec.ByteToMessageDecoder;
|
||||||
import org.slf4j.Logger;
|
import lombok.extern.slf4j.Slf4j;
|
||||||
import org.slf4j.LoggerFactory;
|
|
||||||
import org.springframework.context.ApplicationEvent;
|
import org.springframework.context.ApplicationEvent;
|
||||||
import org.springframework.context.ApplicationEventPublisher;
|
import org.springframework.context.ApplicationEventPublisher;
|
||||||
import lombok.extern.slf4j.Slf4j;
|
|
||||||
|
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
import java.util.HashMap;
|
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
import java.util.Map;
|
|
||||||
import java.util.concurrent.ConcurrentHashMap;
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @author QingtaiJiang
|
* @author QingtaiJiang
|
||||||
@ -93,6 +88,8 @@ public class Jt808Decoder extends ByteToMessageDecoder {
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 转义与验证校验码
|
* 转义与验证校验码
|
||||||
*
|
*
|
||||||
|
|||||||
@ -1,13 +1,13 @@
|
|||||||
package com.genersoft.iot.vmp.jt1078.proc.request;
|
package com.genersoft.iot.vmp.jt1078.proc.request;
|
||||||
|
|
||||||
import com.genersoft.iot.vmp.jt1078.annotation.MsgId;
|
import com.genersoft.iot.vmp.jt1078.annotation.MsgId;
|
||||||
|
import com.genersoft.iot.vmp.jt1078.bean.JTDevice;
|
||||||
|
import com.genersoft.iot.vmp.jt1078.event.DeviceUpdateEvent;
|
||||||
import com.genersoft.iot.vmp.jt1078.proc.Header;
|
import com.genersoft.iot.vmp.jt1078.proc.Header;
|
||||||
import com.genersoft.iot.vmp.jt1078.proc.response.Rs;
|
import com.genersoft.iot.vmp.jt1078.proc.response.Rs;
|
||||||
import com.genersoft.iot.vmp.jt1078.service.Ijt1078Service;
|
import com.genersoft.iot.vmp.jt1078.service.Ijt1078Service;
|
||||||
import com.genersoft.iot.vmp.jt1078.session.Session;
|
import com.genersoft.iot.vmp.jt1078.session.Session;
|
||||||
import com.genersoft.iot.vmp.jt1078.session.SessionManager;
|
|
||||||
import io.netty.buffer.ByteBuf;
|
import io.netty.buffer.ByteBuf;
|
||||||
import io.netty.buffer.ByteBufUtil;
|
|
||||||
import lombok.Getter;
|
import lombok.Getter;
|
||||||
import lombok.extern.slf4j.Slf4j;
|
import lombok.extern.slf4j.Slf4j;
|
||||||
import org.springframework.context.ApplicationEvent;
|
import org.springframework.context.ApplicationEvent;
|
||||||
@ -20,27 +20,30 @@ import org.springframework.context.ApplicationEvent;
|
|||||||
@MsgId(id = "0003")
|
@MsgId(id = "0003")
|
||||||
public class J0003 extends Re {
|
public class J0003 extends Re {
|
||||||
|
|
||||||
int respNo;
|
private JTDevice deviceForUpdate;
|
||||||
String respId;
|
|
||||||
int result;
|
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
protected Rs decode0(ByteBuf buf, Header header, Session session) {
|
protected Rs decode0(ByteBuf buf, Header header, Session session) {
|
||||||
respNo = buf.readUnsignedShort();
|
|
||||||
respId = ByteBufUtil.hexDump(buf.readSlice(2));
|
|
||||||
result = buf.readUnsignedByte();
|
|
||||||
log.info("[JT-注销] 设备: {}", header.getPhoneNumber());
|
log.info("[JT-注销] 设备: {}", header.getPhoneNumber());
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
protected Rs handler(Header header, Session session, Ijt1078Service service) {
|
protected Rs handler(Header header, Session session, Ijt1078Service service) {
|
||||||
SessionManager.INSTANCE.response(header.getPhoneNumber(), "0001", (long) respNo, result);
|
// SessionManager.INSTANCE.response(header.getPhoneNumber(), "0001", (long) respNo, result);
|
||||||
|
JTDevice device = service.getDevice(header.getPhoneNumber());
|
||||||
|
if (device != null && device.isStatus()) {
|
||||||
|
deviceForUpdate = device;
|
||||||
|
deviceForUpdate.setStatus(false);
|
||||||
|
service.updateDevice(device);
|
||||||
|
}
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public ApplicationEvent getEvent() {
|
public ApplicationEvent getEvent() {
|
||||||
return null;
|
DeviceUpdateEvent registerEvent = new DeviceUpdateEvent(this);
|
||||||
|
registerEvent.setDevice(deviceForUpdate);
|
||||||
|
return registerEvent;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user