|
@@ -40,14 +40,14 @@
|
|
<div class="item-num">{{item.value}}</div>
|
|
<div class="item-num">{{item.value}}</div>
|
|
<span class="item-title">{{item.name}}</span>
|
|
<span class="item-title">{{item.name}}</span>
|
|
</div>
|
|
</div>
|
|
- </div>
|
|
|
|
|
|
+ </div> -->
|
|
<div class="power-box">
|
|
<div class="power-box">
|
|
- <p class="apparatus-title">课堂与授权</p>
|
|
|
|
|
|
+ <p class="inuse-title">课堂与授权</p>
|
|
<div class="power-item" v-for="(item,index) in powerList.class" :key="index">
|
|
<div class="power-item" v-for="(item,index) in powerList.class" :key="index">
|
|
<div class="item-num">{{item.value}}</div>
|
|
<div class="item-num">{{item.value}}</div>
|
|
<span class="item-title">{{item.name}}</span>
|
|
<span class="item-title">{{item.name}}</span>
|
|
</div>
|
|
</div>
|
|
- </div> -->
|
|
|
|
|
|
+ </div>
|
|
</div>
|
|
</div>
|
|
<div class="minxinbox">
|
|
<div class="minxinbox">
|
|
<div class="lessons-box">
|
|
<div class="lessons-box">
|
|
@@ -488,10 +488,13 @@
|
|
{ icon: '#icon--caozuorizhi', title: 'IES课程', content: '使用IES课程', state: true, value: 0 },
|
|
{ icon: '#icon--caozuorizhi', title: 'IES课程', content: '使用IES课程', state: true, value: 0 },
|
|
{ icon: '#icon--caozuorizhi', title: 'webIrs', content: '使用webIrs', state: true, value: 0 },
|
|
{ icon: '#icon--caozuorizhi', title: 'webIrs', content: '使用webIrs', state: true, value: 0 },
|
|
{ icon: '#icon--caozuorizhi', title: 'IRS', content: '使用IRS', state: true, value: 0 },
|
|
{ icon: '#icon--caozuorizhi', title: 'IRS', content: '使用IRS', state: true, value: 0 },
|
|
- { icon: '#icon--caozuorizhi', title: 'HiTA', content: '使用HiTA', state: false, value: 0 },
|
|
|
|
- { icon: '#icon--caozuorizhi', title: 'HaBoard', content: '使用HaBoard', state: false, value: 0 },
|
|
|
|
- { icon: '#icon--caozuorizhi', title: 'IES5资源', content: '使用IES5资源', state: true, value: 0 },
|
|
|
|
- { icon: '#icon--caozuorizhi', title: 'T指数', content: '课程T绿灯数', state: true, value: 0 },
|
|
|
|
|
|
+ { icon: '#icon--caozuorizhi', title: 'HiTA', content: '使用文字云', state: false, value: 0 },
|
|
|
|
+ { icon: '#icon--caozuorizhi', title: 'HaBoard', content: '使用ClouDAS', state: false, value: 0 },
|
|
|
|
+ { icon: '#icon--caozuorizhi', title: 'GPT', content: '使用GPT', state: false, value: 0 },
|
|
|
|
+ { icon: '#icon--caozuorizhi', title: 'IES5测验', content: '使用IES5卷测验', state: true, value: 0 },
|
|
|
|
+ { icon: '#icon--caozuorizhi', title: 'Excel测验', content: '使用Excel卷测验', state: true, value: 0 },
|
|
|
|
+ { icon: '#icon--caozuorizhi', title: '纸本测验', content: '使用纸本测验', state: true, value: 0 },
|
|
|
|
+ { icon: '#icon--caozuorizhi', title: 'T课堂', content: '符合T课堂数', state: true, value: 0 },
|
|
])
|
|
])
|
|
let inuseList = ref([
|
|
let inuseList = ref([
|
|
{ title: '学习任务数', value: 15, icon: '#icon-renwu', percent: '41.2%', class: 'task', textClass: 'task-text' },
|
|
{ title: '学习任务数', value: 15, icon: '#icon-renwu', percent: '41.2%', class: 'task', textClass: 'task-text' },
|
|
@@ -504,7 +507,8 @@
|
|
{ name: '互动型态课堂', value: 20, percent: '30%', class: 'accomplish', textClass: 'accomplish-text' },
|
|
{ name: '互动型态课堂', value: 20, percent: '30%', class: 'accomplish', textClass: 'accomplish-text' },
|
|
{ name: '任务型态课堂', value: 20, percent: '10%', class: 'topic', textClass: 'topic-text' },
|
|
{ name: '任务型态课堂', value: 20, percent: '10%', class: 'topic', textClass: 'topic-text' },
|
|
{ name: '差异化形态课堂', value: 20, percent: '5%', class: 'interaction', textClass: 'interaction-text' },
|
|
{ name: '差异化形态课堂', value: 20, percent: '5%', class: 'interaction', textClass: 'interaction-text' },
|
|
- { name: '测验型态课堂', value: 30, percent: '15%', class: 'testclass', textClass: 'testclass-text' },
|
|
|
|
|
|
+ { name: '协作型态课堂', value: 30, percent: '15%', class: 'testclass', textClass: 'testclass-text' },
|
|
|
|
+ { name: '互评型态课堂', value: 30, percent: '15%', class: 'testclass', textClass: 'testclass-text' },
|
|
{ name: '无型态课堂', value: 0, percent: '0%', class: 'noneclass', textClass: 'noneclassclass-text' },
|
|
{ name: '无型态课堂', value: 0, percent: '0%', class: 'noneclass', textClass: 'noneclassclass-text' },
|
|
{ name: '未上课', value: 0, percent: '0%', class: 'noneclass', textClass: 'noneclassclass-text' },
|
|
{ name: '未上课', value: 0, percent: '0%', class: 'noneclass', textClass: 'noneclassclass-text' },
|
|
])
|
|
])
|
|
@@ -557,7 +561,7 @@
|
|
}
|
|
}
|
|
},
|
|
},
|
|
boundaryGap: true, // 坐标轴两边是否留白
|
|
boundaryGap: true, // 坐标轴两边是否留白
|
|
- data: ['合作', '互动', '任务', '差异化', '测验', '无型态', '未上课']
|
|
|
|
|
|
+ data: ['合作', '互动', '任务', '差异化', '协作','互评', '无型态', '未上课']
|
|
},
|
|
},
|
|
yAxis: [
|
|
yAxis: [
|
|
{
|
|
{
|
|
@@ -616,7 +620,7 @@
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
},
|
|
- barMaxWidth: '20%',
|
|
|
|
|
|
+ barMaxWidth: '15%',
|
|
}
|
|
}
|
|
]
|
|
]
|
|
}
|
|
}
|
|
@@ -657,14 +661,24 @@
|
|
basicaList.value[3].value = lessonLengMin
|
|
basicaList.value[3].value = lessonLengMin
|
|
|
|
|
|
//处理课中使用数据
|
|
//处理课中使用数据
|
|
- let { useIES, useWebIrs, useDeviceIrs, useHita, useHaboard, useIES5Resource, tGreen } = propsbox.detailsData
|
|
|
|
- lessonsList.value[0].value = useIES
|
|
|
|
- lessonsList.value[1].value = useWebIrs
|
|
|
|
- lessonsList.value[2].value = useDeviceIrs
|
|
|
|
- lessonsList.value[3].value = useHita
|
|
|
|
- lessonsList.value[4].value = useHaboard
|
|
|
|
- lessonsList.value[5].value = useIES5Resource
|
|
|
|
- lessonsList.value[6].value = tGreen
|
|
|
|
|
|
+ let { useIES, useWebIrs, useDeviceIrs, useHita, useHaboard, useIES5Resource, tGreen,useWordCloud,useClouDAS,useGPT,useIesTest,useExcelTest,usePaperTest,tLesson } = propsbox.detailsData
|
|
|
|
+ lessonsList.value[0].value = useIES ?useIES:0
|
|
|
|
+ lessonsList.value[1].value = useWebIrs ? useWebIrs:0
|
|
|
|
+ lessonsList.value[2].value = useDeviceIrs ? useDeviceIrs:0
|
|
|
|
+ //由hita 调整为 文字云
|
|
|
|
+ lessonsList.value[3].value = useWordCloud ?useWordCloud:0
|
|
|
|
+ //由HaBoard 调整为 ClouDAS
|
|
|
|
+ lessonsList.value[4].value = useClouDAS ? useClouDAS:0
|
|
|
|
+ //增加使用GPT
|
|
|
|
+ lessonsList.value[5].value = useGPT ?useGPT:0
|
|
|
|
+ //由IES5资源调整为 使用IES5卷测验
|
|
|
|
+ lessonsList.value[6].value = useIesTest ? useIesTest:0
|
|
|
|
+ //新增Excel
|
|
|
|
+ lessonsList.value[7].value=useExcelTest ? useExcelTest:0
|
|
|
|
+ //新增纸本
|
|
|
|
+ lessonsList.value[8].value=usePaperTest ?usePaperTest:0
|
|
|
|
+ //符合T课堂数
|
|
|
|
+ lessonsList.value[9].value=tLesson ? tLesson:0
|
|
|
|
|
|
//授权占比
|
|
//授权占比
|
|
// let { deviceCnt, deviceNoAuth, deviceAuth, lessonCnt928, lessonCntId, lessonCntDevice, lessonCntIdDevice } = propsbox.detailsData
|
|
// let { deviceCnt, deviceNoAuth, deviceAuth, lessonCnt928, lessonCntId, lessonCntDevice, lessonCntIdDevice } = propsbox.detailsData
|
|
@@ -684,25 +698,23 @@
|
|
inuseList.value[3].value = interact
|
|
inuseList.value[3].value = interact
|
|
|
|
|
|
//处理多形态课堂
|
|
//处理多形态课堂
|
|
- let { lTypeCoop, lTypeIact, lTypeMis, lTypeTst, lTypeDif, lTypeNone,lessonLeng0} = propsbox.detailsData
|
|
|
|
|
|
+ let { lTypeCoop, lTypeIact, lTypeMis, lTypeTst, lTypeDif, lTypeNone,lessonLeng0,learnCoop,learnPeer} = propsbox.detailsData
|
|
let totalNum = [lTypeCoop, lTypeIact, lTypeMis, lTypeTst, lTypeDif].reduce((prev, cur) => { return prev + cur }, 0)
|
|
let totalNum = [lTypeCoop, lTypeIact, lTypeMis, lTypeTst, lTypeDif].reduce((prev, cur) => { return prev + cur }, 0)
|
|
echartData.value.total = totalNum
|
|
echartData.value.total = totalNum
|
|
console.log(totalNum)
|
|
console.log(totalNum)
|
|
classType.value[0].value = lTypeCoop
|
|
classType.value[0].value = lTypeCoop
|
|
- classType.value[0].percent = lTypeCoop === 0 ? 0 : (lTypeCoop / totalNum).toFixed(2) * 100
|
|
|
|
classType.value[1].value = lTypeIact
|
|
classType.value[1].value = lTypeIact
|
|
- classType.value[1].percent = lTypeIact === 0 ? 0 : (lTypeIact / totalNum).toFixed(2) * 100
|
|
|
|
classType.value[2].value = lTypeMis
|
|
classType.value[2].value = lTypeMis
|
|
- classType.value[2].percent = lTypeMis === 0 ? 0 : (lTypeMis / totalNum).toFixed(2) * 100
|
|
|
|
- classType.value[3].value = lTypeTst
|
|
|
|
- classType.value[3].percent = lTypeTst === 0 ? 0 : (lTypeTst / totalNum).toFixed(2) * 100
|
|
|
|
- classType.value[4].value = lTypeDif
|
|
|
|
- classType.value[4].percent = lTypeDif === 0 ? 0 : (lTypeDif / totalNum).toFixed(2) * 100
|
|
|
|
- classType.value[4].value = lTypeNone
|
|
|
|
- classType.value[5].value = lessonLeng0 ? lessonLeng0:0
|
|
|
|
|
|
+ classType.value[3].value = lTypeDif
|
|
|
|
+ //由测试改为 协作
|
|
|
|
+ classType.value[4].value = learnCoop
|
|
|
|
+ //新增互评
|
|
|
|
+ classType.value[5].value = learnPeer
|
|
|
|
+ classType.value[6].value = lTypeNone
|
|
|
|
+ classType.value[7].value = lessonLeng0 ? lessonLeng0:0
|
|
|
|
|
|
//echarts占比
|
|
//echarts占比
|
|
- echartData.value.xlines.series[0].data = [lTypeCoop, lTypeIact, lTypeMis, lTypeTst, lTypeDif, lTypeNone, classType.value[5].value]
|
|
|
|
|
|
+ echartData.value.xlines.series[0].data = [lTypeCoop, lTypeIact, lTypeMis, lTypeDif,learnCoop,learnPeer, lTypeNone, classType.value[5].value]
|
|
// echartData.value.xlines.series[1].data = [classType.value[1].percent]
|
|
// echartData.value.xlines.series[1].data = [classType.value[1].percent]
|
|
// echartData.value.xlines.series[2].data = [classType.value[2].percent]
|
|
// echartData.value.xlines.series[2].data = [classType.value[2].percent]
|
|
// echartData.value.xlines.series[3].data = [classType.value[3].percent]
|
|
// echartData.value.xlines.series[3].data = [classType.value[3].percent]
|
|
@@ -769,7 +781,7 @@ onMounted(() => {
|
|
padding-top: 1%;
|
|
padding-top: 1%;
|
|
}
|
|
}
|
|
.contentbox {
|
|
.contentbox {
|
|
- width: 98%;
|
|
|
|
|
|
+ width: 100%;
|
|
/* padding: 1% 1%; */
|
|
/* padding: 1% 1%; */
|
|
/* background: rgb(250, 250, 250); */
|
|
/* background: rgb(250, 250, 250); */
|
|
/* height: 85vh; */
|
|
/* height: 85vh; */
|
|
@@ -796,6 +808,7 @@ onMounted(() => {
|
|
display: flex;
|
|
display: flex;
|
|
flex-wrap: nowrap;
|
|
flex-wrap: nowrap;
|
|
justify-content: space-between;
|
|
justify-content: space-between;
|
|
|
|
+ line-height: 40px;
|
|
}
|
|
}
|
|
.apparatusAndpower {
|
|
.apparatusAndpower {
|
|
width: 100%;
|
|
width: 100%;
|
|
@@ -806,14 +819,14 @@ onMounted(() => {
|
|
}
|
|
}
|
|
.apparatus-box,
|
|
.apparatus-box,
|
|
.power-box {
|
|
.power-box {
|
|
- width: 32%;
|
|
|
|
|
|
+ width: 50%;
|
|
box-shadow: 0 2px 5px #e9e9e9;
|
|
box-shadow: 0 2px 5px #e9e9e9;
|
|
background: #fff;
|
|
background: #fff;
|
|
margin: 0.5%;
|
|
margin: 0.5%;
|
|
border-radius: 5px;
|
|
border-radius: 5px;
|
|
display: flex;
|
|
display: flex;
|
|
- justify-content: space-between;
|
|
|
|
- /* align-items: center; */
|
|
|
|
|
|
+ justify-content: space-around;
|
|
|
|
+ align-items: center;
|
|
flex-wrap: wrap;
|
|
flex-wrap: wrap;
|
|
}
|
|
}
|
|
.apparatus-item {
|
|
.apparatus-item {
|
|
@@ -826,21 +839,22 @@ onMounted(() => {
|
|
}
|
|
}
|
|
.power-item {
|
|
.power-item {
|
|
width: 23%;
|
|
width: 23%;
|
|
- margin: 0% 1%;
|
|
|
|
|
|
+ height:80px;
|
|
box-shadow: 0 2px 5px #e9e9e9;
|
|
box-shadow: 0 2px 5px #e9e9e9;
|
|
background: #fff;
|
|
background: #fff;
|
|
border-radius: 5px;
|
|
border-radius: 5px;
|
|
margin: 1%;
|
|
margin: 1%;
|
|
|
|
+ line-height: 40px;
|
|
}
|
|
}
|
|
.apparatus-title {
|
|
.apparatus-title {
|
|
- font-size: 16px;
|
|
|
|
- margin-bottom: 5px;
|
|
|
|
- border-bottom: 1px dashed #e9e9e9;
|
|
|
|
- line-height: 40px;
|
|
|
|
width: 100%;
|
|
width: 100%;
|
|
background: #dfe6e9;
|
|
background: #dfe6e9;
|
|
- color: #fff;
|
|
|
|
|
|
+ margin-bottom: 5px;
|
|
|
|
+ line-height: 25px;
|
|
|
|
+ border-bottom: 1px dashed #e9e9e9;
|
|
|
|
+ font-size: 16px;
|
|
font-weight: bold;
|
|
font-weight: bold;
|
|
|
|
+ color: #fff;
|
|
}
|
|
}
|
|
.inuse-title {
|
|
.inuse-title {
|
|
width: 100%;
|
|
width: 100%;
|
|
@@ -867,6 +881,7 @@ onMounted(() => {
|
|
box-shadow: 0 2px 5px #e9e9e9;
|
|
box-shadow: 0 2px 5px #e9e9e9;
|
|
background: #fff;
|
|
background: #fff;
|
|
margin: 0.5%;
|
|
margin: 0.5%;
|
|
|
|
+ align-items: center;
|
|
}
|
|
}
|
|
.item-title-images {
|
|
.item-title-images {
|
|
width: 100%;
|
|
width: 100%;
|
|
@@ -907,7 +922,7 @@ onMounted(() => {
|
|
border-radius: 5px;
|
|
border-radius: 5px;
|
|
background: #fff;
|
|
background: #fff;
|
|
box-shadow: 0 2px 5px #e9e9e9;
|
|
box-shadow: 0 2px 5px #e9e9e9;
|
|
- margin: 0.5% 1%;
|
|
|
|
|
|
+ margin: 0.5%;
|
|
overflow: hidden;
|
|
overflow: hidden;
|
|
overflow-y: auto;
|
|
overflow-y: auto;
|
|
}
|
|
}
|
|
@@ -976,7 +991,7 @@ onMounted(() => {
|
|
color: #007fff;
|
|
color: #007fff;
|
|
}
|
|
}
|
|
.inuse-left {
|
|
.inuse-left {
|
|
- width: 100%;
|
|
|
|
|
|
+ width: 50%;
|
|
box-shadow: 0 2px 5px #e9e9e9;
|
|
box-shadow: 0 2px 5px #e9e9e9;
|
|
background: #fff;
|
|
background: #fff;
|
|
margin: 0.5%;
|
|
margin: 0.5%;
|
|
@@ -986,13 +1001,14 @@ onMounted(() => {
|
|
align-items: center;
|
|
align-items: center;
|
|
flex-wrap: wrap;
|
|
flex-wrap: wrap;
|
|
}
|
|
}
|
|
|
|
+
|
|
.inuse-right {
|
|
.inuse-right {
|
|
width: 49.5%;
|
|
width: 49.5%;
|
|
margin-left: 0%;
|
|
margin-left: 0%;
|
|
border-radius: 5px;
|
|
border-radius: 5px;
|
|
background: #fff;
|
|
background: #fff;
|
|
box-shadow: 0 2px 5px #e9e9e9;
|
|
box-shadow: 0 2px 5px #e9e9e9;
|
|
- margin: 0.5% 0%;
|
|
|
|
|
|
+ margin: 0.5%;
|
|
/* margin-left: 1%; */
|
|
/* margin-left: 1%; */
|
|
position: relative;
|
|
position: relative;
|
|
}
|
|
}
|
|
@@ -1006,7 +1022,7 @@ onMounted(() => {
|
|
border-radius: 5px;
|
|
border-radius: 5px;
|
|
/* box-shadow: 0 2px 5px #e9e9e9; */
|
|
/* box-shadow: 0 2px 5px #e9e9e9; */
|
|
border: 1px solid #e9e9e9;
|
|
border: 1px solid #e9e9e9;
|
|
- margin: 0.5%;
|
|
|
|
|
|
+ margin: 1%;
|
|
}
|
|
}
|
|
.inuseicon {
|
|
.inuseicon {
|
|
width: 1.6em;
|
|
width: 1.6em;
|
|
@@ -1226,6 +1242,9 @@ onMounted(() => {
|
|
.noneclassclass-text {
|
|
.noneclassclass-text {
|
|
color: #95a5a6 !important;
|
|
color: #95a5a6 !important;
|
|
}
|
|
}
|
|
|
|
+ .lessons-item:last-child{
|
|
|
|
+ margin-bottom: 1%;
|
|
|
|
+ }
|
|
@media screen and (max-width: 1400px) {
|
|
@media screen and (max-width: 1400px) {
|
|
.basicadata-item {
|
|
.basicadata-item {
|
|
line-height: 30px !important;
|
|
line-height: 30px !important;
|