Anticipa la data di 2 giorni l'avviso se la scadenza per invio della fattura elettronica di vendita cade di sabato o domenica

This commit is contained in:
Luca 2024-02-24 01:08:41 +01:00
parent 7fdad47f3b
commit e684fe1e12
2 changed files with 8 additions and 4 deletions

View File

@ -33,6 +33,10 @@ if ($module->name == 'Fatture di vendita' && $services_enable) {
$codici_invio = ['GEN', 'QUEUE'];
$data_limite = (new Carbon())->subMonths(6);
$data_limite_invio = (new Carbon())->subDays(10);
// Verifica se la data cade di sabato o domenica
if ($data_limite_invio->isWeekend()) {
$data_limite_invio = $data_limite_invio->subDays(2); // Anticipa la data di 2 giorni se cade di sabato o domenica
}
$data_setting = Carbon::createFromFormat('d/m/Y', setting('Data inizio controlli su stati FE'))->format('Y-m-d');
$documenti = Fattura::where('data', '>', $data_limite)->where('data', '>', $data_setting)->whereIn('codice_stato_fe', ['EC02', 'ERR', 'ERVAL', 'NS', 'GEN', 'QUEUE'])->get();
@ -102,8 +106,8 @@ if ($module->name == 'Fatture di vendita' && $services_enable) {
if (sizeof($documenti_invio) > 0) {
echo '
<div class="alert alert-warning">
<i class="fa fa-clock-o"></i> '.tr('Le seguenti fatture sono in attesa di essere inviate').':<ul>';
<div class="alert push alert-warning">
<h4><i class="icon fa fa-clock-o"></i>'.tr('Attenzione').'</h4>'.tr('Le seguenti fatture sono in attesa di essere inviate').':<ul>';
foreach ($documenti_invio as $documento) {
echo '
<li><b>'.$documento.'</b></li>';

View File

@ -37,7 +37,7 @@ if ($dir == 'entrata') {
$conto = 'acquisti';
}
// Informazioni sulla dichiarazione d'intento, visibili solo finchè la fattura è in bozza
// Informazioni sulla dichiarazione d'intento, visibili solo finché la fattura è in bozza
if ($dir == 'entrata' && !empty($fattura->dichiarazione)) {
$diff = $fattura->dichiarazione->massimale - $fattura->dichiarazione->totale;
$diff_in_days = Carbon::parse($fattura->dichiarazione->data_fine)->diffAsCarbonInterval($fattura->data);
@ -162,7 +162,7 @@ if ($dir == 'entrata' && $fattura->stato->name == 'Bozza') {
}
}
// Verifica aggiuntive sulla sequenzialità dei numeri
if ($dir == 'entrata' && strtotime(str_replace('/', '-', $fattura->data)) >= strtotime(str_replace('/', '-', setting('Data inizio verifica contatore fattura di vendita'))) ) {
if ($dir == 'entrata' && strtotime($fattura->data) >= strtotime(Carbon::createFromFormat('d/m/Y', setting('Data inizio verifica contatore fattura di vendita'))->format('Y-m-d'))) {
$numero_previsto = verifica_numero_fattura($fattura);
if (!empty($numero_previsto)) {
echo '