From d3c223eaa4df46d17c138ef8ed5eab8da9638416 Mon Sep 17 00:00:00 2001
From: lin <sbla5888@163.com>
Date: Wed, 10 Apr 2024 18:38:46 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master'

---
 src/main/java/org/springblade/es/service/ElasticsearchDocumentService.java |   42 +++++++++++++++++++++++-------------------
 1 files changed, 23 insertions(+), 19 deletions(-)

diff --git a/src/main/java/org/springblade/es/service/ElasticsearchDocumentService.java b/src/main/java/org/springblade/es/service/ElasticsearchDocumentService.java
index 1906861..ebdf3a7 100644
--- a/src/main/java/org/springblade/es/service/ElasticsearchDocumentService.java
+++ b/src/main/java/org/springblade/es/service/ElasticsearchDocumentService.java
@@ -539,16 +539,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 +579,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 +593,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 +679,7 @@
 	 * 删除数据--根据条件
 	 */
 	public boolean removeByQuery(EsParam esParam) {
-		if (elasticsearchSync) {
+		if (elasticsearchSync && isIndexExists(esParam.getIndexName())) {
 			DeleteByQueryRequest deleteByQueryRequest = new DeleteByQueryRequest(esParam.getIndexName());
 			// 根据多个条件 生成 boolQueryBuilder
 			BoolQueryBuilder boolQueryBuilder = QueryBuilders.boolQuery();

--
Gitblit v1.9.3