#
whycq
2024-03-22 cdad4619cf504f5fe079d735feea680eee3bf6ed
pages/home/orderManage.vue
@@ -1,6 +1,17 @@
<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>
@@ -8,15 +19,200 @@
   export default {
      data() {
         return {
         }
            baseUrl: '',
            token: '',
            icon: '',
            elements: [],
            project: 'tzsk',
            elements2: [
               {
                  title: '采购入库单',
                  name: 'pakin',
                  color: 'blue',
                  // cuIcon: 'pullup',
                  url: `/phyz/order/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>