personInfo.vue 2.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106
  1. <template>
  2. <view class="container">
  3. <view class="content" v-if="pageData">
  4. <view class="content-item">
  5. <text>员工姓名</text>
  6. <view>{{pageData.name}}</view>
  7. </view>
  8. <view class="content-item">
  9. <text>手机号码</text>
  10. <view>{{pageData.phone}}</view>
  11. </view>
  12. <view class="content-item">
  13. <text>性别</text>
  14. <view>{{pageData.sex}}</view>
  15. </view>
  16. <view class="content-item">
  17. <text>角色</text>
  18. <view>{{pageData.roles | filterRoles}}</view>
  19. </view>
  20. <view class="content-item">
  21. <text>所属机构</text>
  22. <view>{{pageData.orgCodePaths}}</view>
  23. </view>
  24. <view class="content-item">
  25. <text>可点检门店</text>
  26. <view style="color: #007AFF;" @click="viewStores">
  27. {{pageData.userStoreList&&pageData.userStoreList.length}}个 <u-icon name="icon-xian-11" custom-prefix="xd-icon" size="28" color="#888888"></u-icon>
  28. </view>
  29. </view>
  30. </view>
  31. <view v-else>
  32. <view class="loadingStyle">
  33. <u-loading mode="circle"></u-loading>
  34. <view>正在加载</view>
  35. </view>
  36. </view>
  37. </view>
  38. </template>
  39. <script>
  40. import { findUserInfo } from '@/api/user.js'
  41. export default{
  42. data(){
  43. return{
  44. pageData:null, // 接受上个页面传的数据
  45. }
  46. },
  47. onShow() {
  48. this.getDetail()
  49. },
  50. // 判断员工性别
  51. filters: {
  52. filterRoles(val){
  53. if(val){
  54. let arr = []
  55. val.map(item => {
  56. arr.push(item.name)
  57. })
  58. return arr.join(',')
  59. }
  60. }
  61. },
  62. methods:{
  63. // 查询详细信息
  64. getDetail(){
  65. findUserInfo().then(res => {
  66. this.pageData = res.data || null
  67. })
  68. },
  69. viewStores(){
  70. let item = this.pageData.userStoreList
  71. if(item.length>0){
  72. uni.navigateTo({
  73. url: '/pages/userCenter/viewStores?item='+encodeURIComponent(JSON.stringify(item))
  74. })
  75. }
  76. }
  77. }
  78. }
  79. </script>
  80. <style lang="less">
  81. .loadingStyle{
  82. text-align: center;
  83. padding: 10vh 0 10vh 0;
  84. }
  85. .container{
  86. color:#666;
  87. font-size: 28rpx;
  88. .content{
  89. position: relative;
  90. background-color: #FFFFFF;
  91. margin-bottom: 60rpx;
  92. .content-item{
  93. display: flex;
  94. justify-content: space-between;
  95. padding: 30rpx;
  96. border-bottom: 1px solid #e5e5e5;
  97. > view{
  98. color: #666;
  99. }
  100. }
  101. }
  102. }
  103. </style>