diff --git a/resources/assets/js/App.vue b/resources/assets/js/App.vue
index d2abc60dd..61552e72e 100755
--- a/resources/assets/js/App.vue
+++ b/resources/assets/js/App.vue
@@ -76,7 +76,7 @@ export default {
},
computed: {
- ...mapState(['ws', 'windowActive', 'themeMode']),
+ ...mapState(['ws', 'themeMode']),
isSoftware() {
return this.$Electron || this.$isEEUiApp;
@@ -258,6 +258,10 @@ export default {
this.$store.dispatch("getBasicData", 600)
}
}
+ // 通知权限
+ window.__onNotificationPermissionStatus = (ret) => {
+ this.$store.state.appNotificationPermission = $A.runNum(ret) == 1;
+ }
},
otherEvents() {
diff --git a/resources/assets/js/pages/manage.vue b/resources/assets/js/pages/manage.vue
index 6f747a258..fae38b27b 100644
--- a/resources/assets/js/pages/manage.vue
+++ b/resources/assets/js/pages/manage.vue
@@ -689,6 +689,15 @@ export default {
}
},
+ windowActive(active) {
+ if (!active) {
+ $A.eeuiAppSendMessage({
+ action: 'setBdageNotify',
+ bdage: this.unreadTotal,
+ });
+ }
+ },
+
'cacheProjects.length': {
handler() {
this.$nextTick(_ => {
diff --git a/resources/assets/js/pages/manage/messenger.vue b/resources/assets/js/pages/manage/messenger.vue
index 891cd882a..38c7868a9 100644
--- a/resources/assets/js/pages/manage/messenger.vue
+++ b/resources/assets/js/pages/manage/messenger.vue
@@ -24,6 +24,9 @@
{{$L(item.name)}}
+
+ {{$L('未开启通知权限')}}
+
this.activeNum++)
+ //
+ if ($A.isEEUiApp) {
+ $A.eeuiAppSendMessage({action: 'getNotificationPermission'});
+ }
},
deactivated() {
@@ -206,7 +213,7 @@ export default {
},
computed: {
- ...mapState(['cacheDialogs', 'loadDialogs', 'dialogId']),
+ ...mapState(['cacheDialogs', 'loadDialogs', 'dialogId', 'appNotificationPermission']),
routeName() {
return this.$route.name
@@ -708,6 +715,12 @@ export default {
}, timeout)
}
},
+
+ onOpenAppSetting() {
+ $A.eeuiAppSendMessage({
+ action: 'gotoSetting',
+ });
+ }
}
}
diff --git a/resources/assets/js/store/state.js b/resources/assets/js/store/state.js
index 01cfdfb41..28ee9345d 100644
--- a/resources/assets/js/store/state.js
+++ b/resources/assets/js/store/state.js
@@ -11,6 +11,9 @@ const stateData = {
// 窗口是否激活
windowActive: true,
+ // App通知权限
+ appNotificationPermission: true,
+
// 播放中的音频地址
audioPlaying: null,
diff --git a/resources/assets/sass/pages/page-messenger.scss b/resources/assets/sass/pages/page-messenger.scss
index 572e48279..04452637e 100644
--- a/resources/assets/sass/pages/page-messenger.scss
+++ b/resources/assets/sass/pages/page-messenger.scss
@@ -84,6 +84,17 @@
}
}
}
+ .messenger-notify-permission {
+ position: sticky;
+ display: flex;
+ align-items: center;
+ padding: 6px 12px;
+ justify-content: space-between;
+ background-color: #FEF7EE;
+ border: 1px solid #FAE0B5;
+ margin: 8px 12px;
+ border-radius: 6px;
+ }
.messenger-list {
flex: 1;
height: 0;
diff --git a/resources/mobile b/resources/mobile
index 0b93e8265..d94c85bf2 160000
--- a/resources/mobile
+++ b/resources/mobile
@@ -1 +1 @@
-Subproject commit 0b93e8265db0a734765cd7d8f27a180d11b7223d
+Subproject commit d94c85bf200250aad19754c9e6c777bdcb22ac90