dawarich/app/serializers/api/visit_serializer.rb

66 lines
876 B
Ruby
Raw Normal View History

2025-03-02 15:24:57 -05:00
# frozen_string_literal: true
class Api::VisitSerializer
def initialize(visit)
@visit = visit
end
def call
{
id: id,
area_id: area_id,
user_id: user_id,
started_at: started_at,
ended_at: ended_at,
duration: duration,
name: name,
status: status,
place: {
2025-03-03 15:34:06 -05:00
latitude: visit.place&.lat || visit.area&.latitude,
longitude: visit.place&.lon || visit.area&.longitude,
2025-03-03 14:11:21 -05:00
id: visit.place&.id
2025-03-02 15:24:57 -05:00
}
}
end
private
attr_reader :visit
def id
visit.id
end
def area_id
visit.area_id
end
def user_id
visit.user_id
end
def started_at
visit.started_at
end
def ended_at
visit.ended_at
end
def duration
visit.duration
end
def name
visit.name
end
def status
visit.status
end
def place_id
visit.place_id
end
end