Kender tilstandsmaskinen
Ordre, levering og betaling har hver deres status. Adea forklarer, hvordan de hænger sammen, og hvad der mangler, før ordren kan gå videre.
Stack · Shopware
Shopware har en tilstandsmaskine for ordrer, leveringer og betalinger. Adea læser den og jeres egne plugins og forklarer, hvordan en ordre kom til sin status.
Hvorfor står ordre 10045 som delt-leveret?
Ordren har to leveringer. Den første er sendt 3. oktober, den anden venter på en vare, der er udsolgt hos leverandøren. Så længe den står åben, er ordren delt-leveret.
Kildervendor/shopware/core/System/StateMachine/Aggregation
Koden, Adea læste · vendor/shopware/core/System/StateMachine/Aggregation
order.state: open -> in_progress -> completed order_delivery.state: open -> shipped_partially -> shipped
Forespørgslen, Adea kørte (kun læsning)
SELECT d.id, s.technical_name FROM order_delivery d
JOIN state_machine_state s ON s.id = d.state_id
WHERE d.order_id = UNHEX('…')
Ordre, levering og betaling har hver deres status. Adea forklarer, hvordan de hænger sammen, og hvad der mangler, før ordren kan gå videre.
Har et plugin tilføjet en egen status eller regel, læser Adea den med.
Spørgsmål som dette tog før en udvikler 15 minutter. Nu er svaret der på få sekunder, med ordrens historik.
Giv læseadgang til repoet og til en MySQL-læsebruger. Adea håndterer Shopwares binære id'er.
CREATE USER 'adea_laese'@'%' IDENTIFIED BY '…'; GRANT SELECT ON shopware.* TO 'adea_laese'@'%';
Ja.
Ja, hvis databasen kan nås udefra med en læsebruger, helst en læsekopi.
Nej. Adea kan kun læse. Ændringer sker stadig i Shopware.