示例#1
0
def import_old_contcomb(request):

    try:
        # # Please, refactor this code! :S

        # Save vehicle first...
        serializer = SaveVehicleSerializer(data=request.DATA)

        if serializer.is_valid():

            vehicle = serializer.object
            vehicle.user = request.user
            vehicle.save()

            supplies = json.loads(request.DATA.get('supplies'), strict=False)
            current_km = request.DATA.get('current_km')
            walked_km = request.DATA.get('walked_km')

            # Validations
            is_valid_float_greater_zero_param(current_km)
            is_valid_float_greater_zero_param(walked_km)

            current_odometer = float(current_km) - float(walked_km)

            # Iterate supplies...
            for supply in supplies:

                # Set default values...
                supply['fuel'] = Fuel.objects.get_first_fuel()
                supply['fuel_price'] = 2
                supply['vehicle'] = vehicle.id
                supply['station'] = ''
                supply['is_full'] = True

                # Set values
                last_odometer = float(supply['odometer'])
                supply['odometer'] = current_odometer

                # Save supply
                serializer = SaveSerializer(data=supply)

                if serializer.is_valid():
                    supply_obj = serializer.object
                    supply_obj.save()
                    current_odometer -= last_odometer
                else:
                    logger.error(serializer.errors)
                    return ValidationExceptionSerializer.response_exception(
                        serializer.errors)

            return response_commit({})
        else:
            logger.error(serializer.errors)
            return ValidationExceptionSerializer.response_exception(
                serializer.errors)

    except Exception, e:
        logger.error(e)
        return ServiceExceptionSerializer.response_exception(e.message)
示例#2
0
def import_old_contcomb(request):
    
    try:
        # # Please, refactor this code! :S
        
        # Save vehicle first...
        serializer = SaveVehicleSerializer(data=request.DATA)

        if serializer.is_valid():

            vehicle = serializer.object
            vehicle.user = request.user
            vehicle.save()
            
            supplies = json.loads(request.DATA.get('supplies'), strict=False)
            current_km = request.DATA.get('current_km')
            walked_km = request.DATA.get('walked_km')

            # Validations
            is_valid_float_greater_zero_param(current_km)
            is_valid_float_greater_zero_param(walked_km)

            current_odometer = float(current_km) - float(walked_km)

            # Iterate supplies...
            for supply in supplies:
                
                # Set default values...
                supply['fuel'] = Fuel.objects.get_first_fuel()
                supply['fuel_price'] = 2
                supply['vehicle'] = vehicle.id
                supply['station'] = ''
                supply['is_full'] = True

                # Set values
                last_odometer = float(supply['odometer'])
                supply['odometer'] = current_odometer

                # Save supply
                serializer = SaveSerializer(data=supply)

                if serializer.is_valid():
                    supply_obj = serializer.object
                    supply_obj.save()
                    current_odometer -=  last_odometer
                else:
                    logger.error(serializer.errors)
                    return ValidationExceptionSerializer.response_exception(serializer.errors)
                
            return response_commit({})
        else:
            logger.error(serializer.errors)
            return ValidationExceptionSerializer.response_exception(serializer.errors)

    except Exception, e:
        logger.error(e)
        return ServiceExceptionSerializer.response_exception(e.message)
示例#3
0
def get_by_username(request, username):

    try:

        # Valid Username
        validate_required(username)
        # Find User by username to check if it exist
        user = User.objects.get_by_username(username)

        return response_commit({"user": model_to_dict(user, exclude=["password", "token"])})

    except ValidationError, e:
        return ValidationExceptionSerializer.response_exception({"username": e.messages})
示例#4
0
def delete(request, id_user):

    try:

        # Valid ID
        try:
            is_valid_int_greater_zero_param(id_user)
        except ValidationError, e:
            return ValidationExceptionSerializer.response_exception({"id_user": e.messages})

        # Find User by ID to check if it exist
        try:
            user = User.objects.get_by_pk(id_user)
        except ObjectDoesNotExist, e:
            return ServiceExceptionSerializer.response_exception(error_messages.get("invalid") % "Usuário")
示例#5
0
def save(request):
 
    try:
        serializer = SaveSerializer(data=request.DATA)
 
        if serializer.is_valid():
 
            supply = serializer.object
            supply.save()
 
            return response_commit({"supply": model_to_dict(supply)})
        else:
            logger.error(serializer.errors)
            return ValidationExceptionSerializer.response_exception(serializer.errors)
 
    except ObjectDoesNotExist, e:
        logger.error(e)
        return ObjectDoesNotExistExceptionSerializer.response_exception(e.message)
示例#6
0
def save(request):

    try:

        serializer = SaveSerializer(data=request.DATA)

        if serializer.is_valid():

            user = serializer.object
            user.save()

            return response_commit({"user": model_to_dict(user, exclude=["password", "token"])})
        else:
            return ValidationExceptionSerializer.response_exception(serializer.errors)

    except Exception, e:
        logger.error(e)
        return ServiceExceptionSerializer.response_exception(e.message)
示例#7
0
def save(request):

    try:

        serializer = SaveSerializer(data=request.DATA)

        if serializer.is_valid():

            contact = serializer.object
            contact.user = request.user
            contact.save()

            return response_commit()
        else:
            return ValidationExceptionSerializer.response_exception(serializer.errors)

    except Exception, e:
        logger.error(e)
        return ServiceExceptionSerializer.response_exception(e.message)
示例#8
0
def save(request):

    try:
        serializer = SaveSerializer(data=request.DATA)

        if serializer.is_valid():

            vehicle = serializer.object
            vehicle.user = request.user
            vehicle.save()

            return response_commit({"vehicle": model_to_dict(vehicle)})
        else:
            logger.error(serializer.errors)
            return ValidationExceptionSerializer.response_exception(serializer.errors)

    except Exception, e:
        logger.error(e)
        return ServiceExceptionSerializer.response_exception(e.message)
示例#9
0
def save(request):

    try:
        serializer = SaveSerializer(data=request.DATA)

        if serializer.is_valid():

            supply = serializer.object
            supply.save()

            return response_commit({"supply": model_to_dict(supply)})
        else:
            logger.error(serializer.errors)
            return ValidationExceptionSerializer.response_exception(
                serializer.errors)

    except ObjectDoesNotExist, e:
        logger.error(e)
        return ObjectDoesNotExistExceptionSerializer.response_exception(
            e.message)
示例#10
0
def save(request):

    try:

        serializer = SaveSerializer(data=request.DATA)

        if serializer.is_valid():

            contact = serializer.object
            contact.user = request.user
            contact.save()

            return response_commit()
        else:
            return ValidationExceptionSerializer.response_exception(
                serializer.errors)

    except Exception, e:
        logger.error(e)
        return ServiceExceptionSerializer.response_exception(e.message)
示例#11
0
def save(request):

    try:
        serializer = SaveSerializer(data=request.DATA)

        if serializer.is_valid():

            vehicle = serializer.object
            vehicle.user = request.user
            vehicle.save()

            return response_commit({"vehicle": model_to_dict(vehicle)})
        else:
            logger.error(serializer.errors)
            return ValidationExceptionSerializer.response_exception(
                serializer.errors)

    except Exception, e:
        logger.error(e)
        return ServiceExceptionSerializer.response_exception(e.message)
示例#12
0
def update(request):
 
    try:
 
        supply = Supply.objects.get_by_pk(request.DATA.get('supply_id'))
 
        serializer = SaveSerializer(clone(supply), data=request.DATA)
 
        if serializer.is_valid():
 
            supply = serializer.object
            supply.save()
 
            return response_commit(model_to_dict(supply))
 
        else:
            return ValidationExceptionSerializer.response_exception(serializer.errors)
 
    except ObjectDoesNotExist, e:
        logger.error(e)
        return ObjectDoesNotExistExceptionSerializer.response_exception(e.message)
示例#13
0
def update(request):

    try:

        vehicle = Vehicle.objects.get_by_pk(request.DATA.get('car_id'))

        serializer = SaveSerializer(clone(vehicle), data=request.DATA)

        if serializer.is_valid():

            vehicle = serializer.object
            vehicle.save()

            return response_commit(model_to_dict(vehicle))

        else:
            return ValidationExceptionSerializer.response_exception(serializer.errors)

    except ObjectDoesNotExist, e:
        logger.error(e)
        return ServiceExceptionSerializer.response_exception(error_messages.get("invalid") % u"Veículo")
示例#14
0
def update(request):

    try:

        user = User.objects.get_by_pk(request.user.id)

        serializer = UpdateSerializer(clone(user), data=request.DATA)

        if serializer.is_valid():

            user = serializer.object
            user.save()

            return response_commit({"user": model_to_dict(user, exclude=["password", "token"])})

        else:
            return ValidationExceptionSerializer.response_exception(serializer.errors)

    except ObjectDoesNotExist, e:
        logger.error(e)
        return ServiceExceptionSerializer.response_exception(error_messages.get("invalid") % "Usuário")
示例#15
0
def update(request):

    try:

        supply = Supply.objects.get_by_pk(request.DATA.get('supply_id'))

        serializer = SaveSerializer(clone(supply), data=request.DATA)

        if serializer.is_valid():

            supply = serializer.object
            supply.save()

            return response_commit(model_to_dict(supply))

        else:
            return ValidationExceptionSerializer.response_exception(
                serializer.errors)

    except ObjectDoesNotExist, e:
        logger.error(e)
        return ObjectDoesNotExistExceptionSerializer.response_exception(
            e.message)
示例#16
0
def update(request):

    try:

        vehicle = Vehicle.objects.get_by_pk(request.DATA.get('car_id'))

        serializer = SaveSerializer(clone(vehicle), data=request.DATA)

        if serializer.is_valid():

            vehicle = serializer.object
            vehicle.save()

            return response_commit(model_to_dict(vehicle))

        else:
            return ValidationExceptionSerializer.response_exception(
                serializer.errors)

    except ObjectDoesNotExist, e:
        logger.error(e)
        return ServiceExceptionSerializer.response_exception(
            error_messages.get("invalid") % u"Veículo")