|
|
|
@ -94,6 +94,7 @@ const fullscreenStyles = computed<any>(() => ({
|
|
|
|
|
|
|
|
|
|
onMounted(() => {
|
|
|
|
|
window.addEventListener("keydown", handleKeydown);
|
|
|
|
|
|
|
|
|
|
if (route.query.id) {
|
|
|
|
|
taskId.value = route.query.id;
|
|
|
|
|
packageId.value = route.query.packageid;
|
|
|
|
@ -102,12 +103,71 @@ onMounted(() => {
|
|
|
|
|
}
|
|
|
|
|
});
|
|
|
|
|
|
|
|
|
|
let lastKeyPressTime = 0;
|
|
|
|
|
let keyPressTimer = null;
|
|
|
|
|
const doubleClickInterval = 300; // 可以自定义间隔时间,单位是毫秒
|
|
|
|
|
// 键盘左右箭头快捷切换
|
|
|
|
|
function handleKeydown(event) {
|
|
|
|
|
if (event.key === "ArrowLeft") backHandler();
|
|
|
|
|
// 在这里执行左箭头的逻辑
|
|
|
|
|
else if (event.key === "ArrowRight") forwardHandler();
|
|
|
|
|
// 在这里执行右箭头的逻辑
|
|
|
|
|
else if (event.keyCode === 67) {
|
|
|
|
|
isFullScreen.value=false
|
|
|
|
|
|
|
|
|
|
// batchModalRef.value.closeModal()
|
|
|
|
|
}else if (event.key === 'p' || event.key === 'P') {
|
|
|
|
|
// 获取当前时间
|
|
|
|
|
const now = Date.now();
|
|
|
|
|
|
|
|
|
|
// 如果两次按键时间间隔小于我们设定的双击间隔,则认为是双击
|
|
|
|
|
if (now - lastKeyPressTime < doubleClickInterval) {
|
|
|
|
|
// 清除已经设置的定时器(如果有的话)
|
|
|
|
|
clearTimeout(keyPressTimer);
|
|
|
|
|
|
|
|
|
|
// 执行想要的操作
|
|
|
|
|
approvalHandler()
|
|
|
|
|
|
|
|
|
|
// 重置上次按键时间
|
|
|
|
|
lastKeyPressTime = 0;
|
|
|
|
|
} else {
|
|
|
|
|
// 如果不是双击,则更新上次按键时间,并开始一个新的计时器
|
|
|
|
|
lastKeyPressTime = now;
|
|
|
|
|
|
|
|
|
|
// 通过定时器重置上次按键时间
|
|
|
|
|
// 这可以防止如果用户只按了一次键,也会触发双击的情况
|
|
|
|
|
clearTimeout(keyPressTimer);
|
|
|
|
|
keyPressTimer = setTimeout(function () {
|
|
|
|
|
lastKeyPressTime = 0;
|
|
|
|
|
}, doubleClickInterval);
|
|
|
|
|
}
|
|
|
|
|
}else if (event.key === 'X' || event.key === 'X') {
|
|
|
|
|
// 获取当前时间
|
|
|
|
|
const now = Date.now();
|
|
|
|
|
|
|
|
|
|
// 如果两次按键时间间隔小于我们设定的双击间隔,则认为是双击
|
|
|
|
|
if (now - lastKeyPressTime < doubleClickInterval) {
|
|
|
|
|
// 清除已经设置的定时器(如果有的话)
|
|
|
|
|
clearTimeout(keyPressTimer);
|
|
|
|
|
|
|
|
|
|
// 执行想要的操作
|
|
|
|
|
singleRejectHandler()
|
|
|
|
|
|
|
|
|
|
// 重置上次按键时间
|
|
|
|
|
lastKeyPressTime = 0;
|
|
|
|
|
} else {
|
|
|
|
|
// 如果不是双击,则更新上次按键时间,并开始一个新的计时器
|
|
|
|
|
lastKeyPressTime = now;
|
|
|
|
|
|
|
|
|
|
// 通过定时器重置上次按键时间
|
|
|
|
|
// 这可以防止如果用户只按了一次键,也会触发双击的情况
|
|
|
|
|
clearTimeout(keyPressTimer);
|
|
|
|
|
keyPressTimer = setTimeout(function () {
|
|
|
|
|
lastKeyPressTime = 0;
|
|
|
|
|
}, doubleClickInterval);
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
function setBatch(value: boolean) {
|
|
|
|
|