From 6eed8cac891460d48b84e16dade92ab110a1b177 Mon Sep 17 00:00:00 2001
From: “mitao” <“2763622819@qq.com”>
Date: 星期三, 11 三月 2026 17:59:41 +0800
Subject: [PATCH] bugfix
---
xp-robotaxi-operation-boot/src/main/java/com/xiaopeng/operation/service/impl/XpInvitationCodeServiceImpl.java | 12 ++++++++++++
1 files changed, 12 insertions(+), 0 deletions(-)
diff --git a/xp-robotaxi-operation-boot/src/main/java/com/xiaopeng/operation/service/impl/XpInvitationCodeServiceImpl.java b/xp-robotaxi-operation-boot/src/main/java/com/xiaopeng/operation/service/impl/XpInvitationCodeServiceImpl.java
index 3330f51..eac9104 100644
--- a/xp-robotaxi-operation-boot/src/main/java/com/xiaopeng/operation/service/impl/XpInvitationCodeServiceImpl.java
+++ b/xp-robotaxi-operation-boot/src/main/java/com/xiaopeng/operation/service/impl/XpInvitationCodeServiceImpl.java
@@ -5,6 +5,7 @@
import com.xiaopeng.api.model.operation.XpWhitelist;
import com.xiaopeng.common.core.domain.R;
import com.xiaopeng.common.core.web.page.PageInfo;
+import com.xiaopeng.operation.constant.I18nKeyConstant;
import com.xiaopeng.operation.mapper.XpInvitationCodeMapper;
import com.xiaopeng.operation.mapper.XpWhitelistMapper;
import com.xiaopeng.operation.query.InvitationPageListQuery;
@@ -31,6 +32,7 @@
@Autowired
private XpWhitelistMapper xpWhitelistMapper;
+ private static final long INVITATION_CODE_LIMIT = 500L;
@Override
public PageInfo<XpInvitationCode> pageList(InvitationPageListQuery query) {
PageInfo<XpInvitationCode> pageInfo = new PageInfo<>(query.getPageNum(),query.getPageSize());
@@ -48,6 +50,16 @@
@Override
public R add(String phones) {
+ long existing = this.count();
+ long incoming = Arrays.stream(Optional.ofNullable(phones).orElse("").split(","))
+ .map(String::trim)
+ .filter(StringUtils::hasLength)
+ .count();
+ if (existing >= INVITATION_CODE_LIMIT || existing + incoming > INVITATION_CODE_LIMIT) {
+ return R.fail(String.format("系统最多只能有%d个邀请码,当前已有%d个,本次新增%d个,无法生成", INVITATION_CODE_LIMIT, existing, incoming),
+ I18nKeyConstant.INVITATION_LIMIT_EXCEEDED);
+ }
+
Map<String, Long> codeMap = this.list().stream()
.collect(Collectors.toMap(XpInvitationCode::getInvitationCode, XpInvitationCode::getId));
if (StringUtils.hasLength(phones)){
--
Gitblit v1.7.1