| <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> | 
|             <view style="height: 50rpx;"></view> | 
|         </scroll-view> | 
|     </view> | 
| </template> | 
|   | 
| <script> | 
|     export default { | 
|         data() { | 
|             return { | 
|                 baseUrl: '', | 
|                 token: '', | 
|                 icon: '', | 
|                 elements: [], | 
|                 project: 'tzsk', | 
|                 elements2: [ | 
|                     { | 
|                         title: '库位盘点维护', | 
|                         name: 'checkLocDetl', | 
|                         color: 'blue', | 
|                         // cuIcon: 'pullup', | 
|                         url: `/phyz/checkLocDetl/checkLocDetl` | 
|                     }, | 
|                     { | 
|                         title: '库位盘点', | 
|                         name: 'checkLocDetl', | 
|                         color: 'blue', | 
|                         // cuIcon: 'pullup', | 
|                         url: `/phyz/checkLocDetl/checkLocDetl2` | 
|                     }, | 
|                     { | 
|                         title: '移库', | 
|                         name: 'locMove', | 
|                         color: 'blue', | 
|                         // cuIcon: 'pullup', | 
|                         url: `/phyz/checkLocDetl/locMove` | 
|                     }, | 
|                      | 
|                 ], | 
|                 menu: [], | 
|                 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() | 
|         // }, | 
|         onLoad(option) { | 
|             this.baseUrl = uni.getStorageSync('baseUrl'); | 
|             this.token = uni.getStorageSync('token'); | 
|             this.project = uni.getStorageSync('project') | 
|             this.menu = uni.getStorageSync('menu'); | 
|             this.getAuth2(option.id) | 
|             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++ | 
|                 } | 
|             }, | 
|             getAuth2(id) { | 
|                 let secMenu = [] | 
|                 for (let k of this.menu) { | 
|                     if (id == k.id) { | 
|                         secMenu = k.children | 
|                     } | 
|                 } | 
|                 for (let i in secMenu) { | 
|                     this.getIcon(secMenu[i].title) | 
|                     this.elements.unshift({ | 
|                         title: secMenu[i].name, | 
|                         name: secMenu[i].title, | 
|                         color: this.colorList[i], | 
|                         cuIcon: this.icon, | 
|                         id: secMenu[i].id, | 
|                         url: `${secMenu[i].code}` | 
|                     }) | 
|                 } | 
|             }, | 
|             getAuth(id) { | 
|                 let that = this | 
|                 uni.request({ | 
|                     url: that.baseUrl + '/menu/pda/auth', | 
|                     data: {level:2 ,id: id}, | 
|                     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: `${res.data[i].code}` | 
|                                 }) | 
|                             } | 
|                         } 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> |