apply-item.vue 2.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108
  1. <template>
  2. <view class="apply-item" @tap="tapItemHandle">
  3. <view class="apply-item-tag"
  4. :class="[`apply-item-tag${item.status}`]">待签到</view>
  5. <view class="flex-row">
  6. <u-image class="apply-item-image1" width="51.2rpx" height="51.2rpx" bgColor="transparent"
  7. src="@/pages/subpack/static/images/app/avatar-mini.png" />
  8. <view class="apply-item-name">张三🤩</view>
  9. </view>
  10. <view class="apply-item-content">
  11. <view class="flex-row align-center">
  12. <u-image class="apply-item-image2" width="36rpx" height="36rpx" bgColor="transparent"
  13. src="@/pages/subpack/static/images/app/time-icon.png" />
  14. <view class="apply-item-tips">
  15. <text>事项:</text>
  16. <text>企业设立、变更、注销登记</text>
  17. </view>
  18. </view>
  19. <view class="flex-row align-center mt-08">
  20. <u-image class="apply-item-image2" width="36rpx" height="36rpx" bgColor="transparent"
  21. src="@/pages/subpack/static/images/app/cat-icon.png" />
  22. <view class="apply-item-tips1">
  23. <text>预约时间:</text>
  24. <text>2024.09.09 11:00-12:00</text>
  25. </view>
  26. </view>
  27. </view>
  28. </view>
  29. </template>
  30. <script setup>
  31. const emit = defineEmits(['tapItem'])
  32. const props = defineProps({
  33. item: {
  34. type: Object,
  35. default () {
  36. return {
  37. personName: '张三🤩', //申请人姓名
  38. careNeeds: 'sdasad', //护理需求详情
  39. applyDate: '2025-01-01 12:23:12', //申请日期
  40. status: 1, //申请状态
  41. dealStatus: 1, //处理状态
  42. }
  43. }
  44. },
  45. })
  46. const tapItemHandle = () => {
  47. emit('tapItem', props.item)
  48. }
  49. </script>
  50. <style lang="scss" scoped>
  51. :deep(.u-image) {
  52. display: flex;
  53. align-items: center;
  54. justify-content: center;
  55. }
  56. .apply-item {
  57. position: relative;
  58. background-color: #fff;
  59. margin: 24rpx;
  60. padding: 30rpx;
  61. border-radius: 20rpx;
  62. &-tag {
  63. position: absolute;
  64. right: 0;
  65. top: 0;
  66. font-size: 28rpx;
  67. color: #FFFFFF;
  68. background: linear-gradient(to right, #00D885 0%, #2CEFA4 100%);
  69. padding: 6rpx 24rpx;
  70. border-radius: 0 20rpx 0 20rpx;
  71. font-weight: 500;
  72. }
  73. &-tag1{
  74. background: linear-gradient(to right, #EFEFEF 0%, #EFEFEF 100%);
  75. color: #888888;
  76. }
  77. &-tag2{
  78. background: linear-gradient(to right, #1677FF 0%, #5EA0FB 100%);
  79. }
  80. &-name {
  81. font-size: 32rpx;
  82. color: #222222;
  83. margin-left: 20rpx;
  84. }
  85. &-content {
  86. margin-top: 20rpx;
  87. }
  88. &-tips {
  89. margin-left: 15rpx;
  90. font-size: 28rpx;
  91. color: #444444;
  92. }
  93. &-tips1 {
  94. margin-left: 15rpx;
  95. font-size: 24rpx;
  96. color: #444444;
  97. }
  98. }
  99. </style>