コード例 #1
0
    def put(self, id_: str):
        """
        Updates a maintenance work.
        """

        api_key = request.headers.get('apikey')
        if validate_api_key(api_key).status_code != 200:
            return validate_api_key(api_key)

        inserted_data = request.get_json()

        maintenance_work = MaintenanceModel.query.filter(MaintenanceModel.maintenance_id == id_).one()

        if inserted_data.get('bike_id', 'ParameterNotInPayload') != 'ParameterNotInPayload':
            maintenance_work.bike_id = inserted_data.get('bike_id')
        if inserted_data.get('category', 'ParameterNotInPayload') != 'ParameterNotInPayload':
            maintenance_work.category = inserted_data.get('category')
        if inserted_data.get('name', 'ParameterNotInPayload') != 'ParameterNotInPayload':
            maintenance_work.name = inserted_data.get('name')
        if inserted_data.get('interval_amount', 'ParameterNotInPayload') != 'ParameterNotInPayload':
            maintenance_work.interval_amount = inserted_data.get('interval_amount')
        if inserted_data.get('interval_unit', 'ParameterNotInPayload') != 'ParameterNotInPayload':
            maintenance_work.interval_unit = inserted_data.get('interval_unit')
        if inserted_data.get('interval_type', 'ParameterNotInPayload') != 'ParameterNotInPayload':
            maintenance_work.interval_type = inserted_data.get('interval_type')
        if inserted_data.get('tags_default', 'ParameterNotInPayload') != 'ParameterNotInPayload':
            maintenance_work.tags_default = inserted_data.get('tags_default')

        db.session.add(maintenance_work)
        db.session.commit()

        return None, 204
コード例 #2
0
    def put(self, id_: str):
        """
        Updates a training history entry.
        """

        api_key = request.headers.get('apikey')
        if validate_api_key(api_key).status_code != 200:
            return validate_api_key(api_key)

        inserted_data = request.get_json()

        training_entry = TrainingModel.query.filter(
            TrainingModel.training_id == id_).one()

        if inserted_data.get(
                'location',
                'ParameterNotInPayload') != 'ParameterNotInPayload':
            training_entry.location = inserted_data.get('location')
        if inserted_data.get(
                'weather_hourly',
                'ParameterNotInPayload') != 'ParameterNotInPayload':
            training_entry.weather_hourly = inserted_data.get('weather_hourly')
        if inserted_data.get(
                'datetime_display',
                'ParameterNotInPayload') != 'ParameterNotInPayload':
            training_entry.datetime_display = datetime.fromtimestamp(
                inserted_data.get('datetime_display'),
                tz=timezone.utc).replace(tzinfo=None)

        db.session.add(training_entry)
        db.session.commit()

        return None, 204
コード例 #3
0
    def get(self, id_: str):
        """
        Returns a training history entry.
        """

        api_key = request.headers.get('apikey')
        if validate_api_key(api_key).status_code != 200:
            return validate_api_key(api_key)

        training_entry = TrainingModel.query.filter(
            TrainingModel.training_id == id_).one()

        training_data = training_schema.dump(training_entry)
        setup_data = setup_schema.dump(training_entry.setups, many=True)

        training_data['setups'] = []
        if len(setup_data) > 0:
            for setup_entry in setup_data:
                session_data = SessionModel.query.filter(
                    SessionModel.setup_id == setup_entry['setup_id']).all()
                setup_entry['sessions'] = []
                if len(session_data) > 0:
                    for session_entry in session_data:
                        session = session_schema.dump(session_entry)
                        session['laptimes'] = laptime_schema.dump(
                            session_entry.laptimes, many=True)
                        setup_entry['sessions'].append(session)
                training_data['setups'].append(setup_entry)

        response = jsonify(training_data)
        response.status_code = 200

        return response
コード例 #4
0
    def put(self, id_: str):
        """
        Updates a spare part item parent.
        """

        api_key = request.headers.get('apikey')
        if validate_api_key(api_key).status_code != 200:
            return validate_api_key(api_key)

        inserted_data = request.get_json()

        sparepart = SparepartModel.query.filter(
            SparepartModel.sparepart_id == id_).one()

        if inserted_data.get(
                'name', 'ParameterNotInPayload') != 'ParameterNotInPayload':
            sparepart.name = inserted_data.get('name')
        if inserted_data.get(
                'module', 'ParameterNotInPayload') != 'ParameterNotInPayload':
            sparepart.module = inserted_data.get('module')
        if inserted_data.get(
                'min_stock',
                'ParameterNotInPayload') != 'ParameterNotInPayload':
            sparepart.min_stock = inserted_data.get('min_stock')

        db.session.add(sparepart)
        db.session.commit()

        return None, 204
コード例 #5
0
    def post(self):
        """
        Adds a lap time entry.
        """

        api_key = request.headers.get('apikey')
        if validate_api_key(api_key).status_code != 200:
            return validate_api_key(api_key)

        inserted_data = request.get_json()
        new_laptime = LaptimeModel(
            session_id=inserted_data.get('session_id'),
            lap_no=inserted_data.get('lap_no'),
            valid=inserted_data.get('valid'),
            track_layout=inserted_data.get('track_layout'),
            laptime_seconds=inserted_data.get('laptime_seconds'),
            sectors=inserted_data.get('sectors'),
            datetime_display=datetime.fromtimestamp(
                inserted_data.get('datetime_display'),
                tz=timezone.utc).replace(tzinfo=None),
        )

        db.session.add(new_laptime)
        db.session.commit()

        response = jsonify(new_laptime.lap_id)
        response.status_code = 201

        return response
コード例 #6
0
ファイル: session.py プロジェクト: SMEISEN/RidingCoachApp
    def post(self):
        """
        Adds a training session entry.
        """

        api_key = request.headers.get('apikey')
        if validate_api_key(api_key).status_code != 200:
            return validate_api_key(api_key)

        inserted_data = request.get_json()
        new_session = SessionModel(
            training_id=inserted_data.get('training_id'),
            bike_id=inserted_data.get('bike_id'),
            setup_id=inserted_data.get('setup_id'),
            application=inserted_data.get('application'),
            datetime_display=datetime.fromtimestamp(
                inserted_data.get('datetime_display'),
                tz=timezone.utc).replace(tzinfo=None),
        )

        db.session.add(new_session)
        db.session.commit()

        response = jsonify(new_session.session_id)
        response.status_code = 201

        return response
コード例 #7
0
ファイル: session.py プロジェクト: SMEISEN/RidingCoachApp
    def get(self):
        """
        Returns a list of all training session entries.
        """

        api_key = request.headers.get('apikey')
        if validate_api_key(api_key).status_code != 200:
            return validate_api_key(api_key)

        session_all_entries = SessionModel.query.order_by(
            SessionModel.datetime_display.desc()).all()

        session_entry_list = []
        for session_entry in session_all_entries:
            laptime_data = laptime_schema.dump(session_entry.laptimes,
                                               many=True)
            session_data = session_schema.dump(session_entry)
            session_data['laptimes'] = []
            if len(laptime_data) > 0:
                for laptime_entry in laptime_data:
                    session_data['laptimes'].append(laptime_entry)
            session_entry_list.append(session_data)

        response = jsonify(session_entry_list)
        response.status_code = 200

        return response
コード例 #8
0
    def post(self):
        """
        Adds a training history entry.
        """

        api_key = request.headers.get('apikey')
        if validate_api_key(api_key).status_code != 200:
            return validate_api_key(api_key)

        inserted_data = request.get_json()
        new_training = TrainingModel(
            location=inserted_data.get('location'),
            weather_hourly=inserted_data.get('weather_hourly'),
            datetime_display=datetime.fromtimestamp(
                inserted_data.get('datetime_display'),
                tz=timezone.utc).replace(tzinfo=None),
        )

        db.session.add(new_training)
        db.session.commit()

        response = jsonify(new_training.training_id)
        response.status_code = 201

        return response
コード例 #9
0
    def get(self):
        """
        Returns a list of all spare parts.
        """

        api_key = request.headers.get('apikey')
        if validate_api_key(api_key).status_code != 200:
            return validate_api_key(api_key)

        sparepart_all_entries = SparepartModel.query.order_by(
            SparepartModel.datetime_display.desc()).all()

        sparepart_entry_list = []
        for sparepart_entry in sparepart_all_entries:
            sparepartitem_data = sparepartitem_schema.dump(
                sparepart_entry.items, many=True)
            sparepart_data = sparepart_schema.dump(sparepart_entry)
            sparepart_data['current_stock'] = sparepart_entry.current_stock
            sparepart_data['items'] = sparepartitem_data
            sparepart_entry_list.append(sparepart_data)

        response = jsonify(sparepart_entry_list)
        response.status_code = 200

        return response
コード例 #10
0
ファイル: history.py プロジェクト: SMEISEN/RidingCoachApp
    def post(self):
        """
        Adds a maintenance history entry.
        """

        api_key = request.headers.get('apikey')
        if validate_api_key(api_key).status_code != 200:
            return validate_api_key(api_key)

        inserted_data = request.get_json()
        new_history = HistoryModel(
            maintenance_id=inserted_data.get('maintenance_id'),
            bike_id=inserted_data.get('bike_id'),
            operating_hours=inserted_data.get('operating_hours'),
            comment=inserted_data.get('comment'),
            tags=inserted_data.get('tags'),
            datetime_display=datetime.fromtimestamp(
                inserted_data.get('datetime_display'),
                tz=timezone.utc).replace(tzinfo=None),
        )

        db.session.add(new_history)
        db.session.commit()

        response = jsonify(new_history.history_id)
        response.status_code = 201

        return response
コード例 #11
0
    def post(self):
        """
        Adds a tire entry.
        """

        api_key = request.headers.get('apikey')
        if validate_api_key(api_key).status_code != 200:
            return validate_api_key(api_key)

        inserted_data = request.get_json()
        new_tire = TireModel(
            bike_id=inserted_data.get('bike_id'),
            active=inserted_data.get('active'),
            rim=inserted_data.get('rim'),
            category=inserted_data.get('category'),
            manufacturer=inserted_data.get('manufacturer'),
            name=inserted_data.get('name'),
            compound=inserted_data.get('compound'),
            axis=inserted_data.get('axis'),
            dimension=inserted_data.get('dimension'),
            dot=inserted_data.get('dot'),
            condition=inserted_data.get('condition'),
            operating_hours=inserted_data.get('operating_hours'),
            comment=inserted_data.get('comment'),
        )

        db.session.add(new_tire)
        db.session.commit()

        response = jsonify(new_tire.tire_id)
        response.status_code = 201

        return response
コード例 #12
0
    def put(self, id_: str):
        """
        Updates a coach advice.
        """

        api_key = request.headers.get('apikey')
        if validate_api_key(api_key).status_code != 200:
            return validate_api_key(api_key)

        inserted_data = request.get_json()

        coach_entry = CoachModel.query.filter(CoachModel.coach_id == id_).one()

        if inserted_data.get('category', 'ParameterNotInPayload') != 'ParameterNotInPayload':
            coach_entry.category = inserted_data.get('category')
        if inserted_data.get('symptom', 'ParameterNotInPayload') != 'ParameterNotInPayload':
            coach_entry.symptom = inserted_data.get('symptom')
        if inserted_data.get('notes', 'ParameterNotInPayload') != 'ParameterNotInPayload':
            coach_entry.notes = inserted_data.get('notes')
        if inserted_data.get('questions', 'ParameterNotInPayload') != 'ParameterNotInPayload':
            coach_entry.questions = inserted_data.get('questions')
        if inserted_data.get('advice', 'ParameterNotInPayload') != 'ParameterNotInPayload':
            coach_entry.advice = inserted_data.get('advice')

        db.session.add(coach_entry)
        db.session.commit()

        return None, 204
コード例 #13
0
    def post(self):
        """
        Creates a new maintenance work.
        """

        api_key = request.headers.get('apikey')
        if validate_api_key(api_key).status_code != 200:
            return validate_api_key(api_key)

        inserted_data = request.get_json()

        new_maintenance = MaintenanceModel(
            bike_id=inserted_data.get('bike_id'),
            category=inserted_data.get('category'),
            name=inserted_data.get('name'),
            interval_amount=inserted_data.get('interval_amount'),
            interval_unit=inserted_data.get('interval_unit'),
            interval_type=inserted_data.get('interval_type'),
            tags_default=inserted_data.get('tags_default'),
        )
        db.session.add(new_maintenance)
        db.session.commit()

        response = jsonify(new_maintenance.maintenance_id)
        response.status_code = 201

        return response
コード例 #14
0
    def get(self, id_: str):
        """
        Returns the number of maintenance warnings.
        """

        api_key = request.headers.get('apikey')
        if validate_api_key(api_key).status_code != 200:
            return validate_api_key(api_key)

        maintenance_query = MaintenanceModel.query.filter_by(**{'bike_id': id_}).all()
        bike_query = BikeModel.query.filter_by(**{'bike_id': id_}).all()

        bike_operating_hours = bike_schema.dump(bike_query, many=True)[0]['operating_hours']

        warnings = {
            'warnings': 0,
            'overdue_maintenance': [],
        }
        for maintenance_entry in maintenance_query:
            maintenance_data = maintenance_schema.dump(maintenance_entry)
            history_data = history_schema.dump(maintenance_entry.history, many=True)

            if len(history_data) > 0:
                state = maintenance_state(maintenance_data, history_data, bike_operating_hours)

                if state['absolute'] and state['absolute'] <= 0:
                    warnings['warnings'] += 1
                    warnings['overdue_maintenance'].append({**maintenance_data, **history_data[0]})

        response = jsonify(warnings)
        response.status_code = 200

        return response
コード例 #15
0
    def post(self):
        """
        Adds a training history entry.
        """

        api_key = request.headers.get('apikey')
        if validate_api_key(api_key).status_code != 200:
            return validate_api_key(api_key)

        inserted_data = request.get_json()
        new_setup = SetupModel(
            training_id=inserted_data.get('training_id'),
            bike_id=inserted_data.get('bike_id'),
            operating_hours=inserted_data.get('operating_hours'),
            weather_current=inserted_data.get('weather_current'),
            slick_pressure_front=inserted_data.get('slick_pressure_front'),
            slick_pressure_rear=inserted_data.get('slick_pressure_rear'),
            rain_pressure_front=inserted_data.get('rain_pressure_front'),
            rain_pressure_rear=inserted_data.get('rain_pressure_rear'),
            setup=inserted_data.get('setup'),
            comment=inserted_data.get('comment'),
            datetime_display=datetime.fromtimestamp(
                inserted_data.get('datetime_display'), tz=timezone.utc).replace(tzinfo=None),
        )

        db.session.add(new_setup)
        db.session.commit()

        response = jsonify(new_setup.setup_id)
        response.status_code = 201

        return response
コード例 #16
0
    def post(self):
        """
        Adds a coach advice.
        """

        api_key = request.headers.get('apikey')
        if validate_api_key(api_key).status_code != 200:
            return validate_api_key(api_key)

        inserted_data = request.get_json()

        new_coach = CoachModel(
            category=inserted_data.get('category'),
            symptom=inserted_data.get('symptom'),
            notes=inserted_data.get('notes'),
            questions=inserted_data.get('questions'),
            advice=inserted_data.get('advice'),
        )

        db.session.add(new_coach)
        db.session.commit()

        response = jsonify(new_coach.coach_id)
        response.status_code = 201

        return response
コード例 #17
0
    def get(self):
        """
        Returns the number of spoare part warnings.
        """

        api_key = request.headers.get('apikey')
        if validate_api_key(api_key).status_code != 200:
            return validate_api_key(api_key)

        sparepart_all_entries = SparepartModel.query.order_by(
            SparepartModel.datetime_display.desc()).all()

        warnings = {
            'warnings': 0,
            'missing_spareparts': [],
        }
        for sparepart_entry in sparepart_all_entries:
            if sparepart_entry.current_stock is None or sparepart_entry.min_stock is None:
                continue
            if sparepart_entry.current_stock < sparepart_entry.min_stock:
                sparepartitem_data = sparepartitem_schema.dump(
                    sparepart_entry.items, many=True)
                sparepart_data = sparepart_schema.dump(sparepart_entry)
                sparepart_data['current_stock'] = sparepart_entry.current_stock
                sparepart_data['items'] = sparepartitem_data

                warnings['warnings'] += 1
                warnings['missing_spareparts'].append(sparepart_data)

        response = jsonify(warnings)
        response.status_code = 200

        return response
コード例 #18
0
    def post(self):
        """
        Creates a filtered query based on the input json file and returns the requested data.
        """

        api_key = request.headers.get('apikey')
        if validate_api_key(api_key).status_code != 200:
            return validate_api_key(api_key)

        requested = request.get_json()
        valid_keys = ["bike_id", "category", "name", "interval_unit", "interval_type", "interval_amount",
                      "tags_default"]
        if not all(x in valid_keys for x in requested.keys()):
            response = jsonify([])
            response.status_code = 404

            return response

        filter_by_data = {
            'bike_id': requested.get('bike_id'),
            'category': requested.get('category'),
            'name': requested.get('name'),
            'interval_unit': requested.get('interval_unit'),
            'interval_type': requested.get('interval_type'),
        }
        filter_by_data = {key: value for (key, value) in filter_by_data.items() if value is not None}

        maintenance_query = MaintenanceModel.query.filter_by(**filter_by_data)

        maintenance_query = query_intervals(filter_keys=[
            "interval_amount",
        ], query=maintenance_query, request=requested, model=MaintenanceModel)

        bike_operating_hours = None
        if requested.get('bike_id', 'ParameterNotInPayload') != 'ParameterNotInPayload':
            bike_query = BikeModel.query.filter_by(**{'bike_id': requested.get('bike_id')}).all()
            bike_operating_hours = bike_schema.dump(bike_query, many=True)[0]['operating_hours']

        if requested.get('tags_default', 'ParameterNotInPayload') != 'ParameterNotInPayload':
            maintenance_query = maintenance_query \
                .filter(MaintenanceModel.tags_default.contains(cast(requested.get('tags_default'), ARRAY(db.String))))

        maintenance_query = maintenance_query \
            .order_by(MaintenanceModel.category.asc()) \
            .order_by(MaintenanceModel.name.asc()) \
            .order_by(MaintenanceModel.interval_type.asc()) \
            .order_by(MaintenanceModel.interval_unit.asc()) \
            .order_by(MaintenanceModel.interval_amount.asc()) \
            .all()

        maintenance_categories_dict = query_to_list(maintenance_query=maintenance_query,
                                                    bike_operating_hours=bike_operating_hours,
                                                    bike_id=requested.get('bike_id'))

        response = jsonify(maintenance_categories_dict)
        response.status_code = 200

        return response
コード例 #19
0
    def post(self):
        """
        Creates a filtered query based on the input json file and returns the requested data.
        """

        api_key = request.headers.get('apikey')
        if validate_api_key(api_key).status_code != 200:
            return validate_api_key(api_key)

        requested = request.get_json()
        valid_keys = ["bike_id", "name", "module", "min_stock"]
        if not all(x in valid_keys for x in requested.keys()):
            response = jsonify([])
            response.status_code = 404

            return response

        filter_by_data = {
            'bike_id': requested.get('bike_id'),
            'name': requested.get('name'),
            'module': requested.get('module'),
        }
        filter_by_data = {
            key: value
            for (key, value) in filter_by_data.items() if value is not None
        }

        sparepart_query = SparepartModel.query.filter_by(**filter_by_data)

        sparepart_query = query_intervals(filter_keys=[
            "min_stock",
        ],
                                          query=sparepart_query,
                                          request=requested,
                                          model=SparepartModel)

        sparepart_query = sparepart_query \
            .order_by(SparepartModel.module.asc()) \
            .order_by(SparepartModel.name.asc()) \
            .order_by(SparepartModel.min_stock.asc()) \
            .all()

        sparepart_entry_list = []
        for sparepart_entry in sparepart_query:
            sparepartitem_data = sparepartitem_schema.dump(
                sparepart_entry.items, many=True)
            sparepart_data = sparepart_schema.dump(sparepart_entry)
            sparepart_data['current_stock'] = sparepart_entry.current_stock
            sparepart_data['items'] = sparepartitem_data
            sparepart_entry_list.append(sparepart_data)

        response = jsonify(sparepart_entry_list)
        response.status_code = 200

        return response
コード例 #20
0
    def post(self):
        """
        Returns a list of all tire entries that match the query.
        """

        api_key = request.headers.get('apikey')
        if validate_api_key(api_key).status_code != 200:
            return validate_api_key(api_key)

        requested = request.get_json()
        valid_keys = [
            "bike_id", "active", "category", "axis", "datetime_created",
            "datetime_last_modified", "operating_hours"
        ]
        if not all(x in valid_keys for x in requested.keys()):
            response = jsonify([])
            response.status_code = 404

            return response

        filter_by_data = {
            'bike_id': requested.get('bike_id'),
            'active': requested.get('active'),
            'category': requested.get('category'),
            'axis': requested.get('axis'),
        }
        filter_by_data = {
            key: value
            for (key, value) in filter_by_data.items() if value is not None
        }

        tire_query = TireModel.query.filter_by(**filter_by_data)

        tire_query = query_intervals(filter_keys=[
            "datetime_created", "datetime_last_modified", "operating_hours"
        ],
                                     query=tire_query,
                                     request=requested,
                                     model=TireModel)

        tire_query = tire_query \
            .order_by(TireModel.operating_hours.asc()) \
            .order_by(TireModel.dot.asc()) \
            .all()

        tire_entry_list = []
        for tire_entry in tire_query:
            tire_data = tire_schema.dump(tire_entry)
            tire_entry_list.append(tire_data)

        response = jsonify(tire_entry_list)
        response.status_code = 200

        return response
コード例 #21
0
    def delete(self, id_: str):
        """
        Deletes a coach advice.
        """

        api_key = request.headers.get('apikey')
        if validate_api_key(api_key).status_code != 200:
            return validate_api_key(api_key)

        coach_entry = CoachModel.query.filter(CoachModel.coach_id == id_).one()

        db.session.delete(coach_entry)
        db.session.commit()

        return None, 204
コード例 #22
0
    def get(self, id_: str):
        """
        Returns a maintenance work.
        """

        api_key = request.headers.get('apikey')
        if validate_api_key(api_key).status_code != 200:
            return validate_api_key(api_key)

        maintenance_work = MaintenanceModel.query.filter(MaintenanceModel.maintenance_id == id_).one()

        response = jsonify(maintenance_schema.dump(maintenance_work))
        response.status_code = 200

        return response
コード例 #23
0
    def delete(self, id_: str):
        """
        Deletes maintenance work.
        """

        api_key = request.headers.get('apikey')
        if validate_api_key(api_key).status_code != 200:
            return validate_api_key(api_key)

        maintenance_work = MaintenanceModel.query.filter(MaintenanceModel.maintenance_id == id_).one()

        db.session.delete(maintenance_work)
        db.session.commit()

        return None, 204
コード例 #24
0
    def delete(self, id_: str):
        """
        Deletes a tire entry.
        """

        api_key = request.headers.get('apikey')
        if validate_api_key(api_key).status_code != 200:
            return validate_api_key(api_key)

        tire_entry = TireModel.query.filter(TireModel.tire_id == id_).one()

        db.session.delete(tire_entry)
        db.session.commit()

        return None, 204
コード例 #25
0
    def delete(self, id_: str):
        """
        Deletes a training history entry.
        """

        api_key = request.headers.get('apikey')
        if validate_api_key(api_key).status_code != 200:
            return validate_api_key(api_key)

        setup_entry = SetupModel.query.filter(SetupModel.setup_id == id_).one()

        db.session.delete(setup_entry)
        db.session.commit()

        return None, 204
コード例 #26
0
    def get(self, id_: str):
        """
        Returns a spare part item parent.
        """

        api_key = request.headers.get('apikey')
        if validate_api_key(api_key).status_code != 200:
            return validate_api_key(api_key)

        sparepart_item = SparepartModel.query.filter(
            SparepartModel.sparepart_id == id_).one()

        response = jsonify(sparepart_schema.dump(sparepart_item))
        response.status_code = 200

        return response
コード例 #27
0
    def delete(self, id_: str):
        """
        Deletes a spare part item parent.
        """

        api_key = request.headers.get('apikey')
        if validate_api_key(api_key).status_code != 200:
            return validate_api_key(api_key)

        sparepart = SparepartModel.query.filter(
            SparepartModel.sparepart_id == id_).one()

        db.session.delete(sparepart)
        db.session.commit()

        return None, 204
コード例 #28
0
ファイル: history.py プロジェクト: SMEISEN/RidingCoachApp
    def delete(self, id_: str):
        """
        Deletes a maintenance history entry.
        """

        api_key = request.headers.get('apikey')
        if validate_api_key(api_key).status_code != 200:
            return validate_api_key(api_key)

        history_entry = HistoryModel.query.filter(
            HistoryModel.history_id == id_).one()

        db.session.delete(history_entry)
        db.session.commit()

        return None, 204
コード例 #29
0
    def get(self, id_: str):
        """
        Returns a tire entry.
        """

        api_key = request.headers.get('apikey')
        if validate_api_key(api_key).status_code != 200:
            return validate_api_key(api_key)

        tire_entry = TireModel.query.filter(TireModel.tire_id == id_).one()

        tire_data = tire_schema.dump(tire_entry)

        response = jsonify(tire_data)
        response.status_code = 200

        return response
コード例 #30
0
    def get(self, id_: str):
        """
        Returns a coach advice.
        """

        api_key = request.headers.get('apikey')
        if validate_api_key(api_key).status_code != 200:
            return validate_api_key(api_key)

        coach_entry = CoachModel.query.filter(CoachModel.coach_id == id_).one()

        coach_data = coach_schema.dump(coach_entry)

        response = jsonify(coach_data)
        response.status_code = 200

        return response