勋章test处理
This commit is contained in:
parent
331716c086
commit
e73ed48313
@ -7,9 +7,13 @@ import com.red.circle.mq.business.model.event.BadgeOperateEvent;
|
||||
import com.red.circle.mq.rocket.business.producer.UserMqMessageService;
|
||||
import com.red.circle.other.infra.database.mongo.entity.team.team.TeamMember;
|
||||
import com.red.circle.other.infra.database.mongo.service.team.team.TeamMemberService;
|
||||
import com.red.circle.other.infra.database.rds.entity.badge.BadgeBackpack;
|
||||
import com.red.circle.other.infra.database.rds.entity.badge.BadgeConfig;
|
||||
import com.red.circle.other.infra.database.rds.entity.sys.Administrator;
|
||||
import com.red.circle.other.infra.database.rds.entity.team.BusinessDevelopmentBaseInfo;
|
||||
import com.red.circle.other.infra.database.rds.entity.team.RoomBdLead;
|
||||
import com.red.circle.other.infra.database.rds.service.badge.BadgeBackpackService;
|
||||
import com.red.circle.other.infra.database.rds.service.badge.BadgeConfigService;
|
||||
import com.red.circle.other.infra.database.rds.service.sys.AdministratorService;
|
||||
import com.red.circle.other.infra.database.rds.service.team.BusinessDevelopmentBaseInfoService;
|
||||
import com.red.circle.other.infra.database.rds.service.team.RoomBdLeadService;
|
||||
@ -49,6 +53,10 @@ public class BatchSendBadgeTest {
|
||||
private AdministratorService administratorService;
|
||||
@Autowired
|
||||
private FreightGoldClient freightGoldClient;
|
||||
@Autowired
|
||||
private BadgeBackpackService badgeBackpackService;
|
||||
@Autowired
|
||||
private BadgeConfigService badgeConfigService;
|
||||
|
||||
// 线程池大小
|
||||
private static final int THREAD_POOL_SIZE = 10;
|
||||
@ -67,13 +75,13 @@ public class BatchSendBadgeTest {
|
||||
// sendBdLeaderBadges(executor);
|
||||
|
||||
// 3. 批量发放BD勋章
|
||||
// sendBdBadges(executor);
|
||||
sendBdBadges(executor);
|
||||
|
||||
// 4. 批量发放管理员勋章
|
||||
// sendAdminBadges(executor);
|
||||
|
||||
// 5. 批量发放金币代理勋章
|
||||
sendRechargeAgencyBadges(executor);
|
||||
// sendRechargeAgencyBadges(executor);
|
||||
|
||||
} finally {
|
||||
executor.shutdown();
|
||||
@ -89,6 +97,18 @@ public class BatchSendBadgeTest {
|
||||
List<TeamMember> list = teamMemberService.list();
|
||||
log.info("开始发放代理主播勋章,总数: {}", list.size());
|
||||
|
||||
BadgeConfig agencyConfig = badgeConfigService.getByBadgeKey(BadgeKeyEnum.AGENCY.name());
|
||||
if (agencyConfig == null) {
|
||||
log.error("{}徽章不存在", BadgeKeyEnum.AGENCY.name());
|
||||
return;
|
||||
}
|
||||
|
||||
BadgeConfig hostConfig = badgeConfigService.getByBadgeKey(BadgeKeyEnum.HOST.name());
|
||||
if (hostConfig == null) {
|
||||
log.error("{}徽章不存在", BadgeKeyEnum.HOST.name());
|
||||
return;
|
||||
}
|
||||
|
||||
AtomicInteger counter = new AtomicInteger(0);
|
||||
|
||||
list.forEach(teamMember -> {
|
||||
@ -96,22 +116,34 @@ public class BatchSendBadgeTest {
|
||||
try {
|
||||
Long userId = teamMember.getMemberId();
|
||||
|
||||
// 发放主播勋章
|
||||
userMqMessageService.sendBadgeOperateEvent(
|
||||
userId,
|
||||
BadgeKeyEnum.HOST.name(),
|
||||
BadgeOperateEvent.OperationType.WEAR.name()
|
||||
);
|
||||
|
||||
if (teamMember.getRole() == TeamMemberRole.OWN) {
|
||||
// 发放代理勋章
|
||||
BadgeBackpack existBadge = badgeBackpackService.query()
|
||||
.eq(BadgeBackpack::getUserId, userId)
|
||||
.eq(BadgeBackpack::getBadgeId, hostConfig.getId())
|
||||
.getOne();
|
||||
if (existBadge == null) {
|
||||
// 发放主播勋章
|
||||
userMqMessageService.sendBadgeOperateEvent(
|
||||
userId,
|
||||
BadgeKeyEnum.AGENCY.name(),
|
||||
BadgeKeyEnum.HOST.name(),
|
||||
BadgeOperateEvent.OperationType.WEAR.name()
|
||||
);
|
||||
}
|
||||
|
||||
if (teamMember.getRole() == TeamMemberRole.OWN) {
|
||||
BadgeBackpack badgeBackpack = badgeBackpackService.query()
|
||||
.eq(BadgeBackpack::getUserId, userId)
|
||||
.eq(BadgeBackpack::getBadgeId, agencyConfig.getId())
|
||||
.getOne();
|
||||
if (badgeBackpack == null) {
|
||||
// 发放代理勋章
|
||||
userMqMessageService.sendBadgeOperateEvent(
|
||||
userId,
|
||||
BadgeKeyEnum.AGENCY.name(),
|
||||
BadgeOperateEvent.OperationType.WEAR.name()
|
||||
);
|
||||
}
|
||||
}
|
||||
|
||||
int count = counter.incrementAndGet();
|
||||
if (count % 100 == 0) {
|
||||
log.info("代理主播勋章发放进度: {}/{}", count, list.size());
|
||||
@ -170,6 +202,12 @@ public class BatchSendBadgeTest {
|
||||
List<BusinessDevelopmentBaseInfo> list = businessDevelopmentBaseInfoService.listAll();
|
||||
log.info("开始发放BD勋章,总数: {}", list.size());
|
||||
|
||||
BadgeConfig bdConfig = badgeConfigService.getByBadgeKey(BadgeKeyEnum.BD.name());
|
||||
if (bdConfig == null) {
|
||||
log.error("{}徽章不存在", BadgeKeyEnum.BD.name());
|
||||
return;
|
||||
}
|
||||
|
||||
AtomicInteger counter = new AtomicInteger(0);
|
||||
|
||||
list.forEach(bd -> {
|
||||
@ -177,11 +215,18 @@ public class BatchSendBadgeTest {
|
||||
try {
|
||||
Long userId = bd.getUserId();
|
||||
|
||||
userMqMessageService.sendBadgeOperateEvent(
|
||||
userId,
|
||||
BadgeKeyEnum.BD.name(),
|
||||
BadgeOperateEvent.OperationType.WEAR.name()
|
||||
);
|
||||
BadgeBackpack existBadge = badgeBackpackService.query()
|
||||
.eq(BadgeBackpack::getUserId, userId)
|
||||
.eq(BadgeBackpack::getBadgeId, bdConfig.getId())
|
||||
.getOne();
|
||||
if (existBadge == null) {
|
||||
// 发放BD勋章
|
||||
userMqMessageService.sendBadgeOperateEvent(
|
||||
userId,
|
||||
BadgeKeyEnum.BD.name(),
|
||||
BadgeOperateEvent.OperationType.WEAR.name()
|
||||
);
|
||||
}
|
||||
|
||||
int count = counter.incrementAndGet();
|
||||
if (count % 100 == 0) {
|
||||
@ -269,6 +314,12 @@ public class BatchSendBadgeTest {
|
||||
int cursor = 1;
|
||||
boolean hasMore = true;
|
||||
|
||||
BadgeConfig badgeConfig = badgeConfigService.getByBadgeKey(BadgeKeyEnum.RECHARGE_AGENCY.name());
|
||||
if (badgeConfig == null) {
|
||||
log.error("{}徽章不存在", BadgeKeyEnum.RECHARGE_AGENCY.name());
|
||||
return;
|
||||
}
|
||||
|
||||
while (hasMore) {
|
||||
PageQuery pageQuery = new PageQuery();
|
||||
pageQuery.setCursor(cursor);
|
||||
@ -299,6 +350,14 @@ public class BatchSendBadgeTest {
|
||||
return;
|
||||
}
|
||||
|
||||
BadgeBackpack existBadge = badgeBackpackService.query()
|
||||
.eq(BadgeBackpack::getUserId, userId)
|
||||
.eq(BadgeBackpack::getBadgeId, badgeConfig.getId())
|
||||
.getOne();
|
||||
if (existBadge != null) {
|
||||
return;
|
||||
}
|
||||
|
||||
userMqMessageService.sendBadgeOperateEvent(
|
||||
userId,
|
||||
BadgeKeyEnum.RECHARGE_AGENCY.name(),
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user