infoPage.vue 3.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144
  1. <!-- 进出记录 -->
  2. <template>
  3. <view class="record-list-page">
  4. <view class="for-min-box">
  5. <view class="top-name-box">
  6. <view class="position-left"></view>
  7. <img v-if="minItem.avatar" :src="baseUrl+minItem.avatar">
  8. <img v-else src="@/pages_basics/images/icon_01.png">
  9. <view class="top-name-p">{{minItem.userName}}</view>
  10. <view class="top-type-p"
  11. :class="minItem.accessStatus==1?'colorA':(minItem.accessStatus==2?'colorB':(minItem.accessStatus==3?'colorC':''))">
  12. {{minItem.accessStatusStr}}
  13. </view>
  14. <view class="position-right"></view>
  15. </view>
  16. <view class="titme-bottom-p">签到时间:{{minItem.inTime?minItem.inTime:'-'}}</view>
  17. <view class="titme-bottom-p">离开时间:{{minItem.outTime?minItem.outTime:'-'}}</view>
  18. <view class="titme-bottom-p">停留时间:{{minItem.hoursMinutes?minItem.hoursMinutes:'-'}}</view>
  19. </view>
  20. <view v-if="imgDataList[0]">
  21. <view>检查项</view>
  22. <view v-for="(item,index) in imgDataList" :key="index">
  23. </view>
  24. </view>
  25. </view>
  26. </template>
  27. <script>
  28. import {
  29. laboratoryAppletPhotoInspectList
  30. } from '@/pages_basics/api/index.js'
  31. export default {
  32. data() {
  33. return {
  34. minItem: null,
  35. imgDataList:[],
  36. }
  37. },
  38. onLoad(option) {
  39. this.minItem = JSON.parse(decodeURIComponent(option.item));
  40. },
  41. onShow() {
  42. this.laboratoryAppletPhotoInspectList();
  43. },
  44. methods: {
  45. //查询实验室
  46. async laboratoryAppletPhotoInspectList() {
  47. let self = this;
  48. const {
  49. data
  50. } = await laboratoryAppletPhotoInspectList({passOutId:this.minItem.passOutId});
  51. if (data.code == 200) {
  52. this.$set(this,'imgDataList',data.data);
  53. }
  54. },
  55. }
  56. }
  57. </script>
  58. <style lang="stylus" scoped>
  59. .record-list-page {
  60. height: 100%;
  61. .for-min-box {
  62. background: #fff;
  63. margin: 32rpx;
  64. padding-bottom: 30rpx;
  65. .top-name-box {
  66. position: relative;
  67. display: flex;
  68. border-bottom: 1rpx dashed #dedede;
  69. margin-bottom: 30rpx;
  70. img {
  71. width: 70rpx;
  72. height: 70rpx;
  73. border-radius: 50%;
  74. margin: 27rpx 31rpx 33rpx 31rpx;
  75. }
  76. .top-name-p {
  77. line-height: 130rpx;
  78. font-size: 28rpx;
  79. flex: 1;
  80. display: block;
  81. overflow: hidden;
  82. text-overflow: ellipsis;
  83. white-space: nowrap;
  84. }
  85. .top-type-p {
  86. line-height: 130rpx;
  87. margin-right: 40rpx;
  88. font-size: 28rpx;
  89. display: block;
  90. overflow: hidden;
  91. text-overflow: ellipsis;
  92. white-space: nowrap;
  93. }
  94. .colorA {
  95. color: #0183FA;
  96. }
  97. .colorB {
  98. color: #999999;
  99. }
  100. .colorC {
  101. color: #FA5801;
  102. }
  103. .position-left {
  104. position: absolute;
  105. left: -15rpx;
  106. top: 114rpx;
  107. width: 30rpx;
  108. height: 30rpx;
  109. background: #f5f5f5;
  110. border-radius: 15rpx;
  111. }
  112. .position-right {
  113. position: absolute;
  114. right: -15rpx;
  115. top: 114rpx;
  116. width: 30rpx;
  117. height: 30rpx;
  118. background: #f5f5f5;
  119. border-radius: 15rpx;
  120. }
  121. }
  122. .titme-bottom-p {
  123. line-height: 50rpx;
  124. font-size: 28rpx;
  125. margin: 0 32rpx;
  126. }
  127. }
  128. }
  129. </style>