zhongrj
2024-04-12 47712cc6cd4d52fcd1dde44e2a400ccbb9c6ae7a
src/main/java/org/springblade/es/service/ElasticsearchDocumentService.java
@@ -342,11 +342,8 @@
    * @param place
    */
   @Async
   public void addPlace(EsParam esParam, PlaceVO place) {
   public void addPlace(EsParam esParam, PlaceEntity place) {
      if (elasticsearchSync) {
         if (!Strings.isBlank(place.getCommunityCode())) {
            place.setCommunityCode(placeService.getCommunityCode(place.getId()));
         }
         try {
            indexDocument(esParam.getIndexName(),
               "tableId", place.getId().toString(),
@@ -356,7 +353,7 @@
               "phone", place.getPrincipalPhone(),
               "idCard", place.getPrincipalIdCard(),
               "content", place.getLocation(),
               "communityCode", place.getCommunityCode()
               "communityCode", placeService.getCommunityCode(place.getId())
            );
         } catch (IOException e) {
            e.printStackTrace();
@@ -371,11 +368,8 @@
    * @param house
    */
   @Async
   public void addHouse(EsParam esParam, HouseVO house) {
   public void addHouse(EsParam esParam, HouseEntity house) {
      if (elasticsearchSync) {
         if (!Strings.isBlank(house.getCommunityCode())) {
            house.setCommunityCode(houseService.getCommunityCode(house.getId()));
         }
         try {
            indexDocument(esParam.getIndexName(),
               "tableId", house.getId().toString(),
@@ -385,7 +379,7 @@
               "phone", null,
               "idCard", null,
               "content", null,
               "communityCode", house.getCommunityCode()
               "communityCode", houseService.getCommunityCode(house.getId())
            );
         } catch (IOException e) {
            e.printStackTrace();
@@ -400,11 +394,8 @@
    * @param household
    */
   @Async
   public void addHousehold(EsParam esParam, HouseholdVO household) {
   public void addHousehold(EsParam esParam, HouseholdEntity household) {
      if (elasticsearchSync) {
         if (!Strings.isBlank(household.getCommunityCode())) {
            household.setCommunityCode(householdService.getCommunityCode(household.getId()));
         }
         try {
            indexDocument(esParam.getIndexName(),
               "tableId", household.getId().toString(),
@@ -413,8 +404,8 @@
               "name", household.getName(),
               "phone", household.getPhoneNumber(),
               "idCard", household.getIdCard(),
               "content", household.getAddress(),
               "communityCode", household.getCommunityCode()
               "content", household.getCurrentAddress(),
               "communityCode", householdService.getCommunityCode(household.getId())
            );
         } catch (IOException e) {
            e.printStackTrace();
@@ -477,13 +468,29 @@
//         boolQueryBuilder.should(QueryBuilders.matchQuery("location", esParam.getSearchKey()));
//         boolQueryBuilder.should(QueryBuilders.matchQuery("phone", esParam.getSearchKey()));
//         boolQueryBuilder.should(QueryBuilders.matchQuery("idCard", esParam.getSearchKey()));
         if (!Strings.isBlank(esParam.getTableName())) {
            boolQueryBuilder.must(QueryBuilders.matchQuery("tableName", esParam.getTableName()));
         }
         String communityCode = SpringUtils.getRequestParam("communityCode");
         if (!Strings.isBlank(communityCode)) {
            boolQueryBuilder.must(QueryBuilders.matchQuery("communityCode", communityCode));
         }
         if (!Strings.isBlank(esParam.getTableName())) {
            boolQueryBuilder.must(QueryBuilders.matchQuery("tableName", esParam.getTableName()));
         String roleName = SpringUtils.getRequestParam("roleName");
         if (!Strings.isBlank(roleName)){
            if (roleName.equals("wgy") || roleName.equals("mj")){
               // 不查公告
               boolQueryBuilder.mustNot(QueryBuilders.matchQuery("tableName", "jczz_article"));
            }
            if (roleName.equals("inhabitant")){
               // 只查公告
               boolQueryBuilder.must(QueryBuilders.matchQuery("tableName", "jczz_article"));
            }
            if (roleName.equals("wzcj")){
               // 只查场所
               boolQueryBuilder.must(QueryBuilders.matchQuery("tableName", "jczz_place"));
            }
         }
         boolQueryBuilder.minimumShouldMatch(1);
         searchSourceBuilder.query(boolQueryBuilder);
@@ -539,16 +546,19 @@
    */
   public boolean removeBatchByIndexNames(List<String> indexNames) {
      for (String indexName : indexNames) {
         DeleteIndexRequest deleteIndexRequest = new DeleteIndexRequest(indexName);
         try {
            // 执行删除索引操作
            AcknowledgedResponse deleteResponse = client.indices().delete(deleteIndexRequest, RequestOptions.DEFAULT);
         // 索引存在才删除
         if (isIndexExists(indexName)) {
            DeleteIndexRequest deleteIndexRequest = new DeleteIndexRequest(indexName);
            try {
               // 执行删除索引操作
               AcknowledgedResponse deleteResponse = client.indices().delete(deleteIndexRequest, RequestOptions.DEFAULT);
            // 输出操作结果
            boolean acknowledged = deleteResponse.isAcknowledged();
            System.out.println("索引删除成功: " + acknowledged);
         } catch (IOException e) {
            e.printStackTrace();
               // 输出操作结果
               boolean acknowledged = deleteResponse.isAcknowledged();
               System.out.println("索引删除成功: " + acknowledged);
            } catch (IOException e) {
               e.printStackTrace();
            }
         }
      }
      return true;
@@ -576,7 +586,8 @@
    */
   @Async
   public void update(EsParam esParam, T item,List<String> columnList) {
      if (elasticsearchSync) {
      // 判断索引是否存在
      if (elasticsearchSync && isIndexExists(esParam.getIndexName())) {
         // 创建更新请求
         UpdateByQueryRequest updateRequest = new UpdateByQueryRequest(esParam.getIndexName());
@@ -589,17 +600,17 @@
         Map<String, Object> data = new HashMap<String, Object>();
         data.put("tableName", esParam.getTableName());
         if (esParam.getTableName().equals("jczz_article")){
            setArticleMap((Article)item,data);
         if (esParam.getTableName().equals("jczz_article")) {
            setArticleMap((Article) item, data);
         }
         if (esParam.getTableName().equals("jczz_place")){
            setPlaceMap((PlaceEntity) item,data);
         if (esParam.getTableName().equals("jczz_place")) {
            setPlaceMap((PlaceEntity) item, data);
         }
         if (esParam.getTableName().equals("jczz_house")){
            setHouseMap((HouseEntity) item,data);
         if (esParam.getTableName().equals("jczz_house")) {
            setHouseMap((HouseEntity) item, data);
         }
         if (esParam.getTableName().equals("jczz_household")){
            setHousehouldMap((HouseholdEntity) item,data);
         if (esParam.getTableName().equals("jczz_household")) {
            setHousehouldMap((HouseholdEntity) item, data);
         }
         Map<String, Object> param = new HashMap<String, Object>();
         param.put("data", data);
@@ -675,7 +686,7 @@
    * 删除数据--根据条件
    */
   public boolean removeByQuery(EsParam esParam) {
      if (elasticsearchSync) {
      if (elasticsearchSync && isIndexExists(esParam.getIndexName())) {
         DeleteByQueryRequest deleteByQueryRequest = new DeleteByQueryRequest(esParam.getIndexName());
         // 根据多个条件 生成 boolQueryBuilder
         BoolQueryBuilder boolQueryBuilder = QueryBuilders.boolQuery();