2024年7月2日 完善导出

This commit is contained in:
bai 2024-07-02 20:18:12 +08:00
parent 0d98027875
commit 6b30de86b3
24 changed files with 16151 additions and 552 deletions

19
jeecg-boot/build.bat Normal file
View File

@ -0,0 +1,19 @@
@echo off
echo 如果编译错误请设置JDK为17版本
if not exist javaPath.txt (
echo 请在项目根目录创建【javaPath.txt】文件并填写jdk路径,文件内容大致为【D:\ProgramGreeFile\JAVA\1.8.0_192\jdk1.8.0_192】
pause
exit
)
set /P javaPath=<javaPath.txt
if not defined javaPath (
echo 请在项目根目录创建【javaPath.txt】文件并填写jdk路径,文件内容大致为【D:\ProgramGreeFile\JAVA\1.8.0_192\jdk1.8.0_192】
pause
exit
)
set JAVA_HOME=%javaPath%
set path2=%javaPath%\bin;%path%
echo 开始编译
call set path=%path2% && mvn clean package
echo 如果编译错误请设置JDK为17版本
pause

6
jeecg-boot/gxdm.bat Normal file
View File

@ -0,0 +1,6 @@
@echo off
echo 更新后台代码中...
git.exe pull -v --progress "origin"
echo 更新成功
PAUSE
exit

1
jeecg-boot/javaPath.txt Normal file
View File

@ -0,0 +1 @@
D:\ProgramGreeFile\JAVA\jdk-17.0.9

View File

@ -18,13 +18,13 @@ public interface BlStuAnswerMapper extends BaseMapper<BlStuAnswer> {
//答题数量
String selectDtsl(String id);
@MapKey("sex")
@MapKey("key")
List<Map<String, String>> t1_1_1(String id);
@MapKey("name")
@MapKey("key")
List<Map<String, String>> t1_1_2(String id);
@MapKey("politics")
@MapKey("key")
List<Map<String, String>> t1_1_3(String id);
@MapKey("key")
@ -38,13 +38,13 @@ public interface BlStuAnswerMapper extends BaseMapper<BlStuAnswer> {
String b1_1_4(String id);
@MapKey("id")
Map<String, String> i1_2(String id);
@MapKey("key")
List<Map<String, String>> i1_2(String id);
@MapKey("学习主动性各方面")
@MapKey("key")
List<Map<String, String>> t1_3(String id);
@MapKey("major")
@MapKey("key")
List<Map<String, String>> t1_4(String id);
String b1_2_1(String id);
@ -55,10 +55,10 @@ public interface BlStuAnswerMapper extends BaseMapper<BlStuAnswer> {
String b1_2_4(String id);
@MapKey("课外学习各方面")
@MapKey("key")
List<Map<String, String>> t1_5(String id);
@MapKey("major")
@MapKey("key")
List<Map<String, String>> t1_6(String id);
String b1_2_5(String id);
@ -69,10 +69,10 @@ public interface BlStuAnswerMapper extends BaseMapper<BlStuAnswer> {
String b1_2_8(String id);
@MapKey("课外活动各方面")
@MapKey("key")
List<Map<String, String>> t1_7(String id);
@MapKey("major")
@MapKey("key")
List<Map<String, String>> t1_8(String id);
String b1_3_1(String id);
@ -86,23 +86,23 @@ public interface BlStuAnswerMapper extends BaseMapper<BlStuAnswer> {
@MapKey("key")
List<Map<String, String>> i1_9(String id);
@MapKey("同辈互动各方面")
@MapKey("key")
List<Map<String, String>> t1_10(String id);
@MapKey("major")
@MapKey("key")
List<Map<String, String>> t1_11(String id);
String b1_4_1(String id);
String b1_4_2(String id);
@MapKey("a")
@MapKey("key")
List<Map<String, String>> i1_12(String id);
@MapKey("key")
List<Map<String, String>> i1_13(String id);
@MapKey("专业名称")
@MapKey("key")
List<Map<String, String>> t1_14(String id);
String b2_1_1(String id);
@ -139,7 +139,7 @@ public interface BlStuAnswerMapper extends BaseMapper<BlStuAnswer> {
String b2_1_9(String id);
@MapKey("key")
Map<String, String> i2_6(String id);
List<Map<String, String>> i2_6(String id);
@MapKey("key")
List<Map<String, String>> t2_7(String id);
@ -160,7 +160,7 @@ public interface BlStuAnswerMapper extends BaseMapper<BlStuAnswer> {
String b2_2_6(String id);
@MapKey("key")
Map<String, String> i2_9(String id);
List<Map<String, String>> i2_9(String id);
@MapKey("key")
List<Map<String, String>> t2_10(String id);
@ -180,7 +180,7 @@ public interface BlStuAnswerMapper extends BaseMapper<BlStuAnswer> {
String b2_3_4(String id);
@MapKey("key")
Map<String, String> i2_13(String id);
List<Map<String, String>> i2_13(String id);
@MapKey("key")
List<Map<String, String>> t2_14(String id);
@ -213,7 +213,7 @@ public interface BlStuAnswerMapper extends BaseMapper<BlStuAnswer> {
String b2_5_3(String id);
@MapKey("key")
Map<String, String> i2_18(String id);
List<Map<String, String>> i2_18(String id);
@MapKey("key")
List<Map<String, String>> t2_19(String id);
@ -248,7 +248,7 @@ public interface BlStuAnswerMapper extends BaseMapper<BlStuAnswer> {
String b2_6_10(String id);
@MapKey("key")
Map<String, String> i2_23(String id);
List<Map<String, String>> i2_23(String id);
@MapKey("key")
List<Map<String, String>> t2_24(String id);
@ -268,7 +268,7 @@ public interface BlStuAnswerMapper extends BaseMapper<BlStuAnswer> {
String b2_7_4(String id);
@MapKey("key")
Map<String, String> i2_27(String id);
List<Map<String, String>> i2_27(String id);
@MapKey("key")
List<Map<String, String>> t2_28(String id);
@ -287,7 +287,7 @@ public interface BlStuAnswerMapper extends BaseMapper<BlStuAnswer> {
String b2_8_5(String id);
@MapKey("key")
Map<String, String> i2_30(String id);
List<Map<String, String>> i2_30(String id);
@MapKey("key")
List<Map<String, String>> t2_31(String id);
@ -313,7 +313,7 @@ public interface BlStuAnswerMapper extends BaseMapper<BlStuAnswer> {
String b2_9_7(String id);
@MapKey("key")
Map<String, String> i2_34(String id);
List<Map<String, String>> i2_34(String id);
@MapKey("key")
List<Map<String, String>> t2_35(String id);
@ -333,7 +333,7 @@ public interface BlStuAnswerMapper extends BaseMapper<BlStuAnswer> {
String b3_1_4(String id);
@MapKey("key")
Map<String, String> i3_2(String id);
List<Map<String, String>> i3_2(String id);
@MapKey("key")
List<Map<String, String>> t3_3(String id);
@ -377,7 +377,7 @@ public interface BlStuAnswerMapper extends BaseMapper<BlStuAnswer> {
String b3_3_5(String id);
@MapKey("key")
Map<String, String> i3_10(String id);
List<Map<String, String>> i3_10(String id);
@MapKey("key")
List<Map<String, String>> t3_11(String id);
@ -397,7 +397,7 @@ public interface BlStuAnswerMapper extends BaseMapper<BlStuAnswer> {
String b4_1_4(String id);
@MapKey("key")
Map<String, String> i4_2(String id);
List<Map<String, String>> i4_2(String id);
@MapKey("key")
List<Map<String, String>> t4_3(String id);
@ -440,7 +440,7 @@ public interface BlStuAnswerMapper extends BaseMapper<BlStuAnswer> {
String b4_3_5(String id);
@MapKey("key")
Map<String, String> i4_9(String id);
List<Map<String, String>> i4_9(String id);
@MapKey("key")
List<Map<String, String>> t4_10(String id);
@ -464,7 +464,7 @@ public interface BlStuAnswerMapper extends BaseMapper<BlStuAnswer> {
String b4_4_6(String id);
@MapKey("key")
Map<String, String> i4_13(String id);
List<Map<String, String>> i4_13(String id);
@MapKey("key")
List<Map<String, String>> t4_14(String id);
@ -486,7 +486,7 @@ public interface BlStuAnswerMapper extends BaseMapper<BlStuAnswer> {
String b5_1_5(String id);
@MapKey("key")
Map<String, String> i5_2(String id);
List<Map<String, String>> i5_2(String id);
@MapKey("key")
List<Map<String, String>> t5_3(String id);

View File

@ -951,7 +951,7 @@
union all
select '个人独立完成的课程作业' as 'key' ,round(round(b.no_cnt/a.tot_cnt,2)*100) as '01' from (select count('x') as tot_cnt from bl_stu_answer where main_id = #{id})a,(select count('x') as no_cnt from bl_stu_answer where main_id = #{id} and EVALUATE_GEREN = #{id})b
union all
select '过课程论文或实验报告' as 'key' ,round(round(b.no_cnt/a.tot_cnt,2)*100) as '01' from (select count('x') as tot_cnt from bl_stu_answer where main_id = #{id})a,(select count('x') as no_cnt from bl_stu_answer where main_id = #{id} and EVALUATE_LUNWEN = #{id
select '过课程论文或实验报告' as 'key' ,round(round(b.no_cnt/a.tot_cnt,2)*100) as '01' from (select count('x') as tot_cnt from bl_stu_answer where main_id = #{id})a,(select count('x') as no_cnt from bl_stu_answer where main_id = #{id} and EVALUATE_LUNWEN = #{id})b
</select>
<select id="i2_17" resultType="java.util.Map">

View File

@ -3,6 +3,7 @@ package org.jeecg.modules.demo.blTeacherAnswer.service.impl;
import com.alibaba.fastjson.JSONObject;
import com.google.common.collect.Lists;
import com.google.common.collect.Maps;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang3.StringUtils;
import org.jeecg.modules.demo.blTeacherAnswer.entity.BlTeacherAnswer;
import org.jeecg.modules.demo.blTeacherAnswer.mapper.BlTeacherAnswerMapper;
@ -28,6 +29,7 @@ import java.util.Random;
* @Date: 2024-06-23
* @Version: V1.0
*/
@Slf4j
@Service
public class BlTeacherAnswerServiceImpl extends ServiceImpl<BlTeacherAnswerMapper, BlTeacherAnswer> implements IBlTeacherAnswerService {
@ -61,6 +63,8 @@ public class BlTeacherAnswerServiceImpl extends ServiceImpl<BlTeacherAnswerMappe
result.put("teacherSumno", teacherSumno);//总人数
List<BlTeacherAnswer> nvzbList = baseMapper.getSelectNvzb(blTeacherMain);
for(BlTeacherAnswer par:nvzbList){
if(StringUtils.equals(par.getSex(),"")){
@ -207,11 +211,11 @@ public class BlTeacherAnswerServiceImpl extends ServiceImpl<BlTeacherAnswerMappe
" data: "+JSONObject.toJSONString(sdsfhpzztBjfh)+", barWidth: 45, itemStyle: { color: '#008ac8' } },\n" +
" { name: '一般', type: 'bar', stack: 'total', label: { show: true, fontSize: 30 },emphasis: {focus: 'series'},\n" +
" data: "+JSONObject.toJSONString(sdsfhpzztYb)+", barWidth: 45,itemStyle: {color: '#57b8e7'}},]}";
System.out.println("option---------------->"+sdsfhpZztImg1Options);
log.info("option---------------->"+sdsfhpZztImg1Options);
String sdsfhpZztImg1 = WebDriverUtil.getImgByte300(sdsfhpZztImg1Options);
System.out.println("================================");
System.out.println(sdsfhpZztImg1);
System.out.println("================================");
log.info("================================");
log.info(sdsfhpZztImg1);
log.info("================================");
result.put("sdsfhpZztImg1", sdsfhpZztImg1);
//教师的师德师风互评-评分
@ -236,9 +240,9 @@ public class BlTeacherAnswerServiceImpl extends ServiceImpl<BlTeacherAnswerMappe
" formatter: function (value) {let list = value.split(\"\");let result = \"\"; for (let i = 1; i <= list.length; i++) {if (!(i % 17) && list[i] != undefined) { result += list[i - 1] + '\\n';} else {result += list[i - 1];} }return result;},},},\n" +
" series: [{type: 'radar',data: [{value: \n" +JSONObject.toJSONString(ldt1Data)+ " ,label:{show: true,position: 'outside',fontSize:20},},]}]}";
String sdsfhpLdtImg2 = WebDriverUtil.getImgByte400(sdsfhpLdtImg2Ldt);
System.out.println("================================");
System.out.println(sdsfhpLdtImg2);
System.out.println("================================");
log.info("================================");
log.info(sdsfhpLdtImg2);
log.info("================================");
result.put("sdsfhpLdtImg2", sdsfhpLdtImg2);
//不同岗位类型教师的师德师风互评
@ -314,9 +318,9 @@ public class BlTeacherAnswerServiceImpl extends ServiceImpl<BlTeacherAnswerMappe
" data: "+JSONObject.toJSONString(jsjbxwBjbfh)+", barWidth: 45,itemStyle: {color: '#57b8e7'}},]}";
String jsjbxwhpTjtImg3 = WebDriverUtil.getImgByte500(jsjbxwhpTjtImg3Options);
System.out.println("================================");
System.out.println(jsjbxwhpTjtImg3);
System.out.println("================================");
log.info("================================");
log.info(jsjbxwhpTjtImg3);
log.info("================================");
result.put("jsjbxwhpTjtImg3", jsjbxwhpTjtImg3);
@ -356,9 +360,9 @@ public class BlTeacherAnswerServiceImpl extends ServiceImpl<BlTeacherAnswerMappe
" formatter: function (value) {let list = value.split(\"\");let result = \"\"; for (let i = 1; i <= list.length; i++) {if (!(i % 17) && list[i] != undefined) { result += list[i - 1] + '\\n';} else {result += list[i - 1];} }return result;},},},\n" +
" series: [{type: 'radar',data: [{value: \n" +JSONObject.toJSONString(ldt2Data)+ " ,label:{show: true,position: 'outside',fontSize:20},},]}]}";
String jsjbxwhpLdtImg4 = WebDriverUtil.getImgByte500(jsjbxwhpLdtImg4Ldt);
System.out.println("================================");
System.out.println(jsjbxwhpLdtImg4);
System.out.println("================================");
log.info("================================");
log.info(jsjbxwhpLdtImg4);
log.info("================================");
result.put("jsjbxwhpLdtImg4", jsjbxwhpLdtImg4);
//不同岗位类型教师基本行为互评
@ -430,9 +434,9 @@ public class BlTeacherAnswerServiceImpl extends ServiceImpl<BlTeacherAnswerMappe
" data: "+JSONObject.toJSONString(jxnlpjYb)+", barWidth: 45,itemStyle: {color: '#57b8e7'}},]}";
String jsdjxnlgfmpggxzbImg5 = WebDriverUtil.getImgByte(jsdjxnlgfmpggxzbImg5Options);
System.out.println("================================");
System.out.println(jsdjxnlgfmpggxzbImg5);
System.out.println("================================");
log.info("================================");
log.info(jsdjxnlgfmpggxzbImg5);
log.info("================================");
result.put("jsdjxnlgfmpggxzbImg5", jsdjxnlgfmpggxzbImg5);
@ -467,9 +471,9 @@ public class BlTeacherAnswerServiceImpl extends ServiceImpl<BlTeacherAnswerMappe
" formatter: function (value) {let list = value.split(\"\");let result = \"\"; for (let i = 1; i <= list.length; i++) {if (!(i % 17) && list[i] != undefined) { result += list[i - 1] + '\\n';} else {result += list[i - 1];} }return result;},},},\n" +
" series: [{type: 'radar',data: [{value: \n" +JSONObject.toJSONString(ldt3Data)+ " ,label:{show: true,position: 'outside',fontSize:20},},]}]}";
String jsdjxnlgfmpggxzbLdtImg6 = WebDriverUtil.getImgByte500(jsdjxnlgfmpggxzbLdtImg6Ldt);
System.out.println("================================");
System.out.println(jsdjxnlgfmpggxzbLdtImg6);
System.out.println("================================");
log.info("================================");
log.info(jsdjxnlgfmpggxzbLdtImg6);
log.info("================================");
result.put("jsdjxnlgfmpggxzbLdtImg6", jsdjxnlgfmpggxzbLdtImg6);
//不同岗位类型教师对教学能力的评价
@ -542,9 +546,9 @@ public class BlTeacherAnswerServiceImpl extends ServiceImpl<BlTeacherAnswerMappe
" data: "+JSONObject.toJSONString(cnrFcfh)+" \n" +
" }]}";
String jxsjtrImg7 = WebDriverUtil.getImgByte(jxsjtrImg7Options);
System.out.println("================================");
System.out.println(jxsjtrImg7);
System.out.println("================================");
log.info("================================");
log.info(jxsjtrImg7);
log.info("================================");
result.put("jxsjtrImg7", jxsjtrImg7);
@ -579,9 +583,9 @@ public class BlTeacherAnswerServiceImpl extends ServiceImpl<BlTeacherAnswerMappe
" name: '教学型', type: 'bar',\n" +
" data: "+JSONObject.toJSONString(btgwlxpjsjTj2)+" ,label:{show: true,position: 'outside'},} ] }";
String btgwlxpjsjtrImg8 = WebDriverUtil.getImgByte(btgwlxpjsjtrImg8Options);
System.out.println("================================");
System.out.println(btgwlxpjsjtrImg8);
System.out.println("================================");
log.info("================================");
log.info(btgwlxpjsjtrImg8);
log.info("================================");
result.put("btgwlxpjsjtrImg8", btgwlxpjsjtrImg8);
@ -637,9 +641,9 @@ public class BlTeacherAnswerServiceImpl extends ServiceImpl<BlTeacherAnswerMappe
" data: "+JSONObject.toJSONString(btzxpjsjTj4)+" ,label:{show: true,position: 'outside'},}, " +
"] }";
String btzcjspjtrscImg9 = WebDriverUtil.getImgByte(btzcjspjtrscImg9Options);
System.out.println("================================");
System.out.println(btzcjspjtrscImg9);
System.out.println("================================");
log.info("================================");
log.info(btzcjspjtrscImg9);
log.info("================================");
result.put("btzcjspjtrscImg9", btzcjspjtrscImg9);
//各学院教师在各项工作上的平均时间投入
@ -686,9 +690,9 @@ public class BlTeacherAnswerServiceImpl extends ServiceImpl<BlTeacherAnswerMappe
" data: "+JSONObject.toJSONString(jszgljxrwfpblData)+" \n" +
" }]}";
String jszgljxrwfpbl10 = WebDriverUtil.getImgByte(jszgljxrwfpbl10Options);
System.out.println("================================");
System.out.println(jszgljxrwfpbl10);
System.out.println("================================");
log.info("================================");
log.info(jszgljxrwfpbl10);
log.info("================================");
result.put("jszgljxrwfpbl10", jszgljxrwfpbl10);
@ -721,9 +725,9 @@ public class BlTeacherAnswerServiceImpl extends ServiceImpl<BlTeacherAnswerMappe
" name: '教学型', type: 'bar',\n" +
" data: "+JSONObject.toJSONString(btgwlxjszgxgzrdpjsjtr1)+" ,label:{show: true,position: 'outside'},} ] }";
String jszgljxrwfpbl11 = WebDriverUtil.getImgByte(jszgljxrwfpbl11Options);
System.out.println("================================");
System.out.println(jszgljxrwfpbl11);
System.out.println("================================");
log.info("================================");
log.info(jszgljxrwfpbl11);
log.info("================================");
result.put("jszgljxrwfpbl11", jszgljxrwfpbl11);
@ -775,9 +779,9 @@ public class BlTeacherAnswerServiceImpl extends ServiceImpl<BlTeacherAnswerMappe
" data: "+JSONObject.toJSONString(btzcjszgljxrwzb4)+" ,label:{show: true,position: 'outside'},}, " +
"] }";
String jszgljxrwfpbl12 = WebDriverUtil.getImgByte(jszgljxrwfpbl12Options);
System.out.println("================================");
System.out.println(jszgljxrwfpbl12);
System.out.println("================================");
log.info("================================");
log.info(jszgljxrwfpbl12);
log.info("================================");
result.put("jszgljxrwfpbl12", jszgljxrwfpbl12);
@ -823,9 +827,9 @@ public class BlTeacherAnswerServiceImpl extends ServiceImpl<BlTeacherAnswerMappe
" data: "+JSONObject.toJSONString(kcjxrrszysTjt1)+" \n" +
" }]}";
String szkc13 = WebDriverUtil.getImgByte(szkc13Options);
System.out.println("================================");
System.out.println(szkc13);
System.out.println("================================");
log.info("================================");
log.info(szkc13);
log.info("================================");
result.put("szkc13", szkc13);
@ -860,9 +864,9 @@ public class BlTeacherAnswerServiceImpl extends ServiceImpl<BlTeacherAnswerMappe
" name: '教学型', type: 'bar',\n" +
" data: "+JSONObject.toJSONString(btgwlxjskcjxrrszys1)+" ,label:{show: true,position: 'outside'},} ] }";
String szkc14 = WebDriverUtil.getImgByte(szkc14Options);
System.out.println("================================");
System.out.println(szkc14);
System.out.println("================================");
log.info("================================");
log.info(szkc14);
log.info("================================");
result.put("szkc14", szkc14);//
//不同职称教师课程教学融入思政元素的方式
@ -913,9 +917,9 @@ public class BlTeacherAnswerServiceImpl extends ServiceImpl<BlTeacherAnswerMappe
" data: "+JSONObject.toJSONString(btzcjskcjxrrszys4)+" ,label:{show: true,position: 'outside'},}, " +
"] }";
String szkc15 = WebDriverUtil.getImgByte(szkc15Options);
System.out.println("================================");
System.out.println(szkc15);
System.out.println("================================");
log.info("================================");
log.info(szkc15);
log.info("================================");
result.put("szkc15", szkc15);//
@ -971,9 +975,9 @@ public class BlTeacherAnswerServiceImpl extends ServiceImpl<BlTeacherAnswerMappe
"]}";
String kclxyd16 = WebDriverUtil.getImgByte500(kclxyd16Options);
System.out.println("================================");
System.out.println(kclxyd16);
System.out.println("================================");
log.info("================================");
log.info(kclxyd16);
log.info("================================");
result.put("kclxyd16", kclxyd16);
@ -1010,9 +1014,9 @@ public class BlTeacherAnswerServiceImpl extends ServiceImpl<BlTeacherAnswerMappe
" formatter: function (value) {let list = value.split(\"\");let result = \"\"; for (let i = 1; i <= list.length; i++) {if (!(i % 17) && list[i] != undefined) { result += list[i - 1] + '\\n';} else {result += list[i - 1];} }return result;},},},\n" +
" series: [{type: 'radar',data: [{value: \n" +JSONObject.toJSONString(ldtLxydData)+ " ,label:{show: true,position: 'outside',fontSize:20},},]}]}";
String kclxyd17 = WebDriverUtil.getImgByte(kclxyd17Ldt);
System.out.println("================================");
System.out.println(kclxyd17);
System.out.println("================================");
log.info("================================");
log.info(kclxyd17);
log.info("================================");
result.put("kclxyd17", kclxyd17);
@ -1087,9 +1091,9 @@ public class BlTeacherAnswerServiceImpl extends ServiceImpl<BlTeacherAnswerMappe
" data: "+JSONObject.toJSONString(cgdxTjt1Num)+" \n" +
" }]}";
String cgdxTjtImg18 = WebDriverUtil.getImgByte(cgdxTjtImg18Options);
System.out.println("================================");
System.out.println(cgdxTjtImg18);
System.out.println("================================");
log.info("================================");
log.info(cgdxTjtImg18);
log.info("================================");
result.put("kclxyd18", cgdxTjtImg18);
//不同岗位类型教师评价成果导向理念的落实情况
@ -1122,9 +1126,9 @@ public class BlTeacherAnswerServiceImpl extends ServiceImpl<BlTeacherAnswerMappe
" data: "+JSONObject.toJSONString(cgdxTjt2Num1)+" ,label:{show: true,position: 'outside'},}, " +
"] }";
String kclxyd19 = WebDriverUtil.getImgByte(kclxyd19Options);
System.out.println("================================");
System.out.println(kclxyd19);
System.out.println("================================");
log.info("================================");
log.info(kclxyd19);
log.info("================================");
result.put("kclxyd19", kclxyd19);
//不同职称教师评价成果导向理念的落实情况
@ -1176,9 +1180,9 @@ public class BlTeacherAnswerServiceImpl extends ServiceImpl<BlTeacherAnswerMappe
" data: "+JSONObject.toJSONString(cgdxTjt3Num3)+" ,label:{show: true,position: 'outside'},}, " +
"] }";
String kclxyd20 = WebDriverUtil.getImgByte500(kclxyd20Options);
System.out.println("================================");
System.out.println(kclxyd20);
System.out.println("================================");
log.info("================================");
log.info(kclxyd20);
log.info("================================");
result.put("kclxyd20", kclxyd20);
//各学院教师评价成果导向理念的落实情况
@ -1226,9 +1230,9 @@ public class BlTeacherAnswerServiceImpl extends ServiceImpl<BlTeacherAnswerMappe
" data: "+JSONObject.toJSONString(sshdbfbzt1)+" \n" +
" }]}";
String sshd21Img = WebDriverUtil.getImgByte(sshd21ImgOptions);
System.out.println("================================");
System.out.println(sshd21Img);
System.out.println("================================");
log.info("================================");
log.info(sshd21Img);
log.info("================================");
result.put("sshd21", sshd21Img);
@ -1286,9 +1290,9 @@ public class BlTeacherAnswerServiceImpl extends ServiceImpl<BlTeacherAnswerMappe
" data: "+JSONObject.toJSONString(sshdTjt24)+" ,label:{show: true,position: 'outside'},}, " +
"] }";
String sshdTjt22OptionsImg = WebDriverUtil.getImgByte400(sshdTjt22Options);
System.out.println("================================");
System.out.println(sshdTjt22OptionsImg);
System.out.println("================================");
log.info("================================");
log.info(sshdTjt22OptionsImg);
log.info("================================");
result.put("sshd22", sshdTjt22OptionsImg);
//不同职称教师课下与学生在不同方面交流的比例
@ -1343,9 +1347,9 @@ public class BlTeacherAnswerServiceImpl extends ServiceImpl<BlTeacherAnswerMappe
" data: "+JSONObject.toJSONString(sshdTjt34)+" ,label:{show: true,position: 'outside'},}, " +
"] }";
String sshdTjt32OptionsImg = WebDriverUtil.getImgByte500(sshdTjt32Options);
System.out.println("================================");
System.out.println(sshdTjt32OptionsImg);
System.out.println("================================");
log.info("================================");
log.info(sshdTjt32OptionsImg);
log.info("================================");
result.put("sshd23", sshdTjt32OptionsImg);
@ -1401,9 +1405,9 @@ public class BlTeacherAnswerServiceImpl extends ServiceImpl<BlTeacherAnswerMappe
" data: "+JSONObject.toJSONString(xsxxzdxTjt15)+", barWidth: 45,itemStyle: {color: '#57b8e7'}}," +
"]}";
String xsxxzdxTjt1Img = WebDriverUtil.getImgByte500(xsxxzdxTjt1ImgOptions);
System.out.println("================================");
System.out.println(xsxxzdxTjt1Img);
System.out.println("================================");
log.info("================================");
log.info(xsxxzdxTjt1Img);
log.info("================================");
result.put("xsxxzdx24", xsxxzdxTjt1Img);
@ -1429,9 +1433,9 @@ public class BlTeacherAnswerServiceImpl extends ServiceImpl<BlTeacherAnswerMappe
" formatter: function (value) {let list = value.split(\"\");let result = \"\"; for (let i = 1; i <= list.length; i++) {if (!(i % 13) && list[i] != undefined) { result += list[i - 1] + '\\n';} else {result += list[i - 1];} }return result;},},},\n" +
" series: [{type: 'radar',data: [{value: \n" +JSONObject.toJSONString(ldtData)+ " ,label:{show: true,position: 'outside',fontSize:20},},]}]}";
String xxzdxldt25 = WebDriverUtil.getImgByte500(xxzdxoptionsLdt);
System.out.println("================================");
System.out.println(xxzdxldt25);
System.out.println("================================");
log.info("================================");
log.info(xxzdxldt25);
log.info("================================");
result.put("xxzdxldt25", xxzdxldt25);
//不同岗位类型教师评价学生学习主动性
@ -1507,9 +1511,9 @@ public class BlTeacherAnswerServiceImpl extends ServiceImpl<BlTeacherAnswerMappe
"]}";
String jsfz1Img = WebDriverUtil.getImgByte(jsfz1ImgOptions);
System.out.println("================================");
System.out.println(jsfz1Img);
System.out.println("================================");
log.info("================================");
log.info(jsfz1Img);
log.info("================================");
result.put("jsfz26", jsfz1Img);
@ -1535,9 +1539,9 @@ public class BlTeacherAnswerServiceImpl extends ServiceImpl<BlTeacherAnswerMappe
" formatter: function (value) {let list = value.split(\"\");let result = \"\"; for (let i = 1; i <= list.length; i++) {if (!(i % 17) && list[i] != undefined) { result += list[i - 1] + '\\n';} else {result += list[i - 1];} }return result;},},},\n" +
" series: [{type: 'radar',data: [{value: \n" +JSONObject.toJSONString(jsfz2Data)+ " ,label:{show: true,position: 'outside',fontSize:20},},]}]}";
String jsfz27 = WebDriverUtil.getImgByte(jsfz2optionsLdt);
System.out.println("================================");
System.out.println(jsfz27);
System.out.println("================================");
log.info("================================");
log.info(jsfz27);
log.info("================================");
result.put("jsfz27", jsfz27);
//不同岗位类型教师对本校教师培训各方面的满意度
@ -1622,9 +1626,9 @@ public class BlTeacherAnswerServiceImpl extends ServiceImpl<BlTeacherAnswerMappe
"]}";
String zyfwyzc1Img = WebDriverUtil.getImgByte500(zyfwyzc1ImgOptions);
System.out.println("================================");
System.out.println(zyfwyzc1Img);
System.out.println("================================");
log.info("================================");
log.info(zyfwyzc1Img);
log.info("================================");
result.put("zyfwyzc28", zyfwyzc1Img);
@ -1656,9 +1660,9 @@ public class BlTeacherAnswerServiceImpl extends ServiceImpl<BlTeacherAnswerMappe
" formatter: function (value) {let list = value.split(\"\");let result = \"\"; for (let i = 1; i <= list.length; i++) {if (!(i % 17) && list[i] != undefined) { result += list[i - 1] + '\\n';} else {result += list[i - 1];} }return result;},},},\n" +
" series: [{type: 'radar',data: [{value: \n" +JSONObject.toJSONString(zyfwyzc2Data)+ " ,label:{show: true,position: 'outside',fontSize:20},},]}]}";
String zyfwyzc27 = WebDriverUtil.getImgByte(zyfwyzc2optionsLdt);
System.out.println("================================");
System.out.println(zyfwyzc27);
System.out.println("================================");
log.info("================================");
log.info(zyfwyzc27);
log.info("================================");
result.put("zyfwyzc29", zyfwyzc27);
//不同岗位类型教师对工作氛围各方面的评价
@ -1746,9 +1750,9 @@ public class BlTeacherAnswerServiceImpl extends ServiceImpl<BlTeacherAnswerMappe
"]}";
String zytjpj1Img = WebDriverUtil.getImgByte(zytjpj1ImgOptions);
System.out.println("================================");
System.out.println(zytjpj1Img);
System.out.println("================================");
log.info("================================");
log.info(zytjpj1Img);
log.info("================================");
result.put("jxpjgz30", zytjpj1Img);
@ -1780,9 +1784,9 @@ public class BlTeacherAnswerServiceImpl extends ServiceImpl<BlTeacherAnswerMappe
" formatter: function (value) {let list = value.split(\"\");let result = \"\"; for (let i = 1; i <= list.length; i++) {if (!(i % 17) && list[i] != undefined) { result += list[i - 1] + '\\n';} else {result += list[i - 1];} }return result;},},},\n" +
" series: [{type: 'radar',data: [{value: \n" +JSONObject.toJSONString(zytjpj2Data)+ " ,label:{show: true,position: 'outside',fontSize:20},},]}]}";
String zytjpj27 = WebDriverUtil.getImgByte(zytjpj2optionsLdt);
System.out.println("================================");
System.out.println(zytjpj27);
System.out.println("================================");
log.info("================================");
log.info(zytjpj27);
log.info("================================");
result.put("jxpjgz31", zytjpj27);
//不同岗位类型教师对本校教学评价各方面工作的评价
@ -1866,9 +1870,9 @@ public class BlTeacherAnswerServiceImpl extends ServiceImpl<BlTeacherAnswerMappe
"]}";
String zytjpj2Img = WebDriverUtil.getImgByte(zytjpj2ImgOptions);
System.out.println("================================");
System.out.println(zytjpj2Img);
System.out.println("================================");
log.info("================================");
log.info(zytjpj2Img);
log.info("================================");
result.put("zytjpj32", zytjpj2Img);
@ -1897,9 +1901,9 @@ public class BlTeacherAnswerServiceImpl extends ServiceImpl<BlTeacherAnswerMappe
" formatter: function (value) {let list = value.split(\"\");let result = \"\"; for (let i = 1; i <= list.length; i++) {if (!(i % 17) && list[i] != undefined) { result += list[i - 1] + '\\n';} else {result += list[i - 1];} }return result;},},},\n" +
" series: [{type: 'radar',data: [{value: \n" +JSONObject.toJSONString(zytjpj12Data)+ " ,label:{show: true,position: 'outside',fontSize:20},},]}]}";
String zytjpj127 = WebDriverUtil.getImgByte(zytjpj12optionsLdt);
System.out.println("================================");
System.out.println(zytjpj127);
System.out.println("================================");
log.info("================================");
log.info(zytjpj127);
log.info("================================");
result.put("zytjpj33", zytjpj127);
//不同岗位类型教师对本校教学评价各方面工作的评价
@ -1972,9 +1976,9 @@ public class BlTeacherAnswerServiceImpl extends ServiceImpl<BlTeacherAnswerMappe
"]}";
String ztmydzb1Img = WebDriverUtil.getImgByte(ztmydzb1Options);
System.out.println("================================");
System.out.println(ztmydzb1Img);
System.out.println("================================");
log.info("================================");
log.info(ztmydzb1Img);
log.info("================================");
result.put("sdsfhp34", ztmydzb1Img);
//教师对学校的整体满意度
//饼图
@ -1988,9 +1992,9 @@ public class BlTeacherAnswerServiceImpl extends ServiceImpl<BlTeacherAnswerMappe
" ]\n" +
" }]}";
String jsdxydztmydImg = WebDriverUtil.getImgByte(jsdxydztmydOptions);
System.out.println("================================");
System.out.println(ztmydzb1Img);
System.out.println("================================");
log.info("================================");
log.info(ztmydzb1Img);
log.info("================================");
result.put("ztmyd35", jsdxydztmydImg);
//不同岗位类型教师对学校整体的满意度
@ -2023,9 +2027,9 @@ public class BlTeacherAnswerServiceImpl extends ServiceImpl<BlTeacherAnswerMappe
" ]\n" +
"}";
String xxztmyd3Img = WebDriverUtil.getImgByte(xxztmyd3Options);
System.out.println("================================");
System.out.println(xxztmyd3Img);
System.out.println("================================");
log.info("================================");
log.info(xxztmyd3Img);
log.info("================================");
result.put("ztmyd36", xxztmyd3Img);
//不同职称教师对学校整体的满意度
@ -2058,9 +2062,9 @@ public class BlTeacherAnswerServiceImpl extends ServiceImpl<BlTeacherAnswerMappe
" ]\n" +
"}";
String zcxxztmyd3Img = WebDriverUtil.getImgByte(zcxxztmyd3Options);
System.out.println("=============zcxxztmyd3Img===================");
System.out.println(zcxxztmyd3Img);
System.out.println("=============zcxxztmyd3Img===================");
log.info("=============zcxxztmyd3Img===================");
log.info(zcxxztmyd3Img);
log.info("=============zcxxztmyd3Img===================");
result.put("ztmyd37", zcxxztmyd3Img);
//各学院教师对学校整体的满意度
List<BlTeacherAnswer> xxztmyd5List = baseMapper.getSelectxxztmyd5(blTeacherMain);
@ -2073,8 +2077,6 @@ public class BlTeacherAnswerServiceImpl extends ServiceImpl<BlTeacherAnswerMappe
}
wo.insert2Table(33, 1, true, xxztmyd5list);
wo = WordOperator.twoReplaceWord(wo);
wo.replaceTextPlus(result);
return wo;

View File

@ -2,11 +2,20 @@ package org.jeecg.modules.tools;
import cn.hutool.core.img.ImgUtil;
import cn.hutool.core.io.FileUtil;
import cn.hutool.core.io.IoUtil;
import cn.hutool.core.io.resource.ClassPathResource;
import cn.hutool.core.io.resource.Resource;
import cn.hutool.core.io.resource.ResourceUtil;
import cn.hutool.core.util.RandomUtil;
import cn.hutool.core.util.URLUtil;
import cn.hutool.setting.dialect.Props;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang3.StringUtils;
import org.jeecg.common.util.DateUtils;
import org.jeecg.common.util.SpringContextHolder;
import org.jeecg.common.util.SpringContextUtils;
import org.jeecg.modules.tools.word.WordOperator;
import org.openqa.selenium.JavascriptExecutor;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.chrome.ChromeDriver;
@ -14,55 +23,91 @@ import org.openqa.selenium.chrome.ChromeOptions;
import javax.imageio.ImageIO;
import java.awt.image.BufferedImage;
import java.io.ByteArrayInputStream;
import java.io.File;
import java.io.IOException;
import java.io.*;
import java.net.URL;
import java.util.Date;
import java.util.Random;
@Slf4j
public class WebDriverUtil {
private static final Global global = SpringContextHolder.getBean(Global.class);
//private static BASE64Decoder decoder = new sun.misc.BASE64Decoder();
public static void main(String []s){
String imgName = getImgByte("{ xAxis: { type: 'category', data: ['依法依规,履行教师职责', '关心爱护学生', '精神面貌及品德修养良好'] }, yAxis: { type: 'value' }, series: [{ data: [820, 932, 901], type: 'bar' }] }");
System.out.println("================================");
System.out.println(imgName);
System.out.println("================================");
log.info("================================");
log.info(imgName);
log.info("================================");
}
/**
* 初始化WebDriver
*
* @return
*/
public static WebDriver getWebDriver() {
// 设置ChromeDriver的路径加载驱动
//"D:/APPLICATION/chromedriver/chromedriver.exe"
System.setProperty(global.getConfig("webDriver.driverName"), getUrlStr(global.getConfig("webDriver.driverPath")));
// System.setProperty("webdriver.chrome.driver", "D:/developkit/driver/chromedriver.exe");
//设置 chrome 的无头模式
ChromeOptions chromeOptions = new ChromeOptions();
//无头模式
chromeOptions.setHeadless(Boolean.parseBoolean(global.getConfig("webDriver.isShow")));
//地址出现data:,
// chromeOptions.addArguments("--user-data-dir=C:/Users/Administrator/AppData/Local/Google/Chrome/User Data/Default");
//Chrome正在受到自动软件的控制 不显示提示语
chromeOptions.addArguments("disable-infobars");
chromeOptions.addArguments("--remote-allow-origins=*");
//设置浏览器完整路径
chromeOptions.setBinary(global.getConfig("webDriver.webExamplePath"));
//启动一个 chrome 实例
return new ChromeDriver(chromeOptions);
}
public static URL getUrl(String path) {
return URLUtil.getURL(path);
}
public static String getUrlStr(String path) {
return URLUtil.getURL(path).getPath();
}
public static String getImgByte(String json) {
return getImgByte(json, null);
}
/**
* 获取图片byte
*/
public static String getImgByte(String option) {
public static String getImgByte(String json, String path) {
log.info("发往浏览器的json: {}",json);
WebDriver driver = null;
try {
driver = getWebDriver();
//访问网址
String osName = System.getProperties().getProperty("os.name");
if (osName.equals("Linux")) {
driver.get("file:///usr/local/project/test/api/html/zhixiantu.html");
if(StringUtils.isNotBlank(path)){
driver.get(getUrl(global.getConfig("webDriver.webHTMLPath") + "/" + path).toString());
} else {
// Resource resource = new ClassPathResource("html/zhixiantu.html");
//Resource resource = new ClassPathResource("html/bar.html");
driver.get("file:///D:/APPLICATION/chromedriver/echarts.html");
driver.get(getUrl(global.getConfig("webDriver.webHTMLPath") + "/echarts.html").toString());
}
System.out.println(driver.getCurrentUrl());
log.info(driver.getCurrentUrl());
JavascriptExecutor js = (JavascriptExecutor) driver;
js.executeScript("showImg(" + option + ")");
js.executeScript("showImg(" + json + ")");
//延迟1秒等待折线图绘制完成
Thread.sleep(1000);
String imgTxt = js.executeScript("return returnEchartImg()").toString().replace("data:image/png;base64,", "");
String imageName = DateUtils.formatDate(new Date(),"yyyyMMddHHmmss")+".png";
String downName = base64StringToImage(imgTxt,imageName);
return downName;
String uid = RandomUtil.randomString(6);
String imageName = DateUtils.formatDate(new Date(),"yyyyMMddHHmmss") + uid + ".png";
return base64StringToImage(imgTxt,imageName);
} catch (Exception e) {
e.printStackTrace();
log.error(e.getMessage(), e);
} finally {
if(driver != null){
if(Boolean.parseBoolean(global.getConfig("webDriver.isClose")) && driver != null){
//driver.close();
//driver.quit();
driver.quit();
}
}
return null;
@ -72,161 +117,43 @@ public class WebDriverUtil {
/**
* 获取图片300高度
*/
public static String getImgByte300(String option) {
WebDriver driver = null;
Random random = new Random();
int randomNumber = random.nextInt(999999) + 100000;
try {
driver = getWebDriver();
//访问网址
String osName = System.getProperties().getProperty("os.name");
if (osName.equals("Linux")) {
driver.get("file:///usr/local/project/test/api/html/zhixiantu.html");
} else {
// Resource resource = new ClassPathResource("html/zhixiantu.html");
//Resource resource = new ClassPathResource("html/bar.html");
driver.get("file:///D:/APPLICATION/chromedriver/echarts300.html");
}
System.out.println(driver.getCurrentUrl());
JavascriptExecutor js = (JavascriptExecutor) driver;
js.executeScript("showImg(" + option + ")");
//延迟1秒等待折线图绘制完成
Thread.sleep(1000);
String imgTxt = js.executeScript("return returnEchartImg()").toString().replace("data:image/png;base64,", "");
String imageName = DateUtils.formatDate(new Date(),"yyyyMMddHHmmss")+randomNumber+".png";
String downName = base64StringToImage(imgTxt,imageName);
return downName;
} catch (Exception e) {
e.printStackTrace();
} finally {
if(driver != null){
//driver.close();
//driver.quit();
}
}
return null;
}
/**
* 获取图片400高度
*/
public static String getImgByte400(String option) {
WebDriver driver = null;
Random random = new Random();
int randomNumber = random.nextInt(999999) + 100000;
try {
driver = getWebDriver();
//访问网址
String osName = System.getProperties().getProperty("os.name");
if (osName.equals("Linux")) {
driver.get("file:///usr/local/project/test/api/html/zhixiantu.html");
} else {
// Resource resource = new ClassPathResource("html/zhixiantu.html");
//Resource resource = new ClassPathResource("html/bar.html");
driver.get("file:///D:/APPLICATION/chromedriver/echarts400.html");
}
System.out.println(driver.getCurrentUrl());
JavascriptExecutor js = (JavascriptExecutor) driver;
js.executeScript("showImg(" + option + ")");
//延迟1秒等待折线图绘制完成
Thread.sleep(1000);
String imgTxt = js.executeScript("return returnEchartImg()").toString().replace("data:image/png;base64,", "");
String imageName = DateUtils.formatDate(new Date(),"yyyyMMddHHmmss")+randomNumber+".png";
String downName = base64StringToImage(imgTxt,imageName);
return downName;
} catch (Exception e) {
e.printStackTrace();
} finally {
if(driver != null){
driver.close();
driver.quit();
}
}
return null;
public static String getImgByte300(String json) {
return getImgByte(json, "echarts300.html");
}
/**
* 获取图片400高度
*/
public static String getImgByte500(String option) {
WebDriver driver = null;
Random random = new Random();
int randomNumber = random.nextInt(999999) + 100000;
try {
driver = getWebDriver();
//访问网址
String osName = System.getProperties().getProperty("os.name");
if (osName.equals("Linux")) {
driver.get("file:///usr/local/project/test/api/html/zhixiantu.html");
} else {
// Resource resource = new ClassPathResource("html/zhixiantu.html");
//Resource resource = new ClassPathResource("html/bar.html");
driver.get("file:///D:/APPLICATION/chromedriver/echarts500.html");
}
System.out.println(driver.getCurrentUrl());
JavascriptExecutor js = (JavascriptExecutor) driver;
js.executeScript("showImg(" + option + ")");
//延迟1秒等待折线图绘制完成
Thread.sleep(1000);
String imgTxt = js.executeScript("return returnEchartImg()").toString().replace("data:image/png;base64,", "");
String imageName = DateUtils.formatDate(new Date(),"yyyyMMddHHmmss")+randomNumber+".png";
String downName = base64StringToImage(imgTxt,imageName);
return downName;
} catch (Exception e) {
e.printStackTrace();
} finally {
if(driver != null){
//driver.close();
//driver.quit();
}
}
return null;
public static String getImgByte400(String json) {
return getImgByte(json, "echarts400.html");
}
/**
* 初始化WebDriver
*
* @return
* 获取图片500高度
*/
public static WebDriver getWebDriver() {
// 设置ChromeDriver的路径加载驱动
System.setProperty("webdriver.chrome.driver", "D:/APPLICATION/chromedriver/chromedriver.exe");
// System.setProperty("webdriver.chrome.driver", "D:/developkit/driver/chromedriver.exe");
//设置 chrome 的无头模式
ChromeOptions chromeOptions = new ChromeOptions();
//无头模式
chromeOptions.setHeadless(true);
//地址出现data:,
// chromeOptions.addArguments("--user-data-dir=C:/Users/Administrator/AppData/Local/Google/Chrome/User Data/Default");
//Chrome正在受到自动软件的控制 不显示提示语
chromeOptions.addArguments("disable-infobars");
chromeOptions.addArguments("--remote-allow-origins=*");
//启动一个 chrome 实例
return new ChromeDriver(chromeOptions);
public static String getImgByte500(String json) {
return getImgByte(json, "echarts500.html");
}
/**
* 保存图片
*
* @param base64String
*/
public static String base64StringToImage(String base64String,String imageName) {
String downloadName = "";
String downloadName = "/tjfxChart/" + imageName;
try {
BufferedImage img = ImgUtil.toImage(base64String);
ByteArrayInputStream bais = ImgUtil.toStream(img,"png");
BufferedImage bi1 = ImageIO.read(bais);
Global global = SpringContextHolder.getBean(Global.class);
File file= new File(global.uploadPath + "/tjfxChart/"+imageName);
File file = new File(global.uploadPath + downloadName);
FileUtil.touch(file);
// File file= new File("D:/tjfxChart/"+imageName);
ImageIO.write(bi1, "png", file);
downloadName = "/tjfxChart/"+imageName;
System.out.println("================================");
System.out.println(downloadName);
System.out.println("================================");
log.info(downloadName);
} catch (IOException e) {
e.printStackTrace();
log.error(e.getMessage(), e);
}
return downloadName;
}

View File

@ -37,7 +37,7 @@ public class ExportWord {
/**
* 模板根路径
*/
private final static String FILE_PATH = "officetemplates\\";
private static final String FILE_PATH = "officetemplates\\";
public static WordOperator getWordOperator(String templateName) throws Exception {
return getWordOperator(templateName,true);

View File

@ -414,13 +414,13 @@
学习主动性:指学生在自我意识的支配下,有目的自觉自愿地进行学习,从课前、课堂、课后三个维度衡量学生的学习主动性。
学生对于自身学习主动性各方面的评价各项占比详见下图。
<i1_1,400,100>
<i1_1,400,170>
学生学习主动性评价各项占比
在落实推进学生刻苦读书学习,增强学习主动性方面,该校学生评价自身"课前运用网络课程平台、教材或资料进行自主预学,梳理知识并发现问题"的符合程度得分为{b1_1_1}分,"课堂上能跟上老师的讲解,主动提问或参与讨论,每节课学有所获"的符合程度得分为{b1_1_2}分,"课后复习笔记及总结课堂教学相关知识"的符合程度得分为{b1_1_3}分,"除了阅读教材,还延伸阅读教师推荐的其他相关书目"的符合程度得分为{b1_1_4}分。
<i1_2,400,100>
<i1_2,400,170>
各环节学生学习主动性
注:图表中数值为计算所得平均分数。
@ -524,7 +524,7 @@ Z
同辈互动
同辈互动频率:指学生和其他同学的学习互动情况。评价结果分为"总是"、"经常"、"偶尔"、"从不",其中选择"总是"、"经常"的人群属于积极互动。该校学生"总是"和"经常""和同学合作完成课程任务或作业"的比例为{b1_3_1}%"从同学那里学习、吸收好的学习方法"的比例为{b1_3_2}%"和同学一起参加学科竞赛"的比例为{b1_3_3}%"和同学一起参与老师科研团队"的比例为{b1_3_4}%。
<i1_9,400,100>
<i1_9,400,170>
学生同辈互动频率
各年级学生高频同辈互动比例
@ -562,11 +562,11 @@ Z
师生课下互动频率:指学生与任课教师课下交流互动的平均频率。评价结果分为"每周至少一次"、"每月至少一次"、"每学期至少一次"、"每年至少一次"。
该校学生评价课下与任课教师交流互动"每周至少一次"的比例为{b1_4_1}%"每月至少一次"的比例为{b1_4_2}%。
<i1_12,400,100>
<i1_12,400,170>
师生课下交流互动频率
<i1_13,400,100>
<i1_13,400,170>
各年级师生课下交流互动频率
各专业师生课下交流互动频率
@ -589,12 +589,12 @@ Z
思政课程满意度:指学生对本校思想政治课的总体满意度,以及分别对思想政治课的课程设置、教学内容、教学质量、教学效果的满意度评价。
从思政课程总体满意度评价的各项占比来看,该校学生选择"非常满意"的占{b2_1_1}%"比较满意"的占{b2_1_2}%"一般"的占{b2_1_3}%"比较不满意"的占{b2_1_4}%。
<i2_1,400,100>
<i2_1,400,170>
思政课程总体满意度评价各项占比
在落实思政课程建设方面,该校学生评价本校思想政治课程的总体满意度为{b2_1_5}%。
<i2_2,400,100>
<i2_2,400,170>
思政课程总体满意度
注:图表中数值为计算所得平均分数。
@ -625,12 +625,12 @@ Z
学生对于思政课程各分项满意度评价的各项占比详见下图。
<i2_5,400,100>
<i2_5,400,170>
思政课程各分项满意度评价的各项占比
该校学生对本校思想政治课程的教学内容满意度为{b2_1_6}%,对教学形式的满意度为{b2_1_7}%,对教学质量的满意度为{b2_1_8}%,对教学效果的满意度为{b2_1_9}%。
<i2_6,400,100>
<i2_6,400,170>
思政课程各分项满意度
注:图表中数值为计算所得平均分数。
@ -653,12 +653,12 @@ Z
专业课"两性一度"评价:指学生对专业课程的"高阶性"、"创新性"、"挑战度"的评价。
学生对于专业课"两性一度"各方面的评价各项占比详见下图。
<i2_8,400,100>
<i2_8,400,170>
专业课"两性一度"评价各项占比
在落实课堂教学改革、提高课程两性一度方面,该校学生对专业课程的评价如下:高阶性方面,"课程将知识、能力、素养进行了有机融合"的符合程度得分为{b2_2_1}分,"课程教学培养了我解决复杂问题的综合能力"的符合程度得分为{b2_2_2}分;创新性方面,"课程内容注重学科间的交叉与融合"的符合程度得分为{b2_2_3}分,"课程内容反映了学科发展的前沿内容"的符合程度得分为{b2_2_4}分,"课程教学内容重视实践与理论的结合"的符合程度得分为{b2_2_5}分;挑战度方面,"需要非常努力才能达到课程要求"的符合程度得分为{b2_2_6}分。
<i2_9,400,100>
<i2_9,400,170>
学生对专业课"两性一度"评价
注:图表中数值为计算所得平均分数。
@ -737,12 +737,12 @@ Z
专业课教学方式的评价:指学生对专业课程任课教师采用的教学方式的评价,包括讲授式、互动式、案例式、项目式等。
学生对于专业课教学方式的评价各项占比详见下图。
<i2_12,400,100>
<i2_12,400,170>
专业课教学方式评价各项占比
在推动"以学为中心、以教为主导"的课堂教学改革方面,该校学生对专业课程的教学方法使用情况评价如下,"课程以传统的教师讲授为主"的符合程度得分为{b2_3_1}分,"课堂中加入互动环节,注重学生参与(提问、讨论)"的符合程度得分为{b2_3_2}分,"提供案例或实例讨论"的符合程度得分为{b2_3_3}分,"采用小组合作的项目式教学方式"的符合程度得分为{b2_3_4}分。
<i2_13,400,100>
<i2_13,400,170>
学生对专业课教学方式评价
注:图表中数值为计算所得平均分数。
@ -781,19 +781,19 @@ Z
考核方式参与情况:指学生本学年参与本校各项考核方式的情况,考核方式包括卷面考试、随堂提问或测试、课程论文或实验报告、课堂展示、个人独立完成的课程作业、小组合作完成的课程作业等。
本学年,该校学生有{b2_4_1}%参与过卷面考试,有{b2_4_2}%参与过随堂提问或测试,有{b2_4_3}%参与过小组合作完成的课程作业,有{b2_4_4}%参与过课堂展示,有{b2_4_5}%参与过个人独立完成的课程作业,有{b2_4_6}%参与过课程论文或实验报告。
<i2_16,400,100>
<i2_16,400,170>
各项考核方式参与情况
体美劳教育
体美劳教育满意度:指学生对本校开展的体美劳教育的评价。其中体育教育包含如课内外体育活动、俱乐部等;美育教育包含如公共艺术课程、校园文化艺术节、艺术展演活动、艺术社团、美育专题讲座等;劳动教育包含如劳动类课程、本专业领域的实习实践、勤工助学、助教助研、校园清洁、社会公益活动等。
学生对于体美劳教育评价的各项占比详见下图。
<i2_17,400,100>
<i2_17,400,170>
体美劳教育满意度评价各项占比
在落实体美劳教育建设方面,该校学生评价体育教育的满意度为{b2_5_1}%,美育教育的满意度为{b2_5_2}%,劳动教育的满意度为{b2_5_3}%。
<i2_18,400,100>
<i2_18,400,170>
体美劳教育满意度
注:图表中数值为计算所得平均分数。
@ -830,18 +830,18 @@ Z
学生发展活动参与度:指学生参与本校各项学生发展活动的比例,学生发展活动包括学生社团活动、校园文化活动、社会实践活动、创新创业活动、国际交流活动等,其中校园文化活动包含如文化节、辩论赛、运动会等;社会实践活动如包括志愿服务、参观考察等;创新创业活动包含如创新创业课程、创新创业活动和竞赛等;国际交流活动包含如海外访学、国际科研项目、参加国际会议、与来华交流的海外访学团交流等。
该校受访学生在学生社团活动上的参与度为{b2_6_1}%,在校园文化活动上的参与度为{b2_6_2}%,在社会实践活动上的参与度为{b2_6_3}%,在创新创业活动上的参与度为{b2_6_4}%,在国际交流活动上的参与度为{b2_6_5}%。
<i2_21,400,100>
<i2_21,400,170>
各项学生发展活动参与度
学生发展活动满意度:指参与过以上各项活动的学生对该项学生发展活动的满意度评价。
学生对于各项学生发展活动评价的各项占比详见下图。
<i2_22,400,100>
<i2_22,400,170>
学生发展活动满意度评价各项占比
该校参与过以上各项学生发展活动的学生,评价国际交流活动的满意度为{b2_6_6}%,学生社团活动的满意度为{b2_6_7}%,校园文化活动的满意度为{b2_6_8}%,创新创业活动的满意度为{b2_6_9}%,社会实践活动的满意度为{b2_6_10}%。
<i2_23,400,100>
<i2_23,400,170>
各项学生发展活动满意度
注:图表中数值为计算所得平均分数。
@ -882,12 +882,12 @@ Z
实习实践满意度:指学生对本校实习实践各方面的评价。
学生对于本校实习实践各方面满意度评价的各项占比详见下图。
<i2_26,400,100>
<i2_26,400,170>
本校实习实践满意度评价各项占比
在落实实践教学建设方面,该校学生评价本校实习实践内容的满意度为{b2_7_1}%,实习实践时间安排的满意度为{b2_7_2}%,实习实践指导情况的满意度为{b2_7_3}%,实习实践场地及设备的满意度为{b2_7_4}%。
<i2_27,400,100>
<i2_27,400,170>
本校实习实践各方面满意度
注:图表中数值为计算所得平均分数。
@ -911,12 +911,12 @@ Z
学习收获评价:指学生对通过在校学习所获得的分析问题、解决问题能力、自主学习能力、合作能力等方面的评价。
学生对于在校学习收获各方面的评价各项占比详见下图。
<i2_29,400,100>
<i2_29,400,170>
学习收获评价各项占比
在对在校学习所取得的收获方面,该校学生的评价如下:"分析问题、解决问题能力提升"的符合程度得分为{b2_8_1}分,"自主学习能力提升"的符合程度得分为{b2_8_2}分,"合作能力提升"的符合程度得分为{b2_8_3}分,"书面表达和沟通能力提升"的符合程度得分为{b2_8_4}分,"有能力规划未来工作生活"的符合程度得分为{b2_8_5}分。
<i2_30,400,100>
<i2_30,400,170>
学生对学习收获的评价
注:图表中数值为计算所得平均分数。
@ -957,12 +957,12 @@ Z
核心素养满意度:指学生对自我核心素养提升方面的评价。其中核心素养主要包括人文底蕴(人文积淀、人文情怀、审美情趣等)、科学精神(理性思维、批判质疑、勇于探究等)、学会学习(乐学善学、勤于反思、信息意识等)、健康生活(珍爱生命、健全人格、自我管理等)、责任担当(社会责任、国家认同、国际理解等)、实践创新(劳动意识、问题解决、技术应用等)和自我提升(变得自信、善于交友、学会包容等)等方面。
学生对于自我核心素养提升各方面的评价各项占比详见下图。
<i2_33,400,100>
<i2_33,400,170>
核心素养满意度评价各项占比
在自我核心素养提升方面,该校学生对"人文底蕴"的满意度为{b2_9_1}%"科学精神"的满意度为{b2_9_2}%"学会学习"的满意度为{b2_9_3}%"健康生活"的满意度为{b2_9_4}%"责任担当"的满意度为{b2_9_5}%"实践创新"的满意度为{b2_9_6}%"自我提升"的满意度为{b2_9_7}%。
<i2_34,400,100>
<i2_34,400,170>
学生评价核心素养满意度
注:图表中数值为计算所得平均分数。
@ -1008,12 +1008,12 @@ Z
教学工作满意度:指学生对教师教学工作各方面的评价。
学生对于教师教学工作各方面的评价各项占比详见下图。
<i3_1,400,100>
<i3_1,400,170>
教学工作满意度评价各项占比
在教师教学工作方面,该校学生评价教师"师德师风及精神面貌"的满意度为{b3_1_1}%"教学投入"的满意度为{b3_1_2}%"依法依规,履行教师职责"的满意度为{b3_1_3}%"关心爱护学生"的满意度为{b3_1_4}%。
<i3_2,400,100>
<i3_2,400,170>
教学工作各方面满意度
注:图表中数值为计算所得平均分数。
@ -1052,12 +1052,12 @@ Z
教学满意度:指学生对教师总体教学满意度的评价。
从教学满意度评价的各项占比来看,该校学生选择"非常满意"的占{b3_2_1}%"比较满意"的占{b3_2_2}%"一般"的占{b3_2_3}%"比较不满意"的占{b3_2_4}%。
<i3_5,400,100>
<i3_5,400,170>
教学满意度评价各项占比
在提高教师教学能力成效方面,该校学生评价的本校总体教学满意度为{b3_2_5}%。
<i3_6,400,100>
<i3_6,400,170>
教学满意度
注:图表中数值为计算所得平均分数。
@ -1090,12 +1090,12 @@ Z
教师教学行为的评价:指学生对大学期间任课教师教学行为的各个方面进行评价。
学生对于教师教学行为各方面的评价各项占比详见下图。
<i3_9,400,100>
<i3_9,400,170>
教师教学行为评价各项占比
在教师教学能力方面,该校学生评价教师"重视立德树人,注重发挥课程育人的作用"的符合程度得分为{b3_3_1}分,"清楚地向学生解释了所学课程的目标和要求"的符合程度得分为{b3_3_2}分,"教学方法灵活多样,引导学生进行创造性思考"的符合程度得分为{b3_3_3}分,"课堂上激发学生的学习兴趣"的符合程度得分为{b3_3_4}分,"课后为学生提供辅导答疑"的符合程度得分为{b3_3_5}分。
<i3_10,400,100>
<i3_10,400,170>
教师各方面教学行为评价
注:图表中数值为计算所得平均分数。
@ -1137,12 +1137,12 @@ Z
学生中心理念的体现和安全管理情况:指学生评价学校在学生服务以及教务管理等方面体现"以学生为中心"和安全管理的情况。
学生对于学校落实"学生中心"和安全管理各方面的评价各项占比详见下图。
<i4_1,400,100>
<i4_1,400,170>
本校体现"学生中心"和安全管理评价各项占比
在落实"以学生为中心"和安全管理方面,该校学生评价本校"学生服务能够做到"一站式"的服务与解决,体现了对学生的关怀"的符合程度得分为{b4_1_1}分,"重视实验实训的安全教育与管理"的符合程度得分为{b4_1_2}分,"任课教师积极参与学生活动"的符合程度得分为{b4_1_3}分,"校内学术讲座报告活动多"的符合程度得分为{b4_1_4}分。
<i4_2,400,100>
<i4_2,400,170>
本校体现"学生中心"和安全管理各方面评价
注:图表中数值为计算所得平均分数。
@ -1181,7 +1181,7 @@ Z
接受学业指导比例:指学生接受过学校各项学业指导或帮扶的比例。
在落实以本为本,提升学生学业指导建设方面,该校学生接受过"学校或学院提供的辅导课程或相关活动"的比例为{b4_2_1}%,接受过"任课教师帮助解决相关问题"的比例为{b4_2_2}%,接受过"学业指导网站相关服务"的比例为{b4_2_3}%,接受过"辅导员帮助解决相关问题"的比例为{b4_2_4}%,接受过"本科生导师帮助解决相关问题"的比例为{b4_2_5}%,另有{b4_2_6}% 的学生没有接受过本校提供的学业指导服务。
<i4_5,400,100>
<i4_5,400,170>
接受各项学业指导的比例
各年级学生接受各项学业指导的比例
@ -1221,12 +1221,12 @@ Z
学生工作满意度:指学生对学校各项学生工作的评价。
学生对于本校学生工作各方面评价的各项占比详见下图。
<i4_8,400,100>
<i4_8,400,170>
学生工作满意度评价各项占比
该校学生评价本校"心理健康教育/咨询"的满意度为{b4_3_1}%"职业生涯规划和就业创业指导"的满意度为{b4_3_2}%"班主任、辅导员工作"的满意度为{b4_3_3}%"学业指导工作"的满意度为{b4_3_4}%"重视家庭经济困难学生资助工作"的满意度为{b4_3_5}%。
<i4_9,400,100>
<i4_9,400,170>
各项学生工作满意度
注:图表中数值为计算所得平均分数。
@ -1267,12 +1267,12 @@ Z
资源条件满意度:指学生对本校资源条件各方面的评价。
学生对于本校资源条件各方面评价的各项占比详见下图。
<i4_12,400,100>
<i4_12,400,170>
资源条件满意度评价各项占比
在落实条件保障方面,该校学生评价本校"教室及教学设备"的满意度为{b4_4_1}%"实验实训室条件"的满意度为{b4_4_2}%"图书馆资源"的满意度为{b4_4_3}%"网络资源"的满意度为{b4_4_4}%"体育文化等基础设施"的满意度为{b4_4_5}%"住宿条件"的满意度为{b4_4_6}%。
<i4_13,400,100>
<i4_13,400,170>
资源条件各方面满意度
注:图表中数值为计算所得平均分数。
@ -1314,12 +1314,12 @@ Z
总体满意度
从总体满意度评价的各项占比来看,该校学生选择"非常满意"的占{b5_1_1}%"比较满意"的占{b5_1_2}%"一般"的占{b5_1_3}%"比较不满意"的占{b5_1_4}%。
<i5_1,400,100>
<i5_1,400,170>
总体满意度评价各项占比
在总体满意度方面,该校学生对本校的总体满意度为{b5_1_5}%。
<i5_2,400,100>
<i5_2,400,170>
总体满意度
注:图表中数值为计算所得平均分数。

View File

@ -0,0 +1,47 @@
<html>
<meta charset="UTF-8">
<meta http-equiv="content-type" content="text/html; charset=utf-8">
<head>
<script src="http://gssn.fw121.com/js/jquery-3.2.1.min.js"></script>
<script src="./echarts.min.js"></script>
</head>
<body>
<!-- ECharts 准备一个具备大小宽高 DOM -->
<div id="rhEcharts" style="height:400px;width:1050px"></div>
</body>
<script>
var rhEcharts = null;
$(function () {
// 基于准备好的dom初始化echarts实例
rhEcharts = echarts.init(document.getElementById('rhEcharts'));
});
function showImg(data) {
// var option = {
// xAxis: {
// type: 'category',
// data: ['Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat', 'Sun']
// },
// yAxis: {
// type: 'value'
// },
// series: [{
// data: [820, 932, 901, 934, 1290, 1330, 1320],
// type: 'line'
// }]
// };
// rhEcharts.setOption(option);
rhEcharts.setOption(data);
}
function returnEchartImg() {
var url = rhEcharts.getDataURL();
//清空绘画内容清空后实例可用
rhEcharts.clear();
return url;
}
</script>
</html>

File diff suppressed because one or more lines are too long

View File

@ -0,0 +1,47 @@
<html>
<meta charset="UTF-8">
<meta http-equiv="content-type" content="text/html; charset=utf-8">
<head>
<script src="http://gssn.fw121.com/js/jquery-3.2.1.min.js"></script>
<script src="./echarts.min.js"></script>
</head>
<body>
<!-- ECharts 准备一个具备大小宽高 DOM -->
<div id="rhEcharts" style="height:300px;width:1050px"></div>
</body>
<script>
var rhEcharts = null;
$(function () {
// 基于准备好的dom初始化echarts实例
rhEcharts = echarts.init(document.getElementById('rhEcharts'));
});
function showImg(data) {
// var option = {
// xAxis: {
// type: 'category',
// data: ['Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat', 'Sun']
// },
// yAxis: {
// type: 'value'
// },
// series: [{
// data: [820, 932, 901, 934, 1290, 1330, 1320],
// type: 'line'
// }]
// };
// rhEcharts.setOption(option);
rhEcharts.setOption(data);
}
function returnEchartImg() {
var url = rhEcharts.getDataURL();
//清空绘画内容清空后实例可用
rhEcharts.clear();
return url;
}
</script>
</html>

View File

@ -0,0 +1,47 @@
<html>
<meta charset="UTF-8">
<meta http-equiv="content-type" content="text/html; charset=utf-8">
<head>
<script src="http://gssn.fw121.com/js/jquery-3.2.1.min.js"></script>
<script src="./echarts.min.js"></script>
</head>
<body>
<!-- ECharts 准备一个具备大小宽高 DOM -->
<div id="rhEcharts" style="height:400px;width:1050px"></div>
</body>
<script>
var rhEcharts = null;
$(function () {
// 基于准备好的dom初始化echarts实例
rhEcharts = echarts.init(document.getElementById('rhEcharts'));
});
function showImg(data) {
// var option = {
// xAxis: {
// type: 'category',
// data: ['Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat', 'Sun']
// },
// yAxis: {
// type: 'value'
// },
// series: [{
// data: [820, 932, 901, 934, 1290, 1330, 1320],
// type: 'line'
// }]
// };
// rhEcharts.setOption(option);
rhEcharts.setOption(data);
}
function returnEchartImg() {
var url = rhEcharts.getDataURL();
//清空绘画内容清空后实例可用
rhEcharts.clear();
return url;
}
</script>
</html>

View File

@ -0,0 +1,47 @@
<html>
<meta charset="UTF-8">
<meta http-equiv="content-type" content="text/html; charset=utf-8">
<head>
<script src="http://gssn.fw121.com/js/jquery-3.2.1.min.js"></script>
<script src="./echarts.min.js"></script>
</head>
<body>
<!-- ECharts 准备一个具备大小宽高 DOM -->
<div id="rhEcharts" style="height:500px;width:1050px"></div>
</body>
<script>
var rhEcharts = null;
$(function () {
// 基于准备好的dom初始化echarts实例
rhEcharts = echarts.init(document.getElementById('rhEcharts'));
});
function showImg(data) {
// var option = {
// xAxis: {
// type: 'category',
// data: ['Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat', 'Sun']
// },
// yAxis: {
// type: 'value'
// },
// series: [{
// data: [820, 932, 901, 934, 1290, 1330, 1320],
// type: 'line'
// }]
// };
// rhEcharts.setOption(option);
rhEcharts.setOption(data);
}
function returnEchartImg() {
var url = rhEcharts.getDataURL();
//清空绘画内容清空后实例可用
rhEcharts.clear();
return url;
}
</script>
</html>

View File

@ -324,4 +324,15 @@ justauth:
# libreOffice5
libreOffice:
url: 127.0.0.1
port: 8100
port: 8100
# 浏览器调用
webDriver:
driverName: webdriver.chrome.driver
# 驱动地址
driverPath: web/webDriver/126.0.6478.57/chromedriver.exe
# html地址
webHTMLPath: web/html
# 是否显式运行
isShow: false
# 是否运行后关闭
isClose: true

View File

@ -307,3 +307,14 @@ justauth:
type: default
prefix: 'demo::'
timeout: 1h
# 浏览器调用
webDriver:
driverName: webdriver.chrome.driver
# 驱动地址
driverPath: web/webDriver/126.0.6478.57/chromedriver.exe
# html地址
webHTMLPath: web/html
# 是否显式运行
isShow: false
# 是否运行后关闭
isClose: true

View File

@ -307,3 +307,14 @@ justauth:
type: default
prefix: 'demo::'
timeout: 1h
# 浏览器调用
webDriver:
driverName: webdriver.chrome.driver
# 驱动地址
driverPath: web/webDriver/126.0.6478.57/chromedriver.exe
# html地址
webHTMLPath: web/html
# 是否显式运行
isShow: false
# 是否运行后关闭
isClose: true

23
jeecg-boot/run.bat Normal file
View File

@ -0,0 +1,23 @@
@echo off && chcp 65001
::call mvn clean package
set jarPrefix=jeecg-module-system\jeecg-system-start\target\
for /f "delims=" %%i in ('dir %jarPrefix%*.jar /b ') do @set jarPath=%%i
echo 如果编译错误请设置JDK为17版本
echo %jarPrefix%%jarPath%
if not exist javaPath.txt (
echo 请在项目根目录创建【javaPath.txt】文件并填写jdk路径,文件内容大致为【D:\ProgramGreeFile\JAVA\1.8.0_192\jdk1.8.0_192】
pause
exit
)
set /P javaPath=<javaPath.txt
if not defined javaPath (
echo 请在项目根目录创建【javaPath.txt】文件并填写jdk路径,文件内容大致为【D:\ProgramGreeFile\JAVA\1.8.0_192\jdk1.8.0_192】
pause
exit
)
set JAVA_HOME=%javaPath%
set path2=%javaPath%\bin;%path%
echo 开始启动
call set path=%path2% && java -jar -Dfile.encoding=utf-8 -Dspring.profiles.active=local %jarPrefix%%jarPath%
pause

3
jeecg-boot/tbdm.bat Normal file
View File

@ -0,0 +1,3 @@
@echo off
TortoiseGitProc /command:sync /path:"./" /seq:0 /hwnd:0000000000390AF0 x64 TortoiseGitProc.exe
exit