Ανασχεδιασμός σελίδας PO — Διαθέσιμες ενέργειες

Στατικό πρωτότυπο · εικονικά δεδομένα · τίποτα δεν αποθηκεύεται

EL/EN
Κατάσταση

Τι δείχνει αυτή η σελίδα

Το σημερινό «Available actions» της σελίδας PO και τρεις κατευθύνσεις για τη νέα του μορφή. Οι τρεις κατευθύνσεις διαφέρουν μόνο στο πώς ζωγραφίζεται η μπάρα βημάτων — όλα τα υπόλοιπα (ένα κύριο κουμπί, μενού •••, disabled με λόγο, μετακομίσεις) είναι ήδη αποφασισμένα και ίδια παντού.

Οι αριθμημένοι δείκτες 1 δείχνουν πού ισχύει ένας επιχειρησιακός κανόνας — η εξήγηση είναι στο τέλος. Τα New component είναι ό,τι δεν υπάρχει σήμερα στο components/ui/.

Το canvas δείχνει μόνο την εμφάνιση. Το συμβόλαιο είναι η περιγραφή του ticket.

0 · Σήμερα

purchase-order-detail.tsx:335–870

Επίπεδο πλέγμα με μόνιμα ανοιχτές φόρμες. Εδώ φαίνονται 4 κάρτες· ανάλογα με το status μπορεί να φτάσουν 7. Τέσσερα teal κουμπιά ανταγωνίζονται — το ίδιο το DESIGN.md λέει «ένα teal κουμπί ανά οθόνη».

Διαθέσιμες ενέργειες

Επικοινωνία με τον προμηθευτή για την ετοιμότητα

Ζητήστε ενημέρωση για αυτή την εντολή από την κύρια επαφή του προμηθευτή.

Το πρώτο αίτημα θα σταλεί αυτόματα. Μπορείτε να στείλετε άλλο αφού σταλεί.

Ιστορικό υπενθυμίσεων

Οι αυτόματες υπενθυμίσεις προγραμματίζονται από το σύστημα και εμφανίζονται εδώ χωρίς ανανέωση της σελίδας.

Δεν έχει προγραμματιστεί ακόμη email υπενθύμισης.

Διόρθωση κατάστασης εντολής

Διορθώστε την κατάσταση πριν η εντολή συμμετάσχει σε αποστολή.

Ορισμός αναμενόμενης ετοιμότητας
Προσθήκη μηνύματος δραστηριότητας

1 · Η νέα σελίδα — Κατεύθυνση Γ ✓ ΕΠΙΛΕΓΜΕΝΗ

status: PENDING

Αυτή είναι η μορφή που περιγράφει το ticket. Επιλέχθηκε γιατί δεν σπάει όταν προστεθεί status — ο παρονομαστής αλλάζει, η διάταξη όχι. Δοκίμασε και τις 4 καταστάσεις πάνω δεξιά.

Φόρτωση εντολής αγοράς…

Η ενέργεια απέτυχε.
Η εντολή αγοράς συμμετέχει ήδη σε ανοιχτή αποστολή. Ακυρώστε τη συμμετοχή πριν προχωρήσετε.

9Καμία διαθέσιμη ενέργεια

Αυτή η εντολή αγοράς έχει ολοκληρώσει τη διαδρομή της. Δεν υπάρχει επόμενο βήμα από αυτή τη σελίδα.

Βήμα 7 / 7 Παραδόθηκε

Η διαδρομή ολοκληρώθηκε.

FL-24819 Pending

NORTHWIND MARITIME LTD · MV BLUE MERIDIAN

2Πορεία της εντολής New component

Βήμα 1 / 7 Εκκρεμεί

Επόμενο: Αναμ. ετοιμότητα

Τα βήματα 5–7 τα οδηγεί η Αποστολή, όχι αυτή η σελίδα.

4Η «Διόρθωση κατάστασης» βρίσκεται πλέον στο Επεξεργασία εντολής ▸ Λειτουργία

(Τα tabs μένουν όπως είναι — απλώς δεν είναι πια πάνω από τις ενέργειες.)

2 · Εναλλακτική Β — κουκκίδες (δεν επιλέχθηκε)

status: PENDING

Απορρίφθηκε. Μισός κατακόρυφος χώρος, αλλά κάθε νέο status προσθέτει κουκκίδα και στριμώχνει τα ελληνικά ονόματα — ακριβώς το πρόβλημα που η Γ αποφεύγει.

FL-24819 Pending

NORTHWIND MARITIME LTD · MV BLUE MERIDIAN

Εκκρεμεί
Αναμ. ετοιμότητα
Έτοιμο
Σε απόθεμα
Δεσμευμένο
Απεστάλη
Παραδόθηκε

3 · Εναλλακτική Α — ονόματα βημάτων (δεν επιλέχθηκε)

status: PENDING

Απορρίφθηκε. Διαβάζεται καλύτερα από νέο υπάλληλο, αλλά με 7 ονόματα σε μία σειρά κάθε νέο status απαιτεί ξαναδούλεμα της διάταξης — το κριτήριο που έκρινε την επιλογή.

FL-24819 Pending

NORTHWIND MARITIME LTD · MV BLUE MERIDIAN

1PENDING 2EXPECTED READINESS 3READY 4IN STOCK 5PREPARED FOR SHIPMENT 6SHIPPED 7ARRIVED

4 · Το μενού «Περισσότερες ενέργειες»

status: EXPECTED_READINESS

Ό,τι δεν είναι το επόμενο βήμα ζει εδώ. Οι μη διαθέσιμες μένουν ορατές, απενεργοποιημένες, με τον λόγο από κάτω — αντί να εξαφανίζονται σιωπηλά όπως σήμερα. Ο λόγος για το email δεν εφευρίσκεται: το backend επιστρέφει ήδη 6 κωδικούς αιτίας και ο κώδικας τους μεταφράζει ήδη σε προτάσεις.

FL-24819 Expected readiness
Βήμα 2 / 7 Αναμ. ετοιμότητα

Επόμενο: Έτοιμο

5 · Το πλατύ πάνελ άφιξης

status: READY

Το μόνο βήμα που δεν χωράει σε modal: 5 αριθμητικά πεδία ανά κόλι. Το υπάρχον Modal φτάνει 576px και το Drawer 544px — γι' αυτό ανοίγει σε πλήρους πλάτους πάνελ μέσα στη σελίδα. Το δεύτερο modal επιβεβαίωσης μένει.

FL-24819 Ready
Βήμα 3 / 7 Έτοιμο

Επόμενο: Σε απόθεμα

7Καταγραφή άφιξης και αποθήκευση εντολής αγοράς

GREECE (Levadias str, GR-18542, Piraeus / Free Circulation)

Τελικές διαστάσεις και βάρη κόλι

HU-0000000123

HU-0000000124

6 · Tab «Κόλι» — επιλογή με checkbox

purchase-order-detail.tsx · TabPanel collis

Ο «Διαχωρισμός κόλι» και η «Τελική κατάσταση κόλι» μετακομίζουν εδώ, εκεί που φαίνονται τα κόλι. Ίδιο μοτίβο με τη μπάρα επιλογής που υπάρχει ήδη στη λίστα stock.

6 2 επιλεγμένα κόλι
3
Με 1 επιλεγμένο κόλι: ο «Διαχωρισμός κόλι» εμφανίζεται απενεργοποιημένος με τον λόγο «Χρειάζονται τουλάχιστον 2 ενεργά κόλι» — δεν εξαφανίζεται.
HU-0000000123

Spare parts crate · Wooden box

DG

120 × 80 × 95 cm

310 kg

HU-0000000124

Filters carton · Cardboard box

60 × 40 × 35 cm

47 kg

HU-0000000125

Valve set · Metal box

Damaged

Τερματικό κόλι — δεν επιλέγεται

7 · Tab «Ιστορικό» — τα email μετακομίζουν εδώ

TabPanel history

Ο πίνακας «Ιστορικό υπενθυμίσεων» φεύγει από τις ενέργειες. Το tab έχει ήδη τρία χρονολόγια — αυτό είναι το τέταρτο.

Παραμονές σε αποθήκες

GR-18542 · Expected

Ιστορικό κατάστασης εντολής

Pending → Expected Readiness · 03/09/2026

Δραστηριότητα / μηνύματα

Invoice Rows Changed · 02/09/2026

5Ιστορικό υπενθυμίσεων
ΔημιουργήθηκεΑίτημαΚατάσταση
03/09/2026Αίτημα ημερομηνίας Στάλθηκε
09/09/2026Επιβεβαίωση ετοιμότητας Αναμονή αποστολής

8 · Χωρίς επόμενο βήμα & χρήστης χωρίς δικαιώματα

IN_STOCK · PURCHASE_ORDER_VIEW

Αριστερά: σε IN_STOCK το κύριο κουμπί εξαφανίζεται — το «Έναρξη αποστολής» μένει στο header όπως σήμερα. Δεξιά: ένας πελάτης ή προμηθευτής βλέπει τη μπάρα αλλά κανένα κουμπί.

FL-24819 In stock
Βήμα 4 / 7 Σε απόθεμα

Επόμενο: Δεσμευμένο

9Κανένα βήμα από αυτή τη σελίδα — η συνέχεια γίνεται από την Αποστολή.
FL-24819 Expected readiness Μόνο προβολή
Βήμα 2 / 7 Αναμ. ετοιμότητα

Επόμενο: Έτοιμο

8Η μπάρα είναι πληροφορία, όχι ενέργεια — τη βλέπουν και οι εξωτερικοί χρήστες. Κανένα κουμπί δεν εμφανίζεται.

9 · Τα status που δεν είναι βήματα

AWAITING_IMPORT · LOCATION_UNKNOWN · CANCELLED

Τρία status δεν κάθονται πάνω στη γραμμή των 7 βημάτων. Ο μετρητής δεν προχωράει για αυτά — κρατάει το τελευταίο βήμα που όντως έγινε, και το όνομα δείχνει το status με το δικό του χρώμα. Χωρίς αυτόν τον κανόνα μια ακυρωμένη εντολή θα διαβαζόταν σαν ολοκληρωμένη.

10AWAITING_IMPORT

Βήμα 6 / 7 Αναμονή εισαγωγής

Επόμενο: Σε απόθεμα

Ο μετρητής μένει στο 6 (SHIPPED) — η εντολή γύρισε σε ενδιάμεσο κόμβο και ξαναπερνά από αποθήκευση.

LOCATION_UNKNOWN

Βήμα 4 / 7 Άγνωστη τοποθεσία

Η διαδρομή σταμάτησε στο «Σε απόθεμα». Απαιτείται διερεύνηση.

CANCELLED

Βήμα 2 / 7 Ακυρώθηκε

Ακυρώθηκε στο «Αναμ. ετοιμότητα». Δεν υπάρχει συνέχεια.

Επιχειρησιακοί κανόνες πίσω από την οθόνη

Κάθε αριθμός αντιστοιχεί σε δείκτη πάνω στα artboards. Η πηγή κάθε κανόνα είναι το αρχείο του repo.

1

Ένα κύριο κουμπί = το ένα επόμενο βήμα

Σε κάθε status υπάρχει το πολύ ένα βήμα προς τα εμπρός. Παίρνει το όνομα της πραγματικής ενέργειας, όχι «Επόμενο». Τα μικρά βήματα ανοίγουν σε modal· η άφιξη σε πλατύ πάνελ.

DESIGN.md — «Primary action per view is one teal button»

2

Η μπάρα δείχνει ολόκληρη τη ζωή της εντολής

PENDING → EXPECTED_READINESS → READY → IN_STOCK → PREPARED_FOR_SHIPMENT → SHIPPED → ARRIVED_AT_DESTINATION. Τα βήματα μετά το IN_STOCK τα οδηγεί η Αποστολή, γι' αυτό φαίνονται αλλά δεν έχουν κουμπί. Τα CANCELLED και LOCATION_UNKNOWN δεν είναι βήματα: σταματούν τη μπάρα στο τελευταίο βήμα που έγινε και μπαίνουν δίπλα ως εξαίρεση.

docs/workflows/purchase-order-colli-journey.md — «PO lifecycle»

3

Μη διαθέσιμες ενέργειες: ορατές, απενεργοποιημένες, με τον λόγο

Σήμερα εξαφανίζονται σιωπηλά. Ο «Διαχωρισμός κόλι» π.χ. εμφανίζεται μόνο όταν η εντολή έχει >1 ενεργό κόλι — γι' αυτό συχνά δεν τον βλέπει κανείς. Κάθε απενεργοποιημένη ενέργεια γράφει τον λόγο της με λόγια του γραφείου.

purchase-order-detail.tsx:714 — movable.length > 1

4

Η «Διόρθωση κατάστασης» φεύγει από αυτή τη σελίδα

Είναι αναίρεση, όχι βήμα — και δεν πρέπει να συμβαίνει συχνά, γι' αυτό η αιτιολογία είναι υποχρεωτική. Μετακομίζει στο Επεξεργασία εντολής ▸ tab «Λειτουργία», με δικό της κουμπί και modal επιβεβαίωσης. Δεν αποθηκεύεται με το «Save» της φόρμας: στο backend είναι ξεχωριστή εντολή με δικό της audit record.

correctPurchaseOrderStatus · PurchaseOrderStatusCorrectionInput

5

Το ιστορικό υπενθυμίσεων είναι ιστορικό

Ο πίνακας με τα email προς τον προμηθευτή μετακομίζει στο tab «Ιστορικό», δίπλα στις παραμονές αποθήκης, το ιστορικό κατάστασης και τα μηνύματα. Στις ενέργειες μένει μόνο η αποστολή νέου email.

readiness-reminder-action.tsx

6

Οι ενέργειες κόλι ζουν στο tab «Κόλι»

Τσεκάρεις κόλι στη λίστα και εμφανίζεται μπάρα επιλογής με «Διαχωρισμός» και «Τελική κατάσταση». Τα τερματικά κόλι (κατεστραμμένα, χαμένα, ακυρωμένα) δεν επιλέγονται — μένουν στην εντολή ως ιστορικό αλλά δεν μπαίνουν σε αποστολή.

docs/workflows/purchase-order-colli-journey.md — «Terminal disposition»

7

Η άφιξη θέλει πλάτος, και δεύτερη επιβεβαίωση

Απαιτεί θέση αποθήκευσης και ακριβώς μία μέτρηση για κάθε ενεργό κόλι — 5 πεδία ανά κόλι. Είναι μη αναστρέψιμη, οπότε το τελικό κουμπί βγάζει modal επιβεβαίωσης.

confirmPurchaseOrderInStock · StockConfirmationInput

8

Η μπάρα φαίνεται σε όλους· τα κουμπιά όχι

Πελάτες, προμηθευτές και agents βλέπουν μόνο τις δικές τους εντολές και δεν μπορούν να τις αλλάξουν. Η μπάρα είναι πληροφορία — σε ποιο στάδιο είναι η παραγγελία — άρα τη βλέπουν. Κουμπιά και μενού εμφανίζονται μόνο με δικαίωμα επεξεργασίας.

docs/architecture/authorization.md — PURCHASE_ORDER_VIEW / _EDIT

9

Όταν δεν υπάρχει βήμα, δεν υπάρχει κουμπί

Σε IN_STOCK, SHIPPED, ARRIVED_AT_DESTINATION και στα τερματικά status το κύριο κουμπί δεν εμφανίζεται καθόλου. Το «Έναρξη αποστολής» παραμένει εκεί που είναι σήμερα, στο header.

purchase-order-detail.tsx — startShipment link

10

Ο μετρητής μετράει βήματα που έγιναν, όχι το τρέχον status

Παρονομαστής = τα 7 βήματα της κύριας ροής. Αριθμητής = το τελευταίο βήμα της κύριας ροής που έχει όντως περάσει η εντολή, από το ιστορικό μεταβάσεων — όχι από το τρέχον status. Έτσι τα AWAITING_IMPORT, LOCATION_UNKNOWN και CANCELLED δεν προχωράνε τον μετρητή: δίνουν μόνο το όνομα και το χρώμα. Αν αύριο προστεθεί status στην κύρια ροή, αλλάζει ο παρονομαστής και τίποτε άλλο.

purchaseOrder.status + statusTransitions[].toStatus — ήδη διαθέσιμα στο GetPurchaseOrder

nεπιχειρησιακός κανόνας New componentδεν υπάρχει σήμερα στο components/ui/ theme.cssόλα τα χρώματα και οι αποστάσεις από εκεί

Εικονικά δεδομένα. Καμία πραγματική εταιρεία, πλοίο, τιμή ή MRN.