This commit is contained in:
shahaibo
2024-03-27 13:28:48 +08:00
parent db68ce7d1b
commit 54fe254ab0
5 changed files with 41 additions and 7 deletions

View File

@@ -1,5 +1,6 @@
package com.ai.da.controller;
import cn.hutool.core.collection.CollectionUtil;
import com.ai.da.common.config.exception.BusinessException;
import com.ai.da.common.context.UserContext;
import com.ai.da.common.response.PageBaseResponse;
@@ -8,6 +9,7 @@ import com.ai.da.common.utils.CopyUtil;
import com.ai.da.common.utils.MinioUtil;
import com.ai.da.mapper.primary.TDesignPythonOutfitMapper;
import com.ai.da.mapper.primary.entity.Account;
import com.ai.da.mapper.primary.entity.Library;
import com.ai.da.mapper.primary.entity.TDesignPythonOutfit;
import com.ai.da.mapper.primary.entity.UserLikeGroup;
import com.ai.da.model.dto.*;
@@ -27,10 +29,7 @@ import org.springframework.web.bind.annotation.*;
import javax.annotation.Resource;
import javax.validation.Valid;
import java.util.Date;
import java.util.List;
import java.util.Map;
import java.util.Objects;
import java.util.*;
import java.util.stream.Collectors;
@@ -49,6 +48,8 @@ public class SavedCollectionController {
private TDesignPythonOutfitMapper designPythonOutfitMapper;
@Resource
private MinioUtil minioUtil;
@Resource
private ClassificationService classificationService;
@ApiOperation(value = "History用户分页分组列表")
@PostMapping("/queryUserGroup")
@@ -67,6 +68,33 @@ public class SavedCollectionController {
if (Objects.nonNull(query.getEndDate())) {
queryWrapper.le("update_date", new Date(query.getEndDate()));
}
// 新增分类过滤
if (CollectionUtil.isNotEmpty(query.getClassificationIdList())) {
List<Long> historyIdList = new ArrayList<>();
if (query.getIntersection() == 0) {
for (Long classificationId : query.getClassificationIdList()) {
historyIdList.addAll(classificationService.getLibraryIdListByClassificationId(classificationId));
}
if (CollectionUtil.isNotEmpty(historyIdList)) {
queryWrapper.in("id", historyIdList);
}else {
return Response.success(PageBaseResponse.success(new Page<>()));
}
}else {
for (int i = 0; i < query.getClassificationIdList().size(); i++) {
List<Long> historyIdListByClassificationId = classificationService.getLibraryIdListByClassificationId(query.getClassificationIdList().get(i));
if (i == 0) {
historyIdList.addAll(historyIdListByClassificationId);
}else {
historyIdList.retainAll(historyIdListByClassificationId);
}
if (CollectionUtil.isEmpty(historyIdList)) {
return Response.success(PageBaseResponse.success(new Page<>()));
}
}
queryWrapper.in("id", historyIdList);
}
}
queryWrapper.orderByDesc("id");
IPage<UserLikeGroup> page = userLikeGroupService.getBaseMapper().selectPage(
new Page<>(query.getPage(), query.getSize()), queryWrapper);