index.tsx 1.1 KB

12345678910111213141516171819202122232425262728293031323334353637
  1. import Card from '@/components/Card';
  2. import { useIncidentStore } from '@/store';
  3. import clsx from 'clsx';
  4. import { computed, defineComponent, ref } from 'vue-demi';
  5. import { Management } from '@element-plus/icons';
  6. export default defineComponent({
  7. name: 'ExecutionLogCard',
  8. setup(props) {
  9. const store = useIncidentStore();
  10. const medias = computed(() =>
  11. (store.incidentDetail?.baseInfo?.pic?.split(',') ?? []).concat(
  12. store.incidentDetail?.baseInfo?.video?.split(',') ?? [],
  13. ),
  14. );
  15. return () => (
  16. <Card cardType="execution-log">
  17. <div class="execution-log-container">
  18. {store.incidentDetail?.process?.map((item, idx) => (
  19. <div class={clsx('log-item', `log-item-${idx % 4}`)}>
  20. <span class="log-label">{item.des}</span>
  21. <span class="log-time">
  22. {item.createTime}
  23. <span class="logo-icon">
  24. <el-icon>
  25. <Management />
  26. </el-icon>
  27. </span>
  28. </span>
  29. </div>
  30. ))}
  31. </div>
  32. </Card>
  33. );
  34. },
  35. });