From c3811d01d1929a98a0f34f70ca187d82ee312dbb Mon Sep 17 00:00:00 2001 From: manailin <261030956@qq.com> Date: 星期三, 03 十一月 2021 17:26:50 +0800 Subject: [PATCH] Merge branch 'test' of http://gitlab.nhys.cdnhxx.com/root/zhihuishequ into test --- springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/utlis/AssemblyUtils.java | 48 +++++++++++++++++++++++++++++++++++++++++++++++- 1 files changed, 47 insertions(+), 1 deletions(-) diff --git a/springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/utlis/AssemblyUtils.java b/springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/utlis/AssemblyUtils.java index b3eae4f..1db88f6 100644 --- a/springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/utlis/AssemblyUtils.java +++ b/springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/utlis/AssemblyUtils.java @@ -3,6 +3,8 @@ import com.panzhihua.common.model.vos.community.ComActQuestnaireAnswerContentVO; import lombok.extern.slf4j.Slf4j; +import javax.xml.bind.DatatypeConverter; +import java.io.ByteArrayInputStream; import java.net.URL; import java.util.ArrayList; import java.util.List; @@ -25,6 +27,8 @@ List<List<Object>> resultList = new ArrayList<>(); //构建单个用户数据 List<Object> userData = new ArrayList<>(); + + String noExport = "以上信息仅用于疫苗防控"; //遍历答案列表 Long reserveRecordId = 0L; Long reserveSubId = 0L; @@ -33,7 +37,8 @@ if (answerContentVOList != null && answerContentVOList.size() > 0) { for (ComActQuestnaireAnswerContentVO userAnswers : answerContentVOList) { //判断是文字描述直接跳过 - if (userAnswers.getOptionType().equals(5) || userAnswers.getOptionType().equals(11)) { + if (userAnswers.getOptionType().equals(5) || userAnswers.getOptionType().equals(11) + || (StringUtils.isNotEmpty(userAnswers.getAnswerContent()) && userAnswers.getAnswerContent().contains(noExport))) { continue; } //判断reserveRecordId为空则为第一条记录,默认加上昵称和灯谜是 @@ -70,11 +75,27 @@ if(!reserveSubId.equals(userAnswers.getReserveSubId())){ reserveSubId = userAnswers.getReserveSubId(); + //如果是承诺字段则不导出 + if(StringUtils.isNotEmpty(userAnswers.getAnswerContent()) && userAnswers.getAnswerContent().contains(noExport)){ + continue; + } + //判断当前的组件类型是否是图片上传,导出时需要导出图片 if(userAnswers.getOptionType().equals(11)){ reserveSubId = userAnswers.getReserveSubId(); try { userData.add(new URL(userAnswers.getAnswerContent())); + }catch (Exception e){ + userData.add(" "); + log.error("导出转换图片失败!"); + } + continue; + } + //判断当前组件类型是否签名 + if(userAnswers.getOptionType().equals(12)){ + reserveSubId = userAnswers.getReserveSubId(); + try { + userData.add(new ByteArrayInputStream(DatatypeConverter.parseBase64Binary(userAnswers.getAnswerContent().substring(userAnswers.getAnswerContent().indexOf(",")+ 1)))); }catch (Exception e){ userData.add(" "); log.error("导出转换图片失败!"); @@ -87,6 +108,11 @@ sb.append(userAnswers.getAnswerContent()==null?"无":userAnswers.getAnswerContent() + ","); continue; }else{ + if(isOldDuo){ + String answer = sb.toString(); + userData.add(answer.substring(0, answer.length() - 1)); + sb = new StringBuffer(); + } isOldDuo = false; } sb.append(userAnswers.getAnswerContent()==null?"无":userAnswers.getAnswerContent() + ","); @@ -94,6 +120,10 @@ userData.add(answer.substring(0, answer.length() - 1)); sb = new StringBuffer(); }else{ + //如果是承诺字段则不导出 + if(StringUtils.isNotEmpty(userAnswers.getAnswerContent()) && userAnswers.getAnswerContent().contains(noExport)){ + continue; + } //判断当前的组件类型是否是图片上传,导出时需要导出图片 if(userAnswers.getOptionType().equals(11)){ reserveSubId = userAnswers.getReserveSubId(); @@ -105,11 +135,27 @@ } continue; } + //判断当前组件类型是否签名 + if(userAnswers.getOptionType().equals(12)){ + reserveSubId = userAnswers.getReserveSubId(); + try { + userData.add(new ByteArrayInputStream(DatatypeConverter.parseBase64Binary(userAnswers.getAnswerContent().substring(userAnswers.getAnswerContent().indexOf(",")+ 1)))); + }catch (Exception e){ + userData.add(" "); + log.error("导出转换图片失败!"); + } + continue; + } if(userAnswers.getOptionType().equals(1)){ isOldDuo = true; sb.append(userAnswers.getAnswerContent()==null?"无":userAnswers.getAnswerContent() + ","); continue; }else{ + if(isOldDuo){ + String answer = sb.toString(); + userData.add(answer.substring(0, answer.length() - 1)); + sb = new StringBuffer(); + } isOldDuo = false; } sb.append(userAnswers.getAnswerContent()==null?"无":userAnswers.getAnswerContent() + ","); -- Gitblit v1.7.1