Fix minori

This commit is contained in:
Pek5892 2024-03-08 16:29:53 +01:00
parent 502dcd326a
commit a615bea36e
10 changed files with 45 additions and 66 deletions

View File

@ -37,11 +37,11 @@ echo '
</div>
<div class="col-md-3">
{[ "type": "select", "label": "'.tr('Modulo del template').'", "name": "module", "values": "query=SELECT `zz_modules`.`id`, `title` AS descrizione FROM `zz_modules` LEFT JOIN `zz_modules_lang` ON (`zz_modules`.`id` = `zz_modules_lang`.`id_record` AND `zz_modules_lang`.`id_lang` = '.prepare(setting('Lingua')).') WHERE `enabled` = 1", "value": "'.$record['id_module'].'", "disabled": "'.!empty($record['id_plugin']).'" ]}
{[ "type": "select", "label": "'.tr('Modulo del template').'", "name": "module", "values": "query=SELECT `zz_modules`.`id`, `title` AS descrizione FROM `zz_modules` LEFT JOIN `zz_modules_lang` ON (`zz_modules`.`id` = `zz_modules_lang`.`id_record` AND `zz_modules_lang`.`id_lang` = '.prepare(setting('Lingua')).') WHERE `enabled` = 1", "value": "'.$record->id_module.'", "disabled": "'.!empty($record->id_plugin).'" ]}
</div>
<div class="col-md-3">
{[ "type": "select", "label": "'.tr('Plugin del template').'", "name": "plugin", "values": "query=SELECT `zz_plugins`.`id`, `zz_plugins_lang`.`title` AS descrizione, `zz_modules_lang`.`name` AS optgroup FROM zz_plugins INNER JOIN `zz_modules` ON `zz_plugins`.`id_module_to` = `zz_modules`.`id` LEFT JOIN `zz_modules_lang` ON (`zz_modules`.`id` = `zz_modules_lang`.`id_record` AND `zz_modules_lang`.`id_lang` = '.prepare(setting('Lingua')).') LEFT JOIN `zz_plugins_lang` ON (`zz_plugins`.`id` = `zz_plugins_lang`.`id_record` AND `zz_plugins_lang`.`id_lang` = '.prepare(setting('Lingua')).') WHERE `enabled` = 1", "value": "'.$record['id_plugin'].'", "disabled": "'.!empty($record['id_module']).'" ]}
{[ "type": "select", "label": "'.tr('Plugin del template').'", "name": "plugin", "values": "query=SELECT `zz_plugins`.`id`, `zz_plugins_lang`.`title` AS descrizione, `zz_modules_lang`.`name` AS optgroup FROM zz_plugins INNER JOIN `zz_modules` ON `zz_plugins`.`id_module_to` = `zz_modules`.`id` LEFT JOIN `zz_modules_lang` ON (`zz_modules`.`id` = `zz_modules_lang`.`id_record` AND `zz_modules_lang`.`id_lang` = '.prepare(setting('Lingua')).') LEFT JOIN `zz_plugins_lang` ON (`zz_plugins`.`id` = `zz_plugins_lang`.`id_record` AND `zz_plugins_lang`.`id_lang` = '.prepare(setting('Lingua')).') WHERE `enabled` = 1", "value": "'.$record->id_plugin.'", "disabled": "'.!empty($record->id_module).'" ]}
</div>
</div>
</div>

View File

@ -22,7 +22,7 @@ include_once __DIR__.'/../../core.php';
use Modules\Checklists\Checklist;
use Models\Module;
$checklist_module = (new Module())->getByName('Checklists')->id_record;
$checklist_module = Module::find((new Module())->getByName('Checklists')->id_record);
if (isset($id_record)) {
$record = Checklist::find($id_record);

View File

@ -19,6 +19,7 @@
include_once __DIR__.'/../../core.php';
use Models\Module;
use Modules\Fatture\Tipo;
$module = Module::find($id_module);
@ -32,10 +33,7 @@ if ($module->name == 'Fatture di vendita') {
$id_anagrafica = !empty(get('idanagrafica')) ? get('idanagrafica') : '';
$idtipodocumento = $dbo->selectOne('co_tipidocumento', ['id'], [
'predefined' => 1,
'dir' => $dir,
])['id'];
$idtipodocumento = Tipo::where('predefined', 1)->where('dir', $dir)->first()->id;
?>
<form action="" method="post" id="add-form">
@ -75,7 +73,7 @@ $idtipodocumento = $dbo->selectOne('co_tipidocumento', ['id'], [
</div>
<div class="col-md-6">
{[ "type": "select", "label": "<?php echo tr('Sezionale'); ?>", "name": "id_segment", "required": 1, "ajax-source": "segmenti", "select-options": <?php echo json_encode(['id_module' => $id_module, 'is_sezionale' => 1]); ?>, "value": "<?php echo $database->selectOne('co_tipidocumento', 'id_segment', ['id' => $idtipodocumento, 'dir' => $dir])['id_segment']; ?>" ]}
{[ "type": "select", "label": "<?php echo tr('Sezionale'); ?>", "name": "id_segment", "required": 1, "ajax-source": "segmenti", "select-options": <?php echo json_encode(['id_module' => $id_module, 'is_sezionale' => 1]); ?>, "value": "<?php echo Tipo::where('id', $idtipodocumento)->where('dir', $dir)->first()->id_segment; ?>" ]}
</div>
</div>

View File

@ -20,9 +20,9 @@
include_once __DIR__.'/../../../core.php';
use Modules\Interventi\Stato;
use Modules\Interventi\Intervento;
$stato_wip = (new Stato())->getByName('WIP')->id_record;
$rs = $dbo->fetchArray('SELECT * FROM `in_interventi` WHERE `in_interventi`.`idstatointervento` = '.prepare($stato_wip).' ORDER BY `data_richiesta` ASC');
$rs = Intervento::where('idstatointervento', '=', Stato::where('codice', '=', 'WIP')->first()->id)->get();
if (!empty($rs)) {
echo '
@ -33,13 +33,13 @@ if (!empty($rs)) {
</tr>';
foreach ($rs as $r) {
$data_richiesta = !empty($r['data_richiesta']) ? Translator::dateToLocale($r['data_richiesta']) : '';
$data_richiesta = !empty($r->data_richiesta) ? Translator::dateToLocale($r->data_richiesta) : '';
echo '
<tr >
<td>
'.Modules::link('Interventi', $r['id'], 'Intervento n. '.$r['codice'].' del '.$data_richiesta).'<br>
<small class="help-block">'.$r['ragione_sociale'].'</small>
'.Modules::link('Interventi', $r->id, 'Intervento n. '.$r['codice'].' del '.$data_richiesta).'<br>
<small class="help-block">'.$r->ragione_sociale.'</small>
</td>
<td class="text-center">'.$data_richiesta.'</td>
</tr>';

View File

@ -20,10 +20,9 @@
include_once __DIR__.'/../../../core.php';
use Modules\Interventi\Stato;
use Models\Module;
use Modules\Interventi\Intervento;
$stato = (new Stato())->getByName('TODO')->id_record;
$rs = $dbo->fetchArray('SELECT * FROM `in_interventi` WHERE `in_interventi`.`idstatointervento` = '.prepare($stato).' ORDER BY `data_richiesta` ASC');
$rs = Intervento::where('idstatointervento', '=', Stato::where('codice', '=', 'TODO')->first()->id)->get();
if (!empty($rs)) {
echo '
@ -38,33 +37,33 @@ if (!empty($rs)) {
</tr>';
foreach ($rs as $r) {
$rs_tecnici = $dbo->fetchArray("SELECT GROUP_CONCAT(ragione_sociale SEPARATOR ',') AS tecnici FROM an_anagrafiche INNER JOIN in_interventi_tecnici_assegnati ON in_interventi_tecnici_assegnati.id_tecnico=an_anagrafiche.idanagrafica WHERE id_intervento=".prepare($r['id']).' GROUP BY id_intervento');
$rs_tecnici = $dbo->fetchArray("SELECT GROUP_CONCAT(ragione_sociale SEPARATOR ',') AS tecnici FROM an_anagrafiche INNER JOIN in_interventi_tecnici_assegnati ON in_interventi_tecnici_assegnati.id_tecnico=an_anagrafiche.idanagrafica WHERE id_intervento=".prepare($r->id).' GROUP BY id_intervento');
echo '
<tr id="int_'.$r['id'].'">
<td><a target="_blank" >'.Modules::link('Interventi', $r['id'], $r['codice']).'</a></td>
<td><a target="_blank" >'.Modules::link('Anagrafiche', $r['idanagrafica'], $dbo->fetchOne('SELECT ragione_sociale FROM an_anagrafiche WHERE idanagrafica='.prepare($r['idanagrafica']))['ragione_sociale']).'<br><small>Presso: ';
<tr id="int_'.$r->id.'">
<td><a target="_blank" >'.Modules::link('Interventi', $r->id, $r->codice).'</a></td>
<td><a target="_blank" >'.Modules::link('Anagrafiche', $r->idanagrafica, $dbo->fetchOne('SELECT ragione_sociale FROM an_anagrafiche WHERE idanagrafica='.prepare($r->idanagrafica))['ragione_sociale']).'<br><small>Presso: ';
// Sede promemoria
if ($r['idsede'] == '-1') {
if ($r->idsede == '-1') {
echo '- Nessuna -';
} elseif (empty($r['idsede'])) {
} elseif (empty($r->idsede)) {
echo tr('Sede legale');
} else {
$rsp2 = $dbo->fetchArray("SELECT id, CONCAT( CONCAT_WS( ' (', CONCAT_WS(', ', nomesede, citta), indirizzo ), ')') AS descrizione FROM an_sedi WHERE id=".prepare($r['idsede']));
$rsp2 = $dbo->fetchArray("SELECT id, CONCAT( CONCAT_WS( ' (', CONCAT_WS(', ', nomesede, citta), indirizzo ), ')') AS descrizione FROM an_sedi WHERE id=".prepare($r->idsede));
echo $rsp2[0]['descrizione'];
}
echo '
</small>
</td>
<td>'.Translator::dateToLocale($r['data_richiesta']).' '.((empty($r['data_scadenza'])) ? '' : '<br><small>Entro il '.Translator::dateToLocale($r['data_scadenza']).'</small>').'</td>
<td>'.Translator::dateToLocale($r->data_richiesta).' '.((empty($r->data_scadenza)) ? '' : '<br><small>Entro il '.Translator::dateToLocale($r->data_scadenza).'</small>').'</td>
<td>
'.$rs_tecnici[0]['tecnici'].'
</td>
<td>'.$dbo->fetchOne("SELECT CONCAT_WS(' - ', `codice`, `name`) AS descrizione FROM `in_tipiintervento` LEFT JOIN `in_tipiintervento_lang` ON (`in_tipiintervento`.`id` = `in_tipiintervento_lang`.`id_record` AND `in_tipiintervento_lang`.`id_lang` = ".prepare(setting('Lingua')).") WHERE `id`=".prepare($r['idtipointervento']))['descrizione'].'</td>
<td>'.$dbo->fetchOne("SELECT CONCAT_WS(' - ', `codice`, `name`) AS descrizione FROM `in_tipiintervento` LEFT JOIN `in_tipiintervento_lang` ON (`in_tipiintervento`.`id` = `in_tipiintervento_lang`.`id_record` AND `in_tipiintervento_lang`.`id_lang` = ".prepare(setting('Lingua')).") WHERE `in_tipiintervento`.`id`=".prepare($r->idtipointervento))['descrizione'].'</td>
<td>'.nl2br($r['richiesta']).'</td>
<td>'.nl2br($r->richiesta).'</td>
';
echo '

View File

@ -22,12 +22,12 @@ use Modules\Iva\Aliquota;
switch (filter('op')) {
case 'update':
$esente = post('esente');
$esente = post('esente') ?: 0;
$percentuale = empty($esente) ? post('percentuale') : 0;
$indetraibile = post('indetraibile');
$dicitura = post('dicitura');
$codice = post('codice');
$codice_natura_fe = post('codice_natura_fe');
$codice_natura_fe = post('codice_natura_fe') ?: null;
$esigibilita = post('esigibilita');
$descrizione = post('descrizione');
@ -36,7 +36,7 @@ switch (filter('op')) {
$iva->esente = $esente;
$iva->percentuale = $percentuale;
$iva->indetraibile = $indetraibile;
$iva->dicitura = $dicitura;
$iva->dicitura = $dicitura?: 0;
$iva->codice = $codice;
$iva->codice_natura_fe = $codice_natura_fe;
$iva->esigibilita = $esigibilita;
@ -44,9 +44,9 @@ switch (filter('op')) {
$iva->save();
// Messaggio di avvertenza
if ((stripos('N6', (string) $codice_natura) === 0) && $esigibilita == 'S') {
if ((stripos('N6', (string) $codice_natura_fe) === 0) && $esigibilita == 'S') {
flash()->warning(tr('Combinazione di natura IVA _TYPE_ ed esigibilità non compatibile', [
'_TYPE_' => $codice_natura,
'_TYPE_' => $codice_natura_fe,
]));
}
@ -63,7 +63,7 @@ switch (filter('op')) {
$codice = post('codice');
$esente = post('esente');
$percentuale = empty($esente) ? post('percentuale') : 0;
$codice_natura = post('codice_natura_fe') ?: null;
$codice_natura = post('codice_natura_fe') ?: '';
$esigibilita = post('esigibilita');
$indetraibile = post('indetraibile');

View File

@ -19,21 +19,12 @@
include_once __DIR__.'/../../../core.php';
use Models\Module;
use Modules\Preventivi\Preventivo;
use Modules\Preventivi\Stato;
$id_module = (new Module())->GetByName('Preventivi')->id_record;
$rs = $dbo->fetchArray("SELECT *,
`an_anagrafiche`.`ragione_sociale` AS ragione_sociale
FROM
`co_preventivi`
INNER JOIN `an_anagrafiche` ON `co_preventivi`.`idanagrafica`=`an_anagrafiche`.`idanagrafica`
INNER JOIN `co_statipreventivi` ON `co_preventivi`.`idstato`=`co_statipreventivi`.`id`
LEFT JOIN `co_statipreventivi_lang` ON (`co_statipreventivi`.`id`=`co_statipreventivi_lang`.`id_record` AND `co_statipreventivi_lang`.`id_lang` = ".prepare(setting('Lingua')).")
WHERE
`co_statipreventivi_lang`.`name` = 'In lavorazione'
AND `default_revision` = 1
ORDER BY
`data_conclusione` ASC");
$rs = Preventivo::where('idstato', '=', (new Stato())->getByName('In lavorazione')->id_record)->where('default_revision', '=', 1)->get();
if (!empty($rs)) {
echo "
@ -45,16 +36,16 @@ if (!empty($rs)) {
</tr>";
foreach ($rs as $preventivo) {
$data_accettazione = ($preventivo['data_accettazione'] != '0000-00-00') ? Translator::dateToLocale($preventivo['data_accettazione']) : '';
$data_conclusione = ($preventivo['data_conclusione'] != '0000-00-00') ? Translator::dateToLocale($preventivo['data_conclusione']) : '';
$data_accettazione = ($preventivo->data_accettazione != '0000-00-00') ? Translator::dateToLocale($preventivo->data_accettazione) : '';
$data_conclusione = ($preventivo->data_conclusione != '0000-00-00') ? Translator::dateToLocale($preventivo->data_conclusione) : '';
if (strtotime($preventivo['data_conclusione']) < strtotime(date('Y-m-d')) && $data_conclusione != '') {
if (strtotime($preventivo->data_conclusione) < strtotime(date('Y-m-d')) && $data_conclusione != '') {
$attr = ' class="danger"';
} else {
$attr = '';
}
echo '<tr '.$attr.'><td><a href="'.base_path().'/editor.php?id_module='.$id_module.'&id_record='.$preventivo['id'].'">'.$preventivo['nome']."</a><br><small class='help-block'>".$preventivo['ragione_sociale'].'</small></td>';
echo '<tr '.$attr.'><td><a href="'.base_path().'/editor.php?id_module='.$id_module.'&id_record='.$preventivo->id.'">'.$preventivo->nome."</a><br><small class='help-block'>".$preventivo->ragione_sociale.'</small></td>';
echo '<td '.$attr.'>'.$data_accettazione.'</td>';
echo '<td '.$attr.'>'.$data_conclusione.'</td></tr>';
}

View File

@ -21,21 +21,11 @@ include_once __DIR__.'/../../../core.php';
use Modules\Preventivi\Stato;
use Models\Module;
use Modules\Preventivi\Preventivo;
$id_module = (new Module())->GetByName('Preventivi')->id_record;
$rs = $dbo->fetchArray('SELECT *,
`an_anagrafiche`.`ragione_sociale` AS ragione_sociale
FROM
`co_preventivi`
INNER JOIN `an_anagrafiche` ON `co_preventivi`.`idanagrafica`=`an_anagrafiche`.`idanagrafica`
INNER JOIN `co_statipreventivi` ON `co_preventivi`.`idstato`=`co_statipreventivi`.`id`
LEFT JOIN `co_statipreventivi_lang` ON (`co_statipreventivi_lang`.`id_record` = `co_statipreventivi`.`id` AND `co_statipreventivi_lang`.`id_lang` = '.prepare(setting('Lingua')).')
WHERE
`is_fatturabile` = 1
AND `default_revision` = 1
ORDER BY
`data_conclusione` ASC');
$stati = Stato::where('is_fatturabile', 1)->pluck('id')->toArray();
$rs = Preventivo::whereIn('idstato', $stati)->where('default_revision', 1)->get();
if (!empty($rs)) {
echo "
@ -48,11 +38,11 @@ if (!empty($rs)) {
</tr>";
foreach ($rs as $preventivo) {
$data_accettazione = ($preventivo['data_accettazione'] != '0000-00-00') ? Translator::dateToLocale($preventivo['data_accettazione']) : '';
$data_conclusione = ($preventivo['data_conclusione'] != '0000-00-00') ? Translator::dateToLocale($preventivo['data_conclusione']) : '';
$stato_preventivo = Stato::find($preventivo['idstato'])->name;
$data_accettazione = ($preventivo->data_accettazione != '0000-00-00') ? Translator::dateToLocale($preventivo->data_accettazione) : '';
$data_conclusione = ($preventivo->data_conclusione != '0000-00-00') ? Translator::dateToLocale($preventivo->data_conclusione) : '';
$stato_preventivo = Stato::find($preventivo->idstato)->name;
if (strtotime($preventivo['data_conclusione']) < strtotime(date('Y-m-d')) && $data_conclusione != '') {
if (strtotime($preventivo->data_conclusione) < strtotime(date('Y-m-d')) && $data_conclusione != '') {
$attr = ' class="danger"';
} else {
$attr = '';

View File

@ -85,7 +85,7 @@ switch (post('op')) {
'clause' => '1=1',
'pattern' => $pattern,
'note' => post('note'),
'predefined' => $predefined,
'predefined' => $predefined ?: 0,
'is_sezionale' => post('is_sezionale'),
]);

View File

@ -19,6 +19,7 @@
include_once __DIR__.'/../../../core.php';
use Models\Plugin;
use Models\Module;
$mesi = [
1 => 'Gennaio',