From 69743d4ef063c11db2caa2b35d26c7dd25f7e20b Mon Sep 17 00:00:00 2001 From: shahaibo <1023316923@qq.com> Date: Mon, 23 Dec 2024 10:27:01 +0800 Subject: [PATCH] =?UTF-8?q?BUGFIX:=E8=B0=B7=E6=AD=8C=E5=BF=AB=E6=8D=B7?= =?UTF-8?q?=E7=99=BB=E5=BD=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../da/service/impl/AccountServiceImpl.java | 32 ++++++++++++------- 1 file changed, 20 insertions(+), 12 deletions(-) diff --git a/src/main/java/com/ai/da/service/impl/AccountServiceImpl.java b/src/main/java/com/ai/da/service/impl/AccountServiceImpl.java index d91ce874..c30813a7 100644 --- a/src/main/java/com/ai/da/service/impl/AccountServiceImpl.java +++ b/src/main/java/com/ai/da/service/impl/AccountServiceImpl.java @@ -2217,20 +2217,28 @@ public class AccountServiceImpl extends ServiceImpl impl accountExtendInsert.setHeadImgUrl(pictureUrl); accountExtendInsert.setName(name); + QueryWrapper accountQueryWrapper = new QueryWrapper<>(); + accountQueryWrapper.lambda().eq(Account::getUserEmail, email); // 根据邮箱查询用户 + List accounts = accountMapper.selectList(accountQueryWrapper); + // 用户不存在,创建新用户(自动注册) Account newUser = new Account(); - newUser.setUserEmail(email); - newUser.setUserName(name); - newUser.setUserPassword("Third-000000"); - newUser.setLanguage(Language.ENGLISH.name()); - newUser.setValidStartTime(System.currentTimeMillis()); - newUser.setValidEndTime(toDayEnd(Instant.now().plus(5, ChronoUnit.DAYS).toEpochMilli())); - newUser.setCreateDate(new Date()); - newUser.setIsTrial(1); - newUser.setIsBeginner(1); - newUser.setCredits(BigDecimal.valueOf(100)); - newUser.setSystemUser(3); - accountMapper.insert(newUser); + if (CollectionUtil.isNotEmpty(accounts)) { + newUser = CopyUtil.copyObject(accounts.get(0), Account.class); + }else { + newUser.setUserEmail(email); + newUser.setUserName(name); + newUser.setUserPassword("Third-000000"); + newUser.setLanguage(Language.ENGLISH.name()); + newUser.setValidStartTime(System.currentTimeMillis()); + newUser.setValidEndTime(toDayEnd(Instant.now().plus(5, ChronoUnit.DAYS).toEpochMilli())); + newUser.setCreateDate(new Date()); + newUser.setIsTrial(1); + newUser.setIsBeginner(1); + newUser.setCredits(BigDecimal.valueOf(100)); + newUser.setSystemUser(3); + accountMapper.insert(newUser); + } accountExtendInsert.setAccountId(newUser.getId()); accountExtendMapper.insert(accountExtendInsert);