You've already forked DataMate
bugfix: 清洗/算子支持名称/描述搜索 (#116)
* bugfix: milvus适配etcd deploy部署 * bugfix: 可以在知识库界面跳转到创建模型
This commit is contained in:
@@ -24,9 +24,14 @@ public class CleaningTaskRepositoryImpl extends CrudRepository<CleaningTaskMappe
|
||||
|
||||
public List<CleaningTaskDto> findTasks(String status, String keywords, Integer page, Integer size) {
|
||||
LambdaQueryWrapper<CleaningTask> lambdaWrapper = new LambdaQueryWrapper<>();
|
||||
lambdaWrapper.eq(StringUtils.isNotBlank(status), CleaningTask::getStatus, status)
|
||||
.like(StringUtils.isNotBlank(keywords), CleaningTask::getName, keywords)
|
||||
.orderByDesc(CleaningTask::getCreatedAt);
|
||||
lambdaWrapper.eq(StringUtils.isNotBlank(status), CleaningTask::getStatus, status);
|
||||
if (StringUtils.isNotBlank(keywords)) {
|
||||
lambdaWrapper.and(w ->
|
||||
w.like(CleaningTask::getName, keywords)
|
||||
.or()
|
||||
.like(CleaningTask::getDescription, keywords));
|
||||
}
|
||||
lambdaWrapper.orderByDesc(CleaningTask::getCreatedAt);
|
||||
if (size != null && page != null) {
|
||||
Page<CleaningTask> queryPage = new Page<>(page + 1, size);
|
||||
IPage<CleaningTask> resultPage = mapper.selectPage(queryPage, lambdaWrapper);
|
||||
|
||||
@@ -25,8 +25,12 @@ public class CleaningTemplateRepositoryImpl extends CrudRepository<CleaningTempl
|
||||
@Override
|
||||
public List<TemplateWithInstance> findAllTemplates(String keywords) {
|
||||
QueryWrapper<TemplateWithInstance> queryWrapper = new QueryWrapper<>();
|
||||
queryWrapper.like(StringUtils.isNotBlank(keywords), "name", keywords)
|
||||
.orderByDesc("created_at");
|
||||
if (StringUtils.isNotBlank(keywords)) {
|
||||
queryWrapper.like("name", keywords)
|
||||
.or()
|
||||
.like("description", keywords);
|
||||
}
|
||||
queryWrapper.orderByDesc("created_at");
|
||||
return mapper.findAllTemplates(queryWrapper);
|
||||
}
|
||||
|
||||
|
||||
@@ -20,9 +20,9 @@ public class CleaningTaskController {
|
||||
public PagedResponse<CleaningTaskDto> cleaningTasksGet(
|
||||
@RequestParam("page") Integer page,
|
||||
@RequestParam("size") Integer size, @RequestParam(value = "status", required = false) String status,
|
||||
@RequestParam(value = "keywords", required = false) String keywords) {
|
||||
List<CleaningTaskDto> tasks = cleaningTaskService.getTasks(status, keywords, page, size);
|
||||
int count = cleaningTaskService.countTasks(status, keywords);
|
||||
@RequestParam(value = "keyword", required = false) String keyword) {
|
||||
List<CleaningTaskDto> tasks = cleaningTaskService.getTasks(status, keyword, page, size);
|
||||
int count = cleaningTaskService.countTasks(status, keyword);
|
||||
int totalPages = (count + size + 1) / size;
|
||||
return PagedResponse.of(tasks, page, count, totalPages);
|
||||
}
|
||||
|
||||
@@ -30,7 +30,7 @@ public class CleaningTemplateController {
|
||||
public PagedResponse<CleaningTemplateDto> cleaningTemplatesGet(
|
||||
@RequestParam(value = "page", required = false) Integer page,
|
||||
@RequestParam(value = "size", required = false) Integer size,
|
||||
@RequestParam(value = "keywords", required = false) String keyword) {
|
||||
@RequestParam(value = "keyword", required = false) String keyword) {
|
||||
List<CleaningTemplateDto> templates = cleaningTemplateService.getTemplates(keyword);
|
||||
if (page == null || size == null) {
|
||||
return PagedResponse.of(templates.stream()
|
||||
|
||||
@@ -49,12 +49,12 @@ public class OperatorService {
|
||||
private String operatorBasePath;
|
||||
|
||||
public List<OperatorDto> getOperators(Integer page, Integer size, List<String> categories,
|
||||
String operatorName, Boolean isStar) {
|
||||
return operatorViewRepo.findOperatorsByCriteria(page, size, operatorName, categories, isStar);
|
||||
String keyword, Boolean isStar) {
|
||||
return operatorViewRepo.findOperatorsByCriteria(page, size, keyword, categories, isStar);
|
||||
}
|
||||
|
||||
public int getOperatorsCount(List<String> categories, String operatorName, Boolean isStar) {
|
||||
return operatorViewRepo.countOperatorsByCriteria(operatorName, categories, isStar);
|
||||
public int getOperatorsCount(List<String> categories, String keyword, Boolean isStar) {
|
||||
return operatorViewRepo.countOperatorsByCriteria(keyword, categories, isStar);
|
||||
}
|
||||
|
||||
public OperatorDto getOperatorById(String id) {
|
||||
|
||||
@@ -7,10 +7,10 @@ import com.datamate.operator.interfaces.dto.OperatorDto;
|
||||
import java.util.List;
|
||||
|
||||
public interface OperatorViewRepository extends IRepository<OperatorView> {
|
||||
List<OperatorDto> findOperatorsByCriteria(Integer page, Integer size, String operatorName,
|
||||
List<OperatorDto> findOperatorsByCriteria(Integer page, Integer size, String keyword,
|
||||
List<String> categories, Boolean isStar);
|
||||
|
||||
Integer countOperatorsByCriteria(String operatorName, List<String> categories, Boolean isStar);
|
||||
Integer countOperatorsByCriteria(String keyword, List<String> categories, Boolean isStar);
|
||||
|
||||
OperatorView findOperatorById(String id);
|
||||
}
|
||||
|
||||
@@ -23,13 +23,18 @@ public class OperatorViewRepositoryImpl extends CrudRepository<OperatorViewMappe
|
||||
private final OperatorViewMapper mapper;
|
||||
|
||||
@Override
|
||||
public List<OperatorDto> findOperatorsByCriteria(Integer page, Integer size, String operatorName,
|
||||
public List<OperatorDto> findOperatorsByCriteria(Integer page, Integer size, String keyword,
|
||||
List<String> categories, Boolean isStar) {
|
||||
QueryWrapper<OperatorView> queryWrapper = Wrappers.query();
|
||||
queryWrapper.in(CollectionUtils.isNotEmpty(categories), "category_id", categories)
|
||||
.like(StringUtils.isNotBlank(operatorName), "operator_name", operatorName)
|
||||
.eq(isStar != null, "is_star", isStar)
|
||||
.groupBy("operator_id")
|
||||
.eq(isStar != null, "is_star", isStar);
|
||||
if (StringUtils.isNotEmpty(keyword)) {
|
||||
queryWrapper.and(w ->
|
||||
w.like("operator_name", keyword)
|
||||
.or()
|
||||
.like("description", keyword));
|
||||
}
|
||||
queryWrapper.groupBy("operator_id")
|
||||
.orderByDesc("created_at");
|
||||
Page<OperatorView> queryPage;
|
||||
if (size != null && page != null) {
|
||||
@@ -43,11 +48,16 @@ public class OperatorViewRepositoryImpl extends CrudRepository<OperatorViewMappe
|
||||
}
|
||||
|
||||
@Override
|
||||
public Integer countOperatorsByCriteria(String operatorName, List<String> categories, Boolean isStar) {
|
||||
public Integer countOperatorsByCriteria(String keyword, List<String> categories, Boolean isStar) {
|
||||
QueryWrapper<OperatorView> queryWrapper = Wrappers.query();
|
||||
queryWrapper.in(CollectionUtils.isNotEmpty(categories),"category_id", categories)
|
||||
.like(StringUtils.isNotBlank(operatorName), "operator_name", operatorName)
|
||||
.eq(isStar != null, "is_star", isStar);
|
||||
if (StringUtils.isNotEmpty(keyword)) {
|
||||
queryWrapper.and(w ->
|
||||
w.like("operator_name", keyword)
|
||||
.or()
|
||||
.like("description", keyword));
|
||||
}
|
||||
return mapper.countOperatorsByCriteria(queryWrapper);
|
||||
}
|
||||
|
||||
|
||||
@@ -17,7 +17,7 @@ import lombok.Setter;
|
||||
public class OperatorsListPostRequest extends PagingQuery {
|
||||
private List<String> categories = new ArrayList<>();
|
||||
|
||||
private String operatorName;
|
||||
private String keyword;
|
||||
|
||||
private String labelName;
|
||||
|
||||
|
||||
@@ -29,8 +29,8 @@ public class OperatorController {
|
||||
categories.remove(OperatorConstant.CATEGORY_STAR_ID);
|
||||
}
|
||||
List<OperatorDto> responses = operatorService.getOperators(request.getPage(), request.getSize(),
|
||||
categories, request.getOperatorName(), isStar);
|
||||
int count = operatorService.getOperatorsCount(categories, request.getOperatorName(), isStar);
|
||||
categories, request.getKeyword(), isStar);
|
||||
int count = operatorService.getOperatorsCount(categories, request.getKeyword(), isStar);
|
||||
int totalPages = (count + request.getSize() + 1) / request.getSize();
|
||||
return PagedResponse.of(responses, request.getPage(), count, totalPages);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user