123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264 |
- package main
- import (
- "fmt"
- "github.com/olivere/elastic/v7"
- "github.com/xuri/excelize/v2"
- "go.uber.org/zap"
- util "jygit.jydev.jianyu360.cn/data_processing/common_utils"
- "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
- }
- 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]
- fmt.Println(i, projectName)
- res, err := SearchProjectFullScoring(client, target, projectName, areacode, publish)
- if err != nil {
- fmt.Println(err)
- }
- dds := make([]string, 0)
- for k, v := range res {
- if k > 2 {
- break
- }
- id := util.ObjToString(v["id"])
- jyurl := GetJyURLByID(id)
- socre := v["score"]
- pname := v["projectname"]
- dd := fmt.Sprintf("%v,%v,%v", pname, socre, jyurl)
- dds = append(dds, dd)
- }
- ddda := strings.Join(dds, "\n")
- f.SetCellValue("Sheet1", fmt.Sprintf("%s%d", "K", i+1), ddda)
- }
- }
- func TestSearchProjectFullScoring2(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("./剑鱼匹配疑似问题7月.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
- }
- for i, row := range rows {
- if i == 0 {
- continue
- }
- target := InputData{
- ProjectName: row[0],
- }
- projectName := rows[i][0]
- if projectName == "" {
- continue
- }
- areacode := ""
- publish := ""
- fmt.Println(i, projectName)
- res, err := SearchProjectFullScoring(client, target, projectName, areacode, publish)
- if err != nil {
- fmt.Println(err)
- }
- dds := make([]string, 0)
- for k, v := range res {
- if k > 2 {
- break
- }
- id := util.ObjToString(v["id"])
- jyurl := GetJyURLByID(id)
- socre := v["score"]
- pname := v["projectname"]
- dd := fmt.Sprintf("%v,%v,%v", pname, socre, jyurl)
- dds = append(dds, dd)
- }
- ddda := strings.Join(dds, "\n")
- f.SetCellValue("Sheet1", fmt.Sprintf("%s%d", "J", i+1), ddda)
- }
- }
|