From a53bc3c11cadb986c76a89bbebec27d42c08d3dc Mon Sep 17 00:00:00 2001 From: Derran Date: Wed, 28 Jan 2026 15:51:44 +0800 Subject: [PATCH] =?UTF-8?q?=E7=9B=B4=E6=92=AD=E7=BA=A2=E5=A8=98=E4=BB=BB?= =?UTF-8?q?=E5=8A=A1?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../EffectiveBlindDateCountCommittedMQ.java | 21 +++++++++++++++++++ .../utc/UserTaskCompleteEventHandler.java | 14 +++++++++++++ .../infrastructure/constant/MqExchange.java | 2 ++ .../dam/infrastructure/constant/MqQueue.java | 2 ++ 4 files changed, 39 insertions(+) create mode 100644 dating-agency-mall-event/src/main/java/com/qniao/dam/domian/aggregate/utc/event/EffectiveBlindDateCountCommittedMQ.java diff --git a/dating-agency-mall-event/src/main/java/com/qniao/dam/domian/aggregate/utc/event/EffectiveBlindDateCountCommittedMQ.java b/dating-agency-mall-event/src/main/java/com/qniao/dam/domian/aggregate/utc/event/EffectiveBlindDateCountCommittedMQ.java new file mode 100644 index 0000000..8244907 --- /dev/null +++ b/dating-agency-mall-event/src/main/java/com/qniao/dam/domian/aggregate/utc/event/EffectiveBlindDateCountCommittedMQ.java @@ -0,0 +1,21 @@ +package com.qniao.dam.domian.aggregate.utc.event; + +import com.qniao.dam.domian.aggregate.tasktemplate.constant.SubTaskTypeEnum; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import java.io.Serializable; + +@Data +public class EffectiveBlindDateCountCommittedMQ implements Serializable { + + @ApiModelProperty("用户标识") + private Long userId; + + @ApiModelProperty("子任务类型") + private SubTaskTypeEnum subTaskType; + + @ApiModelProperty("提交次数") + private Integer commitCount; + +} diff --git a/dating-agency-mall-server/src/main/java/com/qniao/dam/application/handler/utc/UserTaskCompleteEventHandler.java b/dating-agency-mall-server/src/main/java/com/qniao/dam/application/handler/utc/UserTaskCompleteEventHandler.java index 606f082..b3f6a27 100644 --- a/dating-agency-mall-server/src/main/java/com/qniao/dam/application/handler/utc/UserTaskCompleteEventHandler.java +++ b/dating-agency-mall-server/src/main/java/com/qniao/dam/application/handler/utc/UserTaskCompleteEventHandler.java @@ -10,6 +10,7 @@ import com.qniao.dam.domian.aggregate.tasktemplate.constant.SubTaskTypeEnum; import com.qniao.dam.domian.aggregate.tasktemplate.constant.TaskGroupEnum; import com.qniao.dam.domian.aggregate.tasktemplate.constant.TaskStageEnum; import com.qniao.dam.domian.aggregate.tasktemplate.constant.TaskTypeEnum; +import com.qniao.dam.domian.aggregate.utc.event.EffectiveBlindDateCountCommittedMQ; import com.qniao.dam.domian.aggregate.utc.event.UserEffectiveLiveDurationCommittedMQ; import com.qniao.dam.domian.aggregate.utc.event.UserLiveRoomCheckInUserCountCommittedMQ; import com.qniao.dam.infrastructure.constant.MqExchange; @@ -58,6 +59,19 @@ public class UserTaskCompleteEventHandler extends BaseApplicationService { } } + @RabbitListener(bindings = @QueueBinding(value = @Queue(MqQueue.EFFECTIVE_BLIND_DATE_COUNT_COMMITTED), + exchange = @Exchange(value = MqExchange.EFFECTIVE_BLIND_DATE_COUNT_COMMITTED, + type = ExchangeTypes.FANOUT))) + public void handle(EffectiveBlindDateCountCommittedMQ mq) { + try { + synchronized (mq.getUserId().toString().intern()) { + commitDailyTaskTaskComplete(mq.getUserId(), mq.getSubTaskType(), mq.getCommitCount()); + } + } catch (Exception e) { + log.error("直播间相亲提交事件处理异常", e); + } + } + @RabbitListener(bindings = @QueueBinding(value = @Queue(MqQueue.LIVE_ROOM_CHECK_IN_USER_COUNT_COMMITTED), exchange = @Exchange(value = MqExchange.LIVE_ROOM_CHECK_IN_USER_COUNT_COMMITTED, type = ExchangeTypes.FANOUT))) diff --git a/dating-agency-mall-server/src/main/java/com/qniao/dam/infrastructure/constant/MqExchange.java b/dating-agency-mall-server/src/main/java/com/qniao/dam/infrastructure/constant/MqExchange.java index afc0f71..4ee141c 100644 --- a/dating-agency-mall-server/src/main/java/com/qniao/dam/infrastructure/constant/MqExchange.java +++ b/dating-agency-mall-server/src/main/java/com/qniao/dam/infrastructure/constant/MqExchange.java @@ -40,5 +40,7 @@ public interface MqExchange { String EFFECTIVE_LIVE_DURATION_COMMITTED = "fanout.effectiveLiveDurationCommittedMQ"; + String EFFECTIVE_BLIND_DATE_COUNT_COMMITTED = "fanout.effectiveBlindDateCountCommitted"; + String LIVE_ROOM_CHECK_IN_USER_COUNT_COMMITTED = "fanout.liveRoomCheckInUserCountCommitted"; } diff --git a/dating-agency-mall-server/src/main/java/com/qniao/dam/infrastructure/constant/MqQueue.java b/dating-agency-mall-server/src/main/java/com/qniao/dam/infrastructure/constant/MqQueue.java index 686891a..58c2b02 100644 --- a/dating-agency-mall-server/src/main/java/com/qniao/dam/infrastructure/constant/MqQueue.java +++ b/dating-agency-mall-server/src/main/java/com/qniao/dam/infrastructure/constant/MqQueue.java @@ -32,6 +32,8 @@ public interface MqQueue { String EFFECTIVE_LIVE_DURATION_COMMITTED = MqExchange.EFFECTIVE_LIVE_DURATION_COMMITTED + serviceName; + String EFFECTIVE_BLIND_DATE_COUNT_COMMITTED = MqExchange.EFFECTIVE_BLIND_DATE_COUNT_COMMITTED + serviceName; + String LIVE_ROOM_CHECK_IN_USER_COUNT_COMMITTED = MqExchange.LIVE_ROOM_CHECK_IN_USER_COUNT_COMMITTED + serviceName; }