Commit 7a28ab0d authored by Florent Chehab's avatar Florent Chehab

UML update not that clean

parent 3466f67a
@startuml
!include AbstractModules.pu
!include Core.pu
!include CityModules.pu
!include UniversityModules.pu
!include CountryModules.pu
!include CampusAndModules.pu
!include my_model__module.pu
!include other_core.pu
!include location.pu
!include university.pu
!include UserFunctions.pu
@enduml
@startuml
package Campus {
abstract class Campus{
+ is_main_campus : bool
+ name : string
+ Comment : MD
+ longitude : float
+ latitude : float
}
class CityCopy1 as "City" #red
Campus "*" -left[bold,#green]- "1" CityCopy1
abstract class ModuleCopyCampusExtra as "Module" #red
Campus -down|> ModuleCopyCampusExtra
abstract class BasicModuleCopyCampusExtra as "BasicModule" #red
class CultureAndStudentLife
class Accomodation
class Transport
class CampusOtherStuff
CultureAndStudentLife -up-|> BasicModuleCopyCampusExtra
Accomodation -up-|> BasicModuleCopyCampusExtra
Transport -up-|> BasicModuleCopyCampusExtra
CampusOtherStuff -up-|> BasicModuleCopyCampusExtra
CultureAndStudentLife "1" -down[bold,#green]- "1" Campus
Accomodation "1" -down[bold,#green]- "1" Campus
Transport "1" -down[bold,#green]- "1" Campus
CampusOtherStuff "1" -down[bold,#green]- "1" Campus
}
Campus "1..n" -- "1" University
@enduml
\ No newline at end of file
@startuml
package CityModule{
abstract class PhotoCopyCity as "Photo" #red
abstract class BasicModuleCopyCity as "BasicModule" #red
class CityOtherStuff
class CityTransport
class CityTourism
class CityPhoto
CityOtherStuff -up-|> BasicModuleCopyCity
CityTransport -up-|> BasicModuleCopyCity
CityTourism -up-|> BasicModuleCopyCity
CityPhoto -up-|> PhotoCopyCity
class CityVirtualCopy as "City" < copy for\n cleaner UML> #lightgrey
CityOtherStuff "1" -down[bold,#green]- "1" CityVirtualCopy
CityTransport "1" -down[bold,#green]- "1" CityVirtualCopy
CityTourism "1" -down[bold,#green]- "1" CityVirtualCopy
CityPhoto "1" -down[bold,#green]- "1" CityVirtualCopy
}
CityVirtualCopy -down[bold,#green]- City
@enduml
\ No newline at end of file
@startuml
package CountryModule{
abstract class PhotoCopyCountry as "Photo" #red
abstract class BasicModuleCopyCountry as "BasicModule" #red
abstract class ScholarShipCopyCountry as "Scholarship" #red
class CountryCulture as "Culture"
class VisaAdministrative
class HealthInsurance
class OtherInsurance
class CountryOtherStuff
class CountryTransport
class CountryTourism
class CountryPhoto
class ScholarshipCountry
CountryCulture -up-|> BasicModuleCopyCountry
VisaAdministrative -up-|> BasicModuleCopyCountry
HealthAssurance -up-|> BasicModuleCopyCountry
OtherInsurance -up-|> BasicModuleCopyCountry
HealthInsurance -up-|> BasicModuleCopyCountry
CountryOtherStuff -up-|> BasicModuleCopyCountry
CountryTransport -up-|> BasicModuleCopyCountry
CountryTourism -up-|> BasicModuleCopyCountry
CountryPhoto -left-|> PhotoCopyCountry
CountryPhoto "*" -right- "1" CountryVirtualCopy
ScholarshipCountry -right-|> ScholarShipCopyCountry
ScholarshipCountry "*" -left- "*" CountryVirtualCopy
class CountryVirtualCopy as "Country" < copy for\n cleaner UML> #lightgrey
CountryCulture "1" -down[bold,#green]- "1" CountryVirtualCopy
VisaAdministrative "1" -down[bold,#green]- "1" CountryVirtualCopy
HealthAssurance "1" -down[bold,#green]- "1" CountryVirtualCopy
HealthInsurance "1" -down[bold,#green]- "1" CountryVirtualCopy
OtherInsurance "1" -down[bold,#green]- "1" CountryVirtualCopy
CountryOtherStuff "1" -down[bold,#green]- "1" CountryVirtualCopy
CountryTransport "1" -down[bold,#green]- "1" CountryVirtualCopy
CountryTourism "1" -down[bold,#green]- "1" CountryVirtualCopy
}
CountryVirtualCopy -down[bold,#green]- Country
@enduml
\ No newline at end of file
TARGET=\
generated/Architecture.svg \
generated/Core.svg \
generated/UniversityModules.svg \
generated/CountryModules.svg \
generated/CityModules.svg \
generated/AbstractModules.svg \
generated/CampusAndModules.svg \
generated/other_core.svg \
generated/university.svg \
generated/my_model__module.svg \
generated/location.svg \
generated/UserFunctions.svg
......
@startuml
skinparam defaultFontName Inconsolata
package UniversityModule{
abstract class PhotoCopyUniversity as "Photo" #red
abstract class BasicModuleCopyUniversity as "BasicModule" #red
abstract class ScholarShipCopyUniversity as "Scholarship" #red
class CultureUniversity as "Culture"
class UniversityPhoto
class Courses
class SpecialOffer
class UniversityOtherStuff
class Insurances
class SemestersDates{
+ autumn_begin : date
+ autumn_end : date
+ spring_begin : date
+ spring_end : date
}
class UniversityInfo{
+ cost_exchange : float
+ cost_double_degree : float
}
CultureUniversity -up-|> BasicModuleCopyUniversity
Courses -up-|> BasicModuleCopyUniversity
SpecialOffer -up-|> BasicModuleCopyUniversity
UniversityOtherStuff -up-|> BasicModuleCopyUniversity
Insurances -up-|> BasicModuleCopyUniversity
SemestersDates -up-|> BasicModuleCopyUniversity
UniversityInfo -up-|> BasicModuleCopyUniversity
UniversityPhoto -left-|> PhotoCopyUniversity
UniversityScholarship -right-|> ScholarShipCopyUniversity
class UniversityVirtualCopy as "University" < copy for\n cleaner UML> #lightgrey
CultureUniversity "1" -down[bold,#green]- "1" UniversityVirtualCopy
UniversityPhoto "*" -right- "1" UniversityVirtualCopy
Courses "1" -down[bold,#green]- "1" UniversityVirtualCopy
UniversityOtherStuff "1" -down[bold,#green]- "1" UniversityVirtualCopy
Insurances "1" -down[bold,#green]- "1" UniversityVirtualCopy
SpecialOffer "1" -down[bold,#green]- "1" UniversityVirtualCopy
UniversityInfo "1" -down[bold,#green]- "1" UniversityVirtualCopy
SemestersDates "1" -down[bold,#green]- "1" UniversityVirtualCopy
UniversityScholarship "*" -left- "1" UniversityVirtualCopy
}
UniversityVirtualCopy -down[bold,#green]- University
@enduml
@startuml
package location{
class City #white {
+ name : string
+ local_name : string
+ area : string
}
class Country #white {
# iso_alpha2_code : string{2}
+ name : string
+ region_code : string{3}
+ region_name : string
+ sub_region_code : string{3}
+ sub_region_name : string
+ intermediate_region_code : string{3}
+ intermediate_region_name : string
}
City "*" -left-* Country
note "Countries are intially \n hardcoded in the db." as N2
N2 .up. Country
abstract class BasicModuleCopyLocation as "BasicModule" #red
class CountryDri
CountryDri -down-|> BasicModuleCopyLocation
Country "*"-down-"*" CountryDri
abstract class CountryTaggedItem
abstract class ScholarShipCopyCountry as "Scholarship" #red
class ScholarshipCountry
ScholarshipCountry -right-|> ScholarShipCopyCountry
ScholarshipCountry "*" -- "*" Country
CountryTaggedItem "*" -- "*" Country
CityTaggedItem "*" -- "*" City
class CityTaggedItem
}
@enduml
\ No newline at end of file
@startuml
package AbstractModels #lightgrey{
package my_model #lightgrey{
abstract class VersionnedModule <Will be versionned\n in the app>{
+ modified_by : user
+ modified_date : date
abstract class MyModel{
+ moderated_by : user
+ moderated_on : date
+ updated_by : user
+ updated_on : date
}
abstract class MyModelVersionned <Will be versionned\n in the app>{
----
get_serializer()
}
MyModelVersionned -up-|> MyModel
}
package module #lightgrey{
abstract class BasicModule{
+ comment : string
+ usefull_links : JSON \n array of {url,description}
......@@ -19,15 +32,9 @@ package AbstractModels #lightgrey{
+ amount_max : float {currency}
}
abstract class Photo{
+ photo : image
+ title : string
+ description : MD
}
BasicModule -left-|> VersionnedModule
Photo -right-|> VersionnedModule
ScholarShip -left-|> BasicModule
BasicModule -up-|> MyModelVersionned
ScholarShip -up-|> BasicModule
}
@enduml
\ No newline at end of file
@startuml
package Core {
' note as notePackageCore
' <b>Write access is restricted to site admins and the members of the DRI group.</b>
' On some models, users can make requests for modifications (for this a copy of the model is used for storing).
' end note
class City #white {
+ name : string
+ local_name : string
+ area : string
}
class Country #white {
# iso_alpha2_code : string{2}
+ name : string
+ region_code : string{3}
+ region_name : string
+ sub_region_code : string{3}
+ sub_region_name : string
+ intermediate_region_code : string{3}
+ intermediate_region_name : string
}
City "*" -left-* Country
note "Countries are intially \n hardcoded in the db." as N2
N2 .up. Country
class University #wheat {
+ name : string
+ accronyme : string
+ logo : image
+ website : url
}
University "*" .right. "1" City
note on link #white
This link is acheived
through the campus module
(where is_main = true)
end note
Class Offer {
+ nb_seats_offered : int
}
......@@ -65,7 +21,6 @@ package Core {
+ active : bool
}
Offer "*" -right- "1" University
Offer "*" -down- "1" Semester
Offer "*" -left- "1..n" Specialty
Specialty "1..n" -left- "1" Department
......@@ -81,24 +36,9 @@ package Core {
}
note right of UsefullLinks: It will be a dynamic page \n on the website
abstract class BasicModuleCopyCore as "BasicModule" #red
class UniversityDri
class CountryDri
UniversityDri -down-|> BasicModuleCopyCore
CountryDri -down-|> BasicModuleCopyCore
Country "*"-down-"*" CountryDri
University "*"-down-"*" UniversityDri
note "Edit right reserved\n to DRI members." as N4
N4 .. UniversityDri
N4 .. CountryDri
}
' End of Core block
Offer "*" -right- "1" University
@enduml
\ No newline at end of file
@startuml
skinparam defaultFontName Inconsolata
package universityP{
class University #wheat {
+ name : string
+ accronyme : string
+ logo : image
+ website : url
}
abstract class UniversityTaggedItem
abstract class ScholarShipCopyUniversity as "Scholarship" #red
class SemestersDates{
+ autumn_begin : date
+ autumn_end : date
+ spring_begin : date
+ spring_end : date
}
class UniversityInfo{
+ cost_exchange : float
+ cost_double_degree : float
}
abstract class Campus{
+ is_main_campus : bool
+ name : string
+ Comment : MD
+ longitude : float
+ latitude : float
}
class UniversityDri
UniversityDri -down-|> BasicModuleCopyCore
University "*"-down-"*" UniversityDri
class CampusTaggedItem
Campus -left- CampusTaggedItem
Campus "1..n" -- "1" University
UniversityScholarship -down-|> ScholarShipCopyUniversity
UniversityInfo "1" -down[bold,#green]- "1" University
SemestersDates "1" -down[bold,#green]- "1" University
UniversityTaggedItem "*" -down- "*" University
UniversityScholarship "*" -down- "1" University
}
University "*" .right. "1" City
@enduml
......@@ -7,10 +7,8 @@ Vue complète :
![Architecture](UML/generated/Architecture.svg)
Vue plus précise :
![Core](UML/generated/Core.svg)
![AbstractModules](UML/generated/UniversityModules.svg)
![Architecture](UML/generated/CampusAndModules.svg)
![Architecture](UML/generated/CountryModules.svg)
![Architecture](UML/generated/CityModules.svg)
![Architecture](UML/generated/AbstractModules.svg)
![other_core](UML/generated/other_core.svg)
![AbstractModules](UML/generated/university.svg)
![Architecture](UML/generated/location.svg)
![Architecture](UML/generated/my_model__module.svg)
![Architecture](UML/generated/UserFunctions.svg)
\ No newline at end of file
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment