黑马程序员技术交流社区

标题: 【郑州校区】Java的新项目学成在线笔记-day19(十四) [打印本页]

作者: 谷粒姐姐    时间: 2019-7-17 16:01
标题: 【郑州校区】Java的新项目学成在线笔记-day19(十四)
4.1.5 接收添加选课消息 接收到添加选课的消息调用添加选课方法完成添加选课,并发送完成选课消息。在com.xuecheng.learning.mq包下添加ChooseCourseTask类
[AppleScript] 纯文本查看 复制代码
@Component public class ChooseCourseTask {       private static final Logger LOGGER = LoggerFactory.getLogger(ChooseCourseTask.class);  
     @Autowired  
   LearningService learningService;   
    @Autowired
    RabbitTemplate rabbitTemplate;  
     /**   
  * 接收选课任务  
    */     @RabbitListener(queues = {RabbitMQConfig.XC_LEARNING_ADDCHOOSECOURSE})     public void receiveChoosecourseTask(XcTask xcTask,Message message,Channel channel) throws  IOException {         LOGGER.info("receive choose course task,taskId:{}",xcTask.getId());   
     //接收到 的消息id   
     String id = xcTask.getId();     
    //添加选课  
       try {         
    String requestBody = xcTask.getRequestBody();      
      Map map = JSON.parseObject(requestBody, Map.class);   
          String userId = (String) map.get("userId");      
       String courseId = (String) map.get("courseId");     
        String valid = (String) map.get("valid");     
        Date startTime = null;        
     Date endTime = null;  
           SimpleDateFormat dateFormat = new SimpleDateFormat("YYYY‐MM‐dd HH:mm:ss");        
     if(map.get("startTime")!=null){      
          startTime =dateFormat.parse((String) map.get("startTime"));      
       }         
    if(map.get("endTime")!=null){      
           endTime =dateFormat.parse((String) map.get("endTime"));   
         }         
    //添加选课   
         ResponseResult addcourse = learningService.addcourse(userId, courseId,  valid,startTime, endTime,xcTask);      
       //选课成功发送响应消息
            if(addcourse.isSuccess()){

[AppleScript] 纯文本查看 复制代码
 //发送响应消息              
   rabbitTemplate.convertAndSend(RabbitMQConfig.EX_LEARNING_ADDCHOOSECOURSE,  RabbitMQConfig.XC_LEARNING_FINISHADDCHOOSECOURSE_KEY, xcTask );   
             LOGGER.info("send finish choose course taskId:{}",id);      
       }   
      } catch (Exception e) {      
      e.printStackTrace();         
    LOGGER.error("send finish choose course taskId:{}", id);   
      }     
    } }









欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2