diff --git a/epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/constant/NumConstant.java b/epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/constant/NumConstant.java index 2fe5b49d9a..0d18e6f706 100644 --- a/epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/constant/NumConstant.java +++ b/epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/constant/NumConstant.java @@ -27,7 +27,9 @@ public interface NumConstant { int ELEVEN = 11; int TWELVE = 12; int THIRTEEN = 13; + int SIXTEEN = 16; int SEVENTEEN = 17; + int EIGHTEEN = 18; int FIFTEEN = 15; int FOURTEEN=14; int TWENTY = 20; diff --git a/epmet-user/epmet-user-client/src/main/java/com/epmet/dto/form/VaccinationListFormDTO.java b/epmet-user/epmet-user-client/src/main/java/com/epmet/dto/form/VaccinationListFormDTO.java index 6d365c9955..c50649b4a9 100644 --- a/epmet-user/epmet-user-client/src/main/java/com/epmet/dto/form/VaccinationListFormDTO.java +++ b/epmet-user/epmet-user-client/src/main/java/com/epmet/dto/form/VaccinationListFormDTO.java @@ -82,4 +82,14 @@ public class VaccinationListFormDTO extends PageFormDTO implements Serializable * user所属组织ID */ private String orgId; + + /** + * 开始时间 eg:20220706 + */ + private String startDate; + + /** + * 结束时间 eg:20220706 + */ + private String endDate; } diff --git a/epmet-user/epmet-user-client/src/main/java/com/epmet/dto/result/VaccinationListResultDTO.java b/epmet-user/epmet-user-client/src/main/java/com/epmet/dto/result/VaccinationListResultDTO.java index 01c7374dff..63d56ebac2 100644 --- a/epmet-user/epmet-user-client/src/main/java/com/epmet/dto/result/VaccinationListResultDTO.java +++ b/epmet-user/epmet-user-client/src/main/java/com/epmet/dto/result/VaccinationListResultDTO.java @@ -2,6 +2,7 @@ package com.epmet.dto.result; import com.epmet.commons.tools.constant.NumConstant; import lombok.Data; +import org.apache.commons.lang3.StringUtils; import java.io.Serializable; @@ -39,6 +40,7 @@ public class VaccinationListResultDTO implements Serializable { * 身份证 */ private String idCard; + private String sex; /** * 备注 @@ -110,4 +112,27 @@ public class VaccinationListResultDTO implements Serializable { this.lastInformTime = ""; this.reason = ""; } + + public void setSex(){ + if (StringUtils.isBlank(getIdCard())){ + this.sex = "未知"; + }else { + if (this.idCard.length() == NumConstant.FIFTEEN){ + if (Integer.parseInt(this.idCard.substring(NumConstant.FOURTEEN, NumConstant.FIFTEEN)) % NumConstant.TWO == NumConstant.ZERO) { + sex = "女"; + } else { + sex = "男"; + } + }else if (this.idCard.length() == NumConstant.EIGHTEEN){ + if (Integer.parseInt(this.idCard.substring(NumConstant.SIXTEEN).substring(NumConstant.ZERO,NumConstant.ONE)) % NumConstant.TWO == NumConstant.ZERO) { + sex = "女"; + } else { + sex = "男"; + } + }else { + this.sex = "未知"; + } + } + } + } diff --git a/epmet-user/epmet-user-server/src/main/java/com/epmet/excel/VaccinationExportExcel.java b/epmet-user/epmet-user-server/src/main/java/com/epmet/excel/VaccinationExportExcel.java index 8fe217466f..34c11ea835 100644 --- a/epmet-user/epmet-user-server/src/main/java/com/epmet/excel/VaccinationExportExcel.java +++ b/epmet-user/epmet-user-server/src/main/java/com/epmet/excel/VaccinationExportExcel.java @@ -23,6 +23,12 @@ public class VaccinationExportExcel { @Excel(name = "身份证",width = 30) private String idCard; + @Excel(name = "性别",width = 30) + private String sex; + + @Excel(name = "关注原因",width = 40) + private String reason; + @Excel(name = "备注",width = 40) 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 6175e742c5..e649c87328 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 @@ -165,7 +165,11 @@ public class IcEpidemicSpecialAttentionServiceImpl extends BaseServiceImpl { + v.setSex(); + }); + } //需求调整 列表和导出增加所属房屋(小区+楼栋+单元+房间)一列值 sun Map houseInfoMap = new HashMap<>(); //查询房屋信息 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 c6249ea224..d6b175e3d2 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 @@ -24,7 +24,7 @@ a.`NAME`, a.MOBILE, a.ID_CARD, - a.reason, + IFNULL(a.reason,'') AS reason, a.REMARK, b.VILLAGE_ID, b.BUILD_ID, @@ -34,7 +34,7 @@ IFNULL(v.vaccinationCount,0) AS vaccinationCount FROM ic_epidemic_special_attention a LEFT JOIN ic_resi_user b ON a.id_card = b.id_card AND b.del_flag = '0' and b.CUSTOMER_ID=a.CUSTOMER_ID - LEFT JOIN (SELECT id_card , CUSTOMER_ID, count(1) AS vaccinationCount FROM ic_vaccine WHERE DEL_FLAG = 0 GROUP BY ID_CARD, CUSTOMER_ID) v ON (v.ID_CARD = a.ID_CARD and v.CUSTOMER_ID=a.CUSTOMER_ID) + LEFT JOIN (SELECT id_card , CUSTOMER_ID, count(1) AS vaccinationCount, CREATED_TIME FROM ic_vaccine WHERE DEL_FLAG = 0 GROUP BY ID_CARD, CUSTOMER_ID) v ON (v.ID_CARD = a.ID_CARD and v.CUSTOMER_ID=a.CUSTOMER_ID) WHERE a.DEL_FLAG = 0 AND a.ORG_ID = #{orgId} AND a.ATTENTION_TYPE = #{attentionType} @@ -59,6 +59,12 @@ AND b.home_id = #{homeId} + + AND DATE_FORMAT(v.CREATED_TIME,'%Y%m%d') >= #{startDate} + + + AND DATE_FORMAT(v.CREATED_TIME,'%Y%m%d') #{endDate} + HAVING vaccinationCount = #{vaccinationCount}