Преглед изворни кода

abileistungen und daten assoziieren

hmt пре 9 година
родитељ
комит
1efe364833
2 измењених фајлова са 32 додато и 0 уклоњено
  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_one :bk_abschluss, :class => :BKAbschluss
     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
   end
 
@@ -128,7 +130,9 @@ module Schild
 
   # Assoziation für Fächer
   class Faecher < Sequel::Model(:eigeneschule_faecher)
+    #siehe abi_...
     one_to_one :noten
+    one_to_many :abi_abschluss_leistungen
     one_to_one :sprachenfolge, :class => :Sprachenfolge, :key => :Fach_ID
   end
 
@@ -142,6 +146,17 @@ module Schild
     many_to_one :schueler
   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
   class Sprachenfolge < Sequel::Model(:schuelersprachenfolge)
     one_to_one :Faecher
@@ -360,6 +375,21 @@ module SchildErweitert
     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
     include SchildTypeSaver
   end

+ 2 - 0
specs/schueler_spec.rb

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