Produkte und Properties im Server

This commit is contained in:
2026-08-16 18:22:05 +02:00
parent 5b60189b07
commit 5060fe5a2e
10 changed files with 818 additions and 14 deletions
+46 -6
View File
@@ -72,7 +72,7 @@ CREATE TABLE tabelle_a (
- updateValueFromValueId
- add
- addValueToPropertyType
- Produkte haben zusätzlich zur ID, Label und Beschreibung noch eine externalId.
@@ -107,7 +107,7 @@ CREATE TABLE IF NOT EXISTS values (
id BIGINT PRIMARY KEY DEFAULT nextval('global_id_seq'),
Label TEXT,
description TEXT,
propertyId BIGINT
propertyGroupId BIGINT
);
-- Property Table
@@ -163,11 +163,8 @@ CREATE TABLE IF NOT EXISTS media (
mediaType TEXT,
externalId BIGINT
);
```
## Open Aufsetzen des Source Codes:
````
@@ -218,4 +215,47 @@ go get github.com/gin-contrib/cors
## Server API
Die Server-API baut auf HTTP und auf REST auf. Antworten werden im JSON Format gesendet,ebenso, wie neu anzulegende Daten oder zu aktualisierende Daten.
Die Server-API baut auf HTTP und auf REST auf. Antworten werden im JSON Format gesendet,ebenso, wie neu anzulegende Daten oder zu aktualisierende Daten.
Generell werden Daten im JSON Format ausgetauscht. Z.B. wird ein *Value* Objekt in From von *application/json Daten* übergeben:
```gettext
put: http://server:port/updatePropertyType
```
benötigt folgende Struktur im Anfragekörper:
```json
{
"id": 1000003,
"label": "Colour",
"description": "System wide colors",
"propertyTypeGroupId": 100002
}
```
und liefert als Ergebnis (wenn kein Fehler auftritt):
```json
{
"data": {
"id": 1000003,
"label": "Colour",
"description": "System wide colors",
"propertyTypeGroupId": 100002
},
"message": "PropertyType updated"
}
```
Wenn Daten zurückkommen, so wie hier im Beispiel, dann werden sie im *"data"* Tag geschrieben. Meistens kommt auch noch eine Nachricht mit, die in *"message"* steht.
Im Falle eines Fehler kommt eine entsprechende Nachricht zurück (z.B. wenn es keinen PropertyType mit der entsprechenden *ID* gibt):
```json
{
"error": "sql: no rows in result set"
}
```
### Value und Property Funktionen