package controller import ( . "app.yhyue.com/moapp/jybase/api" "app.yhyue.com/moapp/jybase/encrypt" elastic "app.yhyue.com/moapp/jybase/es" "fmt" "github.com/gogf/gf/v2/frame/g" "github.com/gogf/gf/v2/net/ghttp" "github.com/gogf/gf/v2/util/gconv" "github.com/pkg/errors" "jyOrderManager/internal/model" "time" ) 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}` // EntAssociation 销售区点&0原订单类型 func EntAssociation(r *ghttp.Request) { rData, err := func() (interface{}, error) { var param model.EntAssociationParams err := gconv.Struct(r.GetBody(), ¶m) if err != nil { return nil, errors.Wrap(err, "数据校验异常") } r := elastic.Get("qyxy", "qyxy", fmt.Sprintf(queryFullEntName, param.Name, param.Num)) var list []map[string]interface{} if r != nil { for _, v := range *r { tmp := map[string]interface{}{ "name": v["name"], "entId": encrypt.EncodeArticleId2ByCheck(gconv.String(v["_id"])), "company_area": gconv.String(v["company_area"]), //地区 "company_city": gconv.String(v["company_city"]), //城市 "establish_date": gconv.Int64(v["establish_date"]), //注册日期 "capital": gconv.Float64(v["capital"]), //注册资本 "company_phone": gconv.String(v["company_phone"]), //企业联系方式 "legal_person": gconv.String(v["legal_person"]), //企业法人 "taxCode": gconv.String(v["credit_no"]), "nseo_id": gconv.String(v["nseo_id"]), } if timestamp := gconv.Int64(v["establish_date"]); timestamp > 0 { tmp["establish_date"] = time.Unix(timestamp, 0).Format("2006-01-02") } list = append(list, tmp) } } return list, nil }() if err != nil { g.Log().Errorf(r.Context(), "销售区点&0原订单类型异常 %v", err) } r.Response.WriteJson(NewResult(rData, err)) }