order-status.vue 1.3 KB

123456789101112131415161718192021222324252627282930313233343536
  1. <template>
  2. <el-steps style="width: 100%" :active="active" align-center finish-status="success">
  3. <el-step v-for="item in stepList" :title="item.label">
  4. <template #description>
  5. <div>{{ item.time }}</div>
  6. <div>{{ item.createdBy }}</div>
  7. </template>
  8. </el-step>
  9. </el-steps>
  10. </template>
  11. <script setup>
  12. import { ref, reactive } from 'vue';
  13. const stepList = reactive([
  14. { label: '创建', time: '2024-06-05 15:00:00', createdBy: '微信用户', stutus: 0 },
  15. { label: '下单', time: '2024-06-05 15:00:00', createdBy: '微信用户', stutus: 2 },
  16. { label: '初审', time: '2024-06-05 15:00:00', createdBy: 'system', stutus: 3 },
  17. { label: '快递取书', time: '2024-06-05 15:00:00', createdBy: 'system', stutus: 5 },
  18. { label: '快递签收', time: '2024-06-05 15:00:00', createdBy: 'system', stutus: 6 },
  19. { label: '仓库收货', time: '2024-06-05 15:00:00', createdBy: '喷喷喷', stutus: 8 },
  20. { label: '到货审核', time: '', createdBy: '', stutus: 9 },
  21. { label: '支付书款(完成)', time: '', createdBy: '', stutus: 11 }
  22. ]);
  23. const props = defineProps({
  24. status: {
  25. type: Number,
  26. default: 0
  27. }
  28. });
  29. const active = computed(() => {
  30. return stepList.findIndex(item => item.stutus == props.status) || 0;
  31. });
  32. </script>