Fix generazione scadenze
This commit is contained in:
parent
9e4ced1fea
commit
0b402f12d1
|
@ -588,8 +588,9 @@ class Fattura extends Document
|
||||||
// Fix dei campi statici
|
// Fix dei campi statici
|
||||||
$this->id_riga_bollo = $this->gestoreBollo->manageRigaMarcaDaBollo();
|
$this->id_riga_bollo = $this->gestoreBollo->manageRigaMarcaDaBollo();
|
||||||
|
|
||||||
|
$stato = (new Stato())->getByName($this->stato['descrizione']);
|
||||||
// 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->name == 'Bozza' && $stato->name == '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);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -599,8 +600,8 @@ class Fattura extends Document
|
||||||
// Operazioni al cambiamento di stato
|
// Operazioni al cambiamento di stato
|
||||||
// Bozza o Annullato -> Stato diverso da Bozza o Annullato
|
// Bozza o Annullato -> Stato diverso da Bozza o Annullato
|
||||||
if (
|
if (
|
||||||
(in_array($stato_precedente->descrizione, ['Bozza', 'Annullata'])
|
(in_array($stato_precedente->name, ['Bozza', 'Annullata'])
|
||||||
&& !in_array($this->stato['descrizione'], ['Bozza', 'Annullata']))
|
&& !in_array($stato->name, ['Bozza', 'Annullata']))
|
||||||
|| $options[0] == 'forza_emissione'
|
|| $options[0] == 'forza_emissione'
|
||||||
) {
|
) {
|
||||||
// Registrazione scadenze
|
// Registrazione scadenze
|
||||||
|
@ -609,7 +610,7 @@ class Fattura extends Document
|
||||||
// Registrazione movimenti
|
// Registrazione movimenti
|
||||||
$this->gestoreMovimenti->registra();
|
$this->gestoreMovimenti->registra();
|
||||||
} // Stato qualunque -> Bozza o Annullato
|
} // Stato qualunque -> Bozza o Annullato
|
||||||
elseif (in_array($this->stato['descrizione'], ['Bozza', 'Annullata'])) {
|
elseif (in_array($stato->name, ['Bozza', 'Annullata'])) {
|
||||||
// Rimozione delle scadenza
|
// Rimozione delle scadenza
|
||||||
$this->rimuoviScadenze();
|
$this->rimuoviScadenze();
|
||||||
|
|
||||||
|
@ -620,7 +621,7 @@ class Fattura extends Document
|
||||||
$this->movimentiContabili()->delete();
|
$this->movimentiContabili()->delete();
|
||||||
}
|
}
|
||||||
|
|
||||||
if ($this->changes['data_competenza'] && !in_array($this->stato['descrizione'], ['Bozza', 'Annullata'])) {
|
if ($this->changes['data_competenza'] && !in_array($stato->name, ['Bozza', 'Annullata'])) {
|
||||||
$movimenti = Movimento::where('iddocumento', $this->id)->where('primanota', 0)->get();
|
$movimenti = Movimento::where('iddocumento', $this->id)->where('primanota', 0)->get();
|
||||||
foreach ($movimenti as $movimento) {
|
foreach ($movimenti as $movimento) {
|
||||||
$movimento->data = $this->data_competenza;
|
$movimento->data = $this->data_competenza;
|
||||||
|
@ -643,7 +644,7 @@ class Fattura extends Document
|
||||||
}
|
}
|
||||||
|
|
||||||
// Operazioni automatiche per le Fatture Elettroniche
|
// Operazioni automatiche per le Fatture Elettroniche
|
||||||
if ($this->direzione == 'entrata' && $stato_precedente->descrizione == 'Bozza' && $this->stato['descrizione'] == 'Emessa') {
|
if ($this->direzione == 'entrata' && $stato_precedente->name == 'Bozza' && $stato->name == 'Emessa') {
|
||||||
$stato_fe = database()->fetchOne('SELECT * FROM fe_stati_documento WHERE codice = '.prepare($this->codice_stato_fe));
|
$stato_fe = database()->fetchOne('SELECT * FROM fe_stati_documento WHERE codice = '.prepare($this->codice_stato_fe));
|
||||||
$abilita_genera = empty($this->codice_stato_fe) || intval($stato_fe['is_generabile']);
|
$abilita_genera = empty($this->codice_stato_fe) || intval($stato_fe['is_generabile']);
|
||||||
|
|
||||||
|
@ -788,7 +789,7 @@ class Fattura extends Document
|
||||||
public function scopeContabile($query)
|
public function scopeContabile($query)
|
||||||
{
|
{
|
||||||
return $query->whereHas('stato', function (Builder $query) {
|
return $query->whereHas('stato', function (Builder $query) {
|
||||||
$query->whereIn('descrizione', ['Emessa', 'Parzialmente pagato', 'Pagato']);
|
$query->whereIn('name', ['Emessa', 'Parzialmente pagato', 'Pagato']);
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue