chore(audit): audit auto submission corrector assignment + refactor
This commit is contained in:
parent
50915a6296
commit
9136d9a352
@ -48,17 +48,13 @@ data Transaction
|
|||||||
, transactionUser :: UserId
|
, transactionUser :: UserId
|
||||||
, transactionCourseApplication :: CourseApplicationId
|
, transactionCourseApplication :: CourseApplicationId
|
||||||
}
|
}
|
||||||
| TransactionSubmissionsCorrectorAssigned
|
| TransactionSubmissionCorrectorAssigned
|
||||||
{ transactionSubmissions :: [SubmissionId]
|
|
||||||
, transactionUser :: UserId
|
|
||||||
}
|
|
||||||
| TransactionSubmissionsCorrectionsDeleted
|
|
||||||
{ transactionSubmissions :: [SubmissionId]
|
|
||||||
}
|
|
||||||
| TransactionSubmissionCorrectorUpdated
|
|
||||||
{ transactionSubmission :: SubmissionId
|
{ transactionSubmission :: SubmissionId
|
||||||
, transactionMbUser :: Maybe UserId
|
, transactionMbUser :: Maybe UserId
|
||||||
}
|
}
|
||||||
|
| TransactionSubmissionCorrectionDeleted
|
||||||
|
{ transactionSubmission :: SubmissionId
|
||||||
|
}
|
||||||
deriving (Eq, Ord, Read, Show, Generic, Typeable)
|
deriving (Eq, Ord, Read, Show, Generic, Typeable)
|
||||||
|
|
||||||
deriveJSON defaultOptions
|
deriveJSON defaultOptions
|
||||||
|
|||||||
@ -465,7 +465,7 @@ correctionsR whereClause displayColumns dbtFilterUI psValidator actions = do
|
|||||||
, SubmissionRatingAssigned =. Just now -- save, since only applies to unassigned
|
, SubmissionRatingAssigned =. Just now -- save, since only applies to unassigned
|
||||||
]
|
]
|
||||||
addMessageI Success $ MsgUpdatedAssignedCorrectorSingle num
|
addMessageI Success $ MsgUpdatedAssignedCorrectorSingle num
|
||||||
audit $ TransactionSubmissionsCorrectorAssigned sIds uid
|
mapM_ (\sId -> audit $ TransactionSubmissionCorrectorAssigned sId $ Just uid) sIds
|
||||||
(E.Value selfCorrectors:_) <- E.select . E.from $ \(submission `E.InnerJoin` subuser) -> do
|
(E.Value selfCorrectors:_) <- E.select . E.from $ \(submission `E.InnerJoin` subuser) -> do
|
||||||
E.on $ submission E.^. SubmissionId E.==. subuser E.^. SubmissionUserSubmission
|
E.on $ submission E.^. SubmissionId E.==. subuser E.^. SubmissionUserSubmission
|
||||||
E.where_ $ submission E.^. SubmissionId `E.in_` E.valList subs
|
E.where_ $ submission E.^. SubmissionId `E.in_` E.valList subs
|
||||||
@ -484,7 +484,7 @@ correctionsR whereClause displayColumns dbtFilterUI psValidator actions = do
|
|||||||
-- , SubmissionRatingComment =. Nothing -- Kept for easy reassignment by 2nd corrector
|
-- , SubmissionRatingComment =. Nothing -- Kept for easy reassignment by 2nd corrector
|
||||||
]
|
]
|
||||||
addMessageI Success $ MsgRemovedCorrections num
|
addMessageI Success $ MsgRemovedCorrections num
|
||||||
audit $ TransactionSubmissionsCorrectionsDeleted subs
|
mapM_ (audit . TransactionSubmissionCorrectionDeleted) subs
|
||||||
redirect currentRoute
|
redirect currentRoute
|
||||||
FormSuccess (CorrAutoSetCorrectorData shid, subs') -> do
|
FormSuccess (CorrAutoSetCorrectorData shid, subs') -> do
|
||||||
subs <- mapM decrypt $ Set.toList subs'
|
subs <- mapM decrypt $ Set.toList subs'
|
||||||
|
|||||||
@ -622,7 +622,7 @@ postSubAssignR tid ssh csh shn cID = do
|
|||||||
, SubmissionRatingAssigned =. (now <$ mbUserId)
|
, SubmissionRatingAssigned =. (now <$ mbUserId)
|
||||||
]
|
]
|
||||||
addMessageI Success MsgCorrectorUpdated
|
addMessageI Success MsgCorrectorUpdated
|
||||||
audit $ TransactionSubmissionCorrectorUpdated sId mbUserId
|
audit $ TransactionSubmissionCorrectorAssigned sId mbUserId
|
||||||
redirect actionUrl
|
redirect actionUrl
|
||||||
let corrForm = wrapForm' BtnSave corrForm' def
|
let corrForm = wrapForm' BtnSave corrForm' def
|
||||||
{ formAction = Just $ SomeRoute actionUrl
|
{ formAction = Just $ SomeRoute actionUrl
|
||||||
|
|||||||
@ -77,10 +77,11 @@ writeSubmissionPlan :: Map SubmissionId (Maybe UserId)
|
|||||||
writeSubmissionPlan newSubmissionData = do
|
writeSubmissionPlan newSubmissionData = do
|
||||||
now <- liftIO getCurrentTime
|
now <- liftIO getCurrentTime
|
||||||
execWriterT . forM_ (Map.toList newSubmissionData) $ \(subId, mCorrector) -> case mCorrector of
|
execWriterT . forM_ (Map.toList newSubmissionData) $ \(subId, mCorrector) -> case mCorrector of
|
||||||
Just corrector -> do
|
Just _ -> do
|
||||||
lift $ update subId [ SubmissionRatingBy =. Just corrector
|
lift $ update subId [ SubmissionRatingBy =. mCorrector
|
||||||
, SubmissionRatingAssigned =. Just now
|
, SubmissionRatingAssigned =. Just now
|
||||||
]
|
]
|
||||||
|
lift $ audit $ TransactionSubmissionCorrectorAssigned subId mCorrector
|
||||||
tell (Set.singleton subId, mempty)
|
tell (Set.singleton subId, mempty)
|
||||||
Nothing ->
|
Nothing ->
|
||||||
tell (mempty, Set.singleton subId)
|
tell (mempty, Set.singleton subId)
|
||||||
|
|||||||
Reference in New Issue
Block a user