From 09d8095a8de4eacca1a4a9fa9cb8b00687191c65 Mon Sep 17 00:00:00 2001 From: zxc <1272811460@qq.com> Date: Wed, 30 Mar 2022 15:39:36 +0800 Subject: [PATCH] =?UTF-8?q?emm=20=E6=97=B6=E9=97=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../IcEpidemicSpecialAttentionController.java | 25 ++++++++++++ .../java/com/epmet/excel/NatImportExcel.java | 30 ++++++++++++++ .../epmet/excel/VaccinationImportExcel.java | 27 +++++++++++++ ...IcEpidemicSpecialAttentionServiceImpl.java | 38 +++++++++--------- .../excel/attention_nat_template.xlsx | Bin 0 -> 8687 bytes .../excel/attention_vaccination_template.xlsx | Bin 0 -> 8691 bytes .../mapper/IcEpidemicSpecialAttentionDao.xml | 4 +- 7 files changed, 104 insertions(+), 20 deletions(-) create mode 100644 epmet-user/epmet-user-server/src/main/java/com/epmet/excel/NatImportExcel.java create mode 100644 epmet-user/epmet-user-server/src/main/java/com/epmet/excel/VaccinationImportExcel.java create mode 100644 epmet-user/epmet-user-server/src/main/resources/excel/attention_nat_template.xlsx create mode 100644 epmet-user/epmet-user-server/src/main/resources/excel/attention_vaccination_template.xlsx diff --git a/epmet-user/epmet-user-server/src/main/java/com/epmet/controller/IcEpidemicSpecialAttentionController.java b/epmet-user/epmet-user-server/src/main/java/com/epmet/controller/IcEpidemicSpecialAttentionController.java index 8a2cd30ea8..1017075ac6 100644 --- a/epmet-user/epmet-user-server/src/main/java/com/epmet/controller/IcEpidemicSpecialAttentionController.java +++ b/epmet-user/epmet-user-server/src/main/java/com/epmet/controller/IcEpidemicSpecialAttentionController.java @@ -1,5 +1,6 @@ package com.epmet.controller; +import cn.afterturn.easypoi.excel.entity.TemplateExportParams; import com.epmet.commons.tools.annotation.LoginUser; import com.epmet.commons.tools.aop.NoRepeatSubmit; import com.epmet.commons.tools.constant.NumConstant; @@ -7,6 +8,7 @@ import com.epmet.commons.tools.dto.form.PageFormDTO; import com.epmet.commons.tools.exception.EpmetException; import com.epmet.commons.tools.page.PageData; import com.epmet.commons.tools.security.dto.TokenDto; +import com.epmet.commons.tools.utils.ExcelPoiUtils; import com.epmet.commons.tools.utils.ExcelUtils; import com.epmet.commons.tools.utils.Result; import com.epmet.commons.tools.validator.ValidatorUtils; @@ -15,7 +17,9 @@ import com.epmet.dto.IcEpidemicSpecialAttentionDTO; import com.epmet.dto.form.*; import com.epmet.dto.result.ImportTaskCommonResultDTO; import com.epmet.excel.NatExportExcel; +import com.epmet.excel.NatImportExcel; import com.epmet.excel.VaccinationExportExcel; +import com.epmet.excel.VaccinationImportExcel; import com.epmet.feign.EpmetCommonServiceOpenFeignClient; import com.epmet.service.IcEpidemicSpecialAttentionService; import lombok.extern.slf4j.Slf4j; @@ -26,6 +30,9 @@ import org.springframework.web.multipart.MultipartFile; import javax.servlet.http.HttpServletResponse; import java.io.InputStream; +import java.util.ArrayList; +import java.util.HashMap; +import java.util.Map; /** @@ -173,4 +180,22 @@ public class IcEpidemicSpecialAttentionController { } + @PostMapping("export-template") + public void exportTemplate(HttpServletResponse response, @RequestBody VaccinationListFormDTO formDTO) throws Exception { + TemplateExportParams templatePath = new TemplateExportParams(); + String fileName = ""; + Map map = new HashMap<>(); + // 关注类型,核酸检测:2,疫苗接种:1,行程上报:0 + if (formDTO.getAttentionType().equals(NumConstant.ONE)){ + templatePath.setTemplateUrl("excel/attention_vaccination_template.xlsx"); + fileName = "疫苗接种关注名单导入模板"; + map.put("maplist",new ArrayList()); + }else if (formDTO.getAttentionType().equals(NumConstant.TWO)){ + templatePath.setTemplateUrl("excel/attention_nat_template.xlsx"); + fileName = "核酸检测关注名单导入模板"; + map.put("maplist",new ArrayList()); + } + ExcelPoiUtils.exportExcel(templatePath ,map,fileName,response); + } + } diff --git a/epmet-user/epmet-user-server/src/main/java/com/epmet/excel/NatImportExcel.java b/epmet-user/epmet-user-server/src/main/java/com/epmet/excel/NatImportExcel.java new file mode 100644 index 0000000000..e332fe88df --- /dev/null +++ b/epmet-user/epmet-user-server/src/main/java/com/epmet/excel/NatImportExcel.java @@ -0,0 +1,30 @@ +package com.epmet.excel; + +import cn.afterturn.easypoi.excel.annotation.Excel; +import com.epmet.commons.tools.utils.ExcelVerifyInfo; +import lombok.Data; + +/** + * @Author zxc + * @DateTime 2022/3/29 10:24 + * @DESC + */ +@Data +public class NatImportExcel extends ExcelVerifyInfo { + + @Excel(name = "姓名") + private String name; + + @Excel(name = "电话") + private String mobile; + + @Excel(name = "身份证") + private String idCard; + + @Excel(name = "备注") + private String remark; + + @Excel(name = "关注原因") + private String reason; + +} diff --git a/epmet-user/epmet-user-server/src/main/java/com/epmet/excel/VaccinationImportExcel.java b/epmet-user/epmet-user-server/src/main/java/com/epmet/excel/VaccinationImportExcel.java new file mode 100644 index 0000000000..b7349e4d03 --- /dev/null +++ b/epmet-user/epmet-user-server/src/main/java/com/epmet/excel/VaccinationImportExcel.java @@ -0,0 +1,27 @@ +package com.epmet.excel; + +import cn.afterturn.easypoi.excel.annotation.Excel; +import com.epmet.commons.tools.utils.ExcelVerifyInfo; +import lombok.Data; + +/** + * @Author zxc + * @DateTime 2022/3/29 10:24 + * @DESC + */ +@Data +public class VaccinationImportExcel extends ExcelVerifyInfo { + + @Excel(name = "姓名") + private String name; + + @Excel(name = "电话") + private String mobile; + + @Excel(name = "身份证") + private String idCard; + + @Excel(name = "备注") + private String remark; + +} diff --git a/epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/IcEpidemicSpecialAttentionServiceImpl.java b/epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/IcEpidemicSpecialAttentionServiceImpl.java index ada415e5d3..83d2ed51cf 100644 --- a/epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/IcEpidemicSpecialAttentionServiceImpl.java +++ b/epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/IcEpidemicSpecialAttentionServiceImpl.java @@ -316,26 +316,28 @@ public class IcEpidemicSpecialAttentionServiceImpl extends BaseServiceImpl groupByIdCard = list.stream().collect(Collectors.groupingBy(ImportEpidemicSpecialAttention::getIdCard, Collectors.counting())); - groupByIdCard.forEach((idCard,count) -> { - if (Integer.valueOf(count.toString()).compareTo(1) != 0){ - for (ImportEpidemicSpecialAttention i : list) { - if (idCard.equals(i.getIdCard()) && !i.getAddStatus()){ - errorInfo.add(getErrorInfo(i,"数据重复",i.getNum())); - i.setAddStatus(true); + if (list.size() > errorInfo.size()){ + Map groupByIdCard = list.stream().collect(Collectors.groupingBy(ImportEpidemicSpecialAttention::getIdCard, Collectors.counting())); + groupByIdCard.forEach((idCard,count) -> { + if (Integer.valueOf(count.toString()).compareTo(1) != 0){ + for (ImportEpidemicSpecialAttention i : list) { + if (idCard.equals(i.getIdCard()) && !i.getAddStatus()){ + errorInfo.add(getErrorInfo(i,"数据重复",i.getNum())); + i.setAddStatus(true); + } } } - } - }); - List idCards = list.stream().map(m -> m.getIdCard()).collect(Collectors.toList()); - List existList = baseDao.getExistList(attentionType, idCards); - if (CollectionUtils.isNotEmpty(existList)){ - for (String s : existList) { - for (int i = NumConstant.ZERO; i < list.size(); i++) { - if (s.equals(list.get(i).getIdCard()) && !list.get(i).getAddStatus()){ - errorInfo.add(getErrorInfo(list.get(i),"数据已存在",list.get(i).getNum())); - list.get(i).setAddStatus(true); - continue; + }); + List idCards = list.stream().map(m -> m.getIdCard()).collect(Collectors.toList()); + List existList = baseDao.getExistList(attentionType, idCards); + if (CollectionUtils.isNotEmpty(existList)){ + for (String s : existList) { + for (int i = NumConstant.ZERO; i < list.size(); i++) { + if (s.equals(list.get(i).getIdCard()) && !list.get(i).getAddStatus()){ + errorInfo.add(getErrorInfo(list.get(i),"数据已存在",list.get(i).getNum())); + list.get(i).setAddStatus(true); + continue; + } } } } diff --git a/epmet-user/epmet-user-server/src/main/resources/excel/attention_nat_template.xlsx b/epmet-user/epmet-user-server/src/main/resources/excel/attention_nat_template.xlsx new file mode 100644 index 0000000000000000000000000000000000000000..1ef3866f47ab3a671c92e9d54a8eedd98caedc6e GIT binary patch literal 8687 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 D>6X_X literal 0 HcmV?d00001 diff --git a/epmet-user/epmet-user-server/src/main/resources/mapper/IcEpidemicSpecialAttentionDao.xml b/epmet-user/epmet-user-server/src/main/resources/mapper/IcEpidemicSpecialAttentionDao.xml index f0c645f1b2..f63c49b783 100644 --- a/epmet-user/epmet-user-server/src/main/resources/mapper/IcEpidemicSpecialAttentionDao.xml +++ b/epmet-user/epmet-user-server/src/main/resources/mapper/IcEpidemicSpecialAttentionDao.xml @@ -25,9 +25,9 @@ a.ID_CARD, a.REMARK, IFNULL((SELECT DATE_FORMAT(CREATED_TIME,'%Y-%m-%d %H:%i:%s') FROM ic_notice WHERE DEL_FLAG = '0' AND ORIGIN = #{attentionType} AND ID_CARD = a.ID_CARD ORDER BY CREATED_TIME DESC LIMIT 1),'') AS lastInformTime, - COUNT(v.ID) AS vaccinationCount + IFNULL(v.vaccinationCount,0) AS vaccinationCount FROM ic_epidemic_special_attention a - LEFT JOIN ic_resi_vaccine v ON (v.ID_CARD = a.ID_CARD AND v.DEL_FLAG = '0') + LEFT JOIN (SELECT id_card ,count(1) AS vaccinationCount FROM ic_resi_vaccine WHERE DEL_FLAG = 0 GROUP BY ID_CARD) v ON (v.ID_CARD = a.ID_CARD) WHERE a.DEL_FLAG = 0 AND a.ORG_ID = #{orgId} AND ATTENTION_TYPE = #{attentionType}