From 79993be468244e6cc16ce9c1d7e8736bd359c600 Mon Sep 17 00:00:00 2001
From: qingyiay <2386314947@qq.com>
Date: 星期五, 05 五月 2023 14:48:51 +0800
Subject: [PATCH] 样式全面修改,所有页面焕然一新
---
pages/tabbar-page/index-tabbar/index-tabbar.vue | 133 +++++++++++++++++++++++++++++++++++++++-----
1 files changed, 117 insertions(+), 16 deletions(-)
diff --git a/pages/tabbar-page/index-tabbar/index-tabbar.vue b/pages/tabbar-page/index-tabbar/index-tabbar.vue
index e2db085..3921269 100644
--- a/pages/tabbar-page/index-tabbar/index-tabbar.vue
+++ b/pages/tabbar-page/index-tabbar/index-tabbar.vue
@@ -1,7 +1,9 @@
<template>
<view>
<view class="search-bar">
- <view class="icon-box" @click="messagePage"><u-icon name="chat" color="#000" size="50"></u-icon></view>
+ <view class="icon-body">
+ <view class="icon-box" @click="messagePage"><u-icon name="chat" color="#fff" size="50"></u-icon></view>
+ </view>
</view>
<customer-index v-if="roleType == 1" ref="customerIndexRef" :orderPlanDataStore="orderPlanDataStore"></customer-index>
<freight-forwarder-index
@@ -12,6 +14,11 @@
></freight-forwarder-index>
<driver-index v-if="roleType == 3" ref="driverIndexRef" :indexdriverBillOfLoadingData="indexdriverBillOfLoadingData"></driver-index>
<tab-bar :current="0"></tab-bar>
+ <!-- 鎺ㄩ�佹秷鎭脊绐� -->
+ <u-modal :show="messagePushShow" :title="messageList.title" @confirm="messageconfirm">
+ <view class="slot-content"><rich-text :nodes="messageList.content"></rich-text></view>
+ </u-modal>
+ <view class="white-block"></view>
</view>
</template>
@@ -19,12 +26,17 @@
import customerIndex from '@/pages/customer-page/customer-index/customer-index.vue';
import driverIndex from '@/pages/driver-page/driver-index/driver-index.vue';
import freightForwarderIndex from '@/pages/freight-forwarder-page/freightForwarder-index/freightForwarder-index.vue';
-import { mapState } from 'vuex';
+import { mapState, mapMutations } from 'vuex';
+import { webSocketUrl } from '@/api/request.js';
+let socket = null;
export default {
components: {
customerIndex,
driverIndex,
freightForwarderIndex
+ },
+ computed: {
+ ...mapState(['globalweighHouseCode', 'globalweigh'])
},
//棣栭〉涓嬫媺鍒锋柊
onPullDownRefresh() {
@@ -46,6 +58,7 @@
this.$reqGet('GetOrderPlan').then(res => {
if (res.data) {
this.orderPlanDataStore = res.data;
+ this.$u.toast('鍔犺浇鎴愬姛');
uni.hideLoading();
uni.stopPullDownRefresh();
} else {
@@ -56,6 +69,7 @@
this.$reqGet('huoDaiList').then(res => {
if (res.data) {
this.indexHuoDaiOrderPlanData = res.data;
+ this.$u.toast('鍔犺浇鎴愬姛');
uni.hideLoading();
uni.stopPullDownRefresh();
} else {
@@ -64,7 +78,6 @@
});
} else if (this.roleType == 3) {
this.$reqGet('qiangDanList').then(res => {
- console.log(res, '鍒锋柊涔嬪悗鐨勬暟鎹�');
if (res.code == 0) {
this.indexdriverBillOfLoadingData = res.data;
this.$u.toast('鍔犺浇鎴愬姛');
@@ -101,14 +114,32 @@
orderPlanDataStore: [],
indexHuoDaiOrderPlanData: [],
indexHistoryCoalData: [],
- indexdriverBillOfLoadingData: {}
+ indexdriverBillOfLoadingData: {},
+ messagePushShow: false,
+ messageList: {},
+ isconnect: false
};
},
onShow() {
this.init();
+ if (!this.isconnect) {
+ this.initWebsocket();
+ }
this.userAuthorization();
},
+ onHide() {
+ console.log('椤甸潰闅愯棌');
+ if (!this.isconnect) {
+ this.initWebsocket();
+ }
+ },
+ onUnload() {
+ console.log('椤甸潰鍗歌浇');
+ socket.close();
+ clearInterval(this.intervalId);
+ },
methods: {
+ ...mapMutations(['pushMessage', 'changeWeigh', 'changeinfraredStatus']),
messagePage() {
uni.navigateTo({
url: '/pages/public-page/message/message'
@@ -175,27 +206,97 @@
console.log('鑾峰彇澶辫触');
}
});
+ },
+ // 鍒濆鍖杦ebsocket
+ initWebsocket() {
+ let wsUrl = `${webSocketUrl}?access_token=${uni.getStorageSync('token')}`;
+ socket = uni.connectSocket({
+ url: wsUrl,
+ header: {
+ CLIENT_TOC: 'Y'
+ },
+ complete: res => {
+ console.log(res, 'socket缁撴灉');
+ if (res.errMsg == 'connectSocket:ok') {
+ this.isconnect = true;
+ }
+ }
+ });
+ socket.onOpen(() => {
+ console.log('onOpen');
+ this.intervalId = setInterval(() => {
+ socket.send({
+ data: JSON.stringify({ type: 'ping' }),
+ success(e) {
+ console.log(e, '鍙戦�佸績璺虫垚鍔�');
+ }
+ });
+ }, 30000);
+ });
+
+ // 鑾峰彇鏈嶅姟鍣ㄤ紶鏉ョ殑鏁版嵁锛屽仛鐩稿簲澶勭悊
+ socket.onMessage(res => {
+ console.log('message', res);
+ if (res.data.startsWith('weigh')) {
+ let nowWeighObj = JSON.parse(res.data.slice(7));
+ if (this.globalweighHouseCode && nowWeighObj.eqCode == this.globalweighHouseCode) {
+ if (nowWeighObj.eqInfraredStatus) {
+ this.changeinfraredStatus(true);
+ this.changeWeigh(nowWeighObj.weigh);
+ } else {
+ this.changeinfraredStatus(false);
+ this.changeWeigh(nowWeighObj.weigh);
+ }
+ }
+ } else if (res.data.startsWith('msg')) {
+ this.messageList = JSON.parse(res.data.slice(5));
+ this.messagePushShow = true;
+ } else {
+ console.log('websocket鍚姩涓�');
+ }
+ });
+ socket.onClose(e => {
+ console.log('webSocketClose', e);
+ // this.$u.toast('杩炴帴宸叉柇寮�锛岃閲嶆柊杩涘叆璇ラ〉闈紝閲嶈瘯锛侊紒');
+ this.isconnect = false;
+ });
+ socket.onError(err => {
+ console.log('socket鎶ラ敊', err);
+ this.$u.toast('鍑虹幇閿欒锛岃閲嶆柊杩涘叆璇ラ〉闈紝閲嶈瘯锛侊紒');
+ });
+ },
+ messageconfirm() {
+ this.messagePushShow = false;
}
}
};
</script>
<style lang="scss" scoped>
+.white-block {
+ width: 100%;
+ height: vww(50);
+ margin-top: vww(10);
+}
.search-bar {
height: vww(20);
width: 96%;
- margin: vww(3) auto;
- position: relative;
- .icon-box {
- width: vww(30);
- height: vww(30);
- background-color: #eee;
- border-radius: 50%;
- display: flex;
- justify-content: center;
- align-items: center;
- position: absolute;
- right: vww(-3);
+ position: fixed;
+ top: vww(96);
+ right: vww(32);
+ z-index: 1;
+ .icon-body {
+ position: relative;
+ .icon-box {
+ width: vww(30);
+ height: vww(30);
+ border-radius: 50%;
+ display: flex;
+ justify-content: center;
+ align-items: center;
+ position: absolute;
+ right: vww(-3);
+ }
}
}
</style>
--
Gitblit v1.9.1