Αιτήματα Δωρεάν Ανάπτυξης
#5767 από ckesisis
04 Ιουν 2019, 10:11
Καλημέρα παιδιά,

Έχω δημιουργήσει μία ομάδα πελατών για Τιμολόγιο με 4 πεδία.
1) Επωνυμία
2) ΑΦΜ
3) Επαγγελμα
4) ΔΟΥ

όταν καταχωρώ μια παραγγελία με αυτά τα πεδία συμπληρωμένα, αποθηκεύονται στην βάση δεδομένων και συγκεκριμένο στον πίνακα oc_order, στην στήλη custom_field

Παράδειγμα αποθήκευσης

["","TOP STORE IKE","800861662","\u0395 \u0398\u0395\u03a3\u03a3\u0391\u039b\u039f\u039d\u0399\u039a\u0397\u03a3","\u0395\u039c\u03a0\u039f\u03a1\u0399\u039f \u03a3\u03a5\u03a3\u039a\u0395\u03a9\u039d \u03a4\u0397\u039b\u0395\u03a6\u03a9\u039d\u03a5\u0391\u03a3"]


Πως θα μπορούσα να αλλαξω τον τρόπο αποθήκευσης σε JSON με indexes? Παράδειγμα παρακάτω

Επιθυμητό αποτέλεσμα
{
"eponymia":"TOP STORE IKE",
"AFM":"800861662",
"DOY":"\u0395 \u0398\u0395\u03a3\u03a3\u0391\u039b\u039f\u039d\u0399\u039a\u0397\u03a3",
"Epaggelma":"\u0395\u039c\u03a0\u039f\u03a1\u0399\u039f \u03a3\u03a5\u03a3\u039a\u0395\u03a9\u039d \u03a4\u0397\u039b\u0395\u03a6\u03a9\u039d\u03a5\u0391\u03a3"
}

Ευχαριστώ εκ των προτέρων
#5768 από Alexandra
05 Ιουν 2019, 0:42
Καλημέρα,

Σε vanilla OpenCart τα προσαρμοσμένα πεδία αποθηκεύονται indexed στη βάση έτσι: {"2":"kappoia-doy","1":"kapoio-afm"}

Μπορείς να αντικαταστήσεις τους αριθμούς στο json σε associative array με κλειδιά όπως ανέφερες, όμως υπάρχουν πολλά σημεία που θα μπορούσες να κάνεις τη μετατροπή. Επειδή δεν μας έχεις δώσει πληροφορίες σχετικά με το τι θες να κάνεις με τα δεδομένα, θα πρότεινα σαν πιο ασφαλές μέρος το model στο catalog/model/checkout/order.php.

μετά το
Κώδικας: Επιλογή όλωνpublic function addOrder($data) {


και
Κώδικας: Επιλογή όλωνpublic function editOrder($order_id, $data) {


πρόσθεσε
Κώδικας: Επιλογή όλων$temp_cf['afm'] = !empty($data['custom_field']['1']) ? $data['custom_field']['1'] : '';
$temp_cf['doy'] = !empty($data['custom_field']['2']) ? $data['custom_field']['2'] : '';
... κλπ τα διάφορα προσαρμοσμένα πεδία που θες...
$data['custom_field'] = $temp_cf;
#5769 από ckesisis
05 Ιουν 2019, 10:29
Καλημέρα Αλεξάνδρα,

Ευχαριστώ για την άμεση απάντηση.

Χρησιμοποιώ Journal 3 οπότε η αλλαγή χρειάστηκε να πραγματοποιηθεί στο catalog/model/journal3/order.php

Δούλεψε όπως ακριβώς ήθελα.

Για την ιστορία, θα το χρησιμοποιήθω για την γέφυρα με το SOFT1 ERP έτσι ώστε να δημιουργεί αυτόματα τιμολόγια.

ΣΥΝΔΕΔΕΜΕΝΑ ΜΕΛΗ

Μέλη σε αυτό το φόρουμ: Δεν υπάρχουν εγγεγραμμένα μέλη και 8 επισκέπτες