From ad491191ab50a259da548863d805c57d8a95d083 Mon Sep 17 00:00:00 2001
From: liujie <1793218484@qq.com>
Date: 星期二, 15 九月 2026 11:16:12 +0800
Subject: [PATCH] update
---
backend/src/main/java/com/tourguide/modules/user/service/GuideUserService.java | 17 +++++++++--------
1 files changed, 9 insertions(+), 8 deletions(-)
diff --git a/backend/src/main/java/com/tourguide/modules/user/service/GuideUserService.java b/backend/src/main/java/com/tourguide/modules/user/service/GuideUserService.java
index c68ba55..6fb2478 100644
--- a/backend/src/main/java/com/tourguide/modules/user/service/GuideUserService.java
+++ b/backend/src/main/java/com/tourguide/modules/user/service/GuideUserService.java
@@ -1,7 +1,6 @@
package com.tourguide.modules.user.service;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
-import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.tourguide.common.api.PageResponse;
import com.tourguide.common.exception.BusinessException;
@@ -333,25 +332,27 @@
}
private void anonymizeCancelledGuide(GuideUser user) {
- userMapper.update(null, new LambdaUpdateWrapper<GuideUser>()
- .eq(GuideUser::getId, user.getId())
- .set(GuideUser::getUsername, "deleted_" + UUID.randomUUID().toString().replace("-", "").substring(0, 24))
- .set(GuideUser::getMobile, null)
- .set(GuideUser::getCertificateNo, null)
- .set(GuideUser::getIdCardNo, null));
+ String deletedUsername = "deleted_" + UUID.randomUUID().toString().replace("-", "").substring(0, 24);
+ userMapper.anonymizeCancelledGuide(user.getId(), deletedUsername);
}
private void ensureUniqueGuideIdentity(GuideApplication application, GuideUser existingUser) {
+ if (StringUtils.hasText(application.getIdCardNo())) {
+ // 兼容旧注销数据:释放已注销账号占用的身份证唯一索引。
+ userMapper.clearCancelledIdentityByIdCard(application.getIdCardNo().trim().toUpperCase());
+ }
if (StringUtils.hasText(application.getCertificateNo())
&& userMapper.selectCount(new LambdaQueryWrapper<GuideUser>()
.eq(GuideUser::getCertificateNo, application.getCertificateNo())
+ .ne(GuideUser::getStatus, STATUS_CANCELLED)
.ne(existingUser != null && existingUser.getId() != null,
GuideUser::getId, existingUser == null ? null : existingUser.getId())) > 0) {
throw new BusinessException(409, "该导游证号已存在导游账号");
}
if (StringUtils.hasText(application.getIdCardNo())
&& userMapper.selectCount(new LambdaQueryWrapper<GuideUser>()
- .eq(GuideUser::getIdCardNo, application.getIdCardNo())
+ .eq(GuideUser::getIdCardNo, application.getIdCardNo().trim().toUpperCase())
+ .ne(GuideUser::getStatus, STATUS_CANCELLED)
.ne(existingUser != null && existingUser.getId() != null,
GuideUser::getId, existingUser == null ? null : existingUser.getId())) > 0) {
throw new BusinessException(409, "该身份证号已存在导游账号");
--
Gitblit v1.7.1