This commit is contained in:
shahaibo
2024-04-02 10:15:35 +08:00
parent 737ec594fd
commit 782a4f9976
4 changed files with 20 additions and 5 deletions

View File

@@ -466,7 +466,20 @@ public class AccountServiceImpl extends ServiceImpl<AccountMapper, Account> impl
}
@Override
public Boolean addTrialUser(AccountTrialDTO accountTrialDTO) {
public Boolean addTrialUser(AccountTrialDTO accountTrialDTO, HttpServletRequest request) {
// 获取用户申请试用IP
String ipAddress = RequestInfoUtil.getIpAddress(request);
// 先检测试用订单
QueryWrapper<TrialOrder> trialOrderQueryWrapper = new QueryWrapper<>();
trialOrderQueryWrapper.lambda().eq(TrialOrder::getIp, ipAddress);
trialOrderQueryWrapper.lambda().and(wrapper ->
wrapper.eq(TrialOrder::getEmail, accountTrialDTO.getEmail())
.or() // OR
.like(TrialOrder::getUserName, accountTrialDTO.getUserName()));
List<TrialOrder> trialOrders = trialOrderMapper.selectList(trialOrderQueryWrapper);
if (CollectionUtil.isNotEmpty(trialOrders)) {
throw new BusinessException("You have submitted a trial application, please wait for approval.");
}
// 先检测用户名和邮箱
QueryWrapper<Account> qw = new QueryWrapper<>();
qw.lambda().eq(Account::getUserEmail, accountTrialDTO.getEmail())
@@ -487,6 +500,7 @@ public class AccountServiceImpl extends ServiceImpl<AccountMapper, Account> impl
TrialOrder trialOrder = CopyUtil.copyObject(accountTrialDTO, TrialOrder.class);
trialOrder.setCreateTime(LocalDateTime.now());
trialOrder.setStatus(0);
trialOrder.setIp(ipAddress);
trialOrderMapper.insert(trialOrder);
SendEmailUtil.sendCustomEmail("1023316923@qq.com", null, trialOrder,1);
SendEmailUtil.sendCustomEmail("calvinwong@aidlab.hk", null, trialOrder,1);