Browse Source

该多条

dev
zxc 3 years ago
parent
commit
d199858637
  1. 3
      epmet-user/epmet-user-client/src/main/java/com/epmet/dto/IcEpidemicSpecialAttentionDTO.java
  2. 4
      epmet-user/epmet-user-client/src/main/java/com/epmet/dto/result/VaccinationListResultDTO.java
  3. 13
      epmet-user/epmet-user-server/src/main/java/com/epmet/controller/IcEpidemicSpecialAttentionController.java
  4. 40
      epmet-user/epmet-user-server/src/main/java/com/epmet/excel/NatHistoryExportExcel.java
  5. 6
      epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/IcEpidemicSpecialAttentionServiceImpl.java
  6. 5
      epmet-user/epmet-user-server/src/main/resources/mapper/IcEpidemicSpecialAttentionDao.xml

3
epmet-user/epmet-user-client/src/main/java/com/epmet/dto/IcEpidemicSpecialAttentionDTO.java

@ -28,7 +28,8 @@ public class IcEpidemicSpecialAttentionDTO implements Serializable {
/**
* ID
*/
private String id;
@NotBlank(message = "id不能为空",groups = {IcEpidemicSpecialAttentionUpdate.class})
private String id;
/**
* 客户ID

4
epmet-user/epmet-user-client/src/main/java/com/epmet/dto/result/VaccinationListResultDTO.java

@ -1,6 +1,7 @@
package com.epmet.dto.result;
import com.epmet.commons.tools.constant.NumConstant;
import com.fasterxml.jackson.annotation.JsonIgnore;
import lombok.Data;
import org.apache.commons.lang3.StringUtils;
@ -109,6 +110,9 @@ public class VaccinationListResultDTO implements Serializable {
private String id;
private String userId;
@JsonIgnore
private String customerId;
public VaccinationListResultDTO() {
this.vaccinationCount = NumConstant.ZERO;
this.name = "";

13
epmet-user/epmet-user-server/src/main/java/com/epmet/controller/IcEpidemicSpecialAttentionController.java

@ -20,10 +20,7 @@ import com.epmet.dto.form.*;
import com.epmet.dto.result.ImportTaskCommonResultDTO;
import com.epmet.dto.result.NatPieResultDTO;
import com.epmet.dto.result.VaccinationListResultDTO;
import com.epmet.excel.NatExportExcel;
import com.epmet.excel.NatImportExcel;
import com.epmet.excel.VaccinationExportExcel;
import com.epmet.excel.VaccinationImportExcel;
import com.epmet.excel.*;
import com.epmet.feign.EpmetAdminOpenFeignClient;
import com.epmet.feign.EpmetCommonServiceOpenFeignClient;
import com.epmet.service.IcEpidemicSpecialAttentionService;
@ -202,7 +199,7 @@ public class IcEpidemicSpecialAttentionController {
formDTO.setUserId(tokenDto.getUserId());
formDTO.setIsPage(false);
PageData<VaccinationListResultDTO> pageData = icEpidemicSpecialAttentionService.vaccinationList(formDTO);
// 关注类型,核酸检测:2,疫苗接种:1,行程上报:0
// 关注类型,核酸检测:2,疫苗接种:1,行程上报:0,历史核酸检测关注:99
if (formDTO.getAttentionType().equals(NumConstant.ONE)){
ExcelUtils.exportExcelToTarget(response, null, pageData.getList(), VaccinationExportExcel.class);
}else {
@ -214,7 +211,11 @@ public class IcEpidemicSpecialAttentionController {
pageData.getList().forEach(l -> {
l.setIsolatedState(dictMap.get(l.getIsolatedState()));
});
ExcelUtils.exportExcelToTarget(response, null, pageData.getList(), NatExportExcel.class);
if (formDTO.getIsHistory().equals(NumConstant.ONE_STR)){
ExcelUtils.exportExcelToTarget(response, null, pageData.getList(), NatHistoryExportExcel.class);
}else {
ExcelUtils.exportExcelToTarget(response, null, pageData.getList(), NatExportExcel.class);
}
}
}

40
epmet-user/epmet-user-server/src/main/java/com/epmet/excel/NatHistoryExportExcel.java

@ -0,0 +1,40 @@
package com.epmet.excel;
import cn.afterturn.easypoi.excel.annotation.Excel;
import lombok.Data;
/**
* @Author zxc
* @DateTime 2022/3/29 10:24
* @DESC
*/
@Data
public class NatHistoryExportExcel {
@Excel(name = "排序",width = 10)
private Integer sort;
@Excel(name = "姓名",width = 20)
private String name;
@Excel(name = "电话",width = 20)
private String mobile;
@Excel(name = "所属房屋",width = 20)
private String allName;
@Excel(name = "身份证",width = 30)
private String idCard;
@Excel(name = "备注",width = 40)
private String remark;
@Excel(name = "关注原因",width = 40)
private String reason;
@Excel(name = "最后一次核酸时间",width = 20)
private String lastNatTime;
@Excel(name = "隔离状态",width = 20)
private String isolatedState;
}

6
epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/IcEpidemicSpecialAttentionServiceImpl.java

@ -281,6 +281,10 @@ public class IcEpidemicSpecialAttentionServiceImpl extends BaseServiceImpl<IcEpi
if (null == agencyInfo){
throw new EpmetException("未查询到组织信息"+staffInfo.getAgencyId());
}
/**
* 一条改多条取消关注就成为历史再次关注即新增不操作历史数据
* 新增关注列表已存在时覆盖旧数据
*/
List<IcEpidemicSpecialAttentionEntity> entities = ConvertUtils.sourceToTarget(formDTO.getList(), IcEpidemicSpecialAttentionEntity.class);
List<String> idCards = entities.stream().map(m -> m.getIdCard()).collect(Collectors.toList());
Integer attentionType = entities.get(NumConstant.ZERO).getAttentionType();
@ -335,7 +339,7 @@ public class IcEpidemicSpecialAttentionServiceImpl extends BaseServiceImpl<IcEpi
public void vaccinationUpdate(IcEpidemicSpecialAttentionDTO formDTO,TokenDto tokenDto) {
LambdaQueryWrapper<IcEpidemicSpecialAttentionEntity> w = new LambdaQueryWrapper<>();
IcEpidemicSpecialAttentionEntity e = new IcEpidemicSpecialAttentionEntity();
w.eq(IcEpidemicSpecialAttentionEntity::getIdCard,formDTO.getIdCard())
w.eq(IcEpidemicSpecialAttentionEntity::getId,formDTO.getId())
.eq(IcEpidemicSpecialAttentionEntity::getAttentionType,formDTO.getAttentionType());
e.setMobile(formDTO.getMobile());
e.setReason(formDTO.getReason());

5
epmet-user/epmet-user-server/src/main/resources/mapper/IcEpidemicSpecialAttentionDao.xml

@ -58,6 +58,7 @@
</trim>
WHERE del_flag = 0
AND attention_type = #{attentionType}
AND is_history = 0
AND id_card IN (
<foreach collection="list" item="l" separator=",">
#{l.idCard}
@ -122,6 +123,7 @@
<select id="natList" resultType="com.epmet.dto.result.VaccinationListResultDTO">
SELECT a.id,
a.`NAME`,
a.customer_id as customerId,
a.MOBILE,
a.ID_CARD,
a.REMARK,
@ -187,6 +189,7 @@
ID_CARD
FROM ic_epidemic_special_attention
WHERE DEL_FLAG = 0
AND IS_HISTORY = 0
AND ATTENTION_TYPE = #{attentionType}
AND ID_CARD IN (
<foreach collection="list" item="l" separator=",">
@ -239,7 +242,7 @@
</select>
<select id="getHistoryCount" resultType="java.lang.Integer">
SELECT
count(id)
count(distinct id_card)
FROM ic_epidemic_special_attention
WHERE DEL_FLAG = 0
AND concat( pids, ':', ORG_ID ) LIKE concat( '%', #{agencyId}, '%' )

Loading…
Cancel
Save