修正时间戳转Date 时区问题

This commit is contained in:
shikong 2023-09-18 11:13:51 +08:00
parent ea8f0500d6
commit 117ff7cfb9
2 changed files with 7 additions and 6 deletions

View File

@ -1,7 +1,6 @@
package cn.skcks.docking.gb28181.mocking.core.sip.message.processor.invite.request; package cn.skcks.docking.gb28181.mocking.core.sip.message.processor.invite.request;
import cn.hutool.core.date.DateUtil; import cn.hutool.core.date.DateUtil;
import cn.skcks.docking.gb28181.core.sip.gb28181.constant.GB28181Constant;
import cn.skcks.docking.gb28181.core.sip.gb28181.sdp.GB28181Description; import cn.skcks.docking.gb28181.core.sip.gb28181.sdp.GB28181Description;
import cn.skcks.docking.gb28181.core.sip.gb28181.sdp.MediaSdpHelper; import cn.skcks.docking.gb28181.core.sip.gb28181.sdp.MediaSdpHelper;
import cn.skcks.docking.gb28181.core.sip.listener.SipListener; import cn.skcks.docking.gb28181.core.sip.listener.SipListener;
@ -32,7 +31,6 @@ import javax.sdp.*;
import javax.sip.RequestEvent; import javax.sip.RequestEvent;
import javax.sip.message.Request; import javax.sip.message.Request;
import javax.sip.message.Response; import javax.sip.message.Response;
import java.time.ZoneId;
import java.util.Arrays; import java.util.Arrays;
import java.util.Date; import java.util.Date;
import java.util.EventObject; import java.util.EventObject;
@ -168,8 +166,8 @@ public class InviteRequestProcessor implements MessageProcessor {
@SneakyThrows @SneakyThrows
private void playback(SIPRequest request, MockingDevice device, GB28181Description gb28181Description, MediaDescription mediaDescription, TimeField time, boolean isDownload) { private void playback(SIPRequest request, MockingDevice device, GB28181Description gb28181Description, MediaDescription mediaDescription, TimeField time, boolean isDownload) {
Date start = DateUtil.convertTimeZone(new Date(time.getStartTime() * 1000), ZoneId.of(GB28181Constant.TIME_ZONE)); Date start = new Date(time.getStartTime() * 1000);
Date stop = DateUtil.convertTimeZone(new Date(time.getStopTime() * 1000), ZoneId.of(GB28181Constant.TIME_ZONE)); Date stop = new Date(time.getStopTime() * 1000);
log.info("{} ~ {}", start, stop); log.info("{} ~ {}", start, stop);
String channelId = gb28181Description.getOrigin().getUsername(); String channelId = gb28181Description.getOrigin().getUsername();
log.info("通道id: {}", channelId); log.info("通道id: {}", channelId);

View File

@ -3,7 +3,9 @@ package cn.skcks.docking.gb28181.mocking.service.device;
import cn.hutool.core.date.DatePattern; import cn.hutool.core.date.DatePattern;
import cn.hutool.core.date.DateUnit; import cn.hutool.core.date.DateUnit;
import cn.hutool.core.date.DateUtil; import cn.hutool.core.date.DateUtil;
import cn.hutool.core.date.LocalDateTimeUtil;
import cn.hutool.core.util.URLUtil; import cn.hutool.core.util.URLUtil;
import cn.skcks.docking.gb28181.core.sip.gb28181.constant.GB28181Constant;
import cn.skcks.docking.gb28181.core.sip.message.subscribe.GenericSubscribe; import cn.skcks.docking.gb28181.core.sip.message.subscribe.GenericSubscribe;
import cn.skcks.docking.gb28181.mocking.config.sip.DeviceProxyConfig; import cn.skcks.docking.gb28181.mocking.config.sip.DeviceProxyConfig;
import cn.skcks.docking.gb28181.mocking.core.sip.message.subscribe.SipSubscribe; import cn.skcks.docking.gb28181.mocking.core.sip.message.subscribe.SipSubscribe;
@ -22,6 +24,7 @@ import org.springframework.stereotype.Service;
import javax.sip.message.Request; import javax.sip.message.Request;
import javax.sip.message.Response; import javax.sip.message.Response;
import java.nio.charset.StandardCharsets; import java.nio.charset.StandardCharsets;
import java.time.ZoneId;
import java.util.Date; import java.util.Date;
import java.util.HashMap; import java.util.HashMap;
import java.util.Optional; import java.util.Optional;
@ -111,8 +114,8 @@ public class DeviceProxyService {
HashMap<String, String> map = new HashMap<>(3); HashMap<String, String> map = new HashMap<>(3);
String deviceCode = device.getDeviceCode(); String deviceCode = device.getDeviceCode();
map.put("device_id", deviceCode); map.put("device_id", deviceCode);
map.put("begin_time", DateUtil.format(startTime, DatePattern.PURE_DATETIME_FORMAT)); map.put("begin_time",DateUtil.format(LocalDateTimeUtil.of(startTime.toInstant(), ZoneId.of(GB28181Constant.TIME_ZONE)), DatePattern.PURE_DATETIME_PATTERN));
map.put("end_time", DateUtil.format(endTime, DatePattern.PURE_DATETIME_FORMAT)); map.put("end_time", DateUtil.format(LocalDateTimeUtil.of(endTime.toInstant(), ZoneId.of(GB28181Constant.TIME_ZONE)), DatePattern.PURE_DATETIME_PATTERN));
String query = URLUtil.buildQuery(map, StandardCharsets.UTF_8); String query = URLUtil.buildQuery(map, StandardCharsets.UTF_8);
fromUrl = StringUtils.joinWith("?", fromUrl, query); fromUrl = StringUtils.joinWith("?", fromUrl, query);
log.info("设备: {} 视频 url: {}", deviceCode, fromUrl); log.info("设备: {} 视频 url: {}", deviceCode, fromUrl);