springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/config/RabbitmqConfig.java
@@ -37,6 +37,10 @@ public static final String ACID_DANGER_ROUTING_KEY = "huacheng.acid.danger.key"; public static final String ACID_DANGER_EXCHANGE = "huacheng.acid.danger.exchange"; public static final String ACID_DIRECT_QUEUE = "huacheng.acid.direct.queue"; public static final String ACID_DIRECT_ROUTING_KEY = "huacheng.acid.direct.key"; public static final String ACID_DIRECT_EXCHANGE = "huacheng.acid.direct.exchange"; @Bean public Queue preOrderQueue(){ @@ -107,6 +111,21 @@ } @Bean public Queue acidDirectQueue(){ return new Queue(ACID_DIRECT_QUEUE,true,false,false,null); } @Bean public Exchange acidDirectExchange(){ return new DirectExchange(ACID_DIRECT_EXCHANGE,true,false); } @Bean public Binding acidDirectBinding(){ return BindingBuilder.bind(acidDirectQueue()).to(acidDirectExchange()).with(ACID_DIRECT_ROUTING_KEY).noargs(); } @Bean public Queue mcsOrderQueue(){ return new Queue(McsOrder_QUEUE,true,false,false,null); } springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/message/AcidMessage.java
@@ -6,6 +6,10 @@ import javax.annotation.Resource; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.toolkit.CollectionUtils; import com.panzhihua.service_community.dao.ComActDAO; import com.panzhihua.service_community.model.dos.ComActDO; import org.springframework.amqp.rabbit.annotation.RabbitListener; import org.springframework.stereotype.Component; @@ -28,10 +32,13 @@ public class AcidMessage { public static final String DELAYED_QUEUE="huacheng.acid.queue"; public static final String ACID_DANGER_QUEUE = "huacheng.acid.danger.queue"; public static final String DIRECT_QUEUE="huacheng.acid.direct.queue"; @Resource private UserService userService; @Resource private ComActAcidMemberService comActAcidMemberService; @Resource private ComActDAO comActDAO; @RabbitListener(queues=DELAYED_QUEUE) public void doTemplate(ComActAcidRecordVO comActAcidRecordVO) { @@ -68,4 +75,35 @@ } } } @RabbitListener(queues = DIRECT_QUEUE) public void updateUserInfo(ComActAcidRecordVO comActAcidRecordVO){ //防疫登记提交默认绑定用户信息 R<LoginUserInfoVO> loginUserInfoVOR= userService.getUserInfoByUserId(comActAcidRecordVO.getUserId().toString()); if(R.isOk(loginUserInfoVOR)&&loginUserInfoVOR.getData()!=null){ LoginUserInfoVO loginUserInfoVO=loginUserInfoVOR.getData(); if(StringUtils.isEmpty(loginUserInfoVO.getPhone())||StringUtils.isEmpty(loginUserInfoVO.getIdCard())){ loginUserInfoVO.setPhone(comActAcidRecordVO.getPhone()); loginUserInfoVO.setIdCard(comActAcidRecordVO.getIdCard()); if(StringUtils.isNotEmpty(comActAcidRecordVO.getLocalCity())){ String town=comActAcidRecordVO.getLocalCity().split(",")[2]; String area=comActAcidRecordVO.getLocalCity().split(",")[1]; String country=comActAcidRecordVO.getLocalCity().split(",")[0]; List<ComActDO> comActDOS=comActDAO.selectList(new QueryWrapper<ComActDO>().lambda().eq(ComActDO::getName,town)); if(CollectionUtils.isNotEmpty(comActDOS)){ if(comActDOS.size()==1){ loginUserInfoVO.setCommunityId(comActDOS.get(0).getCommunityId()); } else { ComActDO comActDO=comActDAO.selectOne(new QueryWrapper<ComActDO>().lambda().eq(ComActDO::getName,town).and(comActDOLambdaQueryWrapper -> comActDOLambdaQueryWrapper.like(ComActDO::getAddress,town).or().like(ComActDO::getAddress,area).or().like(ComActDO::getAddress,country))); if(comActDO!=null){ loginUserInfoVO.setCommunityId(comActDO.getCommunityId()); } } } } userService.putUser(loginUserInfoVO); } } } } springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComActAcidRecordServiceImpl.java
@@ -5,18 +5,23 @@ import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.toolkit.CollectionUtils; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.panzhihua.common.model.dtos.community.acid.ComActAcidRecordDTO; import com.panzhihua.common.model.dtos.property.CommonPage; import com.panzhihua.common.model.vos.LoginUserInfoVO; import com.panzhihua.common.model.vos.R; import com.panzhihua.common.model.vos.community.acid.*; import com.panzhihua.common.service.user.UserService; import com.panzhihua.common.utlis.DateUtils; import com.panzhihua.common.utlis.StringUtils; import com.panzhihua.service_community.dao.ComActAcidDangerMemberDao; import com.panzhihua.service_community.dao.ComActDAO; import com.panzhihua.service_community.entity.ComActAcidDangerMember; import com.panzhihua.service_community.entity.ComActAcidRecord; import com.panzhihua.service_community.dao.ComActAcidRecordDao; import com.panzhihua.service_community.model.dos.ComActDO; import com.panzhihua.service_community.service.ComActAcidRecordService; import lombok.extern.slf4j.Slf4j; import org.springframework.amqp.rabbit.core.RabbitTemplate; @@ -48,6 +53,10 @@ private RabbitTemplate rabbitTemplate; @Resource private ComActAcidDangerMemberDao comActAcidDangerMemberDao; @Resource private UserService userService; @Resource private ComActDAO comActDAO; @Override public R pageList(ComActAcidRecordDTO comActAcidRecordDTO) { @@ -92,6 +101,9 @@ return message; }); } else { rabbitTemplate.convertAndSend("huacheng.acid.direct.exchange", "huacheng.acid.direct.key", comActAcidRecordVO); } ComActAcidRecord comActAcidRecord=new ComActAcidRecord(); BeanUtils.copyProperties(comActAcidRecordVO,comActAcidRecord); comActAcidRecord.setCreateTime(new Date());