huanghongfa
2021-04-12 1c202b5725120456f6b43a9b8665180f9e53f046
Merge remote-tracking branch 'origin/master'
1个文件已修改
29 ■■■■ 已修改文件
springcloud_k8s_panzhihuazhihuishequ/community_backstage/src/main/java/com/panzhihua/community_backstage/api/CommunityQuestnaireApi.java 29 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/community_backstage/src/main/java/com/panzhihua/community_backstage/api/CommunityQuestnaireApi.java
@@ -3,6 +3,8 @@
import com.alibaba.excel.EasyExcel;
import com.alibaba.excel.ExcelWriter;
import com.alibaba.excel.write.metadata.WriteSheet;
import com.alibaba.excel.write.metadata.style.WriteCellStyle;
import com.alibaba.excel.write.style.HorizontalCellStyleStrategy;
import com.alibaba.excel.write.style.column.LongestMatchColumnWidthStyleStrategy;
import com.alibaba.fastjson.JSON;
import com.panzhihua.common.controller.BaseController;
@@ -30,6 +32,7 @@
import java.io.File;
import java.io.FileInputStream;
import java.io.InputStream;
import java.text.SimpleDateFormat;
import java.util.*;
/**
@@ -190,11 +193,25 @@
                        answersMap.forEach((user, answers) ->{
                            List<Object> userData = new ArrayList<>();
                            userData.add(user.getName());
                            userData.add("");
                            //获取提交时间
                            Set<Long> keySet = answers.keySet();
                            String dateStr = "";
                            if(keySet!=null && keySet.size()>0){
                                try {
                                    ComActQuestnaireAnswerContentVO firstvo = answers.get(keySet.toArray()[0]).get(0);
                                    if (firstvo != null) {
                                        dateStr =  firstvo.getCreateAt().toString();
                                    }
                                }catch (Exception e){
                                    dateStr = "";
                                }
                            }
                            userData.add(dateStr);
                            answers.forEach((id, answer )->{
                                StringBuilder usersAnswerContent = new StringBuilder("");
                                answer.forEach(ans ->{
                                    usersAnswerContent.append(ans.getChoice()+"."+ans.getAnswerContent()+"\n");
                                    String context = (ans.getChoice()!=null?(ans.getChoice()+ "."):"")  + ans.getAnswerContent();
                                    usersAnswerContent.append(context +"\n");
                                });
                                userData.add(usersAnswerContent.toString());
                            });
@@ -202,8 +219,14 @@
                        });
                    }
                    WriteCellStyle contentWriteCellStyle = new WriteCellStyle();
                    excelWriter = EasyExcel.write(fileName, ComMngPopulationExcelVo.class).registerWriteHandler(new LongestMatchColumnWidthStyleStrategy()).registerWriteHandler(new CustomSheetWriteHandler()).build();
                    contentWriteCellStyle.setWrapped(true);
                    HorizontalCellStyleStrategy horizontalCellStyleStrategy =
                            new HorizontalCellStyleStrategy(null, contentWriteCellStyle);
                    LongestMatchColumnWidthStyleStrategy longestMatchColumnWidthStyleStrategy = new LongestMatchColumnWidthStyleStrategy();
                    excelWriter = EasyExcel.write(fileName, ComMngPopulationExcelVo.class).registerWriteHandler(horizontalCellStyleStrategy).registerWriteHandler(new CustomSheetWriteHandler()).build();
                    WriteSheet writeSheet = EasyExcel.writerSheet("问卷调查答题导出数据").head(headList).build();
                    excelWriter.write(datalist, writeSheet);
                    excelWriter.finish();