matiasmenares/Nissboard

View on GitHub
dashboard/api/settings/led_setting.py

Summary

Maintainability
A
3 hrs
Test Coverage
from flask_restful import Resource
from flask import request, jsonify
from model.models import db, Color, ColorSchema, Led, LedSchema, LedOutput, LedOutputSchema
 
class LedSetting(Resource):
 
Similar blocks of code found in 2 locations. Consider refactoring.
def get(self):
led = Led.query.all()
led_schema = LedSchema(many=True)
led_output = LedOutput.query.all()
led_output_schema = LedOutputSchema(many=True)
return {'leds': led_schema.dump(led), 'led_outputs': led_output_schema.dump(led_output) }
 
def post(self):
params = request.json['led']
led = Led(name=params['name'], brightness=params['brightness'], channel_output_id=params['channel_output_id'],priority=params['priority'])
db.session.add(led)
db.session.commit()
for led_output in request.json['led_outputs']:
print(led_output)
output = LedOutput(led=led, led_start=led_output['led_start'], led_end=led_output['led_end'], value_start=led_output["value_start"], value_end=led_output["value_end"], color_start=Color.query.get(led_output['color_start_id']), color_end=Color.query.get(led_output['color_end_id']))
db.session.add(output)
db.session.commit()
return True