Nachnahme erst ab xx,- EUR ??

Thema wurde von Manni_HB, 8. November 2011 erstellt.

  1. Manni_HB

    Manni_HB G-WARD 2012/13/14/15

    Registriert seit:
    26. April 2011
    Beiträge:
    9.098
    Danke erhalten:
    1.540
    Danke vergeben:
    909
    Ort:
    Bremen
    Kann man NN erst ab einem bestimmtem Bestellwert zulassen?
     
  2. jox

    jox G-WARD 2012

    Registriert seit:
    26. April 2011
    Beiträge:
    1.676
    Danke erhalten:
    119
    Danke vergeben:
    159
    Das ist eine sehr gute Idee.
    Ich würde dann NN vielleicht wieder einsetzen.
    Habe es nämlich abgeschafft, da es Leute gibt die einen Artikel für 3,99 EUR bestellen und dafür 8,00 EUR NN-Gebühr zahlen würden und die Annahme dann verweigern.
    Eigentlich hasse ich NN wie die Pest.
     
  3. Petra

    Petra G-WARD 2013/14/15

    Registriert seit:
    27. August 2011
    Beiträge:
    6.998
    Danke erhalten:
    1.225
    Danke vergeben:
    227
    Ich auch jox, und deshalb machen wir es nicht mehr, sondern Kauf auf Rechnung. Gegenüber NN absolut keine Annahmeverweigerungen und keine Nichtabholung von der Post.
     
  4. Manni_HB

    Manni_HB G-WARD 2012/13/14/15

    Registriert seit:
    26. April 2011
    Beiträge:
    9.098
    Danke erhalten:
    1.540
    Danke vergeben:
    909
    Ort:
    Bremen
    Also das Problem ist kleiner als befürchtet!
    In der "....\includes\modules\payment\cod.php" sind ein paar Zeilen einzufügen und dann kann man einen Mindest- und/oder einen Höchst-Bestellwert eingeben. Außerhalb dieser Grenzwerte wird NN gar nicht im Bezahlvorgang angeboten.
    Sollte/muss man natürlich in der Beschreibung der Zahlarten drauf hinweisen!

    Da heute zu faul zum Schreiben, habe ich die geänderte Datei als Anhang beigefügt.
    Hinweise auf Datensicherung/Gewährleistung/Lizenzgebühren usw. gelten hiermit als bekannt gegeben!


    Auch dies wäre evtl. noch nett einzubauen - siehe hier...
     

    Anhänge:

    • cod.php
      Dateigröße:
      10,8 KB
      Aufrufe:
      40
  5. Petra

    Petra G-WARD 2013/14/15

    Registriert seit:
    27. August 2011
    Beiträge:
    6.998
    Danke erhalten:
    1.225
    Danke vergeben:
    227
    Hallo Manfred,
    das ist clever, aber ich befürchte, dass die Leute das nicht blicken und die Bestellung nicht bestätigen.
     
  6. Manni_HB

    Manni_HB G-WARD 2012/13/14/15

    Registriert seit:
    26. April 2011
    Beiträge:
    9.098
    Danke erhalten:
    1.540
    Danke vergeben:
    909
    Ort:
    Bremen
    @Petra@
    ... ist auch nur so für den Hinterkopf gedacht .... bei uns gab´s noch keine Verweigerer ... liegt natürlich hauptsächlich an der seriösen Klientel bei K-Müller und dem extremst seriösen Admin!! <Autsch>
     
  7. Stefan

    Stefan Erfahrener Benutzer

    Registriert seit:
    26. April 2011
    Beiträge:
    655
    Danke erhalten:
    61
    Danke vergeben:
    203
    @ Manfred

    Deinen Anpassung ist einfach Super ;-)
    Hast du rein zufällig auch noch einen Lösung, wie man z.B. für eine bestimmte Versandart Nachnahme komplett deaktivieren kann? In meinem Fall für das Versandmodul "flat".

    Am liebsten hätte ich es auch, das einen bestimmte Zahlart ab einem bestimmten Warenkorbwert gar nicht erst angezeigt wird ;-)
     
  8. Petra

    Petra G-WARD 2013/14/15

    Registriert seit:
    27. August 2011
    Beiträge:
    6.998
    Danke erhalten:
    1.225
    Danke vergeben:
    227
    Das hätte ich auch gerne, z.B. KK :D
     
  9. Manni_HB

    Manni_HB G-WARD 2012/13/14/15

    Registriert seit:
    26. April 2011
    Beiträge:
    9.098
    Danke erhalten:
    1.540
    Danke vergeben:
    909
    Ort:
    Bremen
    DU hast aber auch Wünsche! :)
    Also ... gleiche Datei unter- oder oberhalb der andere Änderungen dies:
    Code:
    // ##### BOF Nachnahme NICHT bei flat #####
      if ($_SESSION['shipping']['id'] != 'flat') {
      $this->enabled = false;
      }
    // ##### EOF Nachnahme NICHT bei flat #####
    
    Hinweise auf Datensicherung/Gewährleistung/Lizenzgebühren usw. gelten hiermit als bekannt gegeben!
     
  10. Stefan

    Stefan Erfahrener Benutzer

    Registriert seit:
    26. April 2011
    Beiträge:
    655
    Danke erhalten:
    61
    Danke vergeben:
    203
    Hallo Manfred, erst mal RECHT HERZLICHEN DANK für deinen Hilfe ;-)

    Leider hat diese Änderung zufolge, das bei KEINER Versandart mehr die Zahlart Nachnahme angezeigt wird :-(

    Hast du einen Idee woran dies liegen könnte ?

    Hast du einen Vorschlag, wie man z.B. einen Zahlart nur bis xyz Euro einblenden kann und drüber automatisch ausgeblendet wird ?
     
  11. Manni_HB

    Manni_HB G-WARD 2012/13/14/15

    Registriert seit:
    26. April 2011
    Beiträge:
    9.098
    Danke erhalten:
    1.540
    Danke vergeben:
    909
    Ort:
    Bremen
    Ich glaube es muss auch "... == 'flat' sein!?

    Zahlarten ausblenden ab xx Euronen .... ähm ... nee, keine Idee! :(
     
  12. Stefan

    Stefan Erfahrener Benutzer

    Registriert seit:
    26. April 2011
    Beiträge:
    655
    Danke erhalten:
    61
    Danke vergeben:
    203
    Danke für den Tip

    Wenn ich jetzt == 'flat' eingebe, wird Nachnahme wieder angezeigt, aber auch bei der Versandart flat !?!

    hmmm schade eigentlich ...
     
  13. Stefan

    Stefan Erfahrener Benutzer

    Registriert seit:
    26. April 2011
    Beiträge:
    655
    Danke erhalten:
    61
    Danke vergeben:
    203
    Ich habe die Lösung ;-)

    Es muss so lauten:

    Code:
    // ##### BOF Nachnahme NICHT bei flat #####
      if ($_SESSION['shipping']['id'] == 'flat_flat') {
      $this->enabled = false;
      }
     // ##### EOF Nachnahme NICHT bei flat #####
     
  14. Nicki

    Nicki Erfahrener Benutzer

    Registriert seit:
    12. März 2012
    Beiträge:
    469
    Danke erhalten:
    57
    Danke vergeben:
    29
    Hallo Manfred,

    ist ja schon etwas älter und die orginal cod.php hat sich auch zu deiner alten geändert aber Funktioniert dein Code noch oder hast du evtl. mittlerweile eine andere Lösung um ein Min. bzw. Max wert für Nachnahme zu verwenden?
     
  15. Manuel

    Manuel Erfahrener Benutzer

    Registriert seit:
    26. Mai 2011
    Beiträge:
    238
    Danke erhalten:
    18
    Danke vergeben:
    12
    #15 Manuel, 13. Juli 2012
    Zuletzt bearbeitet: 13. Juli 2012
    vllt. bringt`s der Allgemeinheit etwas.
    Hier eine Anpassung der cod.php, um sie warenwertabhängig freizugeben (lässt sich natürlich problemlos auf andere Zahlungsarten übertragen)

    /includes/modules/payment/cod.php
    1. suche nach
    PHP:
      function update_status() {
                                     global 
    $order;
                                     if (
    $_SESSION['shipping']['id'] == 'selfpickup_selfpickup') {
                                                     
    $this->enabled false;
                                     }
    füge danach ein
    PHP:
      // Modul abhaengig vom Bestellwert freigeben.
            
    if ($this->enabled == true) {
              
    // Bestellwert kleiner als Vorgabe ?
              
    if (intval(MODULE_PAYMENT_COD_MIN_ORDERVALUE) > 0) {
                if (
    $order->info['subtotal'] < intval(MODULE_PAYMENT_COD_MIN_ORDERVALUE)) {
                  
    $this->enabled false;
                }
              }
              
    // Bestellwert groesser als Vorgabe ?
              
    if (intval(MODULE_PAYMENT_COD_MAX_ORDERVALUE) > 0) {
                if (
    $order->info['subtotal'] > intval(MODULE_PAYMENT_COD_MAX_ORDERVALUE)) {
                  
    $this->enabled false;
                }
              }
            }
    2. suche nach
    PHP:
      function install() {
                                     
    xtc_db_query("insert into ".TABLE_CONFIGURATION." ( configuration_key, configuration_value,  configuration_group_id, sort_order, set_function, date_added) values ('MODULE_PAYMENT_COD_STATUS', 'True',  '6', '1', 'gm_cfg_select_option(array(\'True\', \'False\'), ', now())");
                                     
    xtc_db_query("insert into ".TABLE_CONFIGURATION." ( configuration_key, configuration_value,  configuration_group_id, sort_order, date_added) values ('MODULE_PAYMENT_COD_ALLOWED', '', '6', '0', now())");
                                     
    xtc_db_query("insert into ".TABLE_CONFIGURATION." ( configuration_key, configuration_value,  configuration_group_id, sort_order, use_function, set_function, date_added) values ('MODULE_PAYMENT_COD_ZONE', '0', '6', '2', 'xtc_get_zone_class_title', 'xtc_cfg_pull_down_zone_classes(', now())");
                                     
    xtc_db_query("insert into ".TABLE_CONFIGURATION." ( configuration_key, configuration_value,  configuration_group_id, sort_order, date_added) values ('MODULE_PAYMENT_COD_SORT_ORDER', '0',  '6', '0', now())");
                                     
    xtc_db_query("insert into ".TABLE_CONFIGURATION." ( configuration_key, configuration_value,  configuration_group_id, sort_order, set_function, use_function, date_added) values ('MODULE_PAYMENT_COD_ORDER_STATUS_ID', '0','6', '0', 'xtc_cfg_pull_down_order_statuses(', 'xtc_get_order_status_name', now())");
    für danach ein
    PHP:
      xtc_db_query("insert into ".TABLE_CONFIGURATION." ( configuration_key, configuration_value,  configuration_group_id, sort_order, date_added) values ('MODULE_PAYMENT_COD_MIN_ORDERVALUE', '0', '6', '0', now())");
      
    xtc_db_query("insert into ".TABLE_CONFIGURATION." ( configuration_key, configuration_value,  configuration_group_id, sort_order, date_added) values ('MODULE_PAYMENT_COD_MAX_ORDERVALUE', '0', '6', '0', now())");
    3. suche nach
    PHP:
      function keys() {
      return array (
    'MODULE_PAYMENT_COD_STATUS''MODULE_PAYMENT_COD_ALLOWED''MODULE_PAYMENT_COD_ZONE''MODULE_PAYMENT_COD_ORDER_STATUS_ID''MODULE_PAYMENT_COD_SORT_ORDER');
                      }
    ersetzen mit
    PHP:
      function keys() {
          return array (
    'MODULE_PAYMENT_COD_STATUS''MODULE_PAYMENT_COD_ALLOWED''MODULE_PAYMENT_COD_ZONE''MODULE_PAYMENT_COD_ORDER_STATUS_ID''MODULE_PAYMENT_COD_SORT_ORDER''MODULE_PAYMENT_COD_MIN_ORDERVALUE''MODULE_PAYMENT_COD_MAX_ORDERVALUE');
      }
    /lang/german/modules/payment/cod.php
    vor
    PHP:
    ?>
    das einfügen
    PHP:
      define('MODULE_PAYMENT_COD_MAX_ORDERVALUE_TITLE' 'Maximalbestellwert in Euro');
      
    define('MODULE_PAYMENT_COD_MAX_ORDERVALUE_DESC' 'Maximalbestellwert f&uuml;r das Nachnahme Modul. Setzen Sie den Eintrag auf Null, um diese Einschr&auml;nkung abzuschalten.');
      
    define('MODULE_PAYMENT_COD_MIN_ORDERVALUE_TITLE' 'Mindestbestellwert in Euro');
      
    define('MODULE_PAYMENT_COD_MIN_ORDERVALUE_DESC' 'Mindestbestellwert f&uuml;r das Nachnahme Modul. Setzen Sie den Eintrag auf Null, um diese Einschr&auml;nkung abzuschalten.');
    In die DB muss folg. einfügt werden (die `configuration_id` kann bei euch abweichend sein, bitte in der Tabelle nachgucken)
    Code:
      [FONT=Calibri]INSERT INTO `configuration` (`configuration_id`, `configuration_key`, `configuration_value`, `configuration_group_id`, `sort_order`, `last_modified`, `date_added`, `use_function`, `set_function`) VALUES ('3282', 'MODULE_PAYMENT_COD_MIN_ORDERVALUE', '', '0', NULL, NULL, '0000-00-00 00:00:00', NULL, NULL), ('3283', 'MODULE_PAYMENT_COD_MAX_ORDERVALUE', '', '0', NULL, NULL, '0000-00-00 00:00:00', NULL, NULL);[/FONT]
      
    Nun das Zahlungsmodul cod einmal deinstallieren und neuinstallieren. Es stehen nun min und max-Wert zur Verfügung.

    Funzt bei uns bestens. :)

    Alles auf eigene Gefahr, vorher natürlich Backup der entsprechenden Dateien und Tabellen.
     
  16. Nicki

    Nicki Erfahrener Benutzer

    Registriert seit:
    12. März 2012
    Beiträge:
    469
    Danke erhalten:
    57
    Danke vergeben:
    29
    Hallo Manuel,

    super Danke in schritt 2 ist allerdings ein kleiner Fehler, da fehlt was am ende!


    Hier der richtige schritt 2:



     
  17. Manuel

    Manuel Erfahrener Benutzer

    Registriert seit:
    26. Mai 2011
    Beiträge:
    238
    Danke erhalten:
    18
    Danke vergeben:
    12
    upppsss... schon korrigiert in Post #15.
     
  18. Nicki

    Nicki Erfahrener Benutzer

    Registriert seit:
    12. März 2012
    Beiträge:
    469
    Danke erhalten:
    57
    Danke vergeben:
    29
    Währe ein schönes Gambi Addon
     
  19. HolgerNils (xycons.de)

    HolgerNils (xycons.de) G-WARD 2013/2014

    Registriert seit:
    29. Oktober 2011
    Beiträge:
    1.973
    Danke erhalten:
    457
    Danke vergeben:
    369
    Oh ja, ein sehr nettes Goodie ;-)