From cdf6c181a946031d5cdb416155d170e7db5ef525 Mon Sep 17 00:00:00 2001 From: Steffen Jost Date: Fri, 16 Dec 2022 18:43:34 +0100 Subject: [PATCH] chore(avs): add end day for problem resolve in FRADrive --- .../uniworx/categories/avs/de-de-formal.msg | 4 +-- messages/uniworx/categories/avs/en-eu.msg | 4 +-- src/Handler/Admin/Avs.hs | 26 +++++++++---------- 3 files changed, 17 insertions(+), 17 deletions(-) diff --git a/messages/uniworx/categories/avs/de-de-formal.msg b/messages/uniworx/categories/avs/de-de-formal.msg index 62a4d8622..1756690fd 100644 --- a/messages/uniworx/categories/avs/de-de-formal.msg +++ b/messages/uniworx/categories/avs/de-de-formal.msg @@ -20,5 +20,5 @@ AvsImportIDs n@Int m@Int: AVS Persondendaten importiert: #{show n}/#{show m} RevokeUnknownLicencesOk: AVS Fahrberechtigungen unbekannter Fahrer wurden gesperrt RevokeUnknownLicencesFail: Nicht alle AVS Fahrberechtigungen unbekannter Fahrer konnten entzogen werden, siehe Log für Details AvsCommunicationError: AVS Schnittstelle lieferte einen unerwarteten Fehler. -LicenseTableChangeAvs: Im AVS ändern -LicenseTableChangeFDrive: In FRADrive ändern \ No newline at end of file +LicenceTableChangeAvs: Im AVS ändern +LicenceTableChangeFDrive: In FRADrive ändern \ No newline at end of file diff --git a/messages/uniworx/categories/avs/en-eu.msg b/messages/uniworx/categories/avs/en-eu.msg index 4731dec69..9d6c0643c 100644 --- a/messages/uniworx/categories/avs/en-eu.msg +++ b/messages/uniworx/categories/avs/en-eu.msg @@ -20,5 +20,5 @@ AvsImportIDs n m: AVS person daten importet: #{show n}/#{show m} RevokeUnknownLicencesOk: AVS driving licences of unknown drivers revoked RevokeUnknownLicencesFail: Not all AVS driving licences of unknown drivers could be revoked, see log for details AvsCommunicationError: AVS interface returned an unexpected error. -LicenseTableChangeAvs: Change in AVS -LicenseTableChangeFDrive: Change within FRADrive \ No newline at end of file +LicenceTableChangeAvs: Change in AVS +LicenceTableChangeFDrive: Change within FRADrive \ No newline at end of file diff --git a/src/Handler/Admin/Avs.hs b/src/Handler/Admin/Avs.hs index 9b0dc2fbe..3aa1542d5 100644 --- a/src/Handler/Admin/Avs.hs +++ b/src/Handler/Admin/Avs.hs @@ -285,8 +285,8 @@ instance Button UniWorX ButtonAvsSynch where btnClasses BtnRevokeAvsLicences = [BCIsButton, BCDanger] -data LicenceTableAction = LicenseTableChangeAvs - | LicenseTableChangeFDrive +data LicenceTableAction = LicenceTableChangeAvs + | LicenceTableChangeFDrive deriving (Eq, Ord, Enum, Bounded, Read, Show, Generic, Typeable) instance Universe LicenceTableAction @@ -294,9 +294,9 @@ instance Finite LicenceTableAction nullaryPathPiece ''LicenceTableAction $ camelToPathPiece' 2 embedRenderMessage ''UniWorX ''LicenceTableAction id -data LicenceTableActionData = LicenseTableChangeAvsData - | LicenseTableChangeFDriveData - deriving (Eq, Ord, Enum, Bounded, Read, Show, Generic, Typeable) +data LicenceTableActionData = LicenceTableChangeAvsData + | LicenceTableChangeFDriveData { licenceTableChangeFDriveEnd :: Day } + deriving (Eq, Ord, Read, Show, Generic, Typeable) postProblemAvsSynchR, getProblemAvsSynchR :: Handler Html @@ -344,9 +344,9 @@ getProblemAvsSynchR = do >> redirect ProblemAvsSynchR ((_,tb0),(_,tb1),(_,tb2)) <- runDB $ (,,) - <$> mkLicenceTable AvsLicenceVorfeld setTo0 - <*> mkLicenceTable AvsLicenceVorfeld setTo1 - <*> mkLicenceTable AvsLicenceRollfeld setTo2 + <$> mkLicenceTable AvsLicenceVorfeld setTo0 (Just LicenceTableChangeAvs) + <*> mkLicenceTable AvsLicenceVorfeld setTo1 (Just LicenceTableChangeAvs) + <*> mkLicenceTable AvsLicenceRollfeld setTo2 (Just LicenceTableChangeAvs) siteLayoutMsg MsgAvsTitleLicenceSynch $ do setTitleI MsgAvsTitleLicenceSynch @@ -387,8 +387,8 @@ instance HasUser LicenceTableData where hasUser = resultUser . _entityVal -mkLicenceTable :: AvsLicence -> Set AvsPersonId -> DB (FormResult (LicenceTableActionData, Set UserId), Widget) -mkLicenceTable aLic apids = do +mkLicenceTable :: AvsLicence -> Set AvsPersonId -> Maybe LicenceTableAction -> DB (FormResult (LicenceTableActionData, Set UserId), Widget) +mkLicenceTable aLic apids defAct = do currentRoute <- fromMaybe (error "mkLicenceTable called from 404-handler") <$> liftHandler getCurrentRoute now <- liftIO getCurrentTime let nowaday = utctDay now @@ -429,8 +429,8 @@ mkLicenceTable aLic apids = do ] acts :: Map LicenceTableAction (AForm Handler LicenceTableActionData) acts = mconcat - [ singletonMap LicenseTableChangeAvs $ pure LicenseTableChangeAvsData - , singletonMap LicenseTableChangeFDrive $ pure LicenseTableChangeFDriveData + [ singletonMap LicenceTableChangeAvs $ pure LicenceTableChangeAvsData + , singletonMap LicenceTableChangeFDrive (LicenceTableChangeFDriveData <$> apopt dayField (fslI MsgLmsQualificationValidUntil) Nothing) ] dbtParams = DBParamsForm @@ -441,7 +441,7 @@ mkLicenceTable aLic apids = do , dbParamsFormAdditional = renderAForm FormStandard $ (, mempty) . First . Just - <$> multiActionA acts (fslI MsgTableAction) Nothing + <$> multiActionA acts (fslI MsgTableAction) defAct , dbParamsFormEvaluate = liftHandler . runFormPost , dbParamsFormResult = id , dbParamsFormIdent = def