Browse Source

Merge remote-tracking branch 'origin/dev_epidemic_situation' into dev_epidemic_situation

dev
yinzuomei 3 years ago
parent
commit
52a3579d75
  1. 1
      epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/exception/EpmetErrorCode.java
  2. 7
      epmet-user/epmet-user-server/src/main/java/com/epmet/dao/IcNatDao.java
  3. 10
      epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/IcNatServiceImpl.java
  4. 3
      epmet-user/epmet-user-server/src/main/resources/db/migration/V0.0.32__update_ic_nat.sql
  5. 25
      epmet-user/epmet-user-server/src/main/resources/mapper/IcNatDao.xml
  6. 2
      epmet-user/epmet-user-server/src/main/resources/mapper/IcResiUserDao.xml

1
epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/exception/EpmetErrorCode.java

@ -251,6 +251,7 @@ public enum EpmetErrorCode {
ORG_EDIT_FAILED(8920,"编辑失败"), ORG_EDIT_FAILED(8920,"编辑失败"),
ORG_DEL_FAILED(8921,"删除失败"), ORG_DEL_FAILED(8921,"删除失败"),
NEIGHBORHOOD_DEL_FAILED(8922,""), NEIGHBORHOOD_DEL_FAILED(8922,""),
IC_NAT_IDCARD_NATTIME(8923,"核酸检测时间已存在相同记录"),
//通用错误码 start //通用错误码 start

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

@ -1,6 +1,7 @@
package com.epmet.dao; package com.epmet.dao;
import com.epmet.commons.mybatis.dao.BaseDao; import com.epmet.commons.mybatis.dao.BaseDao;
import com.epmet.dto.IcNatDTO;
import com.epmet.dto.form.MyNatListFormDTO; import com.epmet.dto.form.MyNatListFormDTO;
import com.epmet.dto.result.MyNatListResultDTO; import com.epmet.dto.result.MyNatListResultDTO;
import com.epmet.dto.result.NatListResultDTO; import com.epmet.dto.result.NatListResultDTO;
@ -42,4 +43,10 @@ public interface IcNatDao extends BaseDao<IcNatEntity> {
* @param e * @param e
*/ */
void insertOrUpdate(IcNatEntity e); void insertOrUpdate(IcNatEntity e);
/**
* @Author sun
* @Description 按条件查询业务数据
**/
IcNatDTO getNatDTO(@Param("customerId") String customerId, @Param("icNatId") String icNatId, @Param("idCard") String idCard, @Param("natTime") String natTime);
} }

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

@ -89,6 +89,11 @@ public class IcNatServiceImpl extends BaseServiceImpl<IcNatDao, IcNatEntity> imp
@Override @Override
@Transactional(rollbackFor = Exception.class) @Transactional(rollbackFor = Exception.class)
public void add(AddIcNatFormDTO formDTO) { public void add(AddIcNatFormDTO formDTO) {
//0.先根据身份证号和检查时间校验数据是否存在
IcNatDTO icNatDTO = baseDao.getNatDTO(formDTO.getCustomerId(), null, formDTO.getIdCard(), DateUtils.format(formDTO.getNatTime(), DateUtils.DATE_TIME_PATTERN_END_WITH_MINUTE));
if (null != icNatDTO) {
throw new RenException(EpmetErrorCode.IC_NAT_IDCARD_NATTIME.getCode(), EpmetErrorCode.IC_NAT_IDCARD_NATTIME.getMsg());
}
//1.获取所填居民所属组织缓存信息 //1.获取所填居民所属组织缓存信息
AgencyInfoCache agencyInfo = CustomerOrgRedis.getAgencyInfo(formDTO.getAgencyId()); AgencyInfoCache agencyInfo = CustomerOrgRedis.getAgencyInfo(formDTO.getAgencyId());
if (null == agencyInfo) { if (null == agencyInfo) {
@ -183,6 +188,11 @@ public class IcNatServiceImpl extends BaseServiceImpl<IcNatDao, IcNatEntity> imp
@Override @Override
@Transactional(rollbackFor = Exception.class) @Transactional(rollbackFor = Exception.class)
public void edit(AddIcNatFormDTO formDTO) { public void edit(AddIcNatFormDTO formDTO) {
//0.先根据身份证号和检测时间校验除当前数据是否还存在相同数据
IcNatDTO icNatDTO = baseDao.getNatDTO(formDTO.getCustomerId(), formDTO.getIcNatId(), formDTO.getIdCard(), DateUtils.format(formDTO.getNatTime(), DateUtils.DATE_TIME_PATTERN_END_WITH_MINUTE));
if (null != icNatDTO) {
throw new RenException(EpmetErrorCode.IC_NAT_IDCARD_NATTIME.getCode(), EpmetErrorCode.IC_NAT_IDCARD_NATTIME.getMsg());
}
//1.更新核酸记录表数据 //1.更新核酸记录表数据
IcNatEntity entity = ConvertUtils.sourceToTarget(formDTO, IcNatEntity.class); IcNatEntity entity = ConvertUtils.sourceToTarget(formDTO, IcNatEntity.class);
entity.setId(formDTO.getIcNatId()); entity.setId(formDTO.getIcNatId());

3
epmet-user/epmet-user-server/src/main/resources/db/migration/V0.0.32__update_ic_nat.sql

@ -0,0 +1,3 @@
ALTER TABLE `ic_nat`
DROP INDEX `unq_nat` ,
ADD UNIQUE INDEX `unq_nat` (`ID_CARD`, `NAT_TIME`, `AGENCY_ID`) USING BTREE ;

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

@ -68,6 +68,31 @@
ORDER BY nat_time DESC ORDER BY nat_time DESC
</select> </select>
<select id="getNatDTO" resultType="com.epmet.dto.IcNatDTO">
SELECT
id,
agency_id,
user_id,
user_type,
`name`,
mobile,
id_card,
nat_time,
nat_result,
nat_address
FROM
ic_nat
WHERE
del_flag = '0'
AND customer_id = #{customerId}
AND id_card = #{idCard}
AND DATE_FORMAT(nat_time, '%Y-%m-%d %h:%i') = DATE_FORMAT(#{natTime}, '%Y-%m-%d %h:%i')
<if test='null != icNatId and "" != icNatId'>
AND id != #{icNatId}
</if>
LIMIT 1
</select>
<delete id="delById"> <delete id="delById">
DELETE FROM ic_nat WHERE id = #{icNatId} DELETE FROM ic_nat WHERE id = #{icNatId}
</delete> </delete>

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

@ -673,7 +673,7 @@
AND GRID_ID = #{gridId} AND GRID_ID = #{gridId}
</if> </if>
<if test="neighborId != null and neighborId != ''"> <if test="neighborId != null and neighborId != ''">
AND NEIGHBOR_HOOD_ID = #{neighborId} AND VILLAGE_ID = #{neighborId}
</if> </if>
<if test="buildingId != null and buildingId != ''"> <if test="buildingId != null and buildingId != ''">
AND BUILD_ID = #{buildingId} AND BUILD_ID = #{buildingId}

Loading…
Cancel
Save