Merge branch 'main' of gitlab.fdmci.hva.nl:propedeuse-hbo-ict/onderwijs/2023-2024/out-a-se-ti/blok-3/qaajeeqiinii59
This commit is contained in:
72
docs/brainstorm/UML-infrastrucuteV2.md
Normal file
72
docs/brainstorm/UML-infrastrucuteV2.md
Normal file
@@ -0,0 +1,72 @@
|
|||||||
|
```mermaid
|
||||||
|
classDiagram
|
||||||
|
setup --> websocketSetup
|
||||||
|
loop --> screenButtonHandler
|
||||||
|
screenButtonHandler --> DisplayText
|
||||||
|
screenButtonHandler --> sendData
|
||||||
|
sendData --> Server
|
||||||
|
setup --> loop
|
||||||
|
python --> Server
|
||||||
|
Server --> website
|
||||||
|
|
||||||
|
|
||||||
|
namespace ESP32Questionbox {
|
||||||
|
class setup {
|
||||||
|
+int questionID
|
||||||
|
+char*[] Question
|
||||||
|
+char*[] Answer
|
||||||
|
+Adafruit_ST7796S_kbv tft
|
||||||
|
+DisplayText displayText
|
||||||
|
+void websocketSetup()
|
||||||
|
}
|
||||||
|
|
||||||
|
class loop {
|
||||||
|
+void screenButtonHandler()
|
||||||
|
+void sendData(int question, String answer)
|
||||||
|
+void hexdump(const void* mem, uint32_t len, uint8_t cols)
|
||||||
|
}
|
||||||
|
|
||||||
|
class websocketSetup {
|
||||||
|
+connectWifi()
|
||||||
|
+websocketConnect()
|
||||||
|
}
|
||||||
|
|
||||||
|
class screenButtonHandler {
|
||||||
|
-bool redButton
|
||||||
|
-bool greenButton
|
||||||
|
-bool whiteButton
|
||||||
|
+displayText.writeText()
|
||||||
|
+sendData()
|
||||||
|
}
|
||||||
|
class DisplayText {
|
||||||
|
+void writeText(char* text, int size, int posX, int posY, int screenTime, bool center, bool bottom)
|
||||||
|
-int centerText(char* text)
|
||||||
|
-void printWordsFull(char* text, bool bottom)
|
||||||
|
}
|
||||||
|
class sendData{
|
||||||
|
+webSocket.sendTXT
|
||||||
|
}
|
||||||
|
}
|
||||||
|
namespace server {
|
||||||
|
class python {
|
||||||
|
+databaseScript()
|
||||||
|
+websocketScript()
|
||||||
|
+flaskScript()
|
||||||
|
}
|
||||||
|
class Server {
|
||||||
|
+websocket()
|
||||||
|
+flask()
|
||||||
|
+mariaDB()
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
namespace user {
|
||||||
|
class website {
|
||||||
|
+ getLiveData()
|
||||||
|
+ getHistoricalData()
|
||||||
|
+ showData()
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
```
|
@@ -2,6 +2,7 @@
|
|||||||
const data = [];
|
const data = [];
|
||||||
processor = new DataProcessor();
|
processor = new DataProcessor();
|
||||||
let link;
|
let link;
|
||||||
|
nodeDataArray = {};
|
||||||
|
|
||||||
// Function to create checkbox with label
|
// Function to create checkbox with label
|
||||||
function createCheckBox(id, label) {
|
function createCheckBox(id, label) {
|
||||||
@@ -16,7 +17,41 @@ function createCheckBox(id, label) {
|
|||||||
|
|
||||||
return { checkbox, checkboxLabel };
|
return { checkbox, checkboxLabel };
|
||||||
}
|
}
|
||||||
|
fetch("http://145.92.8.114/getNodeInfo?macAdress=*")
|
||||||
|
.then(response => {
|
||||||
|
if (!response.ok) {
|
||||||
|
throw new Error('Network response was not ok');
|
||||||
|
}
|
||||||
|
return response.json();
|
||||||
|
})
|
||||||
|
.then(data => {
|
||||||
|
handleData(data);
|
||||||
|
})
|
||||||
|
|
||||||
|
function handleData(JSONdata) {
|
||||||
|
select = document.getElementById('node-input');
|
||||||
|
|
||||||
|
console.log(JSONdata);
|
||||||
|
for (var i = 0; i < JSONdata.length; i++) {
|
||||||
|
console.log(JSONdata[i]);
|
||||||
|
console.log(option)
|
||||||
|
var node = JSONdata[i].NodeID;
|
||||||
|
var name = JSONdata[i].Name;
|
||||||
|
var location = JSONdata[i].Location;
|
||||||
|
nodeDataArray[node] = { name: name, location: location };
|
||||||
|
// Create new option element
|
||||||
|
var option = document.createElement('option');
|
||||||
|
|
||||||
|
// Set the value of the option
|
||||||
|
option.value = node;
|
||||||
|
|
||||||
|
// Set the text of the option
|
||||||
|
option.text = name;
|
||||||
|
|
||||||
|
// Add the option to the select
|
||||||
|
select.add(option);
|
||||||
|
}
|
||||||
|
}
|
||||||
// Create HTML input elements for user input
|
// Create HTML input elements for user input
|
||||||
const container = document.createElement("div");
|
const container = document.createElement("div");
|
||||||
container.setAttribute("class", "container");
|
container.setAttribute("class", "container");
|
||||||
@@ -102,11 +137,10 @@ container.appendChild(dateFilter);
|
|||||||
const nodeFilter = document.createElement("div");
|
const nodeFilter = document.createElement("div");
|
||||||
nodeFilter.setAttribute("class", "node-filter");
|
nodeFilter.setAttribute("class", "node-filter");
|
||||||
|
|
||||||
const nodeInput = document.createElement("input");
|
const nodeInput = document.createElement("select");
|
||||||
nodeInput.setAttribute("type", "text");
|
nodeInput.setAttribute("type", "select");
|
||||||
nodeInput.setAttribute("placeholder", "Enter Node Name (* for all)");
|
nodeInput.setAttribute("placeholder", "Enter Node Name (* for all)");
|
||||||
nodeInput.setAttribute("id", "node-input");
|
nodeInput.setAttribute("id", "node-input");
|
||||||
nodeInput.setAttribute("class", "input-field");
|
|
||||||
|
|
||||||
nodeFilter.appendChild(nodeInput);
|
nodeFilter.appendChild(nodeInput);
|
||||||
container.appendChild(nodeFilter);
|
container.appendChild(nodeFilter);
|
||||||
|
@@ -25,6 +25,9 @@
|
|||||||
<li class="nav-item">
|
<li class="nav-item">
|
||||||
<a href="settings.html" class="nav-link">Settings</a>
|
<a href="settings.html" class="nav-link">Settings</a>
|
||||||
</li>
|
</li>
|
||||||
|
<li class="nav-item">
|
||||||
|
<a href="questions-dashboard.html" class="nav-link">Questions</a>
|
||||||
|
</li>
|
||||||
</ul>
|
</ul>
|
||||||
</nav>
|
</nav>
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user