From 48a4ff3409804fc62139a9fa9fc05498cbc0a0ce Mon Sep 17 00:00:00 2001 From: yangan <yangan0921@163.com> Date: 星期四, 05 九月 2024 17:41:02 +0800 Subject: [PATCH] feat:库管拼单 --- pages/tabbar-page/index-tabbar/index-tabbar.vue | 269 +++++++++++++++++++++++++++++------------------------ 1 files changed, 145 insertions(+), 124 deletions(-) diff --git a/pages/tabbar-page/index-tabbar/index-tabbar.vue b/pages/tabbar-page/index-tabbar/index-tabbar.vue index eba8902..4d84c44 100644 --- a/pages/tabbar-page/index-tabbar/index-tabbar.vue +++ b/pages/tabbar-page/index-tabbar/index-tabbar.vue @@ -3,7 +3,7 @@ <view class="search-bar"> <view class="icon-body"> <view class="icon-box" - @click="messagePage"> + @click="messagePage" v-if="roleType != 6"> <u-badge :isDot="true" type="error" v-if="dotShow"></u-badge> @@ -24,9 +24,12 @@ ref="driverIndexRef" :indexdriverBillOfLoadingData="indexdriverBillOfLoadingData"></driver-index> <load-unload ref="LoadUnloadRef" - v-if="roleType == 5"></load-unload> + v-if="roleType == 5" :indexLoadUnloadBillOfLoadingData="detailData"></load-unload> + <doorkeep-index ref="doorkeepIndexRef" + v-if="roleType == 6"></doorkeep-index> <!-- <selectTarget v-if="roleType == 5" ref="LoadUnloadRef"></selectTarget> --> + <qualityIndex ref="qualityIndexRef" v-if="roleType == 7"></qualityIndex> <tab-bar :current="0"></tab-bar> <!-- 鎺ㄩ�佹秷鎭脊绐� --> <u-modal :show="messagePushShow" @@ -44,28 +47,32 @@ import driverIndex from '@/pages/driver-page/driver-index/driver-index.vue'; import freightForwarderIndex from '@/pages/freight-forwarder-page/freightForwarder-index/freightForwarder-index.vue'; import LoadUnload from '@/pages/loadUnload-page/loadUnload-page.vue' - import selectTarget from '@/pages/loadUnload-page/selectTarget/selectTarget.vue' - import { mapState, mapMutations } from 'vuex'; - import { webSocketUrl } from '@/api/request.js'; - - let socket = null; + import qualityIndex from '@/pages/quality-inspection-page/qualityIndex/qualityIndex' + import doorkeepIndex from '@/pages/doorkeeper-page/doorkeeper-index/doorkeeper-index.vue'; + import { mapState, mapMutations, mapGetters } from 'vuex'; export default { components: { customerIndex, driverIndex, freightForwarderIndex, LoadUnload, - selectTarget + qualityIndex, //鍖栭獙 + doorkeepIndex, }, computed: { ...mapState(['globalweighHouseCode', 'globalweigh', 'globalisconnect', 'globalSocket', 'websocketData', 'globalIntervalId' - ]) + ]), + ...mapGetters(['websocketData']) }, //棣栭〉涓嬫媺鍒锋柊 onPullDownRefresh() { - uni.showLoading({ title: '鍔犺浇涓�...' }); - // 鑾峰彇鍘嗗彶鎻愮叅鍗� + if(this.roleType!==6){ + uni.showLoading({ title: '鍔犺浇涓�...' }); + }else{ + this.$refs.doorkeepIndexRef.TaskCoalList() + } + // 鑾峰彇鍘嗗彶鏀跺彂鍗� if (this.roleType == 1 || this.roleType == 2) { this.$reqGet('getJhOrderPlanDataPage', { current: 1, size: 10 }).then(res => { if (res.data.records) { @@ -113,10 +120,48 @@ uni.stopPullDownRefresh(); } }); + }else if(this.roleType == 5){ + //瑁呭嵏鍛� + this.getDetailData(); } }, + // getWarehouseListFun() { + // this.$reqGet('getWarehouseList').then(res => { + // uni.hideLoading() + // if (res.code === 0) { + // if(res.data.length){ + // this.getDetailData(); + + // } + // } else { + // this.$u.toast('鍔犺浇澶辫触') + // } + // }) + // }, + onHide() { + console.log('椤甸潰闅愯棌') + }, + onUnload() { + console.log('椤甸潰鍗歌浇'); + this.$store.dispatch('websocketOnClose') + clearInterval(this.globalIntervalId); + this.changeisconnect(false) + }, + onShow() { + this.count = this.count +1; + this.init(); + this.messageReq(); + }, onLoad() { + this.$store.dispatch('websocketInit') + this.$store.commit('changeisLogin', true) + console.log(this.globalisconnect, 'index鐨剋s鏁版嵁'); + /* #ifdef MP-WEIXIN */ + this.userAuthorization(); + /* #endif */ + this.messageReq(); // 寮�鍚弻浜洪�氳瘽 + /* #ifdef MP-WEIXIN */ wx.setEnable1v1Chat({ enable: true, backgroundType: 1, @@ -131,6 +176,7 @@ console.log('寮�鍚弻浜洪�氳瘽鎴愬姛Complete'); } }); + /* #endif */ }, data() { return { @@ -138,6 +184,8 @@ orderPlanDataStore: [], indexHuoDaiOrderPlanData: [], indexHistoryCoalData: [], + count:0, + detailData:[], indexdriverBillOfLoadingData: {}, messagePushShow: false, messageList: { @@ -150,64 +198,57 @@ }; }, watch: { - '$store.state.websocketData'(v) { - console.log(v, '鎺ュ彈鐨剋s鏁版嵁'); - if (v.startsWith('weigh')) { - let nowWeighObj = JSON.parse(v.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 (v.startsWith('msg')) { - function removeTags(str) { - return str.replace(/<\/?[^>]+>/gi, ''); - } - this.messageList = JSON.parse(v.slice(5)); - this.messageList = { - ...this.messageList, - title: this.messageList.title.slice(0, 8) + '...', - content: removeTags(this.messageList.content).trim().slice(0, 8) + '...' - } - if (uni.getStorageSync('userId') === this.messageList.appUserId) { - this.messagePushShow = true; - } - } else if (v.startsWith('wsg')) { + 'websocketData': { + handler(v) { + console.log(v, '鎺ュ彈鐨剋s鏁版嵁'); + if(v) { + if (v.startsWith('weigh')) { + let nowWeighObj = JSON.parse(v.slice(7)); + if (this.globalweighHouseCode && nowWeighObj.eqCode == this.globalweighHouseCode) { + if (nowWeighObj.eqInfraredStatus) { + this.changeinfraredStatus(true); + this.changeWeigh(nowWeighObj.weigh); + let warningState = nowWeighObj.warning == 1 + this.changeWarning(warningState) + } else { + this.changeinfraredStatus(false); + this.changeWeigh(nowWeighObj.weigh); + let warningState = nowWeighObj.warning == 1 + this.changeWarning(warningState) + } + } + } else if (v.startsWith('msg')) { + function removeTags(str) { + return str.replace(/<\/?[^>]+>/gi, ''); + } + this.messageList = JSON.parse(v.slice(5)); + this.messageList = { + ...this.messageList, + title: this.messageList.title.slice(0, 8) + '...', + content: removeTags(this.messageList.content).trim().slice(0, 8) + '...' + } + this.messagePushShow = true; + } else if (v.startsWith('wsg')) { //鎻愰啋纾呮埧鏈夎溅 let wsgObj = JSON.parse(v.slice(5)); - if (uni.getStorageInfoSync('carNo') === wsgObj.carNo) { - changewsgVisiable(true) - changewsgContent(wsgObj.content) + if (uni.getStorageSync('carNo') === wsgObj.carNo && !wsgObj.peopleWeigh) { + this.changewsgVisiable(true) //纾呮埧蹇欑鐨勫脊妗嗙殑鐜伴殣钘� + this.changewsgContent(wsgObj.content) //纾呮埧蹇欑鐨勫脊妗嗙殑鍐呭鎻愮ず + } + if (uni.getStorageSync('carNo') === wsgObj.carNo && wsgObj.peopleWeigh === 2) { + this.changeconfirmWeighVisiable(true) + this.changeconfirmWeighContent(wsgObj.content) } } + } + }, + deep: true, + immediate: true } - }, - onShow() { - this.init(); - if (this.globalisconnect) { - this.$store.dispatch('websocketInit') - this.changeisconnect(false) - this.$store.commit('changeisLogin', true) - console.log(this.globalisconnect, 'index鐨剋s鏁版嵁'); - } - this.userAuthorization(); - this.messageReq(); - }, - onHide() { - console.log('椤甸潰闅愯棌') - }, - onUnload() { - console.log('椤甸潰鍗歌浇'); - this.$store.dispatch('websocketOnClose') - clearInterval(this.globalIntervalId); - this.changeisconnect(true) }, methods: { ...mapMutations(['pushMessage', 'changeWeigh', 'changeinfraredStatus', 'changeisconnect', 'websocketInit', - 'changewsgVisiable', 'changewsgContent' + 'changewsgVisiable', 'changewsgContent', 'changeconfirmWeighVisiable', 'changeconfirmWeighContent', + 'changeWarning' ]), messagePage() { uni.navigateTo({ @@ -216,6 +257,7 @@ }, init() { this.roleType = uni.getStorageSync('roleType'); + console.log(this.roleType,'this.roleType=====') switch (this.roleType) { case 1: console.log('customerIndexRef'); @@ -238,7 +280,24 @@ case 5: console.log('LoadUnloadRef'); this.$nextTick(() => { - this.$refs.LoadUnloadRef.init(); + console.log(this.count,'count') + this.$refs.LoadUnloadRef.init(); + + }); + break; + case 7: + console.log('qualityIndexRef'); + this.$nextTick(() => { + console.log(this.count,'count') + if(this.count <=1){ + this.$refs.qualityIndexRef.init(); + } + }); + break; + case 6: + console.log('doorkeepIndexRef'); + this.$nextTick(() => { + this.$refs.doorkeepIndexRef.init(); }); break; default: @@ -246,6 +305,7 @@ } }, // 瑕佹眰鐢ㄦ埛鎺堟潈鐩告満/楹﹀厠椋庢潈闄� + /* #ifdef MP-WEIXIN */ userAuthorization() { wx.getSetting({ success(res) { @@ -279,63 +339,7 @@ }, }); }, - // 鍒濆鍖杦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.changeisconnect(true); - 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 {} - }); - socket.onClose(e => { - console.log('webSocketClose', e); - this.isconnect = false; - this.changeisconnect(false); - }); - socket.onError(err => { - console.log('socket鎶ラ敊', err); - this.$u.toast('鍑虹幇閿欒锛岃閲嶆柊杩涘叆璇ラ〉闈紝閲嶈瘯锛侊紒'); - }); - }, + /* #endif */ messageconfirm() { this.messagePushShow = false; uni.navigateTo({ @@ -350,7 +354,24 @@ this.dotShow = filtermessage.length > 0; } }); - } + }, + getDetailData(){ + this.$reqGet('getTaskCoalListByBunkerId', { bunkerIds:uni.getStorageSync('bunkerIds')}).then(res => { + if (res.code === 0) { + this.detailData = res.data.map(item=>{ + item.tmTaskCoalList.map(el=>{ + el.flag = el.isPretendDischar ? false : true + return el + }) + return item; + }); + this.$u.toast('鍔犺浇鎴愬姛'); + uni.stopPullDownRefresh(); + uni.hideLoading(); + } + }) + + }, } }; </script> @@ -369,10 +390,10 @@ .search-bar { height: vww(20); - width: 96%; + width: calc(100% - 200rpx); position: absolute; top: vww(96); - right: vww(32); + right: 100rpx; z-index: 1; .icon-body { @@ -398,4 +419,4 @@ } } } -</style> \ No newline at end of file +</style> -- Gitblit v1.9.1