123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165 |
- <table class="table-noten">
- {#each faechergruppen() as [gruppen_id, gruppenFaecher]}
- <tr>
- <td class="fachgruppe-margin">
- <b>{gruppenbezeichnung(gruppen_id)}</b>
- </td>
- </tr>
- {#each lernbereicheUndFaecher(gruppenFaecher) as [lernbereich, faecher]}
- {#if lernbereich != faecher[0].fach.Zeugnisbez}
- <tr><td colspan="2" class="{lernfeld ? '' : 'fach-bezeichnung'}">{lernbereich}</td></tr>
- {/if}
- {#each faecher as f (f.ID)}
- {#if f.fach.AufZeugnis === '+'}
- <tr>
- <td class="{lernfeld ? '' : 'fach-bezeichnung'} {lernbereich != faecher[0].fach.Zeugnisbez ? 'lernfeld-lernbereich' : ''}">
- {#if f.fach.Zeugnisbez.includes("Projekt")}
-
- {f.Lernentw}
- {:else}
-
- {f.fach.ZeugnisBez || f.fach.Zeugnisbez}
-
- {#if ger && f.fach.IstSprache === '+'}
- {fremdsprache(f, fachklasse)}<sup>1</sup>
- {/if}
-
- {#if fhrSternchen && f.fach.GewichtungFHR > 0}
- <sup>*</sup>
- {/if}
- {/if}
- </td>
-
-
- {#if (f.fach.IstSprache==='-') && ((f.NoteAbschluss && f.NoteAbschluss.startsWith('E')) || (f.NotenKrz && f.NotenKrz.startsWith('E')))}
- <td class="td-fach-note"><span class="e-note">{note(f.NoteAbschluss) || note(f.NotenKrz)}</span></td>
- {:else}
- <td class="td-fach-note"><span>{note(f.NoteAbschluss) || note(f.NotenKrz) || '–––––'}</span></td>
- {/if}
- </tr>
- {/if}
- {/each}
- {/each}
- <tr>
- </tr>
- {/each}
- </table>
- <script>
- import { gruppenIds } from './gruppenIDs'
- import { note, fremdsprache, groupBy } from '../helfer'
- export let lernfeld
- export let ger = false
- export let faechergruppenIds = []
- export let noten, fachGliederungen, fachklasse
- export let fhrSternchen, gruppenbezeichnungNeu
- export let berufsbezogenZuerst = true
- Object.assign(gruppenIds, gruppenbezeichnungNeu)
- const faechergruppen = () => {
-
-
-
- if (fachGliederungen && fachGliederungen.length > 0) console.log('Es wurden Fachgliederungswerte gesetzt: ', fachGliederungen)
-
-
- const faecher = fachGliederungen
- ? noten.map(f => {return {...f, fach: Object.assign(f.fach, fachGliederungen.find(fg => fg.Fach_ID === f.Fach_ID))}})
- : noten
-
- const faecherBereinigt = faechergruppenIds.length === 0
- ? faecher
- : faecher.filter(f => faechergruppenIds.find(id => f.fach.Fachgruppe_ID === id))
-
-
- const sortiert = faecherBereinigt.sort((a, b) => a.fach.SortierungS2 < b.fach.SortierungS2 ? 1 : -1)
- let gruppiert = groupBy(sortiert, 'fach.Fachgruppe_ID')
-
-
- if (berufsbezogenZuerst && gruppiert.get(20)) {
- gruppiert.set(0, gruppiert.get(20))
- gruppiert.delete(20)
- gruppenIds[0] = gruppenIds[20]
- }
- return [...gruppiert.entries()].sort((a,b) => a[0] - b[0])
- }
- const gruppenbezeichnung = gruppe => gruppenIds[gruppe]
- const lernbereicheUndFaecher = gruppenFaecher => [...groupBy(gruppenFaecher, 'fach.Bezeichnung').entries()].reverse()
- </script>
- <style>
- .table-noten {
- width: 100%;
- border: none;
- border-collapse: collapse;
- margin-bottom: 1rem;
- }
- .fach-bezeichnung {
- padding-left: 10mm;
- }
- .td-fach-note {
- padding-bottom: .2rem;
- padding-top: .2rem;
- width: 12rem;
- }
- .td-fach-note span {
- background-color: #dcdcdc !important;
- text-align: center;
- width: 10rem;
- display: block;
- margin: 0 auto;
- }
- .td-fach-note span.e-note {
- background-color: white !important;
- width: 17em;
- margin: 0;
- padding: 0;
- }
- .fachgruppe-margin {
- padding-top: 0.3rem;
- }
- .lernfeld-lernbereich {
- padding-left: 2rem;
- padding-bottom: 0;
- }
- .lernbereich {
- padding-left: 20mm;
- }
- </style>
|