Improve error handling for Xero linking

This commit is contained in:
Rene Vergara 2022-09-08 10:36:55 -05:00
parent 26b14246e1
commit ec4fcd3fc8
Signed by: pitmutt
GPG key ID: 65122AD495A7F5B2
2 changed files with 9 additions and 4 deletions

View file

@ -356,9 +356,13 @@ getTenantId pipe dbName t = do
setRequestMethod "GET" defaultRequest
res <- httpJSON req
let tenants = getResponseBody (res :: Response [XeroTenant])
--print tenants
_ <- access pipe master dbName $ setTenant (t_address t) (head tenants)
print tenants
if not (null tenants)
then do
_ <-
access pipe master dbName $ setTenant (t_address t) (head tenants)
return ()
else error "Couldn't find tenant ID"
_ -> error "Incorrect type for authorization_event_id"
-- | Update an Owner with XeroTenant id

View file

@ -548,7 +548,8 @@ routes pipe config = do
Nothing -> status noContent204
Just c -> do
res <-
liftIO $ requestXeroToken pipe (c_dbName config) c code address
liftAndCatchIO $
requestXeroToken pipe (c_dbName config) c code address
if res
then status ok200
else status noContent204