<template>
|
<view>
|
<scroll-view scroll-y class="page">
|
<view class="nav-list">
|
<navigator hover-class='none' :url="'/pages' + item.url" class="nav-li" navigateTo
|
:class="'bg-'+item.color" :style="[{animation: 'show ' + ((index+1)*0.2+1) + 's 1'}]"
|
v-for="(item,index) in elements" :key="index">
|
<view class="nav-title">{{item.title}}</view>
|
<view class="nav-name">{{item.name}}</view>
|
<text :class="'cuIcon-' + item.cuIcon"></text>
|
</navigator>
|
</view>
|
<view class="cu-tabbar-height"></view>
|
</scroll-view>
|
</view>
|
</template>
|
|
<script>
|
export default {
|
data() {
|
return {
|
baseUrl: '',
|
token: '',
|
icon: '',
|
elements: [],
|
project: 'tzsk',
|
elements2: [
|
{
|
title: '采购入库单',
|
name: 'purchaseOrder',
|
color: 'blue',
|
// cuIcon: 'pullup',
|
url: `/phyz/AGV/purchaseOrder`
|
},
|
],
|
colorList: ['cyan','blue','purple','mauve','pink','brown','red','orange','yellow','olive','olive','grey' ]
|
};
|
},
|
onShow() {
|
this.baseUrl = uni.getStorageSync('baseUrl');
|
this.token = uni.getStorageSync('token');
|
this.project = uni.getStorageSync('project')
|
this.getAuth()
|
this.backGroundRepeat()
|
},
|
methods: {
|
backGroundRepeat() {
|
let len = this.colorList.length
|
let i = 0
|
for (let k in this.elements2) {
|
if (i == len) {
|
i = 0
|
}
|
this.elements2[k].color = this.colorList[i]
|
i++
|
}
|
},
|
getAuth() {
|
let that = this
|
uni.request({
|
url: that.baseUrl + '/menu/pda/auth',
|
data: {},
|
header: { 'token': uni.getStorageSync('token') },
|
method: 'POST',
|
success(res) {
|
console.log(res);
|
if (res.statusCode === 404) {
|
that.elements = that.elements2
|
return
|
}
|
res = res.data
|
that.elements = []
|
if (res.code === 200) {
|
if (res.data == undefined || res.data == null || res.data == "") {
|
that.elements = that.elements2
|
return
|
}
|
for (var i = 0; i < res.data.length; i++) {
|
if (res.data.length < 0) {
|
break;
|
}
|
that.getIcon(res.data[i].title)
|
that.elements.unshift({
|
title: res.data[i].name,
|
name: res.data[i].title,
|
color: that.colorList[i],
|
cuIcon: that.icon,
|
url: `/${that.project}${res.data[i].action}`
|
})
|
}
|
that.elements.push({
|
title: '退出登录',
|
name: 'logOut',
|
color: 'grey',
|
cuIcon: 'exit',
|
url: '/login/logOut'
|
})
|
} else if (res.code === 403) {
|
uni.showToast({
|
title: res.msg,
|
icon: "none",
|
position: 'top'
|
})
|
setTimeout(() => {
|
uni.reLaunch({
|
url: '../login/login'
|
});
|
}, 1000);
|
} else if(res.status === 404) {
|
that.elements = that.elements2
|
// uni.showToast({
|
// title: '默认主页',
|
// icon: "none",
|
// position: 'top'
|
// })
|
} else {
|
uni.showToast({
|
title: res.msg,
|
icon: "none",
|
position: 'top'
|
})
|
}
|
},
|
fail(err) {
|
console.log(err);
|
}
|
})
|
},
|
getIcon(e) {
|
const ways = ['pakin','orderPakin','orderPutOn']
|
if (ways.includes(e)) {
|
this.icon = 'pullup'
|
}
|
}
|
}
|
}
|
</script>
|
|
<style>
|
.page {
|
height: 100vh;
|
}
|
|
.bg-red {
|
background-color: #e54d42;
|
color: #ffffff;
|
}
|
|
.bg-orange {
|
background-color: #f37b1d;
|
color: #ffffff;
|
}
|
|
.bg-yellow {
|
background-color: #fbbd08;
|
color: #333333;
|
}
|
|
.bg-olive {
|
background-color: #8dc63f;
|
color: #ffffff;
|
}
|
|
.bg-green {
|
background-color: #39b54a;
|
color: #ffffff;
|
}
|
|
.bg-cyan {
|
background-color: #1cbbb4;
|
color: #ffffff;
|
}
|
|
.bg-blue {
|
background-color: #0081ff;
|
color: #ffffff;
|
}
|
|
.bg-purple {
|
background-color: #6739b6;
|
color: #ffffff;
|
}
|
|
.bg-mauve {
|
background-color: #9c26b0;
|
color: #ffffff;
|
}
|
|
.bg-pink {
|
background-color: #e03997;
|
color: #ffffff;
|
}
|
|
.bg-brown {
|
background-color: #a5673f;
|
color: #ffffff;
|
}
|
|
.bg-grey {
|
background-color: #8799a3;
|
color: #ffffff;
|
}
|
|
.bg-gray {
|
background-color: #f0f0f0;
|
color: #333333;
|
}
|
|
.bg-black {
|
background-color: #333333;
|
color: #ffffff;
|
}
|
|
.bg-white {
|
background-color: #ffffff;
|
color: #666666;
|
}
|
</style>
|