From 089bf5d2378b3c4a61d795b2a92bede2c193b771 Mon Sep 17 00:00:00 2001
From: admin <344137771@qq.com>
Date: Tue, 06 Jan 2026 11:22:58 +0800
Subject: [PATCH] 1
---
src/components/chat/messaege/LoginMessage.vue | 108 ++++++++++++++++++++++++++++++++++++++++++++++++++++++
1 files changed, 108 insertions(+), 0 deletions(-)
diff --git a/src/components/chat/messaege/LoginMessage.vue b/src/components/chat/messaege/LoginMessage.vue
new file mode 100644
index 0000000..0003cc6
--- /dev/null
+++ b/src/components/chat/messaege/LoginMessage.vue
@@ -0,0 +1,108 @@
+<template>
+ <!-- 登录消息 -->
+ <div class="login-message">
+ <h4>登录操作通知</h4>
+ <p>登录时间:{{ datetime }} (CST)</p>
+ <p>IP地址:{{ ip }}</p>
+ <p>登录地点:{{ address }}</p>
+ <p>登录设备:{{ platform }}</p>
+ <p>异常原因:{{ reason }}</p>
+ </div>
+</template>
+
+<script>
+import { parseTime } from '@/utils/functions'
+
+export default {
+ name: 'LoginMessage',
+ props: {
+ detail: {
+ type: Object,
+ required: true,
+ },
+ },
+ data() {
+ return {
+ datetime: '',
+ ip: '',
+ address: '',
+ platform: '',
+ reason: '常用设备登录',
+ }
+ },
+ created() {
+
+
+ if(this.detail == undefined){
+ return
+ }
+
+
+ this.ip = this.detail.ip || ''
+ this.datetime = parseTime(
+ this.detail.created_at,
+ '{y}年{m}月{d}日 {h}:{i}:{s}'
+ )
+ this.address = this.detail.address
+ this.reason = this.detail.reason
+
+ this.platform =
+ this.getExploreName(this.detail.agent) +
+ ' / ' +
+ this.getExploreOs(this.detail.agent)
+ },
+ methods: {
+ getExploreName(userAgent = '') {
+ if (userAgent.indexOf('Opera') > -1 || userAgent.indexOf('OPR') > -1) {
+ return 'Opera'
+ } else if (
+ userAgent.indexOf('compatible') > -1 &&
+ userAgent.indexOf('MSIE') > -1
+ ) {
+ return 'IE'
+ } else if (userAgent.indexOf('Edge') > -1) {
+ return 'Edge'
+ } else if (userAgent.indexOf('Firefox') > -1) {
+ return 'Firefox'
+ } else if (
+ userAgent.indexOf('Safari') > -1 &&
+ userAgent.indexOf('Chrome') == -1
+ ) {
+ return 'Safari'
+ } else if (
+ userAgent.indexOf('Chrome') > -1 &&
+ userAgent.indexOf('Safari') > -1
+ ) {
+ return 'Chrome'
+ } else {
+ return 'Unkonwn'
+ }
+ },
+
+ getExploreOs(userAgent = '') {
+ if (userAgent.indexOf('Mac OS') > -1) {
+ return 'Mac OS'
+ } else {
+ return 'Windows'
+ }
+ },
+ },
+}
+</script>
+<style lang="less" scoped>
+.login-message {
+ width: 300px;
+ min-height: 50px;
+ background: #f7f7f7;
+ border-radius: 5px;
+ padding: 15px;
+
+ p {
+ font-size: 13px;
+ margin: 10px 0;
+ &:last-child {
+ margin-bottom: 0;
+ }
+ }
+}
+</style>
--
Gitblit v1.9.3