Example #1
0
 def get_near_shop(cls, *, longitude, latitude, range_):
     shops = Shop.objects.all()
     in_range = (
         lambda shop: distance(
             longitude_1=longitude, latitude_1=latitude, longitude_2=shop.shop_long, latitude_2=shop.shop_lati
         )
         < range_
     )
     return [ShopProxy.get_by_object(shop).get_dict() for shop in shops if in_range(shop)]
Example #2
0
 def get_near_barber(cls, *, longitude, latitude, range_):
     Checker.latitude(latitude).longitude(longitude)
     barbers = Barber.objects.all()
     d = lambda barber_: distance(latitude_1=latitude, longitude_1=longitude,
                                  latitude_2=barber_.barber_shop_id.shop_lati,
                                  longitude_2=barber_.barber_shop_id.shop_long)
     barbers_in_range, dis_list = [], []
     for barber in barbers:
         temp = d(barber)
         if temp < range_:
             barbers_in_range.append(BarberProxy.get_by_object(barber))
             dis_list.append(temp)
     return barbers_in_range, dis_list