Explorar o código

abileistungen und daten assoziieren

hmt %!s(int64=9) %!d(string=hai) anos
pai
achega
1efe364833
Modificáronse 2 ficheiros con 32 adicións e 0 borrados
  1. 30 0
      lib/schild.rb
  2. 2 0
      specs/schueler_spec.rb

+ 30 - 0
lib/schild.rb

@@ -100,6 +100,8 @@ module Schild
     one_to_many :abschnitte, :class => :Abschnitt
     one_to_many :abschnitte, :class => :Abschnitt
     one_to_one :bk_abschluss, :class => :BKAbschluss
     one_to_one :bk_abschluss, :class => :BKAbschluss
     one_to_many :bk_abschluss_leistungen, :class => :BKAbschlussFaecher
     one_to_many :bk_abschluss_leistungen, :class => :BKAbschlussFaecher
+    one_to_one :abi_abschluss, :class => :AbiAbschluss
+    one_to_many :abi_abschluss_leistungen, :class => :AbiAbschlussFaecher
     one_to_many :vermerke, :class => :Vermerke
     one_to_many :vermerke, :class => :Vermerke
   end
   end
 
 
@@ -128,7 +130,9 @@ module Schild
 
 
   # Assoziation für Fächer
   # Assoziation für Fächer
   class Faecher < Sequel::Model(:eigeneschule_faecher)
   class Faecher < Sequel::Model(:eigeneschule_faecher)
+    #siehe abi_...
     one_to_one :noten
     one_to_one :noten
+    one_to_many :abi_abschluss_leistungen
     one_to_one :sprachenfolge, :class => :Sprachenfolge, :key => :Fach_ID
     one_to_one :sprachenfolge, :class => :Sprachenfolge, :key => :Fach_ID
   end
   end
 
 
@@ -142,6 +146,17 @@ module Schild
     many_to_one :schueler
     many_to_one :schueler
   end
   end
 
 
+  # Assoziation für Abi-Abschluss des Schülers
+  class AbiAbschluss < Sequel::Model(:schuelerabitur)
+    one_to_one :schueler
+  end
+
+  # Assoziation für die Abifächer des Schülers
+  class AbiAbschlussFaecher < Sequel::Model(:schuelerabifaecher)
+    many_to_one :schueler
+    many_to_one :fach, :class => :Faecher, :key => :Fach_ID
+  end
+
   # Assoziation für die bisher erreichten Sprachniveaus
   # Assoziation für die bisher erreichten Sprachniveaus
   class Sprachenfolge < Sequel::Model(:schuelersprachenfolge)
   class Sprachenfolge < Sequel::Model(:schuelersprachenfolge)
     one_to_one :Faecher
     one_to_one :Faecher
@@ -360,6 +375,21 @@ module SchildErweitert
     end
     end
   end
   end
 
 
+  # Assoziation für Abi-Abschlussdaten
+  class AbiAbschluss < Schild::AbiAbschluss
+    include SchildTypeSaver
+  end
+
+  # Assoziation für die jeweiligen Abi-Prüfungsfächer
+  class AbiAbschlussFaecher < Schild::AbiAbschlussFaecher
+    include SchildTypeSaver
+    include NotenHelfer
+
+    def note(notenart)
+      note_s send(notenart)
+    end
+  end
+
   class Sprachenfolge < Schild::Sprachenfolge
   class Sprachenfolge < Schild::Sprachenfolge
     include SchildTypeSaver
     include SchildTypeSaver
   end
   end

+ 2 - 0
specs/schueler_spec.rb

@@ -115,6 +115,8 @@ describe Schueler do
       # Leider keine Vermerke in der Testdatenbank eingetragen
       # Leider keine Vermerke in der Testdatenbank eingetragen
       @sm.vermerke.first.must_be_instance_of String
       @sm.vermerke.first.must_be_instance_of String
     end
     end
+
+    #schuelerabifaecher kann wegen mangelnder daten nicht getestet werden
   end
   end
 
 
   describe 'gibt die korrekte Anzahl von Schülern über Klasse zurück' do
   describe 'gibt die korrekte Anzahl von Schülern über Klasse zurück' do