Files
vpsx-fast/app/alchemy/location.plantuml
Bernhard Radermacher 292e296f01 wip
2025-09-01 11:36:22 +00:00

73 lines
1.5 KiB
Plaintext

@startuml
'!include base.plantuml
!include status.plantuml
!include contact.plantuml
skinparam linetype polyline
class Country {
{field} + code\t\tString(2)\t\t<<Unique>>
{field} + name\t\tString(80)
{field} + notes\t\tText | None
+ __repr__()\t\tstr
}
abstract CountryForeignKey {
country_id\tCountry.id {field}
+ country\t\tCountry {field}
}
class LocationCode {
{field} + code\t\tString(8)\t\t<<Unique>>
{field} + description\tString(80)
{field} + notes\t\tText | None
+ __repr__()\t\tstr
}
abstract LocationCodeForeignKey {
location_code_id\tLocationCode.id
+ location_code\t\tLocationCode
}
class Location {
{field} + code\t\tString(30)
{field} + description\tString(80)
{field} + notes\t\tText | None
{field} <<Unique>>\n\tlocation_code_id\n\tcode
+ __repr__()\t\tstr
}
abstract LocationForeignKey {
location_id\tLocation.id
+ location\t\tLocation
}
Versioned <|-[#blue]- Country
StatusForeignKey <|-[#blue]- Country
Country *-- CountryForeignKey
Versioned <|-[#blue]- LocationCode
StatusForeignKey <|-[#blue]- LocationCode
LocationCode *-- LocationCodeForeignKey
CountryForeignKey <|-[#blue]- LocationCode
ContactForeignKey o.. LocationCode
Versioned <|-[#blue]- Location
StatusForeignKey <|-[#blue]- Location
Location *-- LocationForeignKey
LocationCodeForeignKey <|-[#blue]- Location
ContactForeignKey o.. Location
@enduml