You've already forked DataMate
bugfix: 清洗/算子支持名称/描述搜索 (#116)
* bugfix: milvus适配etcd deploy部署 * bugfix: 可以在知识库界面跳转到创建模型
This commit is contained in:
@@ -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