package com.panzhihua.service_property.message; import cn.hutool.core.date.DateUtil; import com.panzhihua.service_property.dao.ComPropertyAlarmDao; import com.panzhihua.service_property.entity.ComPropertyAlarm; import com.panzhihua.service_property.entity.ComPropertyEquipment; import lombok.extern.slf4j.Slf4j; import org.springframework.amqp.rabbit.annotation.RabbitListener; import org.springframework.data.redis.core.StringRedisTemplate; import org.springframework.stereotype.Component; import javax.annotation.Resource; /** * @author zzj */ @Component @Slf4j public class AlarmMessage { private final static String DELAY_QUEUE="delayed.queue"; @Resource private StringRedisTemplate stringRedisTemplate; @Resource private ComPropertyAlarmDao comPropertyAlarmDao; @RabbitListener(queues=DELAY_QUEUE) public void delayAlarm(ComPropertyEquipment comPropertyEquipment){ log.info("消息队列开始消费"); if(!stringRedisTemplate.hasKey(comPropertyEquipment.getSerialNo())){ ComPropertyAlarm comPropertyAlarm=new ComPropertyAlarm(); comPropertyAlarm.setCreateTime(DateUtil.date()); comPropertyAlarm.setPhone(comPropertyEquipment.getPhone()); comPropertyAlarm.setSerialNo(comPropertyEquipment.getSerialNo()); comPropertyAlarm.setType(ComPropertyAlarm.type.time); comPropertyAlarm.setCommunityId(comPropertyEquipment.getCommunityId()); comPropertyAlarm.setName(comPropertyEquipment.getUsername()); comPropertyAlarm.setStatus(ComPropertyAlarm.status.dcl); comPropertyAlarmDao.insert(comPropertyAlarm); } } }