Skip to content

Commit

Permalink
Remove MailtoAnchor component and related email functionality; update…
Browse files Browse the repository at this point in the history
… Residence component to handle BagData directly
  • Loading branch information
remyvdwereld committed Nov 25, 2024
1 parent e2985ab commit 7aa38bc
Show file tree
Hide file tree
Showing 4 changed files with 31 additions and 155 deletions.

This file was deleted.

Original file line number Diff line number Diff line change
@@ -1,98 +1,66 @@
import React, { FC } from "react"

import { useCase } from "app/state/rest"
import { BagData, BagDataError } from "app/features/types"
import MailtoAnchor from "app/features/cases/components/molecules/MailtoAnchor/MailtoAnchor"

import { getAddress, getBagId } from "../utils"
import CaseDetailSection from "../CaseDetailSection"
import Owner from "./Owner"


type Props = {
caseId: string
}

const Residence: FC<Props> = ({ caseId }) => {
const Residence: React.FC<Props> = ({ caseId }) => {
const { data: caseData } = useCase(caseId)

if (!caseData) {
return null
}

const hasBagData = (caseData.bag_data as BagDataError).error === undefined
const bagData = caseData.bag_data as BagData
const bagData = (hasBagData ? caseData.bag_data : {}) as BagData
const isWoonboot = Boolean(hasBagData && bagData?.ligplaatsIdentificatie)
const isWoning = !isWoonboot
const woningTitle = isWoning ? "Woning" : "Ligplaats"

console.log("bagData", bagData?.identificatie)
// Woning
const gebruiksdoel = hasBagData ? bagData.gebruiksdoelOmschrijvingen : undefined
const woningBestemming = gebruiksdoel && gebruiksdoel.length ? gebruiksdoel.join(", ") : undefined
const woningGebruik = hasBagData && bagData.verblijfsobjectFeitelijkGebruikOmschrijving ? bagData.verblijfsobjectFeitelijkGebruikOmschrijving : undefined
const woningBouwlagen = hasBagData && bagData.verblijfsobjectAantalBouwlagen ? bagData.verblijfsobjectAantalBouwlagen : undefined
const woningEtage = hasBagData && bagData.verblijfsobjectVerdiepingToegang != null ? bagData.verblijfsobjectVerdiepingToegang : undefined
const woningKamers = hasBagData && bagData.verblijfsobjectAantalKamers ? bagData.verblijfsobjectAantalKamers : 0
const woningOppervlak = hasBagData && bagData.verblijfsobjectOppervlakte && bagData.verblijfsobjectOppervlakte > 1 ? bagData.verblijfsobjectOppervlakte : 0
const woningBagId = getBagId(caseData!)

// Woonboot
const woonbootLigplaatsIndicatie = hasBagData && bagData.ligplaatsIdentificatie
const woonbootStatus = hasBagData && bagData.ligplaatsStatusOmschrijving ? bagData.ligplaatsStatusOmschrijving : undefined

// General
const address = getAddress(caseData.address)
const postalCode = caseData.address.postal_code

// Terugmeld email
const mailtoAnchor = (
<MailtoAnchor
address={ address }
postalCode={ postalCode }
gebruiksdoel={ woningBestemming }
gebruik={ woningGebruik }
aantalBouwlagen={ woningBouwlagen }
etage={ woningEtage }
aantalKamers={ woningKamers }
oppervlak={ woningOppervlak }
isWoonboot={ isWoonboot }
woonbootStatus={ woonbootStatus }
/>
)

const woningBestemming = bagData?.gebruiksdoelOmschrijvingen && bagData?.gebruiksdoelOmschrijvingen.length ? bagData?.gebruiksdoelOmschrijvingen.join(", ") : undefined
const wozSoortObjectOmschrijving = bagData?.wozSoortObjectOmschrijving
const status = bagData?.verblijfsobjectStatusOmschrijving
const toegang = bagData?.toegangOmschrijvingen && bagData?.toegangOmschrijvingen.length ? bagData.toegangOmschrijvingen.join(", ") : undefined
const verdiepingToegang = bagData?.verblijfsobjectVerdiepingToegang
const aantalKamers = bagData?.verblijfsobjectAantalKamers
const oppervlakte = bagData?.verblijfsobjectOppervlakte
const aantalBouwlagen = bagData?.verblijfsobjectAantalBouwlagen


const woningFields = [
// [ "Databron", "BRK" ],
// <Owner caseData={ caseData } />,
[ "Databron", "BAG" ],
[ "Gebruiksdoel", woningBestemming ],
[ "Soort object (feitelijk gebruik)", woningGebruik ],
[ "Aantal bouwlagen", woningBouwlagen !== undefined ? woningBouwlagen : "–" ],
[ "Verdieping toegang", woningEtage !== undefined ? woningEtage : "–" ],
[ "Aantal kamers", woningKamers > 0 ? woningKamers : "–" ],
[ "Woonoppervlak", woningOppervlak > 0 ? woningOppervlak + " m²" : "–" ],
mailtoAnchor
[ "Soort object (feitelijk gebruik) volgens de WOZ", wozSoortObjectOmschrijving ],
[ "Status", status ],
[ "Woonoppervlak", oppervlakte ? `${ oppervlakte } m²` : "–" ],
[ "Aantal kamers", aantalKamers ?? "–" ],
[ "Verdieping toegang", verdiepingToegang !== undefined ? verdiepingToegang : "–" ],
[ "Toegang", toegang ],
[ "Aantal bouwlagen", aantalBouwlagen !== undefined ? aantalBouwlagen : "–" ]
]

// Woonboot
const woonbootFields = [
[ "Status", woonbootStatus || "–" ],
<Owner caseData={ caseData } />,
mailtoAnchor
[ "Status", bagData?.ligplaatsStatusOmschrijving || "–" ],
<Owner caseData={ caseData } />
]

const woningData = isWoning ? woningFields : woonbootFields

// Footer
const woningUrlBagType = isWoning ? "verblijfsobject" : "ligplaats"
const woningUrlBagId = isWoning ? woningBagId : woonbootLigplaatsIndicatie
const woningUrl = `https://data.amsterdam.nl/data/bag/${ woningUrlBagType }/${ woningUrlBagId }/`
const woningFooter = woningUrlBagId ? (
{ link: woningUrl, title: "Bekijk op Data en informatie" }
) : undefined
const woningUrl = `https://data.amsterdam.nl/adressen/${ bagData?.identificatie }/`

return (
<CaseDetailSection
title={ woningTitle }
data={ woningData }
footer={ woningFooter }
data={ isWoning ? woningFields : woonbootFields }
footer={ { link: woningUrl, title: "Bekijk op Data en informatie" } }
/>
)
}
Expand Down
51 changes: 0 additions & 51 deletions src/app/features/cases/email/basisInformatie.ts

This file was deleted.

4 changes: 4 additions & 0 deletions src/app/features/types.ts
Original file line number Diff line number Diff line change
Expand Up @@ -14,14 +14,18 @@ export type FraudPrediction = {
export type BagData = {
gebruiksdoelOmschrijvingen: string[]
indicatie_geconstateerd?: boolean
identificatie: string
ligplaatsIdentificatie?: string
ligplaatsStatusOmschrijving?: string
toegangOmschrijvingen?: string[]
verblijfsobjectAantalBouwlagen: number | null
verblijfsobjectAantalKamers: number | null
verblijfsobjectFeitelijkGebruikOmschrijving: string | null
verblijfsobjectIdentificatie: string | null
verblijfsobjectOppervlakte: number | null
verblijfsobjectVerdiepingToegang: number | null
verblijfsobjectStatusOmschrijving: string | null
wozSoortObjectOmschrijving?: string | null
}

export type BagDataError = {
Expand Down

0 comments on commit 7aa38bc

Please sign in to comment.