2017-08-04 16:28:16 +02:00
< ? php
include_once __DIR__ . '/../../../core.php' ;
2018-06-26 09:41:43 +02:00
include_once Modules :: filepath ( 'Articoli' , 'modutil.php' );
2017-08-04 16:28:16 +02:00
// Pianificazione intervento
switch ( filter ( 'op' )) {
2018-06-23 18:35:08 +02:00
case 'add-pianifica' :
$data_richiesta = filter ( 'data_richiesta' );
2018-06-29 17:30:41 +02:00
$query = 'INSERT INTO `co_contratti_promemoria` ( `idcontratto`, `data_richiesta` ) VALUES (' . prepare ( $id_record ) . ', ' . prepare ( $data_richiesta ) . ')' ;
2018-06-23 18:35:08 +02:00
if ( $dbo -> query ( $query )) {
} else {
2018-07-07 13:56:22 +02:00
App :: flash () -> error ( tr ( " Errore durante l'aggiunta del promemoria! " ));
2018-06-23 18:35:08 +02:00
}
break ;
2018-05-11 17:53:25 +02:00
case 'edit-pianifica' :
2018-06-23 18:35:08 +02:00
$idcontratto_riga = filter ( 'idcontratto_riga' );
$data_richiesta = filter ( 'data_richiesta' );
2017-08-04 16:28:16 +02:00
$idtipointervento = filter ( 'idtipointervento' );
$richiesta = filter ( 'richiesta' );
$idsede = filter ( 'idsede_c' );
2018-06-23 18:35:08 +02:00
$idimpianti = implode ( ',' , $post [ 'idimpianti' ]);
2018-06-29 17:30:41 +02:00
$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 );
2017-08-04 16:28:16 +02:00
if ( isset ( $id_record )) {
if ( $dbo -> query ( $query )) {
2018-07-07 13:56:22 +02:00
App :: flash () -> info ( tr ( 'Promemoria inserito!' ));
2017-08-04 16:28:16 +02:00
} else {
2018-07-07 13:56:22 +02:00
App :: flash () -> error ( tr ( 'Errore durante la modifica del promemoria!' ));
2017-08-04 16:28:16 +02:00
}
}
2018-07-02 15:41:38 +02:00
redirect ( $rootdir . '/editor.php?id_module=' . $id_module . '&id_record=' . $id_record . '#tab_' . $id_plugin );
2017-08-04 16:28:16 +02:00
break ;
2018-02-15 11:02:43 +01:00
// Eliminazione pianificazione
2017-08-04 16:28:16 +02:00
case 'depianifica' :
2018-06-23 18:35:08 +02:00
2017-08-04 16:28:16 +02:00
$id = filter ( 'id' );
2018-06-29 17:30:41 +02:00
$dbo -> query ( 'DELETE FROM `co_contratti_promemoria` WHERE id=' . prepare ( $id ));
2018-07-02 15:41:38 +02:00
$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 ));
2018-06-23 18:35:08 +02:00
2018-07-07 13:56:22 +02:00
App :: flash () -> info ( tr ( 'Pianificazione eliminata!' ));
2017-08-04 16:28:16 +02:00
2017-08-28 10:07:38 +02:00
redirect ( $rootdir . '/editor.php?id_module=' . $id_module . '&id_record=' . $id_record . '#tab_' . $id_plugin );
2017-08-04 16:28:16 +02:00
break ;
2018-02-15 17:41:09 +01:00
//Eliminazione tutti i promemoria di questo contratto con non hanno l'intervento associato
case 'delete-promemoria' :
2018-06-29 17:30:41 +02:00
$dbo -> query ( 'DELETE FROM `co_contratti_promemoria` WHERE idcontratto = ' . $id_record . ' AND idintervento IS NULL' );
2018-07-02 15:41:38 +02:00
$dbo -> query ( 'DELETE FROM `co_righe_contratti_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_righe_contratti_articoli` WHERE id_riga_contratto IN (SELECT id FROM `co_contratti_promemoria` WHERE idcontratto = ' . $id_record . ' AND idintervento IS NULL ) ' );
2018-06-23 18:35:08 +02:00
2018-07-07 13:56:22 +02:00
App :: flash () -> error ( tr ( 'Tutti i promemoria non associati sono stati eliminati!' ));
2018-02-15 11:02:43 +01:00
redirect ( $rootdir . '/editor.php?id_module=' . $id_module . '&id_record=' . $id_record . '#tab_' . $id_plugin );
2017-08-04 16:28:16 +02:00
break ;
2018-02-15 16:44:16 +01:00
2018-05-11 17:53:25 +02:00
//pianificazione ciclica
2018-02-15 16:44:16 +01:00
case 'pianificazione' :
$idcontratto_riga = filter ( 'idcontratto_riga' );
$intervallo = filter ( 'intervallo' );
$parti_da_oggi = post ( 'parti_da_oggi' );
2018-03-02 19:01:30 +01:00
if ( ! empty ( $idcontratto_riga ) && ! empty ( $intervallo )) {
2018-06-23 18:35:08 +02:00
$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, ' .
2018-06-29 17:30:41 +02:00
'(SELECT descrizione FROM in_tipiintervento WHERE idtipointervento=co_contratti_promemoria.idtipointervento) AS tipointervento FROM co_contratti_promemoria ' .
'WHERE co_contratti_promemoria.id = ' . $idcontratto_riga ;
2018-02-15 16:44:16 +01:00
$rsp = $dbo -> fetchArray ( $qp );
$idtipointervento = $rsp [ 0 ][ 'idtipointervento' ];
$idsede = $rsp [ 0 ][ 'idsede' ];
$richiesta = $rsp [ 0 ][ 'richiesta' ];
2018-06-23 18:35:08 +02:00
$data_richiesta = $rsp [ 0 ][ 'data_richiesta' ];
$idimpianti = $rsp [ 0 ][ 'idimpianti' ];
//mi serve per la pianificazione dei promemoria
$data_conclusione = $rsp [ 0 ][ 'data_conclusione' ];
2018-02-15 16:44:16 +01:00
//mi serve per la pianificazione interventi
$idanagrafica = $rsp [ 0 ][ 'idanagrafica' ];
2018-06-23 18:35:08 +02:00
2018-02-15 16:44:16 +01:00
//se voglio pianificare anche le date precedenti ad oggi (parto da questo promemoria)
if ( $parti_da_oggi ) {
//oggi
$min_date = date ( 'Y-m-d' );
} else {
$min_date = date ( 'Y-m-d' , strtotime ( $data_richiesta ));
}
//inizio controllo data_conclusione, data valida e maggiore della $min_date
2018-03-02 19:01:30 +01:00
if (( date ( 'Y' , strtotime ( $data_conclusione )) > 1970 ) && ( date ( 'Y-m-d' , strtotime ( $min_date )) < date ( 'Y-m-d' , strtotime ( $data_conclusione )))) {
2018-02-15 16:44:16 +01:00
//Ciclo partendo dalla data_richiesta fino all data conclusione del contratto
while ( date ( 'Y-m-d' , strtotime ( $data_richiesta )) < date ( 'Y-m-d' , strtotime ( $data_conclusione ))) {
//calcolo nuova data richiesta
$data_richiesta = date ( 'Y-m-d' , strtotime ( $data_richiesta . ' + ' . intval ( $intervallo ) . ' days' ));
//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
2018-03-02 19:01:30 +01:00
if (( date ( 'Y-m-d' , strtotime ( $data_richiesta )) >= $min_date ) && ( date ( 'Y-m-d' , strtotime ( $data_richiesta )) <= date ( 'Y-m-d' , strtotime ( $data_conclusione )))) {
2018-02-15 16:44:16 +01:00
//Controllo che non esista già un promemoria idcontratto, idtipointervento e data_richiesta.
2018-06-29 17:30:41 +02:00
if ( count ( $dbo -> fetchArray ( " SELECT id FROM co_contratti_promemoria WHERE data_richiesta = ' " . $data_richiesta . " ' AND idtipointervento = ' " . $idtipointervento . " ' AND idcontratto = ' " . $id_record . " ' " )) == 0 ) {
2018-06-23 18:35:08 +02:00
//inserisco il nuovo promemoria
2018-06-29 17:30:41 +02:00
$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 ) . ')' ;
2018-06-23 18:35:08 +02:00
2018-02-15 16:44:16 +01:00
if ( $dbo -> query ( $query )) {
$idriga = $dbo -> lastInsertedID ();
2018-06-23 18:35:08 +02:00
//copio anche righe materiali nel nuovo promemoria
2018-07-02 15:41:38 +02:00
$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 . ' ' );
2018-06-23 18:35:08 +02:00
//copio righe articoli nel nuovo promemoria
2018-07-02 15:41:38 +02:00
$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 . ' ' );
2018-06-23 18:35:08 +02:00
2018-07-07 13:56:22 +02:00
App :: flash () -> info ( tr ( 'Promemoria intervento pianificato!' ));
2018-02-15 16:44:16 +01:00
//pianificare anche l' intervento?
if ( $post [ 'pianifica_intervento' ]) {
/* $orario_inizio = post ( 'orario_inizio' );
$orario_fine = post ( 'orario_fine' ); */
//$idanagrafica = 2;
//intervento sempre nello stato "In programmazione"
$idstatointervento = 'WIP' ;
//calcolo codice intervento
$formato = get_var ( 'Formato codice intervento' );
$template = str_replace ( '#' , '%' , $formato );
$rs = $dbo -> fetchArray ( 'SELECT codice FROM in_interventi WHERE codice=(SELECT MAX(CAST(codice AS SIGNED)) FROM in_interventi) AND codice LIKE ' . prepare ( $template ) . ' ORDER BY codice DESC LIMIT 0,1' );
2018-03-25 19:10:49 +02:00
$codice = Util\Generator :: generate ( $formato , $rs [ 0 ][ 'codice' ]);
2018-02-15 16:44:16 +01:00
if ( empty ( $codice )) {
$rs = $dbo -> fetchArray ( 'SELECT codice FROM in_interventi WHERE codice LIKE ' . prepare ( $template ) . ' ORDER BY codice DESC LIMIT 0,1' );
2018-03-25 19:10:49 +02:00
$codice = Util\Generator :: generate ( $formato , $rs [ 0 ][ 'codice' ]);
2018-02-15 16:44:16 +01:00
}
// Creo intervento
$dbo -> insert ( 'in_interventi' , [
'idanagrafica' => $idanagrafica ,
'idclientefinale' => post ( 'idclientefinale' ) ? : 0 ,
'idstatointervento' => $idstatointervento ,
'idtipointervento' => $idtipointervento ,
'idsede' => $idsede ? : 0 ,
'idautomezzo' => $idautomezzo ? : 0 ,
'codice' => $codice ,
'data_richiesta' => $data_richiesta ,
'richiesta' => $richiesta ,
]);
$idintervento = $dbo -> lastInsertedID ();
$idtecnici = post ( 'idtecnico' );
//aggiungo i tecnici
foreach ( $idtecnici as $idtecnico ) {
add_tecnico ( $idintervento , $idtecnico , $data_richiesta . ' ' . post ( 'orario_inizio' ), $data_richiesta . ' ' . post ( 'orario_fine' ), $id_record );
}
//collego l'intervento ai promemoria
2018-06-29 17:30:41 +02:00
$dbo -> query ( 'UPDATE co_contratti_promemoria SET idintervento=' . prepare ( $idintervento ) . ' WHERE id=' . prepare ( $idriga ));
2018-06-23 18:35:08 +02:00
//copio le righe dal promemoria all'intervento
2018-07-02 15:41:38 +02:00
$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 . ' ' );
2018-06-23 18:35:08 +02:00
//copio gli articoli dal promemoria all'intervento
2018-07-02 15:41:38 +02:00
$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 . ' ' );
2018-06-23 18:35:08 +02:00
// Decremento la quantità per ogni articolo copiato
$rs_articoli = $dbo -> fetchArray ( 'SELECT * FROM mg_articoli_interventi WHERE idintervento = ' . $idintervento . ' ' );
foreach ( $rs_articoli as $rs_articolo ) {
add_movimento_magazzino ( $rs_articolo [ 'idarticolo' ], - force_decimal ( $rs_articolo [ 'qta' ]), [ 'idautomezzo' => $rs_articolo [ 'idautomezzo' ], 'idintervento' => $idintervento ]);
}
// Collego gli impianti del promemoria all' intervento appena inserito
$rs_idimpianti = explode ( ',' , $idimpianti );
foreach ( $rs_idimpianti as $idimpianto ) {
$dbo -> query ( 'INSERT INTO my_impianti_interventi (idintervento, idimpianto) VALUES (' . $idintervento . ', ' . $idimpianto . ' )' );
}
2018-02-15 16:44:16 +01:00
2018-07-07 13:56:22 +02:00
// App::flash()->info(tr('Intervento '.$codice.' pianificato correttamente.'));
2018-02-15 16:44:16 +01:00
2018-07-07 13:56:22 +02:00
App :: flash () -> info ( tr ( 'Interventi pianificati correttamente.' ));
2018-02-15 16:44:16 +01:00
}
//fine if pianificazione intervento
} else {
2018-07-07 13:56:22 +02:00
App :: flash () -> error ( tr ( 'Errore durante esecuzione query di pianificazione. #' . $idcontratto_riga ));
2018-02-15 16:44:16 +01:00
}
} else {
2018-07-07 13:56:22 +02:00
App :: flash () -> warning ( tr ( 'Esiste già un promemoria pianificato per il ' . readDate ( $data_richiesta ) . '.' ));
2018-02-15 16:44:16 +01:00
}
}
//fine controllo nuova data richiesta
}
//fine ciclo while
} else {
2018-07-07 13:56:22 +02:00
App :: flash () -> error ( tr ( 'Nessuna data di conclusione del contratto oppure quest\'ultima è già trascorsa, impossibile pianificare nuovi promemoria.' . $qp ));
2018-02-15 16:44:16 +01:00
}
//fine controllo data_conclusione
} else {
2018-07-07 13:56:22 +02:00
App :: flash () -> error ( tr ( 'Errore durante la pianificazione. #' . $idcontratto_riga ));
2018-02-15 16:44:16 +01:00
}
redirect ( $rootdir . '/editor.php?id_module=' . $id_module . '&id_record=' . $id_record . '#tab_' . $id_plugin );
break ;
2017-08-04 16:28:16 +02:00
}
// Righe già inserite
2018-06-29 17:30:41 +02:00
$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' ;
2017-08-04 16:28:16 +02:00
$rsp = $dbo -> fetchArray ( $qp );
2017-09-18 18:50:37 +02:00
$pianificabile = $dbo -> fetchNum ( 'SELECT id FROM co_staticontratti WHERE pianificabile = 1 AND descrizione = ' . prepare ( $records [ 0 ][ 'stato' ]));
2017-08-04 16:28:16 +02:00
echo '
< div class = " box " >
< div class = " box-header with-border " >
2018-02-15 11:02:43 +01:00
< h3 class = " box-title " >< span class = " tip " title = " '.tr('I promemoria verranno visualizzati sulla \ 'Dashboard \ ' e serviranno per semplificare la pianificazione del giorno dell \ 'intervento, ad esempio nel caso di interventi con cadenza mensile.').' " " >'.tr('Pianificazione interventi').' <i class= " fa fa - question - circle - o " ></i></span> </h3>
2017-08-04 16:28:16 +02:00
</ div >
< div class = " box-body " >
2018-03-22 00:22:30 +01:00
< p > '.tr(' Puoi < b > pianificare dei " promemoria " o direttamente gli interventi </ b > da effettuare entro determinate scadenze . Per poter pianificare i promemoria il contratto deve essere < b > attivo </ b > e la < b > data di conclusione </ b > definita ').' .</ p > ' ;
2018-02-15 11:02:43 +01:00
2017-08-04 16:28:16 +02:00
// Nessun intervento pianificato
if ( count ( $rsp ) != 0 ) {
2018-02-15 17:41:09 +01:00
echo '<br><h5>' . tr ( 'Lista promemoria ed eventuali interventi associati' ) . ':</h5>' ;
2017-08-04 16:28:16 +02:00
echo '
< table class = " table table-condensed table-striped table-hover " >
< thead >
< tr >
2018-05-11 15:53:24 +02:00
< th > '.tr(' Data ').' </ th >
2017-09-04 12:02:29 +02:00
< th > '.tr(' Tipo intervento ').' </ th >
< th > '.tr(' Descrizione ').' </ th >
2018-05-11 15:53:24 +02:00
< th > '.tr(' Intervento ').' </ th >
2017-09-04 12:02:29 +02:00
< th > '.tr(' Sede ').' </ th >
2018-05-11 15:53:24 +02:00
< th > '.tr(' Impianti ').' </ th >
< th > '.tr(' Materiali ').' </ th >
2018-05-17 19:30:44 +02:00
< th > '.tr(' Allegati ').' </ th >
2018-05-11 15:53:24 +02:00
< th class = " text-right " > '.tr(' Opzioni ').' </ th >
2017-08-04 16:28:16 +02:00
</ tr >
</ thead >
< tbody > ' ;
2018-02-15 11:02:43 +01:00
// Elenco promemoria
2017-08-04 16:28:16 +02:00
for ( $i = 0 ; $i < sizeof ( $rsp ); ++ $i ) {
// Sede
if ( $rsp [ $i ][ 'idsede' ] == '-1' ) {
echo '- ' . ( 'Nessuna' ) . ' -' ;
} elseif ( empty ( $rsp [ $i ][ 'idsede' ])) {
2017-09-04 12:02:29 +02:00
$info_sede = tr ( 'Sede legale' );
2017-08-04 16:28:16 +02:00
} else {
$rsp2 = $dbo -> fetchArray ( " SELECT id, CONCAT( CONCAT_WS( ' (', CONCAT_WS(', ', nomesede, citta), indirizzo ), ')') AS descrizione FROM an_sedi WHERE id= " . prepare ( $rsp [ $i ][ 'idsede' ]));
$info_sede = $rsp2 [ 0 ][ 'descrizione' ];
}
// Intervento svolto
if ( ! empty ( $rsp [ $i ][ 'idintervento' ])) {
$rsp2 = $dbo -> fetchArray ( 'SELECT id, codice, (SELECT MIN(orario_inizio) FROM in_interventi_tecnici WHERE idintervento=in_interventi.id) AS data FROM in_interventi WHERE id=' . prepare ( $rsp [ $i ][ 'idintervento' ]));
2017-09-21 10:01:07 +02:00
$info_intervento = Modules :: link ( 'Interventi' , $rsp2 [ 0 ][ 'id' ], tr ( 'Intervento num. _NUM_ del _DATE_' , [
2017-09-10 14:35:41 +02:00
'_NUM_' => $rsp2 [ 0 ][ 'codice' ],
'_DATE_' => Translator :: dateToLocale ( $rsp2 [ 0 ][ 'data' ]),
]));
2018-02-15 16:44:16 +01:00
$disabled = 'disabled' ;
2017-08-04 16:28:16 +02:00
} else {
$info_intervento = '- ' . ( 'Nessuno' ) . ' -' ;
2018-02-15 16:44:16 +01:00
$disabled = '' ;
}
2018-06-23 18:35:08 +02:00
//data_conclusione contratto
2018-02-15 16:44:16 +01:00
if ( date ( 'Y' , strtotime ( $records [ 0 ][ 'data_conclusione' ])) < 1971 ) {
$records [ 0 ][ 'data_conclusione' ] = '' ;
2017-08-04 16:28:16 +02:00
}
2018-06-23 18:35:08 +02:00
//info impianti
$info_impianti = '' ;
if ( ! empty ( $rsp [ $i ][ 'idimpianti' ])) {
$rsp3 = $dbo -> fetchArray ( 'SELECT id, matricola, nome FROM my_impianti WHERE id IN (' . ( $rsp [ $i ][ 'idimpianti' ]) . ')' );
if ( ! empty ( $rsp3 )) {
for ( $a = 0 ; $a < count ( $rsp3 ); ++ $a ) {
$info_impianti .= Modules :: link ( 'MyImpianti' , $rsp3 [ $a ][ 'id' ], tr ( '_NOME_ (_MATRICOLA_)' , [
'_NOME_' => $rsp3 [ $a ][ 'nome' ],
'_MATRICOLA_' => $rsp3 [ $a ][ 'matricola' ],
])) . '<br>' ;
}
}
}
2018-07-07 13:56:22 +02:00
//info materiali/articoli
2018-07-02 15:41:38 +02:00
$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 ' ]));
2018-06-23 18:35:08 +02:00
$info_materiali = '' ;
if ( ! empty ( $rsp4 )) {
for ( $b = 0 ; $b < count ( $rsp4 ); ++ $b ) {
$info_materiali .= tr ( ' _QTA_ _UM_ x _DESC_' , [
'_DESC_' => (( ! empty ( $rsp4 [ $b ][ 'idarticolo' ])) ? Modules :: link ( 'Articoli' , $rsp4 [ $b ][ 'idarticolo' ], $rsp4 [ $b ][ 'descrizione' ]) : $rsp4 [ $b ][ 'descrizione' ]),
'_QTA_' => Translator :: numberToLocale ( $rsp4 [ $b ][ 'qta' ]),
'_UM_' => $rsp4 [ $b ][ 'um' ],
'_PREZZO_' => $rsp4 [ $b ][ 'prezzo_vendita' ],
]) . '<br>' ;
}
}
2018-07-07 13:56:22 +02:00
//info allegati
$rsp5 = $dbo -> fetchArray ( 'SELECT nome, original FROM zz_files WHERE id_record = ' . prepare ( $rsp [ $i ][ 'id' ]) . ' AND id_plugin = ' . $id_plugin );
2018-07-03 19:11:42 +02:00
$info_allegati = '' ;
if ( ! empty ( $rsp5 )) {
for ( $b = 0 ; $b < count ( $rsp5 ); ++ $b ) {
$info_allegati .= tr ( ' _NOME_ (_ORIGINAL_)' , [
2018-07-07 13:56:22 +02:00
'_ORIGINAL_' => $rsp5 [ $b ][ 'original' ],
'_NOME_' => $rsp5 [ $b ][ 'nome' ],
2018-07-03 19:11:42 +02:00
]) . '<br>' ;
}
}
2018-07-07 13:56:22 +02:00
2017-08-04 16:28:16 +02:00
echo '
< tr >
2018-02-09 10:46:13 +01:00
< td > '.Translator::dateToLocale($rsp[$i][' data_richiesta ']).' <!-- br >< small > '.Translator::dateToLocale($records[0][' data_conclusione ']).' </ small --></ td >
2017-08-04 16:28:16 +02:00
< td > '.$rsp[$i][' tipointervento '].' </ td >
< td > '.nl2br($rsp[$i][' richiesta ']).' </ td >
< td > '.$info_intervento.' </ td >
< td > '.$info_sede.' </ td >
2018-05-11 15:53:24 +02:00
< td > '.$info_impianti.' </ td >
2018-06-23 18:35:08 +02:00
< td > '.$info_materiali.' </ td >
< td > '.$info_allegati.' </ td >
2017-08-04 16:28:16 +02:00
< td align = " right " > ' ;
2018-02-15 16:44:16 +01:00
echo '
2018-03-02 19:01:30 +01:00
< button type = " button " class = " btn btn-warning btn-sm " title = " Pianifica... " data - toggle = " tooltip " onclick = " launch_modal( \ 'Pianifica \ ', \ ''. $rootdir .'/modules/contratti/plugins/addpianficazione.php?id_module='.Modules::get('Contratti')['id'].'&id_plugin='.Plugins::get('Pianificazione interventi')['id'].'&ref=interventi_contratti&id_record='. $id_record .'&idcontratto_riga='. $rsp[$i] ['id'].' \ '); " '.((!empty($pianificabile) && strtotime($records[0][' data_conclusione '])) ? ' ' : ' disabled ').' >< i class = " fa fa-clock-o " ></ i ></ button > ' ;
2018-02-15 16:44:16 +01:00
echo '
2018-02-09 10:46:13 +01:00
< button type = " button " '.$disabled.' class = " btn btn-primary btn-sm '. $disabled .' " title = " Pianifica intervento ora... " data - toggle = " tooltip " onclick = " launch_modal( \ 'Pianifica intervento \ ', \ ''. $rootdir .'/add.php?id_module='.Modules::get('Interventi')['id'].'&ref=interventi_contratti&idcontratto='. $id_record .'&idcontratto_riga='. $rsp[$i] ['id'].' \ '); " '.(!empty($pianificabile) ? ' ' : ' disabled ').' >< i class = " fa fa-calendar " ></ i ></ button > ' ;
2017-08-04 16:28:16 +02:00
2018-02-15 16:44:16 +01:00
echo '
2018-02-09 10:46:13 +01:00
< button type = " button " '.$disabled.' title = " Elimina promemoria... " class = " btn btn-danger btn-sm ask '. $disabled .' " data - op = " depianifica " data - id = " '. $rsp[$i] ['id'].' " >
< i class = " fa fa-trash " ></ i >
</ button > ' ;
2017-09-18 18:11:19 +02:00
2017-08-04 16:28:16 +02:00
echo '
</ td >
</ tr > ' ;
}
echo '
</ tbody >
</ table > ' ;
2018-02-15 17:41:09 +01:00
2018-06-23 18:35:08 +02:00
echo '<br><div class="pull-right">' ;
2018-02-15 17:41:09 +01:00
if ( count ( $rsp ) > 0 ) {
2018-06-23 18:35:08 +02:00
echo ' < button type = " button " title = " Elimina tutti i promemoria per questo contratto che non sono associati ad intervento. " class = " btn btn-danger ask tip " data - op = " delete-promemoria " >
2018-05-09 18:36:32 +02:00
< i class = " fa fa-trash " ></ i > '.tr(' Elimina promemoria ').'
</ button > ' ;
2018-02-15 17:41:09 +01:00
}
2017-08-04 16:28:16 +02:00
2018-06-23 18:35:08 +02:00
echo '</div>' ;
}
2018-05-11 16:22:21 +02:00
2018-06-23 18:35:08 +02:00
echo ' < button type = " button " title = " Aggiungi un nuovo promemoria da pianificare. " data - toggle = " tooltip " class = " btn btn-primary " id = " add_promemoria " >
2018-05-11 16:22:21 +02:00
< i class = " fa fa-plus " ></ i > '.tr(' Nuovo promemoria ').'
</ button > ' ;
2017-08-04 16:28:16 +02:00
/*
Nuovo intervento
*/
2018-05-09 18:36:32 +02:00
/* echo '
2018-02-15 11:02:43 +01:00
< br >< h5 > '.tr(' Pianifica un nuovo promemoria per un intervento ').' :</ h5 >
2017-08-04 16:28:16 +02:00
< form action = " " method = " post " >
< input type = " hidden " name = " backto " value = " record-edit " >
< input type = " hidden " name = " op " value = " pianifica " >
< table class = " table table-condensed table-striped table-hover " >
< thead >
< tr >
2018-03-22 00:22:30 +01:00
< th > '.tr(' Entro il ').' *</ th >
< th > '.tr(' Tipo intervento ').' *</ th >
2017-09-04 12:02:29 +02:00
< th > '.tr(' Descrizione ').' </ th >
< th > '.tr(' Sede ').' </ th >
2017-08-04 16:28:16 +02:00
</ tr >
</ thead >
< tbody >
< tr >
< td >
2018-07-03 12:28:38 +02:00
{[ " type " : " date " , " placeholder " : " '.tr('Entro il').' " , " name " : " data_richiesta " , " required " : 1 ]}
2017-08-04 16:28:16 +02:00
</ td >
< td >
2018-03-22 00:22:30 +01:00
{[ " type " : " select " , " placeholder " : " '.tr('Tipo intervento').' " , " name " : " idtipointervento " , " required " : 1 , " values " : " query=SELECT idtipointervento AS id, descrizione FROM in_tipiintervento ORDER BY descrizione ASC " , " value " : " '. $rsp[0] ['idtipointervento'].' " ]}
2017-08-04 16:28:16 +02:00
</ td >
< td >
2017-09-04 12:02:29 +02:00
{[ " type " : " textarea " , " placeholder " : " '.tr('Descrizione').' " , " name " : " richiesta " ]}
2017-08-04 16:28:16 +02:00
</ td >
< td >
2017-09-04 12:02:29 +02:00
{[ " type " : " select " , " placeholder " : " '.tr('Sede').' " , " name " : " idsede_c " , " values " : " query=SELECT 0 AS id, \ 'Sede legale \ ' AS descrizione UNION SELECT id, CONCAT( CONCAT_WS( \ ' ( \ ', CONCAT_WS( \ ', \ ', `nomesede`, `citta`), `indirizzo` ), \ ') \ ') AS descrizione FROM an_sedi WHERE idanagrafica='. $records[0] ['idanagrafica'].' " , " value " : " 0 " ]}
2017-08-04 16:28:16 +02:00
</ td >
</ tr >
</ tbody >
</ table >
< div class = " pull-right " >
2017-09-04 12:02:29 +02:00
< button type = " submit " class = " btn btn-primary " >< i class = " fa fa-plus " ></ i > '.tr(' Aggiungi ').' </ button >
2017-08-04 16:28:16 +02:00
</ div >
< div class = " clearfix " ></ div >
2018-05-09 18:36:32 +02:00
</ form > ' ; */
echo '
2017-08-04 16:28:16 +02:00
</ div >
</ div > ' ;
2018-05-11 17:53:25 +02:00
?>
< script type = " text/javascript " >
$ ( " #add_promemoria " ) . click ( function () {
2018-06-23 18:35:08 +02:00
2018-05-16 18:14:07 +02:00
swal ({
2018-06-23 18:35:08 +02:00
title : '<?php echo tr(' Aggiungere un nuovo promemoria ? '); ?>' ,
2018-05-16 18:14:07 +02:00
type : " info " ,
showCancelButton : true ,
2018-06-23 18:35:08 +02:00
confirmButtonText : '<?php echo tr(' Aggiungi '); ?>' ,
2018-05-16 18:14:07 +02:00
confirmButtonClass : 'btn btn-lg btn-success' ,
}) . then (
function ( result ) {
prev_html = $ ( " #add_promemoria " ) . html ();
2018-06-23 18:35:08 +02:00
$ ( " #add_promemoria " ) . html ( " <i class='fa fa-spinner fa-pulse fa-fw'></i> <?php echo tr('Attendere...'); ?> " );
2018-05-16 18:14:07 +02:00
$ ( " #add_promemoria " ) . prop ( 'disabled' , true );
2018-06-23 18:35:08 +02:00
$ . post ( " <?php echo $rootdir ; ?>/editor.php?id_module=<?php echo Modules::get('Contratti')['id']; ?>&id_record=<?php echo $id_record ; ?> " , { backto : " record-edit " , op : " add-pianifica " , data_richiesta : '<?php echo date(' Y - m - d '); ?>' })
2018-05-16 18:14:07 +02:00
. done ( function ( data ) {
2018-06-23 18:35:08 +02:00
launch_modal ( 'Nuovo promemoria' , '<?php echo $rootdir; ?>/modules/contratti/plugins/addpianficazione.php?id_module=<?php echo Modules::get(' Contratti ')[' id ']; ?>&id_plugin=<?php echo Plugins::get(' Pianificazione interventi ')[' id ']; ?>&ref=interventi_contratti&id_record=<?php echo $id_record; ?>' , 1 , '#bs-popup' );
2018-05-16 18:14:07 +02:00
$ ( " #add_promemoria " ) . html ( prev_html );
$ ( " #add_promemoria " ) . prop ( 'disabled' , false );
2018-06-23 18:35:08 +02:00
2018-05-16 18:14:07 +02:00
});
},
function ( dismiss ) {}
);
2018-06-23 18:35:08 +02:00
2018-05-11 17:53:25 +02:00
});
</ script >