holland-list-item.vue 2.6 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677
  1. <template>
  2. <view class="bg-white mx-card rounded-lg overflow-hidden">
  3. <view class="p-30 fx-row fx-bet-cen">
  4. <view class="text-main fx-row gap-8">
  5. {{ typeName }} -
  6. <text class="text-orange-400">{{ item.ruleCode }}</text>
  7. </view>
  8. <uv-text type="tips" prefix-icon="clock" :text="reportDate" class="!justify-end"/>
  9. </view>
  10. <view class="mx-20 grid grid-cols-3 text-sm mx-grid-border">
  11. <view class="fx-row fx-cen-cen py-20">
  12. <view class="text-content">现实型(R)</view>
  13. <view class="text-main">{{ item.scorer }}</view>
  14. </view>
  15. <view class="fx-row fx-cen-cen py-20">
  16. <view class="text-content">艺术型(A)</view>
  17. <view class="text-main">{{ item.scorea }}</view>
  18. </view>
  19. <view class="fx-row fx-cen-cen py-20">
  20. <view class="text-content">研究型(I)</view>
  21. <view class="text-main">{{ item.scorei }}</view>
  22. </view>
  23. <view class="fx-row fx-cen-cen py-20">
  24. <view class="text-content">社会型(S)</view>
  25. <view class="text-main">{{ item.scores }}</view>
  26. </view>
  27. <view class="fx-row fx-cen-cen py-20">
  28. <view class="text-content">企业型(E)</view>
  29. <view class="text-main">{{ item.scoree }}</view>
  30. </view>
  31. <view class="fx-row fx-cen-cen py-20">
  32. <view class="text-content">传统型(C)</view>
  33. <view class="text-main">{{ item.scorec }}</view>
  34. </view>
  35. </view>
  36. <view class="py-20 fx-row justify-center">
  37. <mx-tag-button text="查看报告" icon="arrow-right" reverse @click="handleReport"/>
  38. </view>
  39. </view>
  40. </template>
  41. <script setup>
  42. import _ from 'lodash'
  43. import {computed} from 'vue'
  44. import {createPropDefine} from "@/utils";
  45. import {useTransfer} from "@/hooks/useTransfer";
  46. const props = defineProps({
  47. item: createPropDefine({}, Object)
  48. })
  49. const {transferTo} = useTransfer()
  50. const map = {
  51. R: '现实型',
  52. A: '艺术型',
  53. I: '研究型',
  54. S: '社会型',
  55. E: '企业型',
  56. C: '传统型'
  57. }
  58. const typeName = computed(() => map[_.first(props.item.ruleCode)] || '')
  59. const reportDate = computed(() => getDateStr(props.item.createTime))
  60. const getDateStr = (str) => {
  61. return str.substring(0, 10)
  62. }
  63. const handleReport = () => {
  64. transferTo('/pages/test-center/holland/holland', {code: props.item.code})
  65. }
  66. </script>
  67. <style scoped>
  68. </style>