index.vue 3.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106
  1. <route lang="yaml">
  2. style:
  3. navigationBarTitleText: 全部任务
  4. navigationBarBackgroundColor: '#fff'
  5. </route>
  6. <script setup lang="ts">
  7. import Card from '@designer-hub/app/src/components/card.vue'
  8. const tasks = ref([
  9. {
  10. status: 0,
  11. type: 1,
  12. name: 'imola',
  13. brand: 'imola瓷砖',
  14. start: '2024/06/07',
  15. end: '2024/06/15',
  16. targe: 30,
  17. finished: 22,
  18. },
  19. {
  20. status: 0,
  21. type: 2,
  22. name: 'imola',
  23. brand: 'imola瓷砖',
  24. start: '2024/06/07',
  25. end: '2024/06/15',
  26. targe: 30,
  27. finished: 22,
  28. },
  29. {
  30. status: 0,
  31. type: 1,
  32. name: 'imola',
  33. brand: 'imola瓷砖',
  34. start: '2024/06/07',
  35. end: '2024/06/15',
  36. targe: 30,
  37. finished: 22,
  38. },
  39. ])
  40. const types = ref({
  41. 1: { title: '到店', bg: '', bgClass: 'bg-gradient-to-r from-[#cfe0ff] to-[#e1ecff]' },
  42. 2: { title: '订单', bg: '', bgClass: 'bg-gradient-to-r from-[#ffe8cf] to-[#fff3e1]' },
  43. })
  44. </script>
  45. <template>
  46. <div class="flex-grow flex flex-col gap-4 p-4">
  47. <template v-for="{ id, type } of tasks" :key="id">
  48. <Card :custom-class="[types[type].bgClass, 'p-0']">
  49. <div class="flex p-4 items-center">
  50. <div
  51. class="w-[47px] h-[23px] px-1 bg-[#2357e9] rounded border justify-center items-center gap-2.5 inline-flex"
  52. >
  53. <div
  54. class="text-right text-white text-xs font-normal font-['PingFang SC'] leading-tight"
  55. >
  56. 进行中
  57. </div>
  58. </div>
  59. <div class="mx-2.5 text-black/90 text-lg font-normal font-['PingFang SC'] leading-none">
  60. {{ types[type].title }}量
  61. </div>
  62. <div class="flex-1"></div>
  63. <div class="mx-1.5 text-black/40 text-xs font-normal font-['PingFang SC'] leading-none">
  64. 奖励积分
  65. </div>
  66. <div class="text-[#ff2e2e] text-[22px] font-medium font-['DIN'] leading-none">2000</div>
  67. </div>
  68. <div class="flex flex-col gap-4 bg-white p-5 rounded-2xl">
  69. <div>
  70. <span class="text-black/40 text-sm font-normal font-['PingFang SC'] leading-none">
  71. 材料商:
  72. </span>
  73. <span class="text-black/60 text-sm font-normal font-['PingFang SC'] leading-none">
  74. imola
  75. </span>
  76. </div>
  77. <div>
  78. <span class="text-black/40 text-sm font-normal font-['PingFang SC'] leading-none">
  79. 品牌:
  80. </span>
  81. <span class="text-black/60 text-sm font-normal font-['PingFang SC'] leading-none">
  82. imola瓷砖
  83. </span>
  84. </div>
  85. <div>
  86. <span class="text-black/40 text-sm font-normal font-['PingFang SC'] leading-none">
  87. 任务时间:
  88. </span>
  89. <span class="text-black/60 text-sm font-normal font-['PingFang SC'] leading-none">
  90. 2024/06/07-2024/09/16
  91. </span>
  92. </div>
  93. <div class="flex items-center border-t border-t-solid border-t-[#efefef] pt-1.5">
  94. <div class="text-black/90 text-sm font-normal font-['PingFang SC']">目标</div>
  95. <div class="ml-2 text-black/90 text-lg font-medium font-['DIN'] leading-normal">30</div>
  96. <div class="ml-12 text-[#2357e9] text-sm font-normal font-['PingFang SC']">完成</div>
  97. <div class="ml-2 text-[#2357e9] text-lg font-medium font-['DIN'] leading-normal">
  98. 22
  99. </div>
  100. </div>
  101. </div>
  102. </Card>
  103. </template>
  104. </div>
  105. </template>