mirror of
https://gitee.com/dromara/mayfly-go
synced 2025-11-02 23:40:24 +08:00
46 lines
1.4 KiB
TypeScript
46 lines
1.4 KiB
TypeScript
|
|
import Config from './config'
|
|
import { ElNotification } from 'element-plus'
|
|
import SocketBuilder from './SocketBuilder';
|
|
import { getSession } from '@/common/utils/storage.ts';
|
|
|
|
export default {
|
|
/**
|
|
* 全局系统消息websocket
|
|
*/
|
|
sysMsgSocket() {
|
|
const token = getSession('token');
|
|
if (!token) {
|
|
return null;
|
|
}
|
|
return SocketBuilder.builder(`${Config.baseWsUrl}/sysmsg?token=${token}`)
|
|
.message((event: { data: string }) => {
|
|
const message = JSON.parse(event.data);
|
|
let mtype: string;
|
|
switch (message.type) {
|
|
case 0:
|
|
mtype = 'error';
|
|
break;
|
|
case 2:
|
|
mtype = 'info';
|
|
break;
|
|
case 1:
|
|
mtype = 'success';
|
|
break;
|
|
default:
|
|
mtype = 'info';
|
|
}
|
|
if (mtype == undefined) {
|
|
return;
|
|
}
|
|
ElNotification({
|
|
duration: 0,
|
|
title: message.title,
|
|
message: message.msg,
|
|
type: mtype as any,
|
|
})
|
|
})
|
|
.open((event: any) => console.log(event)).build();
|
|
}
|
|
}
|