From e3b61f27aca49b6696043b194becf4bdf18ad0c1 Mon Sep 17 00:00:00 2001
From: fuliqi <fuliqi@qq.com>
Date: 星期五, 05 七月 2024 09:11:48 +0800
Subject: [PATCH] 会议时间bug+乐观锁版本
---
src/main/java/com/ycl/jxkg/rabbitmq/consumer/Consumer.java | 15 +++++++++++++--
1 files changed, 13 insertions(+), 2 deletions(-)
diff --git a/src/main/java/com/ycl/jxkg/rabbitmq/consumer/Consumer.java b/src/main/java/com/ycl/jxkg/rabbitmq/consumer/Consumer.java
index 7dee25c..8d05fb7 100644
--- a/src/main/java/com/ycl/jxkg/rabbitmq/consumer/Consumer.java
+++ b/src/main/java/com/ycl/jxkg/rabbitmq/consumer/Consumer.java
@@ -3,9 +3,12 @@
import com.alibaba.fastjson2.JSON;
import com.baomidou.mybatisplus.extension.conditions.update.LambdaUpdateChainWrapper;
import com.ycl.jxkg.domain.entity.Exam;
+import com.ycl.jxkg.domain.entity.Meet;
import com.ycl.jxkg.enums.general.ExamStatusEnum;
import com.ycl.jxkg.mapper.ExamMapper;
+import com.ycl.jxkg.mapper.MeetMapper;
import com.ycl.jxkg.rabbitmq.msg.ExamStatusMsg;
+import com.ycl.jxkg.rabbitmq.msg.MeetStatusMsg;
import lombok.RequiredArgsConstructor;
import org.springframework.amqp.core.Message;
import org.springframework.amqp.rabbit.annotation.*;
@@ -22,7 +25,7 @@
public class Consumer {
private final ExamMapper examMapper;
-
+ private final MeetMapper meetMapper;
/**
* 鑰冭瘯鐘舵�佹洿鏂扮殑娑堣垂鑰�
*
@@ -50,6 +53,14 @@
*/
@RabbitListener(queues = "meetDlxQueue")
public void meetConsumer(Message message){
- System.out.println(message);
+ MeetStatusMsg meetStatusMsg = JSON.parseObject(message.getBody(), MeetStatusMsg.class);
+ Meet meet = meetMapper.selectById(meetStatusMsg.getMeetId());
+ if (Objects.nonNull(meet) && meetStatusMsg.getVersion().equals(meet.getUpdateVersion())) {
+ // 涓嶄娇鐢╱pdateById杩欑鏂瑰紡锛岄伩鍏嶄箰瑙傞攣鍔犱竴銆�
+ new LambdaUpdateChainWrapper<>(meetMapper)
+ .eq(Meet::getId, meet.getId())
+ .set(Meet::getStatus, meetStatusMsg.getMeetStatus())
+ .update();
+ }
}
}
--
Gitblit v1.8.0