Browse Source

【核酸】核酸检测

dev
sunyuchao 3 years ago
parent
commit
4740324be7
  1. 5
      epmet-user/epmet-user-client/src/main/java/com/epmet/dto/IcNatDTO.java
  2. 7
      epmet-user/epmet-user-client/src/main/java/com/epmet/dto/form/AddIcNatFormDTO.java
  3. 2
      epmet-user/epmet-user-server/src/main/java/com/epmet/controller/IcNatController.java
  4. 2
      epmet-user/epmet-user-server/src/main/java/com/epmet/dao/IcNatDao.java
  5. 2
      epmet-user/epmet-user-server/src/main/java/com/epmet/entity/IcNatEntity.java
  6. 26
      epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/IcNatServiceImpl.java
  7. 2
      epmet-user/epmet-user-server/src/main/resources/mapper/IcNatDao.xml

5
epmet-user/epmet-user-client/src/main/java/com/epmet/dto/IcNatDTO.java

@ -1,6 +1,7 @@
package com.epmet.dto; package com.epmet.dto;
import java.io.Serializable; import java.io.Serializable;
import java.util.ArrayList;
import java.util.Date; import java.util.Date;
import java.util.List; import java.util.List;
@ -129,10 +130,10 @@ public class IcNatDTO implements Serializable {
/** /**
* 通知渠道 0小程序通知1短信通知多选是数组 * 通知渠道 0小程序通知1短信通知多选是数组
*/ */
private List<String> channel; private List<String> channel = new ArrayList<>();
/** /**
* 通知内容 * 通知内容
*/ */
private String content; private String content = "";
} }

7
epmet-user/epmet-user-client/src/main/java/com/epmet/dto/form/AddIcNatFormDTO.java

@ -6,6 +6,7 @@ import lombok.Data;
import javax.validation.constraints.NotBlank; import javax.validation.constraints.NotBlank;
import java.io.Serializable; import java.io.Serializable;
import java.util.ArrayList;
import java.util.Date; import java.util.Date;
import java.util.List; import java.util.List;
@ -56,7 +57,7 @@ public class AddIcNatFormDTO implements Serializable {
/** /**
* 检测时间 * 检测时间
*/ */
@NotBlank(message = "检测时间不能为空", groups = Nat.class) //@NotBlank(message = "检测时间不能为空", groups = Nat.class)
@JsonFormat(pattern="yyyy-MM-dd HH:mm") @JsonFormat(pattern="yyyy-MM-dd HH:mm")
private Date natTime; private Date natTime;
/** /**
@ -83,11 +84,11 @@ public class AddIcNatFormDTO implements Serializable {
/** /**
* 通知渠道 0小程序通知1短信通知多选是数组 * 通知渠道 0小程序通知1短信通知多选是数组
*/ */
private List<String> channel; private List<String> channel = new ArrayList<>();
/** /**
* 通知内容 * 通知内容
*/ */
private String content; private String content = "";
//token中信息 //token中信息
private String customerId; private String customerId;

2
epmet-user/epmet-user-server/src/main/java/com/epmet/controller/IcNatController.java

@ -41,7 +41,7 @@ public class IcNatController {
* @Author sun * @Author sun
* @Description 核酸检测-上报核酸记录 * @Description 核酸检测-上报核酸记录
**/ **/
@NoRepeatSubmit //@NoRepeatSubmit
@PostMapping("add") @PostMapping("add")
public Result add(@LoginUser TokenDto tokenDto, @RequestBody AddIcNatFormDTO formDTO) { public Result add(@LoginUser TokenDto tokenDto, @RequestBody AddIcNatFormDTO formDTO) {
ValidatorUtils.validateEntity(formDTO, AddIcNatFormDTO.Nat.class); ValidatorUtils.validateEntity(formDTO, AddIcNatFormDTO.Nat.class);

2
epmet-user/epmet-user-server/src/main/java/com/epmet/dao/IcNatDao.java

@ -35,5 +35,5 @@ public interface IcNatDao extends BaseDao<IcNatEntity> {
* @Author sun * @Author sun
* @Description 删除/取消同步操作--物理删除业务数据 * @Description 删除/取消同步操作--物理删除业务数据
**/ **/
boolean delById(@Param("icNatId") String icNatId); int delById(@Param("icNatId") String icNatId);
} }

2
epmet-user/epmet-user-server/src/main/java/com/epmet/entity/IcNatEntity.java

@ -74,7 +74,7 @@ public class IcNatEntity extends BaseEpmetEntity {
/** /**
* 检测地点 * 检测地点
*/ */
private String natOAddress; private String natAddress;
/** /**
* 文件名 * 文件名

26
epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/IcNatServiceImpl.java

@ -49,6 +49,7 @@ public class IcNatServiceImpl extends BaseServiceImpl<IcNatDao, IcNatEntity> imp
* @Description 核酸检测-上报核酸记录 * @Description 核酸检测-上报核酸记录
**/ **/
@Override @Override
@Transactional(rollbackFor = Exception.class)
public void add(AddIcNatFormDTO formDTO) { public void add(AddIcNatFormDTO formDTO) {
//1.获取所填居民所属组织缓存信息 //1.获取所填居民所属组织缓存信息
AgencyInfoCache agencyInfo = CustomerOrgRedis.getAgencyInfo(formDTO.getAgencyId()); AgencyInfoCache agencyInfo = CustomerOrgRedis.getAgencyInfo(formDTO.getAgencyId());
@ -63,6 +64,8 @@ public class IcNatServiceImpl extends BaseServiceImpl<IcNatDao, IcNatEntity> imp
//3.新增通知表信息 //3.新增通知表信息
if (formDTO.getChannel().size() > NumConstant.ZERO) { if (formDTO.getChannel().size() > NumConstant.ZERO) {
//TODO //TODO
} }
} }
@ -132,8 +135,9 @@ public class IcNatServiceImpl extends BaseServiceImpl<IcNatDao, IcNatEntity> imp
public void edit(AddIcNatFormDTO formDTO) { public void edit(AddIcNatFormDTO formDTO) {
//1.更新核酸记录表数据 //1.更新核酸记录表数据
IcNatEntity entity = ConvertUtils.sourceToTarget(formDTO, IcNatEntity.class); IcNatEntity entity = ConvertUtils.sourceToTarget(formDTO, IcNatEntity.class);
entity.setId(formDTO.getIcNatId());
if (!updateById(entity)) { if (!updateById(entity)) {
log.error(String.format("数据修改失败,核酸记录Id->", formDTO.getIcNatId())); log.error(String.format("数据修改失败,核酸记录Id->%s", formDTO.getIcNatId()));
throw new EpmetException(EpmetErrorCode.EPMET_COMMON_OPERATION_FAIL.getCode(), "核酸记录修改失败"); throw new EpmetException(EpmetErrorCode.EPMET_COMMON_OPERATION_FAIL.getCode(), "核酸记录修改失败");
} }
@ -150,8 +154,8 @@ public class IcNatServiceImpl extends BaseServiceImpl<IcNatDao, IcNatEntity> imp
@Override @Override
public void del(MyNatListFormDTO formDTO) { public void del(MyNatListFormDTO formDTO) {
//1.物理删除业务数据 //1.物理删除业务数据
if (baseDao.delById(formDTO.getIcNatId())) { if (baseDao.delById(formDTO.getIcNatId()) < NumConstant.ONE) {
log.error(String.format("数据删除/取消同步失败,核酸记录Id->", formDTO.getIcNatId())); log.error(String.format("数据删除/取消同步失败,核酸记录Id->%s", formDTO.getIcNatId()));
throw new EpmetException(EpmetErrorCode.EPMET_COMMON_OPERATION_FAIL.getCode(), "数据操作失败"); throw new EpmetException(EpmetErrorCode.EPMET_COMMON_OPERATION_FAIL.getCode(), "数据操作失败");
} }
} }
@ -162,19 +166,19 @@ public class IcNatServiceImpl extends BaseServiceImpl<IcNatDao, IcNatEntity> imp
**/ **/
@Override @Override
public void synchro(MyNatListFormDTO formDTO) { 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查询业务数据并进行必要校验 //1.根据核酸记录Id查询业务数据并进行必要校验
IcNatEntity entity = baseDao.selectById(formDTO.getIcNatId()); IcNatEntity entity = baseDao.selectById(formDTO.getIcNatId());
if (null == entity || formDTO.getAgencyId().equals(entity.getAgencyId()) if (null == entity || staffInfo.getAgencyId().equals(entity.getAgencyId())
|| (!"import".equals(entity.getUserType()) && !"synchro".equals(entity.getUserType()))) { || (!"import".equals(entity.getUserType()) && !"synchro".equals(entity.getUserType()))) {
log.error(String.format("数据同步失败,核酸记录Id->", formDTO.getIcNatId())); log.error(String.format("数据同步失败,核酸记录Id->%s", formDTO.getIcNatId()));
throw new EpmetException(EpmetErrorCode.EPMET_COMMON_OPERATION_FAIL.getCode(), "数据同步失败,不是导入数据或非本组织数据"); throw new EpmetException(EpmetErrorCode.EPMET_COMMON_OPERATION_FAIL.getCode(), "数据同步失败,不是导入数据或非本组织数据");
} }
//2.获取工作人员缓存数据
//获取工作人员缓存信息
CustomerStaffInfoCacheResult staffInfo = CustomerStaffRedis.getStaffInfo(formDTO.getCustomerId(), formDTO.getUserId());
if (null == staffInfo) {
throw new EpmetException(String.format("查询工作人员%s缓存信息失败...", formDTO.getUserId()));
}
//3.待同步组织新增业务数据 //3.待同步组织新增业务数据
entity.setId(""); entity.setId("");
entity.setAgencyId(staffInfo.getAgencyId()); entity.setAgencyId(staffInfo.getAgencyId());

2
epmet-user/epmet-user-server/src/main/resources/mapper/IcNatDao.xml

@ -22,6 +22,7 @@
del_flag = '0' del_flag = '0'
AND customer_id = #{customerId} AND customer_id = #{customerId}
AND id_card = #{idCard} AND id_card = #{idCard}
ORDER BY nat_time DESC
</select> </select>
<select id="getNatList" resultType="com.epmet.dto.result.NatListResultDTO$NatListDTO"> <select id="getNatList" resultType="com.epmet.dto.result.NatListResultDTO$NatListDTO">
@ -59,6 +60,7 @@
<if test='null != endTime and "" != endTime'> <if test='null != endTime and "" != endTime'>
AND nat_time <![CDATA[ <= ]]> #{endTime} AND nat_time <![CDATA[ <= ]]> #{endTime}
</if> </if>
ORDER BY nat_time, id_card DESC
</select> </select>
<delete id="delById"> <delete id="delById">

Loading…
Cancel
Save