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.



613
614
615
616
617
618
619
620
621
622
# File 'lib/functions.rb', line 613

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



640
641
642
643
644
645
646
647
648
649
650
# File 'lib/functions.rb', line 640

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.



628
629
630
631
632
633
634
635
636
637
# File 'lib/functions.rb', line 628

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.



653
654
655
656
657
658
659
660
661
662
663
# File 'lib/functions.rb', line 653

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