瀏覽代碼

解决冲突

renjiaojiao 3 年之前
父節點
當前提交
383b5fbfa6
共有 1 個文件被更改,包括 20 次插入23 次删除
  1. 20 23
      rpc/knowledge/internal/logic/knowledgeeditlogic.go

+ 20 - 23
rpc/knowledge/internal/logic/knowledgeeditlogic.go

@@ -9,6 +9,7 @@ import (
 	"knowledgeBase/rpc/knowledge/internal/svc"
 	"knowledgeBase/rpc/knowledge/knowledgeclient"
 	"knowledgeBase/rpc/knowledge/util"
+	"strconv"
 	"time"
 )
 
@@ -49,29 +50,25 @@ func (l *KnowledgeEditLogic) KnowledgeEdit(in *knowledgeclient.KnowledgeEditReq)
 	})
 
 	if fool {
-		//先删除原来的数据
-		ok3 := elastic.Del(C.Es.Index, C.Es.Type, map[string]interface{}{"answerId": in.AnswerId})
-		if ok3 {
-			//修改es数据
-			knowledge := map[string]interface{}{
-				"knowledgeId":  in.KnowledgeId,
-				"status":       1,
-				"createTime":   time.Now().Local().Format(util.Date_Full_Layout),
-				"createPerson": in.Person,
-				"answer":       in.Answer,
-				"question":     in.Question,
-				"keywords":     keywords,
-				"answerId":     in.AnswerId,
-				"tenantId":     in.TenantId,
-			}
-			ok4 := elastic.UpdateNewDoc(C.Es.Index, C.Es.Type, knowledge)
-			if ok4 {
-				result.ErrorCode = 0
-				result.ErrorMsg = "修改问题成功"
-			} else {
-				result.ErrorCode = -1
-				result.ErrorMsg = "修改es问题失败"
-			}
+		//先查询es获取es _id
+		query := `{"query":{"bool":{"must":[{"term":{"smart_v.answerId":"` + strconv.Itoa(int(in.AnswerId)) + `"}}],"must_not":[],"should":[]}},"from":0,"size":10,"sort":[],"facets":{}}`
+		//修改es数据
+		newKnowledge := map[string]interface{}{
+			"knowledgeId":  in.KnowledgeId,
+			"status":       1,
+			"createTime":   time.Now().Local().Format(util.Date_Full_Layout),
+			"createPerson": in.Person,
+			"answer":       in.Answer,
+			"question":     in.Question,
+			"keywords":     keywords,
+			"answerId":     in.AnswerId,
+			"tenantId":     in.TenantId,
+		}
+		ok := elastic.Del(C.Es.Index, C.Es.Type, query)
+		ok = elastic.Save(C.Es.Index, C.Es.Type, newKnowledge)
+		if ok {
+			result.ErrorCode = 0
+			result.ErrorMsg = "修改问题成功"
 		} else {
 			result.ErrorCode = -1
 			result.ErrorMsg = "删除es问题失败"