12345678910111213141516171819202122232425262728293031323334353637383940 |
- package common
- import (
- "encoding/json"
- "fmt"
- "leadGeneration/util"
- "log"
- )
- func (mae *MarketAnalysisEntity) AdvancedProject() map[string]interface{} {
- finalSql := fmt.Sprintf(mae.GetCommonQuerySqlWithAggs(), projectsNumber, mae.Size, projectsSort)
- log.Println("定制化分析报告sql查询:", finalSql)
- res, _, data := util.GetAggs("bidding", "bidding", finalSql)
- if res == nil || len(res) == 0 || data == nil || len(data) == 0 {
- return nil
- }
- var thisRow SuperProjects
- for name, object := range res {
- bArr, err := object.MarshalJSON()
- if len(bArr) == 0 || err != nil {
- continue
- }
- if name == "projects_number" {
- if json.Unmarshal(bArr, &thisRow.ProjectsNumber) != nil {
- continue
- }
- }
- }
- redisData := make(map[string]interface{})
- for _, v := range thisRow.ProjectsNumber.Buckets {
- redisData[v.Key] = v.DocCount
- }
- resData := make([]map[string]interface{}, len(data))
- for i, v := range data {
- if json.Unmarshal(*v.Source, &resData[i]) != nil {
- continue
- }
- }
- return nil
- }
|