From 3bc055f2ee9e813db0f08c5aefc4799be943f77f Mon Sep 17 00:00:00 2001 From: skyouc Date: 星期一, 23 十二月 2024 19:38:57 +0800 Subject: [PATCH] 添加选择机构功能 --- pages/home/home.vue | 89 ++++++++++++++++++++++++++++++++++++++++---- 1 files changed, 81 insertions(+), 8 deletions(-) diff --git a/pages/home/home.vue b/pages/home/home.vue index ab9a213..a7b8ab3 100644 --- a/pages/home/home.vue +++ b/pages/home/home.vue @@ -1,6 +1,22 @@ <template> <view> + <view class="box-bg"> + <uni-nav-bar shadow left-icon="bars" title="涓婚〉" @clickLeft="selectLoc()" /> + </view> <scroll-view scroll-y class="page"> + <view> + <uni-drawer ref="showLeft" mode="left" :width="320"> + <view> + <view> + <uni-section title="鏈烘瀯閫夋嫨" type="line"></uni-section> + </view> + <uni-list v-for="(item, index) in hosts" :key="item.id"> + <uni-list-item :title="item.name" clickable @click="itemClick(item)"></uni-list-item> + </uni-list> + </view> + + </uni-drawer> + </view> <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'}]" @@ -22,9 +38,9 @@ baseUrl: '', token: '', icon: '', + hosts: [], elements: [], - elements2: [ - { + elements2: [{ title: '缁勬墭鍏ュ簱', name: 'pakin', color: 'cyan', @@ -124,21 +140,73 @@ }, ], - colorList: ['cyan','blue','mauve','pink','brown','red','orange','yellow','olive','olive','green','grey' ] + colorList: ['cyan', 'blue', 'mauve', 'pink', 'brown', 'red', 'orange', 'yellow', 'olive', 'olive', 'green', + 'grey' + ] }; }, + onShow() { this.baseUrl = uni.getStorageSync('baseUrl'); this.token = uni.getStorageSync('token'); + + this.getCurrentHosts() this.getAuth() + }, - methods: { + + + methods: { + + + selectLoc() { + this.$refs['showLeft'].open() + }, + + closeDrawer() { + this.$refs['showLeft'].close() + + }, + + itemClick(event) { + if (event != null && event.id != null) { + this.$refs['showLeft'].close() + uni.setStorageSync('hostId', event.id) + } + }, + + getCurrentHosts() { + let that = this + uni.request({ + url: that.baseUrl + '/pda/current/host', + data: {}, + header: { + 'token': uni.getStorageSync('token') + }, + method: "GET", + success(res) { + let result = res.data + if (result.code == 200) { + that.hosts = result.data; + if (uni.getStorageSync('hostId') == null || uni.getStorageSync('hostId') == '') { + that.$refs['showLeft'].open() + } + } + }, + fail(res) { + + } + }) + }, + getAuth() { let that = this uni.request({ url: that.baseUrl + '/menu/pda/auth', data: {}, - header: { 'token': uni.getStorageSync('token') }, + header: { + 'token': uni.getStorageSync('token') + }, method: 'POST', success(res) { res = res.data @@ -179,7 +247,7 @@ url: '../login/login' }); }, 1000); - } else if(res.status === 404) { + } else if (res.status === 404) { that.elements = that.elements2 // uni.showToast({ // title: '榛樿涓婚〉', @@ -199,8 +267,9 @@ } }) }, + getIcon(e) { - const ways = ['pakin','orderPakin','orderPutOn'] + const ways = ['pakin', 'orderPakin', 'orderPutOn'] if (ways.includes(e)) { this.icon = 'pullup' } @@ -209,7 +278,11 @@ } </script> -<style> +<style> + .uni-section{ + margin-top: 0rpx; + } + .page { height: 100vh; } -- Gitblit v1.9.1