|
@@ -229,37 +229,18 @@ public class ZhcxPersistentManageServiceImpl extends ServiceImpl<ZhcxPersistentM
|
|
|
}
|
|
|
Map<String, List<ZhcxPersistentManageDo>> typeList = v.stream()
|
|
|
.collect(Collectors.groupingBy(ZhcxPersistentManageDo::getType));
|
|
|
+ List<ZhcxPersistentManageDo> rewardListData = new ArrayList<>();
|
|
|
+ List<ZhcxPersistentManageDo> punishListData = new ArrayList<>();
|
|
|
typeList.forEach((k1, v1) -> {
|
|
|
- Map<String, List<ZhcxPersistentManageDo>> collect = v1.stream()
|
|
|
- .collect(Collectors.groupingBy(ZhcxPersistentManageDo::getFirstorgname));
|
|
|
- try {
|
|
|
- Document docDetail = null;
|
|
|
-
|
|
|
- if (k1.contains("处罚")) {
|
|
|
- SysFileItemDo fileTemp = sysFileItemService.getById("fc9d0bd3d7354037afa6092d6a64ed5a");
|
|
|
- docDetail = WordHelpUtils.getDoc(fileTemp.getFullpath());
|
|
|
- }else{
|
|
|
- SysFileItemDo fileTemp = sysFileItemService.getById("73ae110bb9e84aeab985c14d4678670b");
|
|
|
- docDetail = WordHelpUtils.getDoc(fileTemp.getFullpath());
|
|
|
- }
|
|
|
- //如果要以动态形式创建一个文档,最常用的方式是使用DocumentBuilder来增加内容。
|
|
|
- DocumentBuilder builder = new DocumentBuilder(docDetail);
|
|
|
- //将光标移动到该处
|
|
|
- builder.moveToDocumentEnd();
|
|
|
-
|
|
|
- //循环动态添加表格
|
|
|
- createTable(builder,docDetail,collect,"table1",0);
|
|
|
-
|
|
|
- DocumentBuilder builder3 = new DocumentBuilder(doc[0]);
|
|
|
- builder3.moveToDocumentEnd();
|
|
|
- // 插入换行符,确保第二个文档内容在新行开始
|
|
|
- builder3.writeln();
|
|
|
- builder3.insertDocument(docDetail, ImportFormatMode.KEEP_DIFFERENT_STYLES);
|
|
|
- } catch (Exception e) {
|
|
|
- e.printStackTrace();
|
|
|
+ if (k1.contains("处罚")) {
|
|
|
+ rewardListData.addAll(v1);
|
|
|
+ }else{
|
|
|
+ punishListData.addAll(v1);
|
|
|
}
|
|
|
-
|
|
|
});
|
|
|
+ initWeekWord(doc, punishListData,"fc9d0bd3d7354037afa6092d6a64ed5a");
|
|
|
+ initWeekWord(doc, rewardListData,"73ae110bb9e84aeab985c14d4678670b");
|
|
|
+
|
|
|
}
|
|
|
i.getAndIncrement();
|
|
|
if(i.get() < groupList.size() - 1) {
|
|
@@ -281,6 +262,33 @@ public class ZhcxPersistentManageServiceImpl extends ServiceImpl<ZhcxPersistentM
|
|
|
return 1;
|
|
|
}
|
|
|
|
|
|
+ private void initWeekWord(Document[] doc, List<ZhcxPersistentManageDo> rewardListData, String tempId) {
|
|
|
+ if(rewardListData.size()>0){
|
|
|
+ Map<String, List<ZhcxPersistentManageDo>> collect = rewardListData.stream()
|
|
|
+ .collect(Collectors.groupingBy(ZhcxPersistentManageDo::getFirstorgname));
|
|
|
+ try {
|
|
|
+ Document docDetail = null;
|
|
|
+ SysFileItemDo fileTemp = sysFileItemService.getById(tempId);
|
|
|
+ docDetail = WordHelpUtils.getDoc(fileTemp.getFullpath());
|
|
|
+ //如果要以动态形式创建一个文档,最常用的方式是使用DocumentBuilder来增加内容。
|
|
|
+ DocumentBuilder builder = new DocumentBuilder(docDetail);
|
|
|
+ //将光标移动到该处
|
|
|
+ builder.moveToDocumentEnd();
|
|
|
+
|
|
|
+ //循环动态添加表格
|
|
|
+ createTable(builder,docDetail,collect,"table1",0);
|
|
|
+
|
|
|
+ DocumentBuilder builder3 = new DocumentBuilder(doc[0]);
|
|
|
+ builder3.moveToDocumentEnd();
|
|
|
+ // 插入换行符,确保第二个文档内容在新行开始
|
|
|
+ builder3.writeln();
|
|
|
+ builder3.insertDocument(docDetail, ImportFormatMode.KEEP_DIFFERENT_STYLES);
|
|
|
+ } catch (Exception e) {
|
|
|
+ e.printStackTrace();
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
|
|
|
/**
|
|
|
* 填充 word 模板(map数据格式)
|