| package com.genersoft.iot.vmp.jt1078.proc.request; | 
|   | 
| import com.alibaba.fastjson2.JSON; | 
| import com.genersoft.iot.vmp.jt1078.annotation.MsgId; | 
| import com.genersoft.iot.vmp.jt1078.proc.Header; | 
| import com.genersoft.iot.vmp.jt1078.proc.response.J8001; | 
| import com.genersoft.iot.vmp.jt1078.proc.response.Rs; | 
| 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.ByteBufUtil; | 
|   | 
| import java.util.ArrayList; | 
| import java.util.List; | 
|   | 
| /** | 
|  * 终端上传音视频资源列表 | 
|  * | 
|  * @author QingtaiJiang | 
|  * @date 2023/4/28 10:36 | 
|  * @email qingtaij@163.com | 
|  */ | 
| @MsgId(id = "1205") | 
| public class J1205 extends Re { | 
|     Integer respNo; | 
|   | 
|     private List<JRecordItem> recordList = new ArrayList<JRecordItem>(); | 
|   | 
|     @Override | 
|     protected Rs decode0(ByteBuf buf, Header header, Session session) { | 
|         respNo = buf.readUnsignedShort(); | 
|         long size = buf.readUnsignedInt(); | 
|   | 
|         for (int i = 0; i < size; i++) { | 
|             JRecordItem item = new JRecordItem(); | 
|             item.setChannelId(buf.readUnsignedByte()); | 
|             item.setStartTime(ByteBufUtil.hexDump(buf.readSlice(6))); | 
|             item.setEndTime(ByteBufUtil.hexDump(buf.readSlice(6))); | 
|             item.setWarn(buf.readLong()); | 
|             item.setMediaType(buf.readUnsignedByte()); | 
|             item.setStreamType(buf.readUnsignedByte()); | 
|             item.setStorageType(buf.readUnsignedByte()); | 
|             item.setSize(buf.readUnsignedInt()); | 
|             recordList.add(item); | 
|         } | 
|   | 
|         return null; | 
|     } | 
|   | 
|     @Override | 
|     protected Rs handler(Header header, Session session) { | 
|         SessionManager.INSTANCE.response(header.getDevId(), "1205", (long) respNo, JSON.toJSONString(this)); | 
|   | 
|         J8001 j8001 = new J8001(); | 
|         j8001.setRespNo(header.getSn()); | 
|         j8001.setRespId(header.getMsgId()); | 
|         j8001.setResult(J8001.SUCCESS); | 
|         return j8001; | 
|     } | 
|   | 
|   | 
|     public Integer getRespNo() { | 
|         return respNo; | 
|     } | 
|   | 
|     public void setRespNo(Integer respNo) { | 
|         this.respNo = respNo; | 
|     } | 
|   | 
|     public List<JRecordItem> getRecordList() { | 
|         return recordList; | 
|     } | 
|   | 
|     public void setRecordList(List<JRecordItem> recordList) { | 
|         this.recordList = recordList; | 
|     } | 
|   | 
|     public static class JRecordItem { | 
|   | 
|         // 逻辑通道号 | 
|         private int channelId; | 
|   | 
|         // 开始时间 | 
|         private String startTime; | 
|   | 
|         // 结束时间 | 
|         private String endTime; | 
|   | 
|         // 报警标志 | 
|         private long warn; | 
|   | 
|         // 音视频资源类型 | 
|         private int mediaType; | 
|   | 
|         // 码流类型 | 
|         private int streamType = 1; | 
|   | 
|         // 存储器类型 | 
|         private int storageType; | 
|   | 
|         // 文件大小 | 
|         private long size; | 
|   | 
|         public int getChannelId() { | 
|             return channelId; | 
|         } | 
|   | 
|         public void setChannelId(int channelId) { | 
|             this.channelId = channelId; | 
|         } | 
|   | 
|         public String getStartTime() { | 
|             return startTime; | 
|         } | 
|   | 
|         public void setStartTime(String startTime) { | 
|             this.startTime = startTime; | 
|         } | 
|   | 
|         public String getEndTime() { | 
|             return endTime; | 
|         } | 
|   | 
|         public void setEndTime(String endTime) { | 
|             this.endTime = endTime; | 
|         } | 
|   | 
|         public long getWarn() { | 
|             return warn; | 
|         } | 
|   | 
|         public void setWarn(long warn) { | 
|             this.warn = warn; | 
|         } | 
|   | 
|         public int getMediaType() { | 
|             return mediaType; | 
|         } | 
|   | 
|         public void setMediaType(int mediaType) { | 
|             this.mediaType = mediaType; | 
|         } | 
|   | 
|         public int getStreamType() { | 
|             return streamType; | 
|         } | 
|   | 
|         public void setStreamType(int streamType) { | 
|             this.streamType = streamType; | 
|         } | 
|   | 
|         public int getStorageType() { | 
|             return storageType; | 
|         } | 
|   | 
|         public void setStorageType(int storageType) { | 
|             this.storageType = storageType; | 
|         } | 
|   | 
|         public long getSize() { | 
|             return size; | 
|         } | 
|   | 
|         public void setSize(long size) { | 
|             this.size = size; | 
|         } | 
|   | 
|         @Override | 
|         public String toString() { | 
|             return "JRecordItem{" + | 
|                     "channelId=" + channelId + | 
|                     ", startTime='" + startTime + '\'' + | 
|                     ", endTime='" + endTime + '\'' + | 
|                     ", warn=" + warn + | 
|                     ", mediaType=" + mediaType + | 
|                     ", streamType=" + streamType + | 
|                     ", storageType=" + storageType + | 
|                     ", size=" + size + | 
|                     '}'; | 
|         } | 
|     } | 
|   | 
|     @Override | 
|     public String toString() { | 
|         return "J1205{" + | 
|                 "respNo=" + respNo + | 
|                 ", recordList=" + recordList + | 
|                 '}'; | 
|     } | 
| } |