diff --git a/flossom-common/flossom-common-core/src/main/java/com/flossom/common/core/mapper/WxUserInstrumentLogMapper.java b/flossom-common/flossom-common-core/src/main/java/com/flossom/common/core/mapper/WxUserInstrumentLogMapper.java index 880782a..61884c2 100644 --- a/flossom-common/flossom-common-core/src/main/java/com/flossom/common/core/mapper/WxUserInstrumentLogMapper.java +++ b/flossom-common/flossom-common-core/src/main/java/com/flossom/common/core/mapper/WxUserInstrumentLogMapper.java @@ -59,4 +59,6 @@ public interface WxUserInstrumentLogMapper * @return 结果 */ public int deleteWxUserInstrumentLogByIds(Long[] ids); + + void deleteByUserId(Long userId); } diff --git a/flossom-common/flossom-common-core/src/main/java/com/flossom/common/core/mapper/WxUserInstrumentMapper.java b/flossom-common/flossom-common-core/src/main/java/com/flossom/common/core/mapper/WxUserInstrumentMapper.java index 859348e..b568f0d 100644 --- a/flossom-common/flossom-common-core/src/main/java/com/flossom/common/core/mapper/WxUserInstrumentMapper.java +++ b/flossom-common/flossom-common-core/src/main/java/com/flossom/common/core/mapper/WxUserInstrumentMapper.java @@ -1,6 +1,7 @@ package com.flossom.common.core.mapper; import com.flossom.common.core.domain.entity.WxUserInstrument; +import org.apache.ibatis.annotations.Param; import java.util.List; @@ -63,4 +64,6 @@ public interface WxUserInstrumentMapper Integer selectUiByInstrumentId(WxUserInstrument wxUserInstrument); List selectListByUserIdAndInstrumentId(WxUserInstrument wxUserInstrument); + + void deleteByUserId(@Param("userId") Long userId); } diff --git a/flossom-common/flossom-common-core/src/main/resources/mapper/WxUserInstrumentLogMapper.xml b/flossom-common/flossom-common-core/src/main/resources/mapper/WxUserInstrumentLogMapper.xml index ff9d85c..8660b60 100644 --- a/flossom-common/flossom-common-core/src/main/resources/mapper/WxUserInstrumentLogMapper.xml +++ b/flossom-common/flossom-common-core/src/main/resources/mapper/WxUserInstrumentLogMapper.xml @@ -107,4 +107,8 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" #{id} + + + delete from wx_user_instrument_log where user_id = #{userId} + diff --git a/flossom-common/flossom-common-core/src/main/resources/mapper/WxUserInstrumentMapper.xml b/flossom-common/flossom-common-core/src/main/resources/mapper/WxUserInstrumentMapper.xml index e47508a..fc1ee18 100644 --- a/flossom-common/flossom-common-core/src/main/resources/mapper/WxUserInstrumentMapper.xml +++ b/flossom-common/flossom-common-core/src/main/resources/mapper/WxUserInstrumentMapper.xml @@ -160,6 +160,10 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" delete from wx_user_instrument where id = #{id} + + delete from wx_user_instrument where user_id = #{userId} + + delete from wx_user_instrument where id in diff --git a/flossom-modules/flossom-system/src/main/java/com/flossom/system/service/impl/WxUserMemberServiceImpl.java b/flossom-modules/flossom-system/src/main/java/com/flossom/system/service/impl/WxUserMemberServiceImpl.java index 8e05c6c..2645d1d 100644 --- a/flossom-modules/flossom-system/src/main/java/com/flossom/system/service/impl/WxUserMemberServiceImpl.java +++ b/flossom-modules/flossom-system/src/main/java/com/flossom/system/service/impl/WxUserMemberServiceImpl.java @@ -64,6 +64,12 @@ public class WxUserMemberServiceImpl implements IWxUserMemberService { @Autowired private WxUserInstrumentMapper wxUserInstrumentMapper; + @Autowired + private WxUserInstrumentLogMapper wxUserInstrumentLogMapper; + + @Autowired + private WxInstrumentSerialMapper wxInstrumentSerialMapper; + /** * 查询用户 * @@ -207,6 +213,27 @@ public class WxUserMemberServiceImpl implements IWxUserMemberService { wxUserScriptLogMapper.deleteWxUserScriptLogByWxUserId(wxUserMember.getId()); // wx_user_tag 用户标签关联表 wxUserTagMapper.deleteWxUserTagByUserId(wxUserMember.getId()); + // wx_instrument_serial 仪器序列号解绑 + WxUserInstrument query = new WxUserInstrument(); + query.setUserId(wxUserMember.getId()); + query.setBindingStatus(BindingStatusEnums.BINDED.getCode()); + query.setStatus(Status.OK.getCode().longValue()); + List wxUserInstruments = wxUserInstrumentMapper.selectWxUserInstrumentList(query); + if (wxUserInstruments != null && wxUserInstruments.size() > 0) { + List serialList = wxUserInstruments.stream().map(WxUserInstrument::getSerial).collect(Collectors.toList()); + for (String serial : serialList) { + WxInstrumentSerial wxInstrumentSerial = new WxInstrumentSerial(); + wxInstrumentSerial.setSerial(serial); + wxInstrumentSerial.setBindingStatus(BindingStatusEnums.UN_BOUND.getCode()); + wxInstrumentSerial.setCreateBy(SecurityUtils.getUsername()); + wxInstrumentSerial.setCreateTime(DateUtils.getNowDate()); + wxInstrumentSerialMapper.updateBySerial(wxInstrumentSerial); + } + } + // wx_user_instrument 用户仪器关联表 + wxUserInstrumentMapper.deleteByUserId(wxUserMember.getId()); + // wx_user_instrument_log 用户仪器关联表记录 + wxUserInstrumentLogMapper.deleteByUserId(wxUserMember.getId()); } } // wx_user_member 微信用户表