123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158 |
- package elastic
- // indexName:索引名称
- // mappingJson:表结构
- //func EsCreateIndex(indexName, mappingJson string) (err error) {
- // client := utils.EsClient
- //
- // //定义表结构
- // exists, err := client.IndexExists(indexName).Do(context.Background()) //<5>
- // if err != nil {
- // return
- // }
- // if !exists {
- // resp, err := client.CreateIndex(indexName).BodyJson(mappingJson).Do(context.Background())
- // //BodyJson(bodyJson).Do(context.Background())
- // if err != nil {
- // fmt.Println("CreateIndex Err:" + err.Error())
- // return err
- // }
- // fmt.Println(resp.Index, resp.ShardsAcknowledged, resp.Acknowledged)
- // } else {
- // fmt.Println(indexName + " 已存在")
- // }
- // return
- //}
- //
- //// EsDeleteData 删除es中的指标数据
- //func EsDeleteData(indexName, docId string) (err error) {
- // defer func() {
- // if err != nil {
- // fmt.Println("EsDeleteEdbInfoData Err:", err.Error())
- // }
- // }()
- // client := utils.EsClient
- //
- // resp, err := client.Delete().Index(indexName).Id(docId).Do(context.Background())
- // fmt.Println(resp)
- // if err != nil {
- // return
- // }
- // if resp.Status == 0 {
- // fmt.Println("删除成功")
- // } else {
- // fmt.Println("AddData", resp.Status, resp.Result)
- // }
- // return
- //}
- //
- //// EsAddOrEditReport 新增编辑es报告
- //func EsAddOrEditReportPdf(indexName, docId string, item *models.ReportPdfView) (err error) {
- // defer func() {
- // if err != nil {
- // fmt.Println("EsAddOrEditReport Err:", err.Error())
- // }
- // }()
- // client := utils.EsClient
- //
- // // docId为报告ID+章节ID
- // searchById, err := client.Get().Index(indexName).Id(docId).Do(context.Background())
- // if err != nil && !strings.Contains(err.Error(), "404") {
- // fmt.Println("Get Err" + err.Error())
- // return
- // }
- // if searchById != nil && searchById.Found {
- // resp, err := client.Update().Index(indexName).Id(docId).Doc(map[string]interface{}{
- // "ReportPdfId": item.ReportPdfId,
- // "PdfUrl": item.PdfUrl,
- // "PdfName": item.PdfName,
- // "Title": item.Title,
- // "Abstract": item.Abstract,
- // "PublishTime": item.PublishTime,
- // "ModifyTime": item.ModifyTime,
- // "SysUserId": item.SysUserId,
- // "SysRealName": item.SysRealName,
- // "Author": item.Author,
- // "State": item.State,
- // "ClassifyIdFirst": item.ClassifyIdFirst,
- // "ClassifyNameFirst": item.ClassifyNameFirst,
- // "ClassifyIdSecond": item.ClassifyIdSecond,
- // "ClassifyNameSecond": item.ClassifyNameSecond,
- // "ClassifyIdThird": item.ClassifyIdThird,
- // "ClassifyNameThird": item.ClassifyNameThird,
- // "Stage": item.Stage,
- // }).Do(context.Background())
- // if err != nil {
- // return err
- // }
- // //fmt.Println(resp.Status, resp.Result)
- // if resp.Status == 0 {
- // fmt.Println("修改成功" + docId)
- // err = nil
- // } else {
- // fmt.Println("EditData", resp.Status, resp.Result)
- // }
- // } else {
- // resp, err := client.Index().Index(indexName).Id(docId).BodyJson(item).Do(context.Background())
- // if err != nil {
- // fmt.Println("新增失败:", err.Error())
- // return err
- // }
- // if resp.Status == 0 && resp.Result == "created" {
- // fmt.Println("新增成功" + docId)
- // return nil
- // } else {
- // fmt.Println("AddData", resp.Status, resp.Result)
- // }
- // }
- // return
- //}
- //
- //// AnalyzeResp 分词接口返回结构体
- //type AnalyzeResp struct {
- // Tokens []struct {
- // EndOffset int64 `json:"end_offset"`
- // Position int64 `json:"position"`
- // StartOffset int64 `json:"start_offset"`
- // Token string `json:"token"`
- // Type string `json:"type"`
- // } `json:"tokens"`
- //}
- //
- //// Analyze 根据输入的文字获取分词后的文字
- //func Analyze(content string) (contentList []string, err error) {
- // defer func() {
- // if err != nil {
- // fmt.Println("Analyze Err:", err.Error())
- // }
- // }()
- // client := utils.EsClient
- //
- // queryMap := map[string]string{
- // "text": content,
- // "analyzer": "ik_max_word",
- // }
- // res, err := client.PerformRequest(
- // context.Background(),
- // elastic.PerformRequestOptions{
- // Method: "GET",
- // Path: "/_analyze",
- // Body: queryMap,
- // Stream: false,
- // },
- // )
- // if res.StatusCode == 200 {
- // var analyzeResp AnalyzeResp
- // tmpErr := json.Unmarshal(res.Body, &analyzeResp)
- // if tmpErr != nil {
- // err = errors.New("返回数据转结构体失败:" + tmpErr.Error())
- // return
- // }
- // for _, v := range analyzeResp.Tokens {
- // contentList = append(contentList, v.Token)
- // }
- // } else {
- // err = errors.New("分词失败,返回code异常:" + strconv.Itoa(res.StatusCode))
- // }
- // return
- //}
|