fix: 全文检索fileId问题

This commit is contained in:
2024-08-31 18:41:52 +08:00
parent 4484bf6768
commit fe4c47936c
@@ -11,6 +11,7 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.google.common.base.CaseFormat; import com.google.common.base.CaseFormat;
import com.jero.common.api.CommonAPI; import com.jero.common.api.CommonAPI;
import com.jero.common.api.vo.ResultCommon; import com.jero.common.api.vo.ResultCommon;
import com.jero.common.constant.enums.YesOrNoEnum;
import com.jero.common.es.JeroElasticsearchTemplate; import com.jero.common.es.JeroElasticsearchTemplate;
import com.jero.common.exception.JeroBootException; import com.jero.common.exception.JeroBootException;
import com.jero.common.system.api.ISysBaseAPI; import com.jero.common.system.api.ISysBaseAPI;
@@ -136,8 +137,6 @@ public class LawsHomeSearchServiceImpl implements ILawsHomeSearchService {
public static final String KEYWORD = ".keyword"; public static final String KEYWORD = ".keyword";
@Override @Override
@Transactional(rollbackFor = JeroBootException.class) @Transactional(rollbackFor = JeroBootException.class)
public IPage<LawsHomeNormalSearchVO> getNormalSearchTitlePage(LawsHomeNormalSearchDTO lawsHomeNormalSearchDTO, public IPage<LawsHomeNormalSearchVO> getNormalSearchTitlePage(LawsHomeNormalSearchDTO lawsHomeNormalSearchDTO,
@@ -238,6 +237,7 @@ public class LawsHomeSearchServiceImpl implements ILawsHomeSearchService {
/** /**
* 判断字符串是否全部由数字和英文字符组成 * 判断字符串是否全部由数字和英文字符组成
*
* @param str 输入的字符串 * @param str 输入的字符串
* @return 如果字符串只包含数字和英文字符,则返回true,否则返回false * @return 如果字符串只包含数字和英文字符,则返回true,否则返回false
*/ */
@@ -258,10 +258,18 @@ public class LawsHomeSearchServiceImpl implements ILawsHomeSearchService {
List<String> lawsNewsFeedIds = new ArrayList<>(); List<String> lawsNewsFeedIds = new ArrayList<>();
for (LawsHomeNormalSearchVO obj : list) { for (LawsHomeNormalSearchVO obj : list) {
switch (obj.getResourceType()) { switch (obj.getResourceType()) {
case LawsHomeSearchCommon.LAWS_DOMESTIC_STANDARD: lawsDomesticStandardIds.add(obj.getId());break; case LawsHomeSearchCommon.LAWS_DOMESTIC_STANDARD:
case LawsHomeSearchCommon.LAWS_OVERSEAS_STANDARD: lawsOverseasStandardIds.add(obj.getId());break; lawsDomesticStandardIds.add(obj.getId());
case LawsHomeSearchCommon.LAWS_ENTERPRISE_STANDARD: lawsEnterpriseStandardIds.add(obj.getId());break; break;
default:lawsNewsFeedIds.add(obj.getId());break; case LawsHomeSearchCommon.LAWS_OVERSEAS_STANDARD:
lawsOverseasStandardIds.add(obj.getId());
break;
case LawsHomeSearchCommon.LAWS_ENTERPRISE_STANDARD:
lawsEnterpriseStandardIds.add(obj.getId());
break;
default:
lawsNewsFeedIds.add(obj.getId());
break;
} }
} }
List<LawsDomesticStandard> listLawsDomesticStandard = listLawsDomesticStandard(lawsDomesticStandardIds); List<LawsDomesticStandard> listLawsDomesticStandard = listLawsDomesticStandard(lawsDomesticStandardIds);
@@ -463,6 +471,7 @@ public class LawsHomeSearchServiceImpl implements ILawsHomeSearchService {
/** /**
* 翻译字典文本 * 翻译字典文本
*
* @param code 编码 * @param code 编码
* @param text 值 * @param text 值
* @param table 表名 * @param table 表名
@@ -564,7 +573,8 @@ public class LawsHomeSearchServiceImpl implements ILawsHomeSearchService {
setDict(list3); setDict(list3);
count3(list3, obj); count3(list3, obj);
break; break;
default:break; default:
break;
} }
return obj; return obj;
} }
@@ -901,22 +911,18 @@ public class LawsHomeSearchServiceImpl implements ILawsHomeSearchService {
if (Objects.equals(resourceType, LawsHomeSearchCommon.LAWS_DOMESTIC_STANDARD) || if (Objects.equals(resourceType, LawsHomeSearchCommon.LAWS_DOMESTIC_STANDARD) ||
Objects.equals(resourceType, LawsHomeSearchCommon.LAWS_OVERSEAS_STANDARD) || Objects.equals(resourceType, LawsHomeSearchCommon.LAWS_OVERSEAS_STANDARD) ||
Objects.equals(resourceType, LawsHomeSearchCommon.LAWS_ENTERPRISE_STANDARD)) { Objects.equals(resourceType, LawsHomeSearchCommon.LAWS_ENTERPRISE_STANDARD)) {
String fileId = "fileId";
if(map.containsKey(fileId) && !Objects.isNull(map.get(fileId))){
LambdaQueryWrapper<SarFileSplitInfoEO> querySarFileSplitInfoEO = new LambdaQueryWrapper<>(); LambdaQueryWrapper<SarFileSplitInfoEO> querySarFileSplitInfoEO = new LambdaQueryWrapper<>();
querySarFileSplitInfoEO.eq(SarFileSplitInfoEO::getStandardId, map.get("id")); querySarFileSplitInfoEO.eq(SarFileSplitInfoEO::getStandardId, map.get("id"));
querySarFileSplitInfoEO.eq(SarFileSplitInfoEO::getSplitStatus, "2"); querySarFileSplitInfoEO.eq(SarFileSplitInfoEO::getSplitStatus, "2");
querySarFileSplitInfoEO.isNull(SarFileSplitInfoEO::getPublishBeforeId); querySarFileSplitInfoEO.isNull(SarFileSplitInfoEO::getPublishBeforeId);
querySarFileSplitInfoEO.in(SarFileSplitInfoEO::getFileId, querySarFileSplitInfoEO.eq(SarFileSplitInfoEO::getDelFlag, YesOrNoEnum.NO.getValue());
Arrays.asList(map.get(fileId).toString().split(","))); List<SarFileSplitInfoEO> sarFileSplitInfoEO = sarFileSplitInfoService.list(querySarFileSplitInfoEO);
SarFileSplitInfoEO sarFileSplitInfoEO = sarFileSplitInfoService.getOne(querySarFileSplitInfoEO,false); if (!Objects.isNull(sarFileSplitInfoEO) && !sarFileSplitInfoEO.isEmpty()) {
if(!Objects.isNull(sarFileSplitInfoEO)){ map.put(splitId, sarFileSplitInfoEO.get(0).getId());
map.put(splitId,sarFileSplitInfoEO.getId());
} else { } else {
map.put(splitId, ""); map.put(splitId, "");
} }
} }
}
listNew.add(map); listNew.add(map);
}); });
page.setRecords(listNew); page.setRecords(listNew);
@@ -1153,7 +1159,8 @@ public class LawsHomeSearchServiceImpl implements ILawsHomeSearchService {
addVo(search, list3, "grade_classification_aggs", GRADE_CLASSIFICATION); addVo(search, list3, "grade_classification_aggs", GRADE_CLASSIFICATION);
count3(list3, objVo); count3(list3, objVo);
break; break;
default:break; default:
break;
} }
return objVo; return objVo;
} }
@@ -1240,7 +1247,8 @@ public class LawsHomeSearchServiceImpl implements ILawsHomeSearchService {
case LawsHomeSearchCommon.LAWS_NEWS_FEED: case LawsHomeSearchCommon.LAWS_NEWS_FEED:
updateLawsNewsFeedToEs(resourceType, ids, opType); updateLawsNewsFeedToEs(resourceType, ids, opType);
break; break;
default:break; default:
break;
} }
} catch (Exception e) { } catch (Exception e) {
log.error("ES同步异常", e.getMessage()); log.error("ES同步异常", e.getMessage());
@@ -1282,18 +1290,38 @@ public class LawsHomeSearchServiceImpl implements ILawsHomeSearchService {
obj.setTitle(lawsDomesticStandard.getStandardNumber() + " " + lawsDomesticStandard.getStandardName()); obj.setTitle(lawsDomesticStandard.getStandardNumber() + " " + lawsDomesticStandard.getStandardName());
obj.setResourceType(resourceType); obj.setResourceType(resourceType);
switch (lawsDomesticStandard.getStandardClass()) { switch (lawsDomesticStandard.getStandardClass()) {
case "GB": obj.setStandardTypeOrder("1");break; case "GB":
case "GB/T": obj.setStandardTypeOrder("2");break; obj.setStandardTypeOrder("1");
case "JT": obj.setStandardTypeOrder("3");break; break;
case "QC/T": obj.setStandardTypeOrder("4");break; case "GB/T":
case "HJ": obj.setStandardTypeOrder("5");break; obj.setStandardTypeOrder("2");
default: obj.setStandardTypeOrder("8");break; break;
case "JT":
obj.setStandardTypeOrder("3");
break;
case "QC/T":
obj.setStandardTypeOrder("4");
break;
case "HJ":
obj.setStandardTypeOrder("5");
break;
default:
obj.setStandardTypeOrder("8");
break;
} }
switch (lawsDomesticStandard.getStandardState()) { switch (lawsDomesticStandard.getStandardState()) {
case "5": obj.setStandardStateOrder("2");break; case "5":
case "6": obj.setStandardStateOrder("1");break; obj.setStandardStateOrder("2");
case "7": obj.setStandardStateOrder("3");break; break;
default: obj.setStandardStateOrder("4");break; case "6":
obj.setStandardStateOrder("1");
break;
case "7":
obj.setStandardStateOrder("3");
break;
default:
obj.setStandardStateOrder("4");
break;
} }
obj.setImplementationDate(lawsDomesticStandard.getImplementationDate()); obj.setImplementationDate(lawsDomesticStandard.getImplementationDate());
obj.setCreateTime(lawsDomesticStandard.getCreateTime()); obj.setCreateTime(lawsDomesticStandard.getCreateTime());
@@ -1386,10 +1414,18 @@ public class LawsHomeSearchServiceImpl implements ILawsHomeSearchService {
obj.setResourceType(resourceType); obj.setResourceType(resourceType);
obj.setStandardTypeOrder("7"); obj.setStandardTypeOrder("7");
switch (lawsOverseasStandard.getStandardState()) { switch (lawsOverseasStandard.getStandardState()) {
case "5": obj.setStandardStateOrder("2");break; case "5":
case "6": obj.setStandardStateOrder("1");break; obj.setStandardStateOrder("2");
case "7": obj.setStandardStateOrder("3");break; break;
default: obj.setStandardStateOrder("4");break; case "6":
obj.setStandardStateOrder("1");
break;
case "7":
obj.setStandardStateOrder("3");
break;
default:
obj.setStandardStateOrder("4");
break;
} }
obj.setImplementationDate(lawsOverseasStandard.getImplementationDate()); obj.setImplementationDate(lawsOverseasStandard.getImplementationDate());
obj.setCreateTime(lawsOverseasStandard.getCreateTime()); obj.setCreateTime(lawsOverseasStandard.getCreateTime());
@@ -1471,10 +1507,18 @@ public class LawsHomeSearchServiceImpl implements ILawsHomeSearchService {
obj.setStandardTypeOrder("6"); obj.setStandardTypeOrder("6");
switch (lawsEnterpriseStandard.getStandardState()) { switch (lawsEnterpriseStandard.getStandardState()) {
case "5": obj.setStandardStateOrder("2");break; case "5":
case "6": obj.setStandardStateOrder("1");break; obj.setStandardStateOrder("2");
case "7": obj.setStandardStateOrder("3");break; break;
default: obj.setStandardStateOrder("4");break; case "6":
obj.setStandardStateOrder("1");
break;
case "7":
obj.setStandardStateOrder("3");
break;
default:
obj.setStandardStateOrder("4");
break;
} }
obj.setImplementationDate(lawsEnterpriseStandard.getImplementationDate()); obj.setImplementationDate(lawsEnterpriseStandard.getImplementationDate());
obj.setCreateTime(lawsEnterpriseStandard.getCreateTime()); obj.setCreateTime(lawsEnterpriseStandard.getCreateTime());