From 13a648de186c57eb7eb97bdc2bb6d8c2f2b0d846 Mon Sep 17 00:00:00 2001 From: Steffen Date: Thu, 25 Apr 2024 18:14:53 +0200 Subject: [PATCH] refactor(avs): first steps towards #69 --- src/Handler/Admin/Avs.hs | 49 ++++++++++++++++++++++++++++++++++++---- 1 file changed, 45 insertions(+), 4 deletions(-) diff --git a/src/Handler/Admin/Avs.hs b/src/Handler/Admin/Avs.hs index 16f3d25eb..6971e7463 100644 --- a/src/Handler/Admin/Avs.hs +++ b/src/Handler/Admin/Avs.hs @@ -679,17 +679,58 @@ mkLicenceTable apidStatus dbtIdent aLic apids = do getAdminAvsUserR :: CryptoUUIDUser -> Handler Html getAdminAvsUserR uuid = do uid <- decrypt uuid - Entity{entityVal=UserAvs{..}} <- runDB $ getBy404 $ UniqueUserAvsUser uid - let set_apid = Set.singleton $ AvsObjPersonId userAvsPersonId - mbContact <- try $ avsQuery $ AvsQueryContact set_apid - -- mbStatus <- try $ avsQuery $ AvsQueryStatus set_apid + Entity{entityVal=UserAvs{..}} <- runDB $ getBy404 $ UniqueUserAvsUser uid + mbContact <- try $ avsQuery $ AvsQueryContact $ Set.singleton $ AvsObjPersonId userAvsPersonId + -- mbStatus <- try $ avsQuery $ AvsQueryStatus $ Set.singleton userAvsPersonId -- CONTINUE HERE mbDataPerson <- lookupAvsUser userAvsPersonId -- TODO: delete Handler.Utils.Avs.lookupAvsUser if no longer needed let heading = [whamlet|_{MsgAvsPersonNo} #{userAvsNoPerson}|] siteLayout heading $ do setTitle $ toHtml $ show userAvsNoPerson + + let contactWgt = case mbContact of + Left err -> exceptionWgt err + Right (AvsResponseContact adcs) -> do + let cs = mkContactWgt <$> toList adcs + mconcat cs + mkContactWgt :: AvsDataContact -> Widget + mkContactWgt AvsDataContact + { avsContactPersonID = _api -- TODO + , avsContactPersonInfo = AvsPersonInfo {..} + , avsContactFirmInfo = AvsFirmInfo { avsFirmFirm = _fname } -- TODO + } = + let licence :: AvsLicence = toEnum avsInfoRampLicence in -- TODO: show bad numbers too? + [whamlet| +
+
+
+ _{MsgAdminUserSurname} +
+ #{avsInfoLastName} +
+ _{MsgAdminUserFirstName} +
+ #{avsInfoFirstName} + + $maybe bday <- avsInfoDateOfBirth +
+ _{MsgAdminUserBirthday} +
+ ^{formatTimeW SelFormatDate bday} +
+ _{MsgAvsLicence} +
+ _{licence} + |] + [whamlet| +

+ Die Ansicht zeigt ausschließlich kürzlich vom AVS glieferte Daten: +

+ ^{contactWgt} + +

Vorläufige Admin Ansicht AVS Daten. Ansicht zeigt aktuelle Daten.