OpenCart-Hellas 

Η Ελληνική κοινότητα υποστήριξης του Opencart

Υποστήριξη εμπορικών και δωρεάν επεκτάσεων & θεμάτων (Themes / Templates)
#319
Χαίρεται,

έχω ένα πρόβλημα που αντιμετωπίζω στο opencart και θα εκτιμούσα πολύ τη βοήθεια σας για την επίλυση του.
Όταν κάποιος πραγματοποιεί αγορά στο ηλεκτρονικό κατάστημα θέλω το Paypal & η πιστωτική κάρτα να ενεργοποιούνται για ποσά άνω των 25 Ευρώ.

Συνεπώς, έχω βάλει μέσω του extension της Aplha που έχω στο πεδίο "Το συνολικό χρηματικό ποσό που θα πρέπει να φτάσει η παραγγελία για να ενεργοποιηθεί αυτός ο τρόπος πληρωμής" = 49.99 και στο paypal αντίστοιχα το ίδιο.

Ποιο είναι το πρόβλημα;

Το πρόβλημα είναι ότι όταν κάποιος επιλέγει για αγορά προϊόν που κοστίζει 49 Ευρώ τα δύο αυτά extension δεν ενεργοποιούνται, όταν όμως επιλέξει τρόπο αποστολής, με courier ή ελτά τότε το ποσό του καλαθιού αυξάνεται και πάει + 5 ευρώ, οπότε το σύνολο στο καλάθι είναι 49+5= 54 Ευρώ. Συνεπώς, ενεργοποιούνται τα 2 extensions γιατί το ποσό είναι άνω των 49.99.

Πως μπορώ να το κάνω να ενεργοποιούνται μόνο για την αξία των προϊόντων, χωρίς να περιλαμβάνονται τα έξοδα αποστολής; Με άλλα λόγια, η συνθήκη αυτή να αφορά μόνο την αξία των προϊόντων; Να βασίζεται στο taxed sub-total και όχι στο Total γενικά... :-\

Έκδοση OC: 1.5.4
Hosting: VPS
Panel: CPanel
Lang: GR/EN
#322
Καλησπέρα

Το total στα Order totals μεταβάλεται ανάλογα με τη σειρά ταξινόμησης (sort order) που έχει το order total που ελέγχεις έτσι είναι απρόβλεπτο γι' αυτό που χρειάζεσαι.

Για την αξία των προϊόντων του καλαθιού με φόρο μπορείς να χρησιμοποιήσεις την method getTotal() από το system/library/cart.php για να ελέγξεις με ένα condition αν θα ενεργοποιείται η μέθοδος πληρωμής που θες πχ:
Κώδικας: Επιλογή όλων
if ( $this->cart->getTotal() > 25 ) { μπλα, μπλα, μπλα ... }
Αν χρειαστείς την αξία των προϊόντων του καλαθιού χωρίς φόρο μπορείς να χρησιμοποιήσεις την method getSubTotal().
#323
Φίλε, 1ον πρέπει να έκανα λάθος στον όρο subtotal γιατί αυτό έχει να κάνει για την αξία χωρίς ΦΠΑ. Λάθος διατύπωση, εννοούσα αξία των προϊόντων με ΦΠΑ αλλά χωρίς την προσθήκη των εξόδων αποστολής.
Θέλω δλδ αυτά τα 2 extensions να ενεργοποιούνται όταν η αξία των προϊόντων στο καλάθι είναι πάνω από 49.99Ε χωρίς όμως να υπολογίζονται τα έξοδα αποστολής.

Π.χ. για να γίνω πιο κατανοητός.
Όταν,
Μερικό Σύνολο: 39,69€
ΦΠΑ: 9,13€
Σύνολο: 48,82€
να μην ενεργοποιείται, που όντως δεν ενεργοποιείται το extension. Επειδή το σύνολο είναι 48,82 κι εγώ έχω βάλει να ενεργοποιείται >49,99.
Εάν όμως προστεθούν τα έξοδα αποστολής, τότε
Μερικό Σύνολο: 39,69€
Έξοδα Αποστολής: 5,00€
ΦΠΑ: 10,27€ (Εδώ αλλάζει και το ΦΠΑ γιατί προστέθηκαν τα έξοδα αποστολής)
Σύνολο: 54,97€ (Τώρα το σύνολο ξεπερνάει το 49,99 οπότε ενεργοποιούνται η πιστωτική και το Paypal.)
Το πρόβλημα είναι ότι η πραγματική αξία των προϊόντων είναι 48,82€. Κι εγώ θέλω τα extension να βασίζονται σε αυτή την τιμή όταν κάνουν τον έλεγχο.
Τώρα σχετικά με
Opencart-Hellas έγραψε: Το total στα Order totals μεταβάλεται ανάλογα με τη σειρά ταξινόμησης (sort order) που έχει το order total που ελέγχεις.
Με συγχωρείς αλλά δυσκολεύομαι να καταλάβω τι εννοείς. Μάλλον κατάλαβα, αλλά δεν είμαι σίγουρος.
Πάντως, εγώ είχα στο μυαλό μου ότι θα ήταν κάπως ευκολότερο, να βρω το έλεγχο που κάνει το extension του Paypal Standard για το πεδίο "Σύνολο - Το συνολικό χρηματικό ποσό που θα πρέπει να φτάσει η παραγγελία για να ενεργοποιηθεί αυτός ο τρόπος πληρωμής." έτσι αντί να ενεργοποιείται με την τιμή της αξίας των προϊόντων με ΦΠΑ, χωρίς όμως την προσθήκη των εξόδων αποστολής. Υπάρχει κάποια method γι'αυτό; Γιατί η method getTotal() αναφέρεται στην αξία των προϊόντων του καλαθιού με φόρο μαζί με όποια έξοδα αποστολής υπάρξουν.
Ή μπορώ να πάρω την subTotal και με κάποιο τρόπο να την πολλαπλασιάσω επί 23%, για να έχω στην ουσία πάλι μια method σαν την Total χωρίς όμως να συμπεριλαμβάνει και τα έξοδα αποστολής.

Λογικά ο κώδικας που γίνεται αυτός ο έλεγχος σε αυτό το πεδίο του extension του Paypal Standard, βρίσκεται στο catalog/model/payment/pp_standard.php
και αντίστοιχα για την AlphaBank eCommerce στο catalog/model/payment/alphabank.php
Τελευταία επεξεργασία από το μέλος xaeron την 01 Ιούλ 2014, 11:07, έχει επεξεργασθεί 1 φορά συνολικά.
#325
Έχω καταλάβει ακριβώς τι θες και η λύση είναι ή method getTotal() που σου πρότεινα.
Γιατί η method getTotal() αναφέρεται στην αξία των προϊόντων του καλαθιού με φόρο μαζί με όποια έξοδα αποστολής υπάρξουν.
Όχι, δεν περιλαμβάνει έξοδα αποστολής, μόνο τα κόστη των προϊόντων με φόρο. Χρησιμοποίησε την method getTotal() όπως σου έδειξα περικλείοντας τον κώδικα της πληρωμής με το condition.
Ή μπορώ να πάρω την subTotal και με κάποιο τρόπο να την πολλαπλασιάσω επί 23%
Η method getSubTotal() είναι ίδια με την getTotal() χωρίς τον υπολογισμό φόρου.

Αν θέλεις περισσότερες λεπτομέρειες για το που και πως θα τοποθετήσεις το condition μου λες. (πες που και σε ποια modules το θες)
#326
Opencart-Hellas έγραψε:Γιατί η method getTotal() αναφέρεται στην αξία των προϊόντων του καλαθιού με φόρο μαζί με όποια έξοδα αποστολής υπάρξουν.

Όχι, δεν περιλαμβάνει έξοδα αποστολής, μόνο τα κόστη των προϊόντων με φόρο. Χρησιμοποίησε την method getTotal() όπως σου έδειξα περικλείοντας τον κώδικα της πληρωμής με το condition.
Τότε γιατί στην περίπτωση που δεν έχω έξοδα αποστολής το ΦΠΑ είναι 9,13€, ενώ όταν έχω έξοδα αποστολής +5 Ευρώ είναι 10,27€; Εξαιτίας του 5Ευρου δεν είναι? 9,13 ΦΠΑ προϊόντων + 1,15 ΦΠΑ του 5€ = 10,28 :| :| :| :?: :?: :?:

Ναι φίλε θα ήθελα περισσότερες λεπτομέρειες. Θα το εκτιμούσα πολύ.
Θέλω να το εφαρμόσω για το Paypal και για Credit Card.
#327
Στον φάκελο catalog/model/payment άνοιξε όποια μέθοδο πληρωμής θες και ψάξε για το condition:
Κώδικας: Επιλογή όλων
		if ($status) {
πρίν από αυτό πρόσθεσε:
Κώδικας: Επιλογή όλων
    if ($this->cart->getTotal() < 50) { 
        $status = false;
    }
και θα απενεργοποιείται το module όταν τα προϊόντα που είναι στο καλάθι κοστίζουν κάτω από 50 ευρώ μετά φόρου.

Γεια σας. Χρησιμοποιώ το OC 3039 με το Journal και[…]

Πολύ καλά κάνεις και το λες, εννοείτε ότι χρειάζετ[…]

email μέσω SMTP

Καλημέρα, Το έχω δοκιμάσει και με ssl:////mail.m[…]

Πριν ζητήσετε βοήθεια στο φόρουμ, παρακαλούμε ελέγξτε αν υπάρχει έτοιμη λύση στο OpenCart Extension Marketplace!