Da ich über die Suche hier und bei Google leider nicht fündig geworden bin versuche ich es einmal hier im Forum ob es eine klare Antwort dazu gibt.
Ich möchte per REST API den Status einer Bestellposition aktualisieren.
Ich bekomme von der orderResource zwar ein OK zurück, nur es wird nichts aktualisiert.
Ich verwende die REST API auch zum abgleichen der Bestellungen und Artikeldaten mit einer Warenwirtschaft. das funktioniert auch ganz gut. Ich finde nur keinen weg über die API den Status einer Bestellposition zu ändern. Hintergund wofür das gebraucht wird ist der, das durch das setzen des Status bei einer Bestellposition ja dann nur für diese Position der Bestellung eine Gutschrift ausgelöst wird zum Beispiel.
Für die ganze Bestellung klappt das ohne Probleme, aber nicht für eine einzelne Position.
Daher die Frage geht das überhaupt über die API?
Ich habe im Forum einen Beitrag über orderDetailsAttributes gefunden. leider konnte ich das aber nicht so anpassen, das er die orderdetails aktualisieren würde.
Leider geht es da aber nur um eine Anlage einer kompletten Bestellung.
das will ich gar nicht machen.
ich möchte nur den status einer Bestellposition ändern. das Feld heißt statusId (siehe JSON oben) . Aber leider passiert nichts, wenn man den request absetzt. Bzw schon. es kommt OK 200 zurück. keine Fehlermeldung oder ähnliches…
Aber es ändern sich keine Daten. es bleibt alles gleich.
Ich befürchte fast, das man bei der Bestellposition den Status nicht ändern kann über die API…
Hast du dazu weitere Infos herausgefunden? Ich versuche auch den Status von Positionen über die API zu setzen, was ja durchaus auch ein usecase ist, z.B. bei Teilstornierungen.
Evtl. hast du auch einen Workaround gefunden, würde mich auf jeden Fall interessieren.
Danke für deine Info! Das ist das schöne am Shopware Forum (kenne auch XT Forum (anderes Shopsystem), da kriegt man meistens keine Antwort und wenn eher eine unnötige:-( )
Zu deiner Frage. Habe mit Attributen gearbeitet. aber nur bei den Artikeln.
Da ist es so, das du einfach ein attribute ‚Object‘ im Json brauchst mit den dann dazugehörigen Namen der DB Felder, die du Update willst.
Das ganze aktualisiere ich dann einfach mit dem Update kommando für Artikel. Das hat bei mir ganz gut funktioniert.
Aber eben nur bei den Artikel. bei den Bestelldetails kann ich dir das leider nicht beantworten ob das dort auch so geht…
das status Feld kann upgedatet werden wie von daniel_aq geschrieben. nur es muss eben status heißen.
da ich das gerade bracuhe wollte ich das nur anmerken. aktuell brauche ich nur das Statusfeld aktualisieren. es wird spannend, falls ich mal andere Felder aktualisieren muss. denn ich habe keinen Weg gefunden wie das gehen soll…