87 changed files with 5474 additions and 90 deletions
@ -0,0 +1,57 @@ |
|||||
|
package com.epmet.commons.tools.enums; |
||||
|
|
||||
|
import com.epmet.commons.tools.exception.EpmetErrorCode; |
||||
|
|
||||
|
/** |
||||
|
* @author Administrator |
||||
|
*/ |
||||
|
public enum ChannelEnum { |
||||
|
//通知渠道 0小程序通知,1短信通知
|
||||
|
APP("0", "小程序通知"), |
||||
|
MESSAGE("1", "短信通知"), |
||||
|
ALL("2", "小程序通知,短信通知"); |
||||
|
private String code; |
||||
|
private String name; |
||||
|
|
||||
|
|
||||
|
ChannelEnum(String code, String name) { |
||||
|
this.code = code; |
||||
|
this.name = name; |
||||
|
} |
||||
|
|
||||
|
public static String getName(String code) { |
||||
|
ChannelEnum[] houseTypeEnums = values(); |
||||
|
for (ChannelEnum houseTypeEnum : houseTypeEnums) { |
||||
|
if (houseTypeEnum.getCode() == code) { |
||||
|
return houseTypeEnum.getName(); |
||||
|
} |
||||
|
} |
||||
|
return EpmetErrorCode.SERVER_ERROR.getMsg(); |
||||
|
} |
||||
|
|
||||
|
public static String getCode(String name) { |
||||
|
ChannelEnum[] houseTypeEnums = values(); |
||||
|
for (ChannelEnum houseTypeEnum : houseTypeEnums) { |
||||
|
if (houseTypeEnum.getName().equals(name)) { |
||||
|
return houseTypeEnum.getCode(); |
||||
|
} |
||||
|
} |
||||
|
return null; |
||||
|
} |
||||
|
|
||||
|
public String getCode() { |
||||
|
return code; |
||||
|
} |
||||
|
|
||||
|
public void setCode(String code) { |
||||
|
this.code = code; |
||||
|
} |
||||
|
|
||||
|
public String getName() { |
||||
|
return name; |
||||
|
} |
||||
|
|
||||
|
public void setName(String name) { |
||||
|
this.name = name; |
||||
|
} |
||||
|
} |
||||
@ -0,0 +1,131 @@ |
|||||
|
package com.epmet.dto; |
||||
|
|
||||
|
import java.io.Serializable; |
||||
|
import java.util.Date; |
||||
|
import java.util.List; |
||||
|
|
||||
|
import lombok.Data; |
||||
|
|
||||
|
import javax.validation.constraints.NotBlank; |
||||
|
import javax.validation.constraints.NotNull; |
||||
|
|
||||
|
|
||||
|
/** |
||||
|
* 疫情特别关注 |
||||
|
* |
||||
|
* @author generator generator@elink-cn.com |
||||
|
* @since v1.0.0 2022-03-28 |
||||
|
*/ |
||||
|
@Data |
||||
|
public class IcEpidemicSpecialAttentionDTO implements Serializable { |
||||
|
|
||||
|
private static final long serialVersionUID = 1L; |
||||
|
|
||||
|
public interface IcEpidemicSpecialAttentionUpdate{} |
||||
|
public interface IcEpidemicSpecialAttentionAdd{} |
||||
|
|
||||
|
/** |
||||
|
* ID |
||||
|
*/ |
||||
|
private String id; |
||||
|
|
||||
|
/** |
||||
|
* 客户ID |
||||
|
*/ |
||||
|
private String customerId; |
||||
|
|
||||
|
/** |
||||
|
* 当前工作人员所属组织ID |
||||
|
*/ |
||||
|
private String orgId; |
||||
|
|
||||
|
/** |
||||
|
* 组织ID上级 |
||||
|
*/ |
||||
|
private String pid; |
||||
|
|
||||
|
/** |
||||
|
* 组织ID所有上级 |
||||
|
*/ |
||||
|
private String pids; |
||||
|
|
||||
|
/** |
||||
|
* 是否关注 1:关注,0:取消关注 |
||||
|
*/ |
||||
|
private Integer isAttention; |
||||
|
|
||||
|
/** |
||||
|
* 关注类型,核酸检测:2,疫苗接种:1 |
||||
|
*/ |
||||
|
@NotNull(message = "attentionType不能为空",groups = {IcEpidemicSpecialAttentionAdd.class,IcEpidemicSpecialAttentionUpdate.class}) |
||||
|
private Integer attentionType; |
||||
|
|
||||
|
/** |
||||
|
* 姓名 |
||||
|
*/ |
||||
|
@NotBlank(message = "name不能为空",groups = IcEpidemicSpecialAttentionAdd.class) |
||||
|
private String name; |
||||
|
|
||||
|
/** |
||||
|
* 手机号 |
||||
|
*/ |
||||
|
@NotBlank(message = "mobile不能为空",groups = IcEpidemicSpecialAttentionAdd.class) |
||||
|
private String mobile; |
||||
|
|
||||
|
/** |
||||
|
* 身份证号 |
||||
|
*/ |
||||
|
@NotBlank(message = "idCard不能为空",groups = {IcEpidemicSpecialAttentionAdd.class,IcEpidemicSpecialAttentionUpdate.class}) |
||||
|
private String idCard; |
||||
|
|
||||
|
/** |
||||
|
* 原因 |
||||
|
*/ |
||||
|
private String reason; |
||||
|
|
||||
|
/** |
||||
|
* 备注 |
||||
|
*/ |
||||
|
private String remark; |
||||
|
|
||||
|
/** |
||||
|
* |
||||
|
*/ |
||||
|
private Integer delFlag; |
||||
|
|
||||
|
/** |
||||
|
* 乐观锁 |
||||
|
*/ |
||||
|
private Integer revision; |
||||
|
|
||||
|
/** |
||||
|
* 创建人 |
||||
|
*/ |
||||
|
private String createdBy; |
||||
|
|
||||
|
/** |
||||
|
* 创建时间 |
||||
|
*/ |
||||
|
private Date createdTime; |
||||
|
|
||||
|
/** |
||||
|
* 更新人 |
||||
|
*/ |
||||
|
private String updatedBy; |
||||
|
|
||||
|
/** |
||||
|
* 更新时间 |
||||
|
*/ |
||||
|
private Date updatedTime; |
||||
|
|
||||
|
/** |
||||
|
* 通知渠道 0小程序通知,1短信通知 |
||||
|
*/ |
||||
|
private List<String> channel; |
||||
|
|
||||
|
/** |
||||
|
* 通知内容 |
||||
|
*/ |
||||
|
private String content; |
||||
|
|
||||
|
} |
||||
@ -0,0 +1,89 @@ |
|||||
|
package com.epmet.dto; |
||||
|
|
||||
|
import java.io.Serializable; |
||||
|
import java.util.Date; |
||||
|
import lombok.Data; |
||||
|
|
||||
|
|
||||
|
/** |
||||
|
* 随访记录表 |
||||
|
* |
||||
|
* @author generator generator@elink-cn.com |
||||
|
* @since v1.0.0 2022-03-25 |
||||
|
*/ |
||||
|
@Data |
||||
|
public class IcFollowUpRecordDTO implements Serializable { |
||||
|
|
||||
|
private static final long serialVersionUID = 1L; |
||||
|
|
||||
|
/** |
||||
|
* 主键ID |
||||
|
*/ |
||||
|
private String id; |
||||
|
|
||||
|
/** |
||||
|
* 客户Id |
||||
|
*/ |
||||
|
private String customerId; |
||||
|
|
||||
|
/** |
||||
|
* 姓名 |
||||
|
*/ |
||||
|
private String name; |
||||
|
|
||||
|
/** |
||||
|
* 手机号 |
||||
|
*/ |
||||
|
private String mobile; |
||||
|
|
||||
|
/** |
||||
|
* 身份证号 |
||||
|
*/ |
||||
|
private String idCard; |
||||
|
|
||||
|
/** |
||||
|
* 0行程上报,1疫苗接种,2核酸检测 |
||||
|
*/ |
||||
|
private String origin; |
||||
|
|
||||
|
/** |
||||
|
* 随访时间 |
||||
|
*/ |
||||
|
private Date visitTime; |
||||
|
|
||||
|
/** |
||||
|
* 随访内容 |
||||
|
*/ |
||||
|
private String content; |
||||
|
|
||||
|
/** |
||||
|
* 删除标识 1删除;0未删除 |
||||
|
*/ |
||||
|
private String delFlag; |
||||
|
|
||||
|
/** |
||||
|
* 乐观锁 |
||||
|
*/ |
||||
|
private Integer revision; |
||||
|
|
||||
|
/** |
||||
|
* 创建人 |
||||
|
*/ |
||||
|
private String createdBy; |
||||
|
|
||||
|
/** |
||||
|
* 创建时间 |
||||
|
*/ |
||||
|
private Date createdTime; |
||||
|
|
||||
|
/** |
||||
|
* 更新人 |
||||
|
*/ |
||||
|
private String updatedBy; |
||||
|
|
||||
|
/** |
||||
|
* 更新时间 |
||||
|
*/ |
||||
|
private Date updatedTime; |
||||
|
|
||||
|
} |
||||
@ -0,0 +1,139 @@ |
|||||
|
package com.epmet.dto; |
||||
|
|
||||
|
import java.io.Serializable; |
||||
|
import java.util.ArrayList; |
||||
|
import java.util.Date; |
||||
|
import java.util.List; |
||||
|
|
||||
|
import com.fasterxml.jackson.annotation.JsonFormat; |
||||
|
import lombok.Data; |
||||
|
|
||||
|
|
||||
|
/** |
||||
|
* 核酸上报记录 |
||||
|
|
||||
|
* |
||||
|
* @author generator generator@elink-cn.com |
||||
|
* @since v1.0.0 2022-03-25 |
||||
|
*/ |
||||
|
@Data |
||||
|
public class IcNatDTO implements Serializable { |
||||
|
|
||||
|
private static final long serialVersionUID = 1L; |
||||
|
|
||||
|
/** |
||||
|
* ID |
||||
|
*/ |
||||
|
private String id; |
||||
|
|
||||
|
/** |
||||
|
* 客户Id CUSTOMER.id |
||||
|
*/ |
||||
|
private String customerId; |
||||
|
|
||||
|
/** |
||||
|
* 居民端上报时存储用户所在网格的组织id.居民信息的人存储居民所在组织id.单个新增或者导入的存储登录用户所属的组织id |
||||
|
*/ |
||||
|
private String agencyId; |
||||
|
|
||||
|
/** |
||||
|
* 组织pids |
||||
|
*/ |
||||
|
private String pids; |
||||
|
|
||||
|
/** |
||||
|
* 居民端小程序的用户id、数字社区的icResiUserId、其他情况无值 |
||||
|
*/ |
||||
|
private String userId; |
||||
|
|
||||
|
/** |
||||
|
* 居民端小程序的人:resi;数字社区的居民:icresi;导入的:import;同步的:synchro |
||||
|
*/ |
||||
|
private String userType; |
||||
|
|
||||
|
/** |
||||
|
* 人员姓名 |
||||
|
*/ |
||||
|
private String name; |
||||
|
|
||||
|
/** |
||||
|
* 手机号 |
||||
|
*/ |
||||
|
private String mobile; |
||||
|
|
||||
|
/** |
||||
|
* 身份证号 |
||||
|
*/ |
||||
|
private String idCard; |
||||
|
|
||||
|
/** |
||||
|
* 检测时间,精确到分钟 |
||||
|
*/ |
||||
|
@JsonFormat(pattern = "yyyy-MM-dd HH:mm", timezone = "GMT+8") |
||||
|
private Date natTime; |
||||
|
|
||||
|
/** |
||||
|
* 检测结果(0:阴性 1:阳性) |
||||
|
*/ |
||||
|
private String natResult; |
||||
|
|
||||
|
/** |
||||
|
* 检测地点 |
||||
|
*/ |
||||
|
private String natAddress; |
||||
|
|
||||
|
/** |
||||
|
* 文件名 |
||||
|
*/ |
||||
|
private String fileName; |
||||
|
|
||||
|
/** |
||||
|
* 文件类型((图片 - image、 视频 - video、 语音 - voice、 文档 - doc)) |
||||
|
*/ |
||||
|
private String attachmentType; |
||||
|
|
||||
|
/** |
||||
|
* url地址 |
||||
|
*/ |
||||
|
private String attachmentUrl; |
||||
|
|
||||
|
/** |
||||
|
* 删除标识 |
||||
|
*/ |
||||
|
private Integer delFlag; |
||||
|
|
||||
|
/** |
||||
|
* 乐观锁 |
||||
|
*/ |
||||
|
private Integer revision; |
||||
|
|
||||
|
/** |
||||
|
* 创建人 |
||||
|
*/ |
||||
|
private String createdBy; |
||||
|
|
||||
|
/** |
||||
|
* 创建时间 |
||||
|
*/ |
||||
|
private Date createdTime; |
||||
|
|
||||
|
/** |
||||
|
* 更新人 |
||||
|
*/ |
||||
|
private String updatedBy; |
||||
|
|
||||
|
/** |
||||
|
* 更新时间 |
||||
|
*/ |
||||
|
private Date updatedTime; |
||||
|
|
||||
|
/** |
||||
|
* 通知渠道 0小程序通知,1短信通知,多选是数组 |
||||
|
*/ |
||||
|
private List<String> channel = new ArrayList<>(); |
||||
|
/** |
||||
|
* 通知内容 |
||||
|
*/ |
||||
|
private String content = ""; |
||||
|
|
||||
|
} |
||||
@ -0,0 +1,109 @@ |
|||||
|
package com.epmet.dto; |
||||
|
|
||||
|
import com.fasterxml.jackson.annotation.JsonFormat; |
||||
|
import com.fasterxml.jackson.annotation.JsonIgnore; |
||||
|
import lombok.Data; |
||||
|
|
||||
|
import java.io.Serializable; |
||||
|
import java.util.Date; |
||||
|
import java.util.List; |
||||
|
|
||||
|
|
||||
|
/** |
||||
|
* 防疫通知 |
||||
|
* |
||||
|
* @author generator generator@elink-cn.com |
||||
|
* @since v1.0.0 2022-03-28 |
||||
|
*/ |
||||
|
@Data |
||||
|
public class IcNoticeDTO implements Serializable { |
||||
|
|
||||
|
private static final long serialVersionUID = 1L; |
||||
|
|
||||
|
/** |
||||
|
* 唯一标识 |
||||
|
*/ |
||||
|
@JsonIgnore |
||||
|
private String id; |
||||
|
|
||||
|
/** |
||||
|
* 客户Id customer.id |
||||
|
*/ |
||||
|
@JsonIgnore |
||||
|
private String customerId; |
||||
|
|
||||
|
/** |
||||
|
* 通知渠道 0小程序通知,1短信通知 |
||||
|
*/ |
||||
|
private String channel; |
||||
|
private List<String> channelList; |
||||
|
/** |
||||
|
* 通知来源 0行程上报,1疫苗接种,2核酸检测 |
||||
|
*/ |
||||
|
@JsonIgnore |
||||
|
private String origin; |
||||
|
|
||||
|
/** |
||||
|
* 用户ID |
||||
|
*/ |
||||
|
@JsonIgnore |
||||
|
private String userId; |
||||
|
/** |
||||
|
* 手机号 |
||||
|
*/ |
||||
|
@JsonIgnore |
||||
|
private String mobile; |
||||
|
|
||||
|
/** |
||||
|
* 被通知人身份证号 |
||||
|
*/ |
||||
|
@JsonIgnore |
||||
|
private String idCard; |
||||
|
|
||||
|
/** |
||||
|
* 通知内容 |
||||
|
*/ |
||||
|
private String content; |
||||
|
|
||||
|
/** |
||||
|
* 发送通知的社区 |
||||
|
*/ |
||||
|
private String orgName; |
||||
|
|
||||
|
/** |
||||
|
* 删除标识:0.未删除 1.已删除 |
||||
|
*/ |
||||
|
@JsonIgnore |
||||
|
private Integer delFlag; |
||||
|
|
||||
|
/** |
||||
|
* 乐观锁 |
||||
|
*/ |
||||
|
@JsonIgnore |
||||
|
private Integer revision; |
||||
|
|
||||
|
/** |
||||
|
* 创建人 |
||||
|
*/ |
||||
|
@JsonIgnore |
||||
|
private String createdBy; |
||||
|
|
||||
|
/** |
||||
|
* 创建时间 |
||||
|
*/ |
||||
|
@JsonFormat(pattern = "yyyy-MM-dd HH:mm", timezone = "GMT+8") |
||||
|
private Date createdTime; |
||||
|
|
||||
|
/** |
||||
|
* 更新人 |
||||
|
*/ |
||||
|
@JsonIgnore |
||||
|
private String updatedBy; |
||||
|
|
||||
|
/** |
||||
|
* 更新时间 |
||||
|
*/ |
||||
|
@JsonIgnore |
||||
|
private Date updatedTime; |
||||
|
|
||||
|
} |
||||
@ -0,0 +1,109 @@ |
|||||
|
package com.epmet.dto; |
||||
|
|
||||
|
import java.io.Serializable; |
||||
|
import java.util.Date; |
||||
|
import lombok.Data; |
||||
|
|
||||
|
|
||||
|
/** |
||||
|
* 居民疫苗情况 |
||||
|
* |
||||
|
* @author generator generator@elink-cn.com |
||||
|
* @since v1.0.0 2022-03-28 |
||||
|
*/ |
||||
|
@Data |
||||
|
public class IcResiVaccineDTO implements Serializable { |
||||
|
|
||||
|
private static final long serialVersionUID = 1L; |
||||
|
|
||||
|
/** |
||||
|
* 唯一标识 |
||||
|
*/ |
||||
|
private String id; |
||||
|
|
||||
|
/** |
||||
|
* 客户Id customer.id |
||||
|
*/ |
||||
|
private String customerId; |
||||
|
|
||||
|
/** |
||||
|
* 姓名 |
||||
|
*/ |
||||
|
private String name; |
||||
|
|
||||
|
/** |
||||
|
* 手机号 |
||||
|
*/ |
||||
|
private String mobile; |
||||
|
|
||||
|
/** |
||||
|
* 身份证号 |
||||
|
*/ |
||||
|
private String idCard; |
||||
|
|
||||
|
/** |
||||
|
* 接种时间 |
||||
|
*/ |
||||
|
private Date inoculateTime; |
||||
|
|
||||
|
/** |
||||
|
* 接种地点 |
||||
|
*/ |
||||
|
private String inoculateAddress; |
||||
|
|
||||
|
/** |
||||
|
* 疫苗厂家 |
||||
|
*/ |
||||
|
private String manufacturer; |
||||
|
|
||||
|
/** |
||||
|
* 预留字段1 |
||||
|
*/ |
||||
|
private String field1; |
||||
|
|
||||
|
/** |
||||
|
* 预留字段2 |
||||
|
*/ |
||||
|
private String field2; |
||||
|
|
||||
|
/** |
||||
|
* 预留字段3 |
||||
|
*/ |
||||
|
private String field3; |
||||
|
|
||||
|
/** |
||||
|
* 备注 |
||||
|
*/ |
||||
|
private String remaek; |
||||
|
|
||||
|
/** |
||||
|
* 删除标识 0.未删除 1.已删除 |
||||
|
*/ |
||||
|
private Integer delFlag; |
||||
|
|
||||
|
/** |
||||
|
* 乐观锁 |
||||
|
*/ |
||||
|
private Integer revision; |
||||
|
|
||||
|
/** |
||||
|
* 创建人 |
||||
|
*/ |
||||
|
private String createdBy; |
||||
|
|
||||
|
/** |
||||
|
* 创建时间 |
||||
|
*/ |
||||
|
private Date createdTime; |
||||
|
|
||||
|
/** |
||||
|
* 更新人 |
||||
|
*/ |
||||
|
private String updatedBy; |
||||
|
|
||||
|
/** |
||||
|
* 更新时间 |
||||
|
*/ |
||||
|
private Date updatedTime; |
||||
|
|
||||
|
} |
||||
@ -0,0 +1,125 @@ |
|||||
|
package com.epmet.dto; |
||||
|
|
||||
|
import lombok.Data; |
||||
|
|
||||
|
import java.io.Serializable; |
||||
|
import java.util.Date; |
||||
|
|
||||
|
|
||||
|
/** |
||||
|
* 行程上报信息 |
||||
|
* |
||||
|
* @author generator generator@elink-cn.com |
||||
|
* @since v1.0.0 2022-03-25 |
||||
|
*/ |
||||
|
@Data |
||||
|
public class IcTripReportRecordDTO implements Serializable { |
||||
|
|
||||
|
private static final long serialVersionUID = 1L; |
||||
|
|
||||
|
/** |
||||
|
* 主键ID |
||||
|
*/ |
||||
|
private String id; |
||||
|
|
||||
|
/** |
||||
|
* 客户Id |
||||
|
*/ |
||||
|
private String customerId; |
||||
|
|
||||
|
/** |
||||
|
* 姓名 |
||||
|
*/ |
||||
|
private String name; |
||||
|
|
||||
|
/** |
||||
|
* 手机号 |
||||
|
*/ |
||||
|
private String mobile; |
||||
|
|
||||
|
/** |
||||
|
* 身份证号 |
||||
|
*/ |
||||
|
private String idCard; |
||||
|
|
||||
|
/** |
||||
|
* 用户id |
||||
|
*/ |
||||
|
private String userId; |
||||
|
|
||||
|
/** |
||||
|
* 居民端小程序的人:resi;数字社区的居民:icresi;未关联上的:other |
||||
|
*/ |
||||
|
private String userType; |
||||
|
|
||||
|
/** |
||||
|
* 现居地编码 |
||||
|
*/ |
||||
|
private String presentAddressCode; |
||||
|
|
||||
|
/** |
||||
|
* 现居地名称eg:山东省青岛市黄岛区玫瑰山路社区 |
||||
|
*/ |
||||
|
private String presentAddress; |
||||
|
|
||||
|
/** |
||||
|
* 详细地址 |
||||
|
*/ |
||||
|
private String detailAddress; |
||||
|
|
||||
|
/** |
||||
|
* 来源地区编码 |
||||
|
*/ |
||||
|
private String sourceAddressCode; |
||||
|
|
||||
|
/** |
||||
|
* 来源地区地址 |
||||
|
*/ |
||||
|
private String sourceAddress; |
||||
|
|
||||
|
/** |
||||
|
* 到达日期 |
||||
|
*/ |
||||
|
private Date arriveDate; |
||||
|
|
||||
|
/** |
||||
|
* 离开日期 |
||||
|
*/ |
||||
|
private Date leaveDate; |
||||
|
|
||||
|
/** |
||||
|
* 备注信息 |
||||
|
*/ |
||||
|
private String remark; |
||||
|
|
||||
|
/** |
||||
|
* 删除标识 1删除;0未删除 |
||||
|
*/ |
||||
|
private String delFlag; |
||||
|
|
||||
|
/** |
||||
|
* 乐观锁 |
||||
|
*/ |
||||
|
private Integer revision; |
||||
|
|
||||
|
/** |
||||
|
* 创建人 |
||||
|
*/ |
||||
|
private String createdBy; |
||||
|
|
||||
|
/** |
||||
|
* 创建时间 |
||||
|
*/ |
||||
|
private Date createdTime; |
||||
|
|
||||
|
/** |
||||
|
* 更新人 |
||||
|
*/ |
||||
|
private String updatedBy; |
||||
|
|
||||
|
/** |
||||
|
* 更新时间 |
||||
|
*/ |
||||
|
private Date updatedTime; |
||||
|
|
||||
|
} |
||||
@ -0,0 +1,97 @@ |
|||||
|
package com.epmet.dto.form; |
||||
|
|
||||
|
import com.epmet.commons.tools.validator.group.CustomerClientShowGroup; |
||||
|
import com.fasterxml.jackson.annotation.JsonFormat; |
||||
|
import lombok.Data; |
||||
|
|
||||
|
import javax.validation.constraints.NotBlank; |
||||
|
import java.io.Serializable; |
||||
|
import java.util.ArrayList; |
||||
|
import java.util.Date; |
||||
|
import java.util.List; |
||||
|
|
||||
|
/** |
||||
|
* @Description 核酸检测-上报核酸记录 |
||||
|
* @Author sun |
||||
|
*/ |
||||
|
@Data |
||||
|
public class AddIcNatFormDTO implements Serializable { |
||||
|
private static final long serialVersionUID = 9156247659994638103L; |
||||
|
|
||||
|
public interface Nat extends CustomerClientShowGroup { |
||||
|
} |
||||
|
|
||||
|
/** |
||||
|
* 核酸记录Id,修改时使用 |
||||
|
*/ |
||||
|
private String icNatId; |
||||
|
/** |
||||
|
* 当前网格所属组织Id |
||||
|
*/ |
||||
|
@NotBlank(message = "组织Id不能为空", groups = Nat.class) |
||||
|
private String agencyId; |
||||
|
/** |
||||
|
* 居民端小程序的用户id、数字社区的icResiUserId、其他情况无值 |
||||
|
*/ |
||||
|
private String userId; |
||||
|
/** |
||||
|
* 居民端小程序的人:resi;数字社区的居民:icresi;未关联上的:other |
||||
|
*/ |
||||
|
@NotBlank(message = "居民来源不能为空", groups = Nat.class) |
||||
|
private String userType; |
||||
|
/** |
||||
|
* 姓名 |
||||
|
*/ |
||||
|
@NotBlank(message = "姓名不能为空", groups = Nat.class) |
||||
|
private String name; |
||||
|
/** |
||||
|
* 手机号 |
||||
|
*/ |
||||
|
@NotBlank(message = "手机号不能为空", groups = Nat.class) |
||||
|
private String mobile; |
||||
|
/** |
||||
|
* 身份证号 |
||||
|
*/ |
||||
|
@NotBlank(message = "身份证号不能为空", groups = Nat.class) |
||||
|
private String idCard; |
||||
|
/** |
||||
|
* 检测时间 |
||||
|
*/ |
||||
|
//@NotBlank(message = "检测时间不能为空", groups = Nat.class)
|
||||
|
@JsonFormat(pattern="yyyy-MM-dd HH:mm") |
||||
|
private Date natTime; |
||||
|
/** |
||||
|
* 检测结果 |
||||
|
*/ |
||||
|
private String natResult; |
||||
|
/** |
||||
|
* 检测地点 |
||||
|
*/ |
||||
|
private String natAddress; |
||||
|
/** |
||||
|
* 文件名 |
||||
|
*/ |
||||
|
private String fileName; |
||||
|
/** |
||||
|
* 附件类型((图片 - image、 视频 - video、 语音 - voice、 文档 - doc)) |
||||
|
*/ |
||||
|
private String attachmentType; |
||||
|
|
||||
|
/** |
||||
|
* 附件地址 |
||||
|
*/ |
||||
|
private String attachmentUrl; |
||||
|
/** |
||||
|
* 通知渠道 0小程序通知,1短信通知,多选是数组 |
||||
|
*/ |
||||
|
private List<String> channel = new ArrayList<>(); |
||||
|
/** |
||||
|
* 通知内容 |
||||
|
*/ |
||||
|
private String content = ""; |
||||
|
|
||||
|
//token中信息
|
||||
|
private String customerId; |
||||
|
|
||||
|
|
||||
|
} |
||||
@ -0,0 +1,35 @@ |
|||||
|
package com.epmet.dto.form; |
||||
|
|
||||
|
import lombok.Data; |
||||
|
|
||||
|
import javax.validation.Valid; |
||||
|
import javax.validation.constraints.NotBlank; |
||||
|
import javax.validation.constraints.NotNull; |
||||
|
import java.io.Serializable; |
||||
|
import java.util.List; |
||||
|
|
||||
|
/** |
||||
|
* @Author zxc |
||||
|
* @DateTime 2022/3/28 16:48 |
||||
|
* @DESC |
||||
|
*/ |
||||
|
@Data |
||||
|
public class CancelAttentionPackageFormDTO implements Serializable { |
||||
|
|
||||
|
private static final long serialVersionUID = 2198470055930997870L; |
||||
|
|
||||
|
public interface CancelAttentionPackageForm{} |
||||
|
|
||||
|
|
||||
|
/** |
||||
|
* 身份证 |
||||
|
*/ |
||||
|
@NotNull(message = "idCard不能为空",groups = CancelAttentionPackageForm.class) |
||||
|
private List<String> idCards; |
||||
|
|
||||
|
/** |
||||
|
* 关注类型,核酸检测:2,疫苗接种:1 |
||||
|
*/ |
||||
|
@NotNull(message = "attentionType不能为空",groups = CancelAttentionPackageForm.class) |
||||
|
private Integer attentionType ; |
||||
|
} |
||||
@ -0,0 +1,21 @@ |
|||||
|
package com.epmet.dto.form; |
||||
|
|
||||
|
import com.epmet.commons.tools.dto.form.PageFormDTO; |
||||
|
import com.epmet.commons.tools.validator.group.DefaultGroup; |
||||
|
import lombok.Data; |
||||
|
|
||||
|
import javax.validation.constraints.NotBlank; |
||||
|
import java.io.Serializable; |
||||
|
|
||||
|
/** |
||||
|
* @Description |
||||
|
* @Author zhaoqifeng |
||||
|
* @Date 2022/3/28 16:13 |
||||
|
*/ |
||||
|
@Data |
||||
|
public class IcNoticeFormDTO extends PageFormDTO implements Serializable { |
||||
|
private static final long serialVersionUID = 7392894573654015338L; |
||||
|
private String customerId; |
||||
|
@NotBlank(message = "身份证号不能为空", groups = DefaultGroup.class) |
||||
|
private String idCard; |
||||
|
} |
||||
@ -0,0 +1,22 @@ |
|||||
|
package com.epmet.dto.form; |
||||
|
|
||||
|
import lombok.Data; |
||||
|
|
||||
|
import javax.validation.constraints.NotBlank; |
||||
|
import java.io.Serializable; |
||||
|
|
||||
|
/** |
||||
|
* 社区居民信息登记-查询 |
||||
|
*/ |
||||
|
@Data |
||||
|
public class LatestSubmitCollectFormDTO implements Serializable { |
||||
|
public interface AddUserInternalGroup { |
||||
|
} |
||||
|
|
||||
|
@NotBlank(message = "userId不能为空", groups = AddUserInternalGroup.class) |
||||
|
private String userId; |
||||
|
@NotBlank(message = "customerId不能为空", groups = AddUserInternalGroup.class) |
||||
|
private String customerId; |
||||
|
@NotBlank(message = "gridId不能为空", groups = AddUserInternalGroup.class) |
||||
|
private String gridId; |
||||
|
} |
||||
@ -0,0 +1,65 @@ |
|||||
|
package com.epmet.dto.form; |
||||
|
|
||||
|
import com.epmet.commons.tools.dto.form.PageFormDTO; |
||||
|
import com.epmet.commons.tools.validator.group.CustomerClientShowGroup; |
||||
|
import lombok.Data; |
||||
|
|
||||
|
import javax.validation.constraints.NotBlank; |
||||
|
|
||||
|
/** |
||||
|
* @Description 核酸检测-我的上报记录 |
||||
|
* @Author sun |
||||
|
*/ |
||||
|
@Data |
||||
|
public class MyNatListFormDTO extends PageFormDTO { |
||||
|
private static final long serialVersionUID = 9156247659994638103L; |
||||
|
|
||||
|
public interface MyNat extends CustomerClientShowGroup { |
||||
|
} |
||||
|
public interface Detail extends CustomerClientShowGroup { |
||||
|
} |
||||
|
public interface Del extends CustomerClientShowGroup { |
||||
|
} |
||||
|
public interface Synchro extends CustomerClientShowGroup { |
||||
|
} |
||||
|
|
||||
|
/** |
||||
|
* 身份证号 |
||||
|
*/ |
||||
|
@NotBlank(message = "身份证号不能为空", groups = MyNat.class) |
||||
|
private String idCard; |
||||
|
/** |
||||
|
* 当前组织:current 根组织:all |
||||
|
*/ |
||||
|
private String orgType; |
||||
|
private String agencyId; |
||||
|
/** |
||||
|
* 姓名 |
||||
|
*/ |
||||
|
private String name; |
||||
|
/** |
||||
|
* 手机号 |
||||
|
*/ |
||||
|
private String mobile; |
||||
|
/** |
||||
|
* 检测开始时间yyyy-MM-dd HH:mm |
||||
|
*/ |
||||
|
private String startTime; |
||||
|
/** |
||||
|
* 检测结束时间yyyy-MM-dd HH:mm间yy-mm-dd |
||||
|
*/ |
||||
|
private String endTime; |
||||
|
|
||||
|
/** |
||||
|
* 核酸记录Id |
||||
|
*/ |
||||
|
@NotBlank(message = "核酸记录Id不能为空", groups = { Detail.class, Del.class, Synchro.class}) |
||||
|
private String icNatId; |
||||
|
|
||||
|
/** |
||||
|
* token里设置 |
||||
|
*/ |
||||
|
private String customerId; |
||||
|
private String userId; |
||||
|
|
||||
|
} |
||||
@ -0,0 +1,52 @@ |
|||||
|
package com.epmet.dto.form; |
||||
|
|
||||
|
import com.epmet.commons.tools.dto.form.PageFormDTO; |
||||
|
import lombok.Data; |
||||
|
|
||||
|
import javax.validation.constraints.NotNull; |
||||
|
import java.io.Serializable; |
||||
|
|
||||
|
/** |
||||
|
* @Author zxc |
||||
|
* @DateTime 2022/3/28 10:30 |
||||
|
* @DESC |
||||
|
*/ |
||||
|
@Data |
||||
|
public class NatListFormDTO extends PageFormDTO implements Serializable { |
||||
|
|
||||
|
private static final long serialVersionUID = -498378123902522370L; |
||||
|
|
||||
|
/** |
||||
|
* 手机号 |
||||
|
*/ |
||||
|
private String mobile; |
||||
|
|
||||
|
/** |
||||
|
* 名字 |
||||
|
*/ |
||||
|
private String name; |
||||
|
|
||||
|
/** |
||||
|
* 身份证 |
||||
|
*/ |
||||
|
private String idCard; |
||||
|
|
||||
|
/** |
||||
|
* 关注原因 |
||||
|
*/ |
||||
|
private String reason; |
||||
|
|
||||
|
/** |
||||
|
* 备注 |
||||
|
*/ |
||||
|
private String remark; |
||||
|
|
||||
|
private String userId; |
||||
|
|
||||
|
private String customerId; |
||||
|
|
||||
|
/** |
||||
|
* user所属组织ID |
||||
|
*/ |
||||
|
private String orgId; |
||||
|
} |
||||
@ -0,0 +1,105 @@ |
|||||
|
package com.epmet.dto.form; |
||||
|
|
||||
|
import com.epmet.commons.tools.validator.group.CustomerClientShowGroup; |
||||
|
import lombok.Data; |
||||
|
|
||||
|
import javax.validation.Valid; |
||||
|
import javax.validation.constraints.NotBlank; |
||||
|
import javax.validation.constraints.NotEmpty; |
||||
|
import javax.validation.constraints.NotNull; |
||||
|
import java.io.Serializable; |
||||
|
import java.util.List; |
||||
|
|
||||
|
/** |
||||
|
* 社区居民信息登记-提交 入参 |
||||
|
*/ |
||||
|
@Data |
||||
|
public class ResiCollectFormDTO implements Serializable { |
||||
|
|
||||
|
private static final long serialVersionUID = -4026681095438180447L; |
||||
|
|
||||
|
public interface AddUserInternalGroup { |
||||
|
} |
||||
|
|
||||
|
public interface InternalShowGroup extends CustomerClientShowGroup { |
||||
|
} |
||||
|
|
||||
|
/** |
||||
|
* 客户Id customer.id |
||||
|
*/ |
||||
|
@NotBlank(message = "customerId不能为空", groups = AddUserInternalGroup.class) |
||||
|
private String customerId; |
||||
|
|
||||
|
/** |
||||
|
* 网格ID_后端接口赋值 |
||||
|
*/ |
||||
|
@NotBlank(message = "gridId不能为空", groups = AddUserInternalGroup.class) |
||||
|
private String gridId; |
||||
|
|
||||
|
/** |
||||
|
* 组织Id_后端接口赋值 |
||||
|
*/ |
||||
|
@NotBlank(message = "agencyId不能为空", groups = AddUserInternalGroup.class) |
||||
|
private String agencyId; |
||||
|
|
||||
|
/** |
||||
|
* 组织的pid_后端接口赋值 |
||||
|
*/ |
||||
|
private String pids; |
||||
|
|
||||
|
/** |
||||
|
* 所属小区ID |
||||
|
*/ |
||||
|
@NotBlank(message = "小区不能为空", groups = InternalShowGroup.class) |
||||
|
private String villageId; |
||||
|
|
||||
|
/** |
||||
|
* 所属楼宇Id |
||||
|
*/ |
||||
|
@NotBlank(message = "楼栋不能为空", groups = InternalShowGroup.class) |
||||
|
private String buildId; |
||||
|
|
||||
|
/** |
||||
|
* 单元id |
||||
|
*/ |
||||
|
@NotBlank(message = "单元不能为空", groups = InternalShowGroup.class) |
||||
|
private String unitId; |
||||
|
|
||||
|
/** |
||||
|
* 所属家庭Id |
||||
|
*/ |
||||
|
@NotBlank(message = "家庭不能为空", groups = InternalShowGroup.class) |
||||
|
private String homeId; |
||||
|
|
||||
|
/** |
||||
|
* 详细地址 |
||||
|
*/ |
||||
|
@NotBlank(message = "家庭地址不能为空", groups = {InternalShowGroup.class}) |
||||
|
private String address; |
||||
|
|
||||
|
/** |
||||
|
* 1自有0租住 |
||||
|
*/ |
||||
|
@NotBlank(message = "房子属于自有还是租住?", groups = {InternalShowGroup.class}) |
||||
|
private String houseType; |
||||
|
|
||||
|
/** |
||||
|
* 户主姓名 |
||||
|
*/ |
||||
|
@NotBlank(message = "户主姓名不能为空", groups = {InternalShowGroup.class}) |
||||
|
private String houseHolderName; |
||||
|
|
||||
|
/** |
||||
|
* 居住成员人数 |
||||
|
*/ |
||||
|
@NotNull(message = "居住成员人数不能为空", groups = {InternalShowGroup.class}) |
||||
|
private Integer totalResi; |
||||
|
|
||||
|
@Valid |
||||
|
@NotEmpty(message = "成员信息不能为空", groups = {InternalShowGroup.class}) |
||||
|
private List<IcResiCollectMemFormDTO> memberList; |
||||
|
|
||||
|
@NotBlank(message = "userId不能为空", groups = AddUserInternalGroup.class) |
||||
|
private String userId; |
||||
|
|
||||
|
} |
||||
@ -0,0 +1,63 @@ |
|||||
|
package com.epmet.dto.form; |
||||
|
|
||||
|
import com.epmet.commons.tools.validator.group.DefaultGroup; |
||||
|
import lombok.Data; |
||||
|
import lombok.NoArgsConstructor; |
||||
|
|
||||
|
import javax.validation.constraints.NotNull; |
||||
|
import java.io.Serializable; |
||||
|
import java.util.List; |
||||
|
|
||||
|
/** |
||||
|
* @Description |
||||
|
* @Author zhaoqifeng |
||||
|
* @Date 2022/3/28 14:14 |
||||
|
*/ |
||||
|
@NoArgsConstructor |
||||
|
@Data |
||||
|
public class SendNoticeFormDTO implements Serializable { |
||||
|
private static final long serialVersionUID = 4800907725063604885L; |
||||
|
private String customerId; |
||||
|
/** |
||||
|
* 用户列表 |
||||
|
*/ |
||||
|
@NotNull(message = "用户列表不能为空", groups = DefaultGroup.class) |
||||
|
private List<UserListBean> userList; |
||||
|
/** |
||||
|
* 通知渠道通知渠道 0小程序通知,1短信通知 |
||||
|
*/ |
||||
|
@NotNull(message = "通知渠道不能为空", groups = DefaultGroup.class) |
||||
|
private List<String> channel; |
||||
|
/** |
||||
|
* 通知来源 0 行程上报,1 疫苗接种,2 核酸检测 |
||||
|
*/ |
||||
|
@NotNull(message = "通知来源不能为空", groups = DefaultGroup.class) |
||||
|
private String origin; |
||||
|
/** |
||||
|
* 通知内容 |
||||
|
*/ |
||||
|
@NotNull(message = "通知内容不能为空", groups = DefaultGroup.class) |
||||
|
private String content; |
||||
|
/** |
||||
|
* 组织名 |
||||
|
*/ |
||||
|
@NotNull(message = "组织名不能为空", groups = DefaultGroup.class) |
||||
|
private String orgName; |
||||
|
|
||||
|
@NoArgsConstructor |
||||
|
@Data |
||||
|
public static class UserListBean { |
||||
|
/** |
||||
|
* 用户ID |
||||
|
*/ |
||||
|
private String userId; |
||||
|
/** |
||||
|
* 手机号 |
||||
|
*/ |
||||
|
private String mobile; |
||||
|
/** |
||||
|
* 身份证 |
||||
|
*/ |
||||
|
private String idCard; |
||||
|
} |
||||
|
} |
||||
@ -0,0 +1,30 @@ |
|||||
|
package com.epmet.dto.form; |
||||
|
|
||||
|
import com.epmet.dto.IcEpidemicSpecialAttentionDTO; |
||||
|
import lombok.AllArgsConstructor; |
||||
|
import lombok.Data; |
||||
|
import lombok.NoArgsConstructor; |
||||
|
|
||||
|
import javax.validation.Valid; |
||||
|
import java.io.Serializable; |
||||
|
import java.util.List; |
||||
|
|
||||
|
/** |
||||
|
* @Author zxc |
||||
|
* @DateTime 2022/3/28 10:46 |
||||
|
* @DESC |
||||
|
*/ |
||||
|
@Data |
||||
|
@AllArgsConstructor |
||||
|
@NoArgsConstructor |
||||
|
public class VaccinationAddFormDTO implements Serializable { |
||||
|
|
||||
|
private static final long serialVersionUID = -4786942219804246138L; |
||||
|
|
||||
|
@Valid |
||||
|
private List<IcEpidemicSpecialAttentionDTO> list; |
||||
|
|
||||
|
private String userId; |
||||
|
|
||||
|
private String customerId; |
||||
|
} |
||||
@ -0,0 +1,66 @@ |
|||||
|
package com.epmet.dto.form; |
||||
|
|
||||
|
import com.epmet.commons.tools.dto.form.PageFormDTO; |
||||
|
import lombok.Data; |
||||
|
|
||||
|
import javax.validation.constraints.NotBlank; |
||||
|
import javax.validation.constraints.NotNull; |
||||
|
import java.io.Serializable; |
||||
|
|
||||
|
/** |
||||
|
* @Author zxc |
||||
|
* @DateTime 2022/3/28 10:30 |
||||
|
* @DESC |
||||
|
*/ |
||||
|
@Data |
||||
|
public class VaccinationListFormDTO extends PageFormDTO implements Serializable { |
||||
|
|
||||
|
private static final long serialVersionUID = -498378993902522370L; |
||||
|
|
||||
|
public interface VaccinationListForm{} |
||||
|
|
||||
|
/** |
||||
|
* 关注类型,核酸检测:2,疫苗接种:1 |
||||
|
*/ |
||||
|
@NotNull(message = "attentionType不能为空",groups = VaccinationListForm.class) |
||||
|
private Integer attentionType; |
||||
|
|
||||
|
/** |
||||
|
* 手机号 |
||||
|
*/ |
||||
|
private String mobile; |
||||
|
|
||||
|
/** |
||||
|
* 名字 |
||||
|
*/ |
||||
|
private String name; |
||||
|
|
||||
|
/** |
||||
|
* 身份证 |
||||
|
*/ |
||||
|
private String idCard; |
||||
|
|
||||
|
/** |
||||
|
* 疫苗接种次数,疫苗接种关注名单,此字段可填可不填 |
||||
|
*/ |
||||
|
private Integer vaccinationCount; |
||||
|
|
||||
|
/** |
||||
|
* 原因,核酸检测关注名单,此字段可填可不填 |
||||
|
*/ |
||||
|
private String reason; |
||||
|
|
||||
|
/** |
||||
|
* 备注,核酸检测关注名单,此字段可填可不填 |
||||
|
*/ |
||||
|
private String remark; |
||||
|
|
||||
|
private String userId; |
||||
|
|
||||
|
private String customerId; |
||||
|
|
||||
|
/** |
||||
|
* user所属组织ID |
||||
|
*/ |
||||
|
private String orgId; |
||||
|
} |
||||
@ -0,0 +1,82 @@ |
|||||
|
package com.epmet.dto.result; |
||||
|
|
||||
|
import com.epmet.dto.form.IcResiCollectMemFormDTO; |
||||
|
import lombok.Data; |
||||
|
|
||||
|
import javax.validation.Valid; |
||||
|
import java.io.Serializable; |
||||
|
import java.util.ArrayList; |
||||
|
import java.util.List; |
||||
|
|
||||
|
/** |
||||
|
* 社区居民信息登记-返参 |
||||
|
*/ |
||||
|
@Data |
||||
|
public class LatestCollectResDTO implements Serializable { |
||||
|
private String resiCollectId; |
||||
|
private String agencyId; |
||||
|
private String agencyName; |
||||
|
private String pids; |
||||
|
private String gridId; |
||||
|
private String customerId; |
||||
|
/** |
||||
|
* 所属小区ID |
||||
|
*/ |
||||
|
private String villageId; |
||||
|
|
||||
|
/** |
||||
|
* 所属楼宇Id |
||||
|
*/ |
||||
|
private String buildId; |
||||
|
|
||||
|
/** |
||||
|
* 单元id |
||||
|
*/ |
||||
|
private String unitId; |
||||
|
|
||||
|
/** |
||||
|
* 所属家庭Id |
||||
|
*/ |
||||
|
private String homeId; |
||||
|
|
||||
|
/** |
||||
|
* 详细地址 |
||||
|
*/ |
||||
|
private String address; |
||||
|
|
||||
|
/** |
||||
|
* 1自有0租住 |
||||
|
*/ |
||||
|
private String houseType; |
||||
|
|
||||
|
/** |
||||
|
* 户主姓名 |
||||
|
*/ |
||||
|
private String houseHolderName; |
||||
|
|
||||
|
/** |
||||
|
* 居住成员人数 |
||||
|
*/ |
||||
|
private Integer totalResi; |
||||
|
|
||||
|
@Valid |
||||
|
private List<IcResiCollectMemFormDTO> memberList; |
||||
|
|
||||
|
public LatestCollectResDTO() { |
||||
|
this.resiCollectId = ""; |
||||
|
this.agencyId = ""; |
||||
|
this.agencyName = ""; |
||||
|
this.pids = ""; |
||||
|
this.gridId = ""; |
||||
|
this.customerId = ""; |
||||
|
this.villageId = ""; |
||||
|
this.buildId = ""; |
||||
|
this.unitId=""; |
||||
|
this.homeId=""; |
||||
|
this.address=""; |
||||
|
this.houseType=""; |
||||
|
this.houseHolderName=""; |
||||
|
this.totalResi=0; |
||||
|
this.memberList=new ArrayList<>(); |
||||
|
} |
||||
|
} |
||||
@ -0,0 +1,70 @@ |
|||||
|
package com.epmet.dto.result; |
||||
|
|
||||
|
import com.fasterxml.jackson.annotation.JsonFormat; |
||||
|
import lombok.Data; |
||||
|
|
||||
|
import java.io.Serializable; |
||||
|
import java.util.Date; |
||||
|
|
||||
|
/** |
||||
|
* @Description 核酸检测-我的上报记录 |
||||
|
* @Author sun |
||||
|
*/ |
||||
|
@Data |
||||
|
public class MyNatListResultDTO implements Serializable { |
||||
|
private static final long serialVersionUID = 1L; |
||||
|
/** |
||||
|
* 核酸记录Id |
||||
|
*/ |
||||
|
private String icNatId; |
||||
|
/** |
||||
|
* 居民端小程序的用户id、数字社区的icResiUserId、其他情况无值 |
||||
|
*/ |
||||
|
private String userId; |
||||
|
/** |
||||
|
* 居民端小程序的人:resi;数字社区的居民:icresi;未关联上的:other |
||||
|
*/ |
||||
|
private String userType; |
||||
|
|
||||
|
/** |
||||
|
* 姓名 |
||||
|
*/ |
||||
|
private String name; |
||||
|
|
||||
|
/** |
||||
|
* 手机号 |
||||
|
*/ |
||||
|
private String mobile; |
||||
|
|
||||
|
/** |
||||
|
* 身份证号 |
||||
|
*/ |
||||
|
private String idCard; |
||||
|
|
||||
|
/** |
||||
|
* 检测时间,yyyy-MM-dd HH:mm |
||||
|
*/ |
||||
|
@JsonFormat(pattern = "yyyy-MM-dd HH:mm", timezone = "GMT+8") |
||||
|
private Date natTime; |
||||
|
|
||||
|
/** |
||||
|
* 检测结果 |
||||
|
*/ |
||||
|
private String natResult; |
||||
|
|
||||
|
/** |
||||
|
* 检测地点 |
||||
|
*/ |
||||
|
private String natAddress; |
||||
|
|
||||
|
/** |
||||
|
* 附件名 |
||||
|
*/ |
||||
|
private String fileName; |
||||
|
|
||||
|
/** |
||||
|
* 附件地址 |
||||
|
*/ |
||||
|
private String attachmentUrl; |
||||
|
|
||||
|
} |
||||
@ -0,0 +1,88 @@ |
|||||
|
package com.epmet.dto.result; |
||||
|
|
||||
|
import com.alibaba.excel.annotation.ExcelIgnore; |
||||
|
import com.alibaba.excel.annotation.ExcelProperty; |
||||
|
import com.alibaba.excel.annotation.write.style.ColumnWidth; |
||||
|
import com.alibaba.excel.annotation.write.style.HeadStyle; |
||||
|
import com.alibaba.excel.enums.poi.FillPatternTypeEnum; |
||||
|
import com.fasterxml.jackson.annotation.JsonFormat; |
||||
|
import lombok.Data; |
||||
|
|
||||
|
import java.io.Serializable; |
||||
|
import java.util.Date; |
||||
|
|
||||
|
/** |
||||
|
* @Description 核酸检测-我的上报记录 |
||||
|
* @Author sun |
||||
|
*/ |
||||
|
@HeadStyle(fillPatternType = FillPatternTypeEnum.SOLID_FOREGROUND, fillForegroundColor = 44) |
||||
|
@Data |
||||
|
public class NatListResultDTO implements Serializable { |
||||
|
private static final long serialVersionUID = 1L; |
||||
|
|
||||
|
/** |
||||
|
* 核酸记录Id |
||||
|
*/ |
||||
|
@ExcelIgnore |
||||
|
private String icNatId; |
||||
|
/** |
||||
|
* 组织Id |
||||
|
*/ |
||||
|
@ExcelIgnore |
||||
|
private String agencyId; |
||||
|
/** |
||||
|
* 居民端小程序的用户id、数字社区的icResiUserId、其他情况无值 |
||||
|
*/ |
||||
|
@ExcelIgnore |
||||
|
private String userId; |
||||
|
/** |
||||
|
* 居民端小程序的人:resi;数字社区的居民:icresi;未关联上的:other |
||||
|
*/ |
||||
|
@ExcelIgnore |
||||
|
private String userType; |
||||
|
|
||||
|
/** |
||||
|
* 姓名 |
||||
|
*/ |
||||
|
@ColumnWidth(20) |
||||
|
@ExcelProperty("姓名") |
||||
|
private String name; |
||||
|
|
||||
|
/** |
||||
|
* 手机号 |
||||
|
*/ |
||||
|
@ColumnWidth(20) |
||||
|
@ExcelProperty("手机号") |
||||
|
private String mobile; |
||||
|
|
||||
|
/** |
||||
|
* 身份证号 |
||||
|
*/ |
||||
|
@ColumnWidth(25) |
||||
|
@ExcelProperty("身份证号") |
||||
|
private String idCard; |
||||
|
|
||||
|
/** |
||||
|
* 检测时间,yyyy-MM-dd HH:mm |
||||
|
*/ |
||||
|
@JsonFormat(pattern = "yyyy-MM-dd HH:mm", timezone = "GMT+8") |
||||
|
@ColumnWidth(25) |
||||
|
@ExcelProperty("检测时间") |
||||
|
private Date natTime; |
||||
|
|
||||
|
/** |
||||
|
* 检测结果 |
||||
|
*/ |
||||
|
@ColumnWidth(20) |
||||
|
@ExcelProperty("检测结果") |
||||
|
private String natResult; |
||||
|
|
||||
|
/** |
||||
|
* 检测地点 |
||||
|
*/ |
||||
|
@ColumnWidth(30) |
||||
|
@ExcelProperty("检测地点") |
||||
|
private String natAddress; |
||||
|
|
||||
|
|
||||
|
} |
||||
@ -0,0 +1,67 @@ |
|||||
|
package com.epmet.dto.result; |
||||
|
|
||||
|
import com.epmet.commons.tools.constant.NumConstant; |
||||
|
import lombok.Data; |
||||
|
|
||||
|
import java.io.Serializable; |
||||
|
|
||||
|
/** |
||||
|
* @Author zxc |
||||
|
* @DateTime 2022/3/28 14:14 |
||||
|
* @DESC |
||||
|
*/ |
||||
|
@Data |
||||
|
public class VaccinationListResultDTO implements Serializable { |
||||
|
|
||||
|
private static final long serialVersionUID = -4368151917259903449L; |
||||
|
|
||||
|
/** |
||||
|
* 排序 |
||||
|
*/ |
||||
|
private Integer sort; |
||||
|
|
||||
|
/** |
||||
|
* 接种针次 |
||||
|
*/ |
||||
|
private Integer vaccinationCount; |
||||
|
|
||||
|
/** |
||||
|
* 姓名 |
||||
|
*/ |
||||
|
private String name; |
||||
|
|
||||
|
/** |
||||
|
* 电话 |
||||
|
*/ |
||||
|
private String mobile; |
||||
|
|
||||
|
/** |
||||
|
* 身份证 |
||||
|
*/ |
||||
|
private String idCard; |
||||
|
|
||||
|
/** |
||||
|
* 备注 |
||||
|
*/ |
||||
|
private String remark; |
||||
|
|
||||
|
/** |
||||
|
* 原因 |
||||
|
*/ |
||||
|
private String reason; |
||||
|
|
||||
|
/** |
||||
|
* 最后一次通知时间 |
||||
|
*/ |
||||
|
private String lastInformTime; |
||||
|
|
||||
|
public VaccinationListResultDTO() { |
||||
|
this.vaccinationCount = NumConstant.ZERO; |
||||
|
this.name = ""; |
||||
|
this.mobile = ""; |
||||
|
this.idCard = ""; |
||||
|
this.remark = ""; |
||||
|
this.lastInformTime = ""; |
||||
|
this.reason = ""; |
||||
|
} |
||||
|
} |
||||
@ -0,0 +1,134 @@ |
|||||
|
package com.epmet.controller; |
||||
|
|
||||
|
import com.epmet.commons.tools.annotation.LoginUser; |
||||
|
import com.epmet.commons.tools.aop.NoRepeatSubmit; |
||||
|
import com.epmet.commons.tools.constant.NumConstant; |
||||
|
import com.epmet.commons.tools.dto.form.PageFormDTO; |
||||
|
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; |
||||
|
import com.epmet.dto.IcEpidemicSpecialAttentionDTO; |
||||
|
import com.epmet.dto.form.*; |
||||
|
import com.epmet.excel.NatExportExcel; |
||||
|
import com.epmet.excel.UserResiRegisterVisitExcel; |
||||
|
import com.epmet.excel.VaccinationExportExcel; |
||||
|
import com.epmet.service.IcEpidemicSpecialAttentionService; |
||||
|
import org.springframework.beans.factory.annotation.Autowired; |
||||
|
import org.springframework.web.bind.annotation.*; |
||||
|
import org.springframework.web.multipart.MultipartFile; |
||||
|
|
||||
|
import javax.servlet.http.HttpServletResponse; |
||||
|
|
||||
|
|
||||
|
/** |
||||
|
* 疫情特别关注 |
||||
|
* |
||||
|
* @author generator generator@elink-cn.com |
||||
|
* @since v1.0.0 2022-03-28 |
||||
|
*/ |
||||
|
@RestController |
||||
|
@RequestMapping("icEpidemicSpecialAttention") |
||||
|
public class IcEpidemicSpecialAttentionController { |
||||
|
|
||||
|
@Autowired |
||||
|
private IcEpidemicSpecialAttentionService icEpidemicSpecialAttentionService; |
||||
|
|
||||
|
/** |
||||
|
* Desc: 【疫苗接种关注名单,疫苗接种关注名单】列表 |
||||
|
* @param formDTO |
||||
|
* @author zxc |
||||
|
* @date 2022/3/28 10:29 |
||||
|
*/ |
||||
|
@PostMapping("list") |
||||
|
public Result<PageData> vaccinationList(@RequestBody VaccinationListFormDTO formDTO, @LoginUser TokenDto tokenDto){ |
||||
|
ValidatorUtils.validateEntity(formDTO, PageFormDTO.AddUserInternalGroup.class, VaccinationListFormDTO.VaccinationListForm.class); |
||||
|
formDTO.setCustomerId(tokenDto.getCustomerId()); |
||||
|
formDTO.setUserId(tokenDto.getUserId()); |
||||
|
return new Result<PageData>().ok(icEpidemicSpecialAttentionService.vaccinationList(formDTO)); |
||||
|
} |
||||
|
|
||||
|
/** |
||||
|
* Desc:【疫苗接种关注名单,核酸检测关注名单】新增 |
||||
|
* @param formDTO |
||||
|
* @param tokenDto |
||||
|
* @author zxc |
||||
|
* @date 2022/3/28 13:35 |
||||
|
*/ |
||||
|
@PostMapping("vaccination-add") |
||||
|
@NoRepeatSubmit |
||||
|
public Result vaccinationAdd(@RequestBody VaccinationAddFormDTO formDTO,@LoginUser TokenDto tokenDto){ |
||||
|
ValidatorUtils.validateEntity(formDTO, IcEpidemicSpecialAttentionDTO.IcEpidemicSpecialAttentionAdd.class); |
||||
|
formDTO.setCustomerId(tokenDto.getCustomerId()); |
||||
|
formDTO.setUserId(tokenDto.getUserId()); |
||||
|
icEpidemicSpecialAttentionService.vaccinationAdd(formDTO); |
||||
|
return new Result(); |
||||
|
} |
||||
|
|
||||
|
/** |
||||
|
* Desc:【疫苗接种关注名单,核酸检测关注名单】修改 |
||||
|
* @param formDTO |
||||
|
* @author zxc |
||||
|
* @date 2022/3/28 13:45 |
||||
|
*/ |
||||
|
@PostMapping("vaccination-update") |
||||
|
@NoRepeatSubmit |
||||
|
public Result vaccinationUpdate(@RequestBody IcEpidemicSpecialAttentionDTO formDTO){ |
||||
|
ValidatorUtils.validateEntity(formDTO, IcEpidemicSpecialAttentionDTO.IcEpidemicSpecialAttentionUpdate.class); |
||||
|
icEpidemicSpecialAttentionService.vaccinationUpdate(formDTO); |
||||
|
return new Result(); |
||||
|
} |
||||
|
|
||||
|
/** |
||||
|
* Desc: 取消关注 |
||||
|
* @param formDTO |
||||
|
* @author zxc |
||||
|
* @date 2022/3/28 13:51 |
||||
|
*/ |
||||
|
@PostMapping("cancel-attention") |
||||
|
@NoRepeatSubmit |
||||
|
public Result cancelAttention(@RequestBody CancelAttentionPackageFormDTO formDTO){ |
||||
|
ValidatorUtils.validateEntity(formDTO, CancelAttentionPackageFormDTO.CancelAttentionPackageForm.class); |
||||
|
icEpidemicSpecialAttentionService.cancelAttention(formDTO); |
||||
|
return new Result(); |
||||
|
} |
||||
|
|
||||
|
/** |
||||
|
* Desc: 【疫苗接种关注名单,核酸检测关注名单】导入 |
||||
|
* @param |
||||
|
* @author zxc |
||||
|
* @date 2022/3/28 13:40 |
||||
|
*/ |
||||
|
@PostMapping("vaccination-import") |
||||
|
public Result vaccinationImport(@LoginUser TokenDto tokenDTO, @RequestParam("file") MultipartFile file,@RequestParam("attentionType")Integer attentionType){ |
||||
|
|
||||
|
return new Result(); |
||||
|
} |
||||
|
|
||||
|
/** |
||||
|
* Desc: 【疫苗接种关注名单,核酸检测关注名单】导出 |
||||
|
* @param response |
||||
|
* @param formDTO |
||||
|
* @param tokenDto |
||||
|
* @author zxc |
||||
|
* @date 2022/3/28 13:57 |
||||
|
*/ |
||||
|
@PostMapping("vaccination-export") |
||||
|
public void vaccinationExport(HttpServletResponse response,@RequestBody VaccinationListFormDTO formDTO, @LoginUser TokenDto tokenDto) throws Exception { |
||||
|
ValidatorUtils.validateEntity(formDTO, PageFormDTO.AddUserInternalGroup.class); |
||||
|
formDTO.setCustomerId(tokenDto.getCustomerId()); |
||||
|
formDTO.setUserId(tokenDto.getUserId()); |
||||
|
formDTO.setPage(false); |
||||
|
PageData pageData = icEpidemicSpecialAttentionService.vaccinationList(formDTO); |
||||
|
// 关注类型,核酸检测:2,疫苗接种:1
|
||||
|
if (formDTO.getAttentionType().equals(NumConstant.ONE)){ |
||||
|
ExcelUtils.exportExcelToTarget(response, null, pageData.getList(), VaccinationExportExcel.class); |
||||
|
}else { |
||||
|
ExcelUtils.exportExcelToTarget(response, null, pageData.getList(), NatExportExcel.class); |
||||
|
} |
||||
|
|
||||
|
} |
||||
|
|
||||
|
} |
||||
@ -0,0 +1,72 @@ |
|||||
|
package com.epmet.controller; |
||||
|
|
||||
|
import com.epmet.commons.tools.aop.NoRepeatSubmit; |
||||
|
import com.epmet.commons.tools.page.PageData; |
||||
|
import com.epmet.commons.tools.utils.Result; |
||||
|
import com.epmet.commons.tools.validator.AssertUtils; |
||||
|
import com.epmet.commons.tools.validator.ValidatorUtils; |
||||
|
import com.epmet.commons.tools.validator.group.AddGroup; |
||||
|
import com.epmet.commons.tools.validator.group.DefaultGroup; |
||||
|
import com.epmet.commons.tools.validator.group.UpdateGroup; |
||||
|
import com.epmet.dto.IcFollowUpRecordDTO; |
||||
|
import com.epmet.service.IcFollowUpRecordService; |
||||
|
import org.springframework.beans.factory.annotation.Autowired; |
||||
|
import org.springframework.web.bind.annotation.*; |
||||
|
|
||||
|
import java.util.Map; |
||||
|
|
||||
|
|
||||
|
/** |
||||
|
* 随访记录表 |
||||
|
* |
||||
|
* @author generator generator@elink-cn.com |
||||
|
* @since v1.0.0 2022-03-25 |
||||
|
*/ |
||||
|
@RestController |
||||
|
@RequestMapping("followup") |
||||
|
public class IcFollowUpRecordController { |
||||
|
|
||||
|
@Autowired |
||||
|
private IcFollowUpRecordService icFollowUpRecordService; |
||||
|
|
||||
|
@RequestMapping("page") |
||||
|
public Result<PageData<IcFollowUpRecordDTO>> page(@RequestParam Map<String, Object> params){ |
||||
|
PageData<IcFollowUpRecordDTO> page = icFollowUpRecordService.page(params); |
||||
|
return new Result<PageData<IcFollowUpRecordDTO>>().ok(page); |
||||
|
} |
||||
|
|
||||
|
@RequestMapping(value = "{id}",method = {RequestMethod.POST,RequestMethod.GET}) |
||||
|
public Result<IcFollowUpRecordDTO> get(@PathVariable("id") String id){ |
||||
|
IcFollowUpRecordDTO data = icFollowUpRecordService.get(id); |
||||
|
return new Result<IcFollowUpRecordDTO>().ok(data); |
||||
|
} |
||||
|
|
||||
|
@NoRepeatSubmit |
||||
|
@PostMapping("save") |
||||
|
public Result save(@RequestBody IcFollowUpRecordDTO dto){ |
||||
|
//效验数据
|
||||
|
ValidatorUtils.validateEntity(dto, AddGroup.class, DefaultGroup.class); |
||||
|
icFollowUpRecordService.save(dto); |
||||
|
return new Result(); |
||||
|
} |
||||
|
|
||||
|
@NoRepeatSubmit |
||||
|
@PostMapping("update") |
||||
|
public Result update(@RequestBody IcFollowUpRecordDTO dto){ |
||||
|
//效验数据
|
||||
|
ValidatorUtils.validateEntity(dto, UpdateGroup.class, DefaultGroup.class); |
||||
|
icFollowUpRecordService.update(dto); |
||||
|
return new Result(); |
||||
|
} |
||||
|
|
||||
|
@PostMapping("delete") |
||||
|
public Result delete(@RequestBody String[] ids){ |
||||
|
//效验数据
|
||||
|
AssertUtils.isArrayEmpty(ids, "id"); |
||||
|
icFollowUpRecordService.delete(ids); |
||||
|
return new Result(); |
||||
|
} |
||||
|
|
||||
|
|
||||
|
|
||||
|
} |
||||
@ -0,0 +1,281 @@ |
|||||
|
package com.epmet.controller; |
||||
|
|
||||
|
import com.alibaba.excel.EasyExcel; |
||||
|
import com.alibaba.excel.ExcelWriter; |
||||
|
import com.alibaba.excel.write.metadata.WriteSheet; |
||||
|
import com.epmet.commons.tools.annotation.LoginUser; |
||||
|
import com.epmet.commons.tools.aop.NoRepeatSubmit; |
||||
|
import com.epmet.commons.tools.constant.AppClientConstant; |
||||
|
import com.epmet.commons.tools.constant.ServiceConstant; |
||||
|
import com.epmet.commons.tools.exception.EpmetErrorCode; |
||||
|
import com.epmet.commons.tools.exception.EpmetException; |
||||
|
import com.epmet.commons.tools.exception.ExceptionUtils; |
||||
|
import com.epmet.commons.tools.feign.ResultDataResolver; |
||||
|
import com.epmet.commons.tools.constant.NumConstant; |
||||
|
import com.epmet.commons.tools.page.PageData; |
||||
|
import com.epmet.commons.tools.security.dto.TokenDto; |
||||
|
import com.epmet.commons.tools.utils.EpmetRequestHolder; |
||||
|
import com.epmet.commons.tools.utils.FileUtils; |
||||
|
import com.epmet.commons.tools.utils.ExcelUtils; |
||||
|
import com.epmet.commons.tools.utils.Result; |
||||
|
import com.epmet.commons.tools.validator.ValidatorUtils; |
||||
|
import com.epmet.commons.tools.validator.group.AddGroup; |
||||
|
import com.epmet.commons.tools.validator.group.DefaultGroup; |
||||
|
import com.epmet.commons.tools.validator.group.UpdateGroup; |
||||
|
import com.epmet.constants.ImportTaskConstants; |
||||
|
import com.epmet.dto.IcNatDTO; |
||||
|
import com.epmet.dto.form.AddIcNatFormDTO; |
||||
|
import com.epmet.dto.form.ImportTaskCommonFormDTO; |
||||
|
import com.epmet.dto.form.MyNatListFormDTO; |
||||
|
import com.epmet.dto.result.ImportTaskCommonResultDTO; |
||||
|
import com.epmet.dto.result.MyNatListResultDTO; |
||||
|
import com.epmet.dto.result.NatListResultDTO; |
||||
|
import com.epmet.feign.EpmetCommonServiceOpenFeignClient; |
||||
|
import com.epmet.service.IcNatService; |
||||
|
import lombok.extern.slf4j.Slf4j; |
||||
|
import org.apache.commons.io.IOUtils; |
||||
|
import lombok.extern.slf4j.Slf4j; |
||||
|
import org.apache.commons.collections4.CollectionUtils; |
||||
|
import org.apache.commons.io.IOUtils; |
||||
|
import org.springframework.beans.factory.annotation.Autowired; |
||||
|
import org.springframework.http.HttpHeaders; |
||||
|
import org.springframework.web.bind.annotation.*; |
||||
|
import org.springframework.web.multipart.MultipartFile; |
||||
|
|
||||
|
import java.io.*; |
||||
|
import java.nio.file.Files; |
||||
|
import java.nio.file.Path; |
||||
|
import javax.servlet.ServletOutputStream; |
||||
|
import javax.servlet.http.HttpServletResponse; |
||||
|
import java.io.IOException; |
||||
|
import java.io.InputStream; |
||||
|
import java.net.URLEncoder; |
||||
|
import java.util.List; |
||||
|
import java.util.Map; |
||||
|
import java.util.UUID; |
||||
|
|
||||
|
|
||||
|
/** |
||||
|
* 核酸上报记录 |
||||
|
* |
||||
|
* @author generator generator@elink-cn.com |
||||
|
* @since v1.0.0 2022-03-25 |
||||
|
*/ |
||||
|
@Slf4j |
||||
|
@RestController |
||||
|
@RequestMapping("icNat") |
||||
|
public class IcNatController implements ResultDataResolver { |
||||
|
|
||||
|
@Autowired |
||||
|
private IcNatService icNucleinService; |
||||
|
|
||||
|
@Autowired |
||||
|
private EpmetCommonServiceOpenFeignClient commonServiceOpenFeignClient; |
||||
|
|
||||
|
|
||||
|
/** |
||||
|
* @Author sun |
||||
|
* @Description 核酸检测-上报核酸记录 |
||||
|
**/ |
||||
|
//@NoRepeatSubmit
|
||||
|
@PostMapping("add") |
||||
|
public Result add(@LoginUser TokenDto tokenDto, @RequestBody AddIcNatFormDTO formDTO) { |
||||
|
ValidatorUtils.validateEntity(formDTO, AddIcNatFormDTO.Nat.class); |
||||
|
formDTO.setCustomerId(tokenDto.getCustomerId()); |
||||
|
icNucleinService.add(formDTO); |
||||
|
return new Result(); |
||||
|
} |
||||
|
|
||||
|
/** |
||||
|
* @Author sun |
||||
|
* @Description 核酸检测-居民端我的上报 |
||||
|
**/ |
||||
|
@NoRepeatSubmit |
||||
|
@PostMapping("mynatlist") |
||||
|
public Result<List<MyNatListResultDTO>> myNatList(@LoginUser TokenDto tokenDto, @RequestBody MyNatListFormDTO formDTO) { |
||||
|
ValidatorUtils.validateEntity(formDTO, MyNatListFormDTO.MyNat.class); |
||||
|
formDTO.setCustomerId(tokenDto.getCustomerId()); |
||||
|
return new Result<List<MyNatListResultDTO>>().ok(icNucleinService.myNatList(formDTO)); |
||||
|
} |
||||
|
|
||||
|
/** |
||||
|
* @Author sun |
||||
|
* @Description 【核酸】核酸检测信息列表 |
||||
|
**/ |
||||
|
@NoRepeatSubmit |
||||
|
@PostMapping("natlist") |
||||
|
public Result<PageData<NatListResultDTO>> natList(@LoginUser TokenDto tokenDto, @RequestBody MyNatListFormDTO formDTO) { |
||||
|
formDTO.setCustomerId(tokenDto.getCustomerId()); |
||||
|
formDTO.setUserId(tokenDto.getUserId()); |
||||
|
return new Result<PageData<NatListResultDTO>>().ok(icNucleinService.natList(formDTO)); |
||||
|
} |
||||
|
|
||||
|
/** |
||||
|
* @Author sun |
||||
|
* @Description 【核酸】核酸检测信息详情 |
||||
|
**/ |
||||
|
@NoRepeatSubmit |
||||
|
@PostMapping("detail") |
||||
|
public Result<IcNatDTO> detail(@RequestBody MyNatListFormDTO formDTO) { |
||||
|
ValidatorUtils.validateEntity(formDTO, MyNatListFormDTO.Detail.class); |
||||
|
return new Result<IcNatDTO>().ok(icNucleinService.detail(formDTO)); |
||||
|
} |
||||
|
|
||||
|
/** |
||||
|
* @Author sun |
||||
|
* @Description 【核酸】核酸检测信息修改 |
||||
|
**/ |
||||
|
@NoRepeatSubmit |
||||
|
@PostMapping("edit") |
||||
|
public Result edit(@LoginUser TokenDto tokenDto, @RequestBody AddIcNatFormDTO formDTO) { |
||||
|
formDTO.setCustomerId(tokenDto.getCustomerId()); |
||||
|
icNucleinService.edit(formDTO); |
||||
|
return new Result(); |
||||
|
} |
||||
|
|
||||
|
/** |
||||
|
* @Author sun |
||||
|
* @Description 【核酸】核酸检测信息删除/取消同步 |
||||
|
**/ |
||||
|
@NoRepeatSubmit |
||||
|
@PostMapping("del") |
||||
|
public Result del(@RequestBody MyNatListFormDTO formDTO) { |
||||
|
ValidatorUtils.validateEntity(formDTO, MyNatListFormDTO.Del.class); |
||||
|
icNucleinService.del(formDTO); |
||||
|
return new Result<>(); |
||||
|
} |
||||
|
|
||||
|
/** |
||||
|
* @Author sun |
||||
|
* @Description 【核酸】核酸检测信息同步 |
||||
|
**/ |
||||
|
@NoRepeatSubmit |
||||
|
@PostMapping("synchro") |
||||
|
public Result synchro(@LoginUser TokenDto tokenDto, @RequestBody MyNatListFormDTO formDTO) { |
||||
|
ValidatorUtils.validateEntity(formDTO, MyNatListFormDTO.Synchro.class); |
||||
|
formDTO.setCustomerId(tokenDto.getCustomerId()); |
||||
|
formDTO.setUserId(tokenDto.getUserId()); |
||||
|
icNucleinService.synchro(formDTO); |
||||
|
return new Result(); |
||||
|
} |
||||
|
|
||||
|
/** |
||||
|
* 导入excel |
||||
|
* @return |
||||
|
*/ |
||||
|
@PostMapping("import") |
||||
|
public Result importExcel(MultipartFile file) { |
||||
|
String userId = EpmetRequestHolder.getHeader(AppClientConstant.USER_ID); |
||||
|
|
||||
|
// 1.暂存文件
|
||||
|
String originalFilename = file.getOriginalFilename(); |
||||
|
String extName = originalFilename.substring(originalFilename.lastIndexOf(".")); |
||||
|
|
||||
|
Path fileSavePath; |
||||
|
try { |
||||
|
Path importPath = FileUtils.getAndCreateDirUnderEpmetFilesDir("ic_nat", "import"); |
||||
|
fileSavePath = importPath.resolve(UUID.randomUUID().toString().concat(extName)); |
||||
|
} catch (IOException e) { |
||||
|
String errorMsg = ExceptionUtils.getErrorStackTrace(e); |
||||
|
log.error("【核酸检测导入】创建临时存储文件失败:{}", errorMsg); |
||||
|
throw new EpmetException(EpmetErrorCode.EPMET_COMMON_OPERATION_FAIL.getCode(), "文件上传失败", "文件上传失败"); |
||||
|
} |
||||
|
|
||||
|
InputStream is = null; |
||||
|
FileOutputStream os = null; |
||||
|
|
||||
|
try { |
||||
|
is = file.getInputStream(); |
||||
|
os = new FileOutputStream(fileSavePath.toString()); |
||||
|
IOUtils.copy(is, os); |
||||
|
} catch (Exception e) { |
||||
|
e.printStackTrace(); |
||||
|
} finally { |
||||
|
org.apache.poi.util.IOUtils.closeQuietly(is); |
||||
|
org.apache.poi.util.IOUtils.closeQuietly(os); |
||||
|
} |
||||
|
|
||||
|
// 2.生成导入任务记录
|
||||
|
ImportTaskCommonFormDTO importTaskForm = new ImportTaskCommonFormDTO(); |
||||
|
importTaskForm.setOperatorId(userId); |
||||
|
importTaskForm.setBizType(ImportTaskConstants.BIZ_TYPE_IC_NAT); |
||||
|
importTaskForm.setOriginFileName(originalFilename); |
||||
|
|
||||
|
ImportTaskCommonResultDTO rstData = getResultDataOrThrowsException(commonServiceOpenFeignClient.createImportTask(importTaskForm), |
||||
|
ServiceConstant.EPMET_COMMON_SERVICE, |
||||
|
EpmetErrorCode.EPMET_COMMON_OPERATION_FAIL.getCode(), |
||||
|
"excel导入核酸检测信息错误", |
||||
|
"导入居民核酸检测信息失败"); |
||||
|
|
||||
|
// 3.执行导入
|
||||
|
icNucleinService.execAsyncExcelImport(fileSavePath, rstData.getTaskId()); |
||||
|
|
||||
|
return new Result(); |
||||
|
} |
||||
|
|
||||
|
/** |
||||
|
* @Author sun |
||||
|
* @Description 【核酸】核酸检测信息下载模板 |
||||
|
**/ |
||||
|
@RequestMapping(value = "import-template-download", method = {RequestMethod.GET, RequestMethod.POST}) |
||||
|
public void downloadTemplate(HttpServletResponse response) throws IOException { |
||||
|
response.setCharacterEncoding("UTF-8"); |
||||
|
response.addHeader(HttpHeaders.ACCESS_CONTROL_EXPOSE_HEADERS, "Content-Disposition"); |
||||
|
//response.setHeader(HttpHeaders.CONTENT_TYPE, "application/vnd.ms-excel");
|
||||
|
response.setHeader(HttpHeaders.CONTENT_TYPE, "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"); |
||||
|
response.setHeader(HttpHeaders.CONTENT_DISPOSITION, "attachment;filename=" + URLEncoder.encode("社区自组织导入模板", "UTF-8") + ".xlsx"); |
||||
|
|
||||
|
InputStream is = this.getClass().getClassLoader().getResourceAsStream("excel/ic_nat.xlsx"); |
||||
|
try { |
||||
|
ServletOutputStream os = response.getOutputStream(); |
||||
|
IOUtils.copy(is, os); |
||||
|
} finally { |
||||
|
if (is != null) { |
||||
|
is.close(); |
||||
|
} |
||||
|
} |
||||
|
|
||||
|
} |
||||
|
|
||||
|
/** |
||||
|
* @Author sun |
||||
|
* @Description 【核酸】核酸检测信息列表 |
||||
|
**/ |
||||
|
@NoRepeatSubmit |
||||
|
@PostMapping("export") |
||||
|
public void export(@LoginUser TokenDto tokenDto, @RequestBody MyNatListFormDTO formDTO, HttpServletResponse response) { |
||||
|
formDTO.setCustomerId(tokenDto.getCustomerId()); |
||||
|
formDTO.setUserId(tokenDto.getUserId()); |
||||
|
|
||||
|
//formDTO.setCustomerId("45687aa479955f9d06204d415238f7cc");
|
||||
|
//formDTO.setUserId("73ae6280e46a6653a5605d51d5462725");
|
||||
|
|
||||
|
formDTO.setPage(false); |
||||
|
|
||||
|
ExcelWriter excelWriter = null; |
||||
|
formDTO.setPageSize(NumConstant.TEN_THOUSAND); |
||||
|
int pageNo = formDTO.getPageNo(); |
||||
|
try { |
||||
|
// 这里 需要指定写用哪个class去写
|
||||
|
String fileName = "核酸检测信息.xlsx"; |
||||
|
excelWriter = EasyExcel.write(ExcelUtils.getOutputStreamForExcel(fileName, response),NatListResultDTO.class).build(); |
||||
|
WriteSheet writeSheet = EasyExcel.writerSheet("Sheet1").build(); |
||||
|
PageData<NatListResultDTO> data = null; |
||||
|
do { |
||||
|
data = icNucleinService.natList(formDTO); |
||||
|
formDTO.setPageNo(++pageNo); |
||||
|
excelWriter.write(data.getList(), writeSheet); |
||||
|
} while (CollectionUtils.isNotEmpty(data.getList()) && data.getList().size()==formDTO.getPageSize()); |
||||
|
|
||||
|
}catch (Exception e){ |
||||
|
log.error("export exception", e); |
||||
|
}finally { |
||||
|
// 千万别忘记finish 会帮忙关闭流
|
||||
|
if (excelWriter != null) { |
||||
|
excelWriter.finish(); |
||||
|
} |
||||
|
} |
||||
|
} |
||||
|
|
||||
|
|
||||
|
} |
||||
@ -0,0 +1,81 @@ |
|||||
|
package com.epmet.controller; |
||||
|
|
||||
|
import com.epmet.commons.tools.annotation.LoginUser; |
||||
|
import com.epmet.commons.tools.aop.NoRepeatSubmit; |
||||
|
import com.epmet.commons.tools.page.PageData; |
||||
|
import com.epmet.commons.tools.security.dto.TokenDto; |
||||
|
import com.epmet.commons.tools.utils.Result; |
||||
|
import com.epmet.commons.tools.validator.AssertUtils; |
||||
|
import com.epmet.commons.tools.validator.ValidatorUtils; |
||||
|
import com.epmet.commons.tools.validator.group.AddGroup; |
||||
|
import com.epmet.commons.tools.validator.group.DefaultGroup; |
||||
|
import com.epmet.commons.tools.validator.group.UpdateGroup; |
||||
|
import com.epmet.dto.IcNoticeDTO; |
||||
|
import com.epmet.dto.form.IcNoticeFormDTO; |
||||
|
import com.epmet.dto.form.SendNoticeFormDTO; |
||||
|
import com.epmet.service.IcNoticeService; |
||||
|
import org.springframework.beans.factory.annotation.Autowired; |
||||
|
import org.springframework.web.bind.annotation.*; |
||||
|
|
||||
|
|
||||
|
/** |
||||
|
* 防疫通知 |
||||
|
* |
||||
|
* @author generator generator@elink-cn.com |
||||
|
* @since v1.0.0 2022-03-28 |
||||
|
*/ |
||||
|
@RestController |
||||
|
@RequestMapping("icNotice") |
||||
|
public class IcNoticeController { |
||||
|
|
||||
|
@Autowired |
||||
|
private IcNoticeService icNoticeService; |
||||
|
|
||||
|
@RequestMapping("page") |
||||
|
public Result<PageData<IcNoticeDTO>> page(@LoginUser TokenDto tokenDto, @RequestBody IcNoticeFormDTO formDTO){ |
||||
|
formDTO.setCustomerId(tokenDto.getCustomerId()); |
||||
|
PageData<IcNoticeDTO> page = icNoticeService.page(formDTO); |
||||
|
return new Result<PageData<IcNoticeDTO>>().ok(page); |
||||
|
} |
||||
|
|
||||
|
@RequestMapping(value = "{id}",method = {RequestMethod.POST,RequestMethod.GET}) |
||||
|
public Result<IcNoticeDTO> get(@PathVariable("id") String id){ |
||||
|
IcNoticeDTO data = icNoticeService.get(id); |
||||
|
return new Result<IcNoticeDTO>().ok(data); |
||||
|
} |
||||
|
|
||||
|
@NoRepeatSubmit |
||||
|
@PostMapping("save") |
||||
|
public Result save(@RequestBody IcNoticeDTO dto){ |
||||
|
//效验数据
|
||||
|
ValidatorUtils.validateEntity(dto, AddGroup.class, DefaultGroup.class); |
||||
|
icNoticeService.save(dto); |
||||
|
return new Result(); |
||||
|
} |
||||
|
|
||||
|
@NoRepeatSubmit |
||||
|
@PostMapping("update") |
||||
|
public Result update(@RequestBody IcNoticeDTO dto){ |
||||
|
//效验数据
|
||||
|
ValidatorUtils.validateEntity(dto, UpdateGroup.class, DefaultGroup.class); |
||||
|
icNoticeService.update(dto); |
||||
|
return new Result(); |
||||
|
} |
||||
|
|
||||
|
@PostMapping("delete") |
||||
|
public Result delete(@RequestBody String[] ids){ |
||||
|
//效验数据
|
||||
|
AssertUtils.isArrayEmpty(ids, "id"); |
||||
|
icNoticeService.delete(ids); |
||||
|
return new Result(); |
||||
|
} |
||||
|
|
||||
|
@PostMapping("sendNotice") |
||||
|
public Result sendNotice(@LoginUser TokenDto tokenDto, @RequestBody SendNoticeFormDTO formDTO) { |
||||
|
ValidatorUtils.validateEntity(formDTO, DefaultGroup.class); |
||||
|
formDTO.setCustomerId(tokenDto.getCustomerId()); |
||||
|
icNoticeService.sendNotice(formDTO); |
||||
|
return new Result(); |
||||
|
} |
||||
|
|
||||
|
} |
||||
@ -0,0 +1,73 @@ |
|||||
|
package com.epmet.controller; |
||||
|
|
||||
|
import com.epmet.commons.tools.aop.NoRepeatSubmit; |
||||
|
import com.epmet.commons.tools.page.PageData; |
||||
|
import com.epmet.commons.tools.utils.Result; |
||||
|
import com.epmet.commons.tools.validator.AssertUtils; |
||||
|
import com.epmet.commons.tools.validator.ValidatorUtils; |
||||
|
import com.epmet.commons.tools.validator.group.AddGroup; |
||||
|
import com.epmet.commons.tools.validator.group.UpdateGroup; |
||||
|
import com.epmet.commons.tools.validator.group.DefaultGroup; |
||||
|
import com.epmet.dto.IcResiVaccineDTO; |
||||
|
import com.epmet.service.IcResiVaccineService; |
||||
|
import org.springframework.beans.factory.annotation.Autowired; |
||||
|
import org.springframework.web.bind.annotation.*; |
||||
|
|
||||
|
import java.util.List; |
||||
|
import java.util.Map; |
||||
|
|
||||
|
|
||||
|
/** |
||||
|
* 居民疫苗情况 |
||||
|
* |
||||
|
* @author generator generator@elink-cn.com |
||||
|
* @since v1.0.0 2022-03-28 |
||||
|
*/ |
||||
|
@RestController |
||||
|
@RequestMapping("icResiVaccine") |
||||
|
public class IcResiVaccineController { |
||||
|
|
||||
|
@Autowired |
||||
|
private IcResiVaccineService icResiVaccineService; |
||||
|
|
||||
|
@RequestMapping("page") |
||||
|
public Result<PageData<IcResiVaccineDTO>> page(@RequestParam Map<String, Object> params){ |
||||
|
PageData<IcResiVaccineDTO> page = icResiVaccineService.page(params); |
||||
|
return new Result<PageData<IcResiVaccineDTO>>().ok(page); |
||||
|
} |
||||
|
|
||||
|
@RequestMapping(value = "{id}",method = {RequestMethod.POST,RequestMethod.GET}) |
||||
|
public Result<IcResiVaccineDTO> get(@PathVariable("id") String id){ |
||||
|
IcResiVaccineDTO data = icResiVaccineService.get(id); |
||||
|
return new Result<IcResiVaccineDTO>().ok(data); |
||||
|
} |
||||
|
|
||||
|
@NoRepeatSubmit |
||||
|
@PostMapping("save") |
||||
|
public Result save(@RequestBody IcResiVaccineDTO dto){ |
||||
|
//效验数据
|
||||
|
ValidatorUtils.validateEntity(dto, AddGroup.class, DefaultGroup.class); |
||||
|
icResiVaccineService.save(dto); |
||||
|
return new Result(); |
||||
|
} |
||||
|
|
||||
|
@NoRepeatSubmit |
||||
|
@PostMapping("update") |
||||
|
public Result update(@RequestBody IcResiVaccineDTO dto){ |
||||
|
//效验数据
|
||||
|
ValidatorUtils.validateEntity(dto, UpdateGroup.class, DefaultGroup.class); |
||||
|
icResiVaccineService.update(dto); |
||||
|
return new Result(); |
||||
|
} |
||||
|
|
||||
|
@PostMapping("delete") |
||||
|
public Result delete(@RequestBody String[] ids){ |
||||
|
//效验数据
|
||||
|
AssertUtils.isArrayEmpty(ids, "id"); |
||||
|
icResiVaccineService.delete(ids); |
||||
|
return new Result(); |
||||
|
} |
||||
|
|
||||
|
|
||||
|
|
||||
|
} |
||||
@ -0,0 +1,72 @@ |
|||||
|
package com.epmet.controller; |
||||
|
|
||||
|
import com.epmet.commons.tools.aop.NoRepeatSubmit; |
||||
|
import com.epmet.commons.tools.page.PageData; |
||||
|
import com.epmet.commons.tools.utils.Result; |
||||
|
import com.epmet.commons.tools.validator.AssertUtils; |
||||
|
import com.epmet.commons.tools.validator.ValidatorUtils; |
||||
|
import com.epmet.commons.tools.validator.group.AddGroup; |
||||
|
import com.epmet.commons.tools.validator.group.DefaultGroup; |
||||
|
import com.epmet.commons.tools.validator.group.UpdateGroup; |
||||
|
import com.epmet.dto.IcTripReportRecordDTO; |
||||
|
import com.epmet.service.IcTripReportRecordService; |
||||
|
import org.springframework.beans.factory.annotation.Autowired; |
||||
|
import org.springframework.web.bind.annotation.*; |
||||
|
|
||||
|
import java.util.Map; |
||||
|
|
||||
|
|
||||
|
/** |
||||
|
* 行程上报信息 |
||||
|
* |
||||
|
* @author generator generator@elink-cn.com |
||||
|
* @since v1.0.0 2022-03-25 |
||||
|
*/ |
||||
|
@RestController |
||||
|
@RequestMapping("triprecord") |
||||
|
public class IcTripReportRecordController { |
||||
|
|
||||
|
@Autowired |
||||
|
private IcTripReportRecordService icTripReportRecordService; |
||||
|
|
||||
|
@RequestMapping("page") |
||||
|
public Result<PageData<IcTripReportRecordDTO>> page(@RequestParam Map<String, Object> params){ |
||||
|
PageData<IcTripReportRecordDTO> page = icTripReportRecordService.page(params); |
||||
|
return new Result<PageData<IcTripReportRecordDTO>>().ok(page); |
||||
|
} |
||||
|
|
||||
|
@RequestMapping(value = "{id}",method = {RequestMethod.POST,RequestMethod.GET}) |
||||
|
public Result<IcTripReportRecordDTO> get(@PathVariable("id") String id){ |
||||
|
IcTripReportRecordDTO data = icTripReportRecordService.get(id); |
||||
|
return new Result<IcTripReportRecordDTO>().ok(data); |
||||
|
} |
||||
|
|
||||
|
@NoRepeatSubmit |
||||
|
@PostMapping("save") |
||||
|
public Result save(@RequestBody IcTripReportRecordDTO dto){ |
||||
|
//效验数据
|
||||
|
ValidatorUtils.validateEntity(dto, AddGroup.class, DefaultGroup.class); |
||||
|
icTripReportRecordService.save(dto); |
||||
|
return new Result(); |
||||
|
} |
||||
|
|
||||
|
@NoRepeatSubmit |
||||
|
@PostMapping("update") |
||||
|
public Result update(@RequestBody IcTripReportRecordDTO dto){ |
||||
|
//效验数据
|
||||
|
ValidatorUtils.validateEntity(dto, UpdateGroup.class, DefaultGroup.class); |
||||
|
icTripReportRecordService.update(dto); |
||||
|
return new Result(); |
||||
|
} |
||||
|
|
||||
|
@PostMapping("delete") |
||||
|
public Result delete(@RequestBody String[] ids){ |
||||
|
//效验数据
|
||||
|
AssertUtils.isArrayEmpty(ids, "id"); |
||||
|
icTripReportRecordService.delete(ids); |
||||
|
return new Result(); |
||||
|
} |
||||
|
|
||||
|
|
||||
|
|
||||
|
} |
||||
@ -0,0 +1,55 @@ |
|||||
|
package com.epmet.dao; |
||||
|
|
||||
|
import com.epmet.commons.mybatis.dao.BaseDao; |
||||
|
import com.epmet.dto.form.VaccinationListFormDTO; |
||||
|
import com.epmet.dto.result.VaccinationListResultDTO; |
||||
|
import com.epmet.entity.IcEpidemicSpecialAttentionEntity; |
||||
|
import org.apache.ibatis.annotations.Mapper; |
||||
|
import org.apache.ibatis.annotations.Param; |
||||
|
|
||||
|
import java.util.List; |
||||
|
|
||||
|
/** |
||||
|
* 疫情特别关注 |
||||
|
* |
||||
|
* @author generator generator@elink-cn.com |
||||
|
* @since v1.0.0 2022-03-28 |
||||
|
*/ |
||||
|
@Mapper |
||||
|
public interface IcEpidemicSpecialAttentionDao extends BaseDao<IcEpidemicSpecialAttentionEntity> { |
||||
|
|
||||
|
/** |
||||
|
* Desc: 疫苗接种关注名单 |
||||
|
* @param formDTO |
||||
|
* @author zxc |
||||
|
* @date 2022/3/28 14:19 |
||||
|
*/ |
||||
|
List<VaccinationListResultDTO> vaccinationList(VaccinationListFormDTO formDTO); |
||||
|
|
||||
|
/** |
||||
|
* Desc: 核酸检测关注名单 |
||||
|
* @param formDTO |
||||
|
* @author zxc |
||||
|
* @date 2022/3/28 15:23 |
||||
|
*/ |
||||
|
List<VaccinationListResultDTO> natList(VaccinationListFormDTO formDTO); |
||||
|
|
||||
|
/** |
||||
|
* Desc: 取消关注 |
||||
|
* @param list |
||||
|
* @param attentionType |
||||
|
* @author zxc |
||||
|
* @date 2022/3/28 16:59 |
||||
|
*/ |
||||
|
void cancelAttention(@Param("list")List<String> list,@Param("attentionType")Integer attentionType); |
||||
|
|
||||
|
/** |
||||
|
* Desc: 查询已经存在的关注 |
||||
|
* @param attentionType |
||||
|
* @param list |
||||
|
* @author zxc |
||||
|
* @date 2022/3/28 17:29 |
||||
|
*/ |
||||
|
List<String> getExistList(@Param("attentionType")Integer attentionType,@Param("list")List<String> list); |
||||
|
|
||||
|
} |
||||
@ -0,0 +1,16 @@ |
|||||
|
package com.epmet.dao; |
||||
|
|
||||
|
import com.epmet.commons.mybatis.dao.BaseDao; |
||||
|
import com.epmet.entity.IcFollowUpRecordEntity; |
||||
|
import org.apache.ibatis.annotations.Mapper; |
||||
|
|
||||
|
/** |
||||
|
* 随访记录表 |
||||
|
* |
||||
|
* @author generator generator@elink-cn.com |
||||
|
* @since v1.0.0 2022-03-25 |
||||
|
*/ |
||||
|
@Mapper |
||||
|
public interface IcFollowUpRecordDao extends BaseDao<IcFollowUpRecordEntity> { |
||||
|
|
||||
|
} |
||||
@ -0,0 +1,39 @@ |
|||||
|
package com.epmet.dao; |
||||
|
|
||||
|
import com.epmet.commons.mybatis.dao.BaseDao; |
||||
|
import com.epmet.dto.form.MyNatListFormDTO; |
||||
|
import com.epmet.dto.result.MyNatListResultDTO; |
||||
|
import com.epmet.dto.result.NatListResultDTO; |
||||
|
import com.epmet.entity.IcNatEntity; |
||||
|
import org.apache.ibatis.annotations.Mapper; |
||||
|
import org.apache.ibatis.annotations.Param; |
||||
|
|
||||
|
import java.util.List; |
||||
|
|
||||
|
/** |
||||
|
* 核酸上报记录 |
||||
|
* |
||||
|
* @author generator generator@elink-cn.com |
||||
|
* @since v1.0.0 2022-03-25 |
||||
|
*/ |
||||
|
@Mapper |
||||
|
public interface IcNatDao extends BaseDao<IcNatEntity> { |
||||
|
|
||||
|
/** |
||||
|
* @Author sun |
||||
|
* @Description 核酸检测-按条件查询核酸记录 |
||||
|
**/ |
||||
|
List<MyNatListResultDTO> getMyNatList(MyNatListFormDTO formDTO); |
||||
|
|
||||
|
/** |
||||
|
* @Author sun |
||||
|
* @Description 【核酸】核酸检测信息列表 |
||||
|
**/ |
||||
|
List<NatListResultDTO> getNatList(MyNatListFormDTO formDTO); |
||||
|
|
||||
|
/** |
||||
|
* @Author sun |
||||
|
* @Description 删除/取消同步操作--物理删除业务数据 |
||||
|
**/ |
||||
|
int delById(@Param("icNatId") String icNatId); |
||||
|
} |
||||
@ -0,0 +1,16 @@ |
|||||
|
package com.epmet.dao; |
||||
|
|
||||
|
import com.epmet.commons.mybatis.dao.BaseDao; |
||||
|
import com.epmet.entity.IcNoticeEntity; |
||||
|
import org.apache.ibatis.annotations.Mapper; |
||||
|
|
||||
|
/** |
||||
|
* 防疫通知 |
||||
|
* |
||||
|
* @author generator generator@elink-cn.com |
||||
|
* @since v1.0.0 2022-03-28 |
||||
|
*/ |
||||
|
@Mapper |
||||
|
public interface IcNoticeDao extends BaseDao<IcNoticeEntity> { |
||||
|
|
||||
|
} |
||||
@ -0,0 +1,16 @@ |
|||||
|
package com.epmet.dao; |
||||
|
|
||||
|
import com.epmet.commons.mybatis.dao.BaseDao; |
||||
|
import com.epmet.entity.IcResiVaccineEntity; |
||||
|
import org.apache.ibatis.annotations.Mapper; |
||||
|
|
||||
|
/** |
||||
|
* 居民疫苗情况 |
||||
|
* |
||||
|
* @author generator generator@elink-cn.com |
||||
|
* @since v1.0.0 2022-03-28 |
||||
|
*/ |
||||
|
@Mapper |
||||
|
public interface IcResiVaccineDao extends BaseDao<IcResiVaccineEntity> { |
||||
|
|
||||
|
} |
||||
@ -0,0 +1,16 @@ |
|||||
|
package com.epmet.dao; |
||||
|
|
||||
|
import com.epmet.commons.mybatis.dao.BaseDao; |
||||
|
import com.epmet.entity.IcTripReportRecordEntity; |
||||
|
import org.apache.ibatis.annotations.Mapper; |
||||
|
|
||||
|
/** |
||||
|
* 行程上报信息 |
||||
|
* |
||||
|
* @author generator generator@elink-cn.com |
||||
|
* @since v1.0.0 2022-03-25 |
||||
|
*/ |
||||
|
@Mapper |
||||
|
public interface IcTripReportRecordDao extends BaseDao<IcTripReportRecordEntity> { |
||||
|
|
||||
|
} |
||||
@ -0,0 +1,79 @@ |
|||||
|
package com.epmet.entity; |
||||
|
|
||||
|
import com.baomidou.mybatisplus.annotation.TableName; |
||||
|
|
||||
|
import com.epmet.commons.mybatis.entity.BaseEpmetEntity; |
||||
|
import lombok.Data; |
||||
|
import lombok.EqualsAndHashCode; |
||||
|
|
||||
|
import java.util.Date; |
||||
|
|
||||
|
/** |
||||
|
* 疫情特别关注 |
||||
|
* |
||||
|
* @author generator generator@elink-cn.com |
||||
|
* @since v1.0.0 2022-03-28 |
||||
|
*/ |
||||
|
@Data |
||||
|
@EqualsAndHashCode(callSuper=false) |
||||
|
@TableName("ic_epidemic_special_attention") |
||||
|
public class IcEpidemicSpecialAttentionEntity extends BaseEpmetEntity { |
||||
|
|
||||
|
private static final long serialVersionUID = 1L; |
||||
|
|
||||
|
/** |
||||
|
* 客户ID |
||||
|
*/ |
||||
|
private String customerId; |
||||
|
|
||||
|
/** |
||||
|
* 当前工作人员所属组织ID |
||||
|
*/ |
||||
|
private String orgId; |
||||
|
|
||||
|
/** |
||||
|
* 组织ID上级 |
||||
|
*/ |
||||
|
private String pid; |
||||
|
|
||||
|
/** |
||||
|
* 组织ID所有上级 |
||||
|
*/ |
||||
|
private String pids; |
||||
|
|
||||
|
/** |
||||
|
* 是否关注 1:关注,0:取消关注 |
||||
|
*/ |
||||
|
private Integer isAttention; |
||||
|
|
||||
|
/** |
||||
|
* 关注类型,核酸检测:2,疫苗接种:1 |
||||
|
*/ |
||||
|
private Integer attentionType; |
||||
|
|
||||
|
/** |
||||
|
* 姓名 |
||||
|
*/ |
||||
|
private String name; |
||||
|
|
||||
|
/** |
||||
|
* 手机号 |
||||
|
*/ |
||||
|
private String mobile; |
||||
|
|
||||
|
/** |
||||
|
* 身份证号 |
||||
|
*/ |
||||
|
private String idCard; |
||||
|
|
||||
|
/** |
||||
|
* 原因 |
||||
|
*/ |
||||
|
private String reason; |
||||
|
|
||||
|
/** |
||||
|
* 备注 |
||||
|
*/ |
||||
|
private String remark; |
||||
|
|
||||
|
} |
||||
@ -0,0 +1,59 @@ |
|||||
|
package com.epmet.entity; |
||||
|
|
||||
|
import com.baomidou.mybatisplus.annotation.TableName; |
||||
|
|
||||
|
import com.epmet.commons.mybatis.entity.BaseEpmetEntity; |
||||
|
import lombok.Data; |
||||
|
import lombok.EqualsAndHashCode; |
||||
|
|
||||
|
import java.util.Date; |
||||
|
|
||||
|
/** |
||||
|
* 随访记录表 |
||||
|
* |
||||
|
* @author generator generator@elink-cn.com |
||||
|
* @since v1.0.0 2022-03-25 |
||||
|
*/ |
||||
|
@Data |
||||
|
@EqualsAndHashCode(callSuper=false) |
||||
|
@TableName("ic_follow_up_record") |
||||
|
public class IcFollowUpRecordEntity extends BaseEpmetEntity { |
||||
|
|
||||
|
private static final long serialVersionUID = 1L; |
||||
|
|
||||
|
/** |
||||
|
* 客户Id |
||||
|
*/ |
||||
|
private String customerId; |
||||
|
|
||||
|
/** |
||||
|
* 姓名 |
||||
|
*/ |
||||
|
private String name; |
||||
|
|
||||
|
/** |
||||
|
* 手机号 |
||||
|
*/ |
||||
|
private String mobile; |
||||
|
|
||||
|
/** |
||||
|
* 身份证号 |
||||
|
*/ |
||||
|
private String idCard; |
||||
|
|
||||
|
/** |
||||
|
* 0行程上报,1疫苗接种,2核酸检测 |
||||
|
*/ |
||||
|
private String origin; |
||||
|
|
||||
|
/** |
||||
|
* 随访时间 |
||||
|
*/ |
||||
|
private Date visitTime; |
||||
|
|
||||
|
/** |
||||
|
* 随访内容 |
||||
|
*/ |
||||
|
private String content; |
||||
|
|
||||
|
} |
||||
@ -0,0 +1,97 @@ |
|||||
|
package com.epmet.entity; |
||||
|
|
||||
|
import com.baomidou.mybatisplus.annotation.FieldFill; |
||||
|
import com.baomidou.mybatisplus.annotation.TableField; |
||||
|
import com.baomidou.mybatisplus.annotation.TableName; |
||||
|
import com.epmet.commons.mybatis.entity.BaseEpmetEntity; |
||||
|
import lombok.Data; |
||||
|
import lombok.EqualsAndHashCode; |
||||
|
|
||||
|
import java.util.Date; |
||||
|
|
||||
|
/** |
||||
|
* 核酸上报记录 |
||||
|
|
||||
|
* |
||||
|
* @author generator generator@elink-cn.com |
||||
|
* @since v1.0.0 2022-03-25 |
||||
|
*/ |
||||
|
@Data |
||||
|
@EqualsAndHashCode(callSuper=false) |
||||
|
@TableName("ic_nat") |
||||
|
public class IcNatEntity extends BaseEpmetEntity { |
||||
|
|
||||
|
private static final long serialVersionUID = 1L; |
||||
|
|
||||
|
/** |
||||
|
* 客户Id CUSTOMER.id |
||||
|
*/ |
||||
|
@TableField(fill = FieldFill.INSERT) |
||||
|
private String customerId; |
||||
|
|
||||
|
/** |
||||
|
* 居民端上报时存储用户所在网格的组织id.居民信息的人存储居民所在组织id.单个新增或者导入的存储登录用户所属的组织id |
||||
|
*/ |
||||
|
private String agencyId; |
||||
|
|
||||
|
/** |
||||
|
* 组织pids |
||||
|
*/ |
||||
|
private String pids; |
||||
|
|
||||
|
/** |
||||
|
* 居民端小程序的用户id、数字社区的icResiUserId、其他情况无值 |
||||
|
*/ |
||||
|
private String userId; |
||||
|
|
||||
|
/** |
||||
|
* 居民端小程序的人:resi;数字社区的居民:icresi;导入的:import;同步的:synchro |
||||
|
*/ |
||||
|
private String userType; |
||||
|
|
||||
|
/** |
||||
|
* 人员姓名 |
||||
|
*/ |
||||
|
private String name; |
||||
|
|
||||
|
/** |
||||
|
* 手机号 |
||||
|
*/ |
||||
|
private String mobile; |
||||
|
|
||||
|
/** |
||||
|
* 身份证号 |
||||
|
*/ |
||||
|
private String idCard; |
||||
|
|
||||
|
/** |
||||
|
* 检测时间,精确到分钟 |
||||
|
*/ |
||||
|
private Date natTime; |
||||
|
|
||||
|
/** |
||||
|
* 检测结果(0:阴性 1:阳性) |
||||
|
*/ |
||||
|
private String natResult; |
||||
|
|
||||
|
/** |
||||
|
* 检测地点 |
||||
|
*/ |
||||
|
private String natAddress; |
||||
|
|
||||
|
/** |
||||
|
* 文件名 |
||||
|
*/ |
||||
|
private String fileName; |
||||
|
|
||||
|
/** |
||||
|
* 文件类型((图片 - image、 视频 - video、 语音 - voice、 文档 - doc)) |
||||
|
*/ |
||||
|
private String attachmentType; |
||||
|
|
||||
|
/** |
||||
|
* url地址 |
||||
|
*/ |
||||
|
private String attachmentUrl; |
||||
|
|
||||
|
} |
||||
@ -0,0 +1,60 @@ |
|||||
|
package com.epmet.entity; |
||||
|
|
||||
|
import com.baomidou.mybatisplus.annotation.TableName; |
||||
|
import com.epmet.commons.mybatis.entity.BaseEpmetEntity; |
||||
|
import lombok.Data; |
||||
|
import lombok.EqualsAndHashCode; |
||||
|
|
||||
|
/** |
||||
|
* 防疫通知 |
||||
|
* |
||||
|
* @author generator generator@elink-cn.com |
||||
|
* @since v1.0.0 2022-03-28 |
||||
|
*/ |
||||
|
@Data |
||||
|
@EqualsAndHashCode(callSuper=false) |
||||
|
@TableName("ic_notice") |
||||
|
public class IcNoticeEntity extends BaseEpmetEntity { |
||||
|
|
||||
|
private static final long serialVersionUID = 1L; |
||||
|
|
||||
|
/** |
||||
|
* 客户Id customer.id |
||||
|
*/ |
||||
|
private String customerId; |
||||
|
|
||||
|
/** |
||||
|
* 通知渠道 0小程序通知,1短信通知 |
||||
|
*/ |
||||
|
private String channel; |
||||
|
|
||||
|
/** |
||||
|
* 通知来源 0行程上报,1疫苗接种,2核酸检测 |
||||
|
*/ |
||||
|
private String origin; |
||||
|
|
||||
|
/** |
||||
|
* 用户ID |
||||
|
*/ |
||||
|
private String userId; |
||||
|
/** |
||||
|
* 手机号 |
||||
|
*/ |
||||
|
private String mobile; |
||||
|
|
||||
|
/** |
||||
|
* 被通知人身份证号 |
||||
|
*/ |
||||
|
private String idCard; |
||||
|
|
||||
|
/** |
||||
|
* 通知内容 |
||||
|
*/ |
||||
|
private String content; |
||||
|
|
||||
|
/** |
||||
|
* 发送通知的社区 |
||||
|
*/ |
||||
|
private String orgName; |
||||
|
|
||||
|
} |
||||
@ -0,0 +1,79 @@ |
|||||
|
package com.epmet.entity; |
||||
|
|
||||
|
import com.baomidou.mybatisplus.annotation.TableName; |
||||
|
|
||||
|
import com.epmet.commons.mybatis.entity.BaseEpmetEntity; |
||||
|
import lombok.Data; |
||||
|
import lombok.EqualsAndHashCode; |
||||
|
|
||||
|
import java.util.Date; |
||||
|
|
||||
|
/** |
||||
|
* 居民疫苗情况 |
||||
|
* |
||||
|
* @author generator generator@elink-cn.com |
||||
|
* @since v1.0.0 2022-03-28 |
||||
|
*/ |
||||
|
@Data |
||||
|
@EqualsAndHashCode(callSuper=false) |
||||
|
@TableName("ic_resi_vaccine") |
||||
|
public class IcResiVaccineEntity extends BaseEpmetEntity { |
||||
|
|
||||
|
private static final long serialVersionUID = 1L; |
||||
|
|
||||
|
/** |
||||
|
* 客户Id customer.id |
||||
|
*/ |
||||
|
private String customerId; |
||||
|
|
||||
|
/** |
||||
|
* 姓名 |
||||
|
*/ |
||||
|
private String name; |
||||
|
|
||||
|
/** |
||||
|
* 手机号 |
||||
|
*/ |
||||
|
private String mobile; |
||||
|
|
||||
|
/** |
||||
|
* 身份证号 |
||||
|
*/ |
||||
|
private String idCard; |
||||
|
|
||||
|
/** |
||||
|
* 接种时间 |
||||
|
*/ |
||||
|
private Date inoculateTime; |
||||
|
|
||||
|
/** |
||||
|
* 接种地点 |
||||
|
*/ |
||||
|
private String inoculateAddress; |
||||
|
|
||||
|
/** |
||||
|
* 疫苗厂家 |
||||
|
*/ |
||||
|
private String manufacturer; |
||||
|
|
||||
|
/** |
||||
|
* 预留字段1 |
||||
|
*/ |
||||
|
private String field1; |
||||
|
|
||||
|
/** |
||||
|
* 预留字段2 |
||||
|
*/ |
||||
|
private String field2; |
||||
|
|
||||
|
/** |
||||
|
* 预留字段3 |
||||
|
*/ |
||||
|
private String field3; |
||||
|
|
||||
|
/** |
||||
|
* 备注 |
||||
|
*/ |
||||
|
private String remaek; |
||||
|
|
||||
|
} |
||||
@ -0,0 +1,94 @@ |
|||||
|
package com.epmet.entity; |
||||
|
|
||||
|
import com.baomidou.mybatisplus.annotation.TableName; |
||||
|
|
||||
|
import com.epmet.commons.mybatis.entity.BaseEpmetEntity; |
||||
|
import lombok.Data; |
||||
|
import lombok.EqualsAndHashCode; |
||||
|
|
||||
|
import java.util.Date; |
||||
|
|
||||
|
/** |
||||
|
* 行程上报信息 |
||||
|
* |
||||
|
* @author generator generator@elink-cn.com |
||||
|
* @since v1.0.0 2022-03-25 |
||||
|
*/ |
||||
|
@Data |
||||
|
@EqualsAndHashCode(callSuper=false) |
||||
|
@TableName("ic_trip_report_record") |
||||
|
public class IcTripReportRecordEntity extends BaseEpmetEntity { |
||||
|
|
||||
|
private static final long serialVersionUID = 1L; |
||||
|
|
||||
|
/** |
||||
|
* 客户Id |
||||
|
*/ |
||||
|
private String customerId; |
||||
|
|
||||
|
/** |
||||
|
* 姓名 |
||||
|
*/ |
||||
|
private String name; |
||||
|
|
||||
|
/** |
||||
|
* 手机号 |
||||
|
*/ |
||||
|
private String mobile; |
||||
|
|
||||
|
/** |
||||
|
* 身份证号 |
||||
|
*/ |
||||
|
private String idCard; |
||||
|
|
||||
|
/** |
||||
|
* 用户id |
||||
|
*/ |
||||
|
private String userId; |
||||
|
|
||||
|
/** |
||||
|
* 居民端小程序的人:resi;数字社区的居民:icresi;未关联上的:other |
||||
|
*/ |
||||
|
private String userType; |
||||
|
|
||||
|
/** |
||||
|
* 现居地编码 |
||||
|
*/ |
||||
|
private String presentAddressCode; |
||||
|
|
||||
|
/** |
||||
|
* 现居地名称eg:山东省青岛市黄岛区玫瑰山路社区 |
||||
|
*/ |
||||
|
private String presentAddress; |
||||
|
|
||||
|
/** |
||||
|
* 详细地址 |
||||
|
*/ |
||||
|
private String detailAddress; |
||||
|
|
||||
|
/** |
||||
|
* 来源地区编码 |
||||
|
*/ |
||||
|
private String sourceAddressCode; |
||||
|
|
||||
|
/** |
||||
|
* 来源地区地址 |
||||
|
*/ |
||||
|
private String sourceAddress; |
||||
|
|
||||
|
/** |
||||
|
* 到达日期 |
||||
|
*/ |
||||
|
private Date arriveDate; |
||||
|
|
||||
|
/** |
||||
|
* 离开日期 |
||||
|
*/ |
||||
|
private Date leaveDate; |
||||
|
|
||||
|
/** |
||||
|
* 备注信息 |
||||
|
*/ |
||||
|
private String remark; |
||||
|
|
||||
|
} |
||||
@ -0,0 +1,60 @@ |
|||||
|
package com.epmet.excel; |
||||
|
|
||||
|
import cn.afterturn.easypoi.excel.annotation.Excel; |
||||
|
import lombok.Data; |
||||
|
|
||||
|
import java.util.Date; |
||||
|
|
||||
|
/** |
||||
|
* 随访记录表 |
||||
|
* |
||||
|
* @author generator generator@elink-cn.com |
||||
|
* @since v1.0.0 2022-03-25 |
||||
|
*/ |
||||
|
@Data |
||||
|
public class IcFollowUpRecordExcel { |
||||
|
|
||||
|
@Excel(name = "主键ID") |
||||
|
private String id; |
||||
|
|
||||
|
@Excel(name = "客户Id") |
||||
|
private String customerId; |
||||
|
|
||||
|
@Excel(name = "姓名") |
||||
|
private String name; |
||||
|
|
||||
|
@Excel(name = "手机号") |
||||
|
private String mobile; |
||||
|
|
||||
|
@Excel(name = "身份证号") |
||||
|
private String idCard; |
||||
|
|
||||
|
@Excel(name = "0行程上报,1疫苗接种,2核酸检测") |
||||
|
private String origin; |
||||
|
|
||||
|
@Excel(name = "随访时间") |
||||
|
private Date visitTime; |
||||
|
|
||||
|
@Excel(name = "随访内容") |
||||
|
private String content; |
||||
|
|
||||
|
@Excel(name = "删除标识 1删除;0未删除") |
||||
|
private String delFlag; |
||||
|
|
||||
|
@Excel(name = "乐观锁") |
||||
|
private Integer revision; |
||||
|
|
||||
|
@Excel(name = "创建人") |
||||
|
private String createdBy; |
||||
|
|
||||
|
@Excel(name = "创建时间") |
||||
|
private Date createdTime; |
||||
|
|
||||
|
@Excel(name = "更新人") |
||||
|
private String updatedBy; |
||||
|
|
||||
|
@Excel(name = "更新时间") |
||||
|
private Date updatedTime; |
||||
|
|
||||
|
|
||||
|
} |
||||
@ -0,0 +1,81 @@ |
|||||
|
package com.epmet.excel; |
||||
|
|
||||
|
import cn.afterturn.easypoi.excel.annotation.Excel; |
||||
|
import lombok.Data; |
||||
|
|
||||
|
import java.util.Date; |
||||
|
|
||||
|
/** |
||||
|
* 行程上报信息 |
||||
|
* |
||||
|
* @author generator generator@elink-cn.com |
||||
|
* @since v1.0.0 2022-03-25 |
||||
|
*/ |
||||
|
@Data |
||||
|
public class IcTripReportRecordExcel { |
||||
|
|
||||
|
@Excel(name = "主键ID") |
||||
|
private String id; |
||||
|
|
||||
|
@Excel(name = "客户Id") |
||||
|
private String customerId; |
||||
|
|
||||
|
@Excel(name = "姓名") |
||||
|
private String name; |
||||
|
|
||||
|
@Excel(name = "手机号") |
||||
|
private String mobile; |
||||
|
|
||||
|
@Excel(name = "身份证号") |
||||
|
private String idCard; |
||||
|
|
||||
|
@Excel(name = "用户id") |
||||
|
private String userId; |
||||
|
|
||||
|
@Excel(name = "居民端小程序的人:resi;数字社区的居民:icresi;未关联上的:other") |
||||
|
private String userType; |
||||
|
|
||||
|
@Excel(name = "现居地编码") |
||||
|
private String presentAddressCode; |
||||
|
|
||||
|
@Excel(name = "现居地名称eg:山东省青岛市黄岛区玫瑰山路社区") |
||||
|
private String presentAddress; |
||||
|
|
||||
|
@Excel(name = "详细地址") |
||||
|
private String detailAddress; |
||||
|
|
||||
|
@Excel(name = "来源地区编码") |
||||
|
private String sourceAddressCode; |
||||
|
|
||||
|
@Excel(name = "来源地区地址") |
||||
|
private String sourceAddress; |
||||
|
|
||||
|
@Excel(name = "到达日期") |
||||
|
private Date arriveDate; |
||||
|
|
||||
|
@Excel(name = "离开日期") |
||||
|
private Date leaveDate; |
||||
|
|
||||
|
@Excel(name = "备注信息") |
||||
|
private String remark; |
||||
|
|
||||
|
@Excel(name = "删除标识 1删除;0未删除") |
||||
|
private String delFlag; |
||||
|
|
||||
|
@Excel(name = "乐观锁") |
||||
|
private Integer revision; |
||||
|
|
||||
|
@Excel(name = "创建人") |
||||
|
private String createdBy; |
||||
|
|
||||
|
@Excel(name = "创建时间") |
||||
|
private Date createdTime; |
||||
|
|
||||
|
@Excel(name = "更新人") |
||||
|
private String updatedBy; |
||||
|
|
||||
|
@Excel(name = "更新时间") |
||||
|
private Date updatedTime; |
||||
|
|
||||
|
|
||||
|
} |
||||
@ -0,0 +1,35 @@ |
|||||
|
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 NatExportExcel { |
||||
|
|
||||
|
@Excel(name = "排序",width = 10) |
||||
|
private Integer sort; |
||||
|
|
||||
|
@Excel(name = "姓名",width = 20) |
||||
|
private String name; |
||||
|
|
||||
|
@Excel(name = "电话",width = 20) |
||||
|
private String mobile; |
||||
|
|
||||
|
@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 lastInformTime; |
||||
|
|
||||
|
} |
||||
@ -0,0 +1,35 @@ |
|||||
|
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 VaccinationExportExcel { |
||||
|
|
||||
|
@Excel(name = "排序",width = 10) |
||||
|
private Integer sort; |
||||
|
|
||||
|
@Excel(name = "姓名",width = 20) |
||||
|
private String name; |
||||
|
|
||||
|
@Excel(name = "电话",width = 20) |
||||
|
private String mobile; |
||||
|
|
||||
|
@Excel(name = "身份证",width = 30) |
||||
|
private String idCard; |
||||
|
|
||||
|
@Excel(name = "备注",width = 40) |
||||
|
private String remark; |
||||
|
|
||||
|
@Excel(name = "接种针次",width = 10) |
||||
|
private Integer vaccinationCount; |
||||
|
|
||||
|
@Excel(name = "最近一次通知时间",width = 20) |
||||
|
private String lastInformTime; |
||||
|
|
||||
|
} |
||||
@ -0,0 +1,61 @@ |
|||||
|
package com.epmet.excel.data; |
||||
|
|
||||
|
import com.alibaba.excel.annotation.ExcelProperty; |
||||
|
import com.alibaba.excel.annotation.write.style.ColumnWidth; |
||||
|
import com.epmet.dto.form.AddIcNatFormDTO; |
||||
|
import lombok.Data; |
||||
|
|
||||
|
import javax.validation.constraints.NotBlank; |
||||
|
import javax.validation.constraints.NotNull; |
||||
|
import java.util.Date; |
||||
|
|
||||
|
/** |
||||
|
* 核酸检测信息导入excel数据 |
||||
|
*/ |
||||
|
@Data |
||||
|
public class IcNatImportExcelData { |
||||
|
|
||||
|
@NotBlank(message = "姓名为必填项") |
||||
|
@ExcelProperty("姓名") |
||||
|
private String name; |
||||
|
|
||||
|
@NotBlank(message = "手机号为必填项") |
||||
|
@ExcelProperty("手机号") |
||||
|
private String mobile; |
||||
|
|
||||
|
@NotBlank(message = "身份证号为必填项") |
||||
|
@ExcelProperty("身份证号") |
||||
|
private String idCard; |
||||
|
|
||||
|
@NotNull(message = "检测时间为必填项") |
||||
|
@ExcelProperty("检测时间") |
||||
|
private Date natTime; |
||||
|
|
||||
|
@NotBlank(message = "检测地点为必填项") |
||||
|
@ExcelProperty("检测地点") |
||||
|
private String natAddress; |
||||
|
|
||||
|
@NotBlank(message = "检测结果为必填项") |
||||
|
@ExcelProperty("检测结果") |
||||
|
private String natResultZh; |
||||
|
|
||||
|
@Data |
||||
|
public static class ErrorRow { |
||||
|
|
||||
|
@ExcelProperty("姓名") |
||||
|
@ColumnWidth(20) |
||||
|
private String name; |
||||
|
|
||||
|
@ExcelProperty("手机号") |
||||
|
@ColumnWidth(20) |
||||
|
private String mobile; |
||||
|
|
||||
|
@ColumnWidth(20) |
||||
|
@ExcelProperty("身份证号") |
||||
|
private String idCard; |
||||
|
|
||||
|
@ColumnWidth(60) |
||||
|
@ExcelProperty("错误信息") |
||||
|
private String errorInfo; |
||||
|
} |
||||
|
} |
||||
@ -0,0 +1,126 @@ |
|||||
|
package com.epmet.excel.handler; |
||||
|
|
||||
|
import com.alibaba.excel.context.AnalysisContext; |
||||
|
import com.alibaba.excel.read.listener.ReadListener; |
||||
|
import com.epmet.commons.tools.exception.ExceptionUtils; |
||||
|
import com.epmet.commons.tools.exception.ValidateException; |
||||
|
import com.epmet.commons.tools.utils.ConvertUtils; |
||||
|
import com.epmet.commons.tools.validator.ValidatorUtils; |
||||
|
import com.epmet.entity.IcNatEntity; |
||||
|
import com.epmet.excel.data.IcNatImportExcelData; |
||||
|
import com.epmet.service.impl.IcNatServiceImpl; |
||||
|
import lombok.extern.slf4j.Slf4j; |
||||
|
import org.apache.commons.lang3.StringUtils; |
||||
|
|
||||
|
import java.util.ArrayList; |
||||
|
import java.util.List; |
||||
|
|
||||
|
/** |
||||
|
* 核酸检测excel导入监听器 |
||||
|
*/ |
||||
|
@Slf4j |
||||
|
public class IcNatExcelImportListener implements ReadListener<IcNatImportExcelData> { |
||||
|
|
||||
|
/** |
||||
|
* 最大条数阈值 |
||||
|
*/ |
||||
|
public static final int MAX_THRESHOLD = 2; |
||||
|
|
||||
|
private String currentUserId; |
||||
|
/** |
||||
|
* 当前组织ID |
||||
|
*/ |
||||
|
private String currentAgencyId; |
||||
|
|
||||
|
private String currentAgencyPids; |
||||
|
|
||||
|
/** |
||||
|
* 数据 |
||||
|
*/ |
||||
|
private List<IcNatEntity> datas = new ArrayList<>(); |
||||
|
|
||||
|
/** |
||||
|
* 错误项列表 |
||||
|
*/ |
||||
|
private List<IcNatImportExcelData.ErrorRow> errorRows = new ArrayList<>(); |
||||
|
|
||||
|
private IcNatServiceImpl icNatService; |
||||
|
|
||||
|
public IcNatExcelImportListener(String currentUserId, String currentAgencyId, String currentAgencyPids, IcNatServiceImpl icNatService) { |
||||
|
this.currentUserId = currentUserId; |
||||
|
this.currentAgencyId = currentAgencyId; |
||||
|
this.currentAgencyPids = currentAgencyPids; |
||||
|
this.icNatService = icNatService; |
||||
|
} |
||||
|
|
||||
|
@Override |
||||
|
public void invoke(IcNatImportExcelData data, AnalysisContext context) { |
||||
|
|
||||
|
try { |
||||
|
// 先校验数据
|
||||
|
ValidatorUtils.validateEntity(data); |
||||
|
|
||||
|
String natResult = "0"; |
||||
|
String natResultZh = data.getNatResultZh(); |
||||
|
if (StringUtils.isNotBlank(natResultZh)) { |
||||
|
natResult = natResultZh.equals("阴性") ? "0" : "1"; |
||||
|
} |
||||
|
|
||||
|
IcNatEntity icNatEntity = ConvertUtils.sourceToTarget(data, IcNatEntity.class); |
||||
|
icNatEntity.setAgencyId(currentAgencyId); |
||||
|
icNatEntity.setPids(currentAgencyPids); |
||||
|
icNatEntity.setUserId(currentUserId); |
||||
|
icNatEntity.setUserType("other"); |
||||
|
icNatEntity.setNatResult(natResult); |
||||
|
icNatEntity.setAttachmentType(""); |
||||
|
icNatEntity.setAttachmentUrl(""); |
||||
|
datas.add(icNatEntity); |
||||
|
|
||||
|
if (datas.size() == MAX_THRESHOLD) { |
||||
|
execPersist(); |
||||
|
} |
||||
|
} catch (Exception e) { |
||||
|
String errorMsg = null; |
||||
|
if (e instanceof ValidateException) { |
||||
|
errorMsg = ((ValidateException) e).getMsg(); |
||||
|
} else { |
||||
|
errorMsg = "未知错误"; |
||||
|
log.error("【核酸检测信息导入】出错:{}", ExceptionUtils.getErrorStackTrace(e)); |
||||
|
} |
||||
|
|
||||
|
IcNatImportExcelData.ErrorRow errorRow = new IcNatImportExcelData.ErrorRow(); |
||||
|
errorRow.setName(data.getName()); |
||||
|
errorRow.setMobile(data.getMobile()); |
||||
|
errorRow.setIdCard(data.getIdCard()); |
||||
|
errorRow.setErrorInfo(errorMsg); |
||||
|
errorRows.add(errorRow); |
||||
|
} |
||||
|
} |
||||
|
|
||||
|
@Override |
||||
|
public void doAfterAllAnalysed(AnalysisContext context) { |
||||
|
// 最后几条达不到阈值,这里必须再调用一次
|
||||
|
execPersist(); |
||||
|
} |
||||
|
|
||||
|
/** |
||||
|
* 执行持久化 |
||||
|
*/ |
||||
|
private void execPersist() { |
||||
|
try { |
||||
|
if (datas != null && datas.size() > 0) { |
||||
|
icNatService.batchPersist(datas); |
||||
|
} |
||||
|
} finally { |
||||
|
datas.clear(); |
||||
|
} |
||||
|
} |
||||
|
|
||||
|
/** |
||||
|
* 获取错误行 |
||||
|
* @return |
||||
|
*/ |
||||
|
public List<IcNatImportExcelData.ErrorRow> getErrorRows() { |
||||
|
return errorRows; |
||||
|
} |
||||
|
} |
||||
@ -0,0 +1,114 @@ |
|||||
|
package com.epmet.service; |
||||
|
|
||||
|
import com.epmet.commons.mybatis.service.BaseService; |
||||
|
import com.epmet.commons.tools.page.PageData; |
||||
|
import com.epmet.dto.IcEpidemicSpecialAttentionDTO; |
||||
|
import com.epmet.dto.form.CancelAttentionPackageFormDTO; |
||||
|
import com.epmet.dto.form.VaccinationAddFormDTO; |
||||
|
import com.epmet.dto.form.VaccinationListFormDTO; |
||||
|
import com.epmet.entity.IcEpidemicSpecialAttentionEntity; |
||||
|
|
||||
|
import java.util.List; |
||||
|
import java.util.Map; |
||||
|
|
||||
|
/** |
||||
|
* 疫情特别关注 |
||||
|
* |
||||
|
* @author generator generator@elink-cn.com |
||||
|
* @since v1.0.0 2022-03-28 |
||||
|
*/ |
||||
|
public interface IcEpidemicSpecialAttentionService extends BaseService<IcEpidemicSpecialAttentionEntity> { |
||||
|
|
||||
|
/** |
||||
|
* 默认分页 |
||||
|
* |
||||
|
* @param params |
||||
|
* @return PageData<IcEpidemicSpecialAttentionDTO> |
||||
|
* @author generator |
||||
|
* @date 2022-03-28 |
||||
|
*/ |
||||
|
PageData<IcEpidemicSpecialAttentionDTO> page(Map<String, Object> params); |
||||
|
|
||||
|
/** |
||||
|
* 默认查询 |
||||
|
* |
||||
|
* @param params |
||||
|
* @return java.util.List<IcEpidemicSpecialAttentionDTO> |
||||
|
* @author generator |
||||
|
* @date 2022-03-28 |
||||
|
*/ |
||||
|
List<IcEpidemicSpecialAttentionDTO> list(Map<String, Object> params); |
||||
|
|
||||
|
/** |
||||
|
* 单条查询 |
||||
|
* |
||||
|
* @param id |
||||
|
* @return IcEpidemicSpecialAttentionDTO |
||||
|
* @author generator |
||||
|
* @date 2022-03-28 |
||||
|
*/ |
||||
|
IcEpidemicSpecialAttentionDTO get(String id); |
||||
|
|
||||
|
/** |
||||
|
* 默认保存 |
||||
|
* |
||||
|
* @param dto |
||||
|
* @return void |
||||
|
* @author generator |
||||
|
* @date 2022-03-28 |
||||
|
*/ |
||||
|
void save(IcEpidemicSpecialAttentionDTO dto); |
||||
|
|
||||
|
/** |
||||
|
* 默认更新 |
||||
|
* |
||||
|
* @param dto |
||||
|
* @return void |
||||
|
* @author generator |
||||
|
* @date 2022-03-28 |
||||
|
*/ |
||||
|
void update(IcEpidemicSpecialAttentionDTO dto); |
||||
|
|
||||
|
/** |
||||
|
* 批量删除 |
||||
|
* |
||||
|
* @param ids |
||||
|
* @return void |
||||
|
* @author generator |
||||
|
* @date 2022-03-28 |
||||
|
*/ |
||||
|
void delete(String[] ids); |
||||
|
|
||||
|
/** |
||||
|
* Desc: 【疫苗接种关注名单,疫苗接种关注名单】列表 |
||||
|
* @param formDTO |
||||
|
* @author zxc |
||||
|
* @date 2022/3/28 10:29 |
||||
|
*/ |
||||
|
PageData vaccinationList(VaccinationListFormDTO formDTO); |
||||
|
|
||||
|
|
||||
|
/** |
||||
|
* Desc:【疫苗接种关注名单,核酸检测关注名单】新增 |
||||
|
* @param formDTO |
||||
|
* @author zxc |
||||
|
* @date 2022/3/28 13:35 |
||||
|
*/ |
||||
|
void vaccinationAdd(VaccinationAddFormDTO formDTO); |
||||
|
|
||||
|
/** |
||||
|
* Desc:【疫苗接种关注名单,核酸检测关注名单】修改 |
||||
|
* @param formDTO |
||||
|
* @author zxc |
||||
|
* @date 2022/3/28 13:45 |
||||
|
*/ |
||||
|
void vaccinationUpdate(IcEpidemicSpecialAttentionDTO formDTO); |
||||
|
|
||||
|
/** |
||||
|
* Desc: 取消关注 |
||||
|
* @param formDTO |
||||
|
* @author zxc |
||||
|
* @date 2022/3/28 13:51 |
||||
|
*/ |
||||
|
void cancelAttention(CancelAttentionPackageFormDTO formDTO); |
||||
|
} |
||||
@ -0,0 +1,78 @@ |
|||||
|
package com.epmet.service; |
||||
|
|
||||
|
import com.epmet.commons.mybatis.service.BaseService; |
||||
|
import com.epmet.commons.tools.page.PageData; |
||||
|
import com.epmet.dto.IcFollowUpRecordDTO; |
||||
|
import com.epmet.entity.IcFollowUpRecordEntity; |
||||
|
|
||||
|
import java.util.List; |
||||
|
import java.util.Map; |
||||
|
|
||||
|
/** |
||||
|
* 随访记录表 |
||||
|
* |
||||
|
* @author generator generator@elink-cn.com |
||||
|
* @since v1.0.0 2022-03-25 |
||||
|
*/ |
||||
|
public interface IcFollowUpRecordService extends BaseService<IcFollowUpRecordEntity> { |
||||
|
|
||||
|
/** |
||||
|
* 默认分页 |
||||
|
* |
||||
|
* @param params |
||||
|
* @return PageData<IcFollowUpRecordDTO> |
||||
|
* @author generator |
||||
|
* @date 2022-03-25 |
||||
|
*/ |
||||
|
PageData<IcFollowUpRecordDTO> page(Map<String, Object> params); |
||||
|
|
||||
|
/** |
||||
|
* 默认查询 |
||||
|
* |
||||
|
* @param params |
||||
|
* @return java.util.List<IcFollowUpRecordDTO> |
||||
|
* @author generator |
||||
|
* @date 2022-03-25 |
||||
|
*/ |
||||
|
List<IcFollowUpRecordDTO> list(Map<String, Object> params); |
||||
|
|
||||
|
/** |
||||
|
* 单条查询 |
||||
|
* |
||||
|
* @param id |
||||
|
* @return IcFollowUpRecordDTO |
||||
|
* @author generator |
||||
|
* @date 2022-03-25 |
||||
|
*/ |
||||
|
IcFollowUpRecordDTO get(String id); |
||||
|
|
||||
|
/** |
||||
|
* 默认保存 |
||||
|
* |
||||
|
* @param dto |
||||
|
* @return void |
||||
|
* @author generator |
||||
|
* @date 2022-03-25 |
||||
|
*/ |
||||
|
void save(IcFollowUpRecordDTO dto); |
||||
|
|
||||
|
/** |
||||
|
* 默认更新 |
||||
|
* |
||||
|
* @param dto |
||||
|
* @return void |
||||
|
* @author generator |
||||
|
* @date 2022-03-25 |
||||
|
*/ |
||||
|
void update(IcFollowUpRecordDTO dto); |
||||
|
|
||||
|
/** |
||||
|
* 批量删除 |
||||
|
* |
||||
|
* @param ids |
||||
|
* @return void |
||||
|
* @author generator |
||||
|
* @date 2022-03-25 |
||||
|
*/ |
||||
|
void delete(String[] ids); |
||||
|
} |
||||
@ -0,0 +1,71 @@ |
|||||
|
package com.epmet.service; |
||||
|
|
||||
|
import com.epmet.commons.mybatis.service.BaseService; |
||||
|
import com.epmet.commons.tools.page.PageData; |
||||
|
import com.epmet.dto.IcNatDTO; |
||||
|
import com.epmet.dto.form.AddIcNatFormDTO; |
||||
|
import com.epmet.dto.form.MyNatListFormDTO; |
||||
|
import com.epmet.dto.result.MyNatListResultDTO; |
||||
|
import com.epmet.dto.result.NatListResultDTO; |
||||
|
import com.epmet.entity.IcNatEntity; |
||||
|
|
||||
|
import java.nio.file.Path; |
||||
|
import java.util.List; |
||||
|
|
||||
|
/** |
||||
|
* 核酸上报记录 |
||||
|
* |
||||
|
* @author generator generator@elink-cn.com |
||||
|
* @since v1.0.0 2022-03-25 |
||||
|
*/ |
||||
|
public interface IcNatService extends BaseService<IcNatEntity> { |
||||
|
|
||||
|
/** |
||||
|
* @Author sun |
||||
|
* @Description 核酸检测-上报核酸记录 |
||||
|
**/ |
||||
|
void add(AddIcNatFormDTO formDTO); |
||||
|
|
||||
|
/** |
||||
|
* @Author sun |
||||
|
* @Description 核酸检测-居民端我的上报 |
||||
|
**/ |
||||
|
List<MyNatListResultDTO> myNatList(MyNatListFormDTO formDTO); |
||||
|
|
||||
|
/** |
||||
|
* @Author sun |
||||
|
* @Description 【核酸】核酸检测信息列表 |
||||
|
* |
||||
|
* @return*/ |
||||
|
PageData<NatListResultDTO> natList(MyNatListFormDTO formDTO); |
||||
|
|
||||
|
/** |
||||
|
* @Author sun |
||||
|
* @Description 【核酸】核酸检测信息详情 |
||||
|
**/ |
||||
|
IcNatDTO detail(MyNatListFormDTO formDTO); |
||||
|
|
||||
|
/** |
||||
|
* @Author sun |
||||
|
* @Description 【核酸】核酸检测信息修改 |
||||
|
**/ |
||||
|
void edit(AddIcNatFormDTO formDTO); |
||||
|
|
||||
|
/** |
||||
|
* @Author sun |
||||
|
* @Description 【核酸】核酸检测信息删除/取消同步 |
||||
|
**/ |
||||
|
void del(MyNatListFormDTO formDTO); |
||||
|
|
||||
|
/** |
||||
|
* @Author sun |
||||
|
* @Description 【核酸】核酸检测信息同步 |
||||
|
**/ |
||||
|
void synchro(MyNatListFormDTO formDTO); |
||||
|
|
||||
|
/** |
||||
|
* 执行Excel导入 |
||||
|
* @param filePath |
||||
|
*/ |
||||
|
void execAsyncExcelImport(Path filePath, String importTaskId); |
||||
|
} |
||||
@ -0,0 +1,99 @@ |
|||||
|
package com.epmet.service; |
||||
|
|
||||
|
import com.epmet.commons.mybatis.service.BaseService; |
||||
|
import com.epmet.commons.tools.page.PageData; |
||||
|
import com.epmet.dto.IcNoticeDTO; |
||||
|
import com.epmet.dto.form.IcNoticeFormDTO; |
||||
|
import com.epmet.dto.form.SendNoticeFormDTO; |
||||
|
import com.epmet.entity.IcNoticeEntity; |
||||
|
|
||||
|
import java.util.List; |
||||
|
import java.util.Map; |
||||
|
|
||||
|
/** |
||||
|
* 防疫通知 |
||||
|
* |
||||
|
* @author generator generator@elink-cn.com |
||||
|
* @since v1.0.0 2022-03-28 |
||||
|
*/ |
||||
|
public interface IcNoticeService extends BaseService<IcNoticeEntity> { |
||||
|
|
||||
|
/** |
||||
|
* 默认分页 |
||||
|
* |
||||
|
* @param dto |
||||
|
* @return PageData<IcNoticeDTO> |
||||
|
* @author generator |
||||
|
* @date 2022-03-28 |
||||
|
*/ |
||||
|
PageData<IcNoticeDTO> page(IcNoticeFormDTO formDTO); |
||||
|
|
||||
|
/** |
||||
|
* 默认查询 |
||||
|
* |
||||
|
* @param params |
||||
|
* @return java.util.List<IcNoticeDTO> |
||||
|
* @author generator |
||||
|
* @date 2022-03-28 |
||||
|
*/ |
||||
|
List<IcNoticeDTO> list(Map<String, Object> params); |
||||
|
|
||||
|
/** |
||||
|
* 单条查询 |
||||
|
* |
||||
|
* @param id |
||||
|
* @return IcNoticeDTO |
||||
|
* @author generator |
||||
|
* @date 2022-03-28 |
||||
|
*/ |
||||
|
IcNoticeDTO get(String id); |
||||
|
|
||||
|
/** |
||||
|
* 默认保存 |
||||
|
* |
||||
|
* @param dto |
||||
|
* @return void |
||||
|
* @author generator |
||||
|
* @date 2022-03-28 |
||||
|
*/ |
||||
|
void save(IcNoticeDTO dto); |
||||
|
|
||||
|
/** |
||||
|
* 默认更新 |
||||
|
* |
||||
|
* @param dto |
||||
|
* @return void |
||||
|
* @author generator |
||||
|
* @date 2022-03-28 |
||||
|
*/ |
||||
|
void update(IcNoticeDTO dto); |
||||
|
|
||||
|
/** |
||||
|
* 批量删除 |
||||
|
* |
||||
|
* @param ids |
||||
|
* @return void |
||||
|
* @author generator |
||||
|
* @date 2022-03-28 |
||||
|
*/ |
||||
|
void delete(String[] ids); |
||||
|
|
||||
|
/** |
||||
|
* 发送通知 |
||||
|
* |
||||
|
* @Param formDTO |
||||
|
* @Return |
||||
|
* @Author zhaoqifeng |
||||
|
* @Date 2022/3/28 14:19 |
||||
|
*/ |
||||
|
void sendNotice(SendNoticeFormDTO formDTO); |
||||
|
|
||||
|
/** |
||||
|
* 获取人员最新一条通知 |
||||
|
* @Param idCard |
||||
|
* @Return {@link IcNoticeDTO} |
||||
|
* @Author zhaoqifeng |
||||
|
* @Date 2022/3/28 15:43 |
||||
|
*/ |
||||
|
IcNoticeDTO getNotice(String customerId, String idCard); |
||||
|
} |
||||
@ -0,0 +1,78 @@ |
|||||
|
package com.epmet.service; |
||||
|
|
||||
|
import com.epmet.commons.mybatis.service.BaseService; |
||||
|
import com.epmet.commons.tools.page.PageData; |
||||
|
import com.epmet.dto.IcResiVaccineDTO; |
||||
|
import com.epmet.entity.IcResiVaccineEntity; |
||||
|
|
||||
|
import java.util.List; |
||||
|
import java.util.Map; |
||||
|
|
||||
|
/** |
||||
|
* 居民疫苗情况 |
||||
|
* |
||||
|
* @author generator generator@elink-cn.com |
||||
|
* @since v1.0.0 2022-03-28 |
||||
|
*/ |
||||
|
public interface IcResiVaccineService extends BaseService<IcResiVaccineEntity> { |
||||
|
|
||||
|
/** |
||||
|
* 默认分页 |
||||
|
* |
||||
|
* @param params |
||||
|
* @return PageData<IcResiVaccineDTO> |
||||
|
* @author generator |
||||
|
* @date 2022-03-28 |
||||
|
*/ |
||||
|
PageData<IcResiVaccineDTO> page(Map<String, Object> params); |
||||
|
|
||||
|
/** |
||||
|
* 默认查询 |
||||
|
* |
||||
|
* @param params |
||||
|
* @return java.util.List<IcResiVaccineDTO> |
||||
|
* @author generator |
||||
|
* @date 2022-03-28 |
||||
|
*/ |
||||
|
List<IcResiVaccineDTO> list(Map<String, Object> params); |
||||
|
|
||||
|
/** |
||||
|
* 单条查询 |
||||
|
* |
||||
|
* @param id |
||||
|
* @return IcResiVaccineDTO |
||||
|
* @author generator |
||||
|
* @date 2022-03-28 |
||||
|
*/ |
||||
|
IcResiVaccineDTO get(String id); |
||||
|
|
||||
|
/** |
||||
|
* 默认保存 |
||||
|
* |
||||
|
* @param dto |
||||
|
* @return void |
||||
|
* @author generator |
||||
|
* @date 2022-03-28 |
||||
|
*/ |
||||
|
void save(IcResiVaccineDTO dto); |
||||
|
|
||||
|
/** |
||||
|
* 默认更新 |
||||
|
* |
||||
|
* @param dto |
||||
|
* @return void |
||||
|
* @author generator |
||||
|
* @date 2022-03-28 |
||||
|
*/ |
||||
|
void update(IcResiVaccineDTO dto); |
||||
|
|
||||
|
/** |
||||
|
* 批量删除 |
||||
|
* |
||||
|
* @param ids |
||||
|
* @return void |
||||
|
* @author generator |
||||
|
* @date 2022-03-28 |
||||
|
*/ |
||||
|
void delete(String[] ids); |
||||
|
} |
||||
@ -0,0 +1,78 @@ |
|||||
|
package com.epmet.service; |
||||
|
|
||||
|
import com.epmet.commons.mybatis.service.BaseService; |
||||
|
import com.epmet.commons.tools.page.PageData; |
||||
|
import com.epmet.dto.IcTripReportRecordDTO; |
||||
|
import com.epmet.entity.IcTripReportRecordEntity; |
||||
|
|
||||
|
import java.util.List; |
||||
|
import java.util.Map; |
||||
|
|
||||
|
/** |
||||
|
* 行程上报信息 |
||||
|
* |
||||
|
* @author generator generator@elink-cn.com |
||||
|
* @since v1.0.0 2022-03-25 |
||||
|
*/ |
||||
|
public interface IcTripReportRecordService extends BaseService<IcTripReportRecordEntity> { |
||||
|
|
||||
|
/** |
||||
|
* 默认分页 |
||||
|
* |
||||
|
* @param params |
||||
|
* @return PageData<IcTripReportRecordDTO> |
||||
|
* @author generator |
||||
|
* @date 2022-03-25 |
||||
|
*/ |
||||
|
PageData<IcTripReportRecordDTO> page(Map<String, Object> params); |
||||
|
|
||||
|
/** |
||||
|
* 默认查询 |
||||
|
* |
||||
|
* @param params |
||||
|
* @return java.util.List<IcTripReportRecordDTO> |
||||
|
* @author generator |
||||
|
* @date 2022-03-25 |
||||
|
*/ |
||||
|
List<IcTripReportRecordDTO> list(Map<String, Object> params); |
||||
|
|
||||
|
/** |
||||
|
* 单条查询 |
||||
|
* |
||||
|
* @param id |
||||
|
* @return IcTripReportRecordDTO |
||||
|
* @author generator |
||||
|
* @date 2022-03-25 |
||||
|
*/ |
||||
|
IcTripReportRecordDTO get(String id); |
||||
|
|
||||
|
/** |
||||
|
* 默认保存 |
||||
|
* |
||||
|
* @param dto |
||||
|
* @return void |
||||
|
* @author generator |
||||
|
* @date 2022-03-25 |
||||
|
*/ |
||||
|
void save(IcTripReportRecordDTO dto); |
||||
|
|
||||
|
/** |
||||
|
* 默认更新 |
||||
|
* |
||||
|
* @param dto |
||||
|
* @return void |
||||
|
* @author generator |
||||
|
* @date 2022-03-25 |
||||
|
*/ |
||||
|
void update(IcTripReportRecordDTO dto); |
||||
|
|
||||
|
/** |
||||
|
* 批量删除 |
||||
|
* |
||||
|
* @param ids |
||||
|
* @return void |
||||
|
* @author generator |
||||
|
* @date 2022-03-25 |
||||
|
*/ |
||||
|
void delete(String[] ids); |
||||
|
} |
||||
@ -0,0 +1,219 @@ |
|||||
|
package com.epmet.service.impl; |
||||
|
|
||||
|
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; |
||||
|
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; |
||||
|
import com.baomidou.mybatisplus.core.metadata.IPage; |
||||
|
import com.epmet.commons.mybatis.service.impl.BaseServiceImpl; |
||||
|
import com.epmet.commons.tools.constant.NumConstant; |
||||
|
import com.epmet.commons.tools.dto.result.CustomerStaffInfoCacheResult; |
||||
|
import com.epmet.commons.tools.exception.EpmetException; |
||||
|
import com.epmet.commons.tools.page.PageData; |
||||
|
import com.epmet.commons.tools.redis.common.CustomerOrgRedis; |
||||
|
import com.epmet.commons.tools.redis.common.CustomerStaffRedis; |
||||
|
import com.epmet.commons.tools.redis.common.bean.AgencyInfoCache; |
||||
|
import com.epmet.commons.tools.utils.ConvertUtils; |
||||
|
import com.epmet.commons.tools.constant.FieldConstant; |
||||
|
import com.epmet.dao.IcEpidemicSpecialAttentionDao; |
||||
|
import com.epmet.dto.IcEpidemicSpecialAttentionDTO; |
||||
|
import com.epmet.dto.form.*; |
||||
|
import com.epmet.dto.result.VaccinationListResultDTO; |
||||
|
import com.epmet.entity.IcEpidemicSpecialAttentionEntity; |
||||
|
import com.epmet.service.IcEpidemicSpecialAttentionService; |
||||
|
import com.github.pagehelper.PageHelper; |
||||
|
import com.github.pagehelper.PageInfo; |
||||
|
import org.apache.commons.collections4.CollectionUtils; |
||||
|
import org.apache.commons.lang3.StringUtils; |
||||
|
import org.springframework.beans.factory.annotation.Autowired; |
||||
|
import org.springframework.stereotype.Service; |
||||
|
import org.springframework.transaction.annotation.Transactional; |
||||
|
|
||||
|
import java.util.ArrayList; |
||||
|
import java.util.Arrays; |
||||
|
import java.util.List; |
||||
|
import java.util.Map; |
||||
|
import java.util.stream.Collectors; |
||||
|
|
||||
|
/** |
||||
|
* 疫情特别关注 |
||||
|
* |
||||
|
* @author generator generator@elink-cn.com |
||||
|
* @since v1.0.0 2022-03-28 |
||||
|
*/ |
||||
|
@Service |
||||
|
public class IcEpidemicSpecialAttentionServiceImpl extends BaseServiceImpl<IcEpidemicSpecialAttentionDao, IcEpidemicSpecialAttentionEntity> implements IcEpidemicSpecialAttentionService { |
||||
|
|
||||
|
@Override |
||||
|
public PageData<IcEpidemicSpecialAttentionDTO> page(Map<String, Object> params) { |
||||
|
IPage<IcEpidemicSpecialAttentionEntity> page = baseDao.selectPage( |
||||
|
getPage(params, FieldConstant.CREATED_TIME, false), |
||||
|
getWrapper(params) |
||||
|
); |
||||
|
return getPageData(page, IcEpidemicSpecialAttentionDTO.class); |
||||
|
} |
||||
|
|
||||
|
@Override |
||||
|
public List<IcEpidemicSpecialAttentionDTO> list(Map<String, Object> params) { |
||||
|
List<IcEpidemicSpecialAttentionEntity> entityList = baseDao.selectList(getWrapper(params)); |
||||
|
|
||||
|
return ConvertUtils.sourceToTarget(entityList, IcEpidemicSpecialAttentionDTO.class); |
||||
|
} |
||||
|
|
||||
|
private QueryWrapper<IcEpidemicSpecialAttentionEntity> getWrapper(Map<String, Object> params){ |
||||
|
String id = (String)params.get(FieldConstant.ID_HUMP); |
||||
|
|
||||
|
QueryWrapper<IcEpidemicSpecialAttentionEntity> wrapper = new QueryWrapper<>(); |
||||
|
wrapper.eq(StringUtils.isNotBlank(id), FieldConstant.ID, id); |
||||
|
|
||||
|
return wrapper; |
||||
|
} |
||||
|
|
||||
|
@Override |
||||
|
public IcEpidemicSpecialAttentionDTO get(String id) { |
||||
|
IcEpidemicSpecialAttentionEntity entity = baseDao.selectById(id); |
||||
|
return ConvertUtils.sourceToTarget(entity, IcEpidemicSpecialAttentionDTO.class); |
||||
|
} |
||||
|
|
||||
|
@Override |
||||
|
@Transactional(rollbackFor = Exception.class) |
||||
|
public void save(IcEpidemicSpecialAttentionDTO dto) { |
||||
|
IcEpidemicSpecialAttentionEntity entity = ConvertUtils.sourceToTarget(dto, IcEpidemicSpecialAttentionEntity.class); |
||||
|
insert(entity); |
||||
|
} |
||||
|
|
||||
|
@Override |
||||
|
@Transactional(rollbackFor = Exception.class) |
||||
|
public void update(IcEpidemicSpecialAttentionDTO dto) { |
||||
|
IcEpidemicSpecialAttentionEntity entity = ConvertUtils.sourceToTarget(dto, IcEpidemicSpecialAttentionEntity.class); |
||||
|
updateById(entity); |
||||
|
} |
||||
|
|
||||
|
@Override |
||||
|
@Transactional(rollbackFor = Exception.class) |
||||
|
public void delete(String[] ids) { |
||||
|
// 逻辑删除(@TableLogic 注解)
|
||||
|
baseDao.deleteBatchIds(Arrays.asList(ids)); |
||||
|
} |
||||
|
|
||||
|
/** |
||||
|
* Desc: 【疫苗接种关注名单,疫苗接种关注名单】列表 |
||||
|
* @param formDTO |
||||
|
* @author zxc |
||||
|
* @date 2022/3/28 10:29 |
||||
|
*/ |
||||
|
@Override |
||||
|
public PageData vaccinationList(VaccinationListFormDTO formDTO) { |
||||
|
PageData<VaccinationListResultDTO> result = new PageData(new ArrayList(), NumConstant.ZERO_L); |
||||
|
CustomerStaffInfoCacheResult staffInfo = CustomerStaffRedis.getStaffInfo(formDTO.getCustomerId(), formDTO.getUserId()); |
||||
|
if (null == staffInfo){ |
||||
|
throw new EpmetException("未查询到工作人员信息"+formDTO.getUserId()); |
||||
|
} |
||||
|
formDTO.setOrgId(staffInfo.getAgencyId()); |
||||
|
// 关注类型,核酸检测:2,疫苗接种:1
|
||||
|
if (formDTO.getAttentionType().equals(NumConstant.ONE)){ |
||||
|
if (formDTO.isPage()){ |
||||
|
PageInfo<VaccinationListResultDTO> pageInfo = PageHelper.startPage(formDTO.getPageNo(), formDTO.getPageSize()).doSelectPageInfo(() -> baseDao.vaccinationList(formDTO)); |
||||
|
result.setList(pageInfo.getList()); |
||||
|
result.setTotal(Integer.valueOf(String.valueOf(pageInfo.getTotal()))); |
||||
|
}else { |
||||
|
List<VaccinationListResultDTO> list = baseDao.vaccinationList(formDTO); |
||||
|
result.setList(list); |
||||
|
result.setTotal(list.size()); |
||||
|
} |
||||
|
}else if (formDTO.getAttentionType().equals(NumConstant.TWO)){ |
||||
|
if (formDTO.isPage()){ |
||||
|
PageInfo<VaccinationListResultDTO> pageInfo = PageHelper.startPage(formDTO.getPageNo(), formDTO.getPageSize()).doSelectPageInfo(() -> baseDao.natList(formDTO)); |
||||
|
result.setList(pageInfo.getList()); |
||||
|
result.setTotal(Integer.valueOf(String.valueOf(pageInfo.getTotal()))); |
||||
|
}else { |
||||
|
List<VaccinationListResultDTO> list = baseDao.natList(formDTO); |
||||
|
result.setList(list); |
||||
|
result.setTotal(list.size()); |
||||
|
} |
||||
|
} |
||||
|
int i = (formDTO.getPageNo() - NumConstant.ONE) * formDTO.getPageSize(); |
||||
|
for (VaccinationListResultDTO v : result.getList()) { |
||||
|
i += 1; |
||||
|
v.setSort(i); |
||||
|
} |
||||
|
return result; |
||||
|
} |
||||
|
|
||||
|
/** |
||||
|
* Desc:【疫苗接种关注名单,核酸检测关注名单】新增 |
||||
|
* @param formDTO |
||||
|
* @author zxc |
||||
|
* @date 2022/3/28 13:35 |
||||
|
*/ |
||||
|
@Override |
||||
|
@Transactional(rollbackFor = Exception.class) |
||||
|
public void vaccinationAdd(VaccinationAddFormDTO formDTO) { |
||||
|
CustomerStaffInfoCacheResult staffInfo = CustomerStaffRedis.getStaffInfo(formDTO.getCustomerId(), formDTO.getUserId()); |
||||
|
if (null == staffInfo){ |
||||
|
throw new EpmetException("未查询到工作人员信息"+formDTO.getUserId()); |
||||
|
} |
||||
|
AgencyInfoCache agencyInfo = CustomerOrgRedis.getAgencyInfo(staffInfo.getAgencyId()); |
||||
|
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(); |
||||
|
List<String> existList = baseDao.getExistList(attentionType, idCards); |
||||
|
if (CollectionUtils.isNotEmpty(existList)){ |
||||
|
for (String s : existList) { |
||||
|
for (int i = NumConstant.ZERO; i < entities.size(); i++) { |
||||
|
if (s.equals(entities.get(i).getIdCard())){ |
||||
|
entities.remove(i); |
||||
|
continue; |
||||
|
} |
||||
|
} |
||||
|
} |
||||
|
} |
||||
|
entities.forEach(e -> { |
||||
|
e.setIsAttention(NumConstant.ONE); |
||||
|
e.setOrgId(agencyInfo.getId()); |
||||
|
e.setPid(agencyInfo.getPid()); |
||||
|
e.setPids(agencyInfo.getPids()); |
||||
|
e.setCustomerId(formDTO.getCustomerId()); |
||||
|
}); |
||||
|
insertBatch(entities); |
||||
|
//TODO 发送通知
|
||||
|
} |
||||
|
|
||||
|
/** |
||||
|
* Desc:【疫苗接种关注名单,核酸检测关注名单】修改 |
||||
|
* 修改的时候通知渠道和通知内容是空的,如果他再次写了就是再次发送一条通知 不是修改之前发过的通知 |
||||
|
* 除了 姓名 身份证 都能修改 |
||||
|
* @param formDTO |
||||
|
* @author zxc |
||||
|
* @date 2022/3/28 13:45 |
||||
|
*/ |
||||
|
@Override |
||||
|
@Transactional(rollbackFor = Exception.class) |
||||
|
public void vaccinationUpdate(IcEpidemicSpecialAttentionDTO formDTO) { |
||||
|
LambdaQueryWrapper<IcEpidemicSpecialAttentionEntity> w = new LambdaQueryWrapper<>(); |
||||
|
IcEpidemicSpecialAttentionEntity e = new IcEpidemicSpecialAttentionEntity(); |
||||
|
w.eq(IcEpidemicSpecialAttentionEntity::getIdCard,formDTO.getIdCard()) |
||||
|
.eq(IcEpidemicSpecialAttentionEntity::getAttentionType,formDTO.getAttentionType()); |
||||
|
e.setMobile(formDTO.getMobile()); |
||||
|
e.setReason(formDTO.getReason()); |
||||
|
e.setRemark(formDTO.getRemark()); |
||||
|
update(e,w); |
||||
|
//TODO 通知
|
||||
|
} |
||||
|
|
||||
|
/** |
||||
|
* Desc: 取消关注 |
||||
|
* @param formDTO |
||||
|
* @author zxc |
||||
|
* @date 2022/3/28 13:51 |
||||
|
*/ |
||||
|
@Override |
||||
|
@Transactional(rollbackFor = Exception.class) |
||||
|
public void cancelAttention(CancelAttentionPackageFormDTO formDTO) { |
||||
|
if (CollectionUtils.isNotEmpty(formDTO.getIdCards())){ |
||||
|
baseDao.cancelAttention(formDTO.getIdCards(), formDTO.getAttentionType()); |
||||
|
} |
||||
|
} |
||||
|
|
||||
|
} |
||||
@ -0,0 +1,83 @@ |
|||||
|
package com.epmet.service.impl; |
||||
|
|
||||
|
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; |
||||
|
import com.baomidou.mybatisplus.core.metadata.IPage; |
||||
|
import com.epmet.commons.mybatis.service.impl.BaseServiceImpl; |
||||
|
import com.epmet.commons.tools.constant.FieldConstant; |
||||
|
import com.epmet.commons.tools.page.PageData; |
||||
|
import com.epmet.commons.tools.utils.ConvertUtils; |
||||
|
import com.epmet.dao.IcFollowUpRecordDao; |
||||
|
import com.epmet.dto.IcFollowUpRecordDTO; |
||||
|
import com.epmet.entity.IcFollowUpRecordEntity; |
||||
|
import com.epmet.service.IcFollowUpRecordService; |
||||
|
import org.apache.commons.lang3.StringUtils; |
||||
|
import org.springframework.stereotype.Service; |
||||
|
import org.springframework.transaction.annotation.Transactional; |
||||
|
|
||||
|
import java.util.Arrays; |
||||
|
import java.util.List; |
||||
|
import java.util.Map; |
||||
|
|
||||
|
/** |
||||
|
* 随访记录表 |
||||
|
* |
||||
|
* @author generator generator@elink-cn.com |
||||
|
* @since v1.0.0 2022-03-25 |
||||
|
*/ |
||||
|
@Service |
||||
|
public class IcFollowUpRecordServiceImpl extends BaseServiceImpl<IcFollowUpRecordDao, IcFollowUpRecordEntity> implements IcFollowUpRecordService { |
||||
|
|
||||
|
|
||||
|
@Override |
||||
|
public PageData<IcFollowUpRecordDTO> page(Map<String, Object> params) { |
||||
|
IPage<IcFollowUpRecordEntity> page = baseDao.selectPage( |
||||
|
getPage(params, FieldConstant.CREATED_TIME, false), |
||||
|
getWrapper(params) |
||||
|
); |
||||
|
return getPageData(page, IcFollowUpRecordDTO.class); |
||||
|
} |
||||
|
|
||||
|
@Override |
||||
|
public List<IcFollowUpRecordDTO> list(Map<String, Object> params) { |
||||
|
List<IcFollowUpRecordEntity> entityList = baseDao.selectList(getWrapper(params)); |
||||
|
|
||||
|
return ConvertUtils.sourceToTarget(entityList, IcFollowUpRecordDTO.class); |
||||
|
} |
||||
|
|
||||
|
private QueryWrapper<IcFollowUpRecordEntity> getWrapper(Map<String, Object> params){ |
||||
|
String id = (String)params.get(FieldConstant.ID_HUMP); |
||||
|
|
||||
|
QueryWrapper<IcFollowUpRecordEntity> wrapper = new QueryWrapper<>(); |
||||
|
wrapper.eq(StringUtils.isNotBlank(id), FieldConstant.ID, id); |
||||
|
|
||||
|
return wrapper; |
||||
|
} |
||||
|
|
||||
|
@Override |
||||
|
public IcFollowUpRecordDTO get(String id) { |
||||
|
IcFollowUpRecordEntity entity = baseDao.selectById(id); |
||||
|
return ConvertUtils.sourceToTarget(entity, IcFollowUpRecordDTO.class); |
||||
|
} |
||||
|
|
||||
|
@Override |
||||
|
@Transactional(rollbackFor = Exception.class) |
||||
|
public void save(IcFollowUpRecordDTO dto) { |
||||
|
IcFollowUpRecordEntity entity = ConvertUtils.sourceToTarget(dto, IcFollowUpRecordEntity.class); |
||||
|
insert(entity); |
||||
|
} |
||||
|
|
||||
|
@Override |
||||
|
@Transactional(rollbackFor = Exception.class) |
||||
|
public void update(IcFollowUpRecordDTO dto) { |
||||
|
IcFollowUpRecordEntity entity = ConvertUtils.sourceToTarget(dto, IcFollowUpRecordEntity.class); |
||||
|
updateById(entity); |
||||
|
} |
||||
|
|
||||
|
@Override |
||||
|
@Transactional(rollbackFor = Exception.class) |
||||
|
public void delete(String[] ids) { |
||||
|
// 逻辑删除(@TableLogic 注解)
|
||||
|
baseDao.deleteBatchIds(Arrays.asList(ids)); |
||||
|
} |
||||
|
|
||||
|
} |
||||
@ -0,0 +1,354 @@ |
|||||
|
package com.epmet.service.impl; |
||||
|
|
||||
|
import com.alibaba.excel.EasyExcel; |
||||
|
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; |
||||
|
import com.baomidou.mybatisplus.core.metadata.IPage; |
||||
|
import com.epmet.commons.mybatis.service.impl.BaseServiceImpl; |
||||
|
import com.epmet.commons.tools.constant.AppClientConstant; |
||||
|
import com.epmet.commons.tools.constant.FieldConstant; |
||||
|
import com.epmet.commons.tools.constant.NumConstant; |
||||
|
import com.epmet.commons.tools.constant.ServiceConstant; |
||||
|
import com.epmet.commons.tools.dto.result.CustomerStaffInfoCacheResult; |
||||
|
import com.epmet.commons.tools.exception.EpmetErrorCode; |
||||
|
import com.epmet.commons.tools.exception.EpmetException; |
||||
|
import com.epmet.commons.tools.exception.ExceptionUtils; |
||||
|
import com.epmet.commons.tools.exception.RenException; |
||||
|
import com.epmet.commons.tools.feign.ResultDataResolver; |
||||
|
import com.epmet.commons.tools.page.PageData; |
||||
|
import com.epmet.commons.tools.redis.common.CustomerOrgRedis; |
||||
|
import com.epmet.commons.tools.redis.common.CustomerStaffRedis; |
||||
|
import com.epmet.commons.tools.redis.common.bean.AgencyInfoCache; |
||||
|
import com.epmet.commons.tools.utils.ConvertUtils; |
||||
|
import com.epmet.commons.tools.utils.EpmetRequestHolder; |
||||
|
import com.epmet.commons.tools.utils.FileUtils; |
||||
|
import com.epmet.commons.tools.utils.Result; |
||||
|
import com.epmet.constants.ImportTaskConstants; |
||||
|
import com.epmet.dao.IcNatDao; |
||||
|
import com.epmet.dto.IcNatDTO; |
||||
|
import com.epmet.dto.IcNoticeDTO; |
||||
|
import com.epmet.dto.form.AddIcNatFormDTO; |
||||
|
import com.epmet.dto.form.ImportTaskCommonFormDTO; |
||||
|
import com.epmet.dto.form.LoginUserDetailsFormDTO; |
||||
|
import com.epmet.dto.form.MyNatListFormDTO; |
||||
|
import com.epmet.dto.result.LoginUserDetailsResultDTO; |
||||
|
import com.epmet.dto.form.SendNoticeFormDTO; |
||||
|
import com.epmet.dto.result.MyNatListResultDTO; |
||||
|
import com.epmet.dto.result.NatListResultDTO; |
||||
|
import com.epmet.dto.result.UploadImgResultDTO; |
||||
|
import com.epmet.entity.IcNatEntity; |
||||
|
import com.epmet.excel.data.IcNatImportExcelData; |
||||
|
import com.epmet.excel.handler.IcNatExcelImportListener; |
||||
|
import com.epmet.feign.EpmetCommonServiceOpenFeignClient; |
||||
|
import com.epmet.feign.EpmetUserOpenFeignClient; |
||||
|
import com.epmet.feign.OssFeignClient; |
||||
|
import com.epmet.service.IcNatService; |
||||
|
import com.epmet.service.IcNoticeService; |
||||
|
import com.github.pagehelper.PageHelper; |
||||
|
import com.github.pagehelper.PageInfo; |
||||
|
import lombok.extern.slf4j.Slf4j; |
||||
|
import org.apache.commons.collections4.CollectionUtils; |
||||
|
import org.springframework.beans.factory.annotation.Autowired; |
||||
|
import org.apache.commons.fileupload.FileItem; |
||||
|
import org.apache.commons.fileupload.FileItemFactory; |
||||
|
import org.apache.commons.fileupload.disk.DiskFileItemFactory; |
||||
|
import org.apache.commons.lang3.StringUtils; |
||||
|
import org.apache.http.entity.ContentType; |
||||
|
import org.springframework.beans.factory.annotation.Autowired; |
||||
|
import org.springframework.scheduling.annotation.Async; |
||||
|
import org.springframework.stereotype.Service; |
||||
|
import org.springframework.transaction.annotation.Transactional; |
||||
|
import org.springframework.web.multipart.commons.CommonsMultipartFile; |
||||
|
|
||||
|
import java.util.ArrayList; |
||||
|
import java.io.IOException; |
||||
|
import java.io.OutputStream; |
||||
|
import java.nio.file.Files; |
||||
|
import java.nio.file.Path; |
||||
|
import java.util.Arrays; |
||||
|
import java.util.List; |
||||
|
import java.util.Map; |
||||
|
import java.util.UUID; |
||||
|
|
||||
|
/** |
||||
|
* 核酸上报记录 |
||||
|
* |
||||
|
* @author generator generator@elink-cn.com |
||||
|
* @since v1.0.0 2022-03-25 |
||||
|
*/ |
||||
|
@Service |
||||
|
@Slf4j |
||||
|
public class IcNatServiceImpl extends BaseServiceImpl<IcNatDao, IcNatEntity> implements IcNatService, ResultDataResolver { |
||||
|
|
||||
|
@Autowired |
||||
|
private EpmetCommonServiceOpenFeignClient commonServiceOpenFeignClient; |
||||
|
|
||||
|
@Autowired |
||||
|
private EpmetUserOpenFeignClient epmetUserOpenFeignClient; |
||||
|
|
||||
|
@Autowired |
||||
|
private IcNoticeService icNoticeService; |
||||
|
|
||||
|
@Autowired |
||||
|
private OssFeignClient ossFeignClient; |
||||
|
|
||||
|
/** |
||||
|
* @Author sun |
||||
|
* @Description 核酸检测-上报核酸记录 |
||||
|
**/ |
||||
|
@Override |
||||
|
@Transactional(rollbackFor = Exception.class) |
||||
|
public void add(AddIcNatFormDTO formDTO) { |
||||
|
//1.获取所填居民所属组织缓存信息
|
||||
|
AgencyInfoCache agencyInfo = CustomerOrgRedis.getAgencyInfo(formDTO.getAgencyId()); |
||||
|
if (null == agencyInfo) { |
||||
|
throw new RenException(String.format("获取组织缓存信息失败%s", formDTO.getAgencyId())); |
||||
|
} |
||||
|
//2.新增核酸记录表数据
|
||||
|
IcNatEntity entity = ConvertUtils.sourceToTarget(formDTO, IcNatEntity.class); |
||||
|
entity.setPids(agencyInfo.getPids()); |
||||
|
insert(entity); |
||||
|
|
||||
|
//3.新增通知表信息
|
||||
|
if (formDTO.getChannel().size() > NumConstant.ZERO) { |
||||
|
SendNoticeFormDTO dto = new SendNoticeFormDTO(); |
||||
|
List<SendNoticeFormDTO.UserListBean> userList = new ArrayList<>(); |
||||
|
userList.add(ConvertUtils.sourceToTarget(formDTO, SendNoticeFormDTO.UserListBean.class)); |
||||
|
dto.setCustomerId(formDTO.getCustomerId()); |
||||
|
dto.setUserList(userList); |
||||
|
dto.setChannel(formDTO.getChannel()); |
||||
|
dto.setOrigin("2"); |
||||
|
dto.setContent(formDTO.getContent()); |
||||
|
dto.setOrgName(agencyInfo.getOrganizationName()); |
||||
|
icNoticeService.sendNotice(dto); |
||||
|
} |
||||
|
|
||||
|
} |
||||
|
|
||||
|
/** |
||||
|
* @Author sun |
||||
|
* @Description 核酸检测-居民端我的上报 |
||||
|
**/ |
||||
|
@Override |
||||
|
public List<MyNatListResultDTO> myNatList(MyNatListFormDTO formDTO) { |
||||
|
//1.根据身份证号查询该人员所有核酸记录(居民端录入、数字平台录入、数字平台导入)
|
||||
|
List<MyNatListResultDTO> resultList = baseDao.getMyNatList(formDTO); |
||||
|
return resultList; |
||||
|
} |
||||
|
|
||||
|
/** |
||||
|
* @Author sun |
||||
|
* @Description 【核酸】核酸检测信息列表 |
||||
|
* |
||||
|
* @return*/ |
||||
|
@Override |
||||
|
public PageData<NatListResultDTO> natList(MyNatListFormDTO formDTO) { |
||||
|
//1.根据orgType值判断是查询当前组织下还是整个客户下数据
|
||||
|
if ("current".equals(formDTO.getOrgType())) { |
||||
|
//获取工作人员缓存信息
|
||||
|
CustomerStaffInfoCacheResult staffInfo = CustomerStaffRedis.getStaffInfo(formDTO.getCustomerId(), formDTO.getUserId()); |
||||
|
if (null == staffInfo) { |
||||
|
throw new EpmetException(String.format("查询工作人员%s缓存信息失败...", formDTO.getUserId())); |
||||
|
} |
||||
|
formDTO.setAgencyId(staffInfo.getAgencyId()); |
||||
|
} |
||||
|
|
||||
|
//2.按条件查询业务数据
|
||||
|
PageInfo<NatListResultDTO> data = PageHelper.startPage(formDTO.getPageNo(), formDTO.getPageSize(), formDTO.isPage()) |
||||
|
.doSelectPageInfo(() -> baseDao.getNatList(formDTO)); |
||||
|
return new PageData(data.getList(),data.getTotal()); |
||||
|
} |
||||
|
|
||||
|
/** |
||||
|
* @Author sun |
||||
|
* @Description 【核酸】核酸检测信息详情 |
||||
|
**/ |
||||
|
@Override |
||||
|
public IcNatDTO detail(MyNatListFormDTO formDTO) { |
||||
|
IcNatDTO resultDTO = new IcNatDTO(); |
||||
|
//1.查询核酸记录信息
|
||||
|
IcNatEntity entity = baseDao.selectById(formDTO.getIcNatId()); |
||||
|
if (null == resultDTO) { |
||||
|
return resultDTO; |
||||
|
} |
||||
|
resultDTO = ConvertUtils.sourceToTarget(entity, IcNatDTO.class); |
||||
|
|
||||
|
//2.查询对应的通知记录信息
|
||||
|
IcNoticeDTO dto = icNoticeService.getNotice(entity.getCustomerId(), entity.getIdCard()); |
||||
|
if (null != dto) { |
||||
|
resultDTO.setChannel(dto.getChannelList()); |
||||
|
resultDTO.setContent(dto.getContent()); |
||||
|
} |
||||
|
|
||||
|
return resultDTO; |
||||
|
} |
||||
|
|
||||
|
/** |
||||
|
* @Author sun |
||||
|
* @Description 【核酸】核酸检测信息修改 |
||||
|
**/ |
||||
|
@Override |
||||
|
@Transactional(rollbackFor = Exception.class) |
||||
|
public void edit(AddIcNatFormDTO formDTO) { |
||||
|
//1.更新核酸记录表数据
|
||||
|
IcNatEntity entity = ConvertUtils.sourceToTarget(formDTO, IcNatEntity.class); |
||||
|
entity.setId(formDTO.getIcNatId()); |
||||
|
if (!updateById(entity)) { |
||||
|
log.error(String.format("数据修改失败,核酸记录Id->%s", formDTO.getIcNatId())); |
||||
|
throw new EpmetException(EpmetErrorCode.EPMET_COMMON_OPERATION_FAIL.getCode(), "核酸记录修改失败"); |
||||
|
} |
||||
|
|
||||
|
//3.新增通知表信息
|
||||
|
if (CollectionUtils.isNotEmpty(formDTO.getChannel())) { |
||||
|
IcNatEntity icNatEntity = baseDao.selectById(formDTO.getIcNatId()); |
||||
|
//1.获取所填居民所属组织缓存信息
|
||||
|
AgencyInfoCache agencyInfo = CustomerOrgRedis.getAgencyInfo(icNatEntity.getAgencyId()); |
||||
|
if (null == agencyInfo) { |
||||
|
throw new RenException(String.format("获取组织缓存信息失败%s", icNatEntity.getAgencyId())); |
||||
|
} |
||||
|
SendNoticeFormDTO dto = new SendNoticeFormDTO(); |
||||
|
List<SendNoticeFormDTO.UserListBean> userList = new ArrayList<>(); |
||||
|
userList.add(ConvertUtils.sourceToTarget(formDTO, SendNoticeFormDTO.UserListBean.class)); |
||||
|
dto.setCustomerId(formDTO.getCustomerId()); |
||||
|
dto.setUserList(userList); |
||||
|
dto.setChannel(formDTO.getChannel()); |
||||
|
dto.setOrigin("2"); |
||||
|
dto.setContent(formDTO.getContent()); |
||||
|
dto.setOrgName(agencyInfo.getOrganizationName()); |
||||
|
icNoticeService.sendNotice(dto); |
||||
|
} |
||||
|
} |
||||
|
|
||||
|
/** |
||||
|
* @Author sun |
||||
|
* @Description 【核酸】核酸检测信息删除/取消同步 |
||||
|
**/ |
||||
|
@Override |
||||
|
@Transactional(rollbackFor = Exception.class) |
||||
|
public void del(MyNatListFormDTO formDTO) { |
||||
|
//1.物理删除业务数据
|
||||
|
if (baseDao.delById(formDTO.getIcNatId()) < NumConstant.ONE) { |
||||
|
log.error(String.format("数据删除/取消同步失败,核酸记录Id->%s", formDTO.getIcNatId())); |
||||
|
throw new EpmetException(EpmetErrorCode.EPMET_COMMON_OPERATION_FAIL.getCode(), "数据操作失败"); |
||||
|
} |
||||
|
} |
||||
|
|
||||
|
/** |
||||
|
* @Author sun |
||||
|
* @Description 【核酸】核酸检测信息同步 |
||||
|
**/ |
||||
|
@Override |
||||
|
@Transactional(rollbackFor = Exception.class) |
||||
|
public void synchro(MyNatListFormDTO formDTO) { |
||||
|
//1.获取工作人员缓存数据
|
||||
|
CustomerStaffInfoCacheResult staffInfo = CustomerStaffRedis.getStaffInfo(formDTO.getCustomerId(), formDTO.getUserId()); |
||||
|
if (null == staffInfo) { |
||||
|
throw new EpmetException(String.format("查询工作人员%s缓存信息失败...", formDTO.getUserId())); |
||||
|
} |
||||
|
//1.根据核酸记录Id查询业务数据并进行必要校验
|
||||
|
IcNatEntity entity = baseDao.selectById(formDTO.getIcNatId()); |
||||
|
if (null == entity || staffInfo.getAgencyId().equals(entity.getAgencyId()) |
||||
|
|| (!"import".equals(entity.getUserType()) && !"synchro".equals(entity.getUserType()))) { |
||||
|
log.error(String.format("数据同步失败,核酸记录Id->%s", formDTO.getIcNatId())); |
||||
|
throw new EpmetException(EpmetErrorCode.EPMET_COMMON_OPERATION_FAIL.getCode(), "数据同步失败,不是导入数据或非本组织数据"); |
||||
|
} |
||||
|
|
||||
|
//3.待同步组织新增业务数据
|
||||
|
entity.setId(""); |
||||
|
entity.setAgencyId(staffInfo.getAgencyId()); |
||||
|
entity.setPids(staffInfo.getAgencyPIds()); |
||||
|
entity.setUserType("synchro"); |
||||
|
insert(entity); |
||||
|
} |
||||
|
|
||||
|
@Async |
||||
|
@Override |
||||
|
public void execAsyncExcelImport(Path filePath, String importTaskId) { |
||||
|
String userId = null; |
||||
|
|
||||
|
try { |
||||
|
userId = EpmetRequestHolder.getHeader(AppClientConstant.USER_ID); |
||||
|
String app = EpmetRequestHolder.getHeader(AppClientConstant.APP); |
||||
|
String client = EpmetRequestHolder.getHeader(AppClientConstant.CLIENT); |
||||
|
|
||||
|
LoginUserDetailsFormDTO ludf = new LoginUserDetailsFormDTO(app, client, userId); |
||||
|
LoginUserDetailsResultDTO loginUserDetails = getResultDataOrThrowsException(epmetUserOpenFeignClient.getLoginUserDetails(ludf), ServiceConstant.EPMET_USER_SERVER, |
||||
|
EpmetErrorCode.SERVER_ERROR.getCode(), "调用user出错", ""); |
||||
|
|
||||
|
IcNatExcelImportListener listener = new IcNatExcelImportListener(userId, loginUserDetails.getAgencyId(), loginUserDetails.getOrgIdPath(), this); |
||||
|
|
||||
|
EasyExcel.read(filePath.toFile(), IcNatImportExcelData.class, listener).headRowNumber(2).sheet(0).doRead(); |
||||
|
|
||||
|
Path errorDescFile = null; |
||||
|
String errorDesFileUrl = null; |
||||
|
List<IcNatImportExcelData.ErrorRow> errorRows = listener.getErrorRows(); |
||||
|
|
||||
|
// 生成并上传错误文件
|
||||
|
try { |
||||
|
// 文件生成
|
||||
|
Path errorDescDir = FileUtils.getAndCreateDirUnderEpmetFilesDir("ic_nat", "import", "error_des"); |
||||
|
String fileName = UUID.randomUUID().toString().concat(".xlsx"); |
||||
|
errorDescFile = errorDescDir.resolve(fileName); |
||||
|
|
||||
|
FileItemFactory factory = new DiskFileItemFactory(16, errorDescDir.toFile()); |
||||
|
FileItem fileItem = factory.createItem("file", ContentType.APPLICATION_OCTET_STREAM.toString(), true, fileName); |
||||
|
OutputStream os = fileItem.getOutputStream(); |
||||
|
|
||||
|
EasyExcel.write(os, IcNatImportExcelData.ErrorRow.class).sheet("导入失败列表").doWrite(errorRows); |
||||
|
|
||||
|
// 文件上传oss
|
||||
|
Result<UploadImgResultDTO> errorDesFileUploadResult = ossFeignClient.uploadImportTaskDescFile(new CommonsMultipartFile(fileItem)); |
||||
|
if (errorDesFileUploadResult.success()) { |
||||
|
errorDesFileUrl = errorDesFileUploadResult.getData().getUrl(); |
||||
|
} |
||||
|
} finally { |
||||
|
if (Files.exists(errorDescFile)) { |
||||
|
Files.delete(errorDescFile); |
||||
|
} |
||||
|
} |
||||
|
|
||||
|
ImportTaskCommonFormDTO importFinishTaskForm = new ImportTaskCommonFormDTO(); |
||||
|
importFinishTaskForm.setTaskId(importTaskId); |
||||
|
importFinishTaskForm.setProcessStatus(errorRows.size() <= 0 ? ImportTaskConstants.PROCESS_STATUS_FINISHED_SUCCESS : ImportTaskConstants.PROCESS_STATUS_FINISHED_FAIL); |
||||
|
importFinishTaskForm.setOperatorId(userId); |
||||
|
importFinishTaskForm.setResultDesc(""); |
||||
|
importFinishTaskForm.setResultDescFilePath(errorDesFileUrl); |
||||
|
|
||||
|
Result result = commonServiceOpenFeignClient.finishImportTask(importFinishTaskForm); |
||||
|
if (!result.success()) { |
||||
|
log.error("【核酸检测导入】finishImportTask失败"); |
||||
|
} |
||||
|
} catch (Exception e) { |
||||
|
String errorMsg = ExceptionUtils.getErrorStackTrace(e); |
||||
|
log.error("【核酸检测导入】出错:{}", errorMsg); |
||||
|
|
||||
|
ImportTaskCommonFormDTO importFinishTaskForm = new ImportTaskCommonFormDTO(); |
||||
|
importFinishTaskForm.setTaskId(importTaskId); |
||||
|
importFinishTaskForm.setProcessStatus(ImportTaskConstants.PROCESS_STATUS_FINISHED_FAIL); |
||||
|
importFinishTaskForm.setOperatorId(userId); |
||||
|
importFinishTaskForm.setResultDesc("导入失败"); |
||||
|
|
||||
|
Result result = commonServiceOpenFeignClient.finishImportTask(importFinishTaskForm); |
||||
|
if (!result.success()) { |
||||
|
log.error("【核酸检测导入】导入记录状态修改为'完成'失败"); |
||||
|
} |
||||
|
} finally { |
||||
|
// 删除临时文件
|
||||
|
if (Files.exists(filePath)) { |
||||
|
try { |
||||
|
Files.delete(filePath); |
||||
|
} catch (IOException e) { |
||||
|
e.printStackTrace(); |
||||
|
} |
||||
|
} |
||||
|
} |
||||
|
|
||||
|
} |
||||
|
|
||||
|
/** |
||||
|
* 批量持久化 |
||||
|
* @param entities |
||||
|
*/ |
||||
|
public void batchPersist(List<IcNatEntity> entities) { |
||||
|
insertBatch(entities); |
||||
|
} |
||||
|
} |
||||
@ -0,0 +1,205 @@ |
|||||
|
package com.epmet.service.impl; |
||||
|
|
||||
|
import com.alibaba.fastjson.JSON; |
||||
|
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; |
||||
|
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; |
||||
|
import com.epmet.commons.mybatis.service.impl.BaseServiceImpl; |
||||
|
import com.epmet.commons.tools.constant.*; |
||||
|
import com.epmet.commons.tools.enums.ChannelEnum; |
||||
|
import com.epmet.commons.tools.page.PageData; |
||||
|
import com.epmet.commons.tools.utils.ConvertUtils; |
||||
|
import com.epmet.commons.tools.utils.Result; |
||||
|
import com.epmet.constant.SmsTemplateConstant; |
||||
|
import com.epmet.constant.UserMessageTypeConstant; |
||||
|
import com.epmet.dao.IcNoticeDao; |
||||
|
import com.epmet.dto.IcNoticeDTO; |
||||
|
import com.epmet.dto.form.IcNoticeFormDTO; |
||||
|
import com.epmet.dto.form.ProjectSendMsgFormDTO; |
||||
|
import com.epmet.dto.form.SendNoticeFormDTO; |
||||
|
import com.epmet.dto.form.UserMessageFormDTO; |
||||
|
import com.epmet.entity.IcNoticeEntity; |
||||
|
import com.epmet.feign.MessageFeignClient; |
||||
|
import com.epmet.service.IcNoticeService; |
||||
|
import com.github.pagehelper.PageHelper; |
||||
|
import com.github.pagehelper.PageInfo; |
||||
|
import lombok.extern.slf4j.Slf4j; |
||||
|
import org.apache.commons.collections4.CollectionUtils; |
||||
|
import org.apache.commons.lang3.StringUtils; |
||||
|
import org.springframework.stereotype.Service; |
||||
|
import org.springframework.transaction.annotation.Transactional; |
||||
|
|
||||
|
import javax.annotation.Resource; |
||||
|
import java.util.ArrayList; |
||||
|
import java.util.Arrays; |
||||
|
import java.util.List; |
||||
|
import java.util.Map; |
||||
|
import java.util.stream.Collectors; |
||||
|
|
||||
|
/** |
||||
|
* 防疫通知 |
||||
|
* |
||||
|
* @author generator generator@elink-cn.com |
||||
|
* @since v1.0.0 2022-03-28 |
||||
|
*/ |
||||
|
@Slf4j |
||||
|
@Service |
||||
|
public class IcNoticeServiceImpl extends BaseServiceImpl<IcNoticeDao, IcNoticeEntity> implements IcNoticeService { |
||||
|
|
||||
|
@Resource |
||||
|
private MessageFeignClient messageFeignClient; |
||||
|
|
||||
|
@Override |
||||
|
public PageData<IcNoticeDTO> page(IcNoticeFormDTO formDTO) { |
||||
|
PageHelper.startPage(formDTO.getPageNo(), formDTO.getPageSize()); |
||||
|
LambdaQueryWrapper<IcNoticeEntity> wrapper = new LambdaQueryWrapper<>(); |
||||
|
wrapper.eq(IcNoticeEntity::getCustomerId, formDTO.getCustomerId()); |
||||
|
wrapper.eq(IcNoticeEntity::getIdCard, formDTO.getIdCard()); |
||||
|
wrapper.orderByDesc(IcNoticeEntity::getCreatedTime); |
||||
|
List<IcNoticeEntity> list = baseDao.selectList(wrapper); |
||||
|
PageInfo<IcNoticeEntity> pageInfo = new PageInfo<>(list); |
||||
|
List<IcNoticeDTO> dtoList = ConvertUtils.sourceToTarget(list, IcNoticeDTO.class); |
||||
|
|
||||
|
if (CollectionUtils.isNotEmpty(dtoList)) { |
||||
|
dtoList.forEach(item -> { |
||||
|
List<String> channelList = Arrays.asList(item.getChannel().split(StrConstant.COMMA)); |
||||
|
if (channelList.size() == NumConstant.ONE) { |
||||
|
item.setChannel(ChannelEnum.getName(channelList.get(0))); |
||||
|
} else { |
||||
|
item.setChannel(ChannelEnum.getName(NumConstant.TWO_STR)); |
||||
|
} |
||||
|
}); |
||||
|
} |
||||
|
return new PageData<>(dtoList, pageInfo.getTotal()); |
||||
|
} |
||||
|
|
||||
|
@Override |
||||
|
public List<IcNoticeDTO> list(Map<String, Object> params) { |
||||
|
List<IcNoticeEntity> entityList = baseDao.selectList(getWrapper(params)); |
||||
|
|
||||
|
return ConvertUtils.sourceToTarget(entityList, IcNoticeDTO.class); |
||||
|
} |
||||
|
|
||||
|
private QueryWrapper<IcNoticeEntity> getWrapper(Map<String, Object> params){ |
||||
|
String id = (String)params.get(FieldConstant.ID_HUMP); |
||||
|
|
||||
|
QueryWrapper<IcNoticeEntity> wrapper = new QueryWrapper<>(); |
||||
|
wrapper.eq(StringUtils.isNotBlank(id), FieldConstant.ID, id); |
||||
|
|
||||
|
return wrapper; |
||||
|
} |
||||
|
|
||||
|
@Override |
||||
|
public IcNoticeDTO get(String id) { |
||||
|
IcNoticeEntity entity = baseDao.selectById(id); |
||||
|
return ConvertUtils.sourceToTarget(entity, IcNoticeDTO.class); |
||||
|
} |
||||
|
|
||||
|
@Override |
||||
|
@Transactional(rollbackFor = Exception.class) |
||||
|
public void save(IcNoticeDTO dto) { |
||||
|
IcNoticeEntity entity = ConvertUtils.sourceToTarget(dto, IcNoticeEntity.class); |
||||
|
insert(entity); |
||||
|
} |
||||
|
|
||||
|
@Override |
||||
|
@Transactional(rollbackFor = Exception.class) |
||||
|
public void update(IcNoticeDTO dto) { |
||||
|
IcNoticeEntity entity = ConvertUtils.sourceToTarget(dto, IcNoticeEntity.class); |
||||
|
updateById(entity); |
||||
|
} |
||||
|
|
||||
|
@Override |
||||
|
@Transactional(rollbackFor = Exception.class) |
||||
|
public void delete(String[] ids) { |
||||
|
// 逻辑删除(@TableLogic 注解)
|
||||
|
baseDao.deleteBatchIds(Arrays.asList(ids)); |
||||
|
} |
||||
|
|
||||
|
/** |
||||
|
* 发送通知 |
||||
|
* |
||||
|
* @param formDTO |
||||
|
* @Param formDTO |
||||
|
* @Return |
||||
|
* @Author zhaoqifeng |
||||
|
* @Date 2022/3/28 14:19 |
||||
|
*/ |
||||
|
@Override |
||||
|
public void sendNotice(SendNoticeFormDTO formDTO) { |
||||
|
//保存消息
|
||||
|
String channel = StringUtils.join(formDTO.getChannel(), StrConstant.COMMA); |
||||
|
List<IcNoticeEntity> entityList = formDTO.getUserList().stream().map(item -> { |
||||
|
IcNoticeEntity entity = new IcNoticeEntity(); |
||||
|
entity.setCustomerId(formDTO.getCustomerId()); |
||||
|
entity.setChannel(channel); |
||||
|
entity.setContent(formDTO.getContent()); |
||||
|
entity.setOrigin(formDTO.getOrigin()); |
||||
|
entity.setUserId(item.getUserId()); |
||||
|
entity.setMobile(item.getMobile()); |
||||
|
entity.setIdCard(item.getIdCard()); |
||||
|
entity.setOrgName(formDTO.getOrgName()); |
||||
|
return entity; |
||||
|
}).collect(Collectors.toList()); |
||||
|
insertBatch(entityList); |
||||
|
|
||||
|
//通知
|
||||
|
List<UserMessageFormDTO> msgList = new ArrayList<>(); |
||||
|
//短信消息
|
||||
|
List<ProjectSendMsgFormDTO> smsList = new ArrayList<>(); |
||||
|
|
||||
|
entityList.forEach(item -> { |
||||
|
if (StringUtils.isNotBlank(item.getUserId())) { |
||||
|
UserMessageFormDTO messageFormDTO = new UserMessageFormDTO(); |
||||
|
messageFormDTO.setCustomerId(item.getCustomerId()); |
||||
|
messageFormDTO.setApp(AppClientConstant.APP_GOV); |
||||
|
messageFormDTO.setGridId(StrConstant.STAR); |
||||
|
messageFormDTO.setUserId(item.getUserId()); |
||||
|
messageFormDTO.setTitle("您有一条通知消息!"); |
||||
|
messageFormDTO.setMessageContent(item.getContent()); |
||||
|
messageFormDTO.setReadFlag(Constant.UNREAD); |
||||
|
messageFormDTO.setMessageType(UserMessageTypeConstant.ANTIEPIDEMIC); |
||||
|
messageFormDTO.setTargetId(item.getId()); |
||||
|
msgList.add(messageFormDTO); |
||||
|
} |
||||
|
//TODO
|
||||
|
if (StringUtils.isNotBlank(item.getMobile())) { |
||||
|
ProjectSendMsgFormDTO sms = new ProjectSendMsgFormDTO(); |
||||
|
sms.setCustomerId(item.getCustomerId()); |
||||
|
sms.setMobile(item.getMobile()); |
||||
|
sms.setAliyunTemplateCode(SmsTemplateConstant.PROJECT_OVERDUE); |
||||
|
sms.setParameterKey("send_msg"); |
||||
|
smsList.add(sms); |
||||
|
} |
||||
|
}); |
||||
|
|
||||
|
Result result = messageFeignClient.saveUserMessageList(msgList); |
||||
|
if (!result.success()) { |
||||
|
log.error("发送小程序消息失败" + JSON.toJSONString(result)); |
||||
|
} |
||||
|
} |
||||
|
|
||||
|
/** |
||||
|
* 获取人员最新一条通知 |
||||
|
* |
||||
|
* @param idCard |
||||
|
* @Param idCard |
||||
|
* @Return {@link IcNoticeDTO} |
||||
|
* @Author zhaoqifeng |
||||
|
* @Date 2022/3/28 15:43 |
||||
|
*/ |
||||
|
@Override |
||||
|
public IcNoticeDTO getNotice(String customerId, String idCard) { |
||||
|
IcNoticeDTO result = new IcNoticeDTO(); |
||||
|
LambdaQueryWrapper<IcNoticeEntity> wrapper = new LambdaQueryWrapper<>(); |
||||
|
wrapper.eq(IcNoticeEntity::getCustomerId, customerId); |
||||
|
wrapper.eq(IcNoticeEntity::getIdCard, idCard); |
||||
|
wrapper.orderByDesc(IcNoticeEntity::getCreatedTime); |
||||
|
List<IcNoticeEntity> list = baseDao.selectList(wrapper); |
||||
|
if (CollectionUtils.isNotEmpty(list)) { |
||||
|
result = ConvertUtils.sourceToTarget(list.get(NumConstant.ZERO), IcNoticeDTO.class); |
||||
|
result.setChannelList(Arrays.asList(result.getChannel().split(StrConstant.COMMA))); |
||||
|
} |
||||
|
return result; |
||||
|
} |
||||
|
|
||||
|
} |
||||
@ -0,0 +1,83 @@ |
|||||
|
package com.epmet.service.impl; |
||||
|
|
||||
|
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; |
||||
|
import com.baomidou.mybatisplus.core.metadata.IPage; |
||||
|
import com.epmet.commons.mybatis.service.impl.BaseServiceImpl; |
||||
|
import com.epmet.commons.tools.page.PageData; |
||||
|
import com.epmet.commons.tools.utils.ConvertUtils; |
||||
|
import com.epmet.commons.tools.constant.FieldConstant; |
||||
|
import com.epmet.dao.IcResiVaccineDao; |
||||
|
import com.epmet.dto.IcResiVaccineDTO; |
||||
|
import com.epmet.entity.IcResiVaccineEntity; |
||||
|
import com.epmet.service.IcResiVaccineService; |
||||
|
import org.apache.commons.lang3.StringUtils; |
||||
|
import org.springframework.beans.factory.annotation.Autowired; |
||||
|
import org.springframework.stereotype.Service; |
||||
|
import org.springframework.transaction.annotation.Transactional; |
||||
|
|
||||
|
import java.util.Arrays; |
||||
|
import java.util.List; |
||||
|
import java.util.Map; |
||||
|
|
||||
|
/** |
||||
|
* 居民疫苗情况 |
||||
|
* |
||||
|
* @author generator generator@elink-cn.com |
||||
|
* @since v1.0.0 2022-03-28 |
||||
|
*/ |
||||
|
@Service |
||||
|
public class IcResiVaccineServiceImpl extends BaseServiceImpl<IcResiVaccineDao, IcResiVaccineEntity> implements IcResiVaccineService { |
||||
|
|
||||
|
@Override |
||||
|
public PageData<IcResiVaccineDTO> page(Map<String, Object> params) { |
||||
|
IPage<IcResiVaccineEntity> page = baseDao.selectPage( |
||||
|
getPage(params, FieldConstant.CREATED_TIME, false), |
||||
|
getWrapper(params) |
||||
|
); |
||||
|
return getPageData(page, IcResiVaccineDTO.class); |
||||
|
} |
||||
|
|
||||
|
@Override |
||||
|
public List<IcResiVaccineDTO> list(Map<String, Object> params) { |
||||
|
List<IcResiVaccineEntity> entityList = baseDao.selectList(getWrapper(params)); |
||||
|
|
||||
|
return ConvertUtils.sourceToTarget(entityList, IcResiVaccineDTO.class); |
||||
|
} |
||||
|
|
||||
|
private QueryWrapper<IcResiVaccineEntity> getWrapper(Map<String, Object> params){ |
||||
|
String id = (String)params.get(FieldConstant.ID_HUMP); |
||||
|
|
||||
|
QueryWrapper<IcResiVaccineEntity> wrapper = new QueryWrapper<>(); |
||||
|
wrapper.eq(StringUtils.isNotBlank(id), FieldConstant.ID, id); |
||||
|
|
||||
|
return wrapper; |
||||
|
} |
||||
|
|
||||
|
@Override |
||||
|
public IcResiVaccineDTO get(String id) { |
||||
|
IcResiVaccineEntity entity = baseDao.selectById(id); |
||||
|
return ConvertUtils.sourceToTarget(entity, IcResiVaccineDTO.class); |
||||
|
} |
||||
|
|
||||
|
@Override |
||||
|
@Transactional(rollbackFor = Exception.class) |
||||
|
public void save(IcResiVaccineDTO dto) { |
||||
|
IcResiVaccineEntity entity = ConvertUtils.sourceToTarget(dto, IcResiVaccineEntity.class); |
||||
|
insert(entity); |
||||
|
} |
||||
|
|
||||
|
@Override |
||||
|
@Transactional(rollbackFor = Exception.class) |
||||
|
public void update(IcResiVaccineDTO dto) { |
||||
|
IcResiVaccineEntity entity = ConvertUtils.sourceToTarget(dto, IcResiVaccineEntity.class); |
||||
|
updateById(entity); |
||||
|
} |
||||
|
|
||||
|
@Override |
||||
|
@Transactional(rollbackFor = Exception.class) |
||||
|
public void delete(String[] ids) { |
||||
|
// 逻辑删除(@TableLogic 注解)
|
||||
|
baseDao.deleteBatchIds(Arrays.asList(ids)); |
||||
|
} |
||||
|
|
||||
|
} |
||||
@ -0,0 +1,83 @@ |
|||||
|
package com.epmet.service.impl; |
||||
|
|
||||
|
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; |
||||
|
import com.baomidou.mybatisplus.core.metadata.IPage; |
||||
|
import com.epmet.commons.mybatis.service.impl.BaseServiceImpl; |
||||
|
import com.epmet.commons.tools.constant.FieldConstant; |
||||
|
import com.epmet.commons.tools.page.PageData; |
||||
|
import com.epmet.commons.tools.utils.ConvertUtils; |
||||
|
import com.epmet.dao.IcTripReportRecordDao; |
||||
|
import com.epmet.dto.IcTripReportRecordDTO; |
||||
|
import com.epmet.entity.IcTripReportRecordEntity; |
||||
|
import com.epmet.service.IcTripReportRecordService; |
||||
|
import org.apache.commons.lang3.StringUtils; |
||||
|
import org.springframework.stereotype.Service; |
||||
|
import org.springframework.transaction.annotation.Transactional; |
||||
|
|
||||
|
import java.util.Arrays; |
||||
|
import java.util.List; |
||||
|
import java.util.Map; |
||||
|
|
||||
|
/** |
||||
|
* 行程上报信息 |
||||
|
* |
||||
|
* @author generator generator@elink-cn.com |
||||
|
* @since v1.0.0 2022-03-25 |
||||
|
*/ |
||||
|
@Service |
||||
|
public class IcTripReportRecordServiceImpl extends BaseServiceImpl<IcTripReportRecordDao, IcTripReportRecordEntity> implements IcTripReportRecordService { |
||||
|
|
||||
|
|
||||
|
@Override |
||||
|
public PageData<IcTripReportRecordDTO> page(Map<String, Object> params) { |
||||
|
IPage<IcTripReportRecordEntity> page = baseDao.selectPage( |
||||
|
getPage(params, FieldConstant.CREATED_TIME, false), |
||||
|
getWrapper(params) |
||||
|
); |
||||
|
return getPageData(page, IcTripReportRecordDTO.class); |
||||
|
} |
||||
|
|
||||
|
@Override |
||||
|
public List<IcTripReportRecordDTO> list(Map<String, Object> params) { |
||||
|
List<IcTripReportRecordEntity> entityList = baseDao.selectList(getWrapper(params)); |
||||
|
|
||||
|
return ConvertUtils.sourceToTarget(entityList, IcTripReportRecordDTO.class); |
||||
|
} |
||||
|
|
||||
|
private QueryWrapper<IcTripReportRecordEntity> getWrapper(Map<String, Object> params){ |
||||
|
String id = (String)params.get(FieldConstant.ID_HUMP); |
||||
|
|
||||
|
QueryWrapper<IcTripReportRecordEntity> wrapper = new QueryWrapper<>(); |
||||
|
wrapper.eq(StringUtils.isNotBlank(id), FieldConstant.ID, id); |
||||
|
|
||||
|
return wrapper; |
||||
|
} |
||||
|
|
||||
|
@Override |
||||
|
public IcTripReportRecordDTO get(String id) { |
||||
|
IcTripReportRecordEntity entity = baseDao.selectById(id); |
||||
|
return ConvertUtils.sourceToTarget(entity, IcTripReportRecordDTO.class); |
||||
|
} |
||||
|
|
||||
|
@Override |
||||
|
@Transactional(rollbackFor = Exception.class) |
||||
|
public void save(IcTripReportRecordDTO dto) { |
||||
|
IcTripReportRecordEntity entity = ConvertUtils.sourceToTarget(dto, IcTripReportRecordEntity.class); |
||||
|
insert(entity); |
||||
|
} |
||||
|
|
||||
|
@Override |
||||
|
@Transactional(rollbackFor = Exception.class) |
||||
|
public void update(IcTripReportRecordDTO dto) { |
||||
|
IcTripReportRecordEntity entity = ConvertUtils.sourceToTarget(dto, IcTripReportRecordEntity.class); |
||||
|
updateById(entity); |
||||
|
} |
||||
|
|
||||
|
@Override |
||||
|
@Transactional(rollbackFor = Exception.class) |
||||
|
public void delete(String[] ids) { |
||||
|
// 逻辑删除(@TableLogic 注解)
|
||||
|
baseDao.deleteBatchIds(Arrays.asList(ids)); |
||||
|
} |
||||
|
|
||||
|
} |
||||
Binary file not shown.
@ -0,0 +1,95 @@ |
|||||
|
<?xml version="1.0" encoding="UTF-8"?> |
||||
|
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> |
||||
|
|
||||
|
<mapper namespace="com.epmet.dao.IcEpidemicSpecialAttentionDao"> |
||||
|
|
||||
|
<!-- 取消关注 --> |
||||
|
<update id="cancelAttention"> |
||||
|
UPDATE ic_epidemic_special_attention |
||||
|
SET UPDATED_TIME = NOW(), |
||||
|
IS_ATTENTION = 0 |
||||
|
WHERE del_flag = 0 |
||||
|
AND attention_type = #{attentionType} |
||||
|
AND id_card IN ( |
||||
|
<foreach collection="list" item="l" separator=","> |
||||
|
#{l} |
||||
|
</foreach> |
||||
|
) |
||||
|
</update> |
||||
|
|
||||
|
<!-- 疫苗接种关注名单 --> |
||||
|
<select id="vaccinationList" resultType="com.epmet.dto.result.VaccinationListResultDTO"> |
||||
|
SELECT |
||||
|
a.`NAME`, |
||||
|
a.MOBILE, |
||||
|
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 = '1' AND ID_CARD = #{idCard} ORDER BY CREATED_TIME LIMIT 1),'') AS lastInformTime, |
||||
|
COUNT(v.ID) 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') |
||||
|
WHERE a.DEL_FLAG = 0 |
||||
|
AND a.ORG_ID = #{orgId} |
||||
|
AND ATTENTION_TYPE = #{attentionType} |
||||
|
<if test='null != name and "" != name'> |
||||
|
AND a.`NAME` = #{name} |
||||
|
</if> |
||||
|
<if test='null != mobile and "" != mobile'> |
||||
|
AND a.MOBILE = #{mobile} |
||||
|
</if> |
||||
|
<if test='null != mobile and "" != mobile'> |
||||
|
AND a.ID_CARD = #{idCard} |
||||
|
</if> |
||||
|
<if test=' null != vaccinationCount'> |
||||
|
HAVING vaccinationCount = #{vaccinationCount} |
||||
|
</if> |
||||
|
ORDER BY a.CREATED_TIME DESC |
||||
|
</select> |
||||
|
|
||||
|
<!-- 核酸检测关注名单 --> |
||||
|
<select id="natList" resultType="com.epmet.dto.result.VaccinationListResultDTO"> |
||||
|
SELECT |
||||
|
a.`NAME`, |
||||
|
a.MOBILE, |
||||
|
a.ID_CARD, |
||||
|
a.REMARK, |
||||
|
a.REASON, |
||||
|
IFNULL((SELECT DATE_FORMAT(CREATED_TIME,'%Y-%m-%d %H:%i:%s') FROM ic_notice WHERE DEL_FLAG = '0' AND ORIGIN = '1' AND ID_CARD = #{idCard} ORDER BY CREATED_TIME LIMIT 1),'') AS lastInformTime |
||||
|
FROM ic_epidemic_special_attention a |
||||
|
WHERE a.DEL_FLAG = 0 |
||||
|
AND a.ORG_ID = #{orgId} |
||||
|
AND ATTENTION_TYPE = #{attentionType} |
||||
|
<if test='null != name and "" != name'> |
||||
|
AND a.`NAME` = #{name} |
||||
|
</if> |
||||
|
<if test='null != mobile and "" != mobile'> |
||||
|
AND a.MOBILE = #{mobile} |
||||
|
</if> |
||||
|
<if test='null != mobile and "" != mobile'> |
||||
|
AND a.ID_CARD = #{idCard} |
||||
|
</if> |
||||
|
<if test='null != reason and "" != reason'> |
||||
|
AND a.REASON LIKE CONCAT('%',#{reason},'%') |
||||
|
</if> |
||||
|
<if test='null != remark and "" != remark'> |
||||
|
AND a.REMARK LIKE CONCAT('%',#{remark},'%') |
||||
|
</if> |
||||
|
ORDER BY a.CREATED_TIME DESC |
||||
|
</select> |
||||
|
|
||||
|
<!-- 查询已经存在的关注 --> |
||||
|
<select id="getExistList" resultType="java.lang.String"> |
||||
|
SELECT |
||||
|
ID_CARD |
||||
|
FROM ic_epidemic_special_attention |
||||
|
WHERE DEL_FLAG = 0 |
||||
|
AND ATTENTION_TYPE = #{attentionType} |
||||
|
AND ID_CARD IN ( |
||||
|
<foreach collection="list" item="l" separator=","> |
||||
|
#{l} |
||||
|
</foreach> |
||||
|
) |
||||
|
</select> |
||||
|
|
||||
|
|
||||
|
</mapper> |
||||
@ -0,0 +1,8 @@ |
|||||
|
<?xml version="1.0" encoding="UTF-8"?> |
||||
|
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> |
||||
|
|
||||
|
<mapper namespace="com.epmet.dao.IcFollowUpRecordDao"> |
||||
|
|
||||
|
|
||||
|
|
||||
|
</mapper> |
||||
@ -0,0 +1,70 @@ |
|||||
|
<?xml version="1.0" encoding="UTF-8"?> |
||||
|
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> |
||||
|
|
||||
|
<mapper namespace="com.epmet.dao.IcNatDao"> |
||||
|
|
||||
|
<select id="getMyNatList" resultType="com.epmet.dto.result.MyNatListResultDTO"> |
||||
|
SELECT |
||||
|
id icNatId, |
||||
|
user_id userId, |
||||
|
user_type userType, |
||||
|
`name` `name`, |
||||
|
mobile mobile, |
||||
|
id_card idCard, |
||||
|
nat_time natTime, |
||||
|
nat_result natResult, |
||||
|
nat_address natAddress, |
||||
|
file_name fileName, |
||||
|
attachment_url attachmentUrl |
||||
|
FROM |
||||
|
ic_nat |
||||
|
WHERE |
||||
|
del_flag = '0' |
||||
|
AND customer_id = #{customerId} |
||||
|
AND id_card = #{idCard} |
||||
|
ORDER BY nat_time DESC |
||||
|
</select> |
||||
|
|
||||
|
<select id="getNatList" resultType="com.epmet.dto.result.NatListResultDTO"> |
||||
|
SELECT |
||||
|
id icNatId, |
||||
|
agency_id agencyId, |
||||
|
user_id userId, |
||||
|
user_type userType, |
||||
|
`name` `name`, |
||||
|
mobile mobile, |
||||
|
id_card idCard, |
||||
|
nat_time natTime, |
||||
|
nat_result natResult, |
||||
|
nat_address natAddress |
||||
|
FROM |
||||
|
ic_nat |
||||
|
WHERE |
||||
|
del_flag = '0' |
||||
|
AND customer_id = #{customerId} |
||||
|
<if test='null != agencyId and "" != agencyId'> |
||||
|
AND (agency_id = #{agencyId} OR pids like concat('%', #{agencyId}, '%')) |
||||
|
</if> |
||||
|
<if test='null != name and "" != name'> |
||||
|
AND name like concat('%', #{name}, '%') |
||||
|
</if> |
||||
|
<if test='null != mobile and "" != mobile'> |
||||
|
AND mobile = #{mobile} |
||||
|
</if> |
||||
|
<if test='null != idCard and "" != idCard'> |
||||
|
AND id_card = #{idCard} |
||||
|
</if> |
||||
|
<if test='null != startTime and "" != startTime'> |
||||
|
AND nat_time <![CDATA[ >= ]]> #{startTime} |
||||
|
</if> |
||||
|
<if test='null != endTime and "" != endTime'> |
||||
|
AND nat_time <![CDATA[ <= ]]> #{endTime} |
||||
|
</if> |
||||
|
ORDER BY nat_time, id_card DESC |
||||
|
</select> |
||||
|
|
||||
|
<delete id="delById"> |
||||
|
DELETE FROM ic_nat WHERE id = #{icNatId} |
||||
|
</delete> |
||||
|
|
||||
|
</mapper> |
||||
@ -0,0 +1,23 @@ |
|||||
|
<?xml version="1.0" encoding="UTF-8"?> |
||||
|
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> |
||||
|
|
||||
|
<mapper namespace="com.epmet.dao.IcNoticeDao"> |
||||
|
|
||||
|
<resultMap type="com.epmet.entity.IcNoticeEntity" id="icNoticeMap"> |
||||
|
<result property="id" column="ID"/> |
||||
|
<result property="customerId" column="CUSTOMER_ID"/> |
||||
|
<result property="channel" column="CHANNEL"/> |
||||
|
<result property="origin" column="ORIGIN"/> |
||||
|
<result property="idCard" column="ID_CARD"/> |
||||
|
<result property="content" column="CONTENT"/> |
||||
|
<result property="orgName" column="ORG_NAME"/> |
||||
|
<result property="delFlag" column="DEL_FLAG"/> |
||||
|
<result property="revision" column="REVISION"/> |
||||
|
<result property="createdBy" column="CREATED_BY"/> |
||||
|
<result property="createdTime" column="CREATED_TIME"/> |
||||
|
<result property="updatedBy" column="UPDATED_BY"/> |
||||
|
<result property="updatedTime" column="UPDATED_TIME"/> |
||||
|
</resultMap> |
||||
|
|
||||
|
|
||||
|
</mapper> |
||||
@ -0,0 +1,28 @@ |
|||||
|
<?xml version="1.0" encoding="UTF-8"?> |
||||
|
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> |
||||
|
|
||||
|
<mapper namespace="com.epmet.dao.IcResiVaccineDao"> |
||||
|
|
||||
|
<resultMap type="com.epmet.entity.IcResiVaccineEntity" id="icResiVaccineMap"> |
||||
|
<result property="id" column="ID"/> |
||||
|
<result property="customerId" column="CUSTOMER_ID"/> |
||||
|
<result property="name" column="NAME"/> |
||||
|
<result property="mobile" column="MOBILE"/> |
||||
|
<result property="idCard" column="ID_CARD"/> |
||||
|
<result property="inoculateTime" column="INOCULATE_TIME"/> |
||||
|
<result property="inoculateAddress" column="INOCULATE_ADDRESS"/> |
||||
|
<result property="manufacturer" column="MANUFACTURER"/> |
||||
|
<result property="field1" column="FIELD1"/> |
||||
|
<result property="field2" column="FIELD2"/> |
||||
|
<result property="field3" column="FIELD3"/> |
||||
|
<result property="remaek" column="REMAEK"/> |
||||
|
<result property="delFlag" column="DEL_FLAG"/> |
||||
|
<result property="revision" column="REVISION"/> |
||||
|
<result property="createdBy" column="CREATED_BY"/> |
||||
|
<result property="createdTime" column="CREATED_TIME"/> |
||||
|
<result property="updatedBy" column="UPDATED_BY"/> |
||||
|
<result property="updatedTime" column="UPDATED_TIME"/> |
||||
|
</resultMap> |
||||
|
|
||||
|
|
||||
|
</mapper> |
||||
@ -0,0 +1,8 @@ |
|||||
|
<?xml version="1.0" encoding="UTF-8"?> |
||||
|
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> |
||||
|
|
||||
|
<mapper namespace="com.epmet.dao.IcTripReportRecordDao"> |
||||
|
|
||||
|
|
||||
|
|
||||
|
</mapper> |
||||
Loading…
Reference in new issue