package main import ( "fmt" "github.com/olivere/elastic/v7" "github.com/xuri/excelize/v2" "go.uber.org/zap" "jygit.jydev.jianyu360.cn/data_processing/common_utils/log" "jygit.jydev.jianyu360.cn/data_processing/common_utils/mongodb" "strconv" "strings" "testing" "time" ) func TestBiddng(t *testing.T) { f, err := excelize.OpenFile("./6月份未匹配到剑鱼的项目清单.xlsx") if err != nil { fmt.Println(err) return } defer func() { f.Save() if err := f.Close(); err != nil { fmt.Println(err) } }() rows, err := f.GetRows("Sheet1") if err != nil { fmt.Println(err) return } //url := "http://172.17.4.184:19908" url := "http://127.0.0.1:19908" username := "jybid" password := "Top2023_JEB01i@31" //index := "bidding" //索引名称 // 创建 Elasticsearch 客户端 client, err := elastic.NewClient( elastic.SetURL(url), elastic.SetBasicAuth(username, password), elastic.SetSniff(false), ) if err != nil { fmt.Printf("创建 Elasticsearch 客户端失败:%s", err) } for i := 1; i < len(rows); i++ { projectName := rows[i][1] res, err := searchES23(client, projectName, "", 60, 20) if err != nil { fmt.Println(projectName) log.Info("TestBiddng", zap.Error(err)) } if len(res) > 0 { f.SetCellValue("Sheet1", fmt.Sprintf("F%v", i+1), 1) } fmt.Printf("%s 总数是:%d\n", projectName, len(res)) } } func TestSearchES23(t *testing.T) { //client, err := elastic.NewClient( // elastic.SetURL(GF.Es.URL), // elastic.SetBasicAuth(GF.Es.Username, GF.Es.Password), // elastic.SetSniff(false), //) //if err != nil { // log.Fatal("创建 Elasticsearch 客户端失败", zap.Error(err)) //} // //projectName := "卡秋生物生产研发中心建设项目" //results, err := searchES24(client, projectName, "", 20, 50) //results, err := searchESCommonQuery(client, projectName, "", 20, 30) //results, err := SearchProjectFullScoring(client, projectName, "", "", "") //log.Info("aaa", zap.Any("results", results)) } func TestSearchProjectFullScoring(t *testing.T) { url := "http://127.0.0.1:19908" username := "jybid" password := "Top2023_JEB01i@31" client, err := elastic.NewClient( elastic.SetURL(url), elastic.SetBasicAuth(username, password), elastic.SetSniff(false), ) if err != nil { log.Fatal("创建 Elasticsearch 客户端失败", zap.Error(err)) } MgoQY = &mongodb.MongodbSim{ //MongodbAddr: "172.31.31.202:27081,172.20.45.128:27080", MongodbAddr: "127.0.0.1:27083", Size: 10, DbName: "mixdata", UserName: "SJZY_RWbid_ES", Password: "SJZY@B4i4D5e6S", Direct: true, } MgoQY.InitPool() f, err := excelize.OpenFile("./项目信息.xlsx") if err != nil { fmt.Println(err) return } defer func() { f.Save() if err := f.Close(); err != nil { fmt.Println(err) } }() rows, err := f.GetRows("Sheet1") if err != nil { fmt.Println(err) return } //读取 Excel文件 条件参数 //var targets []InputData // Start from row 1 to skip the header for i, row := range rows { if i == 0 { continue } if len(row) < 6 { // Ensure row has enough columns continue } investment, _ := strconv.ParseFloat(row[4], 64) dateStr := strings.TrimPrefix(row[5], "Y") baseDate, _ := time.Parse("200601", dateStr) target := InputData{ ProjectCode: row[0], ProjectName: row[1], AreaCode: row[2], ConstructionUnit: row[3], PlannedInvestment: investment, BaseDate: baseDate, } //targets = append(targets, target) projectName := rows[i][1] areacode := rows[i][2] publish := rows[i][5] res, err := SearchProjectFullScoring(client, target, projectName, areacode, publish) fmt.Println(res, err) } //for i := 2; i < len(rows); i++ { // projectName := rows[i][1] // areacode := rows[i][2] // publish := rows[i][5] // // res, err := SearchProjectFullScoring(client, projectName, areacode, publish) // fmt.Println(res, err) // results, err := searchES24(client, projectName, "", 20, 50) // // fmt.Println(results, err) // //} }