Exemplo n.º 1
0
class WorkBasketSerializer(serializers.ModelSerializer):
    approver_id = serializers.IntegerField(required=False, allow_null=True)
    approver = UserSerializer(read_only=True)
    author = UserSerializer(read_only=True)
    envelope_id = serializers.SerializerMethodField(read_only=True)
    transactions = TransactionSerializer(read_only=True, many=True)

    def get_envelope_id(self, object: models.WorkBasket):
        return object.pk

    class Meta:
        model = models.WorkBasket
        fields = [
            "id",
            "title",
            "reason",
            "author",
            "approver_id",
            "approver",
            "status",
            "transactions",
            "envelope_id",
            "created_at",
            "updated_at",
        ]
Exemplo n.º 2
0
    def get(self, request):
        user = request.user
        data = UserSerializer(user).data

        if 'api/ambassador' in request.path:
            data[
                'revenue'] = user.revenue  # RESTITUISCO la revenue SOLO se è un ambassador o loggato come tale

        return Response(data)
Exemplo n.º 3
0
    def put(self, request, pk=None):
        user = request.user
        data = request.data

        if data['password'] != data['password_confirm']:
            raise exceptions.APIException('Passwords do not match!')

        user.set_password(data['password'])
        user.save()
        return Response(UserSerializer(user).data)
Exemplo n.º 4
0
    def post(self, request, *args, **kwargs):
        serializer = self.get_serializer(data=request.data)
        if not serializer.is_valid(raise_exception=True):
            return Response({'message': 'Request Body Error.'}, status = status.HTTP_409_CONFLICT)

        serializer.is_valid(raise_exception=True)
        user = serializer.save(request)
        return Response({
            'user': UserSerializer(user, context = self.get_serializer_context()).data
        }, status = status.HTTP_201_CREATED)
Exemplo n.º 5
0
 def post(self, request, *args, **kwargs):
     try:
         user_data = json.loads(request.body)
         user = authenticate(username=user_data['username'],
                             password=user_data['password'])
         request.user = user
         login(request, request.user)
         return Response(UserSerializer(request.user).data)
     except:
         return HttpResponseBadRequest(json.dumps({'error': 'bad request'}),
                                       content_type="application/json")
Exemplo n.º 6
0
    def post(self, request, *args, **kwargs):
        serializer = self.get_serializer(data=request.data)
        if not serializer.is_valid(raise_exception=True):
            return Response({'message': 'Request Body Error.'}, status = status.HTTP_409_CONFLICT)

        serializer.is_valid(raise_exception=True)
        user = serializer.validated_data
        if user['username'] == 'None':
            return Response({'message': 'fail'}, status=status.HTTP_401_UNAUTHORIZED)

        return Response({
            'user': UserSerializer(user, context=self.get_serializer_context()).data,
            'token': user['token']
        })
Exemplo n.º 7
0
    def post(self, request):
        data = request.data

        if data['password'] != data['password_confirm']:
            raise exceptions.APIException('Passwords do not match!')

        data[
            'is_ambassador'] = 'api/ambassador' in request.path  # se chiamo url ambassador sono amabssador

        serializer = UserSerializer(data=data)
        serializer.is_valid(raise_exception=True)
        serializer.save()
        return Response(serializer.data)
Exemplo n.º 8
0
class RefrigeratorSerializer(serializers.ModelSerializer):
    owner = UserSerializer(many=False, read_only=True)
    item_set = ItemSerializer(many=True, read_only=True, required=False)
    basic_item_set = BasicItemSerializer(many=True, read_only=True, required=False)
    memo_set = MemoSerializer(many=True, read_only=True, required=False)
    class Meta:
        model = models.Refrigerator
        fields = ('pk', 'owner', 'item_num', 'item_set', 'basic_item_num', 'basic_item_set', 'memo_num', 'memo_set', 'cool_refrige_item_num', 'freeze_refrige_item_num', 'room_temp_item_num', 'created_at', 'updated_at')

# new_pw = request.data['new_password']
#         new_pw_confirm = request.data['new_password_confirm']
#         if new_pw == new_pw_confirm:
#             user.set_password(new_pw)
#             user.save()
#             auth.login(request, user)
#             Response({
#                 'success': 'true',
#                 'msg': '비밀번호가 변경되었습니다.'
#             }, status=status.HTTP_200_OK)
Exemplo n.º 9
0
 def get(self, _):
     ambassadors = User.objects.filter(is_ambassador=True)
     serializer = UserSerializer(
         ambassadors,
         many=True)  # many perché potrebbe restituire più di un oggetto
     return Response(serializer.data)
Exemplo n.º 10
0
def get_account(request):
    current_user = request.user
    return Response(UserSerializer(current_user).data)
Exemplo n.º 11
0
class CarsListSerializer(serializers.ModelSerializer):
    user = UserSerializer()

    class Meta:
        model = Car
        fields = ('id', 'vin', 'car_type', 'user')
Exemplo n.º 12
0
class PostsListSerializer(serializers.ModelSerializer):
    user = UserSerializer()

    class Meta:
        model = Blog
        fields = ('id', 'user')
Exemplo n.º 13
0
 def get(self, _):
     ambassadors = User.objects.filter(is_ambassador=True)
     serializer = UserSerializer(ambassadors, many=True)
     return Response(serializer.data)
Exemplo n.º 14
0
 def put(self, request, pk=None):
     user = request.user
     serializer = UserSerializer(user, data=request.data, partial=True)
     serializer.is_valid(raise_exception=True)
     serializer.save()
     return Response(serializer.data)
Exemplo n.º 15
0
 def get_author(self, obj):
     from common.serializers import UserSerializer
     user = self.get_author(obj)
     return UserSerializer(user, many=False, read_only=True).data