From ecb77dd6c9bd624c323e56ae1350d2b060810633 Mon Sep 17 00:00:00 2001
From: “mitao” <“2763622819@qq.com”>
Date: 星期三, 04 三月 2026 19:45:32 +0800
Subject: [PATCH] bugfix
---
xp-robotaxi-operation-boot/src/main/java/com/xiaopeng/operation/service/impl/XpWhitelistServiceImpl.java | 55 ++++++++++++++++++++++++++++++++++---------------------
1 files changed, 34 insertions(+), 21 deletions(-)
diff --git a/xp-robotaxi-operation-boot/src/main/java/com/xiaopeng/operation/service/impl/XpWhitelistServiceImpl.java b/xp-robotaxi-operation-boot/src/main/java/com/xiaopeng/operation/service/impl/XpWhitelistServiceImpl.java
index 569d30d..bdc4d69 100644
--- a/xp-robotaxi-operation-boot/src/main/java/com/xiaopeng/operation/service/impl/XpWhitelistServiceImpl.java
+++ b/xp-robotaxi-operation-boot/src/main/java/com/xiaopeng/operation/service/impl/XpWhitelistServiceImpl.java
@@ -1,12 +1,16 @@
package com.xiaopeng.operation.service.impl;
+import cn.hutool.core.collection.CollUtil;
+import cn.hutool.core.util.PhoneUtil;
import com.xiaopeng.api.model.account.SysUser;
import com.xiaopeng.api.model.operation.XpWhitelist;
import com.xiaopeng.api.model.operation.XpWhitelistOperlog;
import com.xiaopeng.common.core.domain.R;
+import com.xiaopeng.common.core.exception.ServiceException;
import com.xiaopeng.common.core.utils.ip.IpUtils;
import com.xiaopeng.common.core.web.domain.AjaxResult;
import com.xiaopeng.common.core.web.page.PageInfo;
+import com.xiaopeng.operation.constant.I18nKeyConstant;
import com.xiaopeng.operation.dto.WhitelistAddDto;
import com.xiaopeng.operation.mapper.XpWhitelistMapper;
import com.xiaopeng.operation.mapper.XpWhitelistOperlogMapper;
@@ -59,33 +63,42 @@
}
List<XpWhitelist> addList = new ArrayList<>();
List<String> accounts = Arrays.asList(dto.getAccount().split(","));
- StringBuilder operationContent = new StringBuilder("新增账号:");
- StringBuilder accountBuilder = new StringBuilder();
- for (String account : accounts) {
- XpWhitelist xpWhitelist = new XpWhitelist();
- xpWhitelist.setAccount(account);
- xpWhitelist.setStatus(true);
- xpWhitelist.setIsPriorityDispatch(dto.getIsPriorityDispatch());
- xpWhitelist.setWhitelistSource(1);
- xpWhitelist.setCreateBy(sysUser.getCreateBy());
- addList.add(xpWhitelist);
- accountBuilder.append("\"").append(account).append("\"").append(",");
+ if (CollUtil.isNotEmpty(accounts)) {
+ String notValidPhoneNumber = accounts.stream().filter(item -> !PhoneUtil.isPhone(item)).collect(Collectors.joining(","));
+ if (org.apache.commons.lang3.StringUtils.isNotBlank(notValidPhoneNumber)) {
+ throw new ServiceException("以下帐号格式不正确:" + notValidPhoneNumber, I18nKeyConstant.ACCOUNT_FORMAT_ERROR, new Object[]{notValidPhoneNumber});
+ }
+ StringBuilder operationContent = new StringBuilder("新增账号:");
+ StringBuilder accountBuilder = new StringBuilder();
+ for (String account : accounts) {
+ XpWhitelist xpWhitelist = new XpWhitelist();
+ xpWhitelist.setAccount(account);
+ xpWhitelist.setStatus(true);
+ xpWhitelist.setIsPriorityDispatch(dto.getIsPriorityDispatch());
+ xpWhitelist.setWhitelistSource(1);
+ xpWhitelist.setCreateBy(sysUser.getCreateBy());
+ addList.add(xpWhitelist);
+ accountBuilder.append("\"").append(account).append("\"").append(",");
+ }
+ XpWhitelistOperlog xpWhitelistOperlog = new XpWhitelistOperlog();
+ xpWhitelistOperlog.setOperationName(sysUser.getNickName());
+ xpWhitelistOperlog.setOperationAccount(sysUser.getPhoneNumber());
+ xpWhitelistOperlog.setOperationType(1);
+ xpWhitelistOperlog.setOperationIp(IpUtils.getIpAddr());
+ xpWhitelistOperlog.setOperationAccountId(sysUser.getId());
+ StringBuilder content = operationContent.append(accountBuilder.substring(0, accountBuilder.length() - 1));
+ xpWhitelistOperlog.setOperationContent(content.toString());
+ xpWhitelistOperlogMapper.insert(xpWhitelistOperlog);
+ this.saveBatch(addList);
}
- XpWhitelistOperlog xpWhitelistOperlog = new XpWhitelistOperlog();
- xpWhitelistOperlog.setOperationName(sysUser.getNickName());
- xpWhitelistOperlog.setOperationAccount(sysUser.getPhoneNumber());
- xpWhitelistOperlog.setOperationType(1);
- xpWhitelistOperlog.setOperationIp(IpUtils.getIpAddr());
- xpWhitelistOperlog.setOperationAccountId(sysUser.getId());
- StringBuilder content = operationContent.append(accountBuilder.substring(0, accountBuilder.length() - 1));
- xpWhitelistOperlog.setOperationContent(content.toString());
- xpWhitelistOperlogMapper.insert(xpWhitelistOperlog);
- this.saveBatch(addList);
return R.ok();
}
@Override
public R editWhitelist(XpWhitelist dto, SysUser sysUser) {
+ if (!PhoneUtil.isPhone(dto.getAccount())) {
+ throw new ServiceException("以下帐号格式不正确:", I18nKeyConstant.ACCOUNT_FORMAT_ERROR, new Object[]{dto.getAccount()});
+ }
XpWhitelist whitelist = this.getById(dto.getId());
StringBuilder operationContent = new StringBuilder("编辑账号:");
--
Gitblit v1.7.1