修改bug

This commit is contained in:
yangjun 2024-07-24 13:42:22 +08:00
parent c5a5ad29cc
commit 63070316c5
1 changed files with 62 additions and 74 deletions

View File

@ -15,6 +15,7 @@ import org.jeecg.modules.demo.blTeacherInfo.entity.BlTeacherInfo;
import org.jeecg.modules.demo.blTeacherInfo.mapper.BlTeacherInfoMapper;
import org.jeecg.modules.tools.WebDriverUtil;
import org.jeecg.modules.tools.word.ExportWord;
import org.jeecg.modules.tools.word.TableMerge;
import org.jeecg.modules.tools.word.WordOperator;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
@ -26,6 +27,7 @@ import java.util.concurrent.Callable;
import java.util.concurrent.CompletionService;
import java.util.concurrent.ExecutionException;
import java.util.concurrent.Executors;
import java.util.concurrent.atomic.AtomicInteger;
import java.util.concurrent.atomic.AtomicReference;
/**
@ -70,6 +72,7 @@ public class BlTeacherAnswerServiceImpl extends ServiceImpl<BlTeacherAnswerMappe
//多线程执行
CompletionService<Boolean> threadService = ThreadUtil.newCompletionService(Executors.newFixedThreadPool(100));
List<Callable<Boolean>> calls = com.google.common.collect.Lists.newArrayList();
List<TableMerge> allMergeList = org.apache.commons.compress.utils.Lists.newArrayList();
calls.add(() -> {
res1(blTeacherMain, result);
@ -91,16 +94,6 @@ public class BlTeacherAnswerServiceImpl extends ServiceImpl<BlTeacherAnswerMappe
return true;
});
// calls.add(() -> {
// res5(blTeacherMain, result);
// return true;
// });
calls.add(() -> {
res5(wo, blTeacherMain);
return true;
});
//-----------------堆叠图------------------------
calls.add(() -> {
tj1(blTeacherMain, result);
@ -269,6 +262,7 @@ public class BlTeacherAnswerServiceImpl extends ServiceImpl<BlTeacherAnswerMappe
//----------------单柱图-------------------------
//----------------插入表格及文字-----------------------
calls.add(() -> {
tab1(wo, blTeacherMain);
return true;
@ -335,12 +329,21 @@ public class BlTeacherAnswerServiceImpl extends ServiceImpl<BlTeacherAnswerMappe
tab12(wo, blTeacherMain);
return true;
});
calls.add(() -> {
tab13(wo, blTeacherMain);
var mergeList =res5(wo, blTeacherMain);
allMergeList.addAll(mergeList);
return true;
});
calls.add(() -> {
var mergeList =tab13(wo, blTeacherMain);
allMergeList.addAll(mergeList);
return true;
});
calls.add(() -> {
tab14(wo, blTeacherMain);
var mergeList =tab14(wo, blTeacherMain);
allMergeList.addAll(mergeList);
return true;
});
@ -457,8 +460,12 @@ public class BlTeacherAnswerServiceImpl extends ServiceImpl<BlTeacherAnswerMappe
log.info("多线程主线程结束执行");
WordOperator wo2 = WordOperator.twoReplaceWord(wo);
wo2.replaceTextPlus(result);
return wo2;
//合并行
allMergeList.forEach(wo2::addTableMerge);
WordOperator wo3 = WordOperator.twoReplaceWord(wo2);
wo3.replaceTextPlus(result);
return wo3;
}
private void tj27(BlTeacherInfo blTeacherMain, Map<String, Object> result) {
@ -814,10 +821,14 @@ public class BlTeacherAnswerServiceImpl extends ServiceImpl<BlTeacherAnswerMappe
wo.insert2Table(15, 1, true, fifteenList);
}
private void tab14(WordOperator wo, BlTeacherInfo blTeacherMain) {
private List<TableMerge> tab14(WordOperator wo, BlTeacherInfo blTeacherMain) {
//不同职称教师在课程两性一度的实施情况
List<BlTeacherAnswer> kclxydbtzcList = baseMapper.getSelectkclxydbtzc(blTeacherMain);
List<List<String>> fourteenList = Lists.newArrayList();
//组装成list
List<TableMerge> mergeList = org.apache.commons.compress.utils.Lists.newArrayList();
int tableIndex = 14;
int col = 0;
for(BlTeacherAnswer par:kclxydbtzcList){
List<String> list = Lists.newArrayList();
list.add(par.getLsname2());
@ -827,14 +838,28 @@ public class BlTeacherAnswerServiceImpl extends ServiceImpl<BlTeacherAnswerMappe
list.add(par.getTj3());
list.add(par.getTj4());
fourteenList.add(list);
if(StringUtils.equals("高阶性",par.getLsname2())){
mergeList.add(new TableMerge(tableIndex, col, 1, 2));
}else if(StringUtils.equals("创新性",par.getLsname2())){
mergeList.add(new TableMerge(tableIndex, col, 3, 5));
}else if(StringUtils.equals("挑战度",par.getLsname2())){
mergeList.add(new TableMerge(tableIndex, col, 6, 6));
}
}
wo.insert2Table(14, 1, true, fourteenList);
return mergeList;
}
private void tab13(WordOperator wo, BlTeacherInfo blTeacherMain) {
private List<TableMerge> tab13(WordOperator wo, BlTeacherInfo blTeacherMain) {
//不同岗位类型教师在课程两性一度的实施情况
List<BlTeacherAnswer> kclxydbtgwlxList = baseMapper.getSelectkclxydbtgwlx(blTeacherMain);
List<List<String>> thirteenList = Lists.newArrayList();
//组装成list
List<TableMerge> mergeList = org.apache.commons.compress.utils.Lists.newArrayList();
int tableIndex = 13;
int col = 0;
for(BlTeacherAnswer par:kclxydbtgwlxList){
List<String> list = Lists.newArrayList();
list.add(par.getLsname2());
@ -842,8 +867,18 @@ public class BlTeacherAnswerServiceImpl extends ServiceImpl<BlTeacherAnswerMappe
list.add(par.getTj1());
list.add(par.getTj2());
thirteenList.add(list);
if(StringUtils.equals("高阶性",par.getLsname2())){
mergeList.add(new TableMerge(tableIndex, col, 1, 2));
}else if(StringUtils.equals("创新性",par.getLsname2())){
mergeList.add(new TableMerge(tableIndex, col, 3, 5));
}else if(StringUtils.equals("挑战度",par.getLsname2())){
mergeList.add(new TableMerge(tableIndex, col, 6, 6));
}
}
wo.insert2Table(13, 1, true, thirteenList);
return mergeList;
}
private void tab12(WordOperator wo, BlTeacherInfo blTeacherMain) {
@ -1066,10 +1101,16 @@ public class BlTeacherAnswerServiceImpl extends ServiceImpl<BlTeacherAnswerMappe
wo.insert2Table(1, 1, true, oneList);
}
private void res5(WordOperator wo, BlTeacherInfo blTeacherMain) {
private List<TableMerge> res5(WordOperator wo, BlTeacherInfo blTeacherMain) {
//学院结构
List<BlTeacherAnswer> xyjgList = baseMapper.getSelectXyjg(blTeacherMain);
List<TableMerge> mergeList = org.apache.commons.compress.utils.Lists.newArrayList();
int tableIndex = 0;
int col = 0;
AtomicInteger startRow = new AtomicInteger(14);
AtomicInteger endRow = new AtomicInteger(0);
List<List<String>> oneList = Lists.newArrayList();
for(BlTeacherAnswer par:xyjgList){
List<String> list = Lists.newArrayList();
@ -1078,66 +1119,13 @@ public class BlTeacherAnswerServiceImpl extends ServiceImpl<BlTeacherAnswerMappe
list.add(par.getCnt());
list.add(par.getNum());
oneList.add(list);
endRow.set(startRow.get() + xyjgList.size() -1);
mergeList.add(new TableMerge(tableIndex, col, startRow.get(), endRow.get()));
startRow.set(endRow.get() + 1);
}
wo.insert2Table(0, 14, true, oneList);
// for (BlTeacherAnswer par:xyjgList){
// if(StringUtils.equals(par.getDepartment(),"财税与公共管理学院")){
// result.put("xyjg1", par.getCnt());//数量
// result.put("xyjg1_zb", par.getNum());//占比
// }else if(StringUtils.equals(par.getDepartment(),"法学院")){
// result.put("xyjg2", par.getCnt());//数量
// result.put("xyjg2_zb", par.getNum());//占比
// }else if(StringUtils.equals(par.getDepartment(),"工商管理学院")){
// result.put("xyjg3", par.getCnt());//数量
// result.put("xyjg3_zb", par.getNum());//占比
// }else if(StringUtils.equals(par.getDepartment(),"国际经贸学院")){
// result.put("xyjg4", par.getCnt());//数量
// result.put("xyjg4_zb", par.getNum());//占比
// }else if(StringUtils.equals(par.getDepartment(),"国际学院")){
// result.put("xyjg5", par.getCnt());//数量
// result.put("xyjg5_zb", par.getNum());//占比
// }else if(StringUtils.equals(par.getDepartment(),"会计学院")){
// result.put("xyjg6", par.getCnt());//数量
// result.put("xyjg6_zb", par.getNum());//占比
// }else if(StringUtils.equals(par.getDepartment(),"金融学院")){
// result.put("xyjg7", par.getCnt());//数量
// result.put("xyjg7_zb", par.getNum());//占比
// }else if(StringUtils.equals(par.getDepartment(),"经济学院")){
// result.put("xyjg8", par.getCnt());//数量
// result.put("xyjg8_zb", par.getNum());//占比
// }else if(StringUtils.equals(par.getDepartment(),"马克思主义学院")){
// result.put("xyjg9", par.getCnt());//数量
// result.put("xyjg9_zb", par.getNum());//占比
// }else if(StringUtils.equals(par.getDepartment(),"人文学院")){
// result.put("xyjg10", par.getCnt());//数量
// result.put("xyjg10_zb", par.getNum());//占比
// }else if(StringUtils.equals(par.getDepartment(),"软件与物联网工程管理学院(用友软件学院)")){
// result.put("xyjg11", par.getCnt());//数量
// result.put("xyjg11_zb", par.getNum());//占比
// }else if(StringUtils.equals(par.getDepartment(),"体育学院")){
// result.put("xyjg12", par.getCnt());//数量
// result.put("xyjg12_zb", par.getNum());//占比
// }else if(StringUtils.equals(par.getDepartment(),"统计与数据科学学院")){
// result.put("xyjg13", par.getCnt());//数量
// result.put("xyjg13_zb", par.getNum());//占比
// }else if(StringUtils.equals(par.getDepartment(),"外国语学院")){
// result.put("xyjg14", par.getCnt());//数量
// result.put("xyjg14_zb", par.getNum());//占比
// }else if(StringUtils.equals(par.getDepartment(),"信息管理学院")){
// result.put("xyjg15", par.getCnt());//数量
// result.put("xyjg15_zb", par.getNum());//占比
// }else if(StringUtils.equals(par.getDepartment(),"虚拟现实VR现代产业学院")){
// result.put("xyjg16", par.getCnt());//数量
// result.put("xyjg16_zb", par.getNum());//占比
// }else if(StringUtils.equals(par.getDepartment(),"艺术学院")){
// result.put("xyjg17", par.getCnt());//数量
// result.put("xyjg17_zb", par.getNum());//占比
// }else if(StringUtils.equals(par.getDepartment(),"应用经济学院(数字经济学院)")){
// result.put("xyjg18", par.getCnt());//数量
// result.put("xyjg18_zb", par.getNum());//占比
// }
// }
return mergeList;
}
private void res4(BlTeacherInfo blTeacherMain, Map<String, Object> result) {