feat: 自定义es及接口完成

This commit is contained in:
2024-03-06 17:18:23 +08:00
parent 964c4beb11
commit ce4387c7e3
20 changed files with 866 additions and 112 deletions

View File

@@ -74,6 +74,7 @@ public class SubjectInfoBO extends PageInfo implements Serializable {
private Long categoryId;
private Long labelId;
private String keyWord;

View File

@@ -3,6 +3,7 @@ package com.landaiqing.subject.domain.service;
import com.landaiqing.subject.common.entity.PageResult;
import com.landaiqing.subject.domain.entity.SubjectInfoBO;
import com.landaiqing.subject.domain.entity.SubjectLabelBO;
import com.landaiqing.subject.infra.basic.entity.SubjectInfoEs;
import java.util.List;
@@ -34,4 +35,12 @@ public interface SubjectInfoDomainService {
* @date: 2024/2/16 13:54
*/
SubjectInfoBO querySubjectInfo(SubjectInfoBO subjectInfoBO);
/**
* @description: 全文检索
* @param: [subjectInfoBO]
* @return: com.landaiqing.subject.common.entity.PageResult<com.landaiqing.subject.infra.basic.entity.SubjectInfoEs>
* @author landaiqing
* @date: 2024/3/6 17:06
*/
PageResult<SubjectInfoEs> getSubjectPageBySearch(SubjectInfoBO subjectInfoBO);
}

View File

@@ -3,6 +3,7 @@ package com.landaiqing.subject.domain.service.impl;
import com.alibaba.fastjson.JSON;
import com.landaiqing.subject.common.entity.PageResult;
import com.landaiqing.subject.common.enums.IsDeletedFlagEnum;
import com.landaiqing.subject.common.util.IdWorkerUtil;
import com.landaiqing.subject.domain.convert.SubjectInfoConverter;
import com.landaiqing.subject.domain.entity.SubjectInfoBO;
import com.landaiqing.subject.domain.entity.SubjectOptionBO;
@@ -10,8 +11,10 @@ import com.landaiqing.subject.domain.handler.subject.SubjectTypeHandler;
import com.landaiqing.subject.domain.handler.subject.SubjectTypeHandlerFactory;
import com.landaiqing.subject.domain.service.SubjectInfoDomainService;
import com.landaiqing.subject.infra.basic.entity.SubjectInfo;
import com.landaiqing.subject.infra.basic.entity.SubjectInfoEs;
import com.landaiqing.subject.infra.basic.entity.SubjectLabel;
import com.landaiqing.subject.infra.basic.entity.SubjectMapping;
import com.landaiqing.subject.infra.basic.service.SubjectEsService;
import com.landaiqing.subject.infra.basic.service.SubjectInfoService;
import com.landaiqing.subject.infra.basic.service.SubjectLabelService;
import com.landaiqing.subject.infra.basic.service.SubjectMappingService;
@@ -20,6 +23,7 @@ import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import javax.annotation.Resource;
import java.util.Date;
import java.util.LinkedList;
import java.util.List;
import java.util.stream.Collectors;
@@ -37,6 +41,9 @@ public class SubjectInfoDomainServiceImpl implements SubjectInfoDomainService {
@Resource
private SubjectLabelService subjectLabelService;
@Resource
private SubjectEsService subjectEsService;
/**
* @description: 新增标签
@@ -71,6 +78,17 @@ public class SubjectInfoDomainServiceImpl implements SubjectInfoDomainService {
});
});
subjectMappingService.batchInsert(mappingList);
//同步到es
SubjectInfoEs subjectInfoEs = new SubjectInfoEs();
subjectInfoEs.setDocId(new IdWorkerUtil(1, 1, 1).nextId());
subjectInfoEs.setSubjectId(subjectInfo.getId());
subjectInfoEs.setSubjectAnswer(subjectInfoBO.getSubjectAnswer());
subjectInfoEs.setCreateTime(new Date().getTime());
subjectInfoEs.setCreateUser("landaiqing");
subjectInfoEs.setSubjectName(subjectInfo.getSubjectName());
subjectInfoEs.setSubjectType(subjectInfo.getSubjectType());
subjectEsService.insert(subjectInfoEs);
subjectEsService.insert(subjectInfoEs);
}
@@ -119,5 +137,15 @@ public class SubjectInfoDomainServiceImpl implements SubjectInfoDomainService {
return bo;
}
@Override
public PageResult<SubjectInfoEs> getSubjectPageBySearch(SubjectInfoBO subjectInfoBO) {
SubjectInfoEs subjectInfoEs = new SubjectInfoEs();
subjectInfoEs.setPageNo(subjectInfoBO.getPageNo());
subjectInfoEs.setPageSize(subjectInfoBO.getPageSize());
subjectInfoEs.setKeyWord(subjectInfoBO.getKeyWord());
return subjectEsService.querySubjectList(subjectInfoEs);
}
}