internew Posted January 18, 2016 Share Posted January 18, 2016 (edited) Non ho capito perchè PS utilizza quella stringa senza senso apparente per la codifica di un ordine. Ho eseguito un ovveride e ho riscritto la procedura per personalizzare Il Reference Number in modo PROGRESSIVO rispetto all'ANNO in corso, quindi una cosa di questo tipo: 2015/1, 2015/2, 2015/3, 2015/4, 2015/5, 2015/6 2016/1, 2016/2, 2016/3, 2016/4, 2016/5 mantenendo invece progressivo costante l'ID originale dell'ordine. Pre fare questo ho creato un file Order.php da mettere nella cartella /override/classes/order e ho inserito questo codice che esegue la query per la progressività sull'anno =========================================== <?php Class Order extends OrderCore { public static function generateReference() { $last_id = Db::getInstance()->getValue(' select right(reference,4) from '._DB_PREFIX_.'orders where id_order = (SELECT max(id_order) FROM '._DB_PREFIX_.'orders where year(date_add) = year(CURRENT_DATE))'); $last_id = intval($last_id); return str_pad((int)$last_id + 1, 9, date('Y').'/000000000', STR_PAD_LEFT); } } =========================================== dopo aver eseguito questo upload, è necessario andare nella cartella /cache ed eliminare il file class_index.php Prima di partire con un nuovo ordine è necessario andare nel database e modificare il reference dell'ultimo ordine come segue: 2016/0001 In questo modo si da origine alla progressione sull'anno in automatico per tutti gli ordini successivi. Un saluto Davide find me personal website @ http://daviderossi.photo my business @ http://www.contechlab.it Edited January 18, 2016 by internew (see edit history) Link to comment Share on other sites More sharing options...
overbags Posted March 16, 2017 Share Posted March 16, 2017 ciao. Grazie a questo topic sono riuscito ad avere il numero di ordine come lo volevo. Ultimamente ho installato un modulo paypal che installa un nuovo file Order.php elminando il vecchio ho provato in varie maniere ad unificare il codice ma non essendo esperto tutte le volte che vado in moduli il modulo nuovo dice che il file manca e va reinstallato. nel nuovo file il codice è ---------------------------------- <?php class Order extends OrderCore { public $payment_fee; public $payment_fee_rate; public function getFields() { $fields = parent::getFields(); $fields['payment_fee'] = (float)($this->payment_fee); $fields['payment_fee_rate'] = (float)($this->payment_fee_rate); return $fields; } } ?> ---------------------------------- potreste darmi una mano ? Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now