You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

128 lines
4.4 KiB

<template>
<view>
<view class="cu-bar fixed" :class="[NavBarColor]" :style="style" >
<view class="cuIcon-back margin-left" @tap="backRoute()"><text class="margin-left-sm">返回</text></view>
<view class="content" :style="[{top:StatusBar + 'px'}]">
{{ memberTitle }}
</view>
</view>
<!-- 展示部门和用户 -->
<view class="cu-list menu-avatar sm-border" :style="[{marginTop:'calc('+CustomBar+ 'px + 10px)'}]">
<view class="cu-item" v-for="(item, index) in memberList" :key="index" @click="goMemberInfo(item)">
<view class="cu-avatar round lg" :style="[{backgroundImage:'url('+ item.avatar +')'}]"></view>
<view class="content">
<view class="text-grey">{{item.realname}}</view>
<view class="text-grey">{{item.post}}</view>
</view>
</view>
<view class="text-center text-lg"><text>{{ memberTotal}}</text></view>
</view>
</view>
</template>
<script>
import { getFileAccessHttpUrl } from "../../api/api.js"
export default {
name: "member",
data(){
return{
CustomBar:this.CustomBar,
StatusBar:this.StatusBar,
NavBarColor:this.NavBarColor,
departUrl:'/sys/sysDepart/queryTreeList',
addressSourceUrl:'/sys/user/queryByOrgCodeForAddressList',
queryByOrgCodeKeyword:'/sys/user/queryByOrgCodeKeyword',
positionUrl:'/sys/position/list',
value:'',
memberTitle:'',
memberList:[],
userId:'',
orgCode:'',
ids:{},
memberTotal:0,
}
},
onLoad(){
console.log("this.$Router", this.$Route);
this.memberTitle = this.$Route.query.title
this.orgCode = this.$Route.query.orgCode
this.loadList()
},
computed:{
style() {
var StatusBar= this.StatusBar;
var CustomBar= this.CustomBar;
var style = `height:${CustomBar}px;padding-top:${StatusBar}px;`;
return style
}
},
methods: {
backRoute() {
this.$Router.push({name: 'levelAddressBook',params:this.$Route.query})
},
goMemberInfo(item){
let parmas = {...item}
parmas.orgCode= this.orgCode
this.$Router.push({name: 'addressDetail',params:parmas})
},
loadList() {
let param = {
orgCode:this.orgCode,
realname:this.value
}
this.$http.get(this.addressSourceUrl,{params:param}).then(res => {
console.log("用户2", res)
if (res.data.success) {
let memberArr = res.data.result.records;
//memberArr = memberArr.filter(item => item.departName == this.memberTitle)
for (let item of memberArr) {
this.avatarHandler(item);
this.memberList.push(item)
// this.userId = item.userId
this.memberTotal = memberArr.length
if (this.memberTotal == undefined){
this.memberTotal = 0
}
}
}
}).catch(e => {
console.log("请求错误", e)
})
this.$http.get(this.positionUrl).then(res=> {
console.log("用户1",res)
if (res.data.success) {
let postArr = res.data.result.records
for (let item of postArr ){
for (let it of this.memberList){
if (it.post == item.code){
it.post = item.name
}
}
}
}
}).catch(e=>{
console.log("请求错误",e)
})
},
avatarHandler(item){
let avatar = item.avatar
if(avatar){
let url = getFileAccessHttpUrl(avatar);
item.avatar = url
}else{
if(item.sex=='2'){
item.avatar = 'static/avatar_girl.png';
}else{
item.avatar = 'static/avatar_boy.png';
}
}
},
}
}
</script>
<style scoped>
</style>