Noten.html 2.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990
  1. <table class="table-noten">
  2. {#each faechergruppen as [gruppen_id, gruppenFaecher]}
  3. <tr>
  4. <td class="fachgruppe-margin">
  5. <b>{gruppenbezeichnung(gruppen_id)}</b>
  6. </td>
  7. </tr>
  8. {#each lernbereicheUndFaecher(gruppenFaecher) as [lernbereich, faecher]}
  9. {#if lernbereich != faecher[0].fach.Zeugnisbez}
  10. <tr><td colspan="2" class="fach-bezeichnung">{lernbereich}</td></tr>
  11. {/if}
  12. {#each faecher as f (f.ID)}
  13. <tr>
  14. <td class="fach-bezeichnung {lernbereich != faecher[0].fach.Zeugnisbez ? 'lernfeld-lernbereich' : ''}">
  15. {#if f.fach.Zeugnisbez.includes("Projekt")}
  16. {f.Lernentw}
  17. {:else}
  18. {f.fach.Zeugnisbez}
  19. {/if}
  20. </td>
  21. <td class="td-fach-note"><span>{f.NotenKrz || '–––––'}</span></td>
  22. </tr>
  23. {/each}
  24. {/each}
  25. <tr>
  26. </tr>
  27. {/each}
  28. </table>
  29. <script>
  30. import { gruppenIds } from './gruppenIDs'
  31. const _ = R.lodash
  32. export default {
  33. helpers: {
  34. _,
  35. gruppenbezeichnung: gruppe => gruppenIds[gruppe],
  36. lernbereicheUndFaecher: gruppenFaecher => Object.entries(_.groupBy(gruppenFaecher, f => f.fach.Bezeichnung))
  37. },
  38. computed: {
  39. faechergruppen: ({ noten }) => Object.entries(_.groupBy(_.sortBy(noten, f => f.fach.SortierungS2), f => f.fach.Fachgruppe_ID)),
  40. // Berufsbezogen kommt neuerdings zuerst, dann berufsübergreifend
  41. // wenn aber nur eine Note vermerkt ist, dann normal zurück
  42. faechergruppenUmsortiert: ({ faechergruppen }) => faechergruppen.length > 1
  43. ? [faechergruppen[0], faechergruppen[1]] = [faechergruppen[1], faechergruppen[0]]
  44. : faechergruppen
  45. }
  46. }
  47. </script>
  48. <style>
  49. .table-noten {
  50. width: 100%;
  51. border: none;
  52. border-collapse: collapse;
  53. margin-bottom: 1rem;
  54. }
  55. .fach-bezeichnung {
  56. padding-left: 10mm;
  57. }
  58. .td-fach-note {
  59. padding-bottom: .2rem;
  60. padding-top: .2rem;
  61. width: 12rem;
  62. }
  63. .td-fach-note span {
  64. background-color: #dcdcdc !important;
  65. text-align: center;
  66. width: 10rem;
  67. display: block;
  68. margin: 0 auto;
  69. }
  70. /*.td-fach-note span.e-note {
  71. background-color: white !important;
  72. width: 17rem;
  73. margin: 0;
  74. }*/
  75. .fachgruppe-margin {
  76. padding-top: 0.3rem;
  77. }
  78. .lernfeld-lernbereich {
  79. padding-left: 20mm;
  80. padding-bottom: 0;
  81. }
  82. .lernbereich {
  83. padding-left: 20mm;
  84. }
  85. </style>