diff --git a/rc-service/rc-service-other/other-infrastructure/src/main/java/com/red/circle/other/infra/common/team/decay/TeamMemberRemoveDecay.java b/rc-service/rc-service-other/other-infrastructure/src/main/java/com/red/circle/other/infra/common/team/decay/TeamMemberRemoveDecay.java index 17db1a0f..b931aed6 100644 --- a/rc-service/rc-service-other/other-infrastructure/src/main/java/com/red/circle/other/infra/common/team/decay/TeamMemberRemoveDecay.java +++ b/rc-service/rc-service-other/other-infrastructure/src/main/java/com/red/circle/other/infra/common/team/decay/TeamMemberRemoveDecay.java @@ -7,7 +7,9 @@ import com.red.circle.component.mq.service.FixedTopic; import com.red.circle.component.mq.service.SenderService; import com.red.circle.component.redis.service.RedisService; import com.red.circle.framework.core.asserts.ResponseAssert; +import com.red.circle.mq.business.model.event.BadgeOperateEvent; import com.red.circle.mq.business.model.event.team.TeamSalaryCountEvent; +import com.red.circle.mq.rocket.business.producer.UserMqMessageService; import com.red.circle.mq.rocket.business.streams.TeamSalaryCountSink; import com.red.circle.other.infra.database.mongo.entity.team.team.TeamApplicationProcess; import com.red.circle.other.infra.database.mongo.entity.team.team.TeamApplicationProcessApproval; @@ -27,6 +29,7 @@ import com.red.circle.other.infra.database.rds.entity.team.TeamTerminationFeeRec import com.red.circle.other.infra.database.rds.service.team.BillDiamondBalanceDetailsService; import com.red.circle.other.infra.database.rds.service.team.BillDiamondBalanceService; import com.red.circle.other.infra.database.rds.service.team.TeamTerminationFeeRecordService; +import com.red.circle.other.inner.enums.material.BadgeKeyEnum; import com.red.circle.other.inner.model.cmd.team.TeamMemberIdCmd; import com.red.circle.other.inner.enums.team.TeamAppProcessApprovalReason; import com.red.circle.other.inner.enums.team.TeamApplicationType; @@ -72,6 +75,7 @@ public class TeamMemberRemoveDecay { private final ActivityAgentAnchorCountService activityAgentAnchorCountService; private final TeamApplicationProcessApprovalService applicationProcessApprovalService; private final BillDiamondBalanceService billDiamondBalanceService; + private final UserMqMessageService userMqMessageService; private final BillDiamondBalanceDetailsService billDiamondBalanceDetailsService; public void execute(TeamMemberIdCmd param) { @@ -195,6 +199,10 @@ public class TeamMemberRemoveDecay { teamProfileService.decrCounter(teamMember.getTeamId()); } + + userMqMessageService.sendBadgeOperateEvent(memberSortId, BadgeKeyEnum.AGENCY.name(), BadgeOperateEvent.OperationType.REMOVE.name()); + userMqMessageService.sendBadgeOperateEvent(memberSortId, BadgeKeyEnum.HOST.name(), BadgeOperateEvent.OperationType.REMOVE.name()); + redisService.unlock(lockKey); return teamMember; } diff --git a/rc-service/rc-service-other/other-infrastructure/src/main/java/com/red/circle/other/infra/common/team/decay/UpdateMemberTeamDecay.java b/rc-service/rc-service-other/other-infrastructure/src/main/java/com/red/circle/other/infra/common/team/decay/UpdateMemberTeamDecay.java index 5b57480a..0c27a61e 100644 --- a/rc-service/rc-service-other/other-infrastructure/src/main/java/com/red/circle/other/infra/common/team/decay/UpdateMemberTeamDecay.java +++ b/rc-service/rc-service-other/other-infrastructure/src/main/java/com/red/circle/other/infra/common/team/decay/UpdateMemberTeamDecay.java @@ -7,7 +7,9 @@ import com.red.circle.component.mq.service.SenderService; import com.red.circle.component.redis.service.RedisService; import com.red.circle.framework.core.asserts.ResponseAssert; import com.red.circle.framework.core.response.CommonErrorCode; +import com.red.circle.mq.business.model.event.BadgeOperateEvent; import com.red.circle.mq.business.model.event.team.TeamSalaryCountEvent; +import com.red.circle.mq.rocket.business.producer.UserMqMessageService; import com.red.circle.mq.rocket.business.streams.TeamSalaryCountSink; import com.red.circle.other.infra.convertor.team.TeamInfraConvertor; import com.red.circle.other.infra.database.mongo.entity.team.team.TeamApplicationProcessApproval; @@ -26,6 +28,8 @@ import com.red.circle.other.infra.database.mongo.service.team.team.TeamProfileSe import com.red.circle.other.infra.database.mongo.service.user.region.SysRegionConfigService; import com.red.circle.other.inner.asserts.user.UserErrorCode; import com.red.circle.other.inner.asserts.team.TeamErrorCode; +import com.red.circle.other.inner.enums.material.BadgeConfigTypeEnum; +import com.red.circle.other.inner.enums.material.BadgeKeyEnum; import com.red.circle.other.inner.model.cmd.team.MemberTeamChangeCmd; import com.red.circle.other.inner.model.cmd.team.TeamMemberAddCmd; import com.red.circle.other.inner.model.dto.agency.agency.TeamMemberDTO; @@ -58,6 +62,7 @@ public class UpdateMemberTeamDecay { private final RedisService redisService; private final SenderService senderService; private final TeamMemberService teamMemberService; + private final UserMqMessageService userMqMessageService; private final TeamInfraConvertor teamInfraConvertor; private final TeamProfileService teamProfileService; private final TeamMemberAddDecay teamMemberAddDecay; @@ -208,6 +213,9 @@ public class UpdateMemberTeamDecay { } redisService.unlock(lockKey); + + userMqMessageService.sendBadgeOperateEvent(memberSortId, BadgeKeyEnum.AGENCY.name(), BadgeOperateEvent.OperationType.REMOVE.name()); + userMqMessageService.sendBadgeOperateEvent(memberSortId, BadgeKeyEnum.HOST.name(), BadgeOperateEvent.OperationType.REMOVE.name()); return teamMember; }