association.go 2.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354
  1. package controller
  2. import (
  3. . "app.yhyue.com/moapp/jybase/api"
  4. "app.yhyue.com/moapp/jybase/encrypt"
  5. elastic "app.yhyue.com/moapp/jybase/es"
  6. "fmt"
  7. "github.com/gogf/gf/v2/frame/g"
  8. "github.com/gogf/gf/v2/net/ghttp"
  9. "github.com/gogf/gf/v2/util/gconv"
  10. "github.com/pkg/errors"
  11. "jyOrderManager/internal/model"
  12. "time"
  13. )
  14. const queryFullEntName = `{"query":{"function_score":{"query":{"bool":{"must":[{"range":{"company_type_int":{"to":"22"}}},{"multi_match":{"query":"%s","type":"phrase","fields":["name","history_name"]}}]}},"field_value_factor":{"field":"company_type_int","modifier":"reciprocal","factor":2}}},"_source":["name","history_name","company_type_int","_id","company_area","company_city","establish_date","capital","company_phone","legal_person","tax_code","credit_no","nseo_id"],"size":%d}`
  15. // EntAssociation 销售区点&0原订单类型
  16. func EntAssociation(r *ghttp.Request) {
  17. rData, err := func() (interface{}, error) {
  18. var param model.EntAssociationParams
  19. err := gconv.Struct(r.GetBody(), &param)
  20. if err != nil {
  21. return nil, errors.Wrap(err, "数据校验异常")
  22. }
  23. r := elastic.Get("qyxy", "qyxy", fmt.Sprintf(queryFullEntName, param.Name, param.Num))
  24. var list []map[string]interface{}
  25. if r != nil {
  26. for _, v := range *r {
  27. tmp := map[string]interface{}{
  28. "name": v["name"],
  29. "entId": encrypt.EncodeArticleId2ByCheck(gconv.String(v["_id"])),
  30. "company_area": gconv.String(v["company_area"]), //地区
  31. "company_city": gconv.String(v["company_city"]), //城市
  32. "establish_date": gconv.Int64(v["establish_date"]), //注册日期
  33. "capital": gconv.Float64(v["capital"]), //注册资本
  34. "company_phone": gconv.String(v["company_phone"]), //企业联系方式
  35. "legal_person": gconv.String(v["legal_person"]), //企业法人
  36. "taxCode": gconv.String(v["credit_no"]),
  37. "nseo_id": gconv.String(v["nseo_id"]),
  38. }
  39. if timestamp := gconv.Int64(v["establish_date"]); timestamp > 0 {
  40. tmp["establish_date"] = time.Unix(timestamp, 0).Format("2006-01-02")
  41. }
  42. list = append(list, tmp)
  43. }
  44. }
  45. return list, nil
  46. }()
  47. if err != nil {
  48. g.Log().Errorf(r.Context(), "销售区点&0原订单类型异常 %v", err)
  49. }
  50. r.Response.WriteJson(NewResult(rData, err))
  51. }