Add grades stats
This commit is contained in:
parent
8df2bc1248
commit
f24f08c546
6 changed files with 228 additions and 1 deletions
74
data/opiekun/oceny-statystyki-czastkowe.json
Normal file
74
data/opiekun/oceny-statystyki-czastkowe.json
Normal file
|
@ -0,0 +1,74 @@
|
|||
[
|
||||
{
|
||||
"subject": "Język polski",
|
||||
"grade": "6",
|
||||
"pupilAmount": 0,
|
||||
"classAmount": 0
|
||||
},
|
||||
{
|
||||
"subject": "Język polski",
|
||||
"grade": "5",
|
||||
"pupilAmount": 0,
|
||||
"classAmount": 24
|
||||
},
|
||||
{
|
||||
"subject": "Język polski",
|
||||
"grade": "4",
|
||||
"pupilAmount": 0,
|
||||
"classAmount": 42
|
||||
},
|
||||
{
|
||||
"subject": "Język polski",
|
||||
"grade": "3",
|
||||
"pupilAmount": 2,
|
||||
"classAmount": 63
|
||||
},
|
||||
{
|
||||
"subject": "Język polski",
|
||||
"grade": "2",
|
||||
"pupilAmount": 4,
|
||||
"classAmount": 65
|
||||
},
|
||||
{
|
||||
"subject": "Język polski",
|
||||
"grade": "1",
|
||||
"pupilAmount": 3,
|
||||
"classAmount": 60
|
||||
},
|
||||
{
|
||||
"subject": "Matematyka",
|
||||
"grade": "6",
|
||||
"pupilAmount": 0,
|
||||
"classAmount": 2
|
||||
},
|
||||
{
|
||||
"subject": "Matematyka",
|
||||
"grade": "5",
|
||||
"pupilAmount": 1,
|
||||
"classAmount": 40
|
||||
},
|
||||
{
|
||||
"subject": "Matematyka",
|
||||
"grade": "4",
|
||||
"pupilAmount": 1,
|
||||
"classAmount": 26
|
||||
},
|
||||
{
|
||||
"subject": "Matematyka",
|
||||
"grade": "3",
|
||||
"pupilAmount": 1,
|
||||
"classAmount": 35
|
||||
},
|
||||
{
|
||||
"subject": "Matematyka",
|
||||
"grade": "2",
|
||||
"pupilAmount": 0,
|
||||
"classAmount": 55
|
||||
},
|
||||
{
|
||||
"subject": "Matematyka",
|
||||
"grade": "1",
|
||||
"pupilAmount": 3,
|
||||
"classAmount": 40
|
||||
}
|
||||
]
|
32
data/opiekun/oceny-statystyki-roczne.json
Normal file
32
data/opiekun/oceny-statystyki-roczne.json
Normal file
|
@ -0,0 +1,32 @@
|
|||
[
|
||||
{
|
||||
"subject": "Język angielski",
|
||||
"grade": "celujący",
|
||||
"amount": 0
|
||||
},
|
||||
{
|
||||
"subject": "Język angielski",
|
||||
"grade": "bardzo dobry",
|
||||
"amount": 4
|
||||
},
|
||||
{
|
||||
"subject": "Język angielski",
|
||||
"grade": "dobry",
|
||||
"amount": 8
|
||||
},
|
||||
{
|
||||
"subject": "Język angielski",
|
||||
"grade": "dostateczny",
|
||||
"amount": 9
|
||||
},
|
||||
{
|
||||
"subject": "Język angielski",
|
||||
"grade": "dopuszczający",
|
||||
"amount": 7
|
||||
},
|
||||
{
|
||||
"subject": "Język angielski",
|
||||
"grade": "niedostateczny",
|
||||
"amount": 3
|
||||
}
|
||||
]
|
|
@ -95,6 +95,40 @@ router.get("/Default/123456/Oceny(\.mvc|)/Wszystkie", (req, res) => {
|
|||
});
|
||||
});
|
||||
|
||||
router.get("/Default/123456/Statystyki.mvc/Uczen", (req, res) => {
|
||||
let data;
|
||||
let viewPath;
|
||||
|
||||
if (req.query.rodzajWidoku === '1') {
|
||||
viewPath = "opiekun/oceny-statystyki-czastkowe";
|
||||
data = require("../../data/opiekun/oceny-statystyki-czastkowe").map(item => {
|
||||
return {
|
||||
subject: item.subject,
|
||||
grade: item.grade,
|
||||
pupilAmount: item.pupilAmount,
|
||||
pupilPercent: item.pupilAmount !== 0 ? 25.000003 : 0,
|
||||
classAmount: item.classAmount,
|
||||
classPercent: item.classAmount !== 0 ? 25.000003 : 0
|
||||
};
|
||||
});
|
||||
} else {
|
||||
viewPath = "opiekun/oceny-statystyki-roczne";
|
||||
data = require("../../data/opiekun/oceny-statystyki-roczne").map(item => {
|
||||
return {
|
||||
subject: item.subject,
|
||||
grade: item.grade,
|
||||
amount: item.amount,
|
||||
percent: item.amount !== 0 ? 25.000003 : 0
|
||||
};
|
||||
});
|
||||
}
|
||||
|
||||
res.render(viewPath, {
|
||||
title: "Witryna ucznia i rodzica – Statystyki ucznia",
|
||||
data: data
|
||||
});
|
||||
});
|
||||
|
||||
router.get('/Default/123456/Frekwencja.mvc', (req, res) => {
|
||||
const sumStats = require("../../data/opiekun/frekwencja-statystyki").reduce((prev, current) => {
|
||||
return {
|
||||
|
|
|
@ -34,7 +34,7 @@ prepend content
|
|||
li
|
||||
a(href=opiekunRoot + "/UwagiOsiagniecia.mvc/Wszystkie") Uwagi i osiągnięcia
|
||||
li
|
||||
a(href="#" + opiekunRoot + "/Statystyki.mvc/Uczen") Uczeń na tle klasy
|
||||
a(href=opiekunRoot + "/Statystyki.mvc/Uczen") Uczeń na tle klasy
|
||||
li
|
||||
a(href=opiekunRoot + "/Uczen.mvc/DanePodstawowe") Dane ucznia
|
||||
ul
|
||||
|
|
45
src/views/opiekun/oceny-statystyki-czastkowe.pug
Normal file
45
src/views/opiekun/oceny-statystyki-czastkowe.pug
Normal file
|
@ -0,0 +1,45 @@
|
|||
extends layout
|
||||
|
||||
append extraFooter
|
||||
script
|
||||
| document.querySelector("#ocenyRoczneRadio").addEventListener("change", () => {
|
||||
| location = 'Uczen?rodzajWidoku=2';
|
||||
| });
|
||||
|
||||
append content
|
||||
main.mainContainer
|
||||
h1 Uczeń na tle klasy
|
||||
|
||||
form
|
||||
fieldset.pseudoForm
|
||||
div.floatLeft
|
||||
input#ocenyCzastkoweRadio(type="radio" value="1" name="wyborWidokuZadan" checked="checked")
|
||||
label(for="ocenyCzastkoweRadio") Oceny cząstkowe
|
||||
div.floatLeft
|
||||
input#ocenyRoczneRadio(type="radio" value="2" name="wyborWidokuZadan")
|
||||
label(for="ocenyRoczneRadio") Oceny śródroczne/roczne
|
||||
br
|
||||
fieldset.pseudoForm
|
||||
div.float-left
|
||||
label(for="okresyKlasyfikacyjneDropDownList") Okres klasyfikacyjny:
|
||||
select#okresyKlasyfikacyjneDropDownList(name="okresyKlasyfikacyjneDropDownList")
|
||||
option(selected="selected", value="122") 1
|
||||
option(value="123") 2
|
||||
|
||||
div
|
||||
h2 Rozkład ocen cząstkowych
|
||||
div
|
||||
table
|
||||
thead
|
||||
tr
|
||||
th Przedmiot
|
||||
th Oceny
|
||||
th Uczeń
|
||||
th Klasa
|
||||
tbody
|
||||
each item in data
|
||||
tr
|
||||
td= item.subject
|
||||
td #{item.grade}, #{item.grade}-, #{item.grade}+
|
||||
td Uczeń ocen: #{item.pupilAmount}#{item.pupilPercent ? ", " + item.pupilPercent + "% wszystkich" : "" }
|
||||
td Klasa ocen: #{item.classAmount}#{item.classPercent ? ", " + item.classPercent + "% wszystkich" : "" }
|
42
src/views/opiekun/oceny-statystyki-roczne.pug
Normal file
42
src/views/opiekun/oceny-statystyki-roczne.pug
Normal file
|
@ -0,0 +1,42 @@
|
|||
extends layout
|
||||
|
||||
append extraFooter
|
||||
script
|
||||
| document.querySelector("#ocenyCzastkoweRadio").addEventListener("change", () => {
|
||||
| location = 'Uczen?rodzajWidoku=1';
|
||||
| });
|
||||
|
||||
append content
|
||||
main.mainContainer
|
||||
h1 Uczeń na tle klasy
|
||||
|
||||
form
|
||||
fieldset.pseudoForm
|
||||
div.floatLeft
|
||||
input#ocenyCzastkoweRadio(type="radio" value="1" name="wyborWidokuZadan")
|
||||
label(for="ocenyCzastkoweRadio") Oceny cząstkowe
|
||||
div.floatLeft
|
||||
input#ocenyRoczneRadio(type="radio" value="2" name="wyborWidokuZadan" checked="checked")
|
||||
label(for="ocenyRoczneRadio") Oceny śródroczne/roczne
|
||||
br
|
||||
fieldset.pseudoForm
|
||||
div.float-left
|
||||
label(for="okresyKlasyfikacyjneDropDownList") Okres klasyfikacyjny:
|
||||
select#okresyKlasyfikacyjneDropDownList(name="okresyKlasyfikacyjneDropDownList")
|
||||
option(selected="selected", value="122") 1
|
||||
option(value="123") 2
|
||||
|
||||
h2 Rozkład ocen rocznych i śródrocznych
|
||||
div
|
||||
table
|
||||
thead
|
||||
tr
|
||||
th Przedmiot
|
||||
th Oceny
|
||||
th Klasa
|
||||
tbody
|
||||
each item in data
|
||||
tr
|
||||
td= item.subject
|
||||
td= item.grade
|
||||
td Klasa ocen: #{item.amount}#{item.percent ? ", " + item.percent + "% wszystkich" : "" }
|
Loading…
Reference in a new issue