fix(exams): don't show manual bonus as inconsistent
This commit is contained in:
parent
8749d1d6c0
commit
fb54c8445a
@ -165,7 +165,7 @@ resultCourseNote = _dbrOutput . _10 . _Just
|
||||
|
||||
|
||||
resultAutomaticExamBonus :: Exam -> Map UserId SheetTypeSummary -> Fold ExamUserTableData Points
|
||||
resultAutomaticExamBonus exam examBonus' = resultUser . _entityKey . folding (\uid -> examResultBonus <$> examBonusRule exam <*> pure (examBonusPossible uid examBonus') <*> pure (examBonusAchieved uid examBonus'))
|
||||
resultAutomaticExamBonus exam examBonus' = resultUser . _entityKey . folding (\uid -> join $ examResultBonus <$> examBonusRule exam <*> pure (examBonusPossible uid examBonus') <*> pure (examBonusAchieved uid examBonus'))
|
||||
|
||||
resultAutomaticExamResult :: Exam -> Map UserId SheetTypeSummary -> Fold ExamUserTableData ExamResultPassedGrade
|
||||
resultAutomaticExamResult exam@Exam{..} examBonus' = folding . runReader $ do
|
||||
|
||||
@ -144,12 +144,12 @@ getRelevantSheetsUpTo cid uid mCutoff
|
||||
examResultBonus :: ExamBonusRule
|
||||
-> SheetGradeSummary -- ^ `examBonusPossible`
|
||||
-> SheetGradeSummary -- ^ `examBonusAchieved`
|
||||
-> Points
|
||||
-> Maybe Points
|
||||
examResultBonus bonusRule bonusPossible bonusAchieved = case bonusRule of
|
||||
ExamBonusManual{}
|
||||
-> 0
|
||||
-> Nothing
|
||||
ExamBonusPoints{..}
|
||||
-> roundToPoints bonusRound $ toRational bonusMaxPoints * bonusProp
|
||||
-> Just . roundToPoints bonusRound $ toRational bonusMaxPoints * bonusProp
|
||||
where
|
||||
bonusProp :: Rational
|
||||
bonusProp
|
||||
@ -228,7 +228,7 @@ examBonusGrade :: ( MonoFoldable sheets
|
||||
examBonusGrade exam@Exam{..} bonusInp = (mBonus, ) . examGrade exam mBonus
|
||||
where mBonus = asum
|
||||
[ bonusInp ^? _Left
|
||||
, examResultBonus <$> examBonusRule <*> bonusPossible <*> bonusAchieved
|
||||
, join $ examResultBonus <$> examBonusRule <*> bonusPossible <*> bonusAchieved
|
||||
]
|
||||
sheetSummary = flip (previews _Right) bonusInp . ofoldMap $ uncurry sheetTypeSum
|
||||
bonusPossible = normalSummary <$> sheetSummary
|
||||
|
||||
Loading…
Reference in New Issue
Block a user