SignEvaluation.vue 1.6 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970
  1. <template>
  2. <view class="sign-evaluation">
  3. <view class="sign-evaluation__title">拜访评价</view>
  4. <view v-for="row in rows" :key="row.label" class="sign-evaluation__item">
  5. <text>{{ row.label }}</text>
  6. <text
  7. class="sign-evaluation__result"
  8. :class="row.value ? 'sign-evaluation__result--yes' : 'sign-evaluation__result--no'"
  9. >
  10. {{ row.value ? '是' : '否' }}
  11. </text>
  12. </view>
  13. </view>
  14. </template>
  15. <script setup lang="ts">
  16. import { computed } from 'vue'
  17. import type { VisitEvaluationDetail } from '@/services/modules/task/taskVisit/type'
  18. const props = defineProps<{
  19. evaluation: VisitEvaluationDetail
  20. }>()
  21. const rows = computed(() => [
  22. { label: '是否针对了正确的 HCP', value: props.evaluation.rightHcp },
  23. { label: '是否传递了正确的信息', value: props.evaluation.rightInfo },
  24. { label: '活动形式和频率是否正确', value: props.evaluation.rightActivity },
  25. ])
  26. </script>
  27. <style lang="scss" scoped>
  28. .sign-evaluation {
  29. margin: 16rpx 0 10rpx;
  30. padding: 18rpx 0;
  31. border-top: 1rpx solid #e8edf3;
  32. border-bottom: 1rpx solid #e8edf3;
  33. }
  34. .sign-evaluation__title {
  35. margin-bottom: 8rpx;
  36. color: #3f5167;
  37. font-size: 26rpx;
  38. font-weight: 650;
  39. }
  40. .sign-evaluation__item {
  41. display: flex;
  42. align-items: flex-start;
  43. justify-content: space-between;
  44. gap: 20rpx;
  45. padding: 8rpx 0;
  46. color: #526278;
  47. font-size: 24rpx;
  48. line-height: 36rpx;
  49. }
  50. .sign-evaluation__result {
  51. flex-shrink: 0;
  52. font-weight: 650;
  53. }
  54. .sign-evaluation__result--yes {
  55. color: #16a36a;
  56. }
  57. .sign-evaluation__result--no {
  58. color: #dc6262;
  59. }
  60. </style>