Przeglądaj źródła

Merge branch 'hotfix/v4.8.23.1_wky' of qmx/jy into hotfix/v4.8.23.1

wangkaiyue 2 lat temu
rodzic
commit
5f0e62c007

+ 2 - 2
src/jfw/modules/bigmember/src/entity/marketAnalysis/customizad_distribution.go

@@ -317,7 +317,7 @@ func (mae *MarketAnalysisEntity) MarketTime() (map[string]interface{}, error) {
 	rMap := make(map[string]interface{})
 	rMapData := make(map[string]interface{})
 	thisRow := marketTime{}
-	res, _ := util.GetAggs("projectset", "projectset", finalSql)
+	res := util.GetAggs("projectset", "projectset", finalSql)
 	if res == nil || len(res) == 0 {
 		return nil, fmt.Errorf("未查询到项目")
 	}
@@ -604,7 +604,7 @@ func (mae *MarketAnalysisEntity) BuyerWinnerAnalysis() map[string]interface{} {
 	finalSql := fmt.Sprintf(mae.GetCommonQuerySqlWithAggs(), strings.Join(datas, ","))
 	log.Printf("final PurchasingAnalysiseQuery sql: %s", finalSql)
 	t := time.Now()
-	res, _ := util.GetAggs("projectset", "projectset", finalSql)
+	res := util.GetAggs("projectset", "projectset", finalSql)
 	if res == nil || len(res) == 0 {
 		return nil
 	}

+ 1 - 1
src/jfw/modules/bigmember/src/entity/marketAnalysis/customized_analysis.go

@@ -216,7 +216,7 @@ func (mae *MarketAnalysisEntity) AllData() (rMap map[string]interface{}, err err
 	}
 	finalSql := fmt.Sprintf(mae.GetCommonQuerySqlWithAggs(), strings.Join(aggs, ","))
 	log.Println("allData sql:", finalSql)
-	res, _ := util2.GetAggs("projectset", "projectset", finalSql)
+	res := util2.GetAggs("projectset", "projectset", finalSql)
 	if res == nil || len(res) == 0 {
 		return
 	}

+ 1 - 1
src/jfw/modules/bigmember/src/entity/marketAnalysis/scaleRefineQuery.go

@@ -101,7 +101,7 @@ func (mae *MarketAnalysisEntity) marketScaleRefineQuery() (rMap map[string]inter
 	finalSql := fmt.Sprintf(mae.GetCommonQuerySqlWithAggs(), strings.Join(aggsGroup, ","))
 	//fmt.Println("finalSql-----4", finalSql)
 	rMap = map[string]interface{}{}
-	res, _ := util.GetAggs("projectset", "projectset", finalSql)
+	res := util.GetAggs("projectset", "projectset", finalSql)
 	if res == nil || len(res) == 0 {
 		return
 	}

+ 1 - 1
src/jfw/modules/bigmember/src/entity/portraitBuyerSearch.go

@@ -126,7 +126,7 @@ func BuyerPortraitSearch(screen *PortraitScreen) (map[string]interface{}, error)
 
 	tBegin := time.Now()
 	doSearchSql := fmt.Sprintf(buyerPortraitSearchSql, strings.Join(mustQueryArr, ","), bidamountTimeRange, getMoneyRange(), comminTimeRange, comminTimeRange)
-	res, count := util.GetAggs("projectset", "projectset", doSearchSql)
+	res, count := util.GetAggsWithCount("projectset", "projectset", doSearchSql)
 	//log.Println("buyerSearchSql", doSearchSql)
 	if res == nil {
 		return nil, errors.New(fmt.Sprintf("%s采购单位画像查询异常\n", screen.Ent))

+ 6 - 6
src/jfw/modules/bigmember/src/entity/portraitWinnerSearch.go

@@ -1,19 +1,19 @@
 package entity
 
 import (
-	"jy/src/jfw/modules/bigmember/src/db"
+	qutil "app.yhyue.com/moapp/jybase/common"
+	elastic "app.yhyue.com/moapp/jybase/es"
+	"app.yhyue.com/moapp/jybase/redis"
 	"encoding/json"
 	"errors"
 	"fmt"
+	"jy/src/jfw/modules/bigmember/src/db"
+	"jy/src/jfw/modules/bigmember/src/util"
 	"log"
-	qutil "app.yhyue.com/moapp/jybase/common"
-	elastic "app.yhyue.com/moapp/jybase/es"
-	"app.yhyue.com/moapp/jybase/redis"
 	"regexp"
 	"sort"
 	"strings"
 	"time"
-	"jy/src/jfw/modules/bigmember/src/util"
 )
 
 const (
@@ -218,7 +218,7 @@ func GetWinnerPortraitSearch(screen *PortraitScreen) (map[string]interface{}, er
 	//开始查询
 	tBegin := time.Now()
 	doSearchSql := fmt.Sprintf(winnerPortraitSearchSql, strings.Join(mustQueryArr, ","), comminTimeRange, comminTimeRange, bidamountTimeRange)
-	res, docCount := util.GetAggs("projectset", "projectset", doSearchSql)
+	res, docCount := util.GetAggsWithCount("projectset", "projectset", doSearchSql)
 	log.Println("winnerPortraitSql", doSearchSql)
 	if res == nil {
 		return nil, errors.New(fmt.Sprintf("%s中标企业画像查询异常\n", screen.Ent))

+ 6 - 6
src/jfw/modules/bigmember/src/entity/portrait_manager.go

@@ -1,10 +1,10 @@
 package entity
 
 import (
-	"jy/src/jfw/modules/bigmember/src/config"
+	"app.yhyue.com/moapp/jybase/redis"
 	"encoding/json"
+	"jy/src/jfw/modules/bigmember/src/config"
 	"log"
-	"app.yhyue.com/moapp/jybase/redis"
 	"sync"
 	"time"
 )
@@ -31,7 +31,7 @@ func init() {
 	DoSearchCheck = NewSearchCheck()
 }
 
-//SearchRepeatCheck 防止重复查询
+// SearchRepeatCheck 防止重复查询
 type SearchRepeatCheck struct {
 	DoSearching map[string]bool //正在查询的
 	Check       sync.RWMutex    //锁
@@ -137,14 +137,14 @@ func Qyhx_search(obj *PortraitSearch) {
 	log.Printf("%s %s 检索完成 耗时%v\n", obj.EntName, obj.DoType, time.Since(start))
 }
 
-//upDataQxhxRedis 客户画像存储
+// upDataQxhxRedis 客户画像存储
 func upDataQxhxRedis(redisKey string, data interface{}) {
 	if data != nil {
 		redis.Put("other", redisKey, data, 60*60*24*config.Config.PortraitCacheDay) //走配置文件缓存时长
 	}
 }
 
-//TryFunc 画像查询,读存缓存
+// TryFunc 画像查询,读存缓存
 func TryFunc(f func(string, string) map[string]interface{}, ent, do string, times int) map[string]interface{} {
 	for i := times; i > 0; i-- {
 		if r := f(ent, do); r != nil {
@@ -155,7 +155,7 @@ func TryFunc(f func(string, string) map[string]interface{}, ent, do string, time
 	return nil
 }
 
-//GetPortraitCache 空筛选读缓存数据
+// GetPortraitCache 空筛选读缓存数据
 func GetPortraitCache(winner, doType string) map[string]interface{} {
 	hxObj := getInitPortraitSearch(winner, doType)
 	if rBytes, err := redis.GetBytes("other", hxObj.RedisKey); err == nil && len(*rBytes) != 0 {

+ 1 - 1
src/jfw/modules/bigmember/src/entity/portrait_screen.go

@@ -135,7 +135,7 @@ func (ps *PortraitScreen) GetProjectSelectItems(isWinner bool) (map[string]inter
 	}
 	doSearchSql := fmt.Sprintf(newBiddingSearchShowSql, entMatch, time.Date(time.Now().Year()-4, 1, 1, 0, 0, 0, 0, time.Local).Unix())
 	//log.Println("GetProjectSelectItems doSearchSql", doSearchSql)
-	res, _ := util.GetAggs(projectIndex, projectType, doSearchSql)
+	res := util.GetAggs(projectIndex, projectType, doSearchSql)
 	if res == nil {
 		return nil, fmt.Errorf("此企业无信息或获取信息列表检索条件出错")
 	}

+ 22 - 26
src/jfw/modules/bigmember/src/service/use/use.go

@@ -70,7 +70,7 @@ func (u *Use) SubPageMoveTip() {
 	})
 }
 
-//首次使用加入大会员
+// 首次使用加入大会员
 func (u *Use) Add() {
 	r := func() Result {
 		userid := qu.ObjToString(u.GetSession("userId"))
@@ -201,7 +201,7 @@ func (u *Use) Add() {
 	u.ServeJson(r)
 }
 
-//用户大会员信息
+// 用户大会员信息
 func (u *Use) Info() {
 	r := func() Result {
 		userid := qu.ObjToString(u.GetSession("userId"))
@@ -265,7 +265,7 @@ func (u *Use) Info() {
 	u.ServeJson(r)
 }
 
-//初始化信息
+// 初始化信息
 func (u *Use) Echo() {
 	if !R.CheckReqParam(u.ResponseWriter, u.Request, "entname") {
 		return
@@ -338,7 +338,7 @@ func (u *Use) Echo() {
 				  "size": 0
 				}
 		`
-		res, _ := util.GetAggs(db.DbConf.Elascit_index, db.DbConf.Elascit_type, fmt.Sprintf(query, name))
+		res := util.GetAggs(db.DbConf.Elascit_index, db.DbConf.Elascit_type, fmt.Sprintf(query, name))
 		echo_map["area"] = GetData(res, "group_area")    //地区
 		echo_map["buyer"] = GetData(res, "group_buyer")  //采购单位集合
 		industrys := GetData(res, "group_topscopeclass") //industry行业
@@ -423,7 +423,7 @@ func (u *Use) Echo() {
 		by := `"` + strings.Replace(buyer, `,`, `","`, -1) + `"`
 		industry := StringArrToString(industrys)
 		is := `"` + strings.Replace(industry, `,`, `","`, -1) + `"`
-		res2, _ := util.GetAggs(db.DbConf.Elascit_index, db.DbConf.Elascit_type, fmt.Sprintf(query2, by, is))
+		res2 := util.GetAggs(db.DbConf.Elascit_index, db.DbConf.Elascit_type, fmt.Sprintf(query2, by, is))
 		winners, ids := []string{}, []string{}
 		if winners := GetData(res2, "g_winner"); len(winners) > 0 {
 			winners, ids = gitWinnersIds(winners)
@@ -435,7 +435,7 @@ func (u *Use) Echo() {
 	u.ServeJson(r)
 }
 
-//附件下载
+// 附件下载
 func (u *Use) Attachment() {
 	if !R.CheckReqParam(u.ResponseWriter, u.Request, "infoId") {
 		return
@@ -477,7 +477,7 @@ func (u *Use) Attachment() {
 	u.ServeJson(r)
 }
 
-//邮件附件下载 ios
+// 邮件附件下载 ios
 func (u *Use) Email_attachement() {
 	if !R.CheckReqParam(u.ResponseWriter, u.Request, "email", "downurl") {
 		return
@@ -492,7 +492,7 @@ func (u *Use) Email_attachement() {
 	u.ServeJson(r)
 }
 
-//会员权益
+// 会员权益
 func (u *Use) Equity() {
 	r := func() Result {
 		userid := qu.ObjToString(u.GetSession("userId"))
@@ -573,7 +573,7 @@ func (u *Use) Equity() {
 	u.ServeJson(r)
 }
 
-//大会员权益修改
+// 大会员权益修改
 func (u *Use) Update() {
 	r := func() Result {
 		userid := qu.ObjToString(u.GetSession("userId"))
@@ -665,7 +665,7 @@ type UserInfo struct {
 	VipBefore202209 bool                  `json:"vipBefore202209"` //超级订阅:超前项目权限
 }
 
-//是否使用过首次使用
+// 是否使用过首次使用
 func (u *Use) IsAdd() {
 	r := func() Result {
 		uRefer := u.Refer()
@@ -758,7 +758,6 @@ func (u *Use) IsAdd() {
 	u.ServeJson(r)
 }
 
-//
 func initEntSess(phone string) int {
 	list := db.Mysql.SelectBySql(`select a.id,a.isNew,a.name,b.id as user_id from entniche_info a
 						inner join entniche_user b on (a.status=1 and b.phone=? and b.power=1 and a.id=b.ent_id)
@@ -770,7 +769,6 @@ func initEntSess(phone string) int {
 	return 0
 }
 
-//
 func intStringsJoin(is []int) string {
 	var str = []string{}
 	for _, v := range is {
@@ -779,7 +777,7 @@ func intStringsJoin(is []int) string {
 	return strings.Join(str, ",")
 }
 
-//AI中标预测历史记录
+// AI中标预测历史记录
 func (u *Use) Aiused_history() {
 	r := func() Result {
 		userid := qu.ObjToString(u.GetSession("userId"))
@@ -831,7 +829,7 @@ func (u *Use) Aiused_history() {
 	u.ServeJson(r)
 }
 
-//获取当前登录用户的手机号
+// 获取当前登录用户的手机号
 func Phone(userId string) (string, string) {
 	u, ok := db.Mgo.FindById("user", userId, `{"s_phone":1,"s_m_phone":1}`)
 	if ok && u != nil {
@@ -844,7 +842,7 @@ func Phone(userId string) (string, string) {
 	return "", ""
 }
 
-//获取聚合遍历结果
+// 获取聚合遍历结果
 func GetData(res esV7.Aggregations, field string) []string {
 	arr := []string{}
 	if g, ok := res.Children(field); ok {
@@ -862,7 +860,7 @@ func GetData(res esV7.Aggregations, field string) []string {
 	return arr
 }
 
-//数组转string
+// 数组转string
 func StringArrToString(arr []string) string {
 	s := ""
 	if len(arr) <= 0 {
@@ -878,7 +876,7 @@ func StringArrToString(arr []string) string {
 	return s
 }
 
-//合并
+// 合并
 func Merge(echo_map map[string]interface{}, userid string, session *httpsession.Session) map[string]interface{} {
 	m := map[string]interface{}{}
 	for _, v := range echo_map["area"].([]string) {
@@ -947,12 +945,12 @@ func Merge(echo_map map[string]interface{}, userid string, session *httpsession.
 	return echo_map
 }
 
-//合并数组并去重
+// 合并数组并去重
 func MergeArr(arr1, arr2 []string) []string {
 	return DeleteRepeat(append(arr1, arr2...))
 }
 
-//去重
+// 去重
 func DeleteRepeat(slice []string) []string {
 	m := make(map[string]int)
 	slice_repeat := []string{}
@@ -974,7 +972,7 @@ func DeleteRepeat(slice []string) []string {
  --->   { key:["关1"] },{ key:["关2"] },{ key:["附1"] }
 */
 
-//合并关键词(超级订阅关键词)
+// 合并关键词(超级订阅关键词)
 func MergeKeyWords(kw []map[string]interface{}) []map[string]interface{} {
 	keywords := []map[string]interface{}{}
 	a_key := []map[string]interface{}{}
@@ -1023,7 +1021,7 @@ func MergeKeyWords(kw []map[string]interface{}) []map[string]interface{} {
 	return keywords
 }
 
-//子账号列表
+// 子账号列表
 func SubAccout(userid string) []string {
 	account := []string{}
 	res, ok := db.Mgo.Find("user", map[string]interface{}{
@@ -1041,7 +1039,7 @@ func SubAccout(userid string) []string {
 	return account
 }
 
-//获取AI中标预测次数 (return 剩余次数 已使用次数)
+// 获取AI中标预测次数 (return 剩余次数 已使用次数)
 func GetSurplusCount(userid string) (int, int) {
 	//大会员用户服务详情表
 	data := db.Mysql.SelectBySql(`SELECT a.s_serviceid, a.i_frequency FROM `+jy.BigmemberUserPowerTable+` a WHERE a.s_userid = ? AND a.i_status = 0 AND a.s_serviceid in (6,15)`, userid)
@@ -1059,7 +1057,6 @@ func GetSurplusCount(userid string) (int, int) {
 	return forecastCount, bidfileCount
 }
 
-//
 func addOldent(userid, entname string) {
 	if db.Mgo.Count("jylab_followent", map[string]interface{}{"s_userid": userid, "s_entname": entname}) > 0 {
 		return
@@ -1075,7 +1072,6 @@ func addOldent(userid, entname string) {
 	db.Mgo.Save("jylab_followent", data)
 }
 
-//
 func Combo(userid string, member_status int) (combo_name string) {
 	data := db.Mysql.SelectBySql(`SELECT filter FROM dataexport_order WHERE filter LIKE '%"comboId"%'
 			AND user_id =? AND filter  NOT LIKE  '%"comboId":0%'
@@ -1110,7 +1106,7 @@ func Combo(userid string, member_status int) (combo_name string) {
 	return
 }
 
-//根据企业名称获取企业id
+// 根据企业名称获取企业id
 func gitWinnersIds(winners []string) (names []string, ids []string) {
 	names, ids = []string{}, []string{}
 	queryName := `"` + strings.Join(winners, `","`) + `"`
@@ -1125,7 +1121,7 @@ func gitWinnersIds(winners []string) (names []string, ids []string) {
 	return
 }
 
-//合并大会员关键词
+// 合并大会员关键词
 func MergeMemberKw(old, new []map[string]interface{}) []map[string]interface{} {
 	//判断是否有相同的分类名称
 	sameBl, index := false, -1

+ 10 - 2
src/jfw/modules/bigmember/src/util/aggsSearchUtil.go

@@ -5,8 +5,16 @@ import (
 	esV7 "github.com/olivere/elastic/v7"
 )
 
-//GetAggs 聚合查询
-func GetAggs(index, itype, query string) (esV7.Aggregations, int64) {
+// GetAggs 聚合查询
+func GetAggs(index, itype, query string) esV7.Aggregations {
+	v1, _, _ := elastic.GetAggs(index, itype, query)
+	return v1
+}
+
+func GetAggsWithCount(index, itype, query string) (esV7.Aggregations, int64) {
+	if len(query) > 0 {
+		query = `{"track_total_hits": true,` + query[1:]
+	}
 	v1, v2, _ := elastic.GetAggs(index, itype, query)
 	return v1, v2
 }