Compare commits

...

3 commits

Author SHA1 Message Date
f bf0e764f65 convertir el timestamp en una fecha 2022-03-03 15:14:22 -03:00
f 535191d26d validaciones 2022-03-03 14:47:26 -03:00
f 14eeab50e2 no crear nada cuando el colector está probando la conexión 2022-03-03 14:45:52 -03:00
4 changed files with 14 additions and 0 deletions

View file

@ -6,6 +6,11 @@ class ReadingsController < ActionController::API
# @see {https://docutopia.tupale.co/sutty:nodemecu:api}
def create
if reading_params.empty?
head :ok
return
end
Reading.transaction do
reading = raspberry.readings.build reading_params
reading.id = params[:transaction_uuid]
@ -52,6 +57,8 @@ class ReadingsController < ActionController::API
def sensor_params(sensor)
sensor.permit(:timestamp, :type, :value, :unit, :error).tap do |p|
p[:local_type] = p.delete :type
p[:timestamp] = Time.at p[:timestamp]
rescue TypeError
end
end
end

View file

@ -4,4 +4,6 @@ class Arduino < ApplicationRecord
belongs_to :raspberry
belongs_to :reading
has_many :sensors
validates_presence_of :local_id
end

View file

@ -3,4 +3,7 @@
class Raspberry < ApplicationRecord
has_many :readings
has_many :arduinos
validates_presence_of :name
validates_uniqueness_of :name
end

View file

@ -2,4 +2,6 @@
class Sensor < ApplicationRecord
belongs_to :arduino
validates_presence_of :timestamp, :local_type, :value, :unit
end