Migliorie minori fatture di vendita
This commit is contained in:
parent
d5cecabdae
commit
df52e1749a
|
@ -85,6 +85,7 @@ switch (post('op')) {
|
|||
if ((setting('Data emissione fattura automatica') == 1) && ($dir == 'entrata') && ($stato->descrizione == 'Emessa') && (Carbon::parse($data)->lessThan(Carbon::parse($data_fattura_precedente['datamax']))) && (!empty($data_fattura_precedente['datamax']))){
|
||||
$fattura->data = $data_fattura_precedente['datamax'];
|
||||
$fattura->data_competenza = $data_fattura_precedente['datamax'];
|
||||
flash()->info(tr('Data di emissione aggiornata, come da impostazione!'));
|
||||
} else {
|
||||
$fattura->data = post('data');
|
||||
$fattura->data_competenza = post('data_competenza');
|
||||
|
@ -217,6 +218,21 @@ switch (post('op')) {
|
|||
}
|
||||
}
|
||||
|
||||
// Controllo sulla presenza di fattura di vendita con lo stesso numero nello stesso periodo
|
||||
if ($direzione == 'entrata') {
|
||||
$count = Fattura::where('numero_esterno', $fattura->numero_esterno)
|
||||
->where('id', '!=', $id_record)
|
||||
->where('data', '>=', $_SESSION['period_start'])
|
||||
->where('data', '<=', $_SESSION['period_end'])
|
||||
->where('numero_esterno', '!=', NULL)
|
||||
->whereHas('tipo', function ($query) use ($direzione) {
|
||||
$query->where('dir', '=', $direzione);
|
||||
})->count();
|
||||
if (!empty($count)) {
|
||||
flash()->warning(tr('Esiste già una fattura con lo stesso numero!'));
|
||||
}
|
||||
}
|
||||
|
||||
flash()->info(tr('Fattura modificata correttamente!'));
|
||||
|
||||
break;
|
||||
|
|
|
@ -216,45 +216,6 @@ if ($dir == 'entrata') {
|
|||
</div>
|
||||
|
||||
<div class="panel-body">
|
||||
|
||||
<?php
|
||||
|
||||
if ($dir == 'entrata') {
|
||||
$rs2 = $dbo->fetchArray('SELECT piva, codice_fiscale, citta, indirizzo, cap, id_nazione, tipo FROM an_anagrafiche WHERE idanagrafica='.prepare($record['idanagrafica']));
|
||||
$campi_mancanti = [];
|
||||
|
||||
//di default è un azienda e chiedo la partita iva
|
||||
if (empty($rs2[0]['piva']) and empty($rs2[0]['codice_fiscale']) and (empty($rs2[0]['tipo']) or $rs2[0]['tipo'] == 'Azienda')) {
|
||||
array_push($campi_mancanti, 'Partita IVA');
|
||||
array_push($campi_mancanti, 'Codice fiscale');
|
||||
}
|
||||
|
||||
$nazione = Nazione::find($rs2[0]['id_nazione']);
|
||||
//se è un privato o un ente pubblico controllo il codice fiscale
|
||||
if ((($rs2[0]['tipo'] == 'Privato' && $nazione->iso2 == 'IT') or $rs2[0]['tipo'] == 'Ente pubblico') and empty($rs2[0]['codice_fiscale'])) {
|
||||
array_push($campi_mancanti, 'Codice fiscale');
|
||||
}
|
||||
|
||||
if ($rs2[0]['citta'] == '') {
|
||||
array_push($campi_mancanti, 'Città');
|
||||
}
|
||||
if ($rs2[0]['indirizzo'] == '') {
|
||||
array_push($campi_mancanti, 'Indirizzo');
|
||||
}
|
||||
if ($rs2[0]['cap'] == '') {
|
||||
array_push($campi_mancanti, 'C.A.P.');
|
||||
}
|
||||
if (empty($rs2[0]['id_nazione'])) {
|
||||
array_push($campi_mancanti, 'Nazione');
|
||||
}
|
||||
|
||||
if (sizeof($campi_mancanti) > 0) {
|
||||
echo "<div class='alert alert-warning'><i class='fa fa-warning'></i> Prima di procedere alla stampa completa i seguenti campi dell'anagrafica Cliente: <b>".implode(', ', $campi_mancanti).'</b><br/>
|
||||
'.Modules::link('Anagrafiche', $record['idanagrafica'], tr('Vai alla scheda anagrafica'), null).'</div>';
|
||||
}
|
||||
}
|
||||
?>
|
||||
|
||||
<div class="row">
|
||||
<?php
|
||||
if ($dir == 'uscita') {
|
||||
|
@ -1011,7 +972,7 @@ echo '
|
|||
// Eliminazione ddt solo se ho accesso alla sede aziendale
|
||||
$field_name = ($dir == 'entrata') ? 'idsede_partenza' : 'idsede_destinazione';
|
||||
if (in_array($record[$field_name], $user->sedi)) {
|
||||
$disabilita_eliminazione = in_array($fattura->codice_stato_fe, ['RC', 'MC', 'EC01']);
|
||||
$disabilita_eliminazione = in_array($fattura->codice_stato_fe, ['RC', 'MC', 'EC01', 'WAIT']);
|
||||
|
||||
echo '
|
||||
<a class="btn btn-danger ask '.($disabilita_eliminazione ? 'disabled' : '').'" data-backto="record-list" '.($disabilita_eliminazione ? 'disabled' : '').'>
|
||||
|
|
|
@ -0,0 +1 @@
|
|||
UPDATE `zz_settings` SET `help` = "Modifica automaticamente la data di emissione di una fattura al momento della sua emissione, impostando data successiva a quella dell'ultima fattura emessa" WHERE `zz_settings`.`nome` = 'Data emissione fattura automatica';
|
Loading…
Reference in New Issue