예제 #1
0
파일: views.py 프로젝트: GSedi/ChocoService
 def post(self, request, *args, **kwargs):
     master_service_id = int(request.data.pop('master_service_id'))
     master_service = models.MasterService.objects.get(pk=master_service_id)
     serializer = serializers.OrderSerializer(data=request.data)
     master = master_service.master
     master_services = master.service_masters.all()
     date = request.data.get('date')
     time = request.data.get('time')
     for ms in master_services:
         for order in ms.order_price.all():
             # print(order.date, date)
             if order.flag == 'new_order' and str(
                     order.date) == date and str(order.time) == time:
                 return Response({'error': 'this time not free'},
                                 status=status.HTTP_400_BAD_REQUEST)
     if serializer.is_valid():
         order = serializer.save(
             client=self.request.user.client,
             master_service=master_service,
             partner=master_service.salon.partner,
         )
         order.save()
         order_ser = serializers.OrderSerializer(order)
         headers = self.get_success_headers(serializer.data)
         return Response(order_ser.data,
                         status=status.HTTP_201_CREATED,
                         headers=headers)
     return Response(serializer.errors, status=status.HTTP_400_BAD_REQUEST)
예제 #2
0
파일: views.py 프로젝트: GSedi/ChocoService
def get_master_shedule(request, pk):
    date = request.GET.get('date')
    # print(date)
    master_service = models.MasterService.objects.get(pk=pk)
    master = master_service.master
    master_services = master.service_masters.all()
    orders = []
    times = []
    for ms in master_services:
        for order in ms.order_price.all():
            print(order.date, date)
            if order.flag == 'new_order' and str(order.date) == date:
                print('asfladsf;asdflasdf', order, order.time)
                orders.append(order)
                times.append(order.time)

    ser = serializers.OrderSerializer(orders, many=True)
    context = {'times': times}
    return Response(context, status=status.HTTP_200_OK)