2017-08-04 16:28:16 +02:00
< ? php
include_once __DIR__ . '/../../core.php' ;
unset ( $_SESSION [ 'superselect' ][ 'idanagrafica' ]);
$_SESSION [ 'superselect' ][ 'idanagrafica' ] = $records [ 0 ][ 'idanagrafica' ];
?> <script src="<?php echo $rootdir ?>/modules/contratti/js/contratti_helper.js"></script>
< form action = " " method = " post " role = " form " >
< input type = " hidden " name = " backto " value = " record-edit " >
< input type = " hidden " name = " op " value = " update " >
< input type = " hidden " name = " id_record " value = " <?php echo $id_record ?> " >
<!-- DATI INTESTAZIONE -->
< div class = " panel panel-primary " >
< div class = " panel-heading " >
2017-09-04 12:02:29 +02:00
< h3 class = " panel-title " >< ? php echo tr ( 'Intestazione' ) ?> </h3>
2017-08-04 16:28:16 +02:00
</ div >
< div class = " panel-body " >
< div class = " pull-right " >
< ? php
if ( $records [ 0 ][ 'rinnovabile' ]) {
echo "
< button type = \ " button \" class= \" btn btn-warning \" onclick= \" if( confirm('Rinnovare questo contratto?') ) { location.href=' " . $rootdir . '/editor.php?op=renew&id_module=' . $id_module . '&id_record=' . $id_record . " '; } \" >
2017-09-10 14:35:41 +02:00
< i class = \ " fa fa-refresh \" ></i> " . tr ( 'Rinnova' ) . ' ...
</ button > ' ;
2017-08-04 16:28:16 +02:00
}
2017-09-21 17:48:41 +02:00
echo Prints :: getDropdown ( $id_module , $id_record );
2017-08-04 16:28:16 +02:00
?>
2017-09-04 12:02:29 +02:00
< button type = " submit " class = " btn btn-success " >< i class = " fa fa-check " ></ i > < ? php echo tr ( 'Salva modifiche' ); ?> </button>
2017-08-04 16:28:16 +02:00
< br >< br >
</ div >
< div class = " clearfix " ></ div >< br >
< div class = " row " >
< div class = " col-md-2 " >
2017-09-04 12:02:29 +02:00
{[ " type " : " text " , " label " : " <?php echo tr('Numero'); ?> " , " name " : " numero " , " required " : 1 , " class " : " text-center " , " value " : " $numero $ " ]}
2017-08-04 16:28:16 +02:00
</ div >
< div class = " col-md-4 " >
2017-09-04 12:02:29 +02:00
{[ " type " : " select " , " label " : " <?php echo tr('Cliente'); ?> " , " name " : " idanagrafica " , " id " : " idanagrafica_c " , " required " : 1 , " value " : " $idanagrafica $ " , " ajax-source " : " clienti " ]}
2017-08-04 16:28:16 +02:00
</ div >
< div class = " col-md-3 " >
2017-09-04 12:02:29 +02:00
{[ " type " : " select " , " label " : " <?php echo tr('Agente'); ?> " , " name " : " idagente " , " values " : " query=SELECT an_anagrafiche.idanagrafica AS id, 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=0 ORDER BY ragione_sociale " , " value " : " $idagente $ " ]}
2017-08-04 16:28:16 +02:00
</ div >
< div class = " col-md-3 " >
2017-09-04 12:02:29 +02:00
{[ " type " : " select " , " label " : " <?php echo tr('Referente'); ?> " , " name " : " idreferente " , " value " : " $idreferente $ " , " ajax-source " : " referenti " ]}
2017-08-04 16:28:16 +02:00
</ div >
</ div >
< div class = " row " >
< div class = " col-md-6 " >
2017-09-04 12:02:29 +02:00
{[ " type " : " text " , " label " : " <?php echo tr('Nome'); ?> " , " name " : " nome " , " required " : 1 , " value " : " $nome $ " ]}
2017-08-04 16:28:16 +02:00
</ div >
< div class = " col-md-2 " >
2017-09-04 12:02:29 +02:00
{[ " type " : " number " , " label " : " <?php echo tr('Validità'); ?> " , " name " : " validita " , " decimals " : " 0 " , " value " : " $validita $ " , " icon-after " : " giorni " ]}
2017-08-04 16:28:16 +02:00
</ div >
< div class = " col-md-2 " >
2017-09-04 12:02:29 +02:00
{[ " type " : " checkbox " , " label " : " <?php echo tr('Rinnovabile'); ?> " , " name " : " rinnovabile " , " value " : " $rinnovabile $ " ]}
2017-08-04 16:28:16 +02:00
</ div >
< div class = " col-md-2 " >
2017-09-04 12:02:29 +02:00
{[ " type " : " number " , " label " : " <?php echo tr('Preavviso per rinnovo'); ?> " , " name " : " giorni_preavviso_rinnovo " , " decimals " : " 0 " , " value " : " $giorni_preavviso_rinnovo $ " , " icon-after " : " giorni " ]}
2017-08-04 16:28:16 +02:00
</ div >
</ div >
< div class = " row " >
< div class = " col-md-3 " >
2017-09-04 12:02:29 +02:00
{[ " type " : " date " , " label " : " <?php echo tr('Data bozza'); ?> " , " maxlength " : 10 , " name " : " data_bozza " , " value " : " $data_bozza $ " ]}
2017-08-04 16:28:16 +02:00
</ div >
< div class = " col-md-3 " >
2017-09-04 12:02:29 +02:00
{[ " type " : " date " , " label " : " <?php echo tr('Data accettazione'); ?> " , " maxlength " : 10 , " name " : " data_accettazione " , " value " : " $data_accettazione $ " ]}
2017-08-04 16:28:16 +02:00
</ div >
< div class = " col-md-3 " >
2017-09-04 12:02:29 +02:00
{[ " type " : " date " , " label " : " <?php echo tr('Data conclusione'); ?> " , " maxlength " : 10 , " name " : " data_conclusione " , " value " : " $data_conclusione $ " ]}
2017-08-04 16:28:16 +02:00
</ div >
< div class = " col-md-3 " >
2017-09-04 12:02:29 +02:00
{[ " type " : " date " , " label " : " <?php echo tr('Data rifiuto'); ?> " , " maxlength " : 10 , " name " : " data_rifiuto " , " value " : " $data_rifiuto $ " ]}
2017-08-04 16:28:16 +02:00
</ div >
</ div >
< div class = " row " >
< div class = " col-md-3 " >
2017-09-04 12:02:29 +02:00
{[ " type " : " select " , " label " : " <?php echo tr('Metodo di pagamento'); ?> " , " name " : " idpagamento " , " values " : " query=SELECT id, descrizione FROM co_pagamenti GROUP BY descrizione ORDER BY descrizione " , " value " : " $idpagamento $ " ]}
2017-08-04 16:28:16 +02:00
</ div >
< div class = " col-md-3 " >
2017-09-04 12:02:29 +02:00
{[ " type " : " select " , " label " : " <?php echo tr('Stato'); ?> " , " name " : " idstato " , " required " : 1 , " values " : " query=SELECT id, descrizione FROM co_staticontratti " , " value " : " $idstato $ " ]}
2017-08-04 16:28:16 +02:00
</ div >
< div class = " col-md-3 " >
2017-09-04 12:02:29 +02:00
{[ " type " : " select " , " multiple " : " 1 " , " label " : " <?php echo tr('Impianti'); ?> " , " name " : " matricolaimpianto[] " , " values " : " query=SELECT idanagrafica, id AS id, nome AS descrizione FROM my_impianti WHERE idanagrafica=' $idanagrafica $ ' ORDER BY descrizione " , " value " : " $matricoleimpianti $ " ]}
2017-08-04 16:28:16 +02:00
</ div >
</ div >
2017-09-11 11:28:39 +02:00
< div class = " row " >
< div class = " col-md-3 " >
2017-09-19 16:20:44 +02:00
{[ " type " : " number " , " label " : " <?php echo tr('Sconto incondizionato') ?> " , " name " : " sconto_generico " , " value " : " $sconto_globale $ " , " help " : " <?php echo tr('Sconto complessivo del contratto'); ?> " , " icon-after " : " choice|untprc| $tipo_sconto_globale $ " < ? php
2017-09-11 11:28:39 +02:00
if ( $records [ 0 ][ 'stato' ] == 'Emessa' ) {
2017-09-14 10:27:49 +02:00
echo ', "disabled" : 1' ;
}
2017-09-11 11:28:39 +02:00
?> ]}
</ div >
</ div >
2017-08-04 16:28:16 +02:00
< div class = " row " >
< div class = " col-md-12 " >
2017-09-04 12:02:29 +02:00
{[ " type " : " textarea " , " label " : " <?php echo tr('Esclusioni'); ?> " , " name " : " esclusioni " , " class " : " autosize " , " value " : " $esclusioni $ " ]}
2017-08-04 16:28:16 +02:00
</ div >
</ div >
< div class = " row " >
< div class = " col-md-12 " >
2017-09-04 12:02:29 +02:00
{[ " type " : " textarea " , " label " : " <?php echo tr('Descrizione'); ?> " , " name " : " descrizione " , " class " : " autosize " , " value " : " $descrizione $ " ]}
2017-08-04 16:28:16 +02:00
</ div >
</ div >
</ div >
</ div >
<!-- COSTI -->
< div class = " panel panel-primary " >
< div class = " panel-heading " >
2017-09-04 12:02:29 +02:00
< h3 class = " panel-title " >< ? php echo tr ( 'Costi unitari' ); ?> </h3>
2017-08-04 16:28:16 +02:00
</ div >
< div class = " panel-body " >
< div class = " row " >
< div class = " col-md-12 col-lg-12 " >
< ? php
$idtipiintervento = [ '-1' ];
//Loop fra i tipi di attività e i relativi costi del tipo intervento
$rs = $dbo -> fetchArray ( 'SELECT co_contratti_tipiintervento.*, in_tipiintervento.descrizione FROM in_tipiintervento INNER JOIN co_contratti_tipiintervento ON in_tipiintervento.idtipointervento=co_contratti_tipiintervento.idtipointervento WHERE idcontratto=' . prepare ( $id_record ) . ' AND (co_contratti_tipiintervento.costo_ore!=0 OR co_contratti_tipiintervento.costo_km!=0 OR co_contratti_tipiintervento.costo_dirittochiamata!=0) ORDER BY in_tipiintervento.descrizione' );
if ( sizeof ( $rs ) > 0 ) {
echo '
< table class = " table table-striped table-condensed table-bordered " >
< tr >
2017-09-04 12:02:29 +02:00
< th width = " 300 " > '.tr(' Tipo attività ').' </ th >
2017-08-04 16:28:16 +02:00
2017-09-04 12:02:29 +02:00
< th > '.tr(' Costo orario ').' </ th >
< th > '.tr(' Costo al km ').' </ th >
< th > '.tr(' Diritto di chiamata ').' </ th >
2017-08-04 16:28:16 +02:00
2017-09-04 12:02:29 +02:00
< th > '.tr(' Costo orario ( tecnico ) ').' </ th >
< th > '.tr(' Costo al km ( tecnico ) ').' </ th >
< th > '.tr(' Diritto di chiamata ( tecnico ) ').' </ th >
2017-08-04 16:28:16 +02:00
</ tr > ' ;
for ( $i = 0 ; $i < sizeof ( $rs ); ++ $i ) {
echo '
< tr >
< td > '.$rs[$i][' descrizione '].' </ td >
< td >
{[ " type " : " number " , " name " : " costo_ore['. $rs[$i] ['idtipointervento'].'] " , " value " : " '. $rs[$i] ['costo_ore'].' " ]}
</ td >
< td >
{[ " type " : " number " , " name " : " costo_km['. $rs[$i] ['idtipointervento'].'] " , " value " : " '. $rs[$i] ['costo_km'].' " ]}
</ td >
< td >
{[ " type " : " number " , " name " : " costo_dirittochiamata['. $rs[$i] ['idtipointervento'].'] " , " value " : " '. $rs[$i] ['costo_dirittochiamata'].' " ]}
</ td >
< td >
{[ " type " : " number " , " name " : " costo_ore_tecnico['. $rs[$i] ['idtipointervento'].'] " , " value " : " '. $rs[$i] ['costo_ore_tecnico'].' " ]}
</ td >
< td >
{[ " type " : " number " , " name " : " costo_km_tecnico['. $rs[$i] ['idtipointervento'].'] " , " value " : " '. $rs[$i] ['costo_km_tecnico'].' " ]}
</ td >
< td >
{[ " type " : " number " , " name " : " costo_dirittochiamata_tecnico['. $rs[$i] ['idtipointervento'].'] " , " value " : " '. $rs[$i] ['costo_dirittochiamata_tecnico'].' " ]}
</ td >
</ tr > ' ;
$idtipiintervento [] = prepare ( $rs [ $i ][ 'idtipointervento' ]);
}
echo '
</ table > ' ;
}
echo '
2017-09-04 12:02:29 +02:00
< button type = " button " onclick = " $ (this).next().toggleClass( \ 'hide \ '); " class = " btn btn-info btn-sm " >< i class = " fa fa-th-list " ></ i > '.tr(' Mostra tipi di attività non utilizzate ').' </ button >
2017-08-04 16:28:16 +02:00
< div class = " hide " > ' ;
//Loop fra i tipi di attività e i relativi costi del tipo intervento (quelli a 0)
$rs = $dbo -> fetchArray ( 'SELECT * FROM in_tipiintervento WHERE idtipointervento NOT IN(' . implode ( ',' , $idtipiintervento ) . ') ORDER BY descrizione' );
if ( sizeof ( $rs ) > 0 ) {
echo '
< table class = " table table-striped table-condensed table-bordered " >
< tr >
2017-09-04 12:02:29 +02:00
< th width = " 300 " > '.tr(' Tipo attività ').' </ th >
2017-08-04 16:28:16 +02:00
2017-09-04 12:02:29 +02:00
< th > '.tr(' Costo orario ').' </ th >
< th > '.tr(' Costo al km ').' </ th >
< th > '.tr(' Diritto di chiamata ').' </ th >
2017-08-04 16:28:16 +02:00
2017-09-04 12:02:29 +02:00
< th > '.tr(' Costo orario ( tecnico ) ').' </ th >
< th > '.tr(' Costo al km ( tecnico ) ').' </ th >
< th > '.tr(' Diritto di chiamata ( tecnico ) ').' </ th >
2017-08-04 16:28:16 +02:00
</ tr > ' ;
for ( $i = 0 ; $i < sizeof ( $rs ); ++ $i ) {
echo '
< tr >
< td > '.$rs[$i][' descrizione '].' </ td >
< td >
{[ " type " : " number " , " name " : " costo_ore['. $rs[$i] ['idtipointervento'].'] " , " value " : " '. $rs[$i] ['costo_orario'].' " ]}
</ td >
< td >
{[ " type " : " number " , " name " : " costo_km['. $rs[$i] ['idtipointervento'].'] " , " value " : " '. $rs[$i] ['costo_km'].' " ]}
</ td >
< td >
{[ " type " : " number " , " name " : " costo_dirittochiamata['. $rs[$i] ['idtipointervento'].'] " , " value " : " '. $rs[$i] ['costo_diritto_chiamata'].' " ]}
</ td >
< td >
{[ " type " : " number " , " name " : " costo_ore_tecnico['. $rs[$i] ['idtipointervento'].'] " , " value " : " '. $rs[$i] ['costo_orario_tecnico'].' " ]}
</ td >
< td >
{[ " type " : " number " , " name " : " costo_km_tecnico['. $rs[$i] ['idtipointervento'].'] " , " value " : " '. $rs[$i] ['costo_km_tecnico'].' " ]}
</ td >
< td >
{[ " type " : " number " , " name " : " costo_dirittochiamata_tecnico['. $rs[$i] ['idtipointervento'].'] " , " value " : " '. $rs[$i] ['costo_diritto_chiamata_tecnico'].' " ]}
</ TD >
</ tr > ' ;
}
echo '
</ table > ' ;
}
?>
</ div >
</ div >
</ div >
</ div >
</ div >
</ form >
<!-- RIGHE -->
< div class = " panel panel-primary " >
< div class = " panel-heading " >
2017-09-04 12:02:29 +02:00
< h3 class = " panel-title " >< ? php echo tr ( 'Righe' ); ?> </h3>
2017-08-04 16:28:16 +02:00
</ div >
< div class = " panel-body " >
< ? php
if ( $records [ 0 ][ 'stato' ] != 'Pagato' ) {
?>
2017-09-18 09:57:27 +02:00
< a class = " btn btn-primary " data - href = " <?php echo $rootdir ?>/modules/contratti/add_riga.php?id_module=<?php echo $id_module ?>&id_record=<?php echo $id_record ?> " data - toggle = " modal " data - title = " Aggiungi riga " data - target = " #bs-popup " >< i class = " fa fa-plus " ></ i > < ? php echo tr ( 'Riga' ); ?> </a><br>
2017-08-04 16:28:16 +02:00
< ? php
2017-09-14 10:27:49 +02:00
2017-08-04 16:28:16 +02:00
}
?>
< div class = " clearfix " ></ div >
< br >
< div class = " row " >
< div class = " col-md-12 " >
< ? php
include $docroot . '/modules/contratti/row-list.php' ;
?>
</ div >
</ div >
</ div >
</ div >
< ? php
if ( ! empty ( $records [ 0 ][ 'idcontratto_prev' ])) {
echo '
<!-- RIGHE -->
< div class = " panel panel-primary " >
< div class = " panel-heading " >
2017-09-04 12:02:29 +02:00
< h3 class = " panel-title " > '.tr(' Rinnovi precedenti ').' </ h3 >
2017-08-04 16:28:16 +02:00
</ div >
< div class = " panel-body " >
< div class = " row " >
< div class = " col-md-12 " > ' ;
$idcontratto_prev = $records [ 0 ][ 'idcontratto_prev' ];
echo '
< table class = " table table-hover table-condensed table-bordered table-striped " >
< tr >
2017-09-04 12:02:29 +02:00
< th > '.tr(' Descrizione ').' </ th >
< th width = " 100 " > '.tr(' Totale ').' </ th >
< th width = " 150 " > '.tr(' Data inizio ').' </ th >
< th width = " 150 " > '.tr(' Data conclusione ').' </ th >
2017-08-04 16:28:16 +02:00
</ tr > ' ;
while ( ! empty ( $idcontratto_prev )) {
$rs = $dbo -> fetchArray ( 'SELECT nome, numero, data_accettazione, data_conclusione, budget, idcontratto_prev FROM co_contratti WHERE id=' . prepare ( $idcontratto_prev ));
echo '
< tr >
< td >
2017-09-14 10:27:49 +02:00
'.Modules::link($id_module, $idcontratto_prev, tr(' Contratto num . _NUM_ ' , [
2017-09-10 14:35:41 +02:00
'_NUM_' => $rs [ 0 ][ 'numero' ],
]) . '<br><small class="text-muted">' . $rs [ 0 ][ 'nome' ] . '</small>' ) . '
2017-08-04 16:28:16 +02:00
</ td >
< td align = " right " > '.Translator::numberToLocale($rs[0][' budget ']).' & euro ; </ td >
< td align = " center " > '.Translator::dateToLocale($rs[0][' data_accettazione ']).' </ td >
< td align = " center " > '.Translator::dateToLocale($rs[0][' data_conclusione ']).' </ td >
</ tr > ' ;
$idcontratto_prev = $rs [ 0 ][ 'idcontratto_prev' ];
}
echo '
</ table >
</ div >
</ div >
</ div >
</ div > ' ;
}
?>
2017-09-04 11:53:30 +02:00
< script type = " text/javascript " >
$ ( document ) . ready ( function (){
$ ( '#data_accettazione' ) . on ( " dp.change " , function (){
if ( $ ( this ) . val ()){
$ ( '#data_rifiuto' ) . attr ( 'disabled' , true );
} else {
$ ( '#data_rifiuto' ) . attr ( 'disabled' , false );
}
});
$ ( '#data_rifiuto' ) . on ( " dp.change " , function (){
console . log ( $ ( this ) . val ());
if ( $ ( this ) . val ()){
$ ( '#data_accettazione' ) . attr ( 'disabled' , true );
} else {
$ ( '#data_accettazione' ) . attr ( 'disabled' , false );
}
});
$ ( " #data_accettazione " ) . trigger ( " dp.change " );
$ ( " #data_rifiuto " ) . trigger ( " dp.change " );
});
</ script >
2017-09-14 10:27:49 +02:00
2017-11-16 14:27:43 +01:00
< ? php
//fatture collegate a questo contratto
2017-09-15 09:48:56 +02:00
$fatture = $dbo -> fetchArray ( 'SELECT `co_documenti`.*, `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 `idcontratto` = ' . prepare ( $id_record ) . ') ORDER BY `data`' );
2017-09-14 10:27:49 +02:00
if ( ! empty ( $fatture )) {
echo '
2017-11-16 18:55:03 +01:00
< div class = " alert alert-warning " >
2017-11-16 14:27:43 +01:00
< p > '.tr(' _NUM_ altr_I_ document_I_ collegat_I_ ' , [
2017-09-14 10:27:49 +02:00
'_NUM_' => count ( $fatture ),
2017-11-16 14:27:43 +01:00
'_I_' => ( count ( $fatture ) > 1 ) ? tr ( 'i' ) : tr ( 'o' )
]) . ' :</ p >
2017-09-14 10:27:49 +02:00
< ul > ' ;
foreach ( $fatture as $fattura ) {
$descrizione = tr ( '_DOC_ num. _NUM_ del _DATE_' , [
'_DOC_' => $fattura [ 'tipo_documento' ],
'_NUM_' => ! empty ( $fattura [ 'numero_esterno' ]) ? $fattura [ 'numero_esterno' ] : $fattura [ 'numero' ],
'_DATE_' => Translator :: dateToLocale ( $fattura [ 'data' ]),
]);
$modulo = ( $fattura [ 'dir' ] == 'entrata' ) ? 'Fatture di vendita' : 'Fatture di acquisto' ;
$id = $fattura [ 'id' ];
echo '
< li > '.Modules::link($modulo, $id, $descrizione).' </ li > ' ;
}
echo '
</ ul >
2017-11-16 14:27:43 +01:00
< p > '.tr(' Eliminando questo documento si potrebbero verificare problemi nelle altre sezioni del gestionale . ').' </ p >
2017-09-14 10:27:49 +02:00
</ div > ' ;
}
2017-11-16 14:27:43 +01:00
?>
< a class = " btn btn-danger ask " data - backto = " record-list " >
< i class = " fa fa-trash " ></ i > < ? php echo tr ( 'Elimina' ); ?>
</ a >