index.vue 2.2 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374
  1. <template>
  2. <div class="p-4 analysis">
  3. <a-row class="pl-2">
  4. <template v-for="item in growCardList" :key="item.title">
  5. <a-col :sm="24" :md="12" :lg="6">
  6. <GrowCard :info="item" />
  7. </a-col>
  8. </template>
  9. </a-row>
  10. <a-row>
  11. <a-col :md="24" :lg="17" class="my-3">
  12. <CollapseContainer class="mr-3" title="产品成交额" :canExpan="false">
  13. <AnalysisLine />
  14. </CollapseContainer>
  15. <a-row class="mt-3">
  16. <a-col :md="24" :lg="12" class="product-total">
  17. <CollapseContainer class="mr-3" title="产品成交额" :canExpan="false">
  18. <AnalysisPie />
  19. </CollapseContainer>
  20. </a-col>
  21. <a-col :md="24" :lg="12">
  22. <CollapseContainer class="mr-3" title="用户来源" :canExpan="false">
  23. <AnalysisBar />
  24. </CollapseContainer>
  25. </a-col>
  26. </a-row>
  27. </a-col>
  28. <a-col :md="24" :lg="7">
  29. <CollapseContainer class="mt-3" title="项目进度" :canExpan="false">
  30. <template v-for="item in taskList" :key="item.title">
  31. <TaskCard :info="item" />
  32. </template>
  33. </CollapseContainer>
  34. </a-col>
  35. </a-row>
  36. <a-row>
  37. <FlowAnalysis />
  38. </a-row>
  39. </div>
  40. </template>
  41. <script lang="ts">
  42. import { defineComponent } from 'vue';
  43. import GrowCard from './components/GrowCard.vue';
  44. import AnalysisLine from './components/AnalysisLine.vue';
  45. import AnalysisPie from './components/AnalysisPie.vue';
  46. import AnalysisBar from './components/AnalysisBar.vue';
  47. import TaskCard from './components/TaskCard.vue';
  48. import FlowAnalysis from './components/FlowAnalysis';
  49. import { CollapseContainer } from '/@/components/Container/index';
  50. import { Row, Col } from 'ant-design-vue';
  51. import { growCardList, taskList } from './data';
  52. export default defineComponent({
  53. components: {
  54. GrowCard,
  55. CollapseContainer,
  56. AnalysisLine,
  57. AnalysisPie,
  58. AnalysisBar,
  59. TaskCard,
  60. FlowAnalysis,
  61. [Row.name]: Row,
  62. [Col.name]: Col,
  63. },
  64. setup() {
  65. return { growCardList, taskList };
  66. },
  67. });
  68. </script>
  69. <style lang="less" scoped>
  70. .analysis {
  71. width: 100%;
  72. }
  73. </style>