diff --git a/app/mix/service/apiservice.go b/app/mix/service/apiservice.go index b90125b2..454a083c 100644 --- a/app/mix/service/apiservice.go +++ b/app/mix/service/apiservice.go @@ -2734,6 +2734,7 @@ func (s *Service) ApiUpdateZone(ctx *gin.Context, req *zoneproto.ApiUpdateReq) ( profile := req.Zone.GetProfile() req.Zone.Profile = nil err = _DefaultZoneDecrtByEs.OpUpdate(ctx, &zoneproto.OpUpdateReq{ + BaseRequest: req.BaseRequest, Zone: req.Zone, AdmissionPrice: req.AdmissionPrice, }) diff --git a/bizcommon/util/util.go b/bizcommon/util/util.go index eade0f17..ae070e36 100644 --- a/bizcommon/util/util.go +++ b/bizcommon/util/util.go @@ -378,7 +378,7 @@ func GetLastLessOrEqualForFloat64(arr []float64, target float64) int { type Int64Filter struct { LowerBound *int64 `json:"lower_bound" bson:"lower_bound"` UpperBound *int64 `json:"upper_bound" bson:"upper_bound"` - Scale float64 `json:"scale" bson:"scale"` + ScaleCoeff float64 `json:"scale_coeff" bson:"scale_coeff"` Decay float64 `json:"decay" bson:"decay"` Weight float64 `json:"weight" bson:"weight"` } @@ -411,7 +411,8 @@ func CreateGaussDecayFunction(name string, filter *Int64Filter, refFilter *Int64 } origin := float64(lb+ub) / 2 offset := float64(-lb+ub) / 2 - return elastic.NewGaussDecayFunction().FieldName(name).Origin(origin).Offset(offset).Scale(refFilter.Scale).Decay(refFilter.Decay).Weight(refFilter.Weight) + scale := (origin - offset) * refFilter.ScaleCoeff + return elastic.NewGaussDecayFunction().FieldName(name).Origin(origin).Offset(offset).Scale(scale).Decay(refFilter.Decay).Weight(refFilter.Weight) } func CreateKeywordScriptScoreFunction(name string, value string, weight float64) *elastic.ScriptFunction {