TASK: 试用用户添加测试;

This commit is contained in:
shahaibo
2023-12-11 16:59:05 +08:00
parent f80e5ce455
commit 1f77698bc4
4 changed files with 72 additions and 0 deletions

View File

@@ -1,11 +1,14 @@
package com.ai.da.controller;
import com.ai.da.common.response.PageBaseResponse;
import com.ai.da.common.response.Response;
import com.ai.da.common.security.jwt.JWTTokenHelper;
import com.ai.da.mapper.entity.TrialOrder;
import com.ai.da.model.dto.*;
import com.ai.da.model.enums.Language;
import com.ai.da.model.vo.AccountLoginVO;
import com.ai.da.model.vo.AccountPreLoginVO;
import com.ai.da.model.vo.QueryLibraryPageVO;
import com.ai.da.service.AccountService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
@@ -15,6 +18,7 @@ import org.springframework.web.bind.annotation.*;
import javax.annotation.Resource;
import javax.servlet.http.HttpServletRequest;
import javax.validation.Valid;
import java.util.List;
@Api(tags = "Account模块")
@@ -91,4 +95,16 @@ public class AccountController {
public Response<Boolean> completeGuidance() {
return Response.success(accountService.completeGuidance());
}
@ApiOperation(value = "试用订单列表")
@PostMapping("/trialOrderList")
public Response<PageBaseResponse<TrialOrder>> trialOrderList(@Valid @RequestBody TrialOrderDTO trialOrderDTO) {
return Response.success(PageBaseResponse.success(accountService.trialOrderList(trialOrderDTO)));
}
@ApiOperation(value = "通过试用订单审批")
@PostMapping("/trialOrderApproval")
public Response<Boolean> trialOrderApproval(@RequestParam("ids") List<Long> ids) {
return Response.success(accountService.trialOrderApproval(ids));
}
}

View File

@@ -0,0 +1,15 @@
package com.ai.da.model.dto;
import com.ai.da.model.vo.PageQueryBaseVo;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
@Data
@ApiModel("登入")
public class TrialOrderDTO extends PageQueryBaseVo {
}

View File

@@ -1,15 +1,18 @@
package com.ai.da.service;
import com.ai.da.mapper.entity.Account;
import com.ai.da.mapper.entity.TrialOrder;
import com.ai.da.model.dto.*;
import com.ai.da.model.enums.Language;
import com.ai.da.model.vo.AccountLoginVO;
import com.ai.da.model.vo.AccountPreLoginVO;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.service.IService;
import org.springframework.web.bind.annotation.RequestBody;
import javax.servlet.http.HttpServletRequest;
import javax.validation.Valid;
import java.util.List;
/**
* 服务类
@@ -100,4 +103,8 @@ public interface AccountService extends IService<Account> {
Boolean completeGuidance();
Boolean addTrialUser(AccountTrialDTO accountTrialDTO);
IPage<TrialOrder> trialOrderList(TrialOrderDTO trialOrderDTO);
Boolean trialOrderApproval(List<Long> ids);
}

View File

@@ -27,6 +27,8 @@ import com.ai.da.service.LibraryService;
import com.ai.da.service.UserLikeGroupService;
import com.alibaba.fastjson.JSON;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang3.StringUtils;
@@ -501,4 +503,36 @@ public class AccountServiceImpl extends ServiceImpl<AccountMapper, Account> impl
}
return Boolean.TRUE;
}
@Override
public IPage<TrialOrder> trialOrderList(TrialOrderDTO trialOrderDTO) {
QueryWrapper<TrialOrder> qw = new QueryWrapper<>();
qw.lambda().eq(TrialOrder::getStatus, 0);
return trialOrderMapper.selectPage(new Page<>(trialOrderDTO.getPage(), trialOrderDTO.getSize()), qw);
}
@Override
public Boolean trialOrderApproval(List<Long> ids) {
for (Long id : ids) {
TrialOrder trialOrder = trialOrderMapper.selectById(id);
trialOrder.setStatus(1);
trialOrder.setUpdateTime(LocalDateTime.now());
trialOrderMapper.updateById(trialOrder);
Account account = new Account();
account.setUserName(trialOrder.getUserName());
account.setUserPassword("Third-000000");
account.setUserEmail(trialOrder.getEmail());
account.setLanguage(Language.ENGLISH.name());
account.setValidStartTime(System.currentTimeMillis());
account.setValidEndTime(Instant.now().plus(3, ChronoUnit.DAYS).toEpochMilli());
account.setCreateDate(new Date());
account.setIsTrial(1);
account.setIsBeginner(1);
accountMapper.insert(account);
// 发送邮件提醒用户试用用户已创建
SendEmailUtil.sendCustomEmail("1023316923@qq.com", null, trialOrder,2);
SendEmailUtil.sendCustomEmail(account.getUserEmail(), null, trialOrder, 3);
}
return Boolean.TRUE;
}
}