diff --git a/resources/assets/js/app.js b/resources/assets/js/app.js
index 6ee70b5a2..e7a346818 100644
--- a/resources/assets/js/app.js
+++ b/resources/assets/js/app.js
@@ -97,6 +97,14 @@ Vue.prototype.goForward = function(location, isReplace) {
if (typeof location === 'string') {
location = {name: location};
}
+ // 打开聊天窗口(移动端)
+ if (app.$store.state.windowMax768
+ && location.name === 'manage-messenger'
+ && /\d+/.test(location.params.dialogId)) {
+ app.$store.state.dialogModalId = location.params.dialogId;
+ return
+ }
+ //
if (app.$store.state.routeHistorys.length === 0) {
app.$store.state.routeHistorys.push(app.$route)
}
diff --git a/resources/assets/js/pages/manage.vue b/resources/assets/js/pages/manage.vue
index 59aeb297b..e9f1bc02b 100644
--- a/resources/assets/js/pages/manage.vue
+++ b/resources/assets/js/pages/manage.vue
@@ -322,6 +322,9 @@
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/resources/assets/js/pages/manage/components/DialogWrapper.vue b/resources/assets/js/pages/manage/components/DialogWrapper.vue
index f60d5088b..0463394c8 100644
--- a/resources/assets/js/pages/manage/components/DialogWrapper.vue
+++ b/resources/assets/js/pages/manage/components/DialogWrapper.vue
@@ -297,6 +297,7 @@ export default {
type: Boolean,
default: false
},
+ beforeBack: Function
},
data() {
@@ -853,6 +854,20 @@ export default {
},
onBack() {
+ if (!this.beforeBack) {
+ return this.handleBack();
+ }
+ const before = this.beforeBack();
+ if (before && before.then) {
+ before.then(() => {
+ this.handleBack();
+ });
+ } else {
+ this.handleBack();
+ }
+ },
+
+ handleBack() {
const {name, params} = this.$store.state.routeHistoryLast;
if (name === this.$route.name && /\d+/.test(params.dialogId)) {
this.goForward({name: this.$route.name});
diff --git a/resources/assets/js/pages/manage/components/TaskDetail.vue b/resources/assets/js/pages/manage/components/TaskDetail.vue
index 0cf71fbfe..e4a70b401 100644
--- a/resources/assets/js/pages/manage/components/TaskDetail.vue
+++ b/resources/assets/js/pages/manage/components/TaskDetail.vue
@@ -1117,7 +1117,6 @@ export default {
this.msgFile = [];
this.msgText = "";
this.goForward({name: 'manage-messenger', params: {dialogId: data.dialog_id}, query: {_: $A.randomString(6)}});
- this.$store.dispatch('openTask', 0);
} else {
this.sendDialogMsg();
}
diff --git a/resources/assets/js/pages/manage/messenger.vue b/resources/assets/js/pages/manage/messenger.vue
index 7f88a3c2f..4f9af26e0 100644
--- a/resources/assets/js/pages/manage/messenger.vue
+++ b/resources/assets/js/pages/manage/messenger.vue
@@ -132,16 +132,13 @@
-
-
-
-
-
{{$L('选择一个会话开始聊天')}}
-
-
+
diff --git a/resources/assets/js/store/state.js b/resources/assets/js/store/state.js
index 9387205d4..36bc8afbc 100644
--- a/resources/assets/js/store/state.js
+++ b/resources/assets/js/store/state.js
@@ -66,8 +66,9 @@ const stateData = {
// 会话聊天
dialogMsgs: [],
- dialogMsgTransfer: {time: 0},
dialogInputCache: $A.getStorageArray("cacheDialogInput"),
+ dialogMsgTransfer: {time: 0},
+ dialogModalId: 0,
// 文件
files: [],
diff --git a/resources/assets/sass/components/mobile.scss b/resources/assets/sass/components/mobile.scss
index 7ba2755d8..13ca79ff4 100644
--- a/resources/assets/sass/components/mobile.scss
+++ b/resources/assets/sass/components/mobile.scss
@@ -245,9 +245,6 @@
.mobile-dialog-leave-active {
transition: all 0.3s ease;
- .dialog-wrapper {
- bottom: -60px;
- }
}
.mobile-dialog-enter,
diff --git a/resources/assets/sass/pages/page-messenger.scss b/resources/assets/sass/pages/page-messenger.scss
index 7a7a2acfa..0baf73db5 100644
--- a/resources/assets/sass/pages/page-messenger.scss
+++ b/resources/assets/sass/pages/page-messenger.scss
@@ -511,11 +511,7 @@
}
}
.messenger-msg {
- z-index: 49;
- background-color: #f8f8f8;
- .msg-dialog-bg {
- display: none;
- }
+ display: none;
}
}
}