AlexP077 3 years ago
parent 6de29d039f
commit b2961ba766

@ -136,6 +136,7 @@ class PointService:
origin = point.geometry
qs = models.PlacementPoint.objects.filter(status=PointStatus.Working.name).annotate(
dist=Dist('geometry', origin)).order_by('dist')
if qs:
point.target_dist = qs[0].dist.m
point.target_post_cnt = qs.filter(
dist__lt=Distance(m=DEFAULT_PLACEMENT_POINT_UPDATE_RADIUS)
@ -232,7 +233,9 @@ class PointService:
param1__sum=Sum('param1'))['param1__sum']
point.age_day = AGE_DAY_LIMIT
placement_point = models.PlacementPoint.objects.annotate(
dist=Dist('geometry', origin)).order_by('dist')[0]
dist=Dist('geometry', origin)).order_by('dist')
if placement_point:
placement_point = placement_point[0]
point.target_cnt_ao_mean = placement_point.target_cnt_ao_mean
point.save()
for group in groups:
@ -302,7 +305,7 @@ class PointService:
data = pd.DataFrame(serializer.data)
if not data.empty:
if data['start_date'].any():
data['start_date'] = data.get('start_date').dt.tz_localize(None)
data['start_date'] = data['start_date'].apply(lambda x : pd.to_datetime(x).tz_localize(None) if x else None)
if data['sample_trn'].any():
data['sample_trn'] = data['sample_trn'].astype(int)
data.rename(columns={'district_id': 'district', 'area_id': 'area'}, inplace=True)

@ -410,8 +410,12 @@ class PrePlacementPointViewSet(PlacementPointViewSet):
@action(detail=False, methods=['delete'])
def delete_points(self, request):
ids = request.POST['ids'].split(',')
ids = request.POST.get('ids')
if ids:
ids = ids.split(',')
PointService.delete_preplacement_points(ids)
else:
models.PrePlacementPoint.objects.all().delete()
return Response(status=HTTPStatus.OK, )
@action(detail=False, methods=['get'])

Loading…
Cancel
Save