Browse Source

202106010

pt
zy_Java 4 years ago
parent
commit
ec96317e13
  1. 22
      recovery/src/main/java/com/ccsens/recovery/bean/message/RecoveryWithCountdown.java
  2. 3
      recovery/src/main/java/com/ccsens/recovery/service/IPatientService.java
  3. 20
      recovery/src/main/java/com/ccsens/recovery/service/PatientService.java
  4. 2
      recovery/src/main/java/com/ccsens/recovery/util/Constant.java

22
recovery/src/main/java/com/ccsens/recovery/bean/message/RecoveryWithCountdown.java

@ -0,0 +1,22 @@
package com.ccsens.recovery.bean.message;
import com.ccsens.recovery.util.Constant;
import lombok.Data;
import lombok.EqualsAndHashCode;
/**
* @author
*/
@EqualsAndHashCode(callSuper = true)
@Data
public class RecoveryWithCountdown extends BaseMessageDto{
public RecoveryWithCountdown(){
setType(Constant.Message.COUNTDOWN);
setEvent(Constant.Message.COUNTDOWN);
setTime(System.currentTimeMillis());
}
}

3
recovery/src/main/java/com/ccsens/recovery/service/IPatientService.java

@ -3,6 +3,7 @@ package com.ccsens.recovery.service;
import com.ccsens.recovery.bean.dto.HospitalDto;
import com.ccsens.recovery.bean.dto.PatientDto;
import com.ccsens.recovery.bean.vo.PatientVo;
import com.fasterxml.jackson.core.JsonProcessingException;
import java.util.List;
@ -105,5 +106,5 @@ public interface IPatientService {
* @param param 患者id
* @param userId userId
*/
void countdown(PatientDto.PatientId param, Long userId);
void countdown(PatientDto.PatientId param, Long userId) throws JsonProcessingException, Exception;
}

20
recovery/src/main/java/com/ccsens/recovery/service/PatientService.java

@ -6,6 +6,7 @@ import cn.hutool.core.util.ObjectUtil;
import com.ccsens.recovery.bean.dto.HospitalDto;
import com.ccsens.recovery.bean.dto.PatientDto;
import com.ccsens.recovery.bean.message.RecoveryWithActionFeedBack;
import com.ccsens.recovery.bean.message.RecoveryWithCountdown;
import com.ccsens.recovery.bean.message.RecoveryWithStartDrill;
import com.ccsens.recovery.bean.po.*;
import com.ccsens.recovery.bean.vo.PatientVo;
@ -19,6 +20,7 @@ import com.ccsens.util.bean.message.common.MessageConstant;
import com.ccsens.util.bean.message.common.MessageRule;
import com.ccsens.util.config.RabbitMQConfig;
import com.ccsens.util.message.SwitchoverProjectUtil;
import com.fasterxml.jackson.core.JsonProcessingException;
import lombok.extern.slf4j.Slf4j;
import org.springframework.amqp.core.AmqpTemplate;
import org.springframework.stereotype.Service;
@ -302,12 +304,28 @@ public class PatientService implements IPatientService{
}
@Override
public void countdown(PatientDto.PatientId param, Long userId) {
public void countdown(PatientDto.PatientId param, Long userId) throws Exception {
Set<String> userIdSet = new HashSet<>();
//查询患者信息
Patient patient = patientDao.selectByPrimaryKey(param.getId());
if(ObjectUtil.isNotNull(patient)){
userIdSet.add(patient.getUserId().toString());
}
//消息规则
MessageRule messageRule = MessageRule.defaultRule(MessageConstant.DomainType.User);
messageRule.setAckRule(MessageRule.AckRule.NONE);
messageRule.setOfflineDiscard((byte) 1);
//生成消息
RecoveryWithCountdown recoveryWithCountdown = new RecoveryWithCountdown();
InMessage inMessage = new InMessage();
inMessage.setToDomain(MessageConstant.DomainType.User);
inMessage.setTos(userIdSet);
inMessage.setData(JacksonUtil.beanToJson(recoveryWithCountdown));
inMessage.setRule(messageRule);
log.info("倒计时结束:{}",inMessage);
rabbitTemplate.convertAndSend(RabbitMQConfig.MESSAGE_QUEUE_NAME,
JacksonUtil.beanToJson(inMessage));
}
}

2
recovery/src/main/java/com/ccsens/recovery/util/Constant.java

@ -14,5 +14,7 @@ public class Constant {
public static final String START_DRILL = "startDrill";
/**动作反馈*/
public static final String FEEDBACK = "feedback";
/**倒计时结束*/
public static final String COUNTDOWN = "countdown";
}
}

Loading…
Cancel
Save