Fix tabelle co_righe_contratti e co_righe2_contratti

Tabelle co_righe_contratti e co_righe2_contratti rinominate rispettivamente in co_contratti_promemoria e co_righe_contratti.
This commit is contained in:
Thomas Zilio 2018-06-29 17:30:41 +02:00
parent 2e4ebadefb
commit 3d61592543
35 changed files with 116 additions and 116 deletions

View File

@ -149,7 +149,7 @@ if (!$cliente) {
{[ "type": "text", "label": "<?php echo tr('Sito web'); ?>", "name": "sitoweb", "placeholder":"www.dominio.ext", "value": "$sitoweb$", "icon-before": "<i class='fa fa-globe'></i>" ]}
</div>
</div>
</div>
</div>
@ -158,8 +158,8 @@ if (!$cliente) {
if ($cliente || $fornitore) {
?>
<!-- ACQUISTI -->
<div class = "row">
<div class="col-md-6">
@ -186,13 +186,13 @@ if (!$cliente) {
<div class="col-md-6">
{[ "type": "select", "label": "<?php echo tr('Listino articoli'); ?>", "name": "idlistino_acquisti", "values": "query=SELECT id, nome AS descrizione FROM mg_listini ORDER BY nome ASC", "value": "$idlistino_acquisti$", "extra": "<?php echo ($fornitore) ? '' : 'readonly'; ?>" ]}
</div>
</div>
</div>
</div>
</div>
<div class="col-md-6">
<!-- VENDITE -->
<div class="panel panel-primary">
@ -218,11 +218,11 @@ if (!$cliente) {
<div class="col-md-6">
{[ "type": "select", "label": "<?php echo tr('Listino articoli'); ?>", "name": "idlistino_vendite", "values": "query=SELECT id, nome AS descrizione FROM mg_listini ORDER BY nome ASC", "value": "$idlistino_vendite$", "extra": "<?php echo ($cliente) ? '' : 'readonly'; ?>" ]}
</div>
<div class="col-md-6">
{[ "type": "select", "label": "<?php echo tr('Indirizzo di fatturazione'); ?>", "name": "idsede_fatturazione", "values": "query=SELECT id, IF(citta = '', nomesede, CONCAT_WS(', ', nomesede, citta)) AS descrizione FROM an_sedi WHERE idanagrafica='<?php echo $id_record; ?>' UNION SELECT '0' AS id, 'Sede legale' AS descrizione ORDER BY descrizione", "value": "$idsede_fatturazione$" , "extra": "<?php echo ($cliente) ? '' : 'readonly'; ?>" ]}
</div>
<div class="col-md-6">
{[ "type": "select", "label": "<?php echo tr('Tipo attività'); ?>", "name": "idtipointervento_default", "values": "query=SELECT idtipointervento AS id, descrizione FROM in_tipiintervento ORDER BY descrizione ASC", "value": "$idtipointervento_default$", "extra": "<?php echo ($cliente) ? '' : 'readonly'; ?>" ]}
</div>
@ -282,11 +282,11 @@ if (!$cliente) {
{[ "type": "text", "label": "<?php echo tr('Capitale sociale'); ?>", "name": "capitale_sociale", "value": "$capitale_sociale$" ]}
</div>
</div>
<?php
//se non è l'anagrafica azienda, ma cliente o fornitore
if ((!str_contains($records[0]['idtipianagrafica'], $id_azienda)) or (($cliente or $fornitore))) {
?>
?>
<div class="row">
<div class="col-md-3">
{[ "type": "text", "label": "<?php echo tr('Appoggio bancario'); ?>", "name": "appoggiobancario", "value": "$appoggiobancario$" ]}
@ -307,8 +307,8 @@ if (!$cliente) {
<?php
}
?>
<div class="row">
<div class="col-md-12">
{[ "type": "text", "label": "<?php echo tr('Dicitura fissa in fattura'); ?>", "name": "diciturafissafattura", "value": "$diciturafissafattura$" ]}
@ -445,7 +445,7 @@ if (!$records[0]['deleted']) {
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_righe_contratti` 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`');

View File

@ -89,7 +89,7 @@ echo '
</div>';
// Contratti
$rsi = $dbo->fetchArray('SELECT data_accettazione AS data, ragione_sociale, (SELECT SUM(co_righe2_contratti.subtotale - co_righe2_contratti.sconto) FROM co_righe2_contratti WHERE co_righe2_contratti.idcontratto = co_contratti.id) AS budget FROM co_contratti INNER JOIN an_anagrafiche ON co_contratti.idanagrafica=an_anagrafiche.idanagrafica WHERE co_contratti.idanagrafica='.prepare($id_record));
$rsi = $dbo->fetchArray('SELECT data_accettazione AS data, ragione_sociale, (SELECT SUM(co_righe_contratti.subtotale - co_righe_contratti.sconto) FROM co_righe_contratti WHERE co_righe_contratti.idcontratto = co_contratti.id) AS budget FROM co_contratti INNER JOIN an_anagrafiche ON co_contratti.idanagrafica=an_anagrafiche.idanagrafica WHERE co_contratti.idanagrafica='.prepare($id_record));
$totale_contratti = 0;
$data_start = strtotime(date('Ymd'));

View File

@ -55,7 +55,7 @@ switch (post('op')) {
if ($budget != '') {
$budget = post('budget');
} else {
$q = "SELECT (SELECT SUM(subtotale) FROM co_righe2_contratti GROUP BY idcontratto HAVING idcontratto=co_contratti.id) AS 'budget' FROM co_contratti WHERE id=".prepare($id_record);
$q = "SELECT (SELECT SUM(subtotale) FROM co_righe_contratti GROUP BY idcontratto HAVING idcontratto=co_contratti.id) AS 'budget' FROM co_contratti WHERE id=".prepare($id_record);
$rs = $dbo->fetchArray($q);
$budget = $rs[0]['budget'];
}
@ -93,7 +93,7 @@ switch (post('op')) {
aggiorna_sconto([
'parent' => 'co_contratti',
'row' => 'co_righe2_contratti',
'row' => 'co_righe_contratti',
], [
'parent' => 'id',
'row' => 'idcontratto',
@ -160,7 +160,7 @@ switch (post('op')) {
$iva_indetraibile = $iva / 100 * $rs2[0]['indetraibile'];
$desc_iva = $rs2[0]['descrizione'];
$dbo->query('INSERT INTO co_righe2_contratti(idcontratto, idarticolo, idiva, desc_iva, iva, iva_indetraibile, descrizione, subtotale, um, qta, sconto, sconto_unitario, tipo_sconto, is_descrizione, `order`) VALUES ('.prepare($id_record).', '.prepare($idarticolo).', '.prepare($idiva).', '.prepare($desc_iva).', '.prepare($iva).', '.prepare($iva_indetraibile).', '.prepare($descrizione).', '.prepare($subtot).', '.prepare($um).', '.prepare($qta).', '.prepare($sconto).', '.prepare($sconto_unitario).', '.prepare($tipo_sconto).', '.prepare(empty($qta)).', (SELECT IFNULL(MAX(`order`) + 1, 0) FROM co_righe2_contratti AS t WHERE idcontratto='.prepare($id_record).'))');
$dbo->query('INSERT INTO co_righe_contratti(idcontratto, idarticolo, idiva, desc_iva, iva, iva_indetraibile, descrizione, subtotale, um, qta, sconto, sconto_unitario, tipo_sconto, is_descrizione, `order`) VALUES ('.prepare($id_record).', '.prepare($idarticolo).', '.prepare($idiva).', '.prepare($desc_iva).', '.prepare($iva).', '.prepare($iva_indetraibile).', '.prepare($descrizione).', '.prepare($subtot).', '.prepare($um).', '.prepare($qta).', '.prepare($sconto).', '.prepare($sconto_unitario).', '.prepare($tipo_sconto).', '.prepare(empty($qta)).', (SELECT IFNULL(MAX(`order`) + 1, 0) FROM co_righe_contratti AS t WHERE idcontratto='.prepare($id_record).'))');
// Messaggi informativi
if (!empty($idarticolo)) {
@ -176,7 +176,7 @@ switch (post('op')) {
case 'editriga':
$idriga = post('idriga');
$rs = $dbo->fetchArray("SELECT * FROM co_righe2_contratti WHERE id='".$idriga."'");
$rs = $dbo->fetchArray("SELECT * FROM co_righe_contratti WHERE id='".$idriga."'");
$is_descrizione = $rs[0]['is_descrizione'];
$idarticolo = post('idarticolo');
@ -204,9 +204,9 @@ switch (post('op')) {
// Modifica riga generica sul documento
if ($is_descrizione == 0) {
$query = 'UPDATE co_righe2_contratti SET idarticolo='.prepare($idarticolo).', idiva='.prepare($idiva).', desc_iva='.prepare($desc_iva).', iva='.prepare($iva).', iva_indetraibile='.prepare($iva_indetraibile).', descrizione='.prepare($descrizione).', subtotale='.prepare($subtot).', sconto='.prepare($sconto).', sconto_unitario='.prepare($sconto_unitario).', tipo_sconto='.prepare($tipo_sconto).', um='.prepare($um).', qta='.prepare($qta).' WHERE id='.prepare($idriga);
$query = 'UPDATE co_righe_contratti SET idarticolo='.prepare($idarticolo).', idiva='.prepare($idiva).', desc_iva='.prepare($desc_iva).', iva='.prepare($iva).', iva_indetraibile='.prepare($iva_indetraibile).', descrizione='.prepare($descrizione).', subtotale='.prepare($subtot).', sconto='.prepare($sconto).', sconto_unitario='.prepare($sconto_unitario).', tipo_sconto='.prepare($tipo_sconto).', um='.prepare($um).', qta='.prepare($qta).' WHERE id='.prepare($idriga);
} else {
$query = 'UPDATE co_righe2_contratti SET descrizione='.prepare($descrizione).' WHERE id='.prepare($idriga);
$query = 'UPDATE co_righe_contratti SET descrizione='.prepare($descrizione).' WHERE id='.prepare($idriga);
}
$dbo->query($query);
@ -219,7 +219,7 @@ switch (post('op')) {
if (isset($post['idriga'])) {
$idriga = post('idriga');
$query = 'DELETE FROM `co_righe2_contratti` WHERE idcontratto='.prepare($id_record).' AND id='.prepare($idriga);
$query = 'DELETE FROM `co_righe_contratti` WHERE idcontratto='.prepare($id_record).' AND id='.prepare($idriga);
if ($dbo->query($query)) {
$_SESSION['infos'][] = tr('Riga eliminata!');
@ -227,7 +227,7 @@ switch (post('op')) {
}
// Ricalcolo il budget
$dbo->query('UPDATE co_contratti SET budget=( SELECT SUM(subtotale) FROM co_righe2_contratti GROUP BY idcontratto HAVING idcontratto=co_contratti.id ) WHERE id='.prepare($id_record));
$dbo->query('UPDATE co_contratti SET budget=( SELECT SUM(subtotale) FROM co_righe_contratti GROUP BY idcontratto HAVING idcontratto=co_contratti.id ) WHERE id='.prepare($id_record));
break;
@ -237,7 +237,7 @@ switch (post('op')) {
$idcontratto = $get['idcontratto'];
$idintervento = $get['idintervento'];
$query = 'DELETE FROM `co_righe_contratti` WHERE idcontratto='.prepare($idcontratto).' AND idintervento='.prepare($idintervento);
$query = 'DELETE FROM `co_contratti_promemoria` WHERE idcontratto='.prepare($idcontratto).' AND idintervento='.prepare($idintervento);
$dbo->query($query);
$_SESSION['infos'][] = tr('Intervento _NUM_ rimosso!', [
@ -252,11 +252,11 @@ switch (post('op')) {
$id = filter('id');
if ($start > $end) {
$dbo->query('UPDATE `co_righe2_contratti` SET `order`=`order` + 1 WHERE `order`>='.prepare($end).' AND `order`<'.prepare($start).' AND `idcontratto`='.prepare($id_record));
$dbo->query('UPDATE `co_righe2_contratti` SET `order`='.prepare($end).' WHERE id='.prepare($id));
$dbo->query('UPDATE `co_righe_contratti` SET `order`=`order` + 1 WHERE `order`>='.prepare($end).' AND `order`<'.prepare($start).' AND `idcontratto`='.prepare($id_record));
$dbo->query('UPDATE `co_righe_contratti` SET `order`='.prepare($end).' WHERE id='.prepare($id));
} elseif ($end != $start) {
$dbo->query('UPDATE `co_righe2_contratti` SET `order`=`order` - 1 WHERE `order`>'.prepare($start).' AND `order`<='.prepare($end).' AND `idcontratto`='.prepare($id_record));
$dbo->query('UPDATE `co_righe2_contratti` SET `order`='.prepare($end).' WHERE id='.prepare($id));
$dbo->query('UPDATE `co_righe_contratti` SET `order`=`order` - 1 WHERE `order`>'.prepare($start).' AND `order`<='.prepare($end).' AND `idcontratto`='.prepare($id_record));
$dbo->query('UPDATE `co_righe_contratti` SET `order`='.prepare($end).' WHERE id='.prepare($id));
}
break;
@ -264,8 +264,8 @@ switch (post('op')) {
// eliminazione contratto
case 'delete':
$dbo->query('DELETE FROM co_contratti WHERE id='.prepare($id_record));
$dbo->query('DELETE FROM co_contratti_promemoria WHERE idcontratto='.prepare($id_record));
$dbo->query('DELETE FROM co_righe_contratti WHERE idcontratto='.prepare($id_record));
$dbo->query('DELETE FROM co_righe2_contratti WHERE idcontratto='.prepare($id_record));
$_SESSION['infos'][] = tr('Contratto eliminato!');
@ -295,10 +295,10 @@ switch (get('op')) {
$dbo->query('INSERT INTO co_contratti_tipiintervento(idcontratto, idtipointervento, costo_ore, costo_km, costo_dirittochiamata, costo_ore_tecnico, costo_km_tecnico, costo_dirittochiamata_tecnico) SELECT '.prepare($new_idcontratto).', idtipointervento, costo_ore, costo_km, costo_dirittochiamata, costo_ore_tecnico, costo_km_tecnico, costo_dirittochiamata_tecnico FROM co_contratti_tipiintervento AS z WHERE idcontratto='.prepare($id_record));
// Replico le righe del contratto
$rs = $dbo->fetchArray('SELECT * FROM co_righe2_contratti WHERE idcontratto='.prepare($id_record));
$rs = $dbo->fetchArray('SELECT * FROM co_righe_contratti WHERE idcontratto='.prepare($id_record));
for ($i = 0; $i < sizeof($rs); ++$i) {
$dbo->query('INSERT INTO co_righe2_contratti(idcontratto, descrizione, subtotale, um, qta) VALUES('.prepare($new_idcontratto).', '.prepare($rs[$i]['descrizione']).', '.prepare($rs[$i]['subtotale']).', '.prepare($rs[$i]['um']).', '.prepare($rs[$i]['qta']).')');
$dbo->query('INSERT INTO co_righe_contratti(idcontratto, descrizione, subtotale, um, qta) VALUES('.prepare($new_idcontratto).', '.prepare($rs[$i]['descrizione']).', '.prepare($rs[$i]['subtotale']).', '.prepare($rs[$i]['um']).', '.prepare($rs[$i]['qta']).')');
}
// Replicazione degli impianti
@ -319,7 +319,7 @@ switch (get('op')) {
if (post('op') !== null && post('op') != 'update') {
aggiorna_sconto([
'parent' => 'co_contratti',
'row' => 'co_righe2_contratti',
'row' => 'co_righe_contratti',
], [
'parent' => 'id',
'row' => 'idcontratto',

View File

@ -19,7 +19,7 @@ switch (post('op')) {
//$idarticolo_originale = post('idarticolo_originale');
// Leggo la quantità attuale nell'intervento
$q = 'SELECT qta, idautomezzo, idimpianto FROM co_righe_contratti_articoli WHERE id='.prepare($idriga);
$q = 'SELECT qta, idautomezzo, idimpianto FROM co_contratti_promemoria_articoli WHERE id='.prepare($idriga);
$rs = $dbo->fetchArray($q);
$old_qta = $rs[0]['qta'];
$idimpianto = $rs[0]['idimpianto'];
@ -30,7 +30,7 @@ switch (post('op')) {
//add_movimento_magazzino($idarticolo_originale, $old_qta, ['idautomezzo' => $idautomezzo, 'idintervento' => $id_record]);
// Elimino questo articolo dall'intervento
$dbo->query('DELETE FROM co_righe_contratti_articoli WHERE id='.prepare($idriga));
$dbo->query('DELETE FROM co_contratti_promemoria_articoli WHERE id='.prepare($idriga));
// Elimino il collegamento al componente
//$dbo->query('DELETE FROM my_impianto_componenti WHERE idimpianto='.prepare($idimpianto).' AND idintervento='.prepare($id_record));
@ -74,7 +74,7 @@ switch (post('op')) {
$iva = (($prezzo_vendita * $qta) - $sconto) * $rs_iva[0]['percentuale'] / 100;
// Aggiunto il collegamento fra l'articolo e l'intervento
$idriga = $dbo->query('INSERT INTO co_righe_contratti_articoli(idarticolo, id_riga_contratto, idimpianto, idautomezzo, descrizione, prezzo_vendita, prezzo_acquisto, sconto, sconto_unitario, tipo_sconto, idiva, desc_iva, iva, qta, um, abilita_serial) VALUES ('.prepare($idarticolo).', '.prepare($idcontratto_riga).', '.(empty($idimpianto) ? 'NULL' : prepare($idimpianto)).', '.prepare($idautomezzo).', '.prepare($descrizione).', '.prepare($prezzo_vendita).', '.prepare($prezzo_acquisto).', '.prepare($sconto).', '.prepare($sconto_unitario).', '.prepare($tipo_sconto).', '.prepare($idiva).', '.prepare($desc_iva).', '.prepare($iva).', '.prepare($qta).', '.prepare($um).', '.prepare($rsart[0]['abilita_serial']).')');
$idriga = $dbo->query('INSERT INTO co_contratti_promemoria_articoli(idarticolo, id_riga_contratto, idimpianto, idautomezzo, descrizione, prezzo_vendita, prezzo_acquisto, sconto, sconto_unitario, tipo_sconto, idiva, desc_iva, iva, qta, um, abilita_serial) VALUES ('.prepare($idarticolo).', '.prepare($idcontratto_riga).', '.(empty($idimpianto) ? 'NULL' : prepare($idimpianto)).', '.prepare($idautomezzo).', '.prepare($descrizione).', '.prepare($prezzo_vendita).', '.prepare($prezzo_acquisto).', '.prepare($sconto).', '.prepare($sconto_unitario).', '.prepare($tipo_sconto).', '.prepare($idiva).', '.prepare($desc_iva).', '.prepare($iva).', '.prepare($qta).', '.prepare($um).', '.prepare($rsart[0]['abilita_serial']).')');
/*if (!empty($serials)) {
if ($old_qta > $qta) {
@ -93,12 +93,12 @@ switch (post('op')) {
$idriga = post('idriga');
//$idarticolo = post('idarticolo');
$dbo->query('DELETE FROM co_righe_contratti_articoli WHERE id='.prepare($idriga).' '.Modules::getAdditionalsQuery($id_module));
$dbo->query('DELETE FROM co_contratti_promemoria_articoli WHERE id='.prepare($idriga).' '.Modules::getAdditionalsQuery($id_module));
// Riporto la merce nel magazzino
if (!empty($idriga) && !empty($id_record)) {
// Leggo la quantità attuale nell'intervento
//$q = 'SELECT qta, idautomezzo, idarticolo, idimpianto FROM co_righe_contratti_articoli WHERE id='.prepare($idriga);
//$q = 'SELECT qta, idautomezzo, idarticolo, idimpianto FROM co_contratti_promemoria_articoli WHERE id='.prepare($idriga);
//$rs = $dbo->fetchArray($q);
//$qta = $rs[0]['qta'];
//$idarticolo = $rs[0]['idarticolo'];
@ -144,7 +144,7 @@ switch (post('op')) {
$idcontratto_riga = $post['idcontratto_riga'];
$dbo->query('INSERT INTO co_righe_contratti_materiali(descrizione, qta, um, prezzo_vendita, prezzo_acquisto, idiva, desc_iva, iva, sconto, sconto_unitario, tipo_sconto, id_riga_contratto) VALUES ('.prepare($descrizione).', '.prepare($qta).', '.prepare($um).', '.prepare($prezzo_vendita).', '.prepare($prezzo_acquisto).', '.prepare($idiva).', '.prepare($desc_iva).', '.prepare($iva).', '.prepare($sconto).', '.prepare($sconto_unitario).', '.prepare($tipo_sconto).', '.prepare($idcontratto_riga).')');
$dbo->query('INSERT INTO co_contratti_promemoria_materiali(descrizione, qta, um, prezzo_vendita, prezzo_acquisto, idiva, desc_iva, iva, sconto, sconto_unitario, tipo_sconto, id_riga_contratto) VALUES ('.prepare($descrizione).', '.prepare($qta).', '.prepare($um).', '.prepare($prezzo_vendita).', '.prepare($prezzo_acquisto).', '.prepare($idiva).', '.prepare($desc_iva).', '.prepare($iva).', '.prepare($sconto).', '.prepare($sconto_unitario).', '.prepare($tipo_sconto).', '.prepare($idcontratto_riga).')');
break;
@ -169,7 +169,7 @@ switch (post('op')) {
$iva = (($prezzo_vendita * $qta) - $sconto) * $rs_iva[0]['percentuale'] / 100;
$dbo->query('UPDATE co_righe_contratti_materiali SET '.
$dbo->query('UPDATE co_contratti_promemoria_materiali SET '.
' descrizione='.prepare($descrizione).','.
' qta='.prepare($qta).','.
' um='.prepare($um).','.
@ -188,7 +188,7 @@ switch (post('op')) {
case 'delriga':
$idriga = post('idriga');
$dbo->query('DELETE FROM co_righe_contratti_materiali WHERE id='.prepare($idriga).' '.Modules::getAdditionalsQuery($id_module));
$dbo->query('DELETE FROM co_contratti_promemoria_materiali WHERE id='.prepare($idriga).' '.Modules::getAdditionalsQuery($id_module));
break;
}

View File

@ -39,13 +39,13 @@ if (empty($idriga)) {
$tipo_sconto = 'PRC';
}
(empty($idcontratto_riga)) ? $idcontratto_riga = $dbo->fetchArray('SELECT MAX(id) AS max_idcontratto_riga FROM `co_righe_contratti`')[0]['max_idcontratto_riga'] : '';
(empty($idcontratto_riga)) ? $idcontratto_riga = $dbo->fetchArray('SELECT MAX(id) AS max_idcontratto_riga FROM `co_contratti_promemoria`')[0]['max_idcontratto_riga'] : '';
} else {
$op = 'editarticolo';
$button = '<i class="fa fa-edit"></i> '.tr('Modifica');
// carico record da modificare
$q = "SELECT *, (SELECT codice FROM mg_articoli WHERE id=co_righe_contratti_articoli.idarticolo) AS codice_articolo, (SELECT CONCAT(codice, ' - ', descrizione) FROM mg_articoli WHERE id=co_righe_contratti_articoli.idarticolo) AS descrizione_articolo FROM co_righe_contratti_articoli WHERE id=".prepare($idriga);
$q = "SELECT *, (SELECT codice FROM mg_articoli WHERE id=co_contratti_promemoria_articoli.idarticolo) AS codice_articolo, (SELECT CONCAT(codice, ' - ', descrizione) FROM mg_articoli WHERE id=co_contratti_promemoria_articoli.idarticolo) AS descrizione_articolo FROM co_contratti_promemoria_articoli WHERE id=".prepare($idriga);
$rsr = $dbo->fetchArray($q);
$idarticolo = $rsr[0]['idarticolo'];
@ -74,7 +74,7 @@ echo '
<form id="add-articoli" action="'.$rootdir.'/modules/contratti/plugins/actions.php" method="post">
<input type="hidden" name="op" value="'.$op.'">
<input type="hidden" name="idriga" value="'.$idriga.'">
<input type="hidden" name="idcontratto_riga" value="'.$idcontratto_riga.'">';
if (!empty($idarticolo)) {
@ -113,7 +113,7 @@ echo '
</div>';
// Impianto
echo '
echo '
<div class="col-md-4">
{[ "type": "select", "multiple": "0", "label": "'.tr('Impianto').'", "name": "idimpianto", "values": "query=SELECT my_impianti.id AS id, my_impianti.nome AS descrizione FROM my_impianti_contratti INNER JOIN my_impianti ON my_impianti_contratti.idimpianto = my_impianti.id WHERE my_impianti_contratti.idcontratto = '.$id_record.' ORDER BY descrizione", "value": "'.$matricoleimpianti.'", "extra":"'.$readonly.'" ]}
</div>
@ -215,7 +215,7 @@ echo '
// Ricarico gli articoli
$('#articoli').load(globals.rootdir + '/modules/contratti/plugins/ajax_articoli.php?id_module=<?php echo $id_module; ?>&id_record=<?php echo $id_record; ?>&idcontratto_riga=<?php echo $idcontratto_riga; ?>');
}
});
});

View File

@ -25,13 +25,13 @@ if (empty($idriga)) {
$tipo_sconto = 'PRC';
}
(empty($idcontratto_riga)) ? $idcontratto_riga = $dbo->fetchArray('SELECT MAX(id) AS max_idcontratto_riga FROM `co_righe_contratti`')[0]['max_idcontratto_riga'] : '';
(empty($idcontratto_riga)) ? $idcontratto_riga = $dbo->fetchArray('SELECT MAX(id) AS max_idcontratto_riga FROM `co_contratti_promemoria`')[0]['max_idcontratto_riga'] : '';
} else {
$op = 'editriga';
$button = '<i class="fa fa-edit"></i> '.tr('Modifica');
// carico record da modificare
$q = 'SELECT * FROM co_righe_contratti_materiali WHERE id='.prepare($idriga);
$q = 'SELECT * FROM co_contratti_promemoria_materiali WHERE id='.prepare($idriga);
$rsr = $dbo->fetchArray($q);
$descrizione = $rsr[0]['descrizione'];

View File

@ -19,7 +19,7 @@ $list = '\"1\":\"'.tr('Pianificare a partire da oggi ').date('d/m/Y').'\"';
//promemoria esistente
if (!empty($get['idcontratto_riga'])) {
$idcontratto_riga = $get['idcontratto_riga'];
$qp = 'SELECT *, (SELECT descrizione FROM in_tipiintervento WHERE idtipointervento=co_righe_contratti.idtipointervento) AS tipointervento, (SELECT tempo_standard FROM in_tipiintervento WHERE idtipointervento = co_righe_contratti.idtipointervento) AS tempo_standard FROM co_righe_contratti WHERE id = '.$idcontratto_riga;
$qp = 'SELECT *, (SELECT descrizione FROM in_tipiintervento WHERE idtipointervento=co_contratti_promemoria.idtipointervento) AS tipointervento, (SELECT tempo_standard FROM in_tipiintervento WHERE idtipointervento = co_contratti_promemoria.idtipointervento) AS tempo_standard FROM co_contratti_promemoria WHERE id = '.$idcontratto_riga;
$rsp = $dbo->fetchArray($qp);
$data_richiesta = readDate($rsp[0]['data_richiesta']);
@ -34,8 +34,8 @@ if (!empty($get['idcontratto_riga'])) {
$op = 'pianificazione';
}
//se non è impostata idcontratto_riga allora sono in fase di inserimento di nuovo promemoria e mi calcolo il prossimo id per co_righe_contratti
(empty($idcontratto_riga)) ? $idcontratto_riga = $dbo->fetchArray('SELECT MAX(id) AS max_idcontratto_riga FROM `co_righe_contratti`')[0]['max_idcontratto_riga'] : '';
//se non è impostata idcontratto_riga allora sono in fase di inserimento di nuovo promemoria e mi calcolo il prossimo id per co_contratti_promemoria
(empty($idcontratto_riga)) ? $idcontratto_riga = $dbo->fetchArray('SELECT MAX(id) AS max_idcontratto_riga FROM `co_contratti_promemoria`')[0]['max_idcontratto_riga'] : '';
(empty($idcontratto_riga)) ? $idcontratto_riga = 1 : '';
//orari inizio fine interventi (8h standard)

View File

@ -11,7 +11,7 @@ if (!empty($get['idcontratto_riga'])) {
$idcontratto_riga = $get['idcontratto_riga'];
}
$query = 'SELECT * FROM co_righe_contratti_articoli WHERE id_riga_contratto='.prepare($idcontratto_riga).' '.Modules::getAdditionalsQuery('Magazzino').' ORDER BY id ASC';
$query = 'SELECT * FROM co_contratti_promemoria_articoli WHERE id_riga_contratto='.prepare($idcontratto_riga).' '.Modules::getAdditionalsQuery('Magazzino').' ORDER BY id ASC';
$rs = $dbo->fetchArray($query);
if (!empty($rs)) {

View File

@ -6,7 +6,7 @@ if (!empty($get['idcontratto_riga'])) {
$idcontratto_riga = $get['idcontratto_riga'];
}
$query = 'SELECT * FROM co_righe_contratti_materiali WHERE id_riga_contratto='.prepare($idcontratto_riga).' '.Modules::getAdditionalsQuery('Magazzino').' ORDER BY id ASC';
$query = 'SELECT * FROM co_contratti_promemoria_materiali WHERE id_riga_contratto='.prepare($idcontratto_riga).' '.Modules::getAdditionalsQuery('Magazzino').' ORDER BY id ASC';
$rs2 = $dbo->fetchArray($query);
if (count($rs2) > 0) {

View File

@ -25,7 +25,7 @@ $totale = 0;
$totale_stato = [];
// Tabella con riepilogo interventi
$rsi = $dbo->fetchArray('SELECT *, in_interventi.id, (SELECT MIN(orario_inizio) FROM in_interventi_tecnici WHERE idintervento=in_interventi.id) AS inizio, (SELECT SUM(ore) FROM in_interventi_tecnici WHERE idintervento=in_interventi.id) AS ore, (SELECT MIN(km) FROM in_interventi_tecnici WHERE idintervento=in_interventi.id) AS km FROM co_righe_contratti INNER JOIN in_interventi ON co_righe_contratti.idintervento=in_interventi.id WHERE co_righe_contratti.idcontratto='.prepare($id_record).' ORDER BY co_righe_contratti.idintervento DESC');
$rsi = $dbo->fetchArray('SELECT *, in_interventi.id, (SELECT MIN(orario_inizio) FROM in_interventi_tecnici WHERE idintervento=in_interventi.id) AS inizio, (SELECT SUM(ore) FROM in_interventi_tecnici WHERE idintervento=in_interventi.id) AS ore, (SELECT MIN(km) FROM in_interventi_tecnici WHERE idintervento=in_interventi.id) AS km FROM co_contratti_promemoria INNER JOIN in_interventi ON co_contratti_promemoria.idintervento=in_interventi.id WHERE co_contratti_promemoria.idcontratto='.prepare($id_record).' ORDER BY co_contratti_promemoria.idintervento DESC');
if (!empty($rsi)) {
echo '
<table class="table table-bordered table-condensed">
@ -269,10 +269,10 @@ if (!empty($rsi)) {
/*
Bilancio del contratto
*/
$rs = $dbo->fetchArray('SELECT SUM(subtotale - sconto) AS budget FROM co_righe2_contratti WHERE idcontratto='.prepare($id_record));
$rs = $dbo->fetchArray('SELECT SUM(subtotale - sconto) AS budget FROM co_righe_contratti WHERE idcontratto='.prepare($id_record));
$budget = $rs[0]['budget'];
$rs = $dbo->fetchArray("SELECT SUM(qta) AS totale_ore FROM `co_righe2_contratti` WHERE um='ore' AND idcontratto=".prepare($id_record));
$rs = $dbo->fetchArray("SELECT SUM(qta) AS totale_ore FROM `co_righe_contratti` WHERE um='ore' AND idcontratto=".prepare($id_record));
$contratto_tot_ore = $rs[0]['totale_ore'];
$diff = sum($budget, -$totale_addebito);

View File

@ -113,7 +113,7 @@ elseif (get('op') == 'addfattura') {
$rs = $dbo->fetchArray('SELECT id FROM co_ordiniservizio_pianificazionefatture WHERE idcontratto='.prepare($id_record));
// L'importo deve essere diviso per il numero di mesi
$rs2 = $dbo->fetchArray('SELECT SUM(subtotale) AS totale FROM co_righe2_contratti WHERE idcontratto='.prepare($id_record));
$rs2 = $dbo->fetchArray('SELECT SUM(subtotale) AS totale FROM co_righe_contratti WHERE idcontratto='.prepare($id_record));
$importo = $rs2[0]['totale'] / sizeof($rs);
// Lettura iva del cliente o predefinita
@ -151,7 +151,7 @@ echo '
/*
Fatture pianificate
*/
$rs = $dbo->fetchArray('SELECT *, (SELECT SUM(subtotale) FROM co_righe2_contratti WHERE idcontratto='.prepare($id_record).') AS budget_contratto, (SELECT descrizione FROM an_zone WHERE id=idzona) AS zona FROM co_ordiniservizio_pianificazionefatture WHERE idcontratto='.prepare($id_record).' ORDER BY data_scadenza ASC');
$rs = $dbo->fetchArray('SELECT *, (SELECT SUM(subtotale) FROM co_righe_contratti WHERE idcontratto='.prepare($id_record).') AS budget_contratto, (SELECT descrizione FROM an_zone WHERE id=idzona) AS zona FROM co_ordiniservizio_pianificazionefatture WHERE idcontratto='.prepare($id_record).' ORDER BY data_scadenza ASC');
if (empty($rs)) {
echo '

View File

@ -9,7 +9,7 @@ switch (filter('op')) {
case 'add-pianifica':
$data_richiesta = filter('data_richiesta');
$query = 'INSERT INTO `co_righe_contratti` ( `idcontratto`, `data_richiesta` ) VALUES ('.prepare($id_record).', '.prepare($data_richiesta).')';
$query = 'INSERT INTO `co_contratti_promemoria` ( `idcontratto`, `data_richiesta` ) VALUES ('.prepare($id_record).', '.prepare($data_richiesta).')';
if ($dbo->query($query)) {
} else {
@ -29,7 +29,7 @@ switch (filter('op')) {
$idsede = filter('idsede_c');
$idimpianti = implode(',', $post['idimpianti']);
$query = 'UPDATE co_righe_contratti 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)) {
@ -45,9 +45,9 @@ switch (filter('op')) {
$id = filter('id');
$dbo->query('DELETE FROM `co_righe_contratti` WHERE id='.prepare($id));
$dbo->query('DELETE FROM `co_righe_contratti_materiali` WHERE id_riga_contratto='.prepare($id));
$dbo->query('DELETE FROM `co_righe_contratti_articoli` WHERE id_riga_contratto='.prepare($id));
$dbo->query('DELETE FROM `co_contratti_promemoria` WHERE id='.prepare($id));
$dbo->query('DELETE FROM `co_contratti_promemoria_materiali` WHERE id_riga_contratto='.prepare($id));
$dbo->query('DELETE FROM `co_contratti_promemoria_articoli` WHERE id_riga_contratto='.prepare($id));
$_SESSION['infos'][] = tr('Pianificazione eliminata!');
@ -58,9 +58,9 @@ switch (filter('op')) {
//Eliminazione tutti i promemoria di questo contratto con non hanno l'intervento associato
case 'delete-promemoria':
$dbo->query('DELETE FROM `co_righe_contratti` WHERE idcontratto = '.$id_record.' AND idintervento IS NULL');
$dbo->query('DELETE FROM `co_righe_contratti_materiali` WHERE id_riga_contratto IN (SELECT id FROM `co_righe_contratti` WHERE idcontratto = '.$id_record.' AND idintervento IS NULL ) ');
$dbo->query('DELETE FROM `co_righe_contratti_articoli` WHERE id_riga_contratto IN (SELECT id FROM `co_righe_contratti` WHERE idcontratto = '.$id_record.' AND idintervento IS NULL ) ');
$dbo->query('DELETE FROM `co_contratti_promemoria` WHERE idcontratto = '.$id_record.' AND idintervento IS NULL');
$dbo->query('DELETE FROM `co_contratti_promemoria_materiali` WHERE id_riga_contratto IN (SELECT id FROM `co_contratti_promemoria` WHERE idcontratto = '.$id_record.' AND idintervento IS NULL ) ');
$dbo->query('DELETE FROM `co_contratti_promemoria_articoli` WHERE id_riga_contratto IN (SELECT id FROM `co_contratti_promemoria` WHERE idcontratto = '.$id_record.' AND idintervento IS NULL ) ');
$_SESSION['errors'][] = tr('Tutti i promemoria non associati sono stati eliminati!');
@ -77,8 +77,8 @@ switch (filter('op')) {
if (!empty($idcontratto_riga) && !empty($intervallo)) {
$qp = 'SELECT *, (SELECT idanagrafica FROM co_contratti WHERE id = '.$id_record.' ) AS idanagrafica, (SELECT data_conclusione FROM co_contratti WHERE id = '.$id_record.' ) AS data_conclusione, '.
'(SELECT descrizione FROM in_tipiintervento WHERE idtipointervento=co_righe_contratti.idtipointervento) AS tipointervento FROM co_righe_contratti '.
'WHERE co_righe_contratti.id = '.$idcontratto_riga;
'(SELECT descrizione FROM in_tipiintervento WHERE idtipointervento=co_contratti_promemoria.idtipointervento) AS tipointervento FROM co_contratti_promemoria '.
'WHERE co_contratti_promemoria.id = '.$idcontratto_riga;
$rsp = $dbo->fetchArray($qp);
$idtipointervento = $rsp[0]['idtipointervento'];
@ -112,18 +112,18 @@ switch (filter('op')) {
//controllo nuova data richiesta --> solo date maggiori o uguali di [oggi o data richiesta iniziale] ma che non superano la data di fine del contratto
if ((date('Y-m-d', strtotime($data_richiesta)) >= $min_date) && (date('Y-m-d', strtotime($data_richiesta)) <= date('Y-m-d', strtotime($data_conclusione)))) {
//Controllo che non esista già un promemoria idcontratto, idtipointervento e data_richiesta.
if (count($dbo->fetchArray("SELECT id FROM co_righe_contratti WHERE data_richiesta = '".$data_richiesta."' AND idtipointervento = '".$idtipointervento."' AND idcontratto = '".$id_record."' ")) == 0) {
if (count($dbo->fetchArray("SELECT id FROM co_contratti_promemoria WHERE data_richiesta = '".$data_richiesta."' AND idtipointervento = '".$idtipointervento."' AND idcontratto = '".$id_record."' ")) == 0) {
//inserisco il nuovo promemoria
$query = 'INSERT INTO `co_righe_contratti`(`idcontratto`, `idtipointervento`, `data_richiesta`, `richiesta`, `idsede`, `idimpianti` ) VALUES('.prepare($id_record).', '.prepare($idtipointervento).', '.prepare($data_richiesta).', '.prepare($richiesta).', '.prepare($idsede).', '.prepare($idimpianti).')';
$query = 'INSERT INTO `co_contratti_promemoria`(`idcontratto`, `idtipointervento`, `data_richiesta`, `richiesta`, `idsede`, `idimpianti` ) VALUES('.prepare($id_record).', '.prepare($idtipointervento).', '.prepare($data_richiesta).', '.prepare($richiesta).', '.prepare($idsede).', '.prepare($idimpianti).')';
if ($dbo->query($query)) {
$idriga = $dbo->lastInsertedID();
//copio anche righe materiali nel nuovo promemoria
$dbo->query('INSERT INTO co_righe_contratti_materiali (descrizione, qta,um,prezzo_vendita,prezzo_acquisto,idiva, desc_iva,iva,id_riga_contratto,sconto,sconto_unitario,tipo_sconto) SELECT descrizione, qta,um,prezzo_vendita,prezzo_acquisto,idiva, desc_iva,iva,'.$idriga.',sconto,sconto_unitario,tipo_sconto FROM co_righe_contratti_materiali WHERE id_riga_contratto = '.$idcontratto_riga.' ');
$dbo->query('INSERT INTO co_contratti_promemoria_materiali (descrizione, qta,um,prezzo_vendita,prezzo_acquisto,idiva, desc_iva,iva,id_riga_contratto,sconto,sconto_unitario,tipo_sconto) SELECT descrizione, qta,um,prezzo_vendita,prezzo_acquisto,idiva, desc_iva,iva,'.$idriga.',sconto,sconto_unitario,tipo_sconto FROM co_contratti_promemoria_materiali WHERE id_riga_contratto = '.$idcontratto_riga.' ');
//copio righe articoli nel nuovo promemoria
$dbo->query('INSERT INTO co_righe_contratti_articoli (idarticolo, id_riga_contratto,descrizione,prezzo_acquisto,prezzo_vendita,sconto, sconto_unitario, tipo_sconto,idiva,desc_iva,iva,idautomezzo, qta, um, abilita_serial, idimpianto) SELECT idarticolo, '.$idriga.',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.' ');
$dbo->query('INSERT INTO co_contratti_promemoria_articoli (idarticolo, id_riga_contratto,descrizione,prezzo_acquisto,prezzo_vendita,sconto, sconto_unitario, tipo_sconto,idiva,desc_iva,iva,idautomezzo, qta, um, abilita_serial, idimpianto) SELECT idarticolo, '.$idriga.',descrizione,prezzo_acquisto,prezzo_vendita,sconto,sconto_unitario,tipo_sconto,idiva,desc_iva,iva,idautomezzo, qta, um, abilita_serial, idimpianto FROM co_contratti_promemoria_articoli WHERE id_riga_contratto = '.$idcontratto_riga.' ');
$_SESSION['infos'][] = tr('Promemoria intervento pianificato!');
@ -174,13 +174,13 @@ switch (filter('op')) {
}
//collego l'intervento ai promemoria
$dbo->query('UPDATE co_righe_contratti SET idintervento='.prepare($idintervento).' WHERE id='.prepare($idriga));
$dbo->query('UPDATE co_contratti_promemoria SET idintervento='.prepare($idintervento).' WHERE id='.prepare($idriga));
//copio le righe dal promemoria all'intervento
$dbo->query('INSERT INTO in_righe_interventi (descrizione, qta,um,prezzo_vendita,prezzo_acquisto,idiva,desc_iva,iva,idintervento,sconto,sconto_unitario,tipo_sconto) SELECT descrizione, qta,um,prezzo_vendita,prezzo_acquisto,idiva,desc_iva,iva,'.$idintervento.',sconto,sconto_unitario,tipo_sconto FROM co_righe_contratti_materiali WHERE id_riga_contratto = '.$idcontratto_riga.' ');
$dbo->query('INSERT INTO in_righe_interventi (descrizione, qta,um,prezzo_vendita,prezzo_acquisto,idiva,desc_iva,iva,idintervento,sconto,sconto_unitario,tipo_sconto) SELECT descrizione, qta,um,prezzo_vendita,prezzo_acquisto,idiva,desc_iva,iva,'.$idintervento.',sconto,sconto_unitario,tipo_sconto FROM co_contratti_promemoria_materiali WHERE id_riga_contratto = '.$idcontratto_riga.' ');
//copio gli articoli dal promemoria all'intervento
$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.' ');
$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_contratti_promemoria_articoli WHERE id_riga_contratto = '.$idcontratto_riga.' ');
// Decremento la quantità per ogni articolo copiato
$rs_articoli = $dbo->fetchArray('SELECT * FROM mg_articoli_interventi WHERE idintervento = '.$idintervento.' ');
@ -222,7 +222,7 @@ switch (filter('op')) {
}
// Righe già inserite
$qp = 'SELECT *, (SELECT descrizione FROM in_tipiintervento WHERE idtipointervento=co_righe_contratti.idtipointervento) AS tipointervento FROM co_righe_contratti WHERE idcontratto='.prepare($id_record).' ORDER BY data_richiesta ASC';
$qp = 'SELECT *, (SELECT descrizione FROM in_tipiintervento WHERE idtipointervento=co_contratti_promemoria.idtipointervento) AS tipointervento FROM co_contratti_promemoria WHERE idcontratto='.prepare($id_record).' ORDER BY data_richiesta ASC';
$rsp = $dbo->fetchArray($qp);
$pianificabile = $dbo->fetchNum('SELECT id FROM co_staticontratti WHERE pianificabile = 1 AND descrizione = '.prepare($records[0]['stato']));
@ -302,8 +302,8 @@ if (count($rsp) != 0) {
}
}
$rsp4 = $dbo->fetchArray('SELECT id, descrizione,qta,um,prezzo_vendita, \'\' AS idarticolo FROM co_righe_contratti_materiali WHERE id_riga_contratto = '.prepare($rsp[$i]['id']).'
UNION SELECT id, descrizione,qta,um,prezzo_vendita, idarticolo FROM co_righe_contratti_articoli WHERE id_riga_contratto = '.prepare($rsp[$i]['id']));
$rsp4 = $dbo->fetchArray('SELECT id, descrizione,qta,um,prezzo_vendita, \'\' AS idarticolo FROM co_contratti_promemoria_materiali WHERE id_riga_contratto = '.prepare($rsp[$i]['id']).'
UNION SELECT id, descrizione,qta,um,prezzo_vendita, idarticolo FROM co_contratti_promemoria_articoli WHERE id_riga_contratto = '.prepare($rsp[$i]['id']));
$info_materiali = '';
if (!empty($rsp4)) {

View File

@ -15,7 +15,7 @@ $options = [
];
// Dati della riga
$rsr = $dbo->fetchArray('SELECT * FROM co_righe2_contratti WHERE idcontratto='.prepare($id_record).' AND id='.prepare($get['idriga']));
$rsr = $dbo->fetchArray('SELECT * FROM co_righe_contratti WHERE idcontratto='.prepare($id_record).' AND id='.prepare($get['idriga']));
$result = $rsr[0];
$result['prezzo'] = $rsr[0]['subtotale'] / $rsr[0]['qta'];

View File

@ -5,7 +5,7 @@ include_once __DIR__.'/../../core.php';
/*
ARTICOLI + RIGHE GENERICHE
*/
$rs = $dbo->fetchArray('SELECT *, round(sconto_unitario,'.Settings::get('Cifre decimali per importi').') AS sconto_unitario, round(sconto,'.Settings::get('Cifre decimali per importi').') AS sconto, round(subtotale,'.Settings::get('Cifre decimali per importi').') AS subtotale, IFNULL((SELECT codice FROM mg_articoli WHERE id=idarticolo), "") AS codice FROM co_righe2_contratti WHERE idcontratto='.prepare($id_record).' ORDER BY `order`');
$rs = $dbo->fetchArray('SELECT *, round(sconto_unitario,'.Settings::get('Cifre decimali per importi').') AS sconto_unitario, round(sconto,'.Settings::get('Cifre decimali per importi').') AS sconto, round(subtotale,'.Settings::get('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">

View File

@ -18,7 +18,7 @@ $mesi = [
];
// Righe inserite
$qp = "SELECT *, DATE_FORMAT( data_richiesta, '%m-%Y') AS mese, (SELECT descrizione FROM in_tipiintervento WHERE idtipointervento=co_righe_contratti.idtipointervento) AS tipointervento, (SELECT idanagrafica FROM co_contratti WHERE id=idcontratto) AS idcliente, (SELECT ragione_sociale FROM co_contratti INNER JOIN an_anagrafiche ON co_contratti.idanagrafica=an_anagrafiche.idanagrafica WHERE co_contratti.id=idcontratto) AS ragione_sociale FROM co_righe_contratti WHERE idcontratto IN( SELECT id FROM co_contratti WHERE idstato IN(SELECT id FROM co_staticontratti WHERE pianificabile = 1) ) AND idintervento IS NULL ORDER BY DATE_FORMAT( data_richiesta, '%m-%Y') ASC, ragione_sociale ASC";
$qp = "SELECT *, DATE_FORMAT( data_richiesta, '%m-%Y') AS mese, (SELECT descrizione FROM in_tipiintervento WHERE idtipointervento=co_contratti_promemoria.idtipointervento) AS tipointervento, (SELECT idanagrafica FROM co_contratti WHERE id=idcontratto) AS idcliente, (SELECT ragione_sociale FROM co_contratti INNER JOIN an_anagrafiche ON co_contratti.idanagrafica=an_anagrafiche.idanagrafica WHERE co_contratti.id=idcontratto) AS ragione_sociale FROM co_contratti_promemoria WHERE idcontratto IN( SELECT id FROM co_contratti WHERE idstato IN(SELECT id FROM co_staticontratti WHERE pianificabile = 1) ) AND idintervento IS NULL ORDER BY DATE_FORMAT( data_richiesta, '%m-%Y') ASC, ragione_sociale ASC";
$rsp = $dbo->fetchArray($qp);
if (!empty($rsp)) {

View File

@ -23,7 +23,7 @@ echo '
// Righe inserite
//idcontratto IN( SELECT id FROM co_contratti WHERE idstato IN(SELECT id FROM co_staticontratti WHERE pianificabile = 1) ) AND
$qp = "SELECT *, (SELECT SUM(subtotale) FROM co_righe2_contratti WHERE idcontratto=co_ordiniservizio_pianificazionefatture.idcontratto) AS budget_contratto, DATE_FORMAT( data_scadenza, '%m-%Y') AS mese, (SELECT idanagrafica FROM co_contratti WHERE id=idcontratto) AS idcliente, (SELECT ragione_sociale FROM an_anagrafiche WHERE idanagrafica=(SELECT idanagrafica FROM co_contratti WHERE id=idcontratto)) AS ragione_sociale, (SELECT descrizione FROM an_zone WHERE id=co_ordiniservizio_pianificazionefatture.idzona) AS zona FROM co_ordiniservizio_pianificazionefatture WHERE co_ordiniservizio_pianificazionefatture.iddocumento=0 ORDER BY DATE_FORMAT( data_scadenza, '%m-%Y') ASC, idcliente ASC";
$qp = "SELECT *, (SELECT SUM(subtotale) FROM co_righe_contratti WHERE idcontratto=co_ordiniservizio_pianificazionefatture.idcontratto) AS budget_contratto, DATE_FORMAT( data_scadenza, '%m-%Y') AS mese, (SELECT idanagrafica FROM co_contratti WHERE id=idcontratto) AS idcliente, (SELECT ragione_sociale FROM an_anagrafiche WHERE idanagrafica=(SELECT idanagrafica FROM co_contratti WHERE id=idcontratto)) AS ragione_sociale, (SELECT descrizione FROM an_zone WHERE id=co_ordiniservizio_pianificazionefatture.idzona) AS zona FROM co_ordiniservizio_pianificazionefatture WHERE co_ordiniservizio_pianificazionefatture.iddocumento=0 ORDER BY DATE_FORMAT( data_scadenza, '%m-%Y') ASC, idcliente ASC";
$rsp = $dbo->fetchArray($qp);
if (!empty($rsp)) {

View File

@ -138,7 +138,7 @@ switch (get('op')) {
$mese = $_GET['mese'];
//Righe inserite
$qp = "SELECT co_righe_contratti.id, idcontratto, richiesta, DATE_FORMAT( data_richiesta, '%m%Y') AS mese, data_richiesta, an_anagrafiche.ragione_sociale, 'intervento' AS ref, (SELECT descrizione FROM in_tipiintervento WHERE idtipointervento=co_righe_contratti.idtipointervento) AS tipointervento FROM (co_righe_contratti INNER JOIN co_contratti ON co_righe_contratti.idcontratto=co_contratti.id) INNER JOIN an_anagrafiche ON co_contratti.idanagrafica=an_anagrafiche.idanagrafica WHERE idcontratto IN( SELECT id FROM co_contratti WHERE idstato IN(SELECT id FROM co_staticontratti WHERE pianificabile = 1) ) AND idintervento IS NULL
$qp = "SELECT co_contratti_promemoria.id, idcontratto, richiesta, DATE_FORMAT( data_richiesta, '%m%Y') AS mese, data_richiesta, an_anagrafiche.ragione_sociale, 'intervento' AS ref, (SELECT descrizione FROM in_tipiintervento WHERE idtipointervento=co_contratti_promemoria.idtipointervento) AS tipointervento FROM (co_contratti_promemoria INNER JOIN co_contratti ON co_contratti_promemoria.idcontratto=co_contratti.id) INNER JOIN an_anagrafiche ON co_contratti.idanagrafica=an_anagrafiche.idanagrafica WHERE idcontratto IN( SELECT id FROM co_contratti WHERE idstato IN(SELECT id FROM co_staticontratti WHERE pianificabile = 1) ) AND idintervento IS NULL
UNION SELECT co_ordiniservizio.id, idcontratto, '', data_scadenza, DATE_FORMAT( data_scadenza, '%m%Y') AS mese, an_anagrafiche.ragione_sociale, 'ordine' AS ref, (SELECT descrizione FROM in_tipiintervento WHERE idtipointervento='ODS') AS tipointervento FROM (co_ordiniservizio INNER JOIN co_contratti ON co_ordiniservizio.idcontratto=co_contratti.id) INNER JOIN an_anagrafiche ON co_contratti.idanagrafica=an_anagrafiche.idanagrafica WHERE idcontratto IN( SELECT id FROM co_contratti WHERE idstato IN(SELECT id FROM co_staticontratti WHERE pianificabile = 1) ) AND idintervento IS NULL ORDER BY data_richiesta ASC";
$rsp = $dbo->fetchArray($qp);
$tot_dapianificare = sizeof($rsp);

View File

@ -285,7 +285,7 @@ if ($total == 0) {
</div>
<br>
<?php
$qp = "SELECT co_righe_contratti.id, idcontratto, richiesta, DATE_FORMAT( data_richiesta, '%m-%Y') AS mese, data_richiesta, an_anagrafiche.ragione_sociale, 'intervento' AS ref, (SELECT descrizione FROM in_tipiintervento WHERE idtipointervento=co_righe_contratti.idtipointervento) AS tipointervento FROM (co_righe_contratti INNER JOIN co_contratti ON co_righe_contratti.idcontratto=co_contratti.id) INNER JOIN an_anagrafiche ON co_contratti.idanagrafica=an_anagrafiche.idanagrafica WHERE idcontratto IN( SELECT id FROM co_contratti WHERE idstato IN(SELECT id FROM co_staticontratti WHERE pianificabile = 1) ) AND idintervento IS NULL
$qp = "SELECT co_contratti_promemoria.id, idcontratto, richiesta, DATE_FORMAT( data_richiesta, '%m-%Y') AS mese, data_richiesta, an_anagrafiche.ragione_sociale, 'intervento' AS ref, (SELECT descrizione FROM in_tipiintervento WHERE idtipointervento=co_contratti_promemoria.idtipointervento) AS tipointervento FROM (co_contratti_promemoria INNER JOIN co_contratti ON co_contratti_promemoria.idcontratto=co_contratti.id) INNER JOIN an_anagrafiche ON co_contratti.idanagrafica=an_anagrafiche.idanagrafica WHERE idcontratto IN( SELECT id FROM co_contratti WHERE idstato IN(SELECT id FROM co_staticontratti WHERE pianificabile = 1) ) AND idintervento IS NULL
UNION SELECT co_ordiniservizio.id, idcontratto, '', data_scadenza, DATE_FORMAT( data_scadenza, '%m-%Y') AS mese, an_anagrafiche.ragione_sociale, 'ordine' AS ref, (SELECT descrizione FROM in_tipiintervento WHERE idtipointervento='ODS') AS tipointervento FROM (co_ordiniservizio INNER JOIN co_contratti ON co_ordiniservizio.idcontratto=co_contratti.id) INNER JOIN an_anagrafiche ON co_contratti.idanagrafica=an_anagrafiche.idanagrafica WHERE idcontratto IN( SELECT id FROM co_contratti WHERE idstato IN(SELECT id FROM co_staticontratti WHERE pianificabile = 1) ) AND idintervento IS NULL ORDER BY data_richiesta ASC";
$rsp = $dbo->fetchArray($qp);
@ -306,7 +306,7 @@ if (!empty($rsp)) {
<h4>'.tr('Promemoria contratti da pianificare').'</h4>';
// Controllo pianificazioni mesi precedenti
$qp_old = 'SELECT co_righe_contratti.id FROM co_righe_contratti INNER JOIN co_contratti ON co_righe_contratti.idcontratto=co_contratti.id WHERE idstato IN(SELECT id FROM co_staticontratti WHERE pianificabile = 1) AND idintervento IS NULL AND UNIX_TIMESTAMP(co_righe_contratti.data_richiesta)+86400<UNIX_TIMESTAMP(NOW())
$qp_old = 'SELECT co_contratti_promemoria.id FROM co_contratti_promemoria INNER JOIN co_contratti ON co_contratti_promemoria.idcontratto=co_contratti.id WHERE idstato IN(SELECT id FROM co_staticontratti WHERE pianificabile = 1) AND idintervento IS NULL AND UNIX_TIMESTAMP(co_contratti_promemoria.data_richiesta)+86400<UNIX_TIMESTAMP(NOW())
UNION SELECT co_ordiniservizio.id FROM co_ordiniservizio INNER JOIN co_contratti ON co_ordiniservizio.idcontratto=co_contratti.id WHERE idstato IN(SELECT id FROM co_staticontratti WHERE pianificabile = 1) AND idintervento IS NULL AND UNIX_TIMESTAMP(co_ordiniservizio.data_scadenza)+86400<UNIX_TIMESTAMP(NOW())';
$rsp_old = $dbo->fetchNum($qp_old);

View File

@ -439,7 +439,7 @@ switch (post('op')) {
}
// Collego in fattura eventuali articoli collegati all'intervento
$rs2 = $dbo->fetchArray('SELECT mg_articoli_interventi.*, idarticolo FROM mg_articoli_interventi INNER JOIN mg_articoli ON mg_articoli_interventi.idarticolo=mg_articoli.id WHERE idintervento='.prepare($idintervento).' AND (idintervento NOT IN(SELECT idintervento FROM co_righe_preventivi WHERE idpreventivo IN(SELECT idpreventivo FROM co_righe_documenti WHERE iddocumento='.prepare($id_record).')) AND idintervento NOT IN(SELECT idintervento FROM co_righe_contratti WHERE idcontratto IN(SELECT idcontratto FROM co_righe_documenti WHERE iddocumento='.prepare($id_record).')) )');
$rs2 = $dbo->fetchArray('SELECT mg_articoli_interventi.*, idarticolo FROM mg_articoli_interventi INNER JOIN mg_articoli ON mg_articoli_interventi.idarticolo=mg_articoli.id WHERE idintervento='.prepare($idintervento).' AND (idintervento NOT IN(SELECT idintervento FROM co_righe_preventivi WHERE idpreventivo IN(SELECT idpreventivo FROM co_righe_documenti WHERE iddocumento='.prepare($id_record).')) AND idintervento NOT IN(SELECT idintervento FROM co_contratti_promemoria WHERE idcontratto IN(SELECT idcontratto FROM co_righe_documenti WHERE iddocumento='.prepare($id_record).')) )');
for ($i = 0; $i < sizeof($rs2); ++$i) {
$riga = add_articolo_infattura($id_record, $rs2[$i]['idarticolo'], $rs2[$i]['descrizione'], $rs2[$i]['idiva'], $rs2[$i]['qta'], $rs2[$i]['prezzo_vendita'] * $rs2[$i]['qta'], $rs2[$i]['sconto'], $rs2[$i]['sconto_unitario'], $rs2[$i]['tipo_sconto'], $idintervento, 0, $rs2[$i]['um']);
@ -448,7 +448,7 @@ switch (post('op')) {
}
// Aggiunta spese aggiuntive come righe generiche
$query = 'SELECT * FROM in_righe_interventi WHERE idintervento='.prepare($idintervento).' AND (idintervento NOT IN(SELECT idintervento FROM co_righe_preventivi WHERE idpreventivo IN(SELECT idpreventivo FROM co_righe_documenti WHERE iddocumento='.prepare($id_record).')) AND idintervento NOT IN(SELECT idintervento FROM co_righe_contratti WHERE idcontratto IN(SELECT idcontratto FROM co_righe_documenti WHERE iddocumento='.prepare($id_record).')) )';
$query = 'SELECT * FROM in_righe_interventi WHERE idintervento='.prepare($idintervento).' AND (idintervento NOT IN(SELECT idintervento FROM co_righe_preventivi WHERE idpreventivo IN(SELECT idpreventivo FROM co_righe_documenti WHERE iddocumento='.prepare($id_record).')) AND idintervento NOT IN(SELECT idintervento FROM co_contratti_promemoria WHERE idcontratto IN(SELECT idcontratto FROM co_righe_documenti WHERE iddocumento='.prepare($id_record).')) )';
$rsr = $dbo->fetchArray($query);
if (sizeof($rsr) > 0) {
for ($i = 0; $i < sizeof($rsr); ++$i) {
@ -1137,7 +1137,7 @@ switch (post('op')) {
$id_record = $dbo->lastInsertedID();
//Righe contratto
$rs_righe = $dbo->fetchArray('SELECT * FROM co_righe2_contratti WHERE idcontratto='.prepare($idcontratto));
$rs_righe = $dbo->fetchArray('SELECT * FROM co_righe_contratti WHERE idcontratto='.prepare($idcontratto));
for ($i = 0; $i < sizeof($rs_righe); ++$i) {
$dbo->query('INSERT INTO co_righe_documenti(iddocumento, idcontratto, is_descrizione, descrizione, subtotale, sconto, sconto_unitario, tipo_sconto, sconto_globale, idiva, desc_iva, iva, iva_indetraibile, um, qta, `order`) values('.prepare($id_record).', '.prepare($idcontratto).', '.prepare($rs_righe[$i]['is_descrizione']).', '.prepare($rs_righe[$i]['descrizione']).', '.prepare($rs_righe[$i]['subtotale']).', '.prepare($rs_righe[$i]['sconto']).', '.prepare($rs_righe[$i]['sconto_unitario']).', '.prepare($rs_righe[$i]['tipo_sconto']).', '.prepare($rs_righe[$i]['sconto_globale']).', '.prepare($rs_righe[$i]['idiva']).', '.prepare($rs_righe[$i]['desc_iva']).', '.prepare($rs_righe[$i]['iva']).', '.prepare($rs_righe[$i]['iva_indetraibile']).', '.prepare($rs_righe[$i]['um']).', '.prepare($rs_righe[$i]['qta']).', '.prepare($rs_righe[$i]['order']).')');
@ -1374,13 +1374,13 @@ switch (post('op')) {
$dbo->query("UPDATE co_contratti SET idstato=(SELECT id FROM co_staticontratti WHERE descrizione='In lavorazione') WHERE id=".prepare($rsp[$i]['idcontratto']));
// Aggiorno anche lo stato degli interventi collegati ai contratti
$dbo->query("UPDATE in_interventi SET idstatointervento='OK' WHERE id IN (SELECT idintervento FROM co_righe_contratti WHERE idcontratto=".prepare($rsp[$i]['idcontratto']).')');
$dbo->query("UPDATE in_interventi SET idstatointervento='OK' WHERE id IN (SELECT idintervento FROM co_contratti_promemoria WHERE idcontratto=".prepare($rsp[$i]['idcontratto']).')');
}
/*
Rimuovo tutti gli articoli dalla fattura collegati agli interventi che sono collegati a questo contratto
*/
$rs2 = $dbo->fetchArray('SELECT idintervento FROM co_righe_contratti WHERE idcontratto='.prepare($idcontratto)." AND NOT idcontratto=''");
$rs2 = $dbo->fetchArray('SELECT idintervento FROM co_contratti_promemoria WHERE idcontratto='.prepare($idcontratto)." AND NOT idcontratto=''");
for ($i = 0; $i < sizeof($rs2); ++$i) {
// Leggo gli articoli usati in questo intervento
$rs3 = $dbo->fetchArray('SELECT idarticolo FROM mg_articoli_interventi WHERE idintervento='.prepare($rs2[$i]['idintervento']));

View File

@ -34,7 +34,7 @@ echo '
echo '
<div class="row">
<div class="col-md-6">
{[ "type": "select", "label": "'.tr('Contratto').'", "name": "idcontratto", "required": 1, "values": "query=SELECT id, CONCAT(\'Contratto numero \', numero, \' - \', nome) AS descrizione, budget, (SELECT SUM(subtotale) FROM co_righe2_contratti WHERE idcontratto=co_contratti.id) AS subtot, (SELECT SUM(sconto) FROM co_righe2_contratti WHERE idcontratto=co_contratti.id) AS sconto FROM co_contratti WHERE idanagrafica='.prepare($idanagrafica).' AND id NOT IN (SELECT idcontratto FROM co_righe_documenti WHERE NOT idcontratto=NULL) AND idstato IN( SELECT id FROM co_staticontratti WHERE fatturabile = 1)", "extra": "onchange=\"$data = $(this).selectData(); $(\'#descrizione\').val($data.text); $(\'#prezzo\').val($data.subtot); $(\'#sconto\').val($data.sconto);\"" ]}
{[ "type": "select", "label": "'.tr('Contratto').'", "name": "idcontratto", "required": 1, "values": "query=SELECT id, CONCAT(\'Contratto numero \', numero, \' - \', nome) AS descrizione, budget, (SELECT SUM(subtotale) FROM co_righe_contratti WHERE idcontratto=co_contratti.id) AS subtot, (SELECT SUM(sconto) FROM co_righe_contratti WHERE idcontratto=co_contratti.id) AS sconto FROM co_contratti WHERE idanagrafica='.prepare($idanagrafica).' AND id NOT IN (SELECT idcontratto FROM co_righe_documenti WHERE NOT idcontratto=NULL) AND idstato IN( SELECT id FROM co_staticontratti WHERE fatturabile = 1)", "extra": "onchange=\"$data = $(this).selectData(); $(\'#descrizione\').val($data.text); $(\'#prezzo\').val($data.subtot); $(\'#sconto\').val($data.sconto);\"" ]}
</div>
</div>';

View File

@ -45,7 +45,7 @@ $rs = $dbo->fetchArray('SELECT
AND in_statiintervento.completato=1
AND in_interventi.id NOT IN (SELECT idintervento FROM co_righe_documenti WHERE idintervento IS NOT NULL)
AND NOT in_interventi.id IN (SELECT idintervento FROM co_preventivi_interventi WHERE idintervento IS NOT NULL)
AND NOT in_interventi.id IN (SELECT idintervento FROM co_righe_contratti WHERE idintervento IS NOT NULL)');
AND NOT in_interventi.id IN (SELECT idintervento FROM co_contratti_promemoria WHERE idintervento IS NOT NULL)');
foreach ($rs as $key => $value) {
$rs[$key]['prezzo'] = get_costi_intervento($value['id'])['totale'];
}

View File

@ -263,13 +263,13 @@ if ($records[0]['stato'] == 'Emessa') {
if ($records[0]['stato'] != 'Pagato' && $records[0]['stato'] != 'Emessa') {
if ($dir == 'entrata') {
// Lettura interventi non rifiutati, non fatturati e non collegati a preventivi o contratti
$int_query = 'SELECT COUNT(*) AS tot FROM in_interventi INNER JOIN in_statiintervento ON in_interventi.idstatointervento=in_statiintervento.idstatointervento WHERE idanagrafica='.prepare($records[0]['idanagrafica']).' AND in_statiintervento.completato=1 AND in_interventi.id NOT IN (SELECT idintervento FROM co_righe_documenti WHERE idintervento IS NOT NULL) AND in_interventi.id NOT IN (SELECT idintervento FROM co_preventivi_interventi WHERE idintervento IS NOT NULL) AND in_interventi.id NOT IN (SELECT idintervento FROM co_righe_contratti WHERE idintervento IS NOT NULL)';
$int_query = 'SELECT COUNT(*) AS tot FROM in_interventi INNER JOIN in_statiintervento ON in_interventi.idstatointervento=in_statiintervento.idstatointervento WHERE idanagrafica='.prepare($records[0]['idanagrafica']).' AND in_statiintervento.completato=1 AND in_interventi.id NOT IN (SELECT idintervento FROM co_righe_documenti WHERE idintervento IS NOT NULL) AND in_interventi.id NOT IN (SELECT idintervento FROM co_preventivi_interventi WHERE idintervento IS NOT NULL) AND in_interventi.id NOT IN (SELECT idintervento FROM co_contratti_promemoria WHERE idintervento IS NOT NULL)';
$interventi = $dbo->fetchArray($int_query)[0]['tot'];
// Se non trovo niente provo a vedere se ce ne sono per clienti terzi
if (empty($interventi)) {
// Lettura interventi non rifiutati, non fatturati e non collegati a preventivi o contratti (clienti terzi)
$int_query = 'SELECT COUNT(*) AS tot FROM in_interventi INNER JOIN in_statiintervento ON in_interventi.idstatointervento=in_statiintervento.idstatointervento WHERE idclientefinale='.prepare($records[0]['idanagrafica']).' AND in_statiintervento.completato=1 AND in_interventi.id NOT IN (SELECT idintervento FROM co_righe_documenti WHERE idintervento IS NOT NULL) AND in_interventi.id NOT IN (SELECT idintervento FROM co_preventivi_interventi WHERE idintervento IS NOT NULL) AND in_interventi.id NOT IN (SELECT idintervento FROM co_righe_contratti WHERE idintervento IS NOT NULL)';
$int_query = 'SELECT COUNT(*) AS tot FROM in_interventi INNER JOIN in_statiintervento ON in_interventi.idstatointervento=in_statiintervento.idstatointervento WHERE idclientefinale='.prepare($records[0]['idanagrafica']).' AND in_statiintervento.completato=1 AND in_interventi.id NOT IN (SELECT idintervento FROM co_righe_documenti WHERE idintervento IS NOT NULL) AND in_interventi.id NOT IN (SELECT idintervento FROM co_preventivi_interventi WHERE idintervento IS NOT NULL) AND in_interventi.id NOT IN (SELECT idintervento FROM co_contratti_promemoria WHERE idintervento IS NOT NULL)';
$interventi = $dbo->fetchArray($int_query)[0]['tot'];
}

View File

@ -44,25 +44,25 @@ switch (post('op')) {
// Creazione nuova pianificazione se non era impostata
if (!empty($idcontratto) && empty($idcontratto_riga)) {
// Se questo intervento era collegato ad un altro contratto aggiorno le informazioni...
$rs = $dbo->fetchArray('SELECT id FROM co_righe_contratti WHERE idintervento='.prepare($id_record));
$rs = $dbo->fetchArray('SELECT id FROM co_contratti_promemoria WHERE idintervento='.prepare($id_record));
if (empty($rs)) {
$dbo->insert('co_righe_contratti', array_merge(['idcontratto' => $idcontratto], $array));
$dbo->insert('co_contratti_promemoria', array_merge(['idcontratto' => $idcontratto], $array));
}
// ...altrimenti se sto cambiando contratto aggiorno solo l'id del nuovo contratto
else {
$dbo->update('co_righe_contratti', ['idcontratto' => $idcontratto], ['idintervento' => $id_record]);
$dbo->update('co_contratti_promemoria', ['idcontratto' => $idcontratto], ['idintervento' => $id_record]);
}
}
// Pianificazione già impostata, aggiorno solo il codice intervento
elseif (!empty($idcontratto) && !empty($idcontratto_riga)) {
$dbo->update('co_righe_contratti', $array, ['idcontratto' => $idriga, 'id' => $idcontratto_riga]);
$dbo->update('co_contratti_promemoria', $array, ['idcontratto' => $idriga, 'id' => $idcontratto_riga]);
}
// Se non è impostato nessun contratto o riga, tolgo il collegamento dell'intervento al contratto
elseif (empty($idcontratto)) {
$dbo->update('co_righe_contratti', ['idintervento' => null], ['idintervento' => $id_record]);
$dbo->update('co_contratti_promemoria', ['idintervento' => null], ['idintervento' => $id_record]);
}
// Aggiorna tutte le sessioni di lavoro
@ -261,13 +261,13 @@ switch (post('op')) {
// Se è specificato che l'intervento fa parte di una pianificazione aggiorno il codice dell'intervento sulla riga della pianificazione
if (!empty($idcontratto_riga)) {
$dbo->update('co_righe_contratti', $array, ['idcontratto' => $idcontratto, 'id' => $idcontratto_riga]);
$dbo->update('co_contratti_promemoria', $array, ['idcontratto' => $idcontratto, 'id' => $idcontratto_riga]);
//copio le righe dal promemoria all'intervento
$dbo->query('INSERT INTO in_righe_interventi (descrizione, qta,um,prezzo_vendita,prezzo_acquisto,idiva,desc_iva,iva,idintervento,sconto,sconto_unitario,tipo_sconto) SELECT descrizione, qta,um,prezzo_vendita,prezzo_acquisto,idiva,desc_iva,iva,'.$id_record.',sconto,sconto_unitario,tipo_sconto FROM co_righe_contratti_materiali WHERE id_riga_contratto = '.$idcontratto_riga.' ');
$dbo->query('INSERT INTO in_righe_interventi (descrizione, qta,um,prezzo_vendita,prezzo_acquisto,idiva,desc_iva,iva,idintervento,sconto,sconto_unitario,tipo_sconto) SELECT descrizione, qta,um,prezzo_vendita,prezzo_acquisto,idiva,desc_iva,iva,'.$id_record.',sconto,sconto_unitario,tipo_sconto FROM co_contratti_promemoria_materiali WHERE id_riga_contratto = '.$idcontratto_riga.' ');
//copio gli articoli dal promemoria all'intervento
$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.' ');
$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_contratti_promemoria_articoli WHERE id_riga_contratto = '.$idcontratto_riga.' ');
// Decremento la quantità per ogni articolo copiato
$rs_articoli = $dbo->fetchArray('SELECT * FROM mg_articoli_interventi WHERE idintervento = '.$id_record.' ');
@ -275,7 +275,7 @@ switch (post('op')) {
add_movimento_magazzino($rs_articolo['idarticolo'], -force_decimal($rs_articolo['qta']), ['idautomezzo' => $rs_articolo['idautomezzo'], 'idintervento' => $id_record]);
}
} else {
$dbo->insert('co_righe_contratti', [
$dbo->insert('co_contratti_promemoria', [
'idcontratto' => $idcontratto,
'idintervento' => $id_record,
'idtipointervento' => $idtipointervento,
@ -354,7 +354,7 @@ switch (post('op')) {
}
// Eliminazione associazioni tra interventi e contratti
$query = 'UPDATE co_righe_contratti SET idintervento = NULL WHERE idintervento='.prepare($id_record);
$query = 'UPDATE co_contratti_promemoria SET idintervento = NULL WHERE idintervento='.prepare($id_record);
$dbo->query($query);
// Eliminazione dell'intervento

View File

@ -71,7 +71,7 @@ elseif (!empty($idcontratto) && !empty($idcontratto_riga)) {
$idzona = $rs[0]['idzona'];
// Info riga pianificata
$rs = $dbo->fetchArray('SELECT *, (SELECT tempo_standard FROM in_tipiintervento WHERE idtipointervento = co_righe_contratti.idtipointervento) AS tempo_standard FROM co_righe_contratti WHERE idcontratto='.prepare($idcontratto).' AND id='.prepare($idcontratto_riga));
$rs = $dbo->fetchArray('SELECT *, (SELECT tempo_standard FROM in_tipiintervento WHERE idtipointervento = co_contratti_promemoria.idtipointervento) AS tempo_standard FROM co_contratti_promemoria WHERE idcontratto='.prepare($idcontratto).' AND id='.prepare($idcontratto_riga));
$idtipointervento = $rs[0]['idtipointervento'];
$data = (null !== filter('data')) ? filter('data') : $rs[0]['data_richiesta'];
$richiesta = $rs[0]['richiesta'];

View File

@ -14,7 +14,7 @@ switch (get('op')) {
$idtecnico = get('idtecnico');
// Verifico se l'intervento è collegato ad un contratto
$rs = $dbo->fetchArray('SELECT idcontratto FROM co_righe_contratti WHERE idintervento='.prepare($id_record));
$rs = $dbo->fetchArray('SELECT idcontratto FROM co_contratti_promemoria WHERE idintervento='.prepare($id_record));
$idcontratto = $rs[0]['idcontratto'];
$ore = 1;

View File

@ -59,7 +59,7 @@ $_SESSION['superselect']['idanagrafica'] = $records[0]['idanagrafica'];
<div class="col-md-3">
<?php
$rs = $dbo->fetchArray('SELECT id, idcontratto FROM co_righe_contratti WHERE idintervento='.prepare($id_record));
$rs = $dbo->fetchArray('SELECT id, idcontratto FROM co_contratti_promemoria WHERE idintervento='.prepare($id_record));
if (count($rs) == 1) {
$idcontratto = $rs[0]['idcontratto'];
$idcontratto_riga = $rs[0]['id'];

View File

@ -53,7 +53,7 @@ switch (filter('op')) {
$righe = $dbo->fetchNum('SELECT id FROM co_righe_documenti WHERE um='.prepare($records[0]['valore']).'
UNION SELECT id FROM dt_righe_ddt WHERE um='.prepare($records[0]['valore']).'
UNION SELECT id FROM or_righe_ordini WHERE um='.prepare($records[0]['valore']).'
UNION SELECT id FROM co_righe2_contratti WHERE um='.prepare($records[0]['valore']).'
UNION SELECT id FROM co_righe_contratti WHERE um='.prepare($records[0]['valore']).'
UNION SELECT id FROM mg_articoli WHERE um='.prepare($records[0]['valore']).'
UNION SELECT id FROM co_righe_preventivi WHERE um='.prepare($records[0]['valore']));

View File

@ -27,7 +27,7 @@ include_once __DIR__.'/../../core.php';
$righe = $dbo->fetchNum('SELECT id FROM co_righe_documenti WHERE um='.prepare($records[0]['valore']).'
UNION SELECT id FROM dt_righe_ddt WHERE um='.prepare($records[0]['valore']).'
UNION SELECT id FROM or_righe_ordini WHERE um='.prepare($records[0]['valore']).'
UNION SELECT id FROM co_righe2_contratti WHERE um='.prepare($records[0]['valore']).'
UNION SELECT id FROM co_righe_contratti WHERE um='.prepare($records[0]['valore']).'
UNION SELECT id FROM mg_articoli WHERE um='.prepare($records[0]['valore']).'
UNION SELECT id FROM co_righe_preventivi WHERE um='.prepare($records[0]['valore']));

View File

@ -309,7 +309,7 @@ if (in_array($records[0]['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_righe_contratti WHERE idintervento IS NOT NULL) AND idanagrafica='.prepare($records[0]['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($records[0]['idanagrafica']).'" ]}
</div>
</div>

View File

@ -80,7 +80,7 @@ echo "
<tbody>';
// RIGHE PREVENTIVO CON ORDINAMENTO UNICO
$righe = $dbo->fetchArray('SELECT * FROM co_righe2_contratti WHERE idcontratto='.prepare($id_record).' ORDER BY `order`');
$righe = $dbo->fetchArray('SELECT * FROM co_righe_contratti WHERE idcontratto='.prepare($id_record).' ORDER BY `order`');
foreach ($righe as $r) {
$count = 0;
$count += ceil(strlen($r['descrizione']) / $autofill['words']);

View File

@ -5,7 +5,7 @@ include_once __DIR__.'/../../core.php';
$module_name = 'Contratti';
// Lettura info fattura
$records = $dbo->fetchArray('SELECT *, co_contratti.descrizione AS desc_contratto, (SELECT orario_inizio FROM in_interventi_tecnici WHERE idintervento=in_interventi.id LIMIT 0,1) AS data, co_contratti.descrizione AS `cdescrizione`, co_contratti.idanagrafica AS `idanagrafica`, co_contratti.costo_orario AS costo_orario , co_contratti.costo_km AS costo_km FROM co_contratti LEFT OUTER JOIN (co_righe_contratti LEFT OUTER JOIN in_interventi ON co_righe_contratti.idintervento=in_interventi.id) ON co_contratti.id=co_righe_contratti.idcontratto WHERE co_contratti.id='.prepare($id_record));
$records = $dbo->fetchArray('SELECT *, co_contratti.descrizione AS desc_contratto, (SELECT orario_inizio FROM in_interventi_tecnici WHERE idintervento=in_interventi.id LIMIT 0,1) AS data, co_contratti.descrizione AS `cdescrizione`, co_contratti.idanagrafica AS `idanagrafica`, co_contratti.costo_orario AS costo_orario , co_contratti.costo_km AS costo_km FROM co_contratti LEFT OUTER JOIN (co_contratti_promemoria LEFT OUTER JOIN in_interventi ON co_contratti_promemoria.idintervento=in_interventi.id) ON co_contratti.id=co_contratti_promemoria.idcontratto WHERE co_contratti.id='.prepare($id_record));
$id_cliente = $records[0]['idanagrafica'];
$id_sede = $records[0]['idsede'];

View File

@ -61,7 +61,7 @@ $totale_ore_impiegate = 0;
$sconto = [];
$imponibile = [];
$interventi = $dbo->fetchArray('SELECT *, in_interventi.id, in_interventi.codice, (SELECT GROUP_CONCAT(DISTINCT ragione_sociale) FROM in_interventi_tecnici JOIN an_anagrafiche ON an_anagrafiche.idanagrafica = in_interventi_tecnici.idtecnico WHERE idintervento=in_interventi.id) AS tecnici, (SELECT MIN(orario_inizio) FROM in_interventi_tecnici WHERE idintervento=in_interventi.id) AS inizio, (SELECT SUM(ore) FROM in_interventi_tecnici WHERE idintervento=in_interventi.id) AS ore, (SELECT SUM(km) FROM in_interventi_tecnici WHERE idintervento=in_interventi.id) AS km FROM co_righe_contratti JOIN in_interventi ON co_righe_contratti.idintervento=in_interventi.id WHERE co_righe_contratti.idcontratto='.prepare($id_record).' ORDER BY inizio DESC');
$interventi = $dbo->fetchArray('SELECT *, in_interventi.id, in_interventi.codice, (SELECT GROUP_CONCAT(DISTINCT ragione_sociale) FROM in_interventi_tecnici JOIN an_anagrafiche ON an_anagrafiche.idanagrafica = in_interventi_tecnici.idtecnico WHERE idintervento=in_interventi.id) AS tecnici, (SELECT MIN(orario_inizio) FROM in_interventi_tecnici WHERE idintervento=in_interventi.id) AS inizio, (SELECT SUM(ore) FROM in_interventi_tecnici WHERE idintervento=in_interventi.id) AS ore, (SELECT SUM(km) FROM in_interventi_tecnici WHERE idintervento=in_interventi.id) AS km FROM co_contratti_promemoria JOIN in_interventi ON co_contratti_promemoria.idintervento=in_interventi.id WHERE co_contratti_promemoria.idcontratto='.prepare($id_record).' ORDER BY inizio DESC');
if (!empty($interventi)) {
// Interventi
@ -464,10 +464,10 @@ $imponibile = sum($imponibile);
$totale = $imponibile - $sconto;
$rs = $dbo->fetchArray('SELECT SUM(subtotale-sconto) as budget FROM `co_righe2_contratti` WHERE idcontratto = '.prepare($id_record));
$rs = $dbo->fetchArray('SELECT SUM(subtotale-sconto) as budget FROM `co_righe_contratti` WHERE idcontratto = '.prepare($id_record));
$budget = $rs[0]['budget'];
$rs = $dbo->fetchArray("SELECT SUM(qta) AS totale_ore FROM `co_righe2_contratti` WHERE um='ore' AND idcontratto = ".prepare($id_record));
$rs = $dbo->fetchArray("SELECT SUM(qta) AS totale_ore FROM `co_righe_contratti` WHERE um='ore' AND idcontratto = ".prepare($id_record));
$totale_ore = $rs[0]['totale_ore'];
$rapporto = $budget - $totale;

View File

@ -7,7 +7,7 @@ include_once $docroot.'/modules/interventi/modutil.php';
$module_name = 'Interventi';
// carica intervento
$query = 'SELECT in_interventi.*, (SELECT numero FROM co_contratti WHERE id=(SELECT idcontratto FROM co_righe_contratti WHERE idintervento=in_interventi.id)) AS numero_contratto, (SELECT numero FROM co_preventivi WHERE id=(SELECT idpreventivo FROM co_preventivi_interventi WHERE idintervento=in_interventi.id ORDER BY idpreventivo DESC LIMIT 0,1)) AS numero_preventivo, (SELECT SUM(prezzo_dirittochiamata) FROM in_interventi_tecnici GROUP BY idintervento HAVING idintervento=in_interventi.id) AS `tot_dirittochiamata`, (SELECT SUM(km) FROM in_interventi_tecnici GROUP BY idintervento HAVING idintervento=in_interventi.id) AS `tot_km`, (SELECT SUM(ore*prezzo_ore_unitario) FROM in_interventi_tecnici GROUP BY idintervento HAVING idintervento=in_interventi.id) AS `tot_ore_consuntivo`, (SELECT SUM(prezzo_km_consuntivo) FROM in_interventi_tecnici GROUP BY idintervento HAVING idintervento=in_interventi.id) AS `tot_km_consuntivo`, in_interventi.descrizione AS `descrizione_intervento`, richiesta, (SELECT descrizione FROM in_tipiintervento WHERE idtipointervento=in_interventi.idtipointervento) AS tipointervento FROM in_interventi INNER JOIN in_tipiintervento ON in_interventi.idtipointervento=in_tipiintervento.idtipointervento WHERE id='.prepare($id_record).' '.Modules::getAdditionalsQuery('Interventi');
$query = 'SELECT in_interventi.*, (SELECT numero FROM co_contratti WHERE id=(SELECT idcontratto FROM co_contratti_promemoria WHERE idintervento=in_interventi.id)) AS numero_contratto, (SELECT numero FROM co_preventivi WHERE id=(SELECT idpreventivo FROM co_preventivi_interventi WHERE idintervento=in_interventi.id ORDER BY idpreventivo DESC LIMIT 0,1)) AS numero_preventivo, (SELECT SUM(prezzo_dirittochiamata) FROM in_interventi_tecnici GROUP BY idintervento HAVING idintervento=in_interventi.id) AS `tot_dirittochiamata`, (SELECT SUM(km) FROM in_interventi_tecnici GROUP BY idintervento HAVING idintervento=in_interventi.id) AS `tot_km`, (SELECT SUM(ore*prezzo_ore_unitario) FROM in_interventi_tecnici GROUP BY idintervento HAVING idintervento=in_interventi.id) AS `tot_ore_consuntivo`, (SELECT SUM(prezzo_km_consuntivo) FROM in_interventi_tecnici GROUP BY idintervento HAVING idintervento=in_interventi.id) AS `tot_km_consuntivo`, in_interventi.descrizione AS `descrizione_intervento`, richiesta, (SELECT descrizione FROM in_tipiintervento WHERE idtipointervento=in_interventi.idtipointervento) AS tipointervento FROM in_interventi INNER JOIN in_tipiintervento ON in_interventi.idtipointervento=in_tipiintervento.idtipointervento WHERE id='.prepare($id_record).' '.Modules::getAdditionalsQuery('Interventi');
$records = $dbo->fetchArray($query);
$costi_intervento = get_costi_intervento($id_record);

View File

@ -324,5 +324,5 @@ UPDATE `or_righe_ordini` SET `idiva` = 75 WHERE `idiva` = 31;
ALTER TABLE `co_contratti` DROP `idtipointervento`;
-- Rinominazione tabelle
-- ALTER TABLE `co_righe_contratti` RENAME `co_contratti_promemoria`;
-- ALTER TABLE `co_righe2_contratti` RENAME `co_righe_contratti`;
ALTER TABLE `co_righe_contratti` RENAME `co_contratti_promemoria`;
ALTER TABLE `co_righe2_contratti` RENAME `co_righe_contratti`;

View File

@ -29,8 +29,8 @@ $tables = [
'co_pianodeiconti3',
'co_preventivi',
'co_preventivi_interventi',
'co_righe2_contratti',
'co_righe_contratti',
'co_contratti_promemoria',
'co_righe_documenti',
'co_righe_preventivi',
'co_ritenutaacconto',