Fix Controlli gestionale

This commit is contained in:
valentina 2024-08-07 09:34:28 +02:00
parent c4888d769d
commit c743e11b91
4 changed files with 38 additions and 16 deletions

View File

@ -442,14 +442,14 @@ foreach ($requirements as $key => $values) {
}
echo '
<div class="card card-'.($general_status ? 'success collapsed-card' : 'danger').'">
<div class="card card-outline card-'.($general_status ? 'success collapsed-card' : 'danger').'">
<div class="card-header with-border">
<h3 class="card-title">'.$key.'</h3>';
if ($general_status) {
echo '
<div class="card-tools pull-right">
<button type="button" class="btn btn-tool" data-widget="collapse">
<button type="button" class="btn btn-tool" data-card-widget="collapse">
<i class="fa fa-plus"></i>
</button>
</div>';

View File

@ -188,14 +188,14 @@ function search(button) {
// Verifiche di integrità
echo '
<div class="col-md-4">
<div class="card card-primary">
<div class="card card-primary card-outline">
<div class="card-header with-border">
<h3 class="card-title">
'.tr("Verifica l'integrità dell'installazione").' <span class="tip" title="'.tr("Verifica l'integrità della tua installazione attraverso un controllo sui checksum dei file e sulla struttura del database").'."><i class="fa fa-question-circle-o"></i></span>
</h3>
</div>
<div class="card-body">
<button type="button" class="btn btn-primary btn-block" onclick="checksum(this)">
<button type="button" class="btn btn-info btn-block" onclick="checksum(this)">
<i class="fa fa-list-alt"></i> '.tr('Controlla file').'
</button>
@ -203,7 +203,7 @@ echo '
<i class="fa fa-database"></i> '.tr('Controlla database').'
</button>
<button type="button" class="btn btn-block" onclick="controlli(this)">
<button type="button" class="btn btn-info btn-block" onclick="controlli(this)">
<i class="fa fa-stethoscope"></i> '.tr('Controlla gestionale').'
</button>
</div>
@ -214,7 +214,7 @@ echo '
echo '
<div class="col-md-4">
<div class="card card-primary">
<div class="card card-primary card-outline">
<div class="card-header with-border">
<h3 class="card-title">
'.tr('Ricerca aggiornamenti').' <span class="tip" title="'.tr('Controllo automatico della presenza di aggiornamenti per il gestionale').'."><i class="fa fa-question-circle-o"></i></span>
@ -238,7 +238,7 @@ echo ' </div>
// Form di caricamento aggiornamenti gestionale o moduli
echo '
<div class="col-md-4">
<div class="card card-primary">
<div class="card card-primary card-outline">
<div class="card-header with-border">
<h3 class="card-title">
'.tr('Carica aggiornamenti o nuovi moduli').' <span class="tip" title="'.tr('Form di caricamento aggiornamenti del gestionale e innesti di moduli e plugin').'."><i class="fa fa-question-circle-o"></i></span>

View File

@ -70,16 +70,22 @@ class PianoConti extends Controllo
foreach ($anagrafiche_interessate as $anagrafica) {
$tipi = explode(',', (string) $anagrafica['tipi_anagrafica']);
$cliente = in_array('Cliente', $tipi) && empty($anagrafica['idconto_cliente']);
$fornitore = in_array('Fornitore', $tipi) && empty($anagrafica['idconto_fornitore']);
$cliente = in_array('Cliente', $tipi);
$fornitore = in_array('Fornitore', $tipi);
$is_esistente = 0;
$descrizione = 0;
if ($cliente || $fornitore) {
$is_esistente = $database->fetchOne('SELECT id FROM co_pianodeiconti3 WHERE id = '.$anagrafica['idconto_cliente'].' OR id = '.$anagrafica['idconto_fornitore']);
$descrizione = null;
$descrizione = null;
if ($cliente && $fornitore) {
$descrizione = tr("L'anagrafica corrente non ha impostati i conti relativi al Piano dei Conti");
} elseif ($cliente) {
$descrizione = tr("L'anagrafica corrente non ha impostati il conto Cliente relativo al Piano dei Conti");
} elseif ($fornitore) {
$descrizione = tr("L'anagrafica corrente non ha impostati il conto Fornitore relativo al Piano dei Conti");
if (($cliente && $fornitore) && (empty($anagrafica['idconto_cliente']) || empty($anagrafica['idconto_fornitore']) || !$is_esistente)) {
$descrizione = tr("L'anagrafica corrente non ha impostati i conti relativi al Piano dei Conti");
} elseif ($cliente && (empty($anagrafica['idconto_cliente'])) || !$is_esistente) {
$descrizione = tr("L'anagrafica corrente non ha impostati il conto Cliente relativo al Piano dei Conti");
} elseif ($fornitore && (empty($anagrafica['idconto_fornitore'])) || !$is_esistente) {
$descrizione = tr("L'anagrafica corrente non ha impostati il conto Fornitore relativo al Piano dei Conti");
}
}
if (!empty($descrizione)) {

View File

@ -112,6 +112,14 @@ class Anagrafica extends Model
// Collegamento conto
$anagrafica->idconto_cliente = $id_conto;
$anagrafica->save();
} else {
$conto = $anagrafica->idconto_cliente;
$is_esistente = database()->fetchOne('SELECT id FROM co_pianodeiconti3 WHERE id = '.$anagrafica['idconto_cliente']);
if (!$is_esistente) {
$anagrafica->idconto_cliente = null;
$anagrafica->save();
Anagrafica::fixCliente($anagrafica);
}
}
}
@ -124,6 +132,14 @@ class Anagrafica extends Model
// Collegamento conto
$anagrafica->idconto_fornitore = $id_conto;
$anagrafica->save();
} else {
$conto = $anagrafica->idconto_fornitore;
$is_esistente = database()->fetchOne('SELECT id FROM co_pianodeiconti3 WHERE id = '.$anagrafica['idconto_fornitore']);
if (!$is_esistente) {
$anagrafica->idconto_fornitore = null;
$anagrafica->save();
Anagrafica::fixFornitore($anagrafica);
}
}
}