projectDetail.go 960 B

12345678910111213141516171819202122232425262728293031
  1. package service
  2. import (
  3. "fmt"
  4. "sfbase/core"
  5. "sfbase/utils"
  6. "sfis/db"
  7. )
  8. var SE = utils.SimpleEncrypt{Key: "topJYBX2019"}
  9. func ProjectDetailData(id string) (data []map[string]interface{}, httpStatus int, err error) {
  10. httpStatus = 200
  11. _query := `{"query":{"bool":{"must":[{"term":{"id":"%s"}}],"must_not":[],"should":[]}},"_source":[%s]}`
  12. fields := `"_id","s_winner","projectname","projectcode","buyer","buyertel","buyerperson","jgtime","zbtime","bidamount","budget","buyerclass","area","city","sourceinfourl"`
  13. query := fmt.Sprintf(_query, id, fields)
  14. INDEX := core.GetStringConf("es.project.index")
  15. TYPE := core.GetStringConf("es.project.itype")
  16. infos, err := db.Es.Get(INDEX, TYPE, query)
  17. if err != nil {
  18. return nil, 200, err
  19. }
  20. if infos != nil && len(*infos) > 0 {
  21. data = *infos
  22. for _, val := range data {
  23. val["project_id"] = SE.EncodeString(utils.ObjToString(val["_id"]))
  24. delete(val, "_id")
  25. }
  26. }
  27. return data, httpStatus, nil
  28. }