|  |  |  | 
|---|
|  |  |  | <template> | 
|---|
|  |  |  | <view> | 
|---|
|  |  |  | <view class="container"> | 
|---|
|  |  |  | <view class="name all" @click="back(all)">{{all.title}}</view> | 
|---|
|  |  |  | </view> | 
|---|
|  |  |  | <view class="container" v-for="(item,i) in tree" :key="i"> | 
|---|
|  |  |  | <view :class="item.key"> | 
|---|
|  |  |  | <view class="title" v-show="item.key == 'dept_id'"  @click="switchbtn(item)"> | 
|---|
|  |  |  | <view>{{item.title}}</view> | 
|---|
|  |  |  | <view > | 
|---|
|  |  |  | <view class="title" v-show="item.key == 'dept_id'" > | 
|---|
|  |  |  | <view @click="back(item)">{{item.title}}</view> | 
|---|
|  |  |  | <view @click="switchbtn(item)"> | 
|---|
|  |  |  | <uni-icons type="top" v-show="item.switch"></uni-icons> | 
|---|
|  |  |  | <uni-icons type="bottom" v-show="!item.switch"></uni-icons> | 
|---|
|  |  |  | </view> | 
|---|
|  |  |  | </view> | 
|---|
|  |  |  | <view class="name" v-show="item.key == 'user_id'" @click="back()"> | 
|---|
|  |  |  | <view class="name" v-show="item.key == 'user_id'" @click="back(item)"> | 
|---|
|  |  |  | <view>{{item.title}}</view> | 
|---|
|  |  |  | </view> | 
|---|
|  |  |  | <view class="sub1" v-for="sub in item.children" style="margin-left: 1em;" v-show="item.switch"> | 
|---|
|  |  |  | <view :class="sub.key" class="title sub-title" v-show="sub.key == 'dept_id'"  @click="switchbtn(sub)"> | 
|---|
|  |  |  | <view>{{sub.title}}</view> | 
|---|
|  |  |  | <view> | 
|---|
|  |  |  | <view :class="sub.key" class="title sub-title" v-show="sub.key == 'dept_id'"  > | 
|---|
|  |  |  | <view @click="back(sub)">{{sub.title}}</view> | 
|---|
|  |  |  | <view @click="switchbtn(sub)"> | 
|---|
|  |  |  | <!-- <uni-icons type="bottom"></uni-icons> --> | 
|---|
|  |  |  | <uni-icons type="top" v-show="sub.switch"></uni-icons> | 
|---|
|  |  |  | <uni-icons type="bottom" v-show="!sub.switch"></uni-icons> | 
|---|
|  |  |  | </view> | 
|---|
|  |  |  | </view> | 
|---|
|  |  |  |  | 
|---|
|  |  |  | <view :class="sub.key" class="name" v-show="sub.key == 'user_id'"  @click="back()"> | 
|---|
|  |  |  | <view>{{sub.title}}</view> | 
|---|
|  |  |  | <view :class="sub.key" class="name" v-show="sub.key == 'user_id'" > | 
|---|
|  |  |  | <view  @click="back(sub)">{{sub.title}}</view> | 
|---|
|  |  |  | </view> | 
|---|
|  |  |  |  | 
|---|
|  |  |  | <view class="sub2" v-for="it in sub.children" style="margin-left: 1em;" v-show="sub.switch"> | 
|---|
|  |  |  | <view :class="it.key" class="title sub-title" v-show="it.key == 'dept_id'">{{it.title}}</view> | 
|---|
|  |  |  | <view :class="it.key" class="name" v-show="it.key == 'user_id'" @click="back()"> | 
|---|
|  |  |  | <view>{{it.title}}</view> | 
|---|
|  |  |  | <view :class="it.key" class="name" v-show="it.key == 'user_id'" > | 
|---|
|  |  |  | <view @click="back(it)">{{it.title}}</view> | 
|---|
|  |  |  | </view> | 
|---|
|  |  |  | </view> | 
|---|
|  |  |  | </view> | 
|---|
|  |  |  | 
|---|
|  |  |  | export default { | 
|---|
|  |  |  | data() { | 
|---|
|  |  |  | return { | 
|---|
|  |  |  | tree: [{title: '超级管理员'}] | 
|---|
|  |  |  | tree: [{title: '超级管理员'}], | 
|---|
|  |  |  | all: {} | 
|---|
|  |  |  | } | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | onShow() { | 
|---|
|  |  |  | 
|---|
|  |  |  | let res = await user.getUserTree() | 
|---|
|  |  |  | if (res.code === 200) { | 
|---|
|  |  |  | this.tree = [] | 
|---|
|  |  |  | this.all = [] | 
|---|
|  |  |  |  | 
|---|
|  |  |  | console.log(res.data[0]); | 
|---|
|  |  |  | // this.all = res.data[0] | 
|---|
|  |  |  | if (res.data[0].children) { | 
|---|
|  |  |  | for (let k of res.data[0].children) { | 
|---|
|  |  |  |  | 
|---|
|  |  |  | if (k.children && k.children.length > 0) { | 
|---|
|  |  |  | for (let i of k.children) { | 
|---|
|  |  |  | i['switch'] = true | 
|---|
|  |  |  | console.log(i); | 
|---|
|  |  |  | // console.log(i); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | } | 
|---|
|  |  |  | // console.log(k); | 
|---|
|  |  |  | 
|---|
|  |  |  | } else { | 
|---|
|  |  |  | this.tree.push(res.data[0]) | 
|---|
|  |  |  | } | 
|---|
|  |  |  | this.all = res.data[0] | 
|---|
|  |  |  | } else if (res.code === 403) { | 
|---|
|  |  |  | this.backLogin(res) | 
|---|
|  |  |  | } | 
|---|
|  |  |  | console.log(this.tree); | 
|---|
|  |  |  | // console.log(this.tree); | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | switchbtn(item) { | 
|---|
|  |  |  | console.log(item); | 
|---|
|  |  |  | item.switch = item.switch ? false : true | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | open(e) { | 
|---|
|  |  |  | 
|---|
|  |  |  | }); | 
|---|
|  |  |  | }, 1000); | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | back() { | 
|---|
|  |  |  | uni.$emit('isRefresh', 1) | 
|---|
|  |  |  | back(it) { | 
|---|
|  |  |  | uni.$emit('isRefresh', it) | 
|---|
|  |  |  | uni.navigateBack({ | 
|---|
|  |  |  |  | 
|---|
|  |  |  | }) | 
|---|
|  |  |  | 
|---|
|  |  |  | </script> | 
|---|
|  |  |  |  | 
|---|
|  |  |  | <style> | 
|---|
|  |  |  | .all { | 
|---|
|  |  |  | box-shadow: -4px 0px 0px #55aaff; | 
|---|
|  |  |  | font-size: 15px; | 
|---|
|  |  |  | font-weight: 700; | 
|---|
|  |  |  | margin-left: 10rpx; | 
|---|
|  |  |  | display: flex; | 
|---|
|  |  |  | justify-content: space-between; | 
|---|
|  |  |  | align-items: center; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | .container { | 
|---|
|  |  |  | margin:  16rpx; | 
|---|
|  |  |  | min-height: 35rpx; | 
|---|