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.



314
315
316
317
318
319
320
321
322
323
# File 'lib/functions.rb', line 314

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).



341
342
343
344
345
346
347
348
349
350
351
# File 'lib/functions.rb', line 341

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.



329
330
331
332
333
334
335
336
337
338
# File 'lib/functions.rb', line 329

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.



354
355
356
357
358
359
360
361
362
363
364
# File 'lib/functions.rb', line 354

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