mirror of
https://git.hiabuto.net/C3MA/CCMA.git
synced 2026-07-01 19:26:53 +02:00
feat: add member address and SEPA data
This commit is contained in:
@@ -28,7 +28,20 @@ class Member:
|
||||
first_name: str
|
||||
last_name: str
|
||||
email: str = ""
|
||||
phone: str = ""
|
||||
birth_date: str = ""
|
||||
street: str = ""
|
||||
address_addition: str = ""
|
||||
postal_code: str = ""
|
||||
city: str = ""
|
||||
country: str = "Deutschland"
|
||||
account_holder: str = ""
|
||||
iban: str = ""
|
||||
bic: str = ""
|
||||
mandate_reference: str = ""
|
||||
mandate_signed_at: str = ""
|
||||
mandate_active: bool = False
|
||||
mandate_revoked_at: str = ""
|
||||
status: str = "application"
|
||||
accepted_at: str = ""
|
||||
membership_started_at: str = ""
|
||||
@@ -54,6 +67,23 @@ class Member:
|
||||
"last_name": self.last_name,
|
||||
"birth_date": self.birth_date,
|
||||
"email": self.email,
|
||||
"phone": self.phone,
|
||||
},
|
||||
"address": {
|
||||
"street": self.street,
|
||||
"addition": self.address_addition,
|
||||
"postal_code": self.postal_code,
|
||||
"city": self.city,
|
||||
"country": self.country,
|
||||
},
|
||||
"banking": {
|
||||
"account_holder": self.account_holder,
|
||||
"iban": self.iban,
|
||||
"bic": self.bic,
|
||||
"mandate_reference": self.mandate_reference,
|
||||
"mandate_signed_at": self.mandate_signed_at,
|
||||
"mandate_active": self.mandate_active,
|
||||
"mandate_revoked_at": self.mandate_revoked_at,
|
||||
},
|
||||
"membership": {
|
||||
"status": self.status,
|
||||
@@ -75,6 +105,8 @@ class Member:
|
||||
person = data.get("person") or {}
|
||||
membership = data.get("membership") or {}
|
||||
contribution = data.get("contribution_profile") or {}
|
||||
address = data.get("address") or {}
|
||||
banking = data.get("banking") or {}
|
||||
return cls(
|
||||
schema_version=int(data.get("schema_version", 1)),
|
||||
member_id=str(data["member_id"]),
|
||||
@@ -82,7 +114,20 @@ class Member:
|
||||
first_name=str(person.get("first_name", "")),
|
||||
last_name=str(person.get("last_name", "")),
|
||||
email=str(person.get("email", "")),
|
||||
phone=str(person.get("phone", "")),
|
||||
birth_date=str(person.get("birth_date", "")),
|
||||
street=str(address.get("street", "")),
|
||||
address_addition=str(address.get("addition", "")),
|
||||
postal_code=str(address.get("postal_code", "")),
|
||||
city=str(address.get("city", "")),
|
||||
country=str(address.get("country", "Deutschland")),
|
||||
account_holder=str(banking.get("account_holder", "")),
|
||||
iban=str(banking.get("iban", "")),
|
||||
bic=str(banking.get("bic", "")),
|
||||
mandate_reference=str(banking.get("mandate_reference", "")),
|
||||
mandate_signed_at=str(banking.get("mandate_signed_at", "")),
|
||||
mandate_active=bool(banking.get("mandate_active", False)),
|
||||
mandate_revoked_at=str(banking.get("mandate_revoked_at", "")),
|
||||
status=str(membership.get("status", "application")),
|
||||
accepted_at=str(membership.get("accepted_at", "")),
|
||||
membership_started_at=str(membership.get("started_at", "")),
|
||||
|
||||
Reference in New Issue
Block a user