路线锁定定时提示弹窗
This commit is contained in:
36
main.js
36
main.js
@@ -25,6 +25,42 @@ Vue.directive('enterNumber', {
|
|||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
|
// 全局计时
|
||||||
|
Vue.prototype.$globalData = {
|
||||||
|
timer: null,
|
||||||
|
timerDuration: 20, // 假设是60秒
|
||||||
|
startTimer: function() {
|
||||||
|
const self = this;
|
||||||
|
self.timer = setInterval(function() {
|
||||||
|
self.timerDuration--;
|
||||||
|
console.log('剩余时间:' + self.timerDuration + '秒');
|
||||||
|
if (self.timerDuration <= 0) {
|
||||||
|
clearInterval(self.timer);
|
||||||
|
self.timerDuration = 20;
|
||||||
|
console.log('计时器结束1');
|
||||||
|
uni.showModal({
|
||||||
|
title: '提示',
|
||||||
|
showCancel: false,
|
||||||
|
content: '路线锁定未释放,请操作完成再退出!',
|
||||||
|
success: (res) => {
|
||||||
|
if (res.confirm) {
|
||||||
|
Vue.prototype.$globalData.startTimer()
|
||||||
|
}
|
||||||
|
}
|
||||||
|
})
|
||||||
|
}
|
||||||
|
}, 1000);
|
||||||
|
},
|
||||||
|
stopTimer: function() {
|
||||||
|
if (this.timer) {
|
||||||
|
clearInterval(this.timer);
|
||||||
|
console.log('计时器结束2');
|
||||||
|
this.timer = null;
|
||||||
|
this.timerDuration = 20;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
import store from '@/vuex/store.js'
|
import store from '@/vuex/store.js'
|
||||||
|
|
||||||
const app = new Vue({
|
const app = new Vue({
|
||||||
|
|||||||
@@ -64,10 +64,19 @@
|
|||||||
})
|
})
|
||||||
},
|
},
|
||||||
Quit () {
|
Quit () {
|
||||||
this.$store.dispatch('delUserInfo', '')
|
if (this.$store.getters.routeStatus) {
|
||||||
uni.redirectTo({
|
uni.showModal({
|
||||||
url: '/pages/login/login'
|
title: '提示',
|
||||||
})
|
showCancel: false,
|
||||||
|
content: '路线锁定未释放,请操作完成再退出!'
|
||||||
|
})
|
||||||
|
return
|
||||||
|
}
|
||||||
|
this.$store.dispatch('delUserInfo', '')
|
||||||
|
this.$globalData.stopTimer()
|
||||||
|
uni.redirectTo({
|
||||||
|
url: '/pages/login/login'
|
||||||
|
})
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -53,6 +53,7 @@
|
|||||||
this.versionCode = info.versionCode ;
|
this.versionCode = info.versionCode ;
|
||||||
})
|
})
|
||||||
//#endif
|
//#endif
|
||||||
|
this.$globalData.stopTimer()
|
||||||
},
|
},
|
||||||
methods: {
|
methods: {
|
||||||
isUpdate () {
|
isUpdate () {
|
||||||
|
|||||||
@@ -28,6 +28,7 @@
|
|||||||
import NavBar from '@/components/NavBar.vue'
|
import NavBar from '@/components/NavBar.vue'
|
||||||
import SearchBox from '@/components/SearchBox.vue'
|
import SearchBox from '@/components/SearchBox.vue'
|
||||||
import {updateRouteStatus} from '@/utils/getData2.js'
|
import {updateRouteStatus} from '@/utils/getData2.js'
|
||||||
|
// import {updateRouteStatus} from '@/utils/mork2.js'
|
||||||
export default {
|
export default {
|
||||||
components: {
|
components: {
|
||||||
NavBar,
|
NavBar,
|
||||||
@@ -78,6 +79,14 @@
|
|||||||
title: res.message,
|
title: res.message,
|
||||||
icon: 'none'
|
icon: 'none'
|
||||||
})
|
})
|
||||||
|
this.$globalData.stopTimer()
|
||||||
|
if (type === '1') {
|
||||||
|
this.$store.dispatch('setRouteStatus', true)
|
||||||
|
this.$globalData.startTimer()
|
||||||
|
} else {
|
||||||
|
this.$store.dispatch('delRouteStatus', false)
|
||||||
|
this.$globalData.stopTimer()
|
||||||
|
}
|
||||||
} catch (e) {
|
} catch (e) {
|
||||||
this.disabled = false
|
this.disabled = false
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -19,4 +19,10 @@ export const fabOrders = (data) => {
|
|||||||
{order_code: '111'}
|
{order_code: '111'}
|
||||||
]
|
]
|
||||||
return res
|
return res
|
||||||
|
}
|
||||||
|
export const updateRouteStatus = (data) => {
|
||||||
|
let res = {
|
||||||
|
message: 'ok'
|
||||||
|
}
|
||||||
|
return res
|
||||||
}
|
}
|
||||||
@@ -1,11 +1,13 @@
|
|||||||
import * as types from '../types'
|
import * as types from '../types'
|
||||||
const state = {
|
const state = {
|
||||||
publicObj: '',
|
publicObj: '',
|
||||||
publicArr: ''
|
publicArr: '',
|
||||||
|
routeStatus: uni.getStorageSync('routeStatus') || false
|
||||||
}
|
}
|
||||||
const getters = {
|
const getters = {
|
||||||
publicObj: state => state.publicObj,
|
publicObj: state => state.publicObj,
|
||||||
publicArr: state => state.publicArr
|
publicArr: state => state.publicArr,
|
||||||
|
routeStatus: state => state.routeStatus
|
||||||
}
|
}
|
||||||
const actions = {
|
const actions = {
|
||||||
setPublicObj ({commit}, res) {
|
setPublicObj ({commit}, res) {
|
||||||
@@ -13,7 +15,15 @@ const actions = {
|
|||||||
},
|
},
|
||||||
setPublicArr ({commit}, res) {
|
setPublicArr ({commit}, res) {
|
||||||
commit(types.PUBLIC_ARR, res)
|
commit(types.PUBLIC_ARR, res)
|
||||||
}
|
},
|
||||||
|
setRouteStatus ({commit}, res) {
|
||||||
|
uni.setStorageSync('routeStatus', res)
|
||||||
|
commit(types.SET_ROUTE_STATUS, res)
|
||||||
|
},
|
||||||
|
delRouteStatus ({commit}, res) {
|
||||||
|
uni.removeStorageSync('routeStatus', res)
|
||||||
|
commit(types.DEL_ROUTE_STATUS, res)
|
||||||
|
},
|
||||||
}
|
}
|
||||||
const mutations = {
|
const mutations = {
|
||||||
[types.PUBLIC_OBJ] (state, res) {
|
[types.PUBLIC_OBJ] (state, res) {
|
||||||
@@ -21,6 +31,12 @@ const mutations = {
|
|||||||
},
|
},
|
||||||
[types.PUBLIC_ARR] (state, res) {
|
[types.PUBLIC_ARR] (state, res) {
|
||||||
state.publicArr = res
|
state.publicArr = res
|
||||||
|
},
|
||||||
|
[types.SET_ROUTE_STATUS] (state, res) {
|
||||||
|
state.routeStatus = res
|
||||||
|
},
|
||||||
|
[types.DEL_ROUTE_STATUS] (state, res) {
|
||||||
|
state.routeStatus = res
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
export default {
|
export default {
|
||||||
|
|||||||
@@ -12,4 +12,6 @@ export const SAVE_TOKEN = 'SAVE_TOKEN'
|
|||||||
* data
|
* data
|
||||||
*/
|
*/
|
||||||
export const PUBLIC_OBJ = 'PUBLIC_OBJ'
|
export const PUBLIC_OBJ = 'PUBLIC_OBJ'
|
||||||
export const PUBLIC_ARR = 'PUBLIC_ARR'
|
export const PUBLIC_ARR = 'PUBLIC_ARR'
|
||||||
|
export const SET_ROUTE_STATUS = 'SET_ROUTE_STATUS'
|
||||||
|
export const DEL_ROUTE_STATUS = 'DEL_ROUTE_STATUS'
|
||||||
Reference in New Issue
Block a user