#
#= master_revisions モデル
# Authors:: Sumiyo Yamamoto
# Copyright:: Copyright (C) OrbusNeich Medical K.K.  2010.
#--
# date        name                   note
# 2010.11.19  Sumiyo Yamamoto        新規登録
#-------------------------------------------------------------------------------
#++
class MasterRevision < Comm::BaseModel::PermanentMaster
#  RECORD_ID = 1
#  REV_MAX = 4294967295
  
  def self.get_rev_number
    #ar = find_by_sql("SELECT id FROM master_revisions ORDER BY id DESC LIMIT 1").first
    ar = self.last
    return ar.id.to_i
  end
  
  def self.up_rev_number(table_name)
    rec = self.new
    rec.table_name = table_name
    rec.save!
    return rec.id
  end
  
  def self.check_rev_number(rev_number)
    unless rev_number
      return true, 0
    end
    current = self.get_rev_number
    logger.debug('rev_number:'+rev_number.to_s)
    logger.debug('current:'+current.to_s)
    if current == rev_number.to_i
      return true, current
    end
    return false, current
  end
  
  def self.get_table_names(rev_number)
    ars = find_by_sql(["SELECT table_name FROM master_revisions where id > ?", rev_number])
    table_names = []
    unless ars.blank?
      table_names = ars.collect{|ar| ar.table_name}.uniq
    end
    logger.debug('table_names:'+table_names.inspect)
    return table_names
  end
end
