Stile del codice
This commit is contained in:
parent
eb0d8cf932
commit
7c91131021
|
@ -49,7 +49,7 @@ Dopo l'esecuzione di queste azioni, il gestionale effettuerà automaticamente il
|
|||
|
||||
## Migrazione dalla versione 1.x
|
||||
|
||||
E' possibile effettuare la migrazione da una qualsiasi versione 1.x alla nuova 2.0, seguendo una procedura un po’ diversa dalle precedenti:
|
||||
E' possibile effettuare la migrazione da una qualsiasi versione 1.x alla nuova 2.0, seguendo una procedura un po’ diversa dalle precedenti:
|
||||
|
||||
1. Scaricare la versione 2.0 per la migrazione da SourceForge ([openstamanager-2.0-migrazione.zip](https://sourceforge.net/projects/openstamanager/files/openstamanager/openstamanager-2.x/))
|
||||
2. Creare un backup completo della versione in uso
|
||||
|
|
|
@ -63,7 +63,7 @@ La licenza in utilizzo è la GNU General Public License 3.0 (GPL 3.0).
|
|||
|
||||
### Modulare e personalizzabile
|
||||
|
||||
OpenSTAManager possiede una struttura fortemente modulare, che ne permette la rapida espandibilità e, nello specifico, la realizzazione di funzionalità _ad hoc_, personalizzate nel modo più completo secondo le richieste del cliente.
|
||||
OpenSTAManager possiede una struttura fortemente modulare, che ne permette la rapida espandibilità e, nello specifico, la realizzazione di funzionalità _ad hoc_, personalizzate nel modo più completo secondo le richieste del cliente.
|
||||
|
||||
### Multipiattaforma e user friendly
|
||||
|
||||
|
|
|
@ -203,7 +203,7 @@ switch (post('op')) {
|
|||
$rs_tipiintervento = $dbo->fetchArray('SELECT * FROM in_tipiintervento');
|
||||
|
||||
for ($i = 0; $i < count($rs_tipiintervento); ++$i) {
|
||||
if ($dbo->query('INSERT INTO in_tariffe( idtecnico, idtipointervento, costo_ore, costo_km, costo_dirittochiamata, costo_ore_tecnico, costo_km_tecnico, costo_dirittochiamata_tecnico ) VALUES( '.prepare($new_id).', '.prepare($rs_tipiintervento[$i]['idtipointervento']).', (SELECT costo_orario FROM in_tipiintervento WHERE idtipointervento='.prepare($rs_tipiintervento[$i]['idtipointervento']).'), (SELECT costo_km FROM in_tipiintervento WHERE idtipointervento='.prepare($rs_tipiintervento[$i]['idtipointervento']).'), (SELECT costo_diritto_chiamata FROM in_tipiintervento WHERE idtipointervento='.prepare($rs_tipiintervento[$i]['idtipointervento']).'), (SELECT costo_orario_tecnico FROM in_tipiintervento WHERE idtipointervento='.prepare($rs_tipiintervento[$i]['idtipointervento']).'), (SELECT costo_km_tecnico FROM in_tipiintervento WHERE idtipointervento='.prepare($rs_tipiintervento[$i]['idtipointervento']).'), (SELECT costo_diritto_chiamata_tecnico FROM in_tipiintervento WHERE idtipointervento='.prepare($rs_tipiintervento[$i]['idtipointervento']).') )')) {
|
||||
if ($dbo->query('INSERT INTO in_tariffe( idtecnico, idtipointervento, costo_ore, costo_km, costo_dirittochiamata, costo_ore_tecnico, costo_km_tecnico, costo_dirittochiamata_tecnico ) VALUES( '.prepare($new_id).', '.prepare($rs_tipiintervento[$i]['idtipointervento']).', (SELECT costo_orario FROM in_tipiintervento WHERE idtipointervento='.prepare($rs_tipiintervento[$i]['idtipointervento']).'), (SELECT costo_km FROM in_tipiintervento WHERE idtipointervento='.prepare($rs_tipiintervento[$i]['idtipointervento']).'), (SELECT costo_diritto_chiamata FROM in_tipiintervento WHERE idtipointervento='.prepare($rs_tipiintervento[$i]['idtipointervento']).'), (SELECT costo_orario_tecnico FROM in_tipiintervento WHERE idtipointervento='.prepare($rs_tipiintervento[$i]['idtipointervento']).'), (SELECT costo_km_tecnico FROM in_tipiintervento WHERE idtipointervento='.prepare($rs_tipiintervento[$i]['idtipointervento']).'), (SELECT costo_diritto_chiamata_tecnico FROM in_tipiintervento WHERE idtipointervento='.prepare($rs_tipiintervento[$i]['idtipointervento']).') )')) {
|
||||
//flash()->info(tr('Informazioni salvate correttamente!'));
|
||||
} else {
|
||||
flash()->error(tr("Errore durante l'importazione tariffe!"));
|
||||
|
|
|
@ -358,7 +358,7 @@ if (!$cliente) {
|
|||
if (in_array('Cliente', explode(',', $record['tipianagrafica']))) {
|
||||
?>
|
||||
<div class="col-md-6">
|
||||
{[ "type": "select", "label": "Agenti secondari", "multiple": "1", "name": "idagenti[]", "values": "query=SELECT an_anagrafiche.idanagrafica AS id, IF(deleted_at IS NOT NULL, CONCAT(ragione_sociale, ' (Eliminato)'), ragione_sociale ) AS descrizione FROM an_anagrafiche INNER JOIN (an_tipianagrafiche_anagrafiche INNER JOIN an_tipianagrafiche ON an_tipianagrafiche_anagrafiche.idtipoanagrafica=an_tipianagrafiche.idtipoanagrafica) ON an_anagrafiche.idanagrafica=an_tipianagrafiche_anagrafiche.idanagrafica WHERE (descrizione='Agente' AND deleted_at IS NULL AND an_anagrafiche.idanagrafica NOT IN (SELECT idagente FROM an_anagrafiche WHERE idanagrafica = <?php echo prepare($record['idanagrafica']); ?> )) OR (an_anagrafiche.idanagrafica IN (SELECT idagente FROM an_anagrafiche_agenti WHERE idanagrafica = <?php echo prepare($record['idanagrafica']); ?> ) ) ORDER BY ragione_sociale", "value": "$idagenti$" ]}
|
||||
{[ "type": "select", "label": "Agenti secondari", "multiple": "1", "name": "idagenti[]", "values": "query=SELECT an_anagrafiche.idanagrafica AS id, IF(deleted_at IS NOT NULL, CONCAT(ragione_sociale, ' (Eliminato)'), ragione_sociale ) AS descrizione FROM an_anagrafiche INNER JOIN (an_tipianagrafiche_anagrafiche INNER JOIN an_tipianagrafiche ON an_tipianagrafiche_anagrafiche.idtipoanagrafica=an_tipianagrafiche.idtipoanagrafica) ON an_anagrafiche.idanagrafica=an_tipianagrafiche_anagrafiche.idanagrafica WHERE (descrizione='Agente' AND deleted_at IS NULL AND an_anagrafiche.idanagrafica NOT IN (SELECT idagente FROM an_anagrafiche WHERE idanagrafica = <?php echo prepare($record['idanagrafica']); ?> )) OR (an_anagrafiche.idanagrafica IN (SELECT idagente FROM an_anagrafiche_agenti WHERE idanagrafica = <?php echo prepare($record['idanagrafica']); ?> ) ) ORDER BY ragione_sociale", "value": "$idagenti$" ]}
|
||||
</div>
|
||||
|
||||
<div class="col-md-3">
|
||||
|
@ -450,10 +450,10 @@ if (empty($record['deleted_at'])) {
|
|||
SELECT `in_interventi`.`id`, `in_interventi`.`data_richiesta`, `in_interventi`.`codice` AS numero, 0 AS numero_esterno, "Intervento" AS tipo_documento, 0 AS dir FROM `in_interventi` JOIN `in_interventi_tecnici` ON `in_interventi`.`id` = `in_interventi_tecnici`.`idintervento` WHERE `in_interventi`.`id` IN (SELECT `idintervento` FROM `in_interventi_tecnici` WHERE `idtecnico` = '.prepare($id_record).' OR `in_interventi`.`idanagrafica` = '.prepare($id_record).' )
|
||||
|
||||
UNION
|
||||
SELECT `co_contratti`.`id`, `co_contratti`.`data_bozza`, `co_contratti`.`numero`, 0 AS numero_esterno , "Contratto" AS tipo_documento, 0 AS dir FROM `co_contratti` WHERE `co_contratti`.`id` IN (SELECT `idcontratto` FROM `co_contratti_promemoria` WHERE `idanagrafica` = '.prepare($id_record).')
|
||||
SELECT `co_contratti`.`id`, `co_contratti`.`data_bozza`, `co_contratti`.`numero`, 0 AS numero_esterno , "Contratto" AS tipo_documento, 0 AS dir FROM `co_contratti` WHERE `co_contratti`.`id` IN (SELECT `idcontratto` FROM `co_contratti_promemoria` WHERE `idanagrafica` = '.prepare($id_record).')
|
||||
|
||||
UNION
|
||||
SELECT `co_preventivi`.`id`, `co_preventivi`.`data_bozza`, `co_preventivi`.`numero`, 0 AS numero_esterno , "Preventivo" AS tipo_documento, 0 AS dir FROM `co_preventivi` WHERE `co_preventivi`.`id` IN (SELECT `idpreventivo` FROM `co_righe_preventivi` WHERE `idanagrafica` = '.prepare($id_record).') ORDER BY `data`');
|
||||
SELECT `co_preventivi`.`id`, `co_preventivi`.`data_bozza`, `co_preventivi`.`numero`, 0 AS numero_esterno , "Preventivo" AS tipo_documento, 0 AS dir FROM `co_preventivi` WHERE `co_preventivi`.`id` IN (SELECT `idpreventivo` FROM `co_righe_preventivi` WHERE `idanagrafica` = '.prepare($id_record).') ORDER BY `data`');
|
||||
|
||||
if (!empty($elementi)) {
|
||||
echo '
|
||||
|
|
|
@ -15,8 +15,8 @@ switch (post('op')) {
|
|||
directory('../../files/'.$module);
|
||||
|
||||
$fp = fopen('../../files/'.$module.'/'.$module.'.csv', 'w');
|
||||
fprintf($fp, chr(0xEF).chr(0xBB).chr(0xBF));
|
||||
|
||||
fprintf($fp, chr(0xEF).chr(0xBB).chr(0xBF));
|
||||
|
||||
foreach ($list as $fields) {
|
||||
fputcsv($fp, $fields, ';');
|
||||
}
|
||||
|
|
|
@ -355,7 +355,7 @@ $("#categoria").change( function(){
|
|||
//fatture, ddt, preventivi collegati a questo articolo
|
||||
$elementi = $dbo->fetchArray('SELECT `co_documenti`.`id`, `co_documenti`.`data`, `co_documenti`.`numero`, `co_documenti`.`numero_esterno`, `co_tipidocumento`.`descrizione` AS tipo_documento, `co_tipidocumento`.`dir` FROM `co_documenti` JOIN `co_tipidocumento` ON `co_tipidocumento`.`id` = `co_documenti`.`idtipodocumento` WHERE `co_documenti`.`id` IN (SELECT `iddocumento` FROM `co_righe_documenti` WHERE `idarticolo` = '.prepare($id_record).') UNION
|
||||
SELECT `dt_ddt`.`id`, `dt_ddt`.`data`, `dt_ddt`.`numero`, `dt_ddt`.`numero_esterno`, `dt_tipiddt`.`descrizione` AS tipo_documento, `dt_tipiddt`.`dir` FROM `dt_ddt` JOIN `dt_tipiddt` ON `dt_tipiddt`.`id` = `dt_ddt`.`idtipoddt` WHERE `dt_ddt`.`id` IN (SELECT `idddt` FROM `dt_righe_ddt` WHERE `idarticolo` = '.prepare($id_record).') UNION
|
||||
SELECT `co_preventivi`.`id`, `co_preventivi`.`data_bozza`, `co_preventivi`.`numero`, 0 AS numero_esterno , "Preventivo" AS tipo_documento, 0 AS dir FROM `co_preventivi` WHERE `co_preventivi`.`id` IN (SELECT `idpreventivo` FROM `co_righe_preventivi` WHERE `idarticolo` = '.prepare($id_record).') ORDER BY `data`');
|
||||
SELECT `co_preventivi`.`id`, `co_preventivi`.`data_bozza`, `co_preventivi`.`numero`, 0 AS numero_esterno , "Preventivo" AS tipo_documento, 0 AS dir FROM `co_preventivi` WHERE `co_preventivi`.`id` IN (SELECT `idpreventivo` FROM `co_righe_preventivi` WHERE `idarticolo` = '.prepare($id_record).') ORDER BY `data`');
|
||||
|
||||
if (!empty($elementi)) {
|
||||
echo '
|
||||
|
|
|
@ -8,7 +8,7 @@ include_once __DIR__.'/../../core.php';
|
|||
|
||||
<div class="row">
|
||||
<div class="col-md-12">
|
||||
{[ "type": "text", "label": "<?php echo tr('Nome'); ?>", "name": "nome", "required": "1" ]}
|
||||
{[ "type": "text", "label": "<?php echo tr('Nome'); ?>", "name": "nome", "required": "1" ]}
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
|
|
@ -16,13 +16,13 @@ include_once __DIR__.'/../../core.php';
|
|||
<div class="panel-body">
|
||||
<div class="row">
|
||||
<div class="col-md-4">
|
||||
{[ "type": "text", "label": "<?php echo tr('Nome'); ?>", "name": "nome", "required": "1", "value": "$nome$" ]}
|
||||
{[ "type": "text", "label": "<?php echo tr('Nome'); ?>", "name": "nome", "required": "1", "value": "$nome$" ]}
|
||||
</div>
|
||||
<div class="col-md-4">
|
||||
{[ "type": "text", "label": "<?php echo tr('Filiale'); ?>", "name": "filiale", "value": "$filiale$" ]}
|
||||
{[ "type": "text", "label": "<?php echo tr('Filiale'); ?>", "name": "filiale", "value": "$filiale$" ]}
|
||||
</div>
|
||||
<div class="col-md-4">
|
||||
{[ "type": "select", "label": "<?php echo tr('Conto predefinito'); ?>", "name": "id_pianodeiconti3", "value": "$id_pianodeiconti3$", "values": "query=SELECT id, descrizione FROM co_pianodeiconti3 WHERE idpianodeiconti2 = 1 AND ( id NOT IN (SELECT id_pianodeiconti3 FROM co_banche) OR id = '<?php echo $record['id_pianodeiconti3']; ?>' )" ]}
|
||||
{[ "type": "select", "label": "<?php echo tr('Conto predefinito'); ?>", "name": "id_pianodeiconti3", "value": "$id_pianodeiconti3$", "values": "query=SELECT id, descrizione FROM co_pianodeiconti3 WHERE idpianodeiconti2 = 1 AND ( id NOT IN (SELECT id_pianodeiconti3 FROM co_banche) OR id = '<?php echo $record['id_pianodeiconti3']; ?>' )" ]}
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
@ -31,7 +31,7 @@ include_once __DIR__.'/../../core.php';
|
|||
{[ "type": "text", "label": "<?php echo tr('IBAN'); ?>", "name": "iban", "required": "1", "class": "alphanumeric-mask", "maxlength": 32, "value": "$iban$" ]}
|
||||
</div>
|
||||
<div class="col-md-4">
|
||||
{[ "type": "text", "label": "<?php echo tr('BIC'); ?>", "name": "bic", "class": "alphanumeric-mask", "maxlength": 11, "value": "$bic$" ]}
|
||||
{[ "type": "text", "label": "<?php echo tr('BIC'); ?>", "name": "bic", "class": "alphanumeric-mask", "maxlength": 11, "value": "$bic$" ]}
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
|
|
@ -15,7 +15,7 @@ include_once __DIR__.'/../../core.php';
|
|||
<div class="panel-body">
|
||||
<div class="row">
|
||||
<div class="col-md-12">
|
||||
{[ "type": "text", "label": "<?php echo tr('Descrizione'); ?>", "name": "descrizione", "required": 1, "value": "$descrizione$" ]}
|
||||
{[ "type": "text", "label": "<?php echo tr('Descrizione'); ?>", "name": "descrizione", "required": 1, "value": "$descrizione$" ]}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
|
|
@ -14,7 +14,7 @@ include_once __DIR__.'/../../core.php';
|
|||
<div class="panel-body">
|
||||
<div class="row">
|
||||
<div class="col-md-12">
|
||||
{[ "type": "text", "label": "<?php echo tr('Descrizione'); ?>", "name": "descrizione", "required": 1, "value": "$descrizione$" ]}
|
||||
{[ "type": "text", "label": "<?php echo tr('Descrizione'); ?>", "name": "descrizione", "required": 1, "value": "$descrizione$" ]}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
|
|
@ -33,7 +33,7 @@ $_SESSION['superselect']['idanagrafica'] = $record['idanagrafica'];
|
|||
</div>
|
||||
|
||||
<div class="col-md-3">
|
||||
{[ "type": "select", "label": "<?php echo tr('Sede'); ?>", "name": "idsede", "values": "query=SELECT 0 AS id, 'Sede legale' AS descrizione UNION SELECT id, CONCAT_WS( ' - ', nomesede, citta ) AS descrizione FROM an_sedi WHERE idanagrafica='$idanagrafica$'", "value": "$idsede$", "ajax-source": "sedi" ]}
|
||||
{[ "type": "select", "label": "<?php echo tr('Sede'); ?>", "name": "idsede", "value": "$idsede$", "ajax-source": "sedi", "placeholder": "Sede legale" ]}
|
||||
</div>
|
||||
|
||||
<div class="col-md-3">
|
||||
|
|
|
@ -77,7 +77,7 @@ echo '
|
|||
// Unità di misura
|
||||
echo '
|
||||
<div class="col-md-4">
|
||||
{[ "type": "select", "label": "'.tr('Unità di misura').'", "name": "um", "value": "'.$um.'", "ajax-source": "misure" ]}
|
||||
{[ "type": "select", "label": "'.tr('Unità di misura').'", "name": "um", "value": "'.$um.'", "ajax-source": "misure" ]}
|
||||
</div>';
|
||||
|
||||
// Iva
|
||||
|
|
|
@ -32,7 +32,7 @@ echo '
|
|||
// Sezionale
|
||||
echo '
|
||||
<div class="col-md-4">
|
||||
{[ "type": "select", "label": "'.tr('Sezionale').'", "name": "id_segment", "required": 1, "values": "query=SELECT id, name AS descrizione FROM zz_segments WHERE id_module='.Modules::get('Fatture di vendita')['id'].' ORDER BY name", "value":"'.$_SESSION['module_'.Modules::get('Fatture di vendita')['id']]['id_segment'].'" ]}
|
||||
{[ "type": "select", "label": "'.tr('Sezionale').'", "name": "id_segment", "required": 1, "values": "query=SELECT id, name AS descrizione FROM zz_segments WHERE id_module='.Modules::get('Fatture di vendita')['id'].' ORDER BY name", "value":"'.$_SESSION['module_'.Modules::get('Fatture di vendita')['id']]['id_segment'].'" ]}
|
||||
</div>
|
||||
|
||||
</div>';
|
||||
|
|
|
@ -77,11 +77,11 @@ echo '
|
|||
<div class="row">
|
||||
|
||||
<div class="col-md-6">
|
||||
{[ "type": "date", "label": "'.tr('Data promemoria').'", "name": "data_richiesta", "required": 1, "value": "'.$data_richiesta.'", "extra":"'.$readonly.'" ]}
|
||||
{[ "type": "date", "label": "'.tr('Data promemoria').'", "name": "data_richiesta", "required": 1, "value": "'.$data_richiesta.'", "extra":"'.$readonly.'" ]}
|
||||
</div>
|
||||
|
||||
<div class="col-md-6">
|
||||
{[ "type": "select", "label": "'.tr('Tipo intervento').'", "name": "idtipointervento", "required": 1, "id": "idtipointervento_", "values": "query=SELECT idtipointervento AS id, descrizione FROM in_tipiintervento ORDER BY descrizione ASC", "value": "'.$rsp[0]['idtipointervento'].'", "extra": "'.$readonly.'", "ajax-source": "tipiintervento", "value": "'.$idtipointervento.'" ]}
|
||||
{[ "type": "select", "label": "'.tr('Tipo intervento').'", "name": "idtipointervento", "required": 1, "id": "idtipointervento_", "values": "query=SELECT idtipointervento AS id, descrizione FROM in_tipiintervento ORDER BY descrizione ASC", "value": "'.$rsp[0]['idtipointervento'].'", "extra": "'.$readonly.'", "ajax-source": "tipiintervento", "value": "'.$idtipointervento.'" ]}
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
@ -104,7 +104,7 @@ echo '
|
|||
<div class="row">
|
||||
|
||||
<div class="col-md-12">
|
||||
{[ "type": "textarea", "label": "'.tr('Descrizione').'", "name": "richiesta", "id": "richiesta_", "extra": "'.$readonly.'", "value": "'.$rsp[0]['richiesta'].'" ]}
|
||||
{[ "type": "textarea", "label": "'.tr('Descrizione').'", "name": "richiesta", "id": "richiesta_", "extra": "'.$readonly.'", "value": "'.$rsp[0]['richiesta'].'" ]}
|
||||
</div>
|
||||
|
||||
</div>';
|
||||
|
@ -175,7 +175,7 @@ echo '
|
|||
|
||||
echo '<div class="row">
|
||||
<div class="col-md-2">
|
||||
{[ "type": "number", "label": "'.tr('Intervallo').'", "name": "intervallo", "decimals": 0, "required": 1, "icon-after": "GG", "min-value": "1" ]}
|
||||
{[ "type": "number", "label": "'.tr('Intervallo').'", "name": "intervallo", "decimals": 0, "required": 1, "icon-after": "GG", "min-value": "1" ]}
|
||||
</div>';
|
||||
|
||||
?>
|
||||
|
@ -217,7 +217,7 @@ echo '
|
|||
</div>
|
||||
|
||||
<div class="col-md-4">
|
||||
{[ "type": "select", "label": "'.tr('Tecnici').'", "multiple": "1", "name": "idtecnico[]", "ajax-source": "tecnici", "extra": "disabled", "value": "'.$idtecnico.'" ]}
|
||||
{[ "type": "select", "label": "'.tr('Tecnici').'", "multiple": "1", "name": "idtecnico[]", "ajax-source": "tecnici", "extra": "disabled", "value": "'.$idtecnico.'" ]}
|
||||
</div>
|
||||
|
||||
|
||||
|
|
|
@ -10,7 +10,7 @@ switch (filter('op')) {
|
|||
|
||||
$data_richiesta = filter('data_richiesta');
|
||||
$idtipointervento = filter('idtipointervento');
|
||||
$query = 'INSERT INTO `co_contratti_promemoria` ( `idcontratto`, `data_richiesta`, idtipointervento ) VALUES ('.prepare($id_record).', '.prepare($data_richiesta).', '.prepare($idtipointervento).' )';
|
||||
$query = 'INSERT INTO `co_contratti_promemoria` ( `idcontratto`, `data_richiesta`, idtipointervento ) VALUES ('.prepare($id_record).', '.prepare($data_richiesta).', '.prepare($idtipointervento).' )';
|
||||
|
||||
//$are_duplicated = $dbo->fetchNum('SELECT id FROM co_contratti_promemoria WHERE data_richiesta = '.prepare($data_richiesta).' AND idtipointervento = '.prepare($idtipointervento).' AND idcontratto = '.prepare($id_record) );
|
||||
|
||||
|
@ -35,7 +35,7 @@ switch (filter('op')) {
|
|||
$idsede = filter('idsede_c');
|
||||
$idimpianti = implode(',', post('idimpianti'));
|
||||
|
||||
$query = 'UPDATE co_contratti_promemoria SET idtipointervento='.prepare($idtipointervento).', data_richiesta='.prepare($data_richiesta).', richiesta='.prepare($richiesta).', idsede='.prepare($idsede).', idimpianti='.prepare($idimpianti).' WHERE id = '.prepare($idcontratto_riga);
|
||||
$query = 'UPDATE co_contratti_promemoria SET idtipointervento='.prepare($idtipointervento).', data_richiesta='.prepare($data_richiesta).', richiesta='.prepare($richiesta).', idsede='.prepare($idsede).', idimpianti='.prepare($idimpianti).' WHERE id = '.prepare($idcontratto_riga);
|
||||
|
||||
if (isset($id_record)) {
|
||||
if ($dbo->query($query)) {
|
||||
|
@ -211,7 +211,7 @@ switch (filter('op')) {
|
|||
$dbo->query('INSERT INTO mg_articoli_interventi (idarticolo, idintervento,descrizione,prezzo_acquisto,prezzo_vendita,sconto, sconto_unitario, tipo_sconto,idiva,desc_iva,iva,idautomezzo, qta, um, abilita_serial, idimpianto) SELECT idarticolo, '.$idintervento.',descrizione,prezzo_acquisto,prezzo_vendita,sconto,sconto_unitario,tipo_sconto,idiva,desc_iva,iva,idautomezzo, qta, um, abilita_serial, idimpianto FROM co_righe_contratti_articoli WHERE id_riga_contratto = '.$idcontratto_riga.' ');
|
||||
|
||||
//copio gli allegati dal promemoria all'intervento
|
||||
$dbo->query('INSERT INTO zz_files (nome,filename,original,category,id_module,id_record) SELECT t.nome, t.filename, t.original, t.category, '.Modules::get('Interventi')['id'].', '.$idintervento.' FROM zz_files t WHERE t.id_record = '.$idcontratto_riga.' AND t.id_plugin = '.$id_plugin.'');
|
||||
$dbo->query('INSERT INTO zz_files (nome,filename,original,category,id_module,id_record) SELECT t.nome, t.filename, t.original, t.category, '.Modules::get('Interventi')['id'].', '.$idintervento.' FROM zz_files t WHERE t.id_record = '.$idcontratto_riga.' AND t.id_plugin = '.$id_plugin.'');
|
||||
|
||||
// Decremento la quantità per ogni articolo copiato
|
||||
$rs_articoli = $dbo->fetchArray('SELECT * FROM mg_articoli_interventi WHERE idintervento = '.$idintervento.' ');
|
||||
|
|
|
@ -5,7 +5,7 @@ include_once __DIR__.'/../../core.php';
|
|||
/*
|
||||
ARTICOLI + RIGHE GENERICHE
|
||||
*/
|
||||
$rs = $dbo->fetchArray('SELECT *, round(sconto_unitario,'.setting('Cifre decimali per importi').') AS sconto_unitario, round(sconto,'.setting('Cifre decimali per importi').') AS sconto, round(subtotale,'.setting('Cifre decimali per importi').') AS subtotale, IFNULL((SELECT codice FROM mg_articoli WHERE id=idarticolo), "") AS codice FROM co_righe_contratti WHERE idcontratto='.prepare($id_record).' ORDER BY `order`');
|
||||
$rs = $dbo->fetchArray('SELECT *, round(sconto_unitario,'.setting('Cifre decimali per importi').') AS sconto_unitario, round(sconto,'.setting('Cifre decimali per importi').') AS sconto, round(subtotale,'.setting('Cifre decimali per importi').') AS subtotale, IFNULL((SELECT codice FROM mg_articoli WHERE id=idarticolo), "") AS codice FROM co_righe_contratti WHERE idcontratto='.prepare($id_record).' ORDER BY `order`');
|
||||
|
||||
echo '
|
||||
<table class="table table-striped table-hover table-condensed table-bordered">
|
||||
|
|
|
@ -10,5 +10,5 @@ return [
|
|||
'numero' => $r['numero'],
|
||||
'descrizione' => $r['descrizione'],
|
||||
'data' => Translator::dateToLocale($r['data_bozza']),
|
||||
'id_anagrafica' => $r['idanagrafica'],
|
||||
'id_anagrafica' => $r['idanagrafica'],
|
||||
];
|
||||
|
|
|
@ -22,11 +22,9 @@ $qp = "SELECT *, DATE_FORMAT( data_richiesta, '%m-%Y') AS mese, (SELECT descrizi
|
|||
$rsp = $dbo->fetchArray($qp);
|
||||
|
||||
if (!empty($rsp)) {
|
||||
|
||||
// Elenco interventi da pianificare
|
||||
foreach ($rsp as $i => $r) {
|
||||
|
||||
// Se cambia il mese ricreo l'intestazione della tabella
|
||||
// Se cambia il mese ricreo l'intestazione della tabella
|
||||
if (!isset($rsp[$i - 1]) || $r['mese'] != $rsp[$i - 1]['mese']) {
|
||||
if ($i == 0) {
|
||||
$attr = '';
|
||||
|
@ -68,7 +66,7 @@ if (!empty($rsp)) {
|
|||
<td>'.Translator::dateToLocale($r['data_richiesta']).'</td>
|
||||
<td>'.$r['tipointervento'].'</td>
|
||||
<td>'.nl2br($r['richiesta']).'</td>';
|
||||
|
||||
|
||||
echo '
|
||||
<td>';
|
||||
// Sede
|
||||
|
@ -114,7 +112,7 @@ if (!empty($rsp)) {
|
|||
<script>
|
||||
$(document).ready(function() {
|
||||
$('.datatables').DataTable({
|
||||
"oLanguage": { "sUrl": "<?php echo $rootdir ?>/assets/dist/js/i18n/datatables/<?php echo $lang ?>.min.json" },
|
||||
"oLanguage": { "sUrl": "<?php echo $rootdir; ?>/assets/dist/js/i18n/datatables/<?php echo $lang; ?>.min.json" },
|
||||
"paging": false,
|
||||
"info": false
|
||||
});
|
||||
|
|
|
@ -549,7 +549,7 @@ if ($vista == 'mese') {
|
|||
// make the event draggable using jQuery UI
|
||||
$(this).draggable({
|
||||
zIndex: 999,
|
||||
revert: true, // will cause the event to go back to its
|
||||
revert: true, // will cause the event to go back to its
|
||||
revertDuration: 0 // original position after the drag
|
||||
});
|
||||
|
||||
|
|
|
@ -10,5 +10,5 @@ return [
|
|||
'numero' => empty($r['numero_esterno']) ? $r['numero'] : $r['numero_esterno'],
|
||||
'note' => $r['note'],
|
||||
'data' => Translator::dateToLocale($r['data']),
|
||||
'id_anagrafica' => $r['idanagrafica'],
|
||||
'id_anagrafica' => $r['idanagrafica'],
|
||||
];
|
||||
|
|
|
@ -25,7 +25,7 @@ include_once __DIR__.'/../../core.php';
|
|||
|
||||
<div class="row">
|
||||
<div class="col-md-12">
|
||||
{[ "type": "select", "label": "<?php echo tr('Indirizzo email'); ?>", "name": "smtp", "value": "$id_smtp$", "ajax-source": "smtp" ]}
|
||||
{[ "type": "select", "label": "<?php echo tr('Indirizzo email'); ?>", "name": "smtp", "value": "$id_smtp$", "ajax-source": "smtp" ]}
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
|
|
@ -29,11 +29,11 @@ echo '
|
|||
|
||||
<div class="row">
|
||||
<div class="col-md-8">
|
||||
{[ "type": "select", "label": "<?php echo tr('Indirizzo email'); ?>", "name": "smtp", "value": "$id_smtp$", "ajax-source": "smtp" ]}
|
||||
{[ "type": "select", "label": "<?php echo tr('Indirizzo email'); ?>", "name": "smtp", "value": "$id_smtp$", "ajax-source": "smtp" ]}
|
||||
</div>
|
||||
|
||||
<div class="col-md-4">
|
||||
{[ "type": "checkbox", "label": "<?php echo tr('Notifica di lettura'); ?>", "name": "read_notify", "value": "$read_notify$", "placeholder": "<?php echo tr('Abilita la notifica di lettura'); ?>" ]}
|
||||
{[ "type": "checkbox", "label": "<?php echo tr('Notifica di lettura'); ?>", "name": "read_notify", "value": "$read_notify$", "placeholder": "<?php echo tr('Abilita la notifica di lettura'); ?>" ]}
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
|
|
@ -101,14 +101,14 @@ if ($dir == 'entrata') {
|
|||
<?php
|
||||
} else {
|
||||
?>
|
||||
{[ "type": "select", "label": "<?php echo tr('Fornitore'); ?>", "name": "idanagrafica", "required": 1, "ajax-source": "fornitori", "value": "$idanagrafica$" ]}
|
||||
{[ "type": "select", "label": "<?php echo tr('Fornitore'); ?>", "name": "idanagrafica", "required": 1, "ajax-source": "fornitori", "value": "$idanagrafica$" ]}
|
||||
<?php
|
||||
}
|
||||
?>
|
||||
</div>
|
||||
|
||||
<div class="col-md-3">
|
||||
{[ "type": "select", "label": "<?php echo tr('Riferimento sede'); ?>", "name": "idsede", "ajax-source": "sedi", "value": "$idsede$" ]}
|
||||
{[ "type": "select", "label": "<?php echo tr('Riferimento sede'); ?>", "name": "idsede", "ajax-source": "sedi", "placeholder": "Sede legale", "value": "$idsede$" ]}
|
||||
</div>
|
||||
|
||||
<?php if ($dir == 'entrata') {
|
||||
|
|
|
@ -375,7 +375,7 @@ function aggiungi_movimento($iddocumento, $dir, $primanota = 0)
|
|||
6) eventuale marca da bollo
|
||||
*/
|
||||
// 1) Aggiungo la riga del conto cliente
|
||||
$query2 = 'INSERT INTO co_movimenti(idmastrino, data, data_documento, iddocumento, idanagrafica, descrizione, idconto, totale, primanota) VALUES('.prepare($idmastrino).', '.prepare($data).', '.prepare($data_documento).', '.prepare($iddocumento).", '', ".prepare($descrizione.' del '.date('d/m/Y', strtotime($data)).' ('.$ragione_sociale.')').', '.prepare($idconto_controparte).', '.prepare(($totale_fattura + $totale_bolli) * $segno_mov1_cliente).', '.prepare($primanota).' )';
|
||||
$query2 = 'INSERT INTO co_movimenti(idmastrino, data, data_documento, iddocumento, idanagrafica, descrizione, idconto, totale, primanota) VALUES('.prepare($idmastrino).', '.prepare($data).', '.prepare($data_documento).', '.prepare($iddocumento).", '', ".prepare($descrizione.' del '.date('d/m/Y', strtotime($data)).' ('.$ragione_sociale.')').', '.prepare($idconto_controparte).', '.prepare(($totale_fattura + $totale_bolli) * $segno_mov1_cliente).', '.prepare($primanota).' )';
|
||||
$dbo->query($query2);
|
||||
|
||||
// 2) Aggiungo il totale sul conto dei ricavi/spese scelto
|
||||
|
@ -386,7 +386,7 @@ function aggiungi_movimento($iddocumento, $dir, $primanota = 0)
|
|||
// Retrocompatibilità
|
||||
$idconto_riga = !empty($riga['idconto']) ? $riga['idconto'] : $idconto;
|
||||
|
||||
$query2 = 'INSERT INTO co_movimenti(idmastrino, data, data_documento, iddocumento, idanagrafica, descrizione, idconto, totale, primanota) VALUES('.prepare($idmastrino).', '.prepare($data).', '.prepare($data_documento).', '.prepare($iddocumento).", '', ".prepare($descrizione.' del '.date('d/m/Y', strtotime($data)).' ('.$ragione_sociale.')').', '.prepare($idconto_riga).', '.prepare($riga['imponibile'] * $segno_mov2_ricavivendite).', '.prepare($primanota).')';
|
||||
$query2 = 'INSERT INTO co_movimenti(idmastrino, data, data_documento, iddocumento, idanagrafica, descrizione, idconto, totale, primanota) VALUES('.prepare($idmastrino).', '.prepare($data).', '.prepare($data_documento).', '.prepare($iddocumento).", '', ".prepare($descrizione.' del '.date('d/m/Y', strtotime($data)).' ('.$ragione_sociale.')').', '.prepare($idconto_riga).', '.prepare($riga['imponibile'] * $segno_mov2_ricavivendite).', '.prepare($primanota).')';
|
||||
$dbo->query($query2);
|
||||
}
|
||||
|
||||
|
@ -399,7 +399,7 @@ function aggiungi_movimento($iddocumento, $dir, $primanota = 0)
|
|||
$idconto_iva = $rs[0]['id'];
|
||||
$descrizione_conto_iva = $rs[0]['descrizione'];
|
||||
|
||||
$query2 = 'INSERT INTO co_movimenti(idmastrino, data, data_documento, iddocumento, idanagrafica, descrizione, idconto, totale, primanota) VALUES('.prepare($idmastrino).', '.prepare($data).', '.prepare($data_documento).', '.prepare($iddocumento).", '', ".prepare($descrizione.' del '.date('d/m/Y', strtotime($data)).' ('.$ragione_sociale.')').', '.prepare($idconto_iva).', '.prepare($iva_fattura * $segno_mov3_iva).', '.prepare($primanota).')';
|
||||
$query2 = 'INSERT INTO co_movimenti(idmastrino, data, data_documento, iddocumento, idanagrafica, descrizione, idconto, totale, primanota) VALUES('.prepare($idmastrino).', '.prepare($data).', '.prepare($data_documento).', '.prepare($iddocumento).", '', ".prepare($descrizione.' del '.date('d/m/Y', strtotime($data)).' ('.$ragione_sociale.')').', '.prepare($idconto_iva).', '.prepare($iva_fattura * $segno_mov3_iva).', '.prepare($primanota).')';
|
||||
$dbo->query($query2);
|
||||
}
|
||||
|
||||
|
@ -411,7 +411,7 @@ function aggiungi_movimento($iddocumento, $dir, $primanota = 0)
|
|||
$idconto_iva2 = $rs[0]['id'];
|
||||
$descrizione_conto_iva2 = $rs[0]['descrizione'];
|
||||
|
||||
$query2 = 'INSERT INTO co_movimenti(idmastrino, data, data_documento, iddocumento, idanagrafica, descrizione, idconto, totale, primanota) VALUES('.prepare($idmastrino).', '.prepare($data).', '.prepare($data_documento).', '.prepare($iddocumento).", '', ".prepare($descrizione.' del '.date('d/m/Y', strtotime($data)).' ('.$ragione_sociale.')').', '.prepare($idconto_iva2).', '.prepare($iva_indetraibile_fattura * $segno_mov3_iva).', '.prepare($primanota).')';
|
||||
$query2 = 'INSERT INTO co_movimenti(idmastrino, data, data_documento, iddocumento, idanagrafica, descrizione, idconto, totale, primanota) VALUES('.prepare($idmastrino).', '.prepare($data).', '.prepare($data_documento).', '.prepare($iddocumento).", '', ".prepare($descrizione.' del '.date('d/m/Y', strtotime($data)).' ('.$ragione_sociale.')').', '.prepare($idconto_iva2).', '.prepare($iva_indetraibile_fattura * $segno_mov3_iva).', '.prepare($primanota).')';
|
||||
$dbo->query($query2);
|
||||
}
|
||||
|
||||
|
@ -423,7 +423,7 @@ function aggiungi_movimento($iddocumento, $dir, $primanota = 0)
|
|||
$idconto_inps = $rs[0]['id'];
|
||||
$descrizione_conto_inps = $rs[0]['descrizione'];
|
||||
|
||||
$query2 = 'INSERT INTO co_movimenti(idmastrino, data, data_documento, iddocumento, idanagrafica, descrizione, idconto, totale, primanota) VALUES('.prepare($idmastrino).', '.prepare($data).', '.prepare($data_documento).', '.prepare($iddocumento).", '', ".prepare($descrizione.' del '.date('d/m/Y', strtotime($data)).' ('.$ragione_sociale.')').', '.prepare($idconto_inps).', '.prepare($totale_rivalsainps * $segno_mov4_inps).', '.prepare($primanota).')';
|
||||
$query2 = 'INSERT INTO co_movimenti(idmastrino, data, data_documento, iddocumento, idanagrafica, descrizione, idconto, totale, primanota) VALUES('.prepare($idmastrino).', '.prepare($data).', '.prepare($data_documento).', '.prepare($iddocumento).", '', ".prepare($descrizione.' del '.date('d/m/Y', strtotime($data)).' ('.$ragione_sociale.')').', '.prepare($idconto_inps).', '.prepare($totale_rivalsainps * $segno_mov4_inps).', '.prepare($primanota).')';
|
||||
$dbo->query($query2);
|
||||
}
|
||||
|
||||
|
@ -436,11 +436,11 @@ function aggiungi_movimento($iddocumento, $dir, $primanota = 0)
|
|||
$descrizione_conto_ritenutaacconto = $rs[0]['descrizione'];
|
||||
|
||||
// DARE nel conto ritenuta
|
||||
$query2 = 'INSERT INTO co_movimenti(idmastrino, data, data_documento, iddocumento, idanagrafica, descrizione, idconto, totale, primanota) VALUES('.prepare($idmastrino).', '.prepare($data).', '.prepare($data_documento).', '.prepare($iddocumento).", '', ".prepare($descrizione.' del '.date('d/m/Y', strtotime($data)).' ('.$ragione_sociale.')').', '.prepare($idconto_ritenutaacconto).', '.prepare($totale_ritenutaacconto * $segno_mov5_ritenutaacconto).', '.prepare($primanota).')';
|
||||
$query2 = 'INSERT INTO co_movimenti(idmastrino, data, data_documento, iddocumento, idanagrafica, descrizione, idconto, totale, primanota) VALUES('.prepare($idmastrino).', '.prepare($data).', '.prepare($data_documento).', '.prepare($iddocumento).", '', ".prepare($descrizione.' del '.date('d/m/Y', strtotime($data)).' ('.$ragione_sociale.')').', '.prepare($idconto_ritenutaacconto).', '.prepare($totale_ritenutaacconto * $segno_mov5_ritenutaacconto).', '.prepare($primanota).')';
|
||||
$dbo->query($query2);
|
||||
|
||||
// AVERE nel riepilogativo clienti
|
||||
$query2 = 'INSERT INTO co_movimenti(idmastrino, data, data_documento, iddocumento, idanagrafica, descrizione, idconto, totale, primanota) VALUES('.prepare($idmastrino).', '.prepare($data).', '.prepare($data_documento).', '.prepare($iddocumento).", '', ".prepare($descrizione.' del '.date('d/m/Y', strtotime($data)).' ('.$ragione_sociale.')').', '.prepare($idconto_controparte).', '.prepare(($totale_ritenutaacconto * $segno_mov5_ritenutaacconto) * -1).', '.prepare($primanota).')';
|
||||
$query2 = 'INSERT INTO co_movimenti(idmastrino, data, data_documento, iddocumento, idanagrafica, descrizione, idconto, totale, primanota) VALUES('.prepare($idmastrino).', '.prepare($data).', '.prepare($data_documento).', '.prepare($iddocumento).", '', ".prepare($descrizione.' del '.date('d/m/Y', strtotime($data)).' ('.$ragione_sociale.')').', '.prepare($idconto_controparte).', '.prepare(($totale_ritenutaacconto * $segno_mov5_ritenutaacconto) * -1).', '.prepare($primanota).')';
|
||||
$dbo->query($query2);
|
||||
}
|
||||
|
||||
|
@ -452,7 +452,7 @@ function aggiungi_movimento($iddocumento, $dir, $primanota = 0)
|
|||
$idconto_bolli = $rs[0]['id'];
|
||||
$descrizione_conto_bolli = $rs[0]['descrizione'];
|
||||
|
||||
$query2 = 'INSERT INTO co_movimenti(idmastrino, data, data_documento, iddocumento, idanagrafica, descrizione, idconto, totale, primanota) VALUES('.prepare($idmastrino).', '.prepare($data).', '.prepare($data_documento).', '.prepare($iddocumento).", '', ".prepare($descrizione.' del '.date('d/m/Y', strtotime($data)).' ('.$ragione_sociale.')').', '.prepare($idconto_bolli).', '.prepare($totale_bolli * $segno_mov6_bollo).', '.prepare($primanota).')';
|
||||
$query2 = 'INSERT INTO co_movimenti(idmastrino, data, data_documento, iddocumento, idanagrafica, descrizione, idconto, totale, primanota) VALUES('.prepare($idmastrino).', '.prepare($data).', '.prepare($data_documento).', '.prepare($iddocumento).", '', ".prepare($descrizione.' del '.date('d/m/Y', strtotime($data)).' ('.$ragione_sociale.')').', '.prepare($idconto_bolli).', '.prepare($totale_bolli * $segno_mov6_bollo).', '.prepare($primanota).')';
|
||||
$dbo->query($query2);
|
||||
}
|
||||
}
|
||||
|
@ -673,23 +673,23 @@ function add_articolo_infattura($iddocumento, $idarticolo, $descrizione, $idiva,
|
|||
$rs2 = $dbo->fetchArray('SELECT * FROM co_iva WHERE id='.prepare($idiva));
|
||||
$iva = ($prezzo - $sconto) / 100 * $rs2[0]['percentuale'];
|
||||
$desc_iva = $rs2[0]['descrizione'];
|
||||
|
||||
if (!empty($idrivalsainps)){
|
||||
// Calcolo rivalsa inps
|
||||
$rs = $dbo->fetchArray('SELECT * FROM co_rivalsainps WHERE id='.prepare($idrivalsainps));
|
||||
$rivalsainps = ($prezzo - $sconto) / 100 * $rs[0]['percentuale'];
|
||||
}
|
||||
|
||||
if (!empty($idritenutaacconto)){
|
||||
// Calcolo ritenuta d'acconto
|
||||
$query = 'SELECT * FROM co_ritenutaacconto WHERE id='.prepare($idritenutaacconto);
|
||||
$rs = $dbo->fetchArray($query);
|
||||
if ($calcolo_ritenutaacconto == 'Imponibile') {
|
||||
$ritenutaacconto = ($prezzo - $sconto) / 100 * $rs[0]['percentuale'];
|
||||
} else if ( $calcolo_ritenutaacconto == 'Imponibile + rivalsa inps') {
|
||||
$ritenutaacconto = ($prezzo - $sconto + $rivalsainps) / 100 * $rs[0]['percentuale'];
|
||||
}
|
||||
}
|
||||
|
||||
if (!empty($idrivalsainps)) {
|
||||
// Calcolo rivalsa inps
|
||||
$rs = $dbo->fetchArray('SELECT * FROM co_rivalsainps WHERE id='.prepare($idrivalsainps));
|
||||
$rivalsainps = ($prezzo - $sconto) / 100 * $rs[0]['percentuale'];
|
||||
}
|
||||
|
||||
if (!empty($idritenutaacconto)) {
|
||||
// Calcolo ritenuta d'acconto
|
||||
$query = 'SELECT * FROM co_ritenutaacconto WHERE id='.prepare($idritenutaacconto);
|
||||
$rs = $dbo->fetchArray($query);
|
||||
if ($calcolo_ritenutaacconto == 'Imponibile') {
|
||||
$ritenutaacconto = ($prezzo - $sconto) / 100 * $rs[0]['percentuale'];
|
||||
} elseif ($calcolo_ritenutaacconto == 'Imponibile + rivalsa inps') {
|
||||
$ritenutaacconto = ($prezzo - $sconto + $rivalsainps) / 100 * $rs[0]['percentuale'];
|
||||
}
|
||||
}
|
||||
|
||||
if ($qta != 0) {
|
||||
$rsart = $dbo->fetchArray('SELECT abilita_serial, idconto_vendita, idconto_acquisto FROM mg_articoli WHERE id='.prepare($idarticolo));
|
||||
|
@ -866,24 +866,26 @@ function rimuovi_riga_fattura($id_documento, $id_riga, $dir)
|
|||
$dbo->attach('mg_prodotti', ['id_riga_documento' => $riga['ref_riga_documento'], 'dir' => $dir, 'id_articolo' => $riga['idarticolo']], ['serial' => $serials]);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
// Rimozione articoli collegati ad un preventivo importato con riga unica
|
||||
if(empty($riga['idarticolo']) && $riga['is_preventivo']){
|
||||
if (empty($riga['idarticolo']) && $riga['is_preventivo']) {
|
||||
//rimetto a magazzino gli articoli collegati al preventivo
|
||||
$rsa = $dbo->fetchArray('SELECT idarticolo, qta FROM co_righe_preventivi WHERE idpreventivo = '.prepare($riga['idpreventivo']));
|
||||
for ($i = 0; $i < sizeof($rsa); ++$i) {
|
||||
if (!empty($rsa[$i]['idarticolo']))
|
||||
add_movimento_magazzino($rsa[$i]['idarticolo'], $rsa[$i]['qta'], ['iddocumento' => $id_documento]);
|
||||
if (!empty($rsa[$i]['idarticolo'])) {
|
||||
add_movimento_magazzino($rsa[$i]['idarticolo'], $rsa[$i]['qta'], ['iddocumento' => $id_documento]);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
// Rimozione articoli collegati ad un contratto importato con riga unica
|
||||
if(empty($riga['idarticolo']) && $riga['is_contratto']){
|
||||
if (empty($riga['idarticolo']) && $riga['is_contratto']) {
|
||||
//rimetto a magazzino gli articoli collegati al contratto
|
||||
$rsa = $dbo->fetchArray('SELECT idarticolo, qta FROM co_righe_contratti WHERE idcontratto = '.prepare($riga['idcontratto']));
|
||||
for ($i = 0; $i < sizeof($rsa); ++$i) {
|
||||
if (!empty($rsa[$i]['idarticolo']))
|
||||
add_movimento_magazzino($rsa[$i]['idarticolo'], $rsa[$i]['qta'], ['iddocumento' => $id_documento]);
|
||||
if (!empty($rsa[$i]['idarticolo'])) {
|
||||
add_movimento_magazzino($rsa[$i]['idarticolo'], $rsa[$i]['qta'], ['iddocumento' => $id_documento]);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -42,18 +42,17 @@ if (!empty($rs)) {
|
|||
if (!empty($r['idpreventivo'])) {
|
||||
$delete = 'unlink_preventivo';
|
||||
}
|
||||
// Contratti
|
||||
// Contratti
|
||||
elseif (!empty($r['idcontratto'])) {
|
||||
$delete = 'unlink_contratto';
|
||||
}
|
||||
// Intervento
|
||||
// Intervento
|
||||
elseif (!empty($r['idintervento'])) {
|
||||
$delete = 'unlink_intervento';
|
||||
}
|
||||
// Articoli
|
||||
elseif (!empty($r['idarticolo'])) {
|
||||
|
||||
$ref_modulo = Modules::get('Articoli')['id'];
|
||||
$ref_modulo = Modules::get('Articoli')['id'];
|
||||
$ref_id = $r['idarticolo'];
|
||||
|
||||
$r['descrizione'] = (!empty($r['codice']) ? $r['codice'].' - ' : '').$r['descrizione'];
|
||||
|
|
|
@ -12,5 +12,5 @@ return [
|
|||
'numero' => empty($r['numero_esterno']) ? $r['numero'] : $r['numero_esterno'],
|
||||
'note' => $r['note'],
|
||||
'data' => Translator::dateToLocale($r['data']),
|
||||
'id_anagrafica' => $r['idanagrafica'],
|
||||
'id_anagrafica' => $r['idanagrafica'],
|
||||
];
|
||||
|
|
|
@ -274,7 +274,7 @@ switch (post('op')) {
|
|||
$dbo->query('INSERT INTO mg_articoli_interventi (idarticolo, idintervento,descrizione,prezzo_acquisto,prezzo_vendita,sconto, sconto_unitario, tipo_sconto,idiva,desc_iva,iva,idautomezzo, qta, um, abilita_serial, idimpianto) SELECT idarticolo, '.$id_record.',descrizione,prezzo_acquisto,prezzo_vendita,sconto,sconto_unitario,tipo_sconto,idiva,desc_iva,iva,idautomezzo, qta, um, abilita_serial, idimpianto FROM co_righe_contratti_articoli WHERE id_riga_contratto = '.$idcontratto_riga.' ');
|
||||
|
||||
//copio gli allegati dal promemoria all'intervento
|
||||
$dbo->query('INSERT INTO zz_files (nome,filename,original,category,id_module,id_record) SELECT t.nome, t.filename, t.original, t.category, '.$id_module.', '.$id_record.' FROM zz_files t WHERE t.id_record = '.$idcontratto_riga.' AND t.id_plugin = '.Plugins::get('Pianificazione interventi')['id'].'');
|
||||
$dbo->query('INSERT INTO zz_files (nome,filename,original,category,id_module,id_record) SELECT t.nome, t.filename, t.original, t.category, '.$id_module.', '.$id_record.' FROM zz_files t WHERE t.id_record = '.$idcontratto_riga.' AND t.id_plugin = '.Plugins::get('Pianificazione interventi')['id'].'');
|
||||
|
||||
//sposto fisicamente i file allegati
|
||||
$rs_allegati = $dbo->fetchArray('SELECT filename FROM zz_files WHERE id_record = '.$id_record.' AND id_module = '.$id_module);
|
||||
|
|
|
@ -148,7 +148,7 @@ if (empty($new_codice)) {
|
|||
</div>
|
||||
|
||||
<div class="col-md-4">
|
||||
{[ "type": "select", "label": "<?php echo tr('Sede'); ?>", "name": "idsede", "value": "<?php echo $idsede; ?>", "placheholder": "<?php echo tr('Seleziona prima un cliente'); ?>...", "ajax-source": "sedi" ]}
|
||||
{[ "type": "select", "label": "<?php echo tr('Sede'); ?>", "name": "idsede", "value": "<?php echo $idsede; ?>", "placheholder": "<?php echo tr('Seleziona prima un cliente'); ?>...", "ajax-source": "sedi" ]}
|
||||
</div>
|
||||
|
||||
<div class="col-md-4">
|
||||
|
@ -312,7 +312,6 @@ if (empty($new_codice)) {
|
|||
$("#impianti").find("button").prop("disabled", value);
|
||||
$("#idimpianti").selectReset();
|
||||
|
||||
|
||||
if (($(this).val())) {
|
||||
if (($(this).selectData().idzona)){
|
||||
$('#idzona').val($(this).selectData().idzona).change();
|
||||
|
@ -322,15 +321,12 @@ if (empty($new_codice)) {
|
|||
}
|
||||
// session_set('superselect,idzona', $(this).selectData().idzona, 0);
|
||||
}
|
||||
|
||||
|
||||
});
|
||||
|
||||
$('#idsede').change( function(){
|
||||
session_set('superselect,idsede', $(this).val(), 0);
|
||||
$("#idimpianti").selectReset();
|
||||
|
||||
|
||||
if (($(this).val())) {
|
||||
if (($(this).selectData().idzona)){
|
||||
$('#idzona').val($(this).selectData().idzona).change();
|
||||
|
|
|
@ -27,7 +27,7 @@ $_SESSION['superselect']['idanagrafica'] = $record['idanagrafica'];
|
|||
</div>
|
||||
|
||||
<div class="col-md-3">
|
||||
{[ "type": "select", "label": "<?php echo tr('Sede'); ?>", "name": "idsede", "values": "query=SELECT 0 AS id, 'Sede legale' AS descrizione UNION SELECT id, CONCAT_WS( ' - ', nomesede, citta ) AS descrizione FROM an_sedi WHERE idanagrafica='$idanagrafica$'", "value": "$idsede$", "ajax-source": "sedi", "readonly": "<?php echo $record['flag_completato']; ?>" ]}
|
||||
{[ "type": "select", "label": "<?php echo tr('Sede'); ?>", "name": "idsede","value": "$idsede$", "ajax-source": "sedi", "placeholder": "Sede legale", "readonly": "<?php echo $record['flag_completato']; ?>" ]}
|
||||
</div>
|
||||
|
||||
<div class="col-md-3">
|
||||
|
|
|
@ -14,5 +14,5 @@ return [
|
|||
'data' => Translator::dateToLocale($r['data_richiesta']),
|
||||
'data richiesta' => Translator::dateToLocale($r['data_richiesta']),
|
||||
'data fine intervento' => empty($r['data_fine']) ? Translator::dateToLocale($r['data_richiesta']) : Translator::dateToLocale($r['data_fine']),
|
||||
'id_anagrafica' => $r['idanagrafica'],
|
||||
'id_anagrafica' => $r['idanagrafica'],
|
||||
];
|
||||
|
|
|
@ -15,7 +15,7 @@ include_once __DIR__.'/../../core.php';
|
|||
<div class="panel-body">
|
||||
<div class="row">
|
||||
<div class="col-md-12">
|
||||
{[ "type": "text", "label": "<?php echo tr('Valore'); ?>", "name": "valore", "required": 1, "value": "$valore$" ]}
|
||||
{[ "type": "text", "label": "<?php echo tr('Valore'); ?>", "name": "valore", "required": 1, "value": "$valore$" ]}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
|
|
@ -31,7 +31,7 @@ if ($source == 'Attività') {
|
|||
</div>
|
||||
|
||||
<div class="col-md-4">
|
||||
{[ "type": "select", "label": "<?php echo tr('Sede'); ?>", "name": "idsede", "values": "query=SELECT 0 AS id, 'Sede legale' AS descrizione UNION SELECT id, CONCAT_WS( ' - ', nomesede, citta ) AS descrizione FROM an_sedi WHERE idanagrafica='$idanagrafica$'", "value": "$idsede$", "ajax-source": "sedi", "placeholder": "Sede legale" ]}
|
||||
{[ "type": "select", "label": "<?php echo tr('Sede'); ?>", "name": "idsede", "value": "$idsede$", "ajax-source": "sedi", "placeholder": "Sede legale" ]}
|
||||
</div>
|
||||
|
||||
<div class="col-md-4">
|
||||
|
|
|
@ -25,8 +25,9 @@ switch ($resource) {
|
|||
}
|
||||
|
||||
$where[] = 'idanagrafica='.prepare($superselect['idanagrafica']);
|
||||
if (!empty($superselect['idsede']))
|
||||
$where[] = 'idsede='.prepare($superselect['idsede']);
|
||||
if (!empty($superselect['idsede'])) {
|
||||
$where[] = 'idsede='.prepare($superselect['idsede']);
|
||||
}
|
||||
|
||||
if (!empty($search)) {
|
||||
$search_fields[] = 'nome LIKE '.prepare('%'.$search.'%');
|
||||
|
|
|
@ -5,7 +5,6 @@ include_once __DIR__.'/../../core.php';
|
|||
//unset($_SESSION['superselect']['idanagrafica']);
|
||||
//unset($_SESSION['superselect']['idsede']);
|
||||
|
||||
|
||||
$img = null;
|
||||
if (!empty($record['immagine'])) {
|
||||
$fileinfo = Uploads::fileInfo($record['immagine']);
|
||||
|
@ -60,7 +59,7 @@ if (!empty($record['immagine'])) {
|
|||
</div>
|
||||
|
||||
<div class="col-md-4">
|
||||
{[ "type": "select", "label": "<?php echo tr('Sede'); ?>", "name": "idsede", "values": "query=SELECT 0 AS id, 'Sede legale' AS descrizione UNION SELECT id, CONCAT_WS( ' - ', nomesede, citta ) AS descrizione FROM an_sedi WHERE idanagrafica='$idanagrafica$'", "value": "$idsede$", "required": "1", "ajax-source": "sedi" ]}
|
||||
{[ "type": "select", "label": "<?php echo tr('Sede'); ?>", "name": "idsede", "value": "$idsede$", "required": "1", "ajax-source": "sedi", "placeholder": "Sede legale" ]}
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
@ -120,19 +119,19 @@ if (!empty($record['immagine'])) {
|
|||
$(document).ready(function(){
|
||||
|
||||
$('#idanagrafica').change( function(){
|
||||
|
||||
|
||||
session_set('superselect,idanagrafica', $(this).val(), 0);
|
||||
|
||||
var value = !$(this).val() ? true : false;
|
||||
|
||||
$("#idsede").prop("disabled", value);
|
||||
$("#idsede").selectReset();
|
||||
|
||||
|
||||
});
|
||||
|
||||
|
||||
$('#idsede').change( function(){
|
||||
//session_set('superselect,idsede', $(this).val(), 0);
|
||||
});
|
||||
|
||||
|
||||
});
|
||||
</script>
|
||||
</script>
|
||||
|
|
|
@ -11,16 +11,16 @@ if (!in_array($record['stato'], ['Evaso', 'Fatturato'])) {
|
|||
</button>
|
||||
<ul class="dropdown-menu dropdown-menu-right">';
|
||||
|
||||
if (in_array($record['stato'], ['Bozza', 'Parzialmente evaso'])){
|
||||
echo '
|
||||
if (in_array($record['stato'], ['Bozza', 'Parzialmente evaso'])) {
|
||||
echo '
|
||||
<li>
|
||||
<a data-href="'.$rootdir.'/modules/fatture/crea_documento.php?id_module='.$id_module.'&id_record='.$id_record.'&documento=ddt" data-toggle="modal" data-title="'.tr('Crea ddt').'" data-target="#bs-popup"><i class="fa fa-file-o"></i> '.tr('ddt').'
|
||||
</a>
|
||||
</li>';
|
||||
}
|
||||
}
|
||||
|
||||
if (in_array($record['stato'], ['Bozza', 'Parzialmente fatturato'])){
|
||||
echo '
|
||||
if (in_array($record['stato'], ['Bozza', 'Parzialmente fatturato'])) {
|
||||
echo '
|
||||
<li>
|
||||
<a data-href="'.$rootdir.'/modules/fatture/crea_documento.php?id_module='.$id_module.'&id_record='.$id_record.'&documento=fattura" data-toggle="modal" data-title="'.tr('Crea fattura').'" data-target="#bs-popup"><i class="fa fa-file"></i> '.tr('fattura').'
|
||||
</a>
|
||||
|
|
|
@ -15,15 +15,15 @@ include_once __DIR__.'/../../core.php';
|
|||
<div class="panel-body">
|
||||
<div class="row">
|
||||
<div class="col-md-4">
|
||||
{[ "type": "text", "label": "<?php echo tr('Descrizione'); ?>", "name": "descrizione", "value": "$descrizione$" ]}
|
||||
{[ "type": "text", "label": "<?php echo tr('Descrizione'); ?>", "name": "descrizione", "value": "$descrizione$" ]}
|
||||
</div>
|
||||
|
||||
<div class="col-md-4">
|
||||
{[ "type": "select", "label": "<?php echo tr('Conto predefinito per le vendite'); ?>", "name": "idconto_vendite", "value": "$idconto_vendite$", "ajax-source": "conti" ]}
|
||||
{[ "type": "select", "label": "<?php echo tr('Conto predefinito per le vendite'); ?>", "name": "idconto_vendite", "value": "$idconto_vendite$", "ajax-source": "conti" ]}
|
||||
</div>
|
||||
|
||||
<div class="col-md-4">
|
||||
{[ "type": "select", "label": "<?php echo tr('Conto predefinito per gli acquisti'); ?>", "name": "idconto_acquisti", "value": "$idconto_acquisti$", "ajax-source": "conti" ]}
|
||||
{[ "type": "select", "label": "<?php echo tr('Conto predefinito per gli acquisti'); ?>", "name": "idconto_acquisti", "value": "$idconto_acquisti$", "ajax-source": "conti" ]}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
@ -179,7 +179,7 @@ $(document).ready(function(){
|
|||
$(this).parentsUntil('.box').find('[id*=giorno]').prop('disabled', false);
|
||||
}
|
||||
});
|
||||
|
||||
|
||||
$(document).on('change', '[id*=percentuale]', function(){
|
||||
$('button[type=submit]').prop( 'disabled', false ).removeClass('disabled');
|
||||
});
|
||||
|
|
|
@ -14,7 +14,7 @@ include_once __DIR__.'/../../core.php';
|
|||
<div class="panel-body">
|
||||
<div class="row">
|
||||
<div class="col-md-12">
|
||||
{[ "type": "text", "label": "<?php echo tr('Descrizione'); ?>", "name": "descrizione", "required": 1, "value": "$descrizione$" ]}
|
||||
{[ "type": "text", "label": "<?php echo tr('Descrizione'); ?>", "name": "descrizione", "required": 1, "value": "$descrizione$" ]}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
|
|
@ -13,7 +13,7 @@ $id_anagrafica = !empty(get('idanagrafica')) ? get('idanagrafica') : $user['idan
|
|||
{[ "type": "text", "label": "<?php echo tr('Nome preventivo'); ?>", "name": "nome", "required": 1 ]}
|
||||
</div>
|
||||
<div class="col-md-6">
|
||||
{[ "type": "select", "label": "<?php echo tr('Cliente'); ?>", "name": "idanagrafica", "required": 1, "value": "<?php echo $id_anagrafica; ?>", "ajax-source": "clienti", "icon-after": "add|<?php echo Modules::get('Anagrafiche')['id']; ?>|tipoanagrafica=Cliente" ]}
|
||||
{[ "type": "select", "label": "<?php echo tr('Cliente'); ?>", "name": "idanagrafica", "required": 1, "value": "<?php echo $id_anagrafica; ?>", "ajax-source": "clienti", "icon-after": "add|<?php echo Modules::get('Anagrafiche')['id']; ?>|tipoanagrafica=Cliente" ]}
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
|
|
@ -309,7 +309,7 @@ if (in_array($record['stato'], ['Accettato', 'In lavorazione', 'Pagato'])) {
|
|||
|
||||
<div class="row">
|
||||
<div class="col-md-4">
|
||||
{[ "type": "select", "label": "'.tr('Aggiungi un altro intervento a questo preventivo').'", "name": "idintervento", "values": "query=SELECT id, CONCAT(\'Intervento \', codice, \' del \', DATE_FORMAT(IFNULL((SELECT MIN(orario_inizio) FROM in_interventi_tecnici WHERE in_interventi_tecnici.idintervento=in_interventi.id), data_richiesta), \'%d/%m/%Y\')) AS descrizione FROM in_interventi WHERE id NOT IN( SELECT idintervento FROM co_preventivi_interventi WHERE idintervento IS NOT NULL) AND id NOT IN( SELECT idintervento FROM co_righe_documenti WHERE idintervento IS NOT NULL) AND id NOT IN( SELECT idintervento FROM co_contratti_promemoria WHERE idintervento IS NOT NULL) AND idanagrafica='.prepare($record['idanagrafica']).'" ]}
|
||||
{[ "type": "select", "label": "'.tr('Aggiungi un altro intervento a questo preventivo').'", "name": "idintervento", "values": "query=SELECT id, CONCAT(\'Intervento \', codice, \' del \', DATE_FORMAT(IFNULL((SELECT MIN(orario_inizio) FROM in_interventi_tecnici WHERE in_interventi_tecnici.idintervento=in_interventi.id), data_richiesta), \'%d/%m/%Y\')) AS descrizione FROM in_interventi WHERE id NOT IN( SELECT idintervento FROM co_preventivi_interventi WHERE idintervento IS NOT NULL) AND id NOT IN( SELECT idintervento FROM co_righe_documenti WHERE idintervento IS NOT NULL) AND id NOT IN( SELECT idintervento FROM co_contratti_promemoria WHERE idintervento IS NOT NULL) AND idanagrafica='.prepare($record['idanagrafica']).'" ]}
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
|
|
@ -5,7 +5,7 @@ include_once __DIR__.'/../../core.php';
|
|||
/*
|
||||
ARTICOLI + RIGHE GENERICHE
|
||||
*/
|
||||
$q_art = 'SELECT *, round(sconto_unitario,'.setting('Cifre decimali per importi').') AS sconto_unitario, round(sconto,'.setting('Cifre decimali per importi').') AS sconto, round(subtotale,'.setting('Cifre decimali per importi').') AS subtotale, IFNULL((SELECT codice FROM mg_articoli WHERE id=idarticolo), "") AS codice FROM co_righe_preventivi WHERE idpreventivo='.prepare($id_record).' ORDER BY `order`';
|
||||
$q_art = 'SELECT *, round(sconto_unitario,'.setting('Cifre decimali per importi').') AS sconto_unitario, round(sconto,'.setting('Cifre decimali per importi').') AS sconto, round(subtotale,'.setting('Cifre decimali per importi').') AS subtotale, IFNULL((SELECT codice FROM mg_articoli WHERE id=idarticolo), "") AS codice FROM co_righe_preventivi WHERE idpreventivo='.prepare($id_record).' ORDER BY `order`';
|
||||
$rs = $dbo->fetchArray($q_art);
|
||||
|
||||
echo '
|
||||
|
|
|
@ -10,5 +10,5 @@ return [
|
|||
'numero' => $r['numero'],
|
||||
'descrizione' => $r['descrizione'],
|
||||
'data' => Translator::dateToLocale($r['data_bozza']),
|
||||
'id_anagrafica' => $r['idanagrafica'],
|
||||
'id_anagrafica' => $r['idanagrafica'],
|
||||
];
|
||||
|
|
|
@ -15,7 +15,7 @@ include_once __DIR__.'/../../core.php';
|
|||
<div class="panel-body">
|
||||
<div class="row">
|
||||
<div class="col-md-12">
|
||||
{[ "type": "text", "label": "<?php echo tr('Descrizione'); ?>", "name": "descrizione", "required": 1, "value": "$descrizione$" ]}
|
||||
{[ "type": "text", "label": "<?php echo tr('Descrizione'); ?>", "name": "descrizione", "required": 1, "value": "$descrizione$" ]}
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
|
|
@ -40,7 +40,7 @@ include_once __DIR__.'/../../core.php';
|
|||
</div>
|
||||
|
||||
<div class="col-md-4">
|
||||
{[ "type": "select", "label": "<?php echo tr('Posizione'); ?>", "name": "position", "required": 1, "values":"list=\"WHR\": \"WHERE\", \"HVN\": \"HAVING\"", "value": "$position$" ]}
|
||||
{[ "type": "select", "label": "<?php echo tr('Posizione'); ?>", "name": "position", "required": 1, "values":"list=\"WHR\": \"WHERE\", \"HVN\": \"HAVING\"", "value": "$position$" ]}
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
|
|
@ -20,11 +20,11 @@ include_once __DIR__.'/../../core.php';
|
|||
</div>
|
||||
|
||||
<div class="col-md-3">
|
||||
{[ "type": "checkbox", "label": "<?php echo tr('Indirizzo PEC'); ?>", "name": "pec", "value": "$pec$" ]}
|
||||
{[ "type": "checkbox", "label": "<?php echo tr('Indirizzo PEC'); ?>", "name": "pec", "value": "$pec$" ]}
|
||||
</div>
|
||||
|
||||
<div class="col-md-3">
|
||||
{[ "type": "checkbox", "label": "<?php echo tr('Indirizzo predefinito'); ?>", "name": "main", "value": "$main$", "help": "<?php echo tr('Account da utilizzare per l\'invio di tutte le email dal gestionale.'); ?>" ]}
|
||||
{[ "type": "checkbox", "label": "<?php echo tr('Indirizzo predefinito'); ?>", "name": "main", "value": "$main$", "help": "<?php echo tr('Account da utilizzare per l\'invio di tutte le email dal gestionale.'); ?>" ]}
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
|
|
@ -9,7 +9,7 @@ switch (post('op')) {
|
|||
$completato = post('completato');
|
||||
|
||||
// Aggiorna
|
||||
$query = 'UPDATE in_statiintervento SET descrizione='.prepare($descrizione).', colore='.prepare($colore).', completato='.prepare($completato).' WHERE idstatointervento='.prepare($id_record);
|
||||
$query = 'UPDATE in_statiintervento SET descrizione='.prepare($descrizione).', colore='.prepare($colore).', completato='.prepare($completato).' WHERE idstatointervento='.prepare($id_record);
|
||||
$dbo->query($query);
|
||||
|
||||
flash()->info(tr('Informazioni salvate correttamente.'));
|
||||
|
|
|
@ -8,7 +8,7 @@ include_once __DIR__.'/../../core.php';
|
|||
|
||||
<div class="row">
|
||||
<div class="col-md-2">
|
||||
{[ "type": "text", "label": "<?php echo tr('Codice'); ?>", "name": "idstatointervento", "maxlength": 10, "class": "alphanumeric-mask", "required": 1 ]}
|
||||
{[ "type": "text", "label": "<?php echo tr('Codice'); ?>", "name": "idstatointervento", "maxlength": 10, "class": "alphanumeric-mask", "required": 1 ]}
|
||||
</div>
|
||||
|
||||
<div class="col-md-6">
|
||||
|
|
|
@ -111,7 +111,7 @@ $(document).ready(function() {
|
|||
</script>';
|
||||
|
||||
// Clienti top
|
||||
$clienti = $dbo->fetchArray("SELECT SUM(co_righe_documenti.subtotale - co_righe_documenti.sconto) AS totale, (SELECT COUNT(*) FROM co_documenti WHERE co_documenti.idanagrafica =an_anagrafiche.idanagrafica AND co_documenti.data BETWEEN ".prepare($start)." AND ".prepare($end).") AS qta, an_anagrafiche.idanagrafica, an_anagrafiche.ragione_sociale FROM co_documenti INNER JOIN co_tipidocumento ON co_documenti.idtipodocumento=co_tipidocumento.id INNER JOIN co_righe_documenti ON co_righe_documenti.iddocumento=co_documenti.id INNER JOIN an_anagrafiche ON an_anagrafiche.idanagrafica=co_documenti.idanagrafica WHERE co_tipidocumento.dir='entrata' AND co_documenti.data BETWEEN ".prepare($start).' AND '.prepare($end).' GROUP BY an_anagrafiche.idanagrafica ORDER BY SUM(subtotale - sconto) DESC LIMIT 15');
|
||||
$clienti = $dbo->fetchArray('SELECT SUM(co_righe_documenti.subtotale - co_righe_documenti.sconto) AS totale, (SELECT COUNT(*) FROM co_documenti WHERE co_documenti.idanagrafica =an_anagrafiche.idanagrafica AND co_documenti.data BETWEEN '.prepare($start).' AND '.prepare($end).") AS qta, an_anagrafiche.idanagrafica, an_anagrafiche.ragione_sociale FROM co_documenti INNER JOIN co_tipidocumento ON co_documenti.idtipodocumento=co_tipidocumento.id INNER JOIN co_righe_documenti ON co_righe_documenti.iddocumento=co_documenti.id INNER JOIN an_anagrafiche ON an_anagrafiche.idanagrafica=co_documenti.idanagrafica WHERE co_tipidocumento.dir='entrata' AND co_documenti.data BETWEEN ".prepare($start).' AND '.prepare($end).' GROUP BY an_anagrafiche.idanagrafica ORDER BY SUM(subtotale - sconto) DESC LIMIT 15');
|
||||
|
||||
$totale = $dbo->fetchArray("SELECT SUM(co_righe_documenti.subtotale - co_righe_documenti.sconto) AS totale FROM co_documenti INNER JOIN co_tipidocumento ON co_documenti.idtipodocumento=co_tipidocumento.id INNER JOIN co_righe_documenti ON co_righe_documenti.iddocumento=co_documenti.id WHERE co_tipidocumento.dir='entrata' AND co_documenti.data BETWEEN ".prepare($start).' AND '.prepare($end));
|
||||
|
||||
|
|
|
@ -74,7 +74,7 @@ switch (post('op')) {
|
|||
|
||||
// ...altrimenti la creo
|
||||
else {
|
||||
if ($dbo->query('INSERT INTO in_tariffe( idtecnico, idtipointervento, costo_ore, costo_km, costo_dirittochiamata, costo_ore_tecnico, costo_km_tecnico, costo_dirittochiamata_tecnico ) VALUES( '.prepare(post('idtecnico')).', '.prepare(post('idtipointervento')).', (SELECT costo_orario FROM in_tipiintervento WHERE idtipointervento='.prepare(post('idtipointervento')).'), (SELECT costo_km FROM in_tipiintervento WHERE idtipointervento='.prepare(post('idtipointervento')).'), (SELECT costo_diritto_chiamata FROM in_tipiintervento WHERE idtipointervento='.prepare(post('idtipointervento')).'), (SELECT costo_orario_tecnico FROM in_tipiintervento WHERE idtipointervento='.prepare(post('idtipointervento')).'), (SELECT costo_km_tecnico FROM in_tipiintervento WHERE idtipointervento='.prepare(post('idtipointervento')).'), (SELECT costo_diritto_chiamata_tecnico FROM in_tipiintervento WHERE idtipointervento='.prepare(post('idtipointervento')).') )')) {
|
||||
if ($dbo->query('INSERT INTO in_tariffe( idtecnico, idtipointervento, costo_ore, costo_km, costo_dirittochiamata, costo_ore_tecnico, costo_km_tecnico, costo_dirittochiamata_tecnico ) VALUES( '.prepare(post('idtecnico')).', '.prepare(post('idtipointervento')).', (SELECT costo_orario FROM in_tipiintervento WHERE idtipointervento='.prepare(post('idtipointervento')).'), (SELECT costo_km FROM in_tipiintervento WHERE idtipointervento='.prepare(post('idtipointervento')).'), (SELECT costo_diritto_chiamata FROM in_tipiintervento WHERE idtipointervento='.prepare(post('idtipointervento')).'), (SELECT costo_orario_tecnico FROM in_tipiintervento WHERE idtipointervento='.prepare(post('idtipointervento')).'), (SELECT costo_km_tecnico FROM in_tipiintervento WHERE idtipointervento='.prepare(post('idtipointervento')).'), (SELECT costo_diritto_chiamata_tecnico FROM in_tipiintervento WHERE idtipointervento='.prepare(post('idtipointervento')).') )')) {
|
||||
flash()->info(tr('Informazioni salvate correttamente!'));
|
||||
} else {
|
||||
flash()->error(tr("Errore durante l'importazione tariffe!"));
|
||||
|
|
|
@ -49,10 +49,10 @@ if (!empty($utenti)) {
|
|||
if ($utente['id'] != '1') {
|
||||
if ($utente['enabled'] == 1) {
|
||||
echo '
|
||||
<a href="javascript:;" onclick="swal({ title: \''.tr('Disabilitare questo utente?').'\', type: \'info\', showCancelButton: true, confirmButtonText: \''.tr('Sì').'\' }).then(function (result) { location.href=\''.$rootdir.'/editor.php?id_module='.$id_module.'&id_record='.$id_record.'&op=disable&id_utente='.$utente['id'].'&idgruppo='.$record['id'].'\'; }) " title="Disabilita utente" class="text-danger tip"><i class="fa fa-2x fa-eye-slash"></i></a>';
|
||||
<a href="javascript:;" onclick="swal({ title: \''.tr('Disabilitare questo utente?').'\', type: \'info\', showCancelButton: true, confirmButtonText: \''.tr('Sì').'\' }).then(function (result) { location.href=\''.$rootdir.'/editor.php?id_module='.$id_module.'&id_record='.$id_record.'&op=disable&id_utente='.$utente['id'].'&idgruppo='.$record['id'].'\'; }) " title="Disabilita utente" class="text-danger tip"><i class="fa fa-2x fa-eye-slash"></i></a>';
|
||||
} else {
|
||||
echo '
|
||||
<a href="javascript:;" onclick="swal({ title: \''.tr('Abilitare questo utente?').'\', type: \'info\', showCancelButton: true, confirmButtonText: \''.tr('Sì').'\' }).then(function (result) { location.href=\''.$rootdir.'/editor.php?id_module='.$id_module.'&id_record='.$id_record.'&op=enable&id_utente='.$utente['id'].'&idgruppo='.$record['id'].'\'; }) " title="Abilita utente" class="text-success tip"><i class="fa fa-2x fa-eye"></i></a>';
|
||||
<a href="javascript:;" onclick="swal({ title: \''.tr('Abilitare questo utente?').'\', type: \'info\', showCancelButton: true, confirmButtonText: \''.tr('Sì').'\' }).then(function (result) { location.href=\''.$rootdir.'/editor.php?id_module='.$id_module.'&id_record='.$id_record.'&op=enable&id_utente='.$utente['id'].'&idgruppo='.$record['id'].'\'; }) " title="Abilita utente" class="text-success tip"><i class="fa fa-2x fa-eye"></i></a>';
|
||||
}
|
||||
} else {
|
||||
echo '
|
||||
|
@ -69,10 +69,10 @@ if (!empty($utenti)) {
|
|||
|
||||
if (!empty($token['enabled'])) {
|
||||
echo '
|
||||
<a href="javascript:;" onclick="swal({ title: \''.tr("Disabilitare l\'accesso API per questo utente?").'\', type: \'info\', showCancelButton: true, confirmButtonText: \''.tr('Sì').'\' }).then(function (result) { location.href=\''.$rootdir.'/editor.php?id_module='.$id_module.'&id_record='.$id_record.'&op=token&id_utente='.$utente['id'].'&idgruppo='.$record['id'].'\'; }) " title="Disabilita API" class="text-danger tip"><i class="fa fa-2x fa-key"></i></a>';
|
||||
<a href="javascript:;" onclick="swal({ title: \''.tr("Disabilitare l\'accesso API per questo utente?").'\', type: \'info\', showCancelButton: true, confirmButtonText: \''.tr('Sì').'\' }).then(function (result) { location.href=\''.$rootdir.'/editor.php?id_module='.$id_module.'&id_record='.$id_record.'&op=token&id_utente='.$utente['id'].'&idgruppo='.$record['id'].'\'; }) " title="Disabilita API" class="text-danger tip"><i class="fa fa-2x fa-key"></i></a>';
|
||||
} else {
|
||||
echo '
|
||||
<a href="javascript:;" onclick="swal({ title: \''.tr("Abilitare l\'accesso API per questo utente?").'\', type: \'info\', showCancelButton: true, confirmButtonText: \''.tr('Sì').'\' }).then(function (result) { location.href=\''.$rootdir.'/editor.php?id_module='.$id_module.'&id_record='.$id_record.'&op=token&id_utente='.$utente['id'].'&idgruppo='.$record['id'].'\'; }) " title="Abilitare API" class="text-success tip"><i class="fa fa-2x fa-key"></i></a>';
|
||||
<a href="javascript:;" onclick="swal({ title: \''.tr("Abilitare l\'accesso API per questo utente?").'\', type: \'info\', showCancelButton: true, confirmButtonText: \''.tr('Sì').'\' }).then(function (result) { location.href=\''.$rootdir.'/editor.php?id_module='.$id_module.'&id_record='.$id_record.'&op=token&id_utente='.$utente['id'].'&idgruppo='.$record['id'].'\'; }) " title="Abilitare API" class="text-success tip"><i class="fa fa-2x fa-key"></i></a>';
|
||||
}
|
||||
} else {
|
||||
echo '
|
||||
|
@ -82,7 +82,7 @@ if (!empty($utenti)) {
|
|||
// Eliminazione utente, se diverso da id_utente #1 (admin)
|
||||
if ($utente['id'] != '1') {
|
||||
echo '
|
||||
<a href="javascript:;" onclick="swal({ title: \''.tr('Eliminare questo utente?').'\', type: \'info\', showCancelButton: true, confirmButtonText: \''.tr('Sì').'\' }).then(function (result) { location.href=\''.$rootdir.'/editor.php?id_module='.$id_module.'&id_record='.$id_record.'&op=delete&id_utente='.$utente['id'].'&idgruppo='.$record['id'].'\'; }) " title="Elimina utente" class="text-danger tip"><i class="fa fa-2x fa-trash"></i></a>';
|
||||
<a href="javascript:;" onclick="swal({ title: \''.tr('Eliminare questo utente?').'\', type: \'info\', showCancelButton: true, confirmButtonText: \''.tr('Sì').'\' }).then(function (result) { location.href=\''.$rootdir.'/editor.php?id_module='.$id_module.'&id_record='.$id_record.'&op=delete&id_utente='.$utente['id'].'&idgruppo='.$record['id'].'\'; }) " title="Elimina utente" class="text-danger tip"><i class="fa fa-2x fa-trash"></i></a>';
|
||||
} else {
|
||||
echo '
|
||||
<span onclick="alert(\"'.tr("Non è possibile eliminare l'utente admin").'\")" class="text-muted tip"><i class="fa fa-2x fa-trash"></i></span>';
|
||||
|
|
|
@ -144,7 +144,7 @@ if (!empty($options) && $options != 'custom') {
|
|||
|
||||
<div class="row">
|
||||
<div class="col-md-6">
|
||||
{[ "type": "select", "label": "'.tr('Gruppi con accesso').'", "name": "gruppi['.$key.'][]", "multiple": "1", "values": "query=SELECT id, nome AS descrizione FROM zz_groups ORDER BY id ASC", "value": "';
|
||||
{[ "type": "select", "label": "'.tr('Gruppi con accesso').'", "name": "gruppi['.$key.'][]", "multiple": "1", "values": "query=SELECT id, nome AS descrizione FROM zz_groups ORDER BY id ASC", "value": "';
|
||||
$results = $dbo->fetchArray('SELECT GROUP_CONCAT(DISTINCT id_gruppo SEPARATOR \',\') AS gruppi FROM zz_group_view WHERE id_vista='.prepare($field['id']));
|
||||
|
||||
echo $results[0]['gruppi'].'"';
|
||||
|
@ -264,7 +264,7 @@ if (!empty($options) && $options != 'custom') {
|
|||
|
||||
<div class="row">
|
||||
<div class="col-md-6">
|
||||
{[ "type": "select", "label": "'.tr('Gruppi con accesso').'", "name": "gruppi[-id-][]", "multiple": "1", "values": "query=SELECT id, nome AS descrizione FROM zz_groups ORDER BY id ASC" ]}
|
||||
{[ "type": "select", "label": "'.tr('Gruppi con accesso').'", "name": "gruppi[-id-][]", "multiple": "1", "values": "query=SELECT id, nome AS descrizione FROM zz_groups ORDER BY id ASC" ]}
|
||||
</div>
|
||||
|
||||
<div class="col-md-6">
|
||||
|
@ -369,7 +369,7 @@ if (!empty($options) && $options != 'custom') {
|
|||
</div>
|
||||
|
||||
<div class="col-md-3">
|
||||
{[ "type": "select", "label": "'.tr('Gruppo').'", "name": "gruppo['.$num.']", "values": "query=SELECT id, nome AS descrizione FROM zz_groups ORDER BY id ASC", "value": "'.$additional['idgruppo'].'"';
|
||||
{[ "type": "select", "label": "'.tr('Gruppo').'", "name": "gruppo['.$num.']", "values": "query=SELECT id, nome AS descrizione FROM zz_groups ORDER BY id ASC", "value": "'.$additional['idgruppo'].'"';
|
||||
if (!$editable) {
|
||||
echo ', "readonly": "1"';
|
||||
}
|
||||
|
|
|
@ -10,7 +10,7 @@ include_once __DIR__.'/../../core.php';
|
|||
|
||||
<div class="row">
|
||||
<div class="col-md-4">
|
||||
{[ "type": "text", "label": "<?php echo tr('Codice'); ?>", "name": "nome", "required": 1, "maxlength": 25, "class": "alphanumeric-mask", "value": "$nome$" ]}
|
||||
{[ "type": "text", "label": "<?php echo tr('Codice'); ?>", "name": "nome", "required": 1, "maxlength": 25, "class": "alphanumeric-mask", "value": "$nome$" ]}
|
||||
</div>
|
||||
|
||||
<div class="col-md-8">
|
||||
|
|
|
@ -27,7 +27,7 @@ echo '
|
|||
|
||||
<div class="row">
|
||||
<div class="col-md-6">
|
||||
{[ "type": "text", "label": "'.tr('Indirizzo').'", "name": "indirizzo", "id": "indirizzo_", "required": 1, "value": "$indirizzo$" ]}
|
||||
{[ "type": "text", "label": "'.tr('Indirizzo').'", "name": "indirizzo", "id": "indirizzo_", "required": 1, "value": "$indirizzo$" ]}
|
||||
</div>
|
||||
|
||||
<div class="col-md-6">
|
||||
|
@ -105,7 +105,7 @@ if (!empty($google)) {
|
|||
</div>
|
||||
|
||||
<div class="col-md-2">
|
||||
{[ "type": "text", "label": "'.tr('Longitudine').'", "name": "lng", "id": "lng_", "value": "$lng$", "extra": "data-geo=\'lng\'", "class": "text-right" ]}
|
||||
{[ "type": "text", "label": "'.tr('Longitudine').'", "name": "lng", "id": "lng_", "value": "$lng$", "extra": "data-geo=\'lng\'", "class": "text-right" ]}
|
||||
</div>';
|
||||
|
||||
// Vedi su google maps
|
||||
|
|
|
@ -2,7 +2,6 @@
|
|||
|
||||
namespace Models;
|
||||
|
||||
use Auth;
|
||||
use Illuminate\Database\Eloquent\Model;
|
||||
|
||||
class Group extends Model
|
||||
|
|
|
@ -9,7 +9,7 @@ if (isset($_SESSION['period']['month'])) {
|
|||
$month = $period[0];
|
||||
$year = $period[1];
|
||||
|
||||
$months = ['Gennaio' => '01', 'Febbraio' => '02', 'Marzo' => '03', 'Aprile' => '04', 'Maggio' => '05', 'Giugno' => '06', 'Luglio' => '07', 'Agosto' => '08', 'Settembre' => '09', 'Ottobre' => '10', 'Novembre' => '11', 'Dicembre' => '12'];
|
||||
$months = ['Gennaio' => '01', 'Febbraio' => '02', 'Marzo' => '03', 'Aprile' => '04', 'Maggio' => '05', 'Giugno' => '06', 'Luglio' => '07', 'Agosto' => '08', 'Settembre' => '09', 'Ottobre' => '10', 'Novembre' => '11', 'Dicembre' => '12'];
|
||||
$month = $months[$month];
|
||||
|
||||
$title = $_SESSION['period']['month'];
|
||||
|
@ -44,7 +44,7 @@ if (isset($_SESSION['period']['week'])) {
|
|||
$year = $period[5];
|
||||
}
|
||||
|
||||
$months = ['gen' => '01', 'feb' => '02', 'mar' => '03', 'apr' => '04', 'mag' => '05', 'giu' => '06', 'lug' => '07', 'ago' => '08', 'set' => '09', 'ott' => '10', 'nov' => '11', 'dic' => '12'];
|
||||
$months = ['gen' => '01', 'feb' => '02', 'mar' => '03', 'apr' => '04', 'mag' => '05', 'giu' => '06', 'lug' => '07', 'ago' => '08', 'set' => '09', 'ott' => '10', 'nov' => '11', 'dic' => '12'];
|
||||
$month = $months[$month];
|
||||
$maxmonth = $months[$maxmonth];
|
||||
|
||||
|
@ -70,8 +70,8 @@ $stati = (array) $_SESSION['dashboard']['idstatiintervento'];
|
|||
$tipi = (array) $_SESSION['dashboard']['idtipiintervento'];
|
||||
$tecnici = (array) $_SESSION['dashboard']['idtecnici'];
|
||||
|
||||
//in_interventi_tecnici.idintervento, colore, in_interventi_tecnici.id, idtecnico, orario_inizio, orario_fine,(SELECT ragione_sociale FROM an_anagrafiche WHERE idanagrafica=idtecnico) AS nome_tecnico, (SELECT colore FROM an_anagrafiche WHERE idanagrafica=idtecnico) AS colore_tecnico,
|
||||
$query = 'SELECT DAY(in_interventi_tecnici.orario_inizio) AS giorno, orario_inizio AS data, GROUP_CONCAT((SELECT ragione_sociale FROM an_anagrafiche WHERE idanagrafica=in_interventi.idanagrafica) SEPARATOR \'<br>\') AS cliente FROM in_interventi_tecnici INNER JOIN (in_interventi LEFT OUTER JOIN in_statiintervento ON in_interventi.idstatointervento=in_statiintervento.idstatointervento) ON in_interventi_tecnici.idintervento=in_interventi.id WHERE '.$where.' idtecnico IN('.implode(',', $tecnici).') AND in_interventi.idstatointervento IN('.implode(',', $stati).') AND in_interventi_tecnici.idtipointervento IN('.implode(',', $tipi).') '.Modules::getAdditionalsQuery('Interventi').' GROUP BY giorno ORDER BY CAST(giorno AS UNSIGNED)';
|
||||
//in_interventi_tecnici.idintervento, colore, in_interventi_tecnici.id, idtecnico, orario_inizio, orario_fine,(SELECT ragione_sociale FROM an_anagrafiche WHERE idanagrafica=idtecnico) AS nome_tecnico, (SELECT colore FROM an_anagrafiche WHERE idanagrafica=idtecnico) AS colore_tecnico,
|
||||
$query = 'SELECT DAY(in_interventi_tecnici.orario_inizio) AS giorno, orario_inizio AS data, GROUP_CONCAT((SELECT ragione_sociale FROM an_anagrafiche WHERE idanagrafica=in_interventi.idanagrafica) SEPARATOR \'<br>\') AS cliente FROM in_interventi_tecnici INNER JOIN (in_interventi LEFT OUTER JOIN in_statiintervento ON in_interventi.idstatointervento=in_statiintervento.idstatointervento) ON in_interventi_tecnici.idintervento=in_interventi.id WHERE '.$where.' idtecnico IN('.implode(',', $tecnici).') AND in_interventi.idstatointervento IN('.implode(',', $stati).') AND in_interventi_tecnici.idtipointervento IN('.implode(',', $tipi).') '.Modules::getAdditionalsQuery('Interventi').' GROUP BY giorno ORDER BY CAST(giorno AS UNSIGNED)';
|
||||
|
||||
//echo $query;
|
||||
|
||||
|
@ -129,7 +129,7 @@ function showMonth($month, $year, &$rs, &$height)
|
|||
|
||||
$day = (($lastdateofmonth - $offset) + ($i));
|
||||
$weekday = date('l', strtotime($current_year.'-'.$current_month.'-'.(sprintf('%02d', $day))));
|
||||
$weekdays = ['Monday' => 'Lunedi\'', 'Tuesday' => 'Martedi\'', 'Wednesday' => 'Mercoledi\'', 'Thursday' => 'Giovedi\'', 'Friday' => 'Venerdi\'', 'Saturday' => 'Sabato', 'Sunday' => 'Domenica'];
|
||||
$weekdays = ['Monday' => 'Lunedi\'', 'Tuesday' => 'Martedi\'', 'Wednesday' => 'Mercoledi\'', 'Thursday' => 'Giovedi\'', 'Friday' => 'Venerdi\'', 'Saturday' => 'Sabato', 'Sunday' => 'Domenica'];
|
||||
$weekday = $weekdays[$weekday];
|
||||
|
||||
$header[$rows] .= '<th>'.tr($weekday.' '.(sprintf('%02d', $day)).'/'.(sprintf('%02d', $current_month)), [], ['upper' => true])."</th>\n";
|
||||
|
@ -148,7 +148,7 @@ function showMonth($month, $year, &$rs, &$height)
|
|||
}
|
||||
|
||||
$weekday = date('l', strtotime($year.'-'.$month.'-'.(sprintf('%02d', $day))));
|
||||
$weekdays = ['Monday' => 'Lunedi\'', 'Tuesday' => 'Martedi\'', 'Wednesday' => 'Mercoledi\'', 'Thursday' => 'Giovedi\'', 'Friday' => 'Venerdi\'', 'Saturday' => 'Sabato', 'Sunday' => 'Domenica'];
|
||||
$weekdays = ['Monday' => 'Lunedi\'', 'Tuesday' => 'Martedi\'', 'Wednesday' => 'Mercoledi\'', 'Thursday' => 'Giovedi\'', 'Friday' => 'Venerdi\'', 'Saturday' => 'Sabato', 'Sunday' => 'Domenica'];
|
||||
$weekday = $weekdays[$weekday];
|
||||
|
||||
$header[$rows] .= '<th>'.tr($weekday.' '.(sprintf('%02d', $day)).'/'.$month, [], ['upper' => true])."</th>\n";
|
||||
|
@ -178,7 +178,7 @@ function showMonth($month, $year, &$rs, &$height)
|
|||
//$lastdate = $lastdateofmonth."/".$current_month."/".$current_year;
|
||||
|
||||
$weekday = date('l', strtotime($current_year.'-'.$current_month.'-'.(sprintf('%02d', $i))));
|
||||
$weekdays = ['Monday' => 'Lunedi\'', 'Tuesday' => 'Martedi\'', 'Wednesday' => 'Mercoledi\'', 'Thursday' => 'Giovedi\'', 'Friday' => 'Venerdi\'', 'Saturday' => 'Sabato', 'Sunday' => 'Domenica'];
|
||||
$weekdays = ['Monday' => 'Lunedi\'', 'Tuesday' => 'Martedi\'', 'Wednesday' => 'Mercoledi\'', 'Thursday' => 'Giovedi\'', 'Friday' => 'Venerdi\'', 'Saturday' => 'Sabato', 'Sunday' => 'Domenica'];
|
||||
$weekday = $weekdays[$weekday];
|
||||
|
||||
$header[$rows] .= '<th> '.tr($weekday.' '.(sprintf('%02d', $i)).'/'.(sprintf('%02d', $current_month)), [], ['upper' => true])." </th>\n";
|
||||
|
|
|
@ -59,16 +59,18 @@ foreach ($righe as $r) {
|
|||
|
||||
// Valori assoluti
|
||||
$r['qta'] = abs($r['qta']);
|
||||
if (empty($r['sconto_globale']))
|
||||
$r['subtotale'] = abs($r['subtotale']);
|
||||
else
|
||||
$r['subtotale'] = ($r['subtotale']);
|
||||
if (empty($r['sconto_globale'])) {
|
||||
$r['subtotale'] = abs($r['subtotale']);
|
||||
} else {
|
||||
$r['subtotale'] = ($r['subtotale']);
|
||||
}
|
||||
$r['sconto_unitario'] = abs($r['sconto_unitario']);
|
||||
$r['sconto'] = abs($r['sconto']);
|
||||
if (empty($r['sconto_globale']))
|
||||
$r['iva'] = abs($r['iva']);
|
||||
else
|
||||
$r['iva'] = ($r['iva']);
|
||||
if (empty($r['sconto_globale'])) {
|
||||
$r['iva'] = abs($r['iva']);
|
||||
} else {
|
||||
$r['iva'] = ($r['iva']);
|
||||
}
|
||||
|
||||
echo '
|
||||
<tr>
|
||||
|
@ -141,7 +143,7 @@ foreach ($righe as $r) {
|
|||
echo "
|
||||
<td class='text-right'>";
|
||||
if (empty($r['is_descrizione'])) {
|
||||
echo '
|
||||
echo '
|
||||
'.(empty($r['qta']) || empty($r['subtotale']) ? '' : Translator::numberToLocale($r['subtotale'] / $r['qta'])).' €';
|
||||
|
||||
if ($r['sconto'] > 0) {
|
||||
|
@ -164,7 +166,7 @@ foreach ($righe as $r) {
|
|||
echo "
|
||||
<td class='text-right'>";
|
||||
if (empty($r['is_descrizione'])) {
|
||||
echo '
|
||||
echo '
|
||||
'.(empty($r['subtotale']) ? '' : Translator::numberToLocale($r['subtotale'] - $r['sconto'])).' €';
|
||||
|
||||
if ($r['sconto'] > 0) {
|
||||
|
@ -273,7 +275,6 @@ echo '
|
|||
echo '
|
||||
</table>';
|
||||
|
||||
|
||||
// Calcoli
|
||||
$imponibile = sum(array_column($righe, 'subtotale'));
|
||||
$sconto = sum(array_column($righe, 'sconto'));
|
||||
|
|
|
@ -67,7 +67,7 @@ $body .= "
|
|||
<th bgcolor='#dddddd' class='full_cell1 cell-padded'>N<sup>o</sup> prot.</th>
|
||||
<th bgcolor='#dddddd' class='full_cell1 cell-padded'>N<sup>o</sup> doc.</th>
|
||||
<th bgcolor='#dddddd' class='full_cell cell-padded'>Data</th>
|
||||
<th bgcolor='#dddddd' class='full_cell cell-padded'>".(($dir=='entrata') ? 'Cliente': 'Fornitore')."</th>
|
||||
<th bgcolor='#dddddd' class='full_cell cell-padded'>".(($dir == 'entrata') ? 'Cliente' : 'Fornitore')."</th>
|
||||
<th bgcolor='#dddddd' class='full_cell cell-padded'>Causale</th>
|
||||
<th bgcolor='#dddddd' class='full_cell cell-padded'>Aliquota</th>
|
||||
<th bgcolor='#dddddd' class='full_cell cell-padded'>Imponibile</th>
|
||||
|
@ -78,21 +78,20 @@ $body .= "
|
|||
|
||||
for ($i = 0; $i < sizeof($rs); ++$i) {
|
||||
$body .= '<tr>';
|
||||
|
||||
|
||||
if ($rs[$i]['numero'] == $rs[$i - 1]['numero']) {
|
||||
$body .= " <td class='first_cell cell-padded text-center'></td>";
|
||||
$body .= " <td class='table_cell cell-padded text-center'></td>";
|
||||
$body .= " <td class='table_cell cell-padded text-center'></td>";
|
||||
|
||||
$body .= " <td class='table_cell cell-padded text-center'></td>";
|
||||
} else {
|
||||
$body .= " <td class='first_cell cell-padded text-center'>".$rs[$i]['numero'].'</td>';
|
||||
$body .= " <td class='first_cell cell-padded text-center'>".$rs[$i]['numero'].'</td>';
|
||||
$body .= " <td class='table_cell cell-padded text-center'>".$rs[$i]['numero_esterno'].'</td>';
|
||||
$body .= " <td class='table_cell cell-padded text-center'>".date('d/m/Y', strtotime($rs[$i]['data'])).'</td>';
|
||||
}
|
||||
|
||||
$body .= "<td class='table_cell cell-padded'>".$rs[$i]['ragione_sociale']."</td>";
|
||||
$body .= "<td class='table_cell cell-padded'>".$rs[$i]['ragione_sociale'].'</td>';
|
||||
|
||||
$body .= " <td class='table_cell cell-padded'>".(($dir=='entrata') ? 'Fattura di vendita': 'Fattura di acquisto').'</td>';
|
||||
$body .= " <td class='table_cell cell-padded'>".(($dir == 'entrata') ? 'Fattura di vendita' : 'Fattura di acquisto').'</td>';
|
||||
$body .= " <td class='table_cell cell-padded'>".$rs[$i]['desc_iva'].'</td>';
|
||||
$body .= " <td class='table_cell cell-padded text-right'>".Translator::numberToLocale($rs[$i]['subtotale']).' €</td>';
|
||||
$body .= " <td class='table_cell cell-padded text-right'>".Translator::numberToLocale($rs[$i]['iva']).' €</td>';
|
||||
|
|
|
@ -2,25 +2,26 @@
|
|||
|
||||
|
||||
/**
|
||||
* Inherited Methods
|
||||
* @method void wantToTest($text)
|
||||
* @method void wantTo($text)
|
||||
* @method void execute($callable)
|
||||
* @method void expectTo($prediction)
|
||||
* @method void expect($prediction)
|
||||
* @method void amGoingTo($argumentation)
|
||||
* @method void am($role)
|
||||
* @method void lookForwardTo($achieveValue)
|
||||
* @method void comment($description)
|
||||
* Inherited Methods.
|
||||
*
|
||||
* @method void wantToTest($text)
|
||||
* @method void wantTo($text)
|
||||
* @method void execute($callable)
|
||||
* @method void expectTo($prediction)
|
||||
* @method void expect($prediction)
|
||||
* @method void amGoingTo($argumentation)
|
||||
* @method void am($role)
|
||||
* @method void lookForwardTo($achieveValue)
|
||||
* @method void comment($description)
|
||||
* @method \Codeception\Lib\Friend haveFriend($name, $actorClass = NULL)
|
||||
*
|
||||
* @SuppressWarnings(PHPMD)
|
||||
*/
|
||||
*/
|
||||
class AcceptanceTester extends \Codeception\Actor
|
||||
{
|
||||
use _generated\AcceptanceTesterActions;
|
||||
|
||||
/**
|
||||
* Define custom actions here
|
||||
*/
|
||||
/*
|
||||
* Define custom actions here
|
||||
*/
|
||||
}
|
||||
|
|
|
@ -2,25 +2,26 @@
|
|||
|
||||
|
||||
/**
|
||||
* Inherited Methods
|
||||
* @method void wantToTest($text)
|
||||
* @method void wantTo($text)
|
||||
* @method void execute($callable)
|
||||
* @method void expectTo($prediction)
|
||||
* @method void expect($prediction)
|
||||
* @method void amGoingTo($argumentation)
|
||||
* @method void am($role)
|
||||
* @method void lookForwardTo($achieveValue)
|
||||
* @method void comment($description)
|
||||
* Inherited Methods.
|
||||
*
|
||||
* @method void wantToTest($text)
|
||||
* @method void wantTo($text)
|
||||
* @method void execute($callable)
|
||||
* @method void expectTo($prediction)
|
||||
* @method void expect($prediction)
|
||||
* @method void amGoingTo($argumentation)
|
||||
* @method void am($role)
|
||||
* @method void lookForwardTo($achieveValue)
|
||||
* @method void comment($description)
|
||||
* @method \Codeception\Lib\Friend haveFriend($name, $actorClass = NULL)
|
||||
*
|
||||
* @SuppressWarnings(PHPMD)
|
||||
*/
|
||||
*/
|
||||
class FunctionalTester extends \Codeception\Actor
|
||||
{
|
||||
use _generated\FunctionalTesterActions;
|
||||
|
||||
/**
|
||||
* Define custom actions here
|
||||
*/
|
||||
/*
|
||||
* Define custom actions here
|
||||
*/
|
||||
}
|
||||
|
|
|
@ -1,4 +1,5 @@
|
|||
<?php
|
||||
|
||||
namespace Helper;
|
||||
|
||||
// here you can define custom actions
|
||||
|
@ -6,5 +7,4 @@ namespace Helper;
|
|||
|
||||
class Functional extends \Codeception\Module
|
||||
{
|
||||
|
||||
}
|
||||
|
|
|
@ -1,4 +1,5 @@
|
|||
<?php
|
||||
|
||||
namespace Helper;
|
||||
|
||||
// here you can define custom actions
|
||||
|
@ -6,5 +7,4 @@ namespace Helper;
|
|||
|
||||
class Unit extends \Codeception\Module
|
||||
{
|
||||
|
||||
}
|
||||
|
|
|
@ -2,25 +2,26 @@
|
|||
|
||||
|
||||
/**
|
||||
* Inherited Methods
|
||||
* @method void wantToTest($text)
|
||||
* @method void wantTo($text)
|
||||
* @method void execute($callable)
|
||||
* @method void expectTo($prediction)
|
||||
* @method void expect($prediction)
|
||||
* @method void amGoingTo($argumentation)
|
||||
* @method void am($role)
|
||||
* @method void lookForwardTo($achieveValue)
|
||||
* @method void comment($description)
|
||||
* Inherited Methods.
|
||||
*
|
||||
* @method void wantToTest($text)
|
||||
* @method void wantTo($text)
|
||||
* @method void execute($callable)
|
||||
* @method void expectTo($prediction)
|
||||
* @method void expect($prediction)
|
||||
* @method void amGoingTo($argumentation)
|
||||
* @method void am($role)
|
||||
* @method void lookForwardTo($achieveValue)
|
||||
* @method void comment($description)
|
||||
* @method \Codeception\Lib\Friend haveFriend($name, $actorClass = NULL)
|
||||
*
|
||||
* @SuppressWarnings(PHPMD)
|
||||
*/
|
||||
*/
|
||||
class UnitTester extends \Codeception\Actor
|
||||
{
|
||||
use _generated\UnitTesterActions;
|
||||
|
||||
/**
|
||||
* Define custom actions here
|
||||
*/
|
||||
/*
|
||||
* Define custom actions here
|
||||
*/
|
||||
}
|
||||
|
|
|
@ -2243,7 +2243,7 @@ CREATE TABLE IF NOT EXISTS `zz_modules` (
|
|||
|
||||
INSERT INTO `zz_modules` (`id`, `name`, `name2`, `module_dir`, `options`, `options2`, `icon`, `version`, `compatibility`, `order`, `level`, `parent`, `default`, `enabled`, `type`, `new`) VALUES
|
||||
(1, 'Dashboard', '', 'dashboard', '{ "main_query": [ { "type": "custom" } ]}', '', 'fa fa-dashboard', '2.0', '2.0', 0, 0, 0, 1, 1, 'menu', 0),
|
||||
(2, 'Anagrafiche', '', 'anagrafiche', '{ "main_query": [ { "type": "table", "fields": "Ragione sociale, Tipologia, Città, Telefono, color_Rel.", "query": "SELECT `idanagrafica` AS `id`, ragione_sociale AS `Ragione sociale`, (SELECT GROUP_CONCAT(descrizione SEPARATOR '', '') FROM an_tipianagrafiche INNER JOIN an_tipianagrafiche_anagrafiche ON an_tipianagrafiche.idtipoanagrafica=an_tipianagrafiche_anagrafiche.idtipoanagrafica GROUP BY idanagrafica HAVING idanagrafica=an_anagrafiche.idanagrafica) AS `Tipologia`, citta AS `Città`, telefono AS `Telefono`, an_relazioni.colore AS `color_Rel.`, an_relazioni.descrizione AS `color_title_Rel.` FROM an_anagrafiche LEFT OUTER JOIN an_relazioni ON an_anagrafiche.idrelazione=an_relazioni.id WHERE 1=1 AND deleted=0 ORDER BY `ragione_sociale`"} ]}', '', 'fa fa-users', '2.0', '2.0', 1, 0, 0, 1, 1, 'menu', 0),
|
||||
(2, 'Anagrafiche', '', 'anagrafiche', '{ "main_query": [ { "type": "table", "fields": "Ragione sociale, Tipologia, Città, Telefono, color_Rel.", "query": "SELECT `idanagrafica` AS `id`, ragione_sociale AS `Ragione sociale`, (SELECT GROUP_CONCAT(descrizione SEPARATOR '', '') FROM an_tipianagrafiche INNER JOIN an_tipianagrafiche_anagrafiche ON an_tipianagrafiche.idtipoanagrafica=an_tipianagrafiche_anagrafiche.idtipoanagrafica GROUP BY idanagrafica HAVING idanagrafica=an_anagrafiche.idanagrafica) AS `Tipologia`, citta AS `Città`, telefono AS `Telefono`, an_relazioni.colore AS `color_Rel.`, an_relazioni.descrizione AS `color_title_Rel.` FROM an_anagrafiche LEFT OUTER JOIN an_relazioni ON an_anagrafiche.idrelazione=an_relazioni.id WHERE 1=1 AND deleted=0 ORDER BY `ragione_sociale`"} ]}', '', 'fa fa-users', '2.0', '2.0', 1, 0, 0, 1, 1, 'menu', 0),
|
||||
(3, 'Interventi', 'Attività', 'interventi', '{ "main_query": [ { "type": "table", "fields": "ID intervento, Ragione sociale, Data inizio, Data fine, _print_", "query": "SELECT `in_interventi`.`idanagrafica`, `in_interventi`.`idintervento` AS `id`, `in_interventi`.`idintervento` AS `ID intervento`, `ragione_sociale` AS `Ragione sociale`, MIN( DATE_FORMAT( `orario_inizio`, ''%d/%m/%Y'' ) ) AS `Data inizio`, MAX( DATE_FORMAT( `orario_fine`, ''%d/%m/%Y'' ) ) AS `Data fine`, `data_richiesta`, (SELECT `colore` FROM `in_statiintervento` WHERE `idstatointervento`=`in_interventi`.`idstatointervento`) AS `_bg_`, ''pdfgen.php?ptype=interventi&idintervento=$id$&mode=single'' AS `_print_`, `orario_inizio`, `orario_fine` FROM (`in_interventi` INNER JOIN `an_anagrafiche` ON `in_interventi`.`idanagrafica`=`an_anagrafiche`.`idanagrafica`) LEFT OUTER JOIN `in_interventi_tecnici` ON `in_interventi_tecnici`.`idintervento`=`in_interventi`.`idintervento` GROUP BY `in_interventi`.`idintervento` HAVING 1=1 AND ( ( DATE_FORMAT( `orario_inizio`, ''%Y-%m-%d'' ) >= ''|period_start|'' AND DATE_FORMAT( `orario_fine`, ''%Y-%m-%d'' ) <= ''|period_end|'' ) OR ( DATE_FORMAT( `data_richiesta`, ''%Y-%m-%d'' ) >= ''|period_start|'' AND DATE_FORMAT( `data_richiesta`, ''%Y-%m-%d'' ) <= ''|period_end|'' ) ) ORDER BY IFNULL(`orario_fine`, `data_richiesta`) DESC"} ]}', '', 'fa fa-wrench', '2.0', '2.0', 2, 0, 0, 1, 1, 'menu', 0),
|
||||
(6, 'Aggiornamenti', '', 'aggiornamenti', '{ "main_query": [ { "type": "custom" } ]}', '', 'fa fa-download', '2.0', '2.0', 4, 0, 0, 1, 1, 'menu', 0),
|
||||
(7, 'Backup', '', 'backup', '{ "main_query": [ { "type": "custom" } ]}', '', 'fa fa-archive', '2.0', '2.0', 5, 0, 0, 1, 1, 'menu', 0),
|
||||
|
@ -2258,8 +2258,8 @@ INSERT INTO `zz_modules` (`id`, `name`, `name2`, `module_dir`, `options`, `optio
|
|||
(17, 'Partitario', '', 'partitario', '{ "main_query": [ { "type": "custom" } ]}', '', 'fa fa-external-link', '2.0', '2.0', 6, 1, 12, 1, 1, 'menu', 0),
|
||||
(18, 'Scadenzario', '', 'scadenziario', '{ "main_query": [ { "type": "table", "fields": "Documento, Cliente, Tipo di pagamento, Data emissione, Data scadenza, Importo, Pagato", "query": "SELECT co_scadenziario.id AS id, ragione_sociale AS `Cliente`, co_pagamenti.descrizione AS `Tipo di pagamento`, CONCAT( co_tipidocumento.descrizione, CONCAT( '' numero '', IF(numero_esterno<>'''', numero_esterno, numero) ) ) AS `Documento`, DATE_FORMAT(data_emissione, ''%d/%m/%Y'') AS `Data emissione`, DATE_FORMAT(scadenza, ''%d/%m/%Y'') AS `Data scadenza`, REPLACE(da_pagare, ''.'', '','') AS `Importo`, REPLACE(pagato, ''.'', '','') AS `Pagato`, IF(scadenza<NOW(), ''#ff7777'', '''') AS _bg_, IF( dir=''entrata'', CONCAT( CONCAT( CONCAT( ''/editor.php?id_module='', (SELECT id FROM zz_modules WHERE name=''Fatture di vendita'') ), ''&id_record=''), co_scadenziario.iddocumento), CONCAT( CONCAT( CONCAT( ''/editor.php?id_module='', (SELECT id FROM zz_modules WHERE name=''Fatture di acquisto'') ), ''&id_record=''), co_scadenziario.iddocumento) ) AS _link_ FROM co_scadenziario INNER JOIN (((co_documenti INNER JOIN an_anagrafiche ON co_documenti.idanagrafica=an_anagrafiche.idanagrafica) INNER JOIN co_pagamenti ON co_documenti.idpagamento=co_pagamenti.id) INNER JOIN co_tipidocumento ON co_documenti.idtipodocumento=co_tipidocumento.id) ON co_scadenziario.iddocumento=co_documenti.id WHERE ABS(pagato) < ABS(da_pagare) AND idstatodocumento=(SELECT id FROM co_statidocumento WHERE descrizione=''Emessa'') ORDER BY scadenza ASC"} ]}', '', 'fa fa-external-link', '2.0', '2.0', 7, 1, 12, 1, 1, 'menu', 0),
|
||||
(20, 'Magazzino', '', 'magazzino', '', '', 'fa fa-truck', '2.0', '2.0', 4, 0, 0, 1, 1, 'menu', 0),
|
||||
(21, 'Articoli', '', 'articoli', '{ "main_query": [ { "type": "table", "fields": "Codice, Descrizione, Categoria, Subcategoria, Q.tà", "query": "SELECT `id`, `codice` AS `Codice`, `descrizione` AS `Descrizione`, `categoria` AS `Categoria`, `subcategoria` AS `Subcategoria`, CONCAT_WS( '' '', REPLACE( FORMAT( `qta`, 2 ), ''.'', '','' ), (SELECT `valore` FROM `mg_unitamisura` WHERE `id`=`idum`) ) AS `Q.tà` FROM `mg_articoli` WHERE 1=1 ORDER BY `descrizione`"} ]}', '', 'fa fa-external-link', '2.0', '2.0', 0, 1, 20, 1, 1, 'menu', 0),
|
||||
(22, 'Listini', '', 'listini', '{ "main_query": [ { "type": "table", "fields": "Nome, Percentuale guadagno o sconto,Note", "query": "SELECT `id`, `nome` AS `Nome`, `prc_guadagno` AS `Percentuale guadagno o sconto`,`note` AS `Note` FROM `mg_listini` ORDER BY `nome`"} ]}', '', 'fa fa-external-link', '2.0', '2.0', 1, 1, 20, 1, 1, 'menu', 0),
|
||||
(21, 'Articoli', '', 'articoli', '{ "main_query": [ { "type": "table", "fields": "Codice, Descrizione, Categoria, Subcategoria, Q.tà", "query": "SELECT `id`, `codice` AS `Codice`, `descrizione` AS `Descrizione`, `categoria` AS `Categoria`, `subcategoria` AS `Subcategoria`, CONCAT_WS( '' '', REPLACE( FORMAT( `qta`, 2 ), ''.'', '','' ), (SELECT `valore` FROM `mg_unitamisura` WHERE `id`=`idum`) ) AS `Q.tà` FROM `mg_articoli` WHERE 1=1 ORDER BY `descrizione`"} ]}', '', 'fa fa-external-link', '2.0', '2.0', 0, 1, 20, 1, 1, 'menu', 0),
|
||||
(22, 'Listini', '', 'listini', '{ "main_query": [ { "type": "table", "fields": "Nome, Percentuale guadagno o sconto,Note", "query": "SELECT `id`, `nome` AS `Nome`, `prc_guadagno` AS `Percentuale guadagno o sconto`,`note` AS `Note` FROM `mg_listini` ORDER BY `nome`"} ]}', '', 'fa fa-external-link', '2.0', '2.0', 1, 1, 20, 1, 1, 'menu', 0),
|
||||
(23, 'Automezzi', '', 'automezzi', '{ "main_query": [ { "type": "table", "fields": "Targa,Nome,Descrizione", "query": "SELECT `id`, `targa` AS `Targa`, `nome` AS `Nome`,`descrizione` AS `Descrizione` FROM `dt_automezzi` ORDER BY `targa`"} ]}', '', 'fa fa-external-link', '2.0', '2.0', 2, 1, 20, 1, 1, 'menu', 0),
|
||||
(24, 'Ordini cliente', '', 'ordini', '{ "main_query": [ { "type": "table", "fields": "Numero, Data, Ragione sociale, icon_Stato", "query": "SELECT `or_ordini`.`id`, IF(`numero_esterno`='''', `numero`, `numero_esterno`) AS `Numero`, DATE_FORMAT( `data`, ''%d/%m/%Y'' ) AS `Data`, (SELECT `ragione_sociale` FROM `an_anagrafiche` WHERE `idanagrafica`=`or_ordini`.`idanagrafica`) AS `Ragione sociale`, (SELECT `icona` FROM `or_statiordine` WHERE `id`=`idstatoordine`) AS `icon_Stato`, (SELECT `descrizione` FROM `or_statiordine` WHERE `id`=`idstatoordine`) AS `icon_title_Stato` FROM `or_ordini` INNER JOIN `or_tipiordine` ON `or_ordini`.`idtipoordine`=`or_tipiordine`.`id` WHERE 1=1 AND `dir`=''entrata'' AND `data` >= ''|period_start|'' AND `data` <= ''|period_end|'' ORDER BY `id` DESC"} ]}', '', 'fa fa-external-link', '2.0', '2.0', 1, 1, 12, 1, 1, 'menu', 0),
|
||||
(25, 'Ordini fornitore', '', 'ordini', '{ "main_query": [ { "type": "table", "fields": "Numero, Data, Ragione sociale, icon_Stato", "query": "SELECT `or_ordini`.`id`, IF(`numero_esterno`='''', `numero`, `numero_esterno`) AS `Numero`, DATE_FORMAT( `data`, ''%d/%m/%Y'' ) AS `Data`, (SELECT `ragione_sociale` FROM `an_anagrafiche` WHERE `idanagrafica`=`or_ordini`.`idanagrafica`) AS `Ragione sociale`, (SELECT `icona` FROM `or_statiordine` WHERE `id`=`idstatoordine`) AS `icon_Stato`, (SELECT `descrizione` FROM `or_statiordine` WHERE `id`=`idstatoordine`) AS `icon_title_Stato` FROM `or_ordini` INNER JOIN `or_tipiordine` ON `or_ordini`.`idtipoordine`=`or_tipiordine`.`id` WHERE 1=1 AND `dir`=''uscita'' AND `data` >= ''|period_start|'' AND `data` <= ''|period_end|'' ORDER BY `id` DESC"} ]}', '', 'fa fa-external-link', '2.0', '2.0', 2, 1, 12, 1, 1, 'menu', 0),
|
||||
|
|
|
@ -26,7 +26,7 @@ INSERT INTO `zz_impostazioni` (`idimpostazione`, `nome`, `valore`, `tipo`, `edit
|
|||
UPDATE `zz_impostazioni` SET `editable` = '0' WHERE `nome` = 'Destinatario';
|
||||
|
||||
-- Aggiornamento query moduli per il nuovo sistema di caricamento via ajax
|
||||
UPDATE `zz_modules` SET `options` = '{ "main_query": [ { "type": "table", "fields": "Ragione sociale, Tipologia, Città, Telefono, color_Rel.", "query": "SELECT `idanagrafica` AS `id`, ragione_sociale AS `Ragione sociale`, (SELECT GROUP_CONCAT(descrizione SEPARATOR '', '') FROM an_tipianagrafiche INNER JOIN an_tipianagrafiche_anagrafiche ON an_tipianagrafiche.idtipoanagrafica=an_tipianagrafiche_anagrafiche.idtipoanagrafica GROUP BY idanagrafica HAVING idanagrafica=an_anagrafiche.idanagrafica) AS `Tipologia`, citta AS `Città`, telefono AS `Telefono`, an_relazioni.colore AS `color_Rel.`, an_relazioni.descrizione AS `color_title_Rel.`, deleted FROM an_anagrafiche LEFT OUTER JOIN an_relazioni ON an_anagrafiche.idrelazione=an_relazioni.id HAVING 1=1 AND deleted=0 ORDER BY `ragione_sociale`"} ]}' WHERE `name` = 'Anagrafiche';
|
||||
UPDATE `zz_modules` SET `options` = '{ "main_query": [ { "type": "table", "fields": "Ragione sociale, Tipologia, Città, Telefono, color_Rel.", "query": "SELECT `idanagrafica` AS `id`, ragione_sociale AS `Ragione sociale`, (SELECT GROUP_CONCAT(descrizione SEPARATOR '', '') FROM an_tipianagrafiche INNER JOIN an_tipianagrafiche_anagrafiche ON an_tipianagrafiche.idtipoanagrafica=an_tipianagrafiche_anagrafiche.idtipoanagrafica GROUP BY idanagrafica HAVING idanagrafica=an_anagrafiche.idanagrafica) AS `Tipologia`, citta AS `Città`, telefono AS `Telefono`, an_relazioni.colore AS `color_Rel.`, an_relazioni.descrizione AS `color_title_Rel.`, deleted FROM an_anagrafiche LEFT OUTER JOIN an_relazioni ON an_anagrafiche.idrelazione=an_relazioni.id HAVING 1=1 AND deleted=0 ORDER BY `ragione_sociale`"} ]}' WHERE `name` = 'Anagrafiche';
|
||||
UPDATE `zz_modules` SET `options` = '{ "main_query": [ { "type": "table", "fields": "ID, Tipo, Ragione sociale, Stato, Data inizio, Data fine, _print_", "query": "SELECT `in_interventi`.`idanagrafica`, `in_interventi`.`idintervento` AS `id`, `in_interventi`.`idintervento` AS `ID`, `ragione_sociale` AS `Ragione sociale`, DATE_FORMAT(MIN(`orario_inizio`), ''%d/%m/%Y'') AS `Data inizio`, DATE_FORMAT(MAX(`orario_fine`), ''%d/%m/%Y'') AS `Data fine`, `data_richiesta`, (SELECT `colore` FROM `in_statiintervento` WHERE `idstatointervento`=`in_interventi`.`idstatointervento`) AS `_bg_`, (SELECT `descrizione` FROM `in_statiintervento` WHERE `idstatointervento`=`in_interventi`.`idstatointervento`) AS `Stato`, (SELECT `descrizione` FROM `in_tipiintervento` WHERE `idtipointervento`=`in_interventi`.`idtipointervento`) AS `Tipo`, ''pdfgen.php?ptype=interventi&idintervento=$id$&mode=single'' AS `_print_`, `orario_inizio`, `orario_fine` FROM (`in_interventi` INNER JOIN `an_anagrafiche` ON `in_interventi`.`idanagrafica`=`an_anagrafiche`.`idanagrafica`) LEFT OUTER JOIN `in_interventi_tecnici` ON `in_interventi_tecnici`.`idintervento`=`in_interventi`.`idintervento` GROUP BY `in_interventi`.`idintervento` HAVING 1=1 AND ((DATE_FORMAT(`orario_inizio`, ''%Y-%m-%d'') >= ''|period_start|'' AND DATE_FORMAT(`orario_fine`, ''%Y-%m-%d'') <= ''|period_end|'') OR (DATE_FORMAT(`data_richiesta`, ''%Y-%m-%d'') >= ''|period_start|'' AND DATE_FORMAT(`data_richiesta`, ''%Y-%m-%d'') <= ''|period_end|'')) ORDER BY IFNULL(`orario_fine`, `data_richiesta`) DESC"} ]}' WHERE `zz_modules`.`name` = 'Interventi';
|
||||
UPDATE `zz_modules` SET `options` = '{ "main_query": [ { "type": "table", "fields": "Descrizione", "query": "SELECT `idtipoanagrafica` AS `id`, `descrizione` AS `Descrizione` FROM `an_tipianagrafiche` HAVING 1=1"} ]}' WHERE `name` = 'Tipi di anagrafiche';
|
||||
UPDATE `zz_modules` SET `options` = '{ "main_query": [ { "type": "table", "fields": "Codice, Descrizione, Costo orario, Costo al km, Diritto di chiamata, Costo orario tecnico, Costo al km tecnico, Diritto di chiamata tecnico", "query": "SELECT `idtipointervento` AS `id`, `idtipointervento` AS `Codice`, `descrizione` AS `Descrizione`, REPLACE(FORMAT(`costo_orario`,2), ''.'', '','') AS `Costo orario`, REPLACE(FORMAT(`costo_km`,2), ''.'', '','') AS `Costo al km`, REPLACE(FORMAT(`costo_diritto_chiamata`,2), ''.'', '','') AS `Diritto di chiamata`, REPLACE(FORMAT(`costo_orario_tecnico`,2), ''.'', '','') AS `Costo orario tecnico`, REPLACE(FORMAT(`costo_km_tecnico`,2), ''.'', '','') AS `Costo al km tecnico`, REPLACE(FORMAT(`costo_diritto_chiamata_tecnico`,2), ''.'', '','') AS `Diritto di chiamata tecnico` FROM `in_tipiintervento` HAVING 1=1"} ]}' WHERE `name` = 'Tipi di intervento';
|
||||
|
@ -34,9 +34,9 @@ UPDATE `zz_modules` SET `options` = '{ "main_query": [ { "type": "table", "field
|
|||
UPDATE `zz_modules` SET `options` = '{ "main_query": [ { "type": "table", "fields": "Numero, Nome, Cliente, icon_Stato", "query": "SELECT `id`, `numero` AS `Numero`, `nome` AS `Nome`, (SELECT `ragione_sociale` FROM `an_anagrafiche` WHERE `idanagrafica`=`co_preventivi`.`idanagrafica`) AS `Cliente`, (SELECT `icona` FROM `co_statipreventivi` WHERE `id`=`idstato`) AS `icon_Stato`, (SELECT `descrizione` FROM `co_statipreventivi` WHERE `id`=`idstato`) AS `icon_title_Stato`, data_bozza, data_conclusione FROM `co_preventivi` HAVING 1=1 AND (''|period_start|'' >= `data_bozza` AND ''|period_start|'' <= `data_conclusione`) OR (''|period_end|'' >= `data_bozza` AND ''|period_end|'' <= `data_conclusione`) OR (`data_bozza` >= ''|period_start|'' AND `data_bozza` <= ''|period_end|'') OR (`data_conclusione` >= ''|period_start|'' AND `data_conclusione` <= ''|period_end|'') OR (`data_bozza` >= ''|period_start|'' AND `data_conclusione` = ''0000-00-00'') ORDER BY `id` DESC"} ]}' WHERE `name` = 'Preventivi';
|
||||
UPDATE `zz_modules` SET `options` = '{ "main_query": [ { "type": "table", "fields": "Numero, Data, Ragione sociale, Totale, icon_Stato", "query": "SELECT `co_documenti`.`id`, IF(`numero_esterno`='''', `numero`, `numero_esterno`) AS `Numero`, DATE_FORMAT(`data`, ''%d/%m/%Y'') AS `Data`, (SELECT `ragione_sociale` FROM `an_anagrafiche` WHERE `idanagrafica`=`co_documenti`.`idanagrafica`) AS `Ragione sociale`, REPLACE(REPLACE(REPLACE(FORMAT((SELECT SUM(`subtotale`-`sconto`+`iva`+`rivalsainps`-`ritenutaacconto`) FROM `co_righe_documenti` GROUP BY `iddocumento` HAVING `iddocumento`=`co_documenti`.`id`) +`bollo` + `iva_rivalsainps`, 2), '','', ''#''), ''.'', '',''), ''#'', ''.'') AS `Totale`, (SELECT `icona` FROM `co_statidocumento` WHERE `id`=`idstatodocumento`) AS `icon_Stato`, (SELECT `descrizione` FROM `co_statidocumento` WHERE `id`=`idstatodocumento`) AS `icon_title_Stato` FROM `co_documenti` INNER JOIN `co_tipidocumento` ON `co_documenti`.`idtipodocumento`=`co_tipidocumento`.`id` WHERE 1=1 AND `dir`=''entrata'' AND `data` >= ''|period_start|'' AND `data` <= ''|period_end|'' ORDER BY DATE_FORMAT(`data`, ''%Y%m%d'') DESC, CAST(IFNULL(numero_esterno, numero) AS UNSIGNED) DESC"} ]}' WHERE `name`='Fatture di vendita';
|
||||
UPDATE `zz_modules` SET `options` = '{ "main_query": [ { "type": "table", "fields": "Numero, Data, Ragione sociale, Totale, icon_Stato", "query": "SELECT `co_documenti`.`id`, IF(`numero_esterno`='''', `numero`, `numero_esterno`) AS `Numero`, DATE_FORMAT(`data`, ''%d/%m/%Y'') AS `Data`, (SELECT `ragione_sociale` FROM `an_anagrafiche` WHERE `idanagrafica`=`co_documenti`.`idanagrafica`) AS `Ragione sociale`, REPLACE(REPLACE(REPLACE(FORMAT((SELECT SUM(`subtotale`-`sconto`+`iva`+`rivalsainps`-`ritenutaacconto`) FROM `co_righe_documenti` GROUP BY `iddocumento` HAVING `iddocumento`=`co_documenti`.`id`) +`bollo` + `iva_rivalsainps`, 2), '','', ''#''), ''.'', '',''), ''#'', ''.'') AS `Totale`, (SELECT `icona` FROM `co_statidocumento` WHERE `id`=`idstatodocumento`) AS `icon_Stato`, (SELECT `descrizione` FROM `co_statidocumento` WHERE `id`=`idstatodocumento`) AS `icon_title_Stato`, `dir`, `data` AS `data1` FROM `co_documenti` INNER JOIN `co_tipidocumento` ON `co_documenti`.`idtipodocumento`=`co_tipidocumento`.`id` HAVING 1=1 AND `dir`=''uscita'' AND `data1` >= ''|period_start|'' AND `data1` <= ''|period_end|'' ORDER BY DATE_FORMAT(`data1`, ''%Y%m%d'') DESC"} ]}' WHERE `name` = 'Fatture di acquisto';
|
||||
UPDATE `zz_modules` SET `options` = '{ "main_query": [ { "type": "table", "fields": "Codice, Descrizione, Categoria, Subcategoria, Q.tà", "query": "SELECT `id`, `codice` AS `Codice`, `descrizione` AS `Descrizione`, `categoria` AS `Categoria`, `subcategoria` AS `Subcategoria`, CONCAT_WS('' '', REPLACE(FORMAT(`qta`, 2), ''.'', '',''), (SELECT `valore` FROM `mg_unitamisura` WHERE `id`=`idum`)) AS `Q.tà` FROM `mg_articoli` HAVING 1=1 ORDER BY `descrizione`"} ]}' WHERE `name` = 'Articoli';
|
||||
UPDATE `zz_modules` SET `options` = '{ "main_query": [ { "type": "table", "fields": "Codice, Descrizione, Categoria, Subcategoria, Q.tà", "query": "SELECT `id`, `codice` AS `Codice`, `descrizione` AS `Descrizione`, `categoria` AS `Categoria`, `subcategoria` AS `Subcategoria`, CONCAT_WS('' '', REPLACE(FORMAT(`qta`, 2), ''.'', '',''), (SELECT `valore` FROM `mg_unitamisura` WHERE `id`=`idum`)) AS `Q.tà` FROM `mg_articoli` HAVING 1=1 ORDER BY `descrizione`"}] }' WHERE `name` = 'Articoli';
|
||||
UPDATE `zz_modules` SET `options` = '{ "main_query": [ { "type": "table", "fields": "Nome, Percentuale guadagno o sconto,Note", "query": "SELECT `id`, `nome` AS `Nome`, `prc_guadagno` AS `Percentuale guadagno o sconto`,`note` AS `Note` FROM `mg_listini` HAVING 1=1 ORDER BY `nome`"} ]}' WHERE `name` = 'Listini';
|
||||
UPDATE `zz_modules` SET `options` = '{ "main_query": [ { "type": "table", "fields": "Codice, Descrizione, Categoria, Subcategoria, Q.tà", "query": "SELECT `id`, `codice` AS `Codice`, `descrizione` AS `Descrizione`, `categoria` AS `Categoria`, `subcategoria` AS `Subcategoria`, CONCAT_WS('' '', REPLACE(FORMAT(`qta`, 2), ''.'', '',''), (SELECT `valore` FROM `mg_unitamisura` WHERE `id`=`idum`)) AS `Q.tà` FROM `mg_articoli` HAVING 1=1 ORDER BY `descrizione`"} ]}' WHERE `name` = 'Articoli';
|
||||
UPDATE `zz_modules` SET `options` = '{ "main_query": [ { "type": "table", "fields": "Codice, Descrizione, Categoria, Subcategoria, Q.tà", "query": "SELECT `id`, `codice` AS `Codice`, `descrizione` AS `Descrizione`, `categoria` AS `Categoria`, `subcategoria` AS `Subcategoria`, CONCAT_WS('' '', REPLACE(FORMAT(`qta`, 2), ''.'', '',''), (SELECT `valore` FROM `mg_unitamisura` WHERE `id`=`idum`)) AS `Q.tà` FROM `mg_articoli` HAVING 1=1 ORDER BY `descrizione`"}] }' WHERE `name` = 'Articoli';
|
||||
UPDATE `zz_modules` SET `options` = '{ "main_query": [ { "type": "table", "fields": "Nome, Percentuale guadagno o sconto,Note", "query": "SELECT `id`, `nome` AS `Nome`, `prc_guadagno` AS `Percentuale guadagno o sconto`,`note` AS `Note` FROM `mg_listini` HAVING 1=1 ORDER BY `nome`"} ]}' WHERE `name` = 'Listini';
|
||||
UPDATE `zz_modules` SET `options` = '{ "main_query": [ { "type": "table", "fields": "Targa,Nome,Descrizione", "query": "SELECT `id`, `targa` AS `Targa`, `nome` AS `Nome`,`descrizione` AS `Descrizione` FROM `dt_automezzi` HAVING 1=1 ORDER BY `targa`"} ]}' WHERE `name` = 'Automezzi';
|
||||
UPDATE `zz_modules` SET `options` = '{ "main_query": [ { "type": "table", "fields": "Numero, Data, Ragione sociale, icon_Stato", "query": "SELECT `or_ordini`.`id`, IF(`numero_esterno`='''', `numero`, `numero_esterno`) AS `Numero`, DATE_FORMAT(`data`, ''%d/%m/%Y'') AS `Data`, (SELECT `ragione_sociale` FROM `an_anagrafiche` WHERE `idanagrafica`=`or_ordini`.`idanagrafica`) AS `Ragione sociale`, (SELECT `icona` FROM `or_statiordine` WHERE `id`=`idstatoordine`) AS `icon_Stato`, (SELECT `descrizione` FROM `or_statiordine` WHERE `id`=`idstatoordine`) AS `icon_title_Stato`, `dir`, `data` AS `data1` FROM `or_ordini` INNER JOIN `or_tipiordine` ON `or_ordini`.`idtipoordine`=`or_tipiordine`.`id` HAVING 1=1 AND `dir`=''entrata'' AND `data1` >= ''|period_start|'' AND `data1` <= ''|period_end|'' ORDER BY `data1` DESC, CAST(`numero_esterno` AS UNSIGNED) DESC"} ]}' WHERE `name` = 'Ordini cliente';
|
||||
UPDATE `zz_modules` SET `options` = '{ "main_query": [ { "type": "table", "fields": "Numero, Data, Ragione sociale, icon_Stato", "query": "SELECT `or_ordini`.`id`, IF(`numero_esterno`='''', `numero`, `numero_esterno`) AS `Numero`, DATE_FORMAT(`data`, ''%d/%m/%Y'') AS `Data`, (SELECT `ragione_sociale` FROM `an_anagrafiche` WHERE `idanagrafica`=`or_ordini`.`idanagrafica`) AS `Ragione sociale`, (SELECT `icona` FROM `or_statiordine` WHERE `id`=`idstatoordine`) AS `icon_Stato`, (SELECT `descrizione` FROM `or_statiordine` WHERE `id`=`idstatoordine`) AS `icon_title_Stato`, `dir`, `data` AS `data1` FROM `or_ordini` INNER JOIN `or_tipiordine` ON `or_ordini`.`idtipoordine`=`or_tipiordine`.`id` HAVING 1=1 AND `dir`=''uscita'' AND `data1` >= ''|period_start|'' AND `data1` <= ''|period_end|'' ORDER BY `data1` DESC, CAST(`numero_esterno` AS UNSIGNED) DESC"} ]}' WHERE `name` = 'Ordini fornitore';
|
||||
|
|
|
@ -995,7 +995,7 @@ UPDATE `co_iva` SET `dicitura` = 'Senza addebito iva ex art. 74 comma 8-9 del DP
|
|||
UPDATE `co_iva` SET `dicitura` = 'Operazione soggetta a reverse charge ex art. 17, comma 6, DPR 633/72' WHERE `descrizione` = 'Art. 17 comma 6 DPR 633/72' OR `descrizione` = 'Art. 17 comma 6 DPR 633/72 4%' OR `descrizione` = 'Art. 17 comma 6 DPR 633/72 10%' OR `descrizione` = 'Art. 17 comma 6 DPR 633/72 20%' OR `descrizione` = 'Art. 17 comma 6 DPR 633/72 22%';
|
||||
|
||||
-- Aggiunta campi in co_pagamenti per la selezione del conto di default
|
||||
ALTER TABLE `co_pagamenti` ADD `idconto_vendite` int(11), ADD `idconto_acquisti` int(11);
|
||||
ALTER TABLE `co_pagamenti` ADD `idconto_vendite` int(11), ADD `idconto_acquisti` int(11);
|
||||
|
||||
-- Aggiunta del modulo Stampe contabili
|
||||
INSERT INTO `zz_modules` (`id`, `name`, `directory`, `options`, `options2`, `icon`, `version`, `compatibility`, `order`, `parent`, `default`, `enabled`) VALUES (NULL, 'Stampe contabili', 'stampe_contabili', 'custom', '', 'fa fa-angle-right', '2.3', '2.3', '1', NULL, '1', '1');
|
||||
|
@ -1011,8 +1011,8 @@ ALTER TABLE `zz_widgets` ADD `help` varchar(255);
|
|||
-- Aggiunta delle mappe Google
|
||||
INSERT INTO `zz_settings` (`nome`, `valore`, `tipo`, `editable`, `sezione`) VALUES ('Google Maps API key', '', 'string', '1', 'Generali');
|
||||
|
||||
ALTER TABLE `an_anagrafiche` ADD `gaddress` varchar(255), ADD `lat` float(10, 6), ADD `lng` float(10, 6);
|
||||
ALTER TABLE `an_sedi` ADD `gaddress` varchar(255), ADD `lat` float(10, 6), ADD `lng` float(10, 6);
|
||||
ALTER TABLE `an_anagrafiche` ADD `gaddress` varchar(255), ADD `lat` float(10, 6), ADD `lng` float(10, 6);
|
||||
ALTER TABLE `an_sedi` ADD `gaddress` varchar(255), ADD `lat` float(10, 6), ADD `lng` float(10, 6);
|
||||
|
||||
-- Aggiunta del modulo Statistiche
|
||||
INSERT INTO `zz_modules` (`id`, `name`, `directory`, `options`, `options2`, `icon`, `version`, `compatibility`, `order`, `parent`, `default`, `enabled`) VALUES (NULL, 'Statistiche', 'statistiche', 'custom', '', 'fa fa-bar-chart', '2.3', '2.3', '1', NULL, '1', '1');
|
||||
|
|
|
@ -183,7 +183,7 @@ CREATE TABLE IF NOT EXISTS `zz_segments` (
|
|||
) ENGINE=InnoDB;
|
||||
|
||||
-- Popolo con i segmenti di default
|
||||
INSERT INTO `zz_segments` (`id`, `id_module`, `name`, `clause`, `position`, `pattern`,`note`, `predefined`) VALUES
|
||||
INSERT INTO `zz_segments` (`id`, `id_module`, `name`, `clause`, `position`, `pattern`,`note`, `predefined`) VALUES
|
||||
(1, (SELECT `id` FROM `zz_modules` WHERE `name` = 'Fatture di vendita'), 'Standard vendite', '1=1', 'WHR', IF((SELECT COUNT(id) FROM co_documenti) > 0, (SELECT `valore` FROM `zz_settings` WHERE `nome` = 'Formato numero secondario fattura'), '####/YYYY'), '', 1),
|
||||
(2, (SELECT `id` FROM `zz_modules` WHERE `name` = 'Fatture di acquisto'), 'Standard acquisti', '1=1', 'WHR', '#', '', 1);
|
||||
|
||||
|
@ -196,7 +196,7 @@ UPDATE `co_documenti` SET `id_segment`='2' WHERE `idtipodocumento` IN (SELECT `i
|
|||
|
||||
-- Innesto modulo segmenti sotto "Strumenti"
|
||||
INSERT INTO `zz_modules` (`id`, `name`, `title`, `directory`, `options`, `options2`, `icon`, `version`, `compatibility`, `order`, `parent`, `default`, `enabled`) VALUES
|
||||
(NULL, 'Segmenti', 'Segmenti', 'segmenti', '{ "main_query": [ { "type": "table", "fields": "id, Nome, Modulo, Maschera, Note, Predefinito", "query": "SELECT `id`, (IF(predefined=1, ''Sì'', ''No'')) AS `Predefinito`, `name` AS `Nome`, (SELECT name FROM zz_modules WHERE id = zz_segments.id_module) AS Modulo, `pattern` AS `Maschera`, `note` AS `Note` FROM `zz_segments` HAVING 2=2 ORDER BY name, id_module"} ]}', '', 'fa fa-database', '2.4', '2.4', 1, NULL, 1, 1);
|
||||
(NULL, 'Segmenti', 'Segmenti', 'segmenti', '{ "main_query": [ { "type": "table", "fields": "id, Nome, Modulo, Maschera, Note, Predefinito", "query": "SELECT `id`, (IF(predefined=1, ''Sì'', ''No'')) AS `Predefinito`, `name` AS `Nome`, (SELECT name FROM zz_modules WHERE id = zz_segments.id_module) AS Modulo, `pattern` AS `Maschera`, `note` AS `Note` FROM `zz_segments` HAVING 2=2 ORDER BY name, id_module"} ]}', '', 'fa fa-database', '2.4', '2.4', 1, NULL, 1, 1);
|
||||
UPDATE `zz_modules` `t1` INNER JOIN `zz_modules` `t2` ON (`t1`.`name` = 'Segmenti' AND `t2`.`name` = 'Strumenti') SET `t1`.`parent` = `t2`.`id`;
|
||||
|
||||
-- Aggiorno widget Fatturato con i sezionali
|
||||
|
@ -319,10 +319,10 @@ INSERT INTO `zz_modules` (`id`, `name`, `title`, `directory`, `options`, `option
|
|||
UPDATE `zz_modules` `t1` INNER JOIN `zz_modules` `t2` ON (`t1`.`name` = 'Banche' AND `t2`.`name` = 'Tabelle') SET `t1`.`parent` = `t2`.`id`;
|
||||
|
||||
INSERT INTO `zz_views` (`id`, `id_module`, `name`, `query`, `order`, `search`, `slow`, `format`, `enabled`, `summable`, `default`) VALUES
|
||||
(NULL, (SELECT `id` FROM `zz_modules` WHERE `name` = 'Banche'), 'id', 'co_banche.id', 0, 0, 0, 0, 1, 0, 0),
|
||||
(NULL, (SELECT `id` FROM `zz_modules` WHERE `name` = 'Banche'), 'Nome', 'co_banche.nome', 0, 0, 0, 0, 1, 0, 0),
|
||||
(NULL, (SELECT `id` FROM `zz_modules` WHERE `name` = 'Banche'), 'Filiale', 'co_banche.filiale', 0, 0, 0, 0, 1, 0, 0),
|
||||
(NULL, (SELECT `id` FROM `zz_modules` WHERE `name` = 'Banche'), 'IBAN', 'co_banche.iban', 0, 0, 0, 0, 1, 0, 0);
|
||||
(NULL, (SELECT `id` FROM `zz_modules` WHERE `name` = 'Banche'), 'id', 'co_banche.id', 0, 0, 0, 0, 1, 0, 0),
|
||||
(NULL, (SELECT `id` FROM `zz_modules` WHERE `name` = 'Banche'), 'Nome', 'co_banche.nome', 0, 0, 0, 0, 1, 0, 0),
|
||||
(NULL, (SELECT `id` FROM `zz_modules` WHERE `name` = 'Banche'), 'Filiale', 'co_banche.filiale', 0, 0, 0, 0, 1, 0, 0),
|
||||
(NULL, (SELECT `id` FROM `zz_modules` WHERE `name` = 'Banche'), 'IBAN', 'co_banche.iban', 0, 0, 0, 0, 1, 0, 0);
|
||||
|
||||
-- Aggiungo campi in an_anagrafiche con riferimento banche
|
||||
ALTER TABLE `an_anagrafiche` ADD `idbanca_vendite` INT(11) NOT NULL AFTER `idconto_cliente`, ADD `idbanca_acquisti` INT(11) NOT NULL AFTER `idbanca_vendite`;
|
||||
|
|
|
@ -132,11 +132,11 @@ UPDATE `zz_views` SET `name` = 'Data movimento', `order` = '6' WHERE `zz_views`.
|
|||
UPDATE `zz_views` SET `query` = 'CONCAT(mg_movimenti.qta,'' '', (SELECT um FROM mg_articoli WHERE id = mg_movimenti.idarticolo) )' WHERE `zz_views`.`id_module` = (SELECT `id` FROM `zz_modules` WHERE `name` = 'Movimenti') AND name = 'Quantità';
|
||||
|
||||
-- Allineo anche il modulo movimenti con il nuovo campo data
|
||||
INSERT INTO `zz_views` (`id_module`, `name`, `query`, `order`, `search`, `slow`, `format`, `enabled`, `default`) VALUES
|
||||
INSERT INTO `zz_views` (`id_module`, `name`, `query`, `order`, `search`, `slow`, `format`, `enabled`, `default`) VALUES
|
||||
((SELECT `id` FROM `zz_modules` WHERE `name` = 'Movimenti'), 'Data', 'mg_movimenti.data', 5, 1, 0, 1, 1, 1);
|
||||
|
||||
-- Aggiungo colonna impianti per i contratti
|
||||
INSERT INTO `zz_views` (`id_module`, `name`, `query`, `order`, `search`, `slow`, `format`, `enabled`, `default`) VALUES
|
||||
INSERT INTO `zz_views` (`id_module`, `name`, `query`, `order`, `search`, `slow`, `format`, `enabled`, `default`) VALUES
|
||||
((SELECT `id` FROM `zz_modules` WHERE `name` = 'Contratti'), 'Impianti', '(SELECT IF(nome = '''', GROUP_CONCAT(matricola SEPARATOR ''<br>''), GROUP_CONCAT(matricola, '' - '', nome SEPARATOR ''<br>'')) FROM my_impianti INNER JOIN my_impianti_contratti ON my_impianti.id = my_impianti_contratti.idimpianto WHERE my_impianti_contratti.idcontratto = co_contratti.id)', 4, 1, 0, 0, 0, 1);
|
||||
|
||||
-- Tempo standard per attività
|
||||
|
@ -214,11 +214,11 @@ UPDATE `mg_articoli_interventi` SET `abilita_serial` = 0 WHERE `idarticolo` NOT
|
|||
UPDATE `or_righe_ordini` SET `abilita_serial` = 0 WHERE `idarticolo` NOT IN (SELECT `id_articolo` FROM `mg_prodotti`);
|
||||
|
||||
-- Aggiungo colonna idanagrafica per i preventivi (colonna necessaria per i permessi)
|
||||
INSERT INTO `zz_views` (`id_module`, `name`, `query`, `order`, `search`, `slow`, `format`, `enabled`, `default`) VALUES
|
||||
INSERT INTO `zz_views` (`id_module`, `name`, `query`, `order`, `search`, `slow`, `format`, `enabled`, `default`) VALUES
|
||||
((SELECT `id` FROM `zz_modules` WHERE `name` = 'Preventivi'), 'idanagrafica', 'co_preventivi.idanagrafica', 0, 0, 0, 0, 0, 1);
|
||||
|
||||
-- Fix name, title e order stampa ordine fornitore senza costi
|
||||
UPDATE `zz_prints` SET `name` = 'Ordine fornitore (senza costi)', `title` = 'Ordine fornitore (senza costi)', `order` = 1 WHERE `zz_prints`.`name` = 'Ordine fornitore' AND options = '{"pricing":false}' AND `zz_prints`.`id_module` = (SELECT id FROM zz_modules WHERE name='Ordini fornitore') ;
|
||||
UPDATE `zz_prints` SET `name` = 'Ordine fornitore (senza costi)', `title` = 'Ordine fornitore (senza costi)', `order` = 1 WHERE `zz_prints`.`name` = 'Ordine fornitore' AND options = '{"pricing":false}' AND `zz_prints`.`id_module` = (SELECT id FROM zz_modules WHERE name='Ordini fornitore') ;
|
||||
-- Stampa ordine fornitore con costi costi
|
||||
INSERT INTO `zz_prints` (`id`, `id_module`, `is_record`, `name`, `title`, `directory`, `previous`, `options`, `icon`, `version`, `compatibility`, `order`, `main`, `default`, `enabled`) VALUES (NULL, (SELECT id FROM zz_modules WHERE name='Ordini fornitore'), '1', 'Ordine fornitore', 'Ordine fornitore', 'ordini', 'idordine', '{"pricing":true}', 'fa fa-print', '', '', '0', '1', '1', '1');
|
||||
-- Default invio ordini al fornitore con i prezzi
|
||||
|
|
|
@ -161,7 +161,7 @@ INSERT INTO `fe_natura` (`codice`, `descrizione`) VALUES
|
|||
('N4','Esenti'),
|
||||
('N5','Regime del margine / IVA non esposta in fattura'),
|
||||
('N6','Inversione contabile (per le operazioni in reverse charge ovvero nei casi di autofatturazione per acquisti extra UE di servizi ovvero per importazioni di beni nei soli casi previsti)'),
|
||||
('N7','IVA assolta in altro stato UE (vendite a distanza ex art. 40 c. 3 e 4 e art. 41 c. 1 lett. b, DL 331/93; prestazione di servizi di telecomunicazioni, tele-radiodiffusione ed elettronici ex art. 7-sexies lett. f, g, art. 74-sexies DPR 633/72)');
|
||||
('N7','IVA assolta in altro stato UE (vendite a distanza ex art. 40 c. 3 e 4 e art. 41 c. 1 lett. b, DL 331/93; prestazione di servizi di telecomunicazioni, tele-radiodiffusione ed elettronici ex art. 7-sexies lett. f, g, art. 74-sexies DPR 633/72)');
|
||||
|
||||
ALTER TABLE `co_iva` DROP `esente`, ADD `codice_natura_fe` varchar(4) NOT NULL;
|
||||
-- UPDATE `co_iva` SET `codice_natura_fe` = 'TD01' WHERE `descrizione` IN ('Fattura immediata di acquisto', 'Fattura immediata di vendita', 'Fattura differita di acquisto', 'Fattura differita di vendita', 'Fattura accompagnatoria di acquisto', 'Fattura accompagnatoria di vendita');
|
||||
|
|
Loading…
Reference in New Issue