# -*- coding: utf-8 -*-
#
# e-PRTR XML-3 Export
# (c) 2009, 2010 Matthias Lüttgert, ENDA GmbH & Co. KG
# (c) 2009 Matthias Lüttgert, Torsten Lüdtke, RISA GmbH
#
# This program is free software; you can redistribute it and/or modify it under
# the terms of the GNU General Public License as published by the Free Software
# Foundation; either version 3 of the License, or (at your option) any later
# version.
#
# This program is distributed in the hope that it will be useful, but WITHOUT ANY
# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
# PARTICULAR PURPOSE. See the GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License along with
# this program; if not, see <http://www.gnu.org/licenses/>.
#
# DEUTSCH:
#
# Dieses Programm ist freie Software. Sie können es unter den Bedingungen der GNU
# General Public License, wie von der Free Software Foundation veröffentlicht,
# weitergeben und/oder modifizieren, entweder gemäß Version 3 der Lizenz oder
# (nach Ihrer Option) jeder späteren Version.
#
# Die Veröffentlichung dieses Programms erfolgt in der Hoffnung, daß es Ihnen von
# Nutzen sein wird, aber OHNE IRGENDEINE GARANTIE, sogar ohne die implizite
# Garantie der MARKTREIFE oder der VERWENDBARKEIT FÜR EINEN BESTIMMTEN
# ZWECK. Details finden Sie in der GNU General Public License.
#
# Sie sollten ein Exemplar der GNU General Public License zusammen mit diesem
# Programm erhalten haben. Falls nicht, siehe <http://www.gnu.org/licenses/>.

require 'active_record'

# Listentabellen
class Bundesland < ActiveRecord::Base
  self.table_name = "l_bundeslaender"
end

class Behoerden < ActiveRecord::Base
  self.table_name = "l_behoerden"
end

class Gemeinde < ActiveRecord::Base
  self.table_name = "l_gemeinden"
end

class Flusseinzugsgebiet < ActiveRecord::Base
  self.table_name = "l_flusseinzugsgebiete"
end

class Stoff < ActiveRecord::Base
  self.table_name = "l_stoffe"
end

class Schadstoffgruppe < ActiveRecord::Base
  self.table_name = "l_schadstoffgruppen"
end

class Bestimmungsverfahren < ActiveRecord::Base
  self.table_name = "l_bestimmungsverfahren"
end

class BestimmungsverfahrenAbfall < ActiveRecord::Base
  self.table_name = "l_bestimmungsverfahren_abfall"
end

class VertraulichkeitsV < ActiveRecord::Base
  self.table_name = "l_schutzgruende"
end

class Bearbeitungsstatus < ActiveRecord::Base
  self.table_name = "l_bearbeitungsstatus"
end

class NaceCode < ActiveRecord::Base
  self.table_name = "l_nace_wirtschaftszweige"
end

class GeoRefSystem < ActiveRecord::Base
  self.table_name = "l_geodaetische_systeme"
end

class Pruefstatus < ActiveRecord::Base
  self.table_name = "l_pruefstati"
end

class PruefstatusV < ActiveRecord::Base
  self.table_name = "l_pruefstati_geheimhaltung"
end

class IVUTaetigkeit < ActiveRecord::Base
  self.table_name = "l_taetigkeiten_anhang1_ivu"
end

class PRTRTaetigkeit < ActiveRecord::Base
  self.table_name = "l_taetigkeiten_anhang1_eprtr"
end

class Bestimmungsmethode < ActiveRecord::Base
  self.table_name = "l_bestimmungsmethoden_ermittlungsarten"
end

class Schwellenwertueberschreitung < ActiveRecord::Base
  self.table_name = "l_schwellenwertueberschreitungsarten"
end

class Medium < ActiveRecord::Base
  self.table_name = "l_kompartimente"
end

class Abfallart < ActiveRecord::Base
  self.table_name = "l_abfalltypen"
end

class IALand < ActiveRecord::Base
  self.table_name = "l_ia"
end

class StaatISOCode < ActiveRecord::Base
  self.table_name = "l_staaten"
end

class VerwertungBeseitigung < ActiveRecord::Base
  self.table_name = "l_disposition_abfall"
end

# Datentabellen
class Betrieb < ActiveRecord::Base
  self.table_name = "p_betrieb"
end

class BetriebVorgaenger < ActiveRecord::Base
  self.table_name = "p_betrieb_vorgaenger"
end

class BetriebGK < ActiveRecord::Base
  self.table_name = "p_betrieb_geheimk"
end

class Taetigkeit < ActiveRecord::Base
  self.table_name = "p_taet"
end

class TaetigkeitGK < ActiveRecord::Base
  self.table_name = "p_taet_geheimk"
end

class Freisetzung < ActiveRecord::Base
  self.table_name = "p_freis"
  has_one :gk, :class_name => "FreisetzungGK", :foreign_key => "p_freis_id"

  def aggregate(freis)
    self.jfracht += freis.jfracht
  end
end

class FreisetzungGK < ActiveRecord::Base
  self.table_name = "p_freis_geheimk"
end

class VAbfall < ActiveRecord::Base
  self.table_name = "p_vabf"
end

class VAbfallGK < ActiveRecord::Base
  self.table_name = "p_vabf_geheimk"
end

class VAbwasser < ActiveRecord::Base
  self.table_name = "p_vabw"
  has_one :gk, :class_name => "VAbwasserGK", :foreign_key => "p_vabw_id"

  def aggregate(vabw)
    self.jfracht += vabw.jfracht
  end
end

class VAbwasserGK < ActiveRecord::Base
  self.table_name = "p_vabw_geheimk"
end

class Translationlist < ActiveRecord::Base
  self.table_name = "translationlist"
end
