mirror of https://github.com/fspc/BikeShed-1.git
Ilya Konanykhin
8 years ago
3 changed files with 61 additions and 9 deletions
@ -0,0 +1,41 @@ |
|||||
|
class BikeCsvImporter |
||||
|
module Logs |
||||
|
def log_entry_gone(bike, bike_hash) |
||||
|
if clean_value(bike_hash['gone']).to_s =~ /y/i |
||||
|
log_entry bike, log_entry_date(clean_value(bike_hash['date out'])), 'COMPLETED', 'Gone' |
||||
|
end |
||||
|
end |
||||
|
|
||||
|
def log_entry_acquired(bike, bike_hash) |
||||
|
if clean_value(bike_hash['date in']) |
||||
|
log_entry bike, log_entry_date(clean_value(bike_hash['date in'])), 'ACQUIRED' |
||||
|
end |
||||
|
end |
||||
|
|
||||
|
def log_entry_comment(bike, bike_hash) |
||||
|
if clean_value(bike_hash['comment']).present? |
||||
|
log_entry bike, nil, 'NOTE', clean_value(bike_hash['comment']) |
||||
|
end |
||||
|
end |
||||
|
|
||||
|
def log_entry_date(value) |
||||
|
return unless value |
||||
|
Date.strptime value, '%m/%d/%y' rescue nil |
||||
|
end |
||||
|
|
||||
|
def log_entry(bike, date, type, description = nil) |
||||
|
date ||= DateTime.now |
||||
|
bike_action = cached_log_bike_action(type) |
||||
|
|
||||
|
ActsAsLoggable::Log.new( |
||||
|
loggable_type: bike.class.to_s, |
||||
|
loggable_id: bike.id || bike.shop_id.to_i, # for dry run |
||||
|
log_action_type: bike_action.class.to_s, |
||||
|
log_action_id: bike_action.id, |
||||
|
start_date: date, |
||||
|
end_date: date, |
||||
|
description: description, |
||||
|
) |
||||
|
end |
||||
|
end |
||||
|
end |
Loading…
Reference in new issue