2018-07-31 14:50:28 +02:00
< ? php
include_once Modules :: filepath ( 'Articoli' , 'modutil.php' );
2018-09-03 10:03:27 +02:00
use Modules\Interventi\Articolo ;
2018-09-25 16:47:44 +02:00
use Modules\Interventi\Intervento ;
use Modules\Articoli\Articolo as ArticoloOriginale ;
2018-09-03 10:03:27 +02:00
2018-07-31 14:50:28 +02:00
switch ( $resource ) {
case 'intervento' :
$data = $request [ 'data' ];
// Se l'idintervento non esiste, creo un nuovo intervento
2018-08-01 15:32:23 +02:00
$formato = setting ( 'Formato codice intervento' );
2018-07-31 14:50:28 +02:00
$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' );
$codice = Util\Generator :: generate ( $formato , $rs [ 0 ][ 'codice' ]);
if ( empty ( $codice )) {
$rs = $dbo -> fetchArray ( 'SELECT codice FROM in_interventi WHERE codice LIKE ' . prepare ( $template ) . ' ORDER BY codice DESC LIMIT 0,1' );
$codice = Util\Generator :: generate ( $formato , $rs [ 0 ][ 'codice' ]);
}
if ( ! empty ( $codice ) && ! empty ( $data [ 'id_anagrafica' ]) && ! empty ( $data [ 'id_tipo_intervento' ])) {
// Salvataggio modifiche intervento
$dbo -> insert ( 'in_interventi' , [
'idanagrafica' => $data [ 'id_anagrafica' ],
'idclientefinale' => 0 ,
'idstatointervento' => $data [ 'id_stato_intervento' ],
'idtipointervento' => $data [ 'id_tipo_intervento' ],
'idsede' => 0 ,
'idautomezzo' => 0 ,
'codice' => $codice ,
'data_richiesta' => $data [ 'data_richiesta' ],
'richiesta' => $data [ 'richiesta' ],
'descrizione' => $data [ 'descrizione' ],
'informazioniaggiuntive' => $data [ 'informazioni_aggiuntive' ],
]);
2018-08-09 15:33:01 +02:00
$response [ 'id' ] = $dbo -> lastInsertedID ();
$response [ 'codice' ] = $codice ;
2018-08-31 14:43:14 +02:00
$start = date ( 'Y-m-d H:i:s' );
$end = date ( 'Y-m-d H:i:s' , strtotime ( '+1 hour' , strtotime ( $start )));
add_tecnico ( $response [ 'id' ], $user [ 'idanagrafica' ], $start , $end );
2018-07-31 14:50:28 +02:00
}
break ;
2018-08-28 15:39:51 +02:00
case 'sessione' :
2018-07-31 14:50:28 +02:00
$data = $request [ 'data' ];
2018-08-28 15:39:51 +02:00
add_tecnico ( $data [ 'id_intervento' ], $user [ 'idanagrafica' ], $data [ 'orario_inizio' ], $data [ 'orario_fine' ]);
2018-07-31 14:50:28 +02:00
break ;
case 'articolo_intervento' :
$data = $request [ 'data' ];
2018-09-25 16:47:44 +02:00
$originale = ArticoloOriginale :: find ( $data [ 'id_articolo' ]);
$intervento = Intervento :: find ( $data [ 'id_intervento' ]);
$articolo = Articolo :: new ( $intervento , $originale , $data [ 'id_automezzo' ]);
$articolo -> qta = $data [ 'qta' ];
$articolo -> um = $data [ 'um' ];
$articolo -> save ();
2018-07-31 14:50:28 +02:00
break ;
}
return [
'intervento' ,
'sessione' ,
'articolo_intervento' ,
];