Class: KakaxiParse::KakaxiDevice

Inherits:
BaseModel show all
Defined in:
lib/kakaxi_parse/kakaxi_device.rb

Constant Summary collapse

COLUMNS =
%i(carrier_name iccid camera_finish_hour camera_start_hour imei
camera_interval udid battery upload_start_hour beacon_minor scfg
status avatar_type auto_post_interval beacon_major coordinates
tzoffset camera_quality imsi tel serial_number farm_id farm_manager_user_id)
@@belongs_to =
[Farm]
[FarmManagerUser]

Constants inherited from BaseModel

BaseModel::DEFUALT_LIMIT

Instance Attribute Summary

Attributes inherited from BaseModel

#created_at, #id, #name, #updated_at

Class Method Summary collapse

Instance Method Summary collapse

Methods inherited from BaseModel

all, #delete, demodulize, find, order

Constructor Details

#initialize(id: nil, name: nil, carrier_name: nil, iccid: nil, camera_finish_hour: nil, camera_start_hour: nil, imei: nil, camera_interval: nil, udid: nil, battery: nil, upload_start_hour: nil, beacon_minor: nil, scfg: nil, status: nil, avatar_type: nil, auto_post_interval: nil, beacon_major: nil, coordinates: nil, tzoffset: nil, camera_quality: nil, imsi: nil, tel: nil, serial_number: nil, farm_id: nil, updated_at: nil, created_at: nil) ⇒ KakaxiDevice

Returns a new instance of KakaxiDevice.



12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
# File 'lib/kakaxi_parse/kakaxi_device.rb', line 12

def initialize(
      id: nil,
      name: nil,
      carrier_name: nil,
      iccid: nil,
      camera_finish_hour: nil,
      camera_start_hour: nil,
      imei: nil,
      camera_interval: nil,
      udid: nil,
      battery: nil,
      upload_start_hour: nil,
      beacon_minor: nil,
      scfg: nil,
      status: nil,
      avatar_type: nil,
      auto_post_interval: nil,
      beacon_major: nil,
      coordinates: nil,
      tzoffset: nil,
      camera_quality: nil,
      imsi: nil,
      tel: nil,
      serial_number: nil,
      farm_id: nil,
      updated_at: nil,
      created_at: nil
    )
   @carrier_name = carrier_name
   @iccid = iccid
   @camera_finish_hour = camera_finish_hour
   @camera_start_hour = camera_start_hour
   @imei = imei
   @camera_interval = camera_interval
   @udid = udid
   @battery = battery
   @upload_start_hour = upload_start_hour
   @beacon_minor = beacon_minor
   @scfg = scfg
   @status = status
   @avatar_type = avatar_type
   @auto_post_interval = auto_post_interval
   @beacon_major = beacon_major
   @coordinates = coordinates
   @tzoffset = tzoffset
   @camera_quality = camera_quality
   @imsi = imsi
   @tel = tel
   @serial_number = serial_number
   @farm_id = farm_id
   super(id, name, updated_at, created_at)
end

Class Method Details

.reference_nameObject



73
74
75
# File 'lib/kakaxi_parse/kakaxi_device.rb', line 73

def self.reference_name
  'devices'
end

.short_nameObject



69
70
71
# File 'lib/kakaxi_parse/kakaxi_device.rb', line 69

def self.short_name
  'device'
end

.where(hash, limit: DEFUALT_LIMIT) ⇒ Object



65
66
67
# File 'lib/kakaxi_parse/kakaxi_device.rb', line 65

def self.where(hash, limit: DEFUALT_LIMIT)
  to_objects(super(self, validate_params(hash), limit, @@belongs_to, @@related_to)) if valid_key?(hash)
end

Instance Method Details

#farmObject



77
78
79
# File 'lib/kakaxi_parse/kakaxi_device.rb', line 77

def farm
  Farm.find(farm_id: farm_id)
end

#saveObject



81
82
83
84
85
86
# File 'lib/kakaxi_parse/kakaxi_device.rb', line 81

def save
  params = COLUMNS.push(:name).each_with_object({}) do |column, params|
    params[column] = self.send(column) unless self.send(column).nil?
  end
  id ? false : super(self, params, @@belongs_to)
end

#update(params) ⇒ Object



88
89
90
91
92
93
94
95
96
# File 'lib/kakaxi_parse/kakaxi_device.rb', line 88

def update(params)
  original_params = build_original_params(params)
  if super(self, KakaxiDevice.validate_params(params), @@belongs_to)
    original_params.each { |key, value| self.send("#{key}=", value) }
    true
  else
    false
  end
end