|
@@ -11,7 +11,6 @@ import (
|
|
|
"knowledgeBase/rpc/knowledge/internal/svc"
|
|
|
"knowledgeBase/rpc/knowledge/knowledgeclient"
|
|
|
"knowledgeBase/rpc/knowledge/util"
|
|
|
- "log"
|
|
|
"time"
|
|
|
)
|
|
|
|
|
@@ -36,31 +35,27 @@ type Question struct {
|
|
|
|
|
|
// KnowledgeAdd 知识新增
|
|
|
func (l *KnowledgeAddLogic) KnowledgeAdd(in *knowledgeclient.AddRequest) (*knowledgeclient.AddResponse, error) {
|
|
|
- // todo: add your logic here and delete this line
|
|
|
result := &knowledgeclient.AddResponse{}
|
|
|
//先查找知识库Id
|
|
|
query := map[string]interface{}{"status": 1, "appid": in.AppId, "ent_id": in.EntId}
|
|
|
- log.Println("查询知识库条件:", query)
|
|
|
datalist := Mysql.Find(util.KNOWLEDGE, query, "id", "", -1, -1)
|
|
|
if datalist != nil && *datalist != nil && len(*datalist) > 0 {
|
|
|
//问题进行分词
|
|
|
keywords := util.HttpDo(in.Question)
|
|
|
- log.Println("分词", keywords)
|
|
|
- //通过entUserId获取创建人名称
|
|
|
+ //通过entUserId获取创建人名称,调用用户中心
|
|
|
req := &usercenter.EntUserReq{
|
|
|
EntId: in.EntId,
|
|
|
EntUserId: in.EntUserId,
|
|
|
AppId: in.AppId,
|
|
|
}
|
|
|
resp, err := entity.UserCenterLib.GetEntUserInfo(context.Background(), req)
|
|
|
- //0:失败 1:成功 -1:不在有效期内 -2:数量不足 -3:没有授权
|
|
|
- if resp.ErrorCode == 0 || err != nil {
|
|
|
- logx.Infof("查询用户中台创建人信息失败", in.EntId, resp.ErrorCode, "err:", err)
|
|
|
+ if err != nil {
|
|
|
+ logx.Infof("查询用户中台创建人信息失败", in.EntId, in.EntUserId, "err:", err)
|
|
|
return nil, err
|
|
|
}
|
|
|
createPerson := resp.Data.Name
|
|
|
- nowTime := time.Now().Local().Format(util.Date_Full_Layout)
|
|
|
var answerId int64
|
|
|
+ nowTime := time.Now().Local().Format(util.Date_Full_Layout)
|
|
|
fool := Mysql.ExecTx("添加知识", func(tx *sql.Tx) bool {
|
|
|
//插入答案
|
|
|
answerData := map[string]interface{}{
|
|
@@ -72,9 +67,6 @@ func (l *KnowledgeAddLogic) KnowledgeAdd(in *knowledgeclient.AddRequest) (*knowl
|
|
|
"content": in.Answer,
|
|
|
}
|
|
|
answerId = Mysql.Insert(util.ANSWER, answerData)
|
|
|
- if answerId <= 0 {
|
|
|
- return false
|
|
|
- }
|
|
|
//插入问题
|
|
|
questionData := map[string]interface{}{
|
|
|
"answer_id": answerId,
|
|
@@ -82,10 +74,7 @@ func (l *KnowledgeAddLogic) KnowledgeAdd(in *knowledgeclient.AddRequest) (*knowl
|
|
|
"keywords": keywords,
|
|
|
}
|
|
|
questionId := Mysql.Insert(util.QUESTION, questionData)
|
|
|
- if questionId <= 0 {
|
|
|
- return false
|
|
|
- }
|
|
|
- return true
|
|
|
+ return answerId > 0 && questionId > 0
|
|
|
})
|
|
|
if fool {
|
|
|
//插入es
|
|
@@ -101,7 +90,6 @@ func (l *KnowledgeAddLogic) KnowledgeAdd(in *knowledgeclient.AddRequest) (*knowl
|
|
|
"entId": in.EntId,
|
|
|
}
|
|
|
b := elastic.Save(C.Es.Index, C.Es.Type, knowledge)
|
|
|
- log.Println("存es", b)
|
|
|
if b {
|
|
|
result.ErrorCode = 0
|
|
|
result.ErrorMsg = "插入数据成功"
|
|
@@ -118,6 +106,5 @@ func (l *KnowledgeAddLogic) KnowledgeAdd(in *knowledgeclient.AddRequest) (*knowl
|
|
|
result.ErrorCode = -1
|
|
|
result.ErrorMsg = "租户不存在"
|
|
|
}
|
|
|
- log.Println(result)
|
|
|
return result, nil
|
|
|
}
|