Merge branch 'dev/dev_xp' into dev/dev

This commit is contained in:
2024-08-06 11:30:02 +08:00
5 changed files with 45 additions and 44 deletions

View File

@@ -82,30 +82,23 @@ public class ConvenientInquiryController {
}
@ApiOperation("获取近期新用户")
@GetMapping("/recentNewUser")
public Response<IPage<Account>> recentNewUser(@ApiParam(value = "startTime") @RequestParam @Nullable String startTime,
@ApiParam(value = "endTime") @RequestParam @Nullable String endTime,
@ApiParam("userType visitor/trial/official") @RequestParam String userType,
@ApiParam("page") @RequestParam int page,
@ApiParam("size") @RequestParam int size) {
return Response.success(convenientInquiryService.recentNewUser(startTime, endTime, userType, page, size));
@PostMapping("/recentNewUser")
public Response<IPage<Account>> recentNewUser(@Valid @RequestBody QueryUserConditionsVO queryUserConditionsVO) {
return Response.success(convenientInquiryService.recentNewUser(queryUserConditionsVO));
}
@ApiOperation("获取近期新用户图表数据")
@GetMapping("/recentNewUserChart")
public Response<Map<String, Object>> recentNewUserChart(@ApiParam(value = "startTime") @RequestParam @Nullable String startTime,
@ApiParam(value = "endTime") @RequestParam @Nullable String endTime,
@ApiParam("userType") @RequestParam String userType) {
@ApiParam("userType") @RequestParam Integer userType) {
return Response.success(convenientInquiryService.recentNewUserChart(startTime, endTime, userType));
}
@ApiOperation("获取近期活跃用户")
@GetMapping("/recentActiveUser")
public Response<IPage<Account>> recentActiveUser(@ApiParam(value = "startTime") @RequestParam @Nullable String startTime,
@ApiParam(value = "endTime") @RequestParam @Nullable String endTime,
@ApiParam("pageNum") @RequestParam int page,
@ApiParam("size") @RequestParam int size) {
return Response.success(convenientInquiryService.recentActiveUser(startTime, endTime, page, size));
@PostMapping("/recentActiveUser")
public Response<IPage<Account>> recentActiveUser(@Valid @RequestBody QueryUserConditionsVO queryUserConditionsVO) {
return Response.success(convenientInquiryService.recentActiveUser(queryUserConditionsVO));
}
@ApiOperation("获取近期活跃用户图表数据")

View File

@@ -3,6 +3,7 @@ package com.ai.da.mapper.primary.entity;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
@@ -49,11 +50,13 @@ public class TrialOrder implements Serializable {
/**
* 创建时间
*/
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone="GMT+8")
private LocalDateTime createTime;
/**
* 更新时间
*/
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone="GMT+8")
private LocalDateTime updateTime;

View File

@@ -8,7 +8,6 @@ import com.ai.da.model.vo.QuestionnaireFeedbackVO;
import com.ai.da.model.vo.QuestionnaireVO;
import com.ai.da.model.vo.QueryUserConditionsVO;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.IService;
import java.util.List;
@@ -22,11 +21,11 @@ public interface ConvenientInquiryService extends IService<Questionnaire> {
List<QuestionnaireVO> getAllQuestionnaire();
IPage<Account> recentNewUser(String startTime, String endTime, String userType, int pageNum, int size);
IPage<Account> recentNewUser(QueryUserConditionsVO queryUserConditionsVO);
Map<String, Object> recentNewUserChart(String startTime, String endTime, String userType);
Map<String, Object> recentNewUserChart(String startTime, String endTime, Integer userType);
IPage<Account> recentActiveUser(String startTime, String endTime, int pageNum, int count);
IPage<Account> recentActiveUser(QueryUserConditionsVO queryUserConditionsVO);
int recentActiveUserChart(String startTime, String endTime);

View File

@@ -1361,11 +1361,18 @@ public class AccountServiceImpl extends ServiceImpl<AccountMapper, Account> impl
case 0:
// 游客
queryWrapper.eq("system_user", 0);
break;
case 1:
queryWrapper.eq("system_user", 1);
break;
case 2:
queryWrapper.eq("system_user", 2);
break;
case 3:
// 试用用户
queryWrapper.eq("system_user", 3).or().eq("system_user", 4);
case 2:
queryWrapper.eq("system_user", 1).or().eq("system_user", 2);
break;
}
}
}

View File

@@ -47,7 +47,7 @@ public class ConvenientInquiryServiceImpl extends ServiceImpl<QuestionnaireMappe
private AccountLoginLogService accountLoginLogService;
public IPage<TrialOrder> getTrial(QueryUserConditionsVO queryUserConditionsVO) {
log.info("getTrial parameter : {},page:{}, size:{}",queryUserConditionsVO,queryUserConditionsVO.getPage(),queryUserConditionsVO.getSize());
log.info("getTrial parameter : {},page:{}, size:{}", queryUserConditionsVO, queryUserConditionsVO.getPage(), queryUserConditionsVO.getSize());
/* 添加按条件查询试用用户 */
// 按用户邮箱/用户名/用户id查指定用户
QueryWrapper<TrialOrder> queryWrapper = new QueryWrapper<>();
@@ -251,29 +251,31 @@ public class ConvenientInquiryServiceImpl extends ServiceImpl<QuestionnaireMappe
/**
* 近期新增用户
*
* @param startTime 开始时间
* @param endTime 结束时间
* @param userType 用户类型 visitor\trial\official
*/
public IPage<Account> recentNewUser(String startTime, String endTime, String userType, int pageNum, int size) {
if (StringUtil.isNullOrEmpty(startTime) && StringUtil.isNullOrEmpty(endTime)) {
public IPage<Account> recentNewUser(QueryUserConditionsVO queryUserConditionsVO) {
log.info("recentActiveUser parameter : {}, page:{}, size:{}", queryUserConditionsVO, queryUserConditionsVO.getPage(), queryUserConditionsVO.getSize());
if (StringUtil.isNullOrEmpty(queryUserConditionsVO.getStartTime()) && StringUtil.isNullOrEmpty(queryUserConditionsVO.getEndTime())) {
return null;
}
if (!StringUtil.isNullOrEmpty(startTime) && StringUtil.isNullOrEmpty(endTime)) {
if (!StringUtil.isNullOrEmpty(queryUserConditionsVO.getStartTime()) && StringUtil.isNullOrEmpty(queryUserConditionsVO.getEndTime())) {
DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");
endTime = LocalDateTime.now().format(formatter);
queryUserConditionsVO.setEndTime(LocalDateTime.now().format(formatter));
}
Integer type = null;
if (!StringUtil.isNullOrEmpty(userType)) {
type = userType.equals("visitor") ? 0 : userType.equals("trial") ? 1 : 2;
if (!Objects.isNull(queryUserConditionsVO.getSystemUser())) {
type = queryUserConditionsVO.getSystemUser();
}
return accountService.getPageByDateAndUserType(startTime, endTime, type, pageNum, size);
return accountService.getPageByDateAndUserType(queryUserConditionsVO.getStartTime(),
queryUserConditionsVO.getEndTime(),
type,
queryUserConditionsVO.getPage(),
queryUserConditionsVO.getSize());
}
// 图表数据
public Map<String, Object> recentNewUserChart(String startTime, String endTime, String userType) {
public Map<String, Object> recentNewUserChart(String startTime, String endTime, Integer userType) {
log.info("recentNewUserChart startTime : {},endTime : {},userType:{}", startTime, endTime, userType);
if (StringUtil.isNullOrEmpty(startTime) && StringUtil.isNullOrEmpty(endTime)) {
return null;
}
@@ -281,12 +283,8 @@ public class ConvenientInquiryServiceImpl extends ServiceImpl<QuestionnaireMappe
DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");
endTime = LocalDateTime.now().format(formatter);
}
Integer type = null;
if (!StringUtil.isNullOrEmpty(userType)) {
type = userType.equals("visitor") ? 0 : userType.equals("trial") ? 1 : 2;
}
Map<String, Long> countMap = accountService.getByDateAndUserType(startTime, endTime, type);
Map<String, Long> countMap = accountService.getByDateAndUserType(startTime, endTime, userType);
long type1 = countMap.get("1") == null ? 0L : countMap.get("1");
long type2 = countMap.get("2") == null ? 0L : countMap.get("2");
long type3 = countMap.get("3") == null ? 0L : countMap.get("3");
@@ -304,13 +302,14 @@ public class ConvenientInquiryServiceImpl extends ServiceImpl<QuestionnaireMappe
}
// 近期活跃用户
public IPage<Account> recentActiveUser(String startTime, String endTime, int pageNum, int size) {
if (!StringUtil.isNullOrEmpty(startTime) && StringUtil.isNullOrEmpty(endTime)) {
public IPage<Account> recentActiveUser(QueryUserConditionsVO queryUserConditionsVO) {
log.info("recentActiveUser parameter : {}, page:{}, size:{}", queryUserConditionsVO, queryUserConditionsVO.getPage(), queryUserConditionsVO.getSize());
if (!StringUtil.isNullOrEmpty(queryUserConditionsVO.getStartTime()) && StringUtil.isNullOrEmpty(queryUserConditionsVO.getEndTime())) {
DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");
endTime = LocalDateTime.now().format(formatter);
queryUserConditionsVO.setEndTime(LocalDateTime.now().format(formatter));
}
List<Long> accountIds = accountLoginLogService.getByDate(startTime, endTime);
return accountService.getPageByIds(accountIds, pageNum, size);
List<Long> accountIds = accountLoginLogService.getByDate(queryUserConditionsVO.getStartTime(), queryUserConditionsVO.getEndTime());
return accountService.getPageByIds(accountIds, queryUserConditionsVO.getPage(), queryUserConditionsVO.getSize());
}
// 图表数据
@@ -523,7 +522,7 @@ public class ConvenientInquiryServiceImpl extends ServiceImpl<QuestionnaireMappe
// 按条件查询用户信息
public IPage<Account> getUserInfo(QueryUserConditionsVO queryUserConditionsVO) {
log.info("getUserInfo parameter : {},page:{}, size:{}",queryUserConditionsVO,queryUserConditionsVO.getPage(),queryUserConditionsVO.getSize());
log.info("getUserInfo parameter : {},page:{}, size:{}", queryUserConditionsVO, queryUserConditionsVO.getPage(), queryUserConditionsVO.getSize());
// 按用户邮箱/用户名/用户id查指定用户
QueryWrapper<Account> queryWrapper = new QueryWrapper<>();
if (!Objects.isNull(queryUserConditionsVO.getIds()) && !queryUserConditionsVO.getIds().isEmpty()) {