1
0
mirror of https://github.com/devcode-it/openstamanager.git synced 2024-12-19 03:34:25 +01:00

Corretta l'applicazione della rivalsa sulla marca da bollo

This commit is contained in:
Pek5892 2023-12-20 15:08:21 +01:00
parent 02c35f1d41
commit af97d0d310
3 changed files with 14 additions and 12 deletions

View File

@ -74,6 +74,7 @@ Il formato utilizzato è basato sulle linee guida di [Keep a Changelog](http://k
- Corretto filtro articoli negli automezzi prendendo correttamente la giacenza della sede centrale - Corretto filtro articoli negli automezzi prendendo correttamente la giacenza della sede centrale
- Corretta selezione automatica iva all'aggiunta degli articoli nei documenti di vendita. Il sistema da priorità all'iva del fornitore se presente, altrimenti passa all'iva dell'articolo se presente, altrimenti assegna l'iva di default definita in impostazioni. - Corretta selezione automatica iva all'aggiunta degli articoli nei documenti di vendita. Il sistema da priorità all'iva del fornitore se presente, altrimenti passa all'iva dell'articolo se presente, altrimenti assegna l'iva di default definita in impostazioni.
- Corretta la visata vista riferimenti negli ordini cliente aggiungendo il numero esterno del DDT al posto dell'id come veniva erronamente visualizzato prima - Corretta la visata vista riferimenti negli ordini cliente aggiungendo il numero esterno del DDT al posto dell'id come veniva erronamente visualizzato prima
- Corretta l'applicazione della rivalsa sulla marca da bollo
## 2.4.52 (2023-12-08) ## 2.4.52 (2023-12-08)
### Aggiunto (Added) ### Aggiunto (Added)

View File

@ -585,14 +585,14 @@ class Fattura extends Document
// Salvataggio effettivo // Salvataggio effettivo
parent::save($options); parent::save($options);
// Fix dei campi statici
$this->id_riga_bollo = $this->gestoreBollo->manageRigaMarcaDaBollo();
$this->attributes['ritenutaacconto'] = $this->ritenuta_acconto; $this->attributes['ritenutaacconto'] = $this->ritenuta_acconto;
$this->attributes['iva_rivalsainps'] = $this->iva_rivalsa_inps; $this->attributes['iva_rivalsainps'] = $this->iva_rivalsa_inps;
$this->attributes['rivalsainps'] = $this->rivalsa_inps; $this->attributes['rivalsainps'] = $this->rivalsa_inps;
$this->attributes['ritenutaacconto'] = $this->ritenuta_acconto; $this->attributes['ritenutaacconto'] = $this->ritenuta_acconto;
// Fix dei campi statici
$this->id_riga_bollo = $this->gestoreBollo->manageRigaMarcaDaBollo();
// Generazione numero fattura se non presente (Bozza -> Emessa) // Generazione numero fattura se non presente (Bozza -> Emessa)
if ((($stato_precedente->descrizione == 'Bozza' && $this->stato['descrizione'] == 'Emessa') or (!$is_fiscale)) && empty($this->numero_esterno)) { if ((($stato_precedente->descrizione == 'Bozza' && $this->stato['descrizione'] == 'Emessa') or (!$is_fiscale)) && empty($this->numero_esterno)) {
$this->numero_esterno = self::getNextNumeroSecondario($this->data, $this->direzione, $this->id_segment); $this->numero_esterno = self::getNextNumeroSecondario($this->data, $this->direzione, $this->id_segment);

View File

@ -72,33 +72,34 @@ class Bollo
public function manageRigaMarcaDaBollo() public function manageRigaMarcaDaBollo()
{ {
$riga = $this->fattura->rigaBollo; $riga = $this->fattura->rigaBollo;
$addebita_bollo = $this->fattura->addebita_bollo; $addebita_bollo = $this->fattura->addebita_bollo;
$marca_da_bollo = $this->getBollo(); $marca_da_bollo = $this->getBollo();
$cassa_pred = database()->fetchOne('SELECT percentuale FROM co_rivalse WHERE id='.setting('Cassa previdenziale predefinita'));
// Verifico se la fattura ha righe con rivalsa applicata, esclusa la marca da bollo
$rivalsa = ($this->fattura->rivalsainps > 0 && $this->fattura->rivalsainps != (setting('Importo marca da bollo') * $cassa_pred['percentuale'] / 100)) ? 1 : 0;
// Rimozione riga bollo se nullo // Rimozione riga bollo se nullo
if (empty($addebita_bollo) || empty($marca_da_bollo)) { if (empty($addebita_bollo) || empty($marca_da_bollo)) {
if (!empty($riga)) { if (!empty($riga)) {
$riga->delete(); $riga->delete();
} }
return null; return null;
} }
// Creazione riga bollo se non presente // Creazione riga bollo se non presente
if (empty($riga)) { if (empty($riga)) {
$riga = Components\Riga::build($this->fattura); $riga = Components\Riga::build($this->fattura);
$riga->save();
} }
$riga->prezzo_unitario = $marca_da_bollo; $riga->prezzo_unitario = $marca_da_bollo;
$riga->qta = 1; $riga->qta = 1;
$riga->descrizione = setting('Descrizione addebito bollo'); $riga->descrizione = setting('Descrizione addebito bollo');
$riga->id_iva = setting('Iva da applicare su marca da bollo'); $riga->id_iva = setting('Iva da applicare su marca da bollo');
$riga->idconto = setting('Conto predefinito per la marca da bollo'); $riga->idconto = setting('Conto predefinito per la marca da bollo');
// Applico la rivalsa alla marca da bollo se previsto
if ((setting('Regime Fiscale') == 'RF19') && (!empty(setting('Cassa previdenziale predefinita')))) { if ((setting('Regime Fiscale') == 'RF19') && (!empty(setting('Cassa previdenziale predefinita')))) {
$riga['id_rivalsa_inps'] = setting('Cassa previdenziale predefinita'); $riga['id_rivalsa_inps'] = $rivalsa ? setting('Cassa previdenziale predefinita') : '';
} }
$riga->save(); $riga->save();