Merge remote-tracking branch 'origin/develop' into develop

This commit is contained in:
alex 2020-01-15 17:06:18 +03:00
commit 7ce25a41c8

View File

@ -380,18 +380,18 @@ class EstablishmentQuerySet(models.QuerySet):
.order_by(*similarity_rules['ordering']) \
.distinct(*similarity_rules['distinctions'], 'id')
def similar_food_producers(self, distillery):
def similar_food_producers(self, food_producer):
"""
Return QuerySet with objects that similar to Food Producer.
:param distillery: Establishment instance
:param food_producer: Establishment instance
"""
base_qs = self.similar_base(distillery).same_subtype(distillery)
base_qs = self.similar_base(food_producer).same_subtype(food_producer)
similarity_rules = {
'ordering': [F('same_subtype').desc(), ],
'distinctions': ['same_subtype', ]
}
if distillery.address and distillery.address.coordinates:
base_qs = base_qs.annotate_distance(point=distillery.location)
if food_producer.address and food_producer.address.coordinates:
base_qs = base_qs.annotate_distance(point=food_producer.location)
similarity_rules['ordering'].append(F('distance').asc())
similarity_rules['distinctions'].append('distance')