Skip to content
项目
群组
代码片段
帮助
当前项目
正在载入...
登录 / 注册
切换导航面板
S
SatelliteDigital
项目
项目
详情
活动
周期分析
仓库
仓库
文件
提交
分支
标签
贡献者
图表
比较
统计图
议题
0
议题
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
CI / CD
CI / CD
流水线
作业
日程
统计图
Wiki
Wiki
代码片段
代码片段
成员
成员
折叠边栏
关闭边栏
活动
图像
聊天
创建新问题
作业
提交
问题看板
Open sidebar
nijiawen
SatelliteDigital
Commits
cca4147a
提交
cca4147a
authored
4月 09, 2026
作者:
liujiaxing
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
时间轴重置模式--切换到实时模式
上级
83e2a35c
隐藏空白字符变更
内嵌
并排
正在显示
1 个修改的文件
包含
53 行增加
和
16 行删除
+53
-16
timers.vue
src/pages/footer/component/timers.vue
+53
-16
没有找到文件。
src/pages/footer/component/timers.vue
浏览文件 @
cca4147a
...
...
@@ -316,6 +316,8 @@ const wssMessageHandle = () => {
}
if
(
data
.
type
===
'control'
&&
(
data
.
controlType
===
'continue'
&&
data
?.
messageTypeFalg
===
'true'
))
{
// 跳到指定时间点
console
.
log
(
tempDateTime
.
value
,
'试试模式的时间?-------'
);
jumpToSpecificTime
(
new
Date
(
subtractSecondsAndFormat
(
alignTo56Seconds
(
tempDateTime
.
value
).
toISOString
(),
data
.
remainingTimeMs
+
1
)),
false
)
playForward
();
//开始播放
// if (!hasPlayed.value) {
...
...
@@ -360,6 +362,7 @@ const wssMessageHandle = () => {
preTimeWindowEnd
.
value
=
data
.
nextTimestamp
||
data
.
dataTime
;
}
hasDraged_first_falseToTrue
.
value
=
true
;
console
.
log
(
'是否跳转'
);
jumpToSpecificTime
(
new
Date
(
subtractSecondsAndFormat
(
alignTo56Seconds
(
selectedEndTime
.
value
).
toISOString
(),
data
.
remainingTimeMs
+
1
)));
//console.log("我走了ElMessage",hasDraged_first_falseToTrue.value , !(data?.isLagrangeInterpolation === true) , (data.controlType === 'seekConfirm'));
...
...
@@ -537,6 +540,15 @@ const taskCode_everyChange = ref('');
// 点击确认后,处理日期范围变化,speed--播放速度倍数,val--时间范围
const
handleDateRangeChange
=
async
(
val
,
flag
=
false
,
RemoveSat
,
speed
)
=>
{
console
.
log
(
val
,
'对比'
);
// 判断如果是实时模式则储存当前时间开始时间和结束时间
if
(
is_flag_isRealtime
.
value
)
{
console
.
log
(
startDateTime
.
value
,
endDateTime
.
value
,
'实时'
);
localStorage
.
setItem
(
"isRealtimetime"
,
JSON
.
stringify
(
[
startDateTime
.
value
,
endDateTime
.
value
]
));
}
// return
if
(
RemoveSat
)
{
is_flag_isRealtime
.
value
=
false
;
localStorage
.
setItem
(
"is_flag_isRealtime"
,
false
);
...
...
@@ -556,6 +568,7 @@ const handleDateRangeChange = async (val, flag = false, RemoveSat, speed) => {
useAppStoreInstance
.
setGlobalRecordMainSysTaskCode
(
taskCode_everyChange
.
value
)
useAppStoreInstance
.
setFooterTimeHasedSelectTimeToSub
(
true
);
}
if
(
val
&&
val
.
length
>
0
)
{
wssResponeFlag_isSuccess
.
value
=
true
;
isPlaying
.
value
=
false
;
...
...
@@ -573,7 +586,7 @@ const handleDateRangeChange = async (val, flag = false, RemoveSat, speed) => {
clearInterval
(
autoUpdateDateRange
.
value
);
updateTimeline
();
// 重置滑块位置到开始位置
// 重置滑块位置到开始位置
--历史模式
startHandlePercent
.
value
=
0
;
endHandlePercent
.
value
=
0
;
...
...
@@ -584,7 +597,7 @@ const handleDateRangeChange = async (val, flag = false, RemoveSat, speed) => {
}
playbackSpeed
.
value
=
Number
(
speed
);
//倍速设置
console
.
log
(
"倍速设置"
,
playbackSpeed
.
value
);
console
.
log
(
"倍速设置"
,
playbackSpeed
.
value
,
'类型'
);
if
(
!
flag
)
{
wssOpenHandle
({
isRealtime
:
is_flag_isRealtime
.
value
?
true
:
false
,
...
...
@@ -657,6 +670,8 @@ autoUpdateDateRange.value = setInterval(() => {
watch
(()
=>
isDateRangeNotEmpty
.
value
,
(
newVal
)
=>
{
if
(
newVal
)
{
// === 实时模式:开启自动更新 ===
console
.
log
(
'监听信息学,改变时间'
);
autoUpdateDateRange
.
value
=
setInterval
(()
=>
{
autoHandleDateRangeChange
([
new
Date
((
new
Date
(
useAppStoreInstance
.
globalSubsystemSelectedStartTime
[
0
]))).
toISOString
(),
new
Date
((
new
Date
(
useAppStoreInstance
.
globalSubsystemSelectedStartTime
[
1
]))).
toISOString
()]);
},
1000
);
// 每秒执行一次,让时间范围随着当前时间前进
...
...
@@ -759,9 +774,10 @@ const isMarkerInSelectedRange = (marker) => {
};
// 日期时间格式化函数
const
formatDateTime
=
(
date
)
=>
{
if
(
!
date
||
date
==
undefined
)
return
'未选择'
;
if
(
!
isDateString
(
date
))
return
const
formatDateTime
=
(
dates
)
=>
{
if
(
!
dates
||
dates
==
undefined
)
return
'未选择'
;
if
(
!
isDateString
(
dates
))
return
let
date
=
new
Date
(
dates
);
const
year
=
date
?.
getFullYear
();
const
month
=
String
(
date
.
getMonth
()
+
1
).
padStart
(
2
,
'0'
);
const
day
=
String
(
date
.
getDate
()).
padStart
(
2
,
'0'
);
...
...
@@ -940,6 +956,8 @@ const toggleAutoPlay = () => {
jiangerTime
.
value
=
0
;
playForward
();
//开始播放
// 跳转到指定的时间点
console
.
log
(
'是否跳转222'
);
jumpToSpecificTime
(
new
Date
(
addOneSecond
(
formatDateTime
(
selectedEndTime
.
value
),
1
)));
if
(
window
.
ue5
)
{
window
.
ue5
(
"callBackSpeedFn"
,
String
(
JSON
.
stringify
({
...
...
@@ -1349,6 +1367,22 @@ const formatDateTimeOne = (timeStr) => {
// }
// 重置模式为实时模式
const
resetclick
=
()
=>
{
console
.
log
(
JSON
.
parse
(
localStorage
.
getItem
(
"isRealtimetime"
)),
'时间'
);
// return
if
(
is_flag_isRealtime
.
value
)
return
ElMessage
.
warning
(
"当前已经是实时模式!"
);
is_flag_isRealtime
.
value
=
true
//实时模式
startHandlePercent
.
value
=
0
;
endHandlePercent
.
value
=
100
;
//实时模式滑块为100
dateRange
.
value
=
[]
handleDateRangeChange
(
JSON
.
parse
(
localStorage
.
getItem
(
"isRealtimetime"
)),
true
,
false
,
localStorage
.
getItem
(
"playbackSpeed"
));
wssOpenHandle
({
isRealtime
:
is_flag_isRealtime
.
value
,
status
:
'continue'
,
messageTypeFalg
:
true
,
taskCode
:
useAppStoreInstance
.
globalRecordMainSysTaskCode
||
(
useAppStoreInstance
.
globalSubsystemTaskCode
),
})
}
const
tempDateTime
=
ref
(
new
Date
(
useAppStoreInstance
.
globalTimeLineEndSelectTime
))
onMounted
(()
=>
{
...
...
@@ -1370,6 +1404,7 @@ onMounted(() => {
pick_select_date
.
value
=
[
new
Date
(
dateRange
.
value
[
0
]).
toString
(),
new
Date
(
dateRange
.
value
[
1
]).
toString
()]
}
{
//跳出判断,一直执行
console
.
log
(
localStorage
.
getItem
(
"playbackSpeed"
),
'判断是否走了历史模式'
,
useAppStoreInstance
.
globalSubsystemSelectedStartTime
);
// ⚠️ 保存离开前的 isRealtime 状态,因为 handleDateRangeChange 内部会把 is_flag_isRealtime 设为 false
...
...
@@ -1391,6 +1426,8 @@ onMounted(() => {
const
restored
=
new
Date
(
tempDateTime
.
value
);
if
(
!
isNaN
(
restored
.
getTime
()))
{
//跳转到指定时间
console
.
log
(
'走这厉害'
);
jumpToSpecificTime
(
restored
,
false
);
console
.
log
(
"滑块恢复到离开前位置:"
,
tempDateTime
.
value
);
}
...
...
@@ -1515,19 +1552,19 @@ watch(
jiangerTime
.
value
+=
1
;
console
.
log
(
formatDateTime
(
selectedEndTime
.
value
),
preTimeWindowEnd
.
value
,
'时间对比'
);
//对比时间----判断是否需要停止
if
(
compareTime
(
formatDateTime
(
selectedEndTime
.
value
),
preTimeWindowEnd
.
value
))
{
if
(
isPlaying
.
value
)
{
console
.
log
(
'歘告诉过'
);
//对比时间----判断是否需要停止
,拖动后后端连续返回三条数据,第一条是提示,第二第三条是ue用来定位和平滑的数据,这是后不应该停止时间,到56秒后应该接收到下一条数据时
//
if (compareTime(formatDateTime(selectedEndTime.value), preTimeWindowEnd.value)) {
//
if (isPlaying.value) {
//
console.log('歘告诉过');
stopAutoPlay
();
// hasPlayed.value = false;
isChange_flag_firstBackDate
.
value
=
false
;
}
//
stopAutoPlay();
//
// hasPlayed.value = false;
//
isChange_flag_firstBackDate.value = false;
//
}
// clearInterval(intervalTimer.value);
// intervalTimer.value = null;
}
//
// clearInterval(intervalTimer.value);
//
// intervalTimer.value = null;
//
}
}
},
...
...
编写
预览
Markdown
格式
0%
重试
或
添加新文件
添加附件
取消
您添加了
0
人
到此讨论。请谨慎行事。
请先完成此评论的编辑!
取消
请
注册
或者
登录
后发表评论