Module: BlackStack::Strings::DateTime

Defined in:
lib/functions.rb

Overview


DateTime


Class Method Summary collapse

Class Method Details

.datetime_api_check(s) ⇒ Object

Check the string has the format yyyymmddhhmmss.

> Return true if success. Otherwise, return false.

> Year cannot be lower than 1900.

> Year cannot be higher or equal than 2100.



320
321
322
323
324
325
326
327
328
329
# File 'lib/functions.rb', line 320

def self.datetime_api_check(s)
  return false if (s.size!=14)      
  year = s[0..3]
  month = s[4..5]
  day = s[6..7] 
  hour = s[8..9] 
  minute = s[10..11] 
  second = s[12..13]       
  BlackStack::DateTime::Misc::datetime_values_check(year,month,day,hour,minute,second)
end

.datetime_api_to_sql(s) ⇒ Object

Convierte un string con formato api-datatime (yyyymmddhhmmss) a un string con formato sql-datetime (yyyy-mm-dd hh:mm:ss).



347
348
349
350
351
352
353
354
355
356
357
# File 'lib/functions.rb', line 347

def self.datetime_api_to_sql(s)
  raise "Wrong Api DataTime Format." if (datetime_api_check(s)==false)
  year = s[0..3]
  month = s[4..5]
  day = s[6..7] 
  hour = s[8..9] 
  minute = s[10..11] 
  second = s[12..13] 
  ret = "#{year}-#{month}-#{day} #{hour}:#{minute}:#{second}" 
  return ret
end

.datetime_sql_check(s) ⇒ Object

Check the string has the format yyyy-mm-dd hh:mm:ss.

> Return true if success. Otherwise, return false.

> Year cannot be lower than 1900.

> Year cannot be higher or equal than 2100.



335
336
337
338
339
340
341
342
343
344
# File 'lib/functions.rb', line 335

def self.datetime_sql_check(s)
  return false if (s.size!=19)
  year = s[0..3]
  month = s[5..6]
  day = s[8..9] 
  hour = s[11..12] 
  minute = s[14..15] 
  second = s[17..18] 
  BlackStack::DateTime::Misc::datetime_values_check(year,month,day,hour,minute,second)
end

.datetime_sql_to_api(s) ⇒ Object

Convierte un string con formato sql-datatime a un string con formato sql-datetime.



360
361
362
363
364
365
366
367
368
369
370
# File 'lib/functions.rb', line 360

def self.datetime_sql_to_api(s)
  raise "Wrong SQL DataTime Format." if (datetime_sql_check(s)==false)
  year = s[0..3]
  month = s[5..6]
  day = s[8..9] 
  hour = s[11..12] 
  minute = s[14..15] 
  second = s[17..18] 
  ret = "#{year}#{month}#{day}#{hour}#{minute}#{second}" 
  return ret
end