| 
					
				 | 
			
			
				@@ -1031,16 +1031,16 @@ export default { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       // 工具类大分类 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       hd: [10, 65], 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-      sw: [7, 1, 52, 3, 52], 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      sw: [7, 1, 52, 3,48], 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       xz: [49], 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       cp: [4, 45, 15, 16, 50, 41, 47], 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       pj: [40], 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       bc: [18, 21, 23, 24, 32, 57, 63, 71], 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       xk: [28, 31, 39, 66, , 68, 69, 70], 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       // 师生互动工具list 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-      TeaStuInt: [7, 1, 52, 3, 48, 15, 16, 50, 57], 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      TeaStuInt: [ 1, 52, 3, 48, 16], 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       // 处理过的分组,师生互动数据 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-      TeaStuInt2: [1, 3, 5, 4, 10, 11, 13, 15], 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      // TeaStuInt2: [1, 3, 52, 4, 10, 11, 13, 15], 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       AiAnalysisCon2Copy: "", //ai数据分析 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       AiAnalysisCon2: { 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -1156,6 +1156,8 @@ export default { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       this.loading = true; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       this.tableData = this.multipleSelection; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         // 单个下载报告 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      this.claOptions = [] 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+       
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       if (this.tableData.length == 1) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         // 查看学生有几个班级 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         let stuCla = []; 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -1172,14 +1174,15 @@ export default { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				           }); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         }); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        if (this.claOptions.length == 1) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        if (this.claOptions.length == 1 ) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				           this.claV = this.claOptions[0].value; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         } else if (this.claOptions.length == 0) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				           // 没有班级时 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				           this.claV = "——"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        } else { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        } else if (this.claOptions.length > 1 && !this.claV){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				           //有两个及以上班级时 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				           this.loading = false; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        
			 | 
		
	
		
			
				 | 
				 | 
			
			
				           return this.$message.info("请选择班级"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         // 得到班级数据 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -1195,14 +1198,14 @@ export default { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				           this.isDown = false; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				           setTimeout(() => { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             this.getPdf(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-          }, 1000); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          }, 2000); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         } else {  //当无ai分析时先进行ai分析 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				           await this.getAiAnalysisCon3(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				           this.loading = false; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				           this.isDown = false; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				           setTimeout(() => { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             this.getPdf(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-          }, 1000); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          }, 2000); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -1246,6 +1249,8 @@ export default { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     // 查看pdf报告 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     async lookPage() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       this.loading = true; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      this.claOptions = [] 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       // 处理班级,查看学生有几个班级 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       let stuCla = []; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       if (this.worksDialogCon.classid) { 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -1266,7 +1271,7 @@ export default { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       } else if (this.claOptions.length == 0) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         // 没有班级时 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         this.claV = "——"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-      } else { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      } else if(this.claOptions.length > 1 && !this.claV ){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         //有两个及以上班级时 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         this.loading = false; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         return this.$message.info("请选择班级"); 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -1650,6 +1655,7 @@ export default { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     getTarget(data) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       // 素养与分数重组后的数据 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       let tar = []; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      console.log('data',JSON.parse(JSON.stringify(data))); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       // 细分出每个任务工具的细则 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       data.forEach((e, i) => { 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -1659,7 +1665,7 @@ export default { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         }); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       }); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-      // console.log("tar", JSON.parse(JSON.stringify(tar))); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      console.log("tar", JSON.parse(JSON.stringify(tar))); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       let zjm = []; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       tar.forEach((e, i) => { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         e.forEach(k => { 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -1676,7 +1682,7 @@ export default { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         e.tarD = JSON.parse(e.rate); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       }); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       // console.log('tar',JSON.parse(JSON.stringify(tar))); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-      // console.log('data4Copy',JSON.parse(JSON.stringify(data4Copy))); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      console.log('data4Copy',JSON.parse(JSON.stringify(data4Copy))); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       tar.forEach((k, ki) => { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         data4Copy.forEach((e, ei) => { 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -1722,6 +1728,7 @@ export default { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				           } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         }); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       }); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      console.log('tarCopy',JSON.parse(JSON.stringify(tarCopy))); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       // 将细则的素养全部放到一个数组中 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       let tarList = []; 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -1737,8 +1744,8 @@ export default { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       // 素养多边形数据 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       let polygonData = this.tarArrFn(tarList); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-      // console.log("polygonData", JSON.parse(JSON.stringify(polygonData))); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-      // console.log("tarList", JSON.parse(JSON.stringify(tarList))); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      console.log("polygonData", JSON.parse(JSON.stringify(polygonData))); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      console.log("tarList", JSON.parse(JSON.stringify(tarList))); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       polygonData.forEach(e => { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         e.sco = 0; 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -1830,6 +1837,8 @@ export default { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				           } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         }); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       }); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      console.log("tarListCopy", JSON.parse(JSON.stringify(tarListCopy))); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       tarListCopy.forEach(e => { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         //素养 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -1851,6 +1860,7 @@ export default { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				           }); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         }); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       }); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      console.log("this.treeData", JSON.parse(JSON.stringify(this.treeData))); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       this.treeData = { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         id: "0", 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -1858,9 +1868,9 @@ export default { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         children: tarListCopy 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       }; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-      setTimeout(() => { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        this.moreRenderChart(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-      }, 500); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      // setTimeout(() => { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      this.moreRenderChart(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      // }, 100); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     }, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -2562,6 +2572,8 @@ export default { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     // ai模式处理数据 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     getDataAiMode(data) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      console.log('getDataAiMode',data); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+       
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       data.forEach((e, eInd) => { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         let toolList = e.chapterInfo[0].taskJson; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         toolList.forEach((i, iInd) => { 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -2611,7 +2623,7 @@ export default { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				           }); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         }); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       }); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-      // console.log("this.toolData", this.toolData); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      console.log("this.toolData", this.toolData); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       // 环形图占比 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       this.toolRatio[0].value = this.toolData[0].length; 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -2624,6 +2636,8 @@ export default { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       this.toolRatio = this.toolRatio.filter(e => { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         return e.value != 0; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       }); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      console.log("this.toolRatio", this.toolRatio); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       this.renderChart2(); //环形 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       // console.log("this.toolRatio[0]", this.toolRatio); 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -2960,31 +2974,41 @@ export default { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       this.getClaFoldLineDataAi(val); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     }, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     getClaFoldLineDataAi(repeatWork) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-      let repeatWorkCopy = []; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-      let allWorkNum = []; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      let repeatWorkCopy = []; //作业任务分类容器 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      let allWorkNum = [];    
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       this.stageList.forEach((e, index) => { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         repeatWorkCopy[index] = []; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         allWorkNum[index] = 0; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       }); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-      // 将作业进行阶段分类 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      // 将作业进行任务分类 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       repeatWork.forEach(e => { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         repeatWorkCopy[e.task].push(e); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       }); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-      this.toolPercentage.forEach((e, index) => { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        allWorkNum[index] = e.length * this.data12[0].num; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-      }); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				- 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-      allWorkNum.forEach((e, index) => { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        if (repeatWorkCopy[index].length) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-          this.classStageListPer[index] = ( 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            repeatWorkCopy[index].length / e 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-          ).toFixed(2); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        } else { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-          this.classStageListPer[index] = 0; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      repeatWorkCopy.forEach((e,index)=>{ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        if (e.length) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          this.classStageListPer[index] = (e.length / (this.data12[0].num * this.toolPercentage[index].length)).toFixed(2); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        }else{ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          this.classStageListPer[index] = 0 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-      }); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      }) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      // this.toolPercentage.forEach((e, index) => { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      //   allWorkNum[index] = e.length * this.data12[0].num; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      // }); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      // allWorkNum.forEach((e, index) => { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      //   if (repeatWorkCopy[index].length) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      //     this.classStageListPer[index] = ( 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      //       repeatWorkCopy[index].length / e 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      //     ).toFixed(2); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      //   } else { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      //     this.classStageListPer[index] = 0; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      //   } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      // }); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       this.initChart(); // 作业提交率折线图 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     }, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -2996,8 +3020,8 @@ export default { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         e.sco = 0; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         let kop = 0; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        con.forEach(i => { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-          if (!isNaN(Number(i))) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        con.forEach((i,k) => { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          if (k != con.length-1) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             e.sco += i * 1; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             kop++; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				           } 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -3023,8 +3047,6 @@ export default { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         repeatWorkCopy[e.task].push(e); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       }); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-      // console.log("repeatWorkCopy", repeatWorkCopy); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				- 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       repeatWorkCopy.forEach((e, index) => { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         e.forEach(k => { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				           scoList[index] += k.sco * 1; 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -3053,8 +3075,8 @@ export default { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         let con = Object.values(JSON.parse(e.rate)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         e.sco = 0; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         let kop = 0; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        con.forEach(i => { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-          if (!isNaN(Number(i))) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        con.forEach((i,k) => { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          if (k != con.length-1) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             e.sco += i * 1; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             kop++; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				           } 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -3079,37 +3101,44 @@ export default { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         repeatWorkCopy[e.task].push(e); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       }); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      // 获取任务下的可评分工具数量 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      let toolNum = [] 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      this.toolPercentage.forEach((e,i) => { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        toolNum[i] = [] 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        e.forEach(k=>{ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          if (this.TeaStuInt.indexOf(k) != -1) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            toolNum[i].push(k) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        }) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      }); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       repeatWorkCopy.forEach((e, index) => { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         e.forEach(k => { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				           scoList[index] += k.sco * 1; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         }); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        // scoList[index] //任务得分 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         if (scoList[index] == 0) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				           scoList[index] = 0; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         } else { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-          scoList[index] = scoList[index] / e.length; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+         
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          //任务平均分 = 任务得分 / 人数 / 评分 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          scoList[index] = (scoList[index] / this.data12[0].num); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       }); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-      // let repeatWorkCopyTwo = [] 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				- 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-      // repeatWorkCopy.forEach((e,i)=>{ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-      //   repeatWorkCopyTwo[i]= [] 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-      //   if (e.length) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-      //     e.forEach(k=>{ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-      //       repeatWorkCopyTwo[i].push(k.sco) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-      //     }) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-      //   } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-      //   repeatWorkCopyTwo[i]= 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-      // }) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+     
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-      this.claScoFoldLineData = scoList.map(e => { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      this.claScoFoldLineData = scoList.map((e,i) => { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         if (e == 0) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				           return 0; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         } else { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-          return (e / this.data12[0].num).toFixed(2); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          return (e / toolNum[i].length).toFixed(2); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       }); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-      this.initChart2(); // 任务成绩 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      this.initChart2(); // 班级任务成绩 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     }, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     // 师生互动数据 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -3380,9 +3409,9 @@ export default { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       chart.setOption(option); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-      window.onresize = () => { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        jm.resize(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-      }; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      // window.onresize = () => { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      //   jm.resize(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      // }; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     }, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     // 分组工具占比 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     initChart3() { 
			 |