camino-school / lanttern

Lanttern project repo
MIT License
1 stars 1 forks source link

final grades calculation #225

Closed endoooo closed 2 weeks ago

endoooo commented 1 month ago

Lanttern already "knows" how to calculate a sub cycle (e.g. a quarter) grade based on its composition. now we need to implement the end of full cycle grade calculation - basically the average of the sub cycles

endoooo commented 3 weeks ago

the StudentGradeReportFinalEntry will be calculated based on each sub cycle entry normalized value. one thing that we need to pay attention to is that, right now, the composition_normalized_value field is (as the name implies) linked to the composition calculation — one issue is that teachers can change the entry ordinal value manually, making the composition_normalized_value out of sync with what is being displayed.

endoooo commented 2 weeks ago

we solved the manual changes issue it by decoupling the normalized value used for parent cycle (final) grade calculation (the new normalized_value field) from the calculated normalized value (the existing composition_normalized_value).

it's not perfect, but when the user edit the level manually the normalized value field is displayed with a message that explains the consequence of adjusting the level without adjusting the underlying normalized value, giving the user a chance to adjust the normalized value used to calculate final grades.