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

View file

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

View file

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

View file

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