up. 优化代码内容

This commit is contained in:
扶桑花间 2025-08-29 23:39:37 +08:00
parent 28cf17bbf2
commit 7583bdd329
4 changed files with 49 additions and 20 deletions

View File

@ -108,18 +108,18 @@ class GatewaySubscribe
'lock_password'=>$lock_password,
'lock_time'=>date('Y-m-d H:i:s')
]);
// 保存锁屏日志
SysUserClientLog::create([
'event' => "{$put->type->value}.{$put->event->value}",
'message'=> "A. 锁定客户端",
'data' => json_encode(['inputPass'=> $lock_password]),
'create_time' => date('Y-m-d H:i:s'),
'client_data_id' => $client['id']
]);
// 通知客户端锁定屏幕
GatewayClientService::sendToClient($put->wsClientId,new OutMessage(
SystemEnum::Lock_Client
));
// // 保存锁屏日志
// SysUserClientLog::create([
// 'event' => "{$put->type->value}.{$put->event->value}",
// 'message'=> "A. 锁定客户端",
// 'data' => json_encode(['inputPass'=> $lock_password]),
// 'create_time' => date('Y-m-d H:i:s'),
// 'client_data_id' => $client['id']
// ]);
// // 通知客户端锁定屏幕
// GatewayClientService::sendToClient($put->wsClientId,new OutMessage(
// SystemEnum::Lock_Client
// ));
}
}

View File

@ -0,0 +1,24 @@
import { ElNotification } from 'element-plus';
import Swal from 'sweetalert2';
class ScriptEvent {
ElNotification(options = {}) {
ElNotification(options);
}
Swal(options = {}) {
Swal.fire(options);
}
trigger(name, data) {
console.debug('ws.trigger#script', name, data);
this[name]?.(data);
}
}
export const scriptEvent: ScriptEvent = new ScriptEvent();
class SystemEvent {
trigger(name, data) {
console.debug('ws.trigger#system', name, data);
this[name]?.(data);
}
}
export const systemEvent: SystemEvent = new SystemEvent();

View File

@ -9,7 +9,7 @@ import {
} from '../types';
import {computed, ref} from 'vue';
import {wsEventManager} from './event-manager';
import {systemEvent} from '@/plugins/websocket/core/event';
import {scriptEvent, systemEvent} from '@/plugins/websocket/core/event';
// 创建WebSocket实例
export function createWsInstance(config: WsConfig): WsInstance {
@ -51,13 +51,17 @@ export function createWsInstance(config: WsConfig): WsInstance {
/*
* @{type: "system", event: "事件名称", data: {}}
*/
if (jsonData.type == WsMessageType.SYSTEM) {
switch (jsonData.type) {
case WsMessageType.SCRIPT:
scriptEvent.trigger(jsonData.event, jsonData.data);
break;
case WsMessageType.SYSTEM:
systemEvent.trigger(jsonData.event, jsonData.data);
break;
default:
console.debug('ws.default#' + jsonData.type, jsonData.data);
break;
}
// if (jsonData.event == WsEvent.LOCK_CLIENT_SCREEN) {
// // 锁屏
// wsEventManager.emit(WsEvent.LOCK_CLIENT_SCREEN, e);
// }
};
const handleError = (e: Event) => {

View File

@ -25,7 +25,8 @@ export enum WsConnectionStatus {
export enum WsMessageType {
INCOMING = 'incoming',
OUTGOING = 'outgoing',
SYSTEM = 'system'
SYSTEM = 'system',
SCRIPT = 'script'
}
export interface WsMessage {