chore(webapp): update documentation with class diagram

This commit is contained in:
fastium
2025-06-23 19:53:01 +02:00
parent 7e76712e33
commit 550d6fd776
4 changed files with 51 additions and 47 deletions

View File

@@ -1,66 +1,69 @@
@startuml web-app
skinparam linetype ortho
skinparam nodesep 50
class App {
' principale vuejs component
}
class Client {
+getValues()
+getNewValue()
}
class SeriesManager {
' get data, put data in graphs, ask new measure
+getNewValue()
+getAllValue()
}
class SerieConverter {
' convert timeseries from backend for graphs
+jsonToSerie()
}
class TimeSeries {
' simplify the duplication of series in graphs
-Series
}
class Button {
class ChartComponent {
' vue js component
' ask new measure
scatter
}
class ControlPanel {
' vue js component
action-button
refresh-button
user-multiselect
room-multiselect
device-multiselect
}
class Client {
+isconnected()
+getValues(user, room, device)
+getNewValue()
-ping()
-getAuthHeader()
}
class TimeSeriesManager {
' get data, put data in graphs, ask new measure
+selected_user
+selected_room
+selected_device
+series
+getTimeSeriesData()
+getNewValue()
}
class Serie {
' contains table of measure
' convert the table to graphs format
-type
-values
-numberOfLastValus
-id
-place
-name
-data
-user
-room
-device
+getGraphFormat()
' needs to limit the number of value
+addNewValue()
}
class Plot {
+getLabel()
+getSerie()
}
App *-r- SeriesManager
App *-r- TimeSeriesManager
App *-u- Client
SeriesManager *-r- TimeSeries
Plot -l-* TimeSeries
Serie -u-* TimeSeries
Serie *-- Button
SerieConverter .u.> SeriesManager
App *-d- ChartComponent
App *-d- ControlPanel
TimeSeriesManager *---r--- Serie
@enduml