|
|
@ -1,17 +1,44 @@ |
|
|
|
<template> |
|
|
|
<template> |
|
|
|
<div class="container"> |
|
|
|
<div class="container" v-if="isLoading"> |
|
|
|
<div class="title">河南机电学院比赛综合报告<div style="margin-left: 10px;cursor: pointer;"><SvgIcon name="log" @click="log"/></div></div> |
|
|
|
<div class="title">河南机电学院比赛综合报告<div style="margin-left: 10px;cursor: pointer;"><SvgIcon name="log" @click="log"/></div></div> |
|
|
|
<p class="description" |
|
|
|
<p class="description" |
|
|
|
>我是比赛综述:全面落实立德树人根本任务,依据CDI0工程教育理念,培养德、智、体、美、劳全面发展,掌握软件工程专业所需的数学与自然科学基础知识、专业基础理论知识;在企业级软件开发和工业智能软件开发方向,能承担软件分析、设计、开发、项目管理等任务,具备解决复杂工程问题的能力;具有终身学习和创新创业意识、国际交流能力、团队合作精神等良好案养,能适应产业与社会变革的国际化应用型人才。<br />本专业毕业生经过五年左右的实际工作,能够达到以下目标:</p |
|
|
|
>我是比赛综述:全面落实立德树人根本任务,依据CDI0工程教育理念,培养德、智、体、美、劳全面发展,掌握软件工程专业所需的数学与自然科学基础知识、专业基础理论知识;在企业级软件开发和工业智能软件开发方向,能承担软件分析、设计、开发、项目管理等任务,具备解决复杂工程问题的能力;具有终身学习和创新创业意识、国际交流能力、团队合作精神等良好案养,能适应产业与社会变革的国际化应用型人才。<br />本专业毕业生经过五年左右的实际工作,能够达到以下目标:</p |
|
|
|
> |
|
|
|
> |
|
|
|
<div class="card-content"> |
|
|
|
<div class="card-content"> |
|
|
|
<div class="item" v-for="item in 4" :key="item"> |
|
|
|
<div class="item"> |
|
|
|
<div class="top-title">本年度已开展比赛数</div> |
|
|
|
<div class="top-title">本年度已开展比赛数</div> |
|
|
|
<div class="sum">88</div> |
|
|
|
<div class="sum">{{ data.本年度已开展比赛项目数 }}</div> |
|
|
|
<div class="content"> |
|
|
|
<div class="content"> |
|
|
|
<div>国赛:12</div> |
|
|
|
<div>国赛:{{data.国赛}}</div> |
|
|
|
<div>国赛:12</div> |
|
|
|
<div>省赛:{{ data.省赛 }}</div> |
|
|
|
<div>国赛:12</div> |
|
|
|
<div>校赛:{{ data.校赛 }}</div> |
|
|
|
|
|
|
|
</div> |
|
|
|
|
|
|
|
</div> |
|
|
|
|
|
|
|
<div class="item"> |
|
|
|
|
|
|
|
<div class="top-title">本年度已开展比赛数</div> |
|
|
|
|
|
|
|
<div class="sum">{{ data.本年度已开展比赛数 }}</div> |
|
|
|
|
|
|
|
<div class="content"> |
|
|
|
|
|
|
|
<div>国赛:{{data.国赛}}</div> |
|
|
|
|
|
|
|
<div>省赛:{{ data.省赛 }}</div> |
|
|
|
|
|
|
|
<div>校赛:{{ data.校赛 }}</div> |
|
|
|
|
|
|
|
</div> |
|
|
|
|
|
|
|
</div> |
|
|
|
|
|
|
|
<div class="item"> |
|
|
|
|
|
|
|
<div class="top-title">本年度参加比赛队伍数</div> |
|
|
|
|
|
|
|
<div class="sum">{{ data.本年度参加比赛队伍数}}</div> |
|
|
|
|
|
|
|
<div class="content"> |
|
|
|
|
|
|
|
<div>国赛:{{data.国赛}}</div> |
|
|
|
|
|
|
|
<div>省赛:{{ data.省赛 }}</div> |
|
|
|
|
|
|
|
<div>校赛:{{ data.校赛 }}</div> |
|
|
|
|
|
|
|
</div> |
|
|
|
|
|
|
|
</div> |
|
|
|
|
|
|
|
<div class="item"> |
|
|
|
|
|
|
|
<div class="top-title">已完成的比赛</div> |
|
|
|
|
|
|
|
<div class="sum">{{ data.已完成的比赛 }}</div> |
|
|
|
|
|
|
|
<div class="content"> |
|
|
|
|
|
|
|
<div>国赛:{{data.国赛}}</div> |
|
|
|
|
|
|
|
<div>省赛:{{ data.省赛 }}</div> |
|
|
|
|
|
|
|
<div>校赛:{{ data.校赛 }}</div> |
|
|
|
</div> |
|
|
|
</div> |
|
|
|
</div> |
|
|
|
</div> |
|
|
|
</div> |
|
|
|
</div> |
|
|
@ -23,10 +50,10 @@ |
|
|
|
<div class="year-content-top"> |
|
|
|
<div class="year-content-top"> |
|
|
|
<div class="left border-000"> |
|
|
|
<div class="left border-000"> |
|
|
|
<div class="border-title">年度维度分析</div> |
|
|
|
<div class="border-title">年度维度分析</div> |
|
|
|
<randerChart /> |
|
|
|
<randerChart :data="data.学生能力平均值"/> |
|
|
|
</div> |
|
|
|
</div> |
|
|
|
<div class="right border-000"> |
|
|
|
<div class="right border-000"> |
|
|
|
<cardList /> |
|
|
|
<cardList :DATA="data12"/> |
|
|
|
</div> |
|
|
|
</div> |
|
|
|
</div> |
|
|
|
</div> |
|
|
|
|
|
|
|
|
|
|
@ -69,11 +96,11 @@ |
|
|
|
<div class="left border-000"> |
|
|
|
<div class="left border-000"> |
|
|
|
<!-- <div class="border-title">年度维度分析</div> --> |
|
|
|
<!-- <div class="border-title">年度维度分析</div> --> |
|
|
|
|
|
|
|
|
|
|
|
<cakeChart /> |
|
|
|
<cakeChart :data="data.比赛类型占比"/> |
|
|
|
</div> |
|
|
|
</div> |
|
|
|
</div> |
|
|
|
</div> |
|
|
|
<div class="footer-edit border-000"> |
|
|
|
<div class="footer-edit border-000"> |
|
|
|
<cardList2 /> |
|
|
|
<cardList2 :data="data.学生参赛情况"/> |
|
|
|
</div> |
|
|
|
</div> |
|
|
|
</div> |
|
|
|
</div> |
|
|
|
<cardTitle title="比赛学生获奖情况分析" /> |
|
|
|
<cardTitle title="比赛学生获奖情况分析" /> |
|
|
@ -87,11 +114,11 @@ |
|
|
|
</div> |
|
|
|
</div> |
|
|
|
<div class="left border-000"> |
|
|
|
<div class="left border-000"> |
|
|
|
<!-- <div class="border-title">年度维度分析</div> --> |
|
|
|
<!-- <div class="border-title">年度维度分析</div> --> |
|
|
|
<ringChart /> |
|
|
|
<ringChart :data="data.比赛获奖占比"/> |
|
|
|
</div> |
|
|
|
</div> |
|
|
|
</div> |
|
|
|
</div> |
|
|
|
<div class="footer-edit border-000"> |
|
|
|
<div class="footer-edit border-000"> |
|
|
|
<cardList3 /> |
|
|
|
<cardList3 :data="data.比赛获奖情况列表"/> |
|
|
|
</div> |
|
|
|
</div> |
|
|
|
</div> |
|
|
|
</div> |
|
|
|
<cardTitle title="部门参赛情况分析" /> |
|
|
|
<cardTitle title="部门参赛情况分析" /> |
|
|
@ -100,16 +127,16 @@ |
|
|
|
> |
|
|
|
> |
|
|
|
<div class="participation-status-content"> |
|
|
|
<div class="participation-status-content"> |
|
|
|
<div class="right border-000"> |
|
|
|
<div class="right border-000"> |
|
|
|
<cardList4 /> |
|
|
|
<cardList4 :data="data.部门参赛情况列表"/> |
|
|
|
</div> |
|
|
|
</div> |
|
|
|
<div class="left border-000" style="height: auto"> |
|
|
|
<div class="left border-000" style="height: auto"> |
|
|
|
<!-- <div class="border-title">年度维度分析</div> --> |
|
|
|
<!-- <div class="border-title">年度维度分析</div> --> |
|
|
|
<cardList5 /> |
|
|
|
<cardList5 :data="data.比赛学生积分况分析"/> |
|
|
|
</div> |
|
|
|
</div> |
|
|
|
</div> |
|
|
|
</div> |
|
|
|
<div class="footer border-000"> |
|
|
|
<!-- <div class="footer border-000"> |
|
|
|
<cardList6 /> |
|
|
|
<cardList6 /> |
|
|
|
</div> |
|
|
|
</div> --> |
|
|
|
</div> |
|
|
|
</div> |
|
|
|
</template> |
|
|
|
</template> |
|
|
|
|
|
|
|
|
|
|
@ -120,7 +147,7 @@ |
|
|
|
import cardList3 from './components/cardList3.vue'; |
|
|
|
import cardList3 from './components/cardList3.vue'; |
|
|
|
import cardList4 from './components/cardList4.vue'; |
|
|
|
import cardList4 from './components/cardList4.vue'; |
|
|
|
import cardList5 from './components/cardList5.vue'; |
|
|
|
import cardList5 from './components/cardList5.vue'; |
|
|
|
import cardList6 from './components/cardList6.vue'; |
|
|
|
// import cardList6 from './components/cardList6.vue'; |
|
|
|
import { SvgIcon } from '/@/components/Icon'; |
|
|
|
import { SvgIcon } from '/@/components/Icon'; |
|
|
|
|
|
|
|
|
|
|
|
import randerChart from './components/randerChart.vue'; |
|
|
|
import randerChart from './components/randerChart.vue'; |
|
|
@ -129,55 +156,68 @@ |
|
|
|
import pillarChart from './components/pillarChart.vue'; |
|
|
|
import pillarChart from './components/pillarChart.vue'; |
|
|
|
import { ref, onMounted, nextTick } from 'vue'; |
|
|
|
import { ref, onMounted, nextTick } from 'vue'; |
|
|
|
import { jsPDF } from 'jspdf'; |
|
|
|
import { jsPDF } from 'jspdf'; |
|
|
|
|
|
|
|
import {getComprehensiveReport} from '/@/api/common/api'; |
|
|
|
|
|
|
|
const data = ref<any>({}) |
|
|
|
|
|
|
|
const isLoading = ref<any>(false) |
|
|
|
|
|
|
|
const data12 = ref<any>([]) |
|
|
|
|
|
|
|
const getComprehensiveReportEvent = async () => { |
|
|
|
|
|
|
|
const res = await getComprehensiveReport() |
|
|
|
|
|
|
|
data.value = res |
|
|
|
|
|
|
|
console.log(res); |
|
|
|
|
|
|
|
data12.value = JSON.stringify(res.学生能力平均值) |
|
|
|
|
|
|
|
isLoading.value = true |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
getComprehensiveReportEvent() |
|
|
|
const activeKey = ref('1'); |
|
|
|
const activeKey = ref('1'); |
|
|
|
var indicator = [ |
|
|
|
var indicator = [ |
|
|
|
{ |
|
|
|
{ |
|
|
|
text: '前言探索', |
|
|
|
text: '前言探索', |
|
|
|
max: 6000, |
|
|
|
max: 0, |
|
|
|
}, |
|
|
|
}, |
|
|
|
{ |
|
|
|
{ |
|
|
|
text: '奠定基础', |
|
|
|
text: '奠定基础', |
|
|
|
max: 5000, |
|
|
|
max: 0, |
|
|
|
}, |
|
|
|
}, |
|
|
|
{ |
|
|
|
{ |
|
|
|
text: '知识分析', |
|
|
|
text: '知识分析', |
|
|
|
max: 5000, |
|
|
|
max: 0, |
|
|
|
}, |
|
|
|
}, |
|
|
|
{ |
|
|
|
{ |
|
|
|
text: '社会责任', |
|
|
|
text: '社会责任', |
|
|
|
max: 5000, |
|
|
|
max: 0, |
|
|
|
}, |
|
|
|
}, |
|
|
|
{ |
|
|
|
{ |
|
|
|
text: '独立思考', |
|
|
|
text: '独立思考', |
|
|
|
max: 5500, |
|
|
|
max: 0, |
|
|
|
}, |
|
|
|
}, |
|
|
|
{ |
|
|
|
{ |
|
|
|
text: '拓宽视野', |
|
|
|
text: '拓宽视野', |
|
|
|
max: 5000, |
|
|
|
max: 0, |
|
|
|
}, |
|
|
|
}, |
|
|
|
{ |
|
|
|
{ |
|
|
|
text: '激发兴趣', |
|
|
|
text: '激发兴趣', |
|
|
|
max: 5000, |
|
|
|
max: 0, |
|
|
|
}, |
|
|
|
}, |
|
|
|
{ |
|
|
|
{ |
|
|
|
text: '沟通协调', |
|
|
|
text: '沟通协调', |
|
|
|
max: 5000, |
|
|
|
max: 0, |
|
|
|
}, |
|
|
|
}, |
|
|
|
{ |
|
|
|
{ |
|
|
|
text: '设计开发', |
|
|
|
text: '设计开发', |
|
|
|
max: 5000, |
|
|
|
max: 0, |
|
|
|
}, |
|
|
|
}, |
|
|
|
{ |
|
|
|
{ |
|
|
|
text: '研判分析', |
|
|
|
text: '研判分析', |
|
|
|
max: 5000, |
|
|
|
max: 0, |
|
|
|
}, |
|
|
|
}, |
|
|
|
{ |
|
|
|
{ |
|
|
|
text: '创新能力', |
|
|
|
text: '创新能力', |
|
|
|
max: 5000, |
|
|
|
max: 0, |
|
|
|
}, |
|
|
|
}, |
|
|
|
{ |
|
|
|
{ |
|
|
|
text: '团队协作', |
|
|
|
text: '团队协作', |
|
|
|
max: 5000, |
|
|
|
max: 0, |
|
|
|
}, |
|
|
|
}, |
|
|
|
]; |
|
|
|
]; |
|
|
|
const log = async () => { |
|
|
|
const log = async () => { |
|
|
|