|
|
@ -1,6 +1,12 @@ |
|
|
|
<template> |
|
|
|
<template> |
|
|
|
|
|
|
|
<div style="padding: 30px 18.6vw 0; width: 100%; margin: auto"> |
|
|
|
|
|
|
|
年度:<j-dict-select-tag placeholder="请选择年度" v-model:value="annualid" dictCode="annual,annual_name,id" /> |
|
|
|
|
|
|
|
</div> |
|
|
|
<div class="container" v-if="isLoading"> |
|
|
|
<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> |
|
|
|
|
|
|
|
|
|
|
|
<div class="rebuild"><div @click="Rebuild">重新生成报告</div></div> |
|
|
|
<div class="rebuild"><div @click="Rebuild">重新生成报告</div></div> |
|
|
|
<p class="description" |
|
|
|
<p class="description" |
|
|
|
>我是比赛综述:全面落实立德树人根本任务,依据CDI0工程教育理念,培养德、智、体、美、劳全面发展,掌握软件工程专业所需的数学与自然科学基础知识、专业基础理论知识;在企业级软件开发和工业智能软件开发方向,能承担软件分析、设计、开发、项目管理等任务,具备解决复杂工程问题的能力;具有终身学习和创新创业意识、国际交流能力、团队合作精神等良好案养,能适应产业与社会变革的国际化应用型人才。<br />本专业毕业生经过五年左右的实际工作,能够达到以下目标:</p |
|
|
|
>我是比赛综述:全面落实立德树人根本任务,依据CDI0工程教育理念,培养德、智、体、美、劳全面发展,掌握软件工程专业所需的数学与自然科学基础知识、专业基础理论知识;在企业级软件开发和工业智能软件开发方向,能承担软件分析、设计、开发、项目管理等任务,具备解决复杂工程问题的能力;具有终身学习和创新创业意识、国际交流能力、团队合作精神等良好案养,能适应产业与社会变革的国际化应用型人才。<br />本专业毕业生经过五年左右的实际工作,能够达到以下目标:</p |
|
|
@ -141,7 +147,6 @@ |
|
|
|
</div> |
|
|
|
</div> |
|
|
|
<div class="loading" v-else> |
|
|
|
<div class="loading" v-else> |
|
|
|
<a-spin /> |
|
|
|
<a-spin /> |
|
|
|
|
|
|
|
|
|
|
|
</div> |
|
|
|
</div> |
|
|
|
</template> |
|
|
|
</template> |
|
|
|
|
|
|
|
|
|
|
@ -154,34 +159,34 @@ |
|
|
|
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 JDictSelectTag from '/@/components/Form/src/jeecg/components/JDictSelectTag.vue'; |
|
|
|
|
|
|
|
|
|
|
|
import randerChart from './components/randerChart.vue'; |
|
|
|
import randerChart from './components/randerChart.vue'; |
|
|
|
import cakeChart from './components/cakeChart.vue'; |
|
|
|
import cakeChart from './components/cakeChart.vue'; |
|
|
|
import ringChart from './components/ringChart.vue'; |
|
|
|
import ringChart from './components/ringChart.vue'; |
|
|
|
import pillarChart from './components/pillarChart.vue'; |
|
|
|
import pillarChart from './components/pillarChart.vue'; |
|
|
|
import { ref, onMounted, nextTick } from 'vue'; |
|
|
|
import { ref, onMounted, nextTick,watch } from 'vue'; |
|
|
|
import { jsPDF } from 'jspdf'; |
|
|
|
import { jsPDF } from 'jspdf'; |
|
|
|
import { getComprehensiveReport } from '/@/api/common/api'; |
|
|
|
import { getComprehensiveReport } from '/@/api/common/api'; |
|
|
|
const data = ref<any>({}) |
|
|
|
const data = ref<any>({}); |
|
|
|
const isLoading = ref<any>(false) |
|
|
|
const isLoading = ref<any>(false); |
|
|
|
const data12 = ref<any>([]) |
|
|
|
const data12 = ref<any>([]); |
|
|
|
const getComprehensiveReportEvent = async () => { |
|
|
|
const getComprehensiveReportEvent = async () => { |
|
|
|
const res = await getComprehensiveReport() |
|
|
|
const res = await getComprehensiveReport(); |
|
|
|
data.value = res |
|
|
|
data.value = res; |
|
|
|
console.log(res); |
|
|
|
console.log(res); |
|
|
|
data12.value = JSON.stringify(res.学生能力平均值) |
|
|
|
data12.value = JSON.stringify(res.学生能力平均值); |
|
|
|
isLoading.value = true |
|
|
|
isLoading.value = true; |
|
|
|
|
|
|
|
}; |
|
|
|
} |
|
|
|
getComprehensiveReportEvent(); |
|
|
|
getComprehensiveReportEvent() |
|
|
|
|
|
|
|
const Rebuild = async () => { |
|
|
|
const Rebuild = async () => { |
|
|
|
isLoading.value = false |
|
|
|
isLoading.value = false; |
|
|
|
const res = await getComprehensiveReport({recreateFlag:true}) |
|
|
|
const res = await getComprehensiveReport({ recreateFlag: true ,annualid:annualid.value}); |
|
|
|
data.value = res |
|
|
|
data.value = res; |
|
|
|
console.log(res); |
|
|
|
console.log(res); |
|
|
|
data12.value = JSON.stringify(res.学生能力平均值) |
|
|
|
data12.value = JSON.stringify(res.学生能力平均值); |
|
|
|
isLoading.value = true |
|
|
|
isLoading.value = true; |
|
|
|
} |
|
|
|
}; |
|
|
|
const activeKey = ref('1'); |
|
|
|
const activeKey = ref('1'); |
|
|
|
var indicator = [ |
|
|
|
var indicator = [ |
|
|
|
{ |
|
|
|
{ |
|
|
@ -291,6 +296,15 @@ |
|
|
|
} |
|
|
|
} |
|
|
|
}); |
|
|
|
}); |
|
|
|
}; |
|
|
|
}; |
|
|
|
|
|
|
|
const annualid = ref(''); |
|
|
|
|
|
|
|
watch( |
|
|
|
|
|
|
|
() => annualid.value, |
|
|
|
|
|
|
|
() => { |
|
|
|
|
|
|
|
console.log(annualid); |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Rebuild(); |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
); |
|
|
|
</script> |
|
|
|
</script> |
|
|
|
|
|
|
|
|
|
|
|
<style lang="less" scoped> |
|
|
|
<style lang="less" scoped> |
|
|
@ -485,6 +499,5 @@ |
|
|
|
line-height: 50px; |
|
|
|
line-height: 50px; |
|
|
|
font-size: 14px; |
|
|
|
font-size: 14px; |
|
|
|
padding: 0 20px; |
|
|
|
padding: 0 20px; |
|
|
|
|
|
|
|
|
|
|
|
} |
|
|
|
} |
|
|
|
</style> |
|
|
|
</style> |
|
|
|