minor: org pydantic model cleanup
Contact models also updated since they are now fully incorporated into orgs. Issue #9
This commit is contained in:
parent
216836e2fd
commit
4bf5933376
3 changed files with 47 additions and 90 deletions
|
|
@ -10,8 +10,11 @@ from typing import Optional
|
|||
from pydantic import EmailStr, ConfigDict
|
||||
|
||||
from src.schemas import CustomBaseModel
|
||||
from src.contact.schemas import ContactModel
|
||||
from src.user.schemas import UserIDMixin
|
||||
|
||||
from src.organisation.constants import Status, ContactType
|
||||
from src.contact.schemas import ContactAddress
|
||||
|
||||
|
||||
class OrgQuestionnaire(CustomBaseModel):
|
||||
question_one: str
|
||||
|
|
@ -21,18 +24,19 @@ class OrgQuestionnaire(CustomBaseModel):
|
|||
class OrgIDMixin(CustomBaseModel):
|
||||
organisation_id: int
|
||||
|
||||
class OrgOrgPostRequest(CustomBaseModel):
|
||||
|
||||
class OrgPostOrgRequest(CustomBaseModel):
|
||||
name: str
|
||||
intake_questionnaire: Optional[OrgQuestionnaire] = None
|
||||
|
||||
class OrgQuestionnairePatchRequest(OrgIDMixin):
|
||||
class OrgPatchQuestionnaireRequest(OrgIDMixin):
|
||||
intake_questionnaire: OrgQuestionnaire
|
||||
partial: bool
|
||||
|
||||
class OrgStatusPatchRequest(OrgIDMixin):
|
||||
class OrgPatchStatusRequest(OrgIDMixin):
|
||||
status: Status
|
||||
|
||||
class OrgContactPatchRequest(OrgIDMixin):
|
||||
class OrgPatchContactRequest(OrgIDMixin):
|
||||
contact_type: ContactType
|
||||
|
||||
email: Optional[EmailStr] = None
|
||||
|
|
@ -48,33 +52,27 @@ class OrgContactPatchRequest(OrgIDMixin):
|
|||
country_code: Optional[str] = None
|
||||
postal_code: Optional[str] = None
|
||||
|
||||
class OrgUserPostRequest(OrgIDMixin):
|
||||
user_id: int
|
||||
class OrgPostUserRequest(OrgIDMixin, UserIDMixin):
|
||||
pass
|
||||
|
||||
class OrgUserDeleteRequest(OrgIDMixin):
|
||||
user_id: int
|
||||
class OrgDeleteUserRequest(OrgIDMixin, UserIDMixin):
|
||||
pass
|
||||
|
||||
class OrgRootPatchRequest(OrgIDMixin):
|
||||
user_id: int
|
||||
class OrgPatchRootRequest(OrgIDMixin, UserIDMixin):
|
||||
pass
|
||||
|
||||
class OrgUserGetResponse(CustomBaseModel):
|
||||
class OrgGetUserResponse(CustomBaseModel):
|
||||
users: list[str]
|
||||
|
||||
class OrgGroupGetResponse(CustomBaseModel):
|
||||
class OrgGetGroupResponse(CustomBaseModel):
|
||||
groups: list[str]
|
||||
|
||||
class OrgContactGetResponse(CustomBaseModel):
|
||||
class OrgGetContactResponse(CustomBaseModel):
|
||||
model_config = ConfigDict(from_attributes=True, extra="ignore")
|
||||
|
||||
email: Optional[str] = None
|
||||
first_name: Optional[str] = None
|
||||
last_name: Optional[str] = None
|
||||
phonenumber: Optional[str] = None
|
||||
vat_number: Optional[str] = None
|
||||
contact: ContactModel
|
||||
|
||||
address: ContactAddress
|
||||
|
||||
class OrgOrgGetResponse(CustomBaseModel):
|
||||
class OrgGetOrgResponse(CustomBaseModel):
|
||||
name: str
|
||||
status: Status
|
||||
root_user: Optional[str] = None
|
||||
|
|
@ -83,4 +81,4 @@ class OrgOrgGetResponse(CustomBaseModel):
|
|||
security_contact: Optional[str] = None
|
||||
|
||||
class OrgDeleteOrgRequest(OrgIDMixin):
|
||||
pass
|
||||
pass
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue