2020-11-11 17:30:53 +01:00
< ? php
2020-11-12 17:11:09 +01:00
use Modules\Contratti\Components\Articolo as ArticoloContratto ;
use Modules\Contratti\Components\Riga as RigaContratto ;
use Modules\DDT\Components\Articolo as ArticoloDDT ;
use Modules\DDT\Components\Riga as RigaDDT ;
use Modules\Ordini\Components\Articolo as ArticoloOrdine ;
use Modules\Ordini\Components\Riga as RigaOrdine ;
use Modules\Preventivi\Components\Articolo as ArticoloPreventivo ;
use Modules\Preventivi\Components\Riga as RigaPreventivo ;
2020-11-11 17:30:53 +01:00
2020-12-02 11:31:52 +01:00
// File e cartelle deprecate
$files = [
'modules/listini' ,
];
foreach ( $files as $key => $value ) {
$files [ $key ] = realpath ( base_dir () . '/' . $value );
}
delete ( $files );
2020-11-11 17:30:53 +01:00
/**
* Procedura per aggiustare alcuni campi di sconto ivato nei documenti prima della fattura
2020-11-12 17:11:09 +01:00
* in quanto veniva calcolato lo sconto ivato erroneamente .
2020-11-11 17:30:53 +01:00
*/
2020-12-31 11:08:11 +01:00
// TODO: aggiornare procedura con query SQL esplicite invece che con i metodi che possono cambiare nel tempo
2020-11-11 17:30:53 +01:00
// Fix sconti contratti
2020-12-31 11:08:11 +01:00
$righe = $dbo -> fetchArray ( 'SELECT id, idiva, sconto_percentuale, sconto_unitario, tipo_sconto, prezzo_unitario FROM co_righe_contratti WHERE sconto_percentuale != 0 AND tipo_sconto="PRC"' );
2020-11-11 17:30:53 +01:00
2020-11-12 17:11:09 +01:00
foreach ( $righe as $riga ) {
if ( empty ( $riga [ 'idarticolo' ])) {
$this_riga = RigaContratto :: find ( $riga [ 'id' ]);
2020-11-11 17:30:53 +01:00
} else {
2020-11-12 17:11:09 +01:00
$this_riga = ArticoloContratto :: find ( $riga [ 'id' ]);
2020-11-11 17:30:53 +01:00
}
2020-11-12 17:11:09 +01:00
if ( $this_riga !== null ) {
$this_riga -> setPrezzoUnitario ( $riga [ 'prezzo_unitario' ], $riga [ 'idiva' ]);
2020-12-31 11:08:11 +01:00
if ( $riga [ 'tipo_sconto' ] == 'PRC' ) {
$this_riga -> setSconto ( $riga [ 'sconto_percentuale' ], $riga [ 'tipo_sconto' ]);
} else {
$this_riga -> setSconto ( $riga [ 'sconto_unitario' ], $riga [ 'tipo_sconto' ]);
}
2020-11-11 17:30:53 +01:00
$this_riga -> save ();
}
}
// Fix sconti preventivi
2020-12-31 11:08:11 +01:00
$righe = $dbo -> fetchArray ( 'SELECT id, idiva, sconto_percentuale, sconto_unitario, tipo_sconto, prezzo_unitario FROM co_righe_preventivi WHERE sconto_percentuale != 0 AND tipo_sconto="PRC"' );
2020-11-11 17:30:53 +01:00
2020-11-12 17:11:09 +01:00
foreach ( $righe as $riga ) {
if ( empty ( $riga [ 'idarticolo' ])) {
$this_riga = RigaPreventivo :: find ( $riga [ 'id' ]);
2020-11-11 17:30:53 +01:00
} else {
2020-11-12 17:11:09 +01:00
$this_riga = ArticoloPreventivo :: find ( $riga [ 'id' ]);
2020-11-11 17:30:53 +01:00
}
2020-11-12 17:11:09 +01:00
if ( $this_riga !== null ) {
$this_riga -> setPrezzoUnitario ( $riga [ 'prezzo_unitario' ], $riga [ 'idiva' ]);
2021-02-18 18:48:44 +01:00
2020-12-31 11:08:11 +01:00
if ( $riga [ 'tipo_sconto' ] == 'PRC' ) {
$this_riga -> setSconto ( $riga [ 'sconto_percentuale' ], $riga [ 'tipo_sconto' ]);
} else {
$this_riga -> setSconto ( $riga [ 'sconto_unitario' ], $riga [ 'tipo_sconto' ]);
}
2021-02-18 18:48:44 +01:00
2020-11-11 17:30:53 +01:00
$this_riga -> save ();
}
}
// Fix sconti ordini
2020-12-31 11:08:11 +01:00
$righe = $dbo -> fetchArray ( 'SELECT id, idiva, sconto_percentuale, sconto_unitario, tipo_sconto, prezzo_unitario FROM or_righe_ordini WHERE sconto_percentuale != 0 AND tipo_sconto="PRC"' );
2020-11-11 17:30:53 +01:00
2020-11-12 17:11:09 +01:00
foreach ( $righe as $riga ) {
if ( empty ( $riga [ 'idarticolo' ])) {
$this_riga = RigaOrdine :: find ( $riga [ 'id' ]);
2020-11-11 17:30:53 +01:00
} else {
2020-11-12 17:11:09 +01:00
$this_riga = ArticoloOrdine :: find ( $riga [ 'id' ]);
2020-11-11 17:30:53 +01:00
}
2020-11-12 17:11:09 +01:00
if ( $this_riga !== null ) {
$this_riga -> setPrezzoUnitario ( $riga [ 'prezzo_unitario' ], $riga [ 'idiva' ]);
2021-02-18 18:48:44 +01:00
2020-12-31 11:08:11 +01:00
if ( $riga [ 'tipo_sconto' ] == 'PRC' ) {
$this_riga -> setSconto ( $riga [ 'sconto_percentuale' ], $riga [ 'tipo_sconto' ]);
} else {
$this_riga -> setSconto ( $riga [ 'sconto_unitario' ], $riga [ 'tipo_sconto' ]);
}
2020-11-11 17:30:53 +01:00
$this_riga -> save ();
}
}
// Fix sconti ddt
2020-12-31 11:08:11 +01:00
$righe = $dbo -> fetchArray ( 'SELECT id, idiva, sconto_percentuale, sconto_unitario, tipo_sconto, prezzo_unitario FROM dt_righe_ddt WHERE sconto_percentuale != 0 AND tipo_sconto="PRC"' );
2020-11-11 17:30:53 +01:00
2020-11-12 17:11:09 +01:00
foreach ( $righe as $riga ) {
if ( empty ( $riga [ 'idarticolo' ])) {
$this_riga = RigaDDT :: find ( $riga [ 'id' ]);
2020-11-11 17:30:53 +01:00
} else {
2020-11-12 17:11:09 +01:00
$this_riga = ArticoloDDT :: find ( $riga [ 'id' ]);
2020-11-11 17:30:53 +01:00
}
2020-11-12 17:11:09 +01:00
if ( $this_riga !== null ) {
$this_riga -> setPrezzoUnitario ( $riga [ 'prezzo_unitario' ], $riga [ 'idiva' ]);
2021-02-18 18:48:44 +01:00
2020-12-31 11:08:11 +01:00
if ( $riga [ 'tipo_sconto' ] == 'PRC' ) {
$this_riga -> setSconto ( $riga [ 'sconto_percentuale' ], $riga [ 'tipo_sconto' ]);
} else {
$this_riga -> setSconto ( $riga [ 'sconto_unitario' ], $riga [ 'tipo_sconto' ]);
}
2020-11-11 17:30:53 +01:00
$this_riga -> save ();
}
2020-11-12 17:11:09 +01:00
}