diff --git a/src/Handler/Utils/Avs.hs b/src/Handler/Utils/Avs.hs index f65841970..ad47f7cdc 100644 --- a/src/Handler/Utils/Avs.hs +++ b/src/Handler/Utils/Avs.hs @@ -392,30 +392,30 @@ upsertAvsUserById api = do $logInfoS "AVS" $ "upsert prestep result: " <> tshow mbuid <> " --- " <> tshow mbapd case (mbuid, mbapd) of ( _ , Nothing ) -> throwM $ AvsUserUnknownByAvs api -- User not found in AVS at all, i.e. no valid card exists yet - (Nothing, Just AvsDataPerson{..}) -> do -- No LDAP User, but found in AVS; create new user + (Nothing, Just AvsDataPerson{avsPersonFirstName= Text.strip -> avsFirstName, avsPersonLastName= Text.strip -> avsSurname, ..}) -> do -- No LDAP User, but found in AVS; create new user let firmAddress = guessLicenceAddress avsPersonPersonCards mbCompany = firmAddress ^? _Just . _1 . _Just userFirmAddr= plaintextToStoredMarkup . mergeCompanyAddress <$> firmAddress pinCard = Set.lookupMax avsPersonPersonCards userPin = personCard2pin <$> pinCard fakeIdent = CI.mk $ "AVSID:" <> tshow api - fakeNo = CI.mk $ "AVSNO:" <> tshow avsPersonPersonNo + fakeNo = CI.mk $ "AVSNO:" <> tshow avsPersonPersonNo newUsr = AddUserData - { audTitle = Nothing - , audFirstName = avsPersonFirstName - , audSurname = avsPersonLastName - , audDisplayName = avsPersonFirstName <> " " <> avsPersonLastName - , audDisplayEmail = "" -- Email is unknown in this version of the avs query, to be updated later (FUTURE TODO) - , audMatriculation = Nothing - , audSex = Nothing - , audBirthday = Nothing - , audMobile = Nothing - , audTelephone = Nothing + { audTitle = Nothing + , audFirstName = avsFirstName + , audSurname = avsSurname + , audDisplayName = avsFirstName <> Text.cons ' ' avsSurname + , audDisplayEmail = "" -- Email is unknown in this version of the avs query, to be updated later (FUTURE TODO) + , audMatriculation = Nothing + , audSex = Nothing + , audBirthday = Nothing + , audMobile = Nothing + , audTelephone = Nothing , audFPersonalNumber = avsInternalPersonalNo <$> canonical avsPersonInternalPersonalNo - , audFDepartment = Nothing - , audPostAddress = userFirmAddr - , audPrefersPostal = True - , audPinPassword = userPin + , audFDepartment = Nothing + , audPostAddress = userFirmAddr + , audPrefersPostal = True + , audPinPassword = userPin , audEmail = fakeNo -- Email is unknown in this version of the avs query, to be updated later (FUTURE TODO) , audIdent = fakeIdent -- use AvsPersonId instead , audAuth = maybe AuthKindNoLogin (const AuthKindLDAP) avsPersonInternalPersonalNo -- FUTURE TODO: if email is known, use AuthKinfPWHash for email invite, if no internal personnel number is known diff --git a/src/Model/Types/Avs.hs b/src/Model/Types/Avs.hs index 7e70ccb9c..96d39bdc4 100644 --- a/src/Model/Types/Avs.hs +++ b/src/Model/Types/Avs.hs @@ -398,8 +398,8 @@ deriveJSON defaultOptions } ''AvsStatusPerson data AvsDataPerson = AvsDataPerson - { avsPersonFirstName :: Text - , avsPersonLastName :: Text + { avsPersonFirstName :: Text -- WARNING: name stored as is, but AVS does contain weird whitespaces + , avsPersonLastName :: Text -- WARNING: name stored as is, but AVS does contain weird whitespaces , avsPersonInternalPersonalNo :: Maybe AvsInternalPersonalNo -- Fraport Personalnummer , avsPersonPersonNo :: Int -- AVS Personennummer, Bedeutung ist unklar , avsPersonPersonID :: AvsPersonId -- Eindeutige PersonenID, wichtig für die Schnittstelle!