Migliorato panel dati appalto, fix possibilità di importare righe contratto in fattura se il contratto non ne contiene.

This commit is contained in:
Luca 2018-11-13 14:51:19 +01:00
parent 5aa26b58d6
commit 00cca00784
7 changed files with 25 additions and 19 deletions

View File

@ -4,7 +4,7 @@ include_once __DIR__.'/../../../core.php';
switch ($resource) {
case 'contratti':
$query = 'SELECT co_contratti.id AS id, CONCAT("Contratto ", numero, " del ", DATE_FORMAT(data_bozza, "%d/%m/%Y"), " - ", nome, " [", (SELECT `descrizione` FROM `co_staticontratti` WHERE `co_staticontratti`.`id` = `idstato`) , "]") AS descrizione, (SELECT SUM(subtotale) FROM co_righe_contratti WHERE idcontratto=co_contratti.id) AS totale, (SELECT SUM(sconto) FROM co_righe_contratti WHERE idcontratto=co_contratti.id) AS sconto FROM co_contratti INNER JOIN an_anagrafiche ON co_contratti.idanagrafica=an_anagrafiche.idanagrafica |where| ORDER BY id';
$query = 'SELECT co_contratti.id AS id, CONCAT("Contratto ", numero, " del ", DATE_FORMAT(data_bozza, "%d/%m/%Y"), " - ", nome, " [", (SELECT `descrizione` FROM `co_staticontratti` WHERE `co_staticontratti`.`id` = `idstato`) , "]") AS descrizione, (SELECT SUM(subtotale) FROM co_righe_contratti WHERE idcontratto=co_contratti.id) AS totale, (SELECT SUM(sconto) FROM co_righe_contratti WHERE idcontratto=co_contratti.id) AS sconto, (SELECT COUNT(id) FROM co_righe_contratti WHERE idcontratto=co_contratti.id) AS n_righe FROM co_contratti INNER JOIN an_anagrafiche ON co_contratti.idanagrafica=an_anagrafiche.idanagrafica |where| ORDER BY id';
foreach ($elements as $element) {
$filter[] = 'id='.prepare($element);
@ -25,6 +25,7 @@ switch ($resource) {
$custom['totale'] = 'totale';
$custom['sconto'] = 'sconto';
$custom['n_righe'] = 'n_righe';
break;
}

View File

@ -133,10 +133,10 @@ if ($record['stato'] == 'Emessa') {
</div>
</div>
<!-- Fatturazione Elettronica -->
<div class="panel panel-primary">
<!-- Fatturazione Elettronica PA -->
<div class="panel panel-primary <?php echo ((($record['tipo_anagrafica']) == 'Ente pubblico') ? 'show' : 'hide'); ?>" >
<div class="panel-heading">
<h3 class="panel-title"><?php echo tr('Dati Fatturazione Elettronica'); ?></h3>
<h3 class="panel-title"><?php echo tr('Dati appalto'); ?></h3>
</div>
<div class="panel-body">
@ -232,7 +232,8 @@ $rs = $dbo->fetchArray('SELECT * FROM in_tipiintervento WHERE idtipointervento N
if (sizeof($rs) > 0) {
echo '
<table class="table table-striped table-condensed table-bordered">
<div class="clearfix">&nbsp;</div>
<table class="table table-striped table-condensed table-bordered">
<tr>
<th width="300">'.tr('Tipo attività').'</th>
@ -372,6 +373,11 @@ if (!empty($record['idcontratto_prev'])) {
}
?>
{( "name": "filelist_and_upload", "id_module": "$id_module$", "id_record": "$id_record$" )}
{( "name": "log_email", "id_module": "$id_module$", "id_record": "$id_record$" )}
<form action='<?php echo $rootdir; ?>/editor.php?id_module=<?php echo Modules::get('Fatture di vendita')['id']; ?>' method='post' id='form_creafattura'>
<input type="hidden" name="backto" value="record-edit">
<input type='hidden' name='op' value='fattura_da_contratto'>
@ -459,10 +465,6 @@ if (!empty($elementi)) {
?>
{( "name": "filelist_and_upload", "id_module": "$id_module$", "id_record": "$id_record$" )}
{( "name": "log_email", "id_module": "$id_module$", "id_record": "$id_record$" )}
<a class="btn btn-danger ask" data-backto="record-list">
<i class="fa fa-trash"></i> <?php echo tr('Elimina'); ?>
</a>

View File

@ -3,5 +3,5 @@
include_once __DIR__.'/../../core.php';
if (isset($id_record)) {
$record = $dbo->fetchOne('SELECT *, (SELECT descrizione FROM co_staticontratti WHERE id=idstato) AS stato, (SELECT GROUP_CONCAT(my_impianti_contratti.idimpianto) FROM my_impianti_contratti WHERE idcontratto = co_contratti.id) AS idimpianti FROM co_contratti WHERE id='.prepare($id_record).Modules::getAdditionalsQuery($id_module));
$record = $dbo->fetchOne('SELECT *, (SELECT tipo FROM an_anagrafiche WHERE idanagrafica = co_contratti.idanagrafica) AS tipo_anagrafica, (SELECT descrizione FROM co_staticontratti WHERE id=idstato) AS stato, (SELECT GROUP_CONCAT(my_impianti_contratti.idimpianto) FROM my_impianti_contratti WHERE idcontratto = co_contratti.id) AS idimpianti FROM co_contratti WHERE id='.prepare($id_record).Modules::getAdditionalsQuery($id_module));
}

View File

@ -36,7 +36,7 @@ $_SESSION['superselect']['non_fatturato'] = 1;
echo '
<div class="row">
<div class="col-md-6">
{[ "type": "select", "label": "'.tr('Contratto').'", "name": "idcontratto", "required": 1, "ajax-source": "contratti", "extra": "onchange=\"$data = $(this).selectData(); $(\'#descrizione\').val($data.text); $(\'#prezzo\').val($data.totale); $(\'#sconto\').val($data.sconto);\"" ]}
{[ "type": "select", "label": "'.tr('Contratto').'", "name": "idcontratto", "required": 1, "ajax-source": "contratti", "extra": "onchange=\"$data = $(this).selectData(); $(\'#descrizione\').val($data.text); $(\'#prezzo\').val($data.totale); $(\'#sconto\').val($data.sconto); if ($data.n_righe>0) { $(\'#import\').prop(\'checked\', true); $(\'input[name=import]\').val(\'1\'); $(\'#import\').removeAttr(\'disabled\'); }else{ $(\'#import\').prop(\'checked\', false); $(\'input[name=import]\').val(\'0\'); $(\'#import\').prop(\'disabled\', true); } \"" ]}
</div>
<div class="col-md-6">

View File

@ -350,6 +350,7 @@ if (!empty($id_intervento)) {
// Refresh modulo dopo la chiusura di una pianificazione attività derivante dalle attività
// da pianificare, altrimenti il promemoria non si vede più nella lista a destra
// TODO: da gestire via ajax
if( $('input[name=idcontratto_riga]').val() != undefined ){
$('#bs-popup button.close').on('click', function(){
location.reload();
@ -468,10 +469,12 @@ if (!empty($id_intervento)) {
// Se l'aggiunta intervento proviene dai contratti, faccio il submit via ajax e ricarico la tabella dei contratti
else if(ref == "interventi_contratti"){
//$('#elenco_interventi > tbody').load(globals.rootdir + '/modules/contratti/plugins/contratti.pianificazioneinterventi.php?op=get_interventi_pianificati&idcontratto=<?php echo $idcontratto; ?>');
$("#bs-popup").modal('hide');
$("#bs-popup").modal('hide');
parent.window.location.reload();
//location.href = '<?php echo $rootdir; ?>/editor.php?id_module=<?php echo Modules::get('Contratti')['id']; ?>&id_record=<?php echo $id_record; ?>#tab_<?php echo $id_plugin; ?>';
//TODO: da gestire via ajax
//$('#elenco_interventi > tbody').load(globals.rootdir + '/modules/contratti/plugins/contratti.pianificazioneinterventi.php?op=get_interventi_pianificati&idcontratto=<?php echo $idcontratto; ?>');
}
}
});

View File

@ -141,13 +141,13 @@ $_SESSION['superselect']['idanagrafica'] = $record['idanagrafica'];
</div>
<?php
// Visualizzo solo se l'attività non è già collegata ad un contratto
if (empty($record['idcontratto'])) {
?>
<!-- Fatturazione Elettronica -->
<div class="panel panel-primary">
<!-- Fatturazione Elettronica PA-->
<div class="panel panel-primary <?php echo ((($record['tipo_anagrafica']) == 'Ente pubblico') ? 'show' : 'hide'); ?>" >
<div class="panel-heading">
<h3 class="panel-title"><?php echo tr('Dati Fatturazione Elettronica'); ?></h3>
<h3 class="panel-title"><?php echo tr('Dati appalto'); ?></h3>
</div>
<div class="panel-body">

View File

@ -3,5 +3,5 @@
include_once __DIR__.'/../../core.php';
if (isset($id_record)) {
$record = $dbo->fetchOne('SELECT *, (SELECT completato FROM in_statiintervento WHERE idstatointervento=in_interventi.idstatointervento) AS flag_completato, IF((in_interventi.idsede = 0), (SELECT idzona FROM an_anagrafiche WHERE idanagrafica = in_interventi.idanagrafica), (SELECT idzona FROM an_sedi WHERE id = in_interventi.idsede)) AS idzona, (SELECT colore FROM in_statiintervento WHERE idstatointervento=in_interventi.idstatointervento) AS colore, (SELECT idcontratto FROM co_promemoria WHERE idintervento=in_interventi.id LIMIT 0,1) AS idcontratto, in_interventi.id_preventivo as idpreventivo FROM in_interventi WHERE id='.prepare($id_record).Modules::getAdditionalsQuery($id_module));
$record = $dbo->fetchOne('SELECT *, (SELECT tipo FROM an_anagrafiche WHERE idanagrafica = in_interventi.idanagrafica) AS tipo_anagrafica, (SELECT completato FROM in_statiintervento WHERE idstatointervento=in_interventi.idstatointervento) AS flag_completato, IF((in_interventi.idsede = 0), (SELECT idzona FROM an_anagrafiche WHERE idanagrafica = in_interventi.idanagrafica), (SELECT idzona FROM an_sedi WHERE id = in_interventi.idsede)) AS idzona, (SELECT colore FROM in_statiintervento WHERE idstatointervento=in_interventi.idstatointervento) AS colore, (SELECT idcontratto FROM co_promemoria WHERE idintervento=in_interventi.id LIMIT 0,1) AS idcontratto, in_interventi.id_preventivo as idpreventivo FROM in_interventi WHERE id='.prepare($id_record).Modules::getAdditionalsQuery($id_module));
}