mirror of
https://github.com/devcode-it/openstamanager.git
synced 2025-02-22 22:37:37 +01:00
Bugfix plugin Pianificazione interventi
This commit is contained in:
parent
9d50ba0c69
commit
1101c80006
@ -59,14 +59,12 @@ switch (filter('op')) {
|
||||
|
||||
// pianificazione ciclica
|
||||
case 'pianificazione':
|
||||
$intervallo = filter('intervallo');
|
||||
$parti_da_oggi = post('parti_da_oggi');
|
||||
$intervallo = post('intervallo');
|
||||
$parti_da_oggi = post('inizio');
|
||||
|
||||
//if principale
|
||||
// if principale
|
||||
if (!empty($id_record) && !empty($intervallo)) {
|
||||
$qp = 'SELECT *, (SELECT idanagrafica FROM co_contratti WHERE id = '.$id_parent.' ) AS idanagrafica, (SELECT data_conclusione FROM co_contratti WHERE id = '.$id_parent.' ) AS data_conclusione, '.
|
||||
'(SELECT descrizione FROM in_tipiintervento WHERE idtipointervento=co_contratti_promemoria.idtipointervento) AS tipointervento FROM co_contratti_promemoria '.
|
||||
'WHERE co_contratti_promemoria.id = '.$id_record;
|
||||
$qp = 'SELECT *, (SELECT idanagrafica FROM co_contratti WHERE id = '.$id_parent.' ) AS idanagrafica, (SELECT data_conclusione FROM co_contratti WHERE id = '.$id_parent.' ) AS data_conclusione, (SELECT descrizione FROM in_tipiintervento WHERE idtipointervento=co_contratti_promemoria.idtipointervento) AS tipointervento FROM co_contratti_promemoria WHERE co_contratti_promemoria.id = '.$id_record;
|
||||
$rsp = $dbo->fetchArray($qp);
|
||||
|
||||
$idtipointervento = $rsp[0]['idtipointervento'];
|
||||
@ -76,73 +74,66 @@ switch (filter('op')) {
|
||||
$data_richiesta = $rsp[0]['data_richiesta'];
|
||||
$idimpianti = $rsp[0]['idimpianti'];
|
||||
|
||||
//mi serve per la pianificazione dei promemoria
|
||||
// mi serve per la pianificazione dei promemoria
|
||||
$data_conclusione = $rsp[0]['data_conclusione'];
|
||||
|
||||
//mi serve per la pianificazione interventi
|
||||
// mi serve per la pianificazione interventi
|
||||
$idanagrafica = $rsp[0]['idanagrafica'];
|
||||
|
||||
//se voglio pianificare anche le date precedenti ad oggi (parto da questo promemoria)
|
||||
// se voglio pianificare anche le date precedenti ad oggi (parto da questo promemoria)
|
||||
if ($parti_da_oggi) {
|
||||
//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
|
||||
// inizio controllo data_conclusione, data valida e maggiore della $min_date
|
||||
if ((date('Y', strtotime($data_conclusione)) > 1970) && (date('Y-m-d', strtotime($min_date)) <= date('Y-m-d', strtotime($data_conclusione)))) {
|
||||
//$_SESSION['errors'][] = '1';
|
||||
|
||||
$i = 0;
|
||||
//Ciclo partendo dalla data_richiesta fino all data conclusione del contratto
|
||||
// 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))) {
|
||||
//$_SESSION['errors'][] = '2';
|
||||
|
||||
//calcolo nuova data richiesta, non considero l'intervallo al primo ciclo
|
||||
// calcolo nuova data richiesta, non considero l'intervallo al primo ciclo
|
||||
$data_richiesta = date('Y-m-d', strtotime($data_richiesta.' + '.(($i == 0) ? 0 : $intervallo).' days'));
|
||||
++$i;
|
||||
|
||||
//$_SESSION['errors'][] = 'data_richiesta: '.date('Y-m-d', strtotime($data_richiesta));
|
||||
//$_SESSION['errors'][] = 'data_conclusione: '.date('Y-m-d', strtotime($data_conclusione));
|
||||
//$_SESSION['errors'][] = 'min_date: '.$min_date;
|
||||
|
||||
//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
|
||||
// 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)))) {
|
||||
//$_SESSION['errors'][] = '3';
|
||||
//Controllo che non esista già un promemoria idcontratto, idtipointervento e data_richiesta.
|
||||
// Controllo che non esista già un promemoria idcontratto, idtipointervento e data_richiesta.
|
||||
if (count($dbo->fetchArray("SELECT id FROM co_contratti_promemoria WHERE data_richiesta = '".$data_richiesta."' AND idtipointervento = '".$idtipointervento."' AND idcontratto = '".$id_parent."' ")) == 0) {
|
||||
//inserisco il nuovo promemoria
|
||||
// inserisco il nuovo promemoria
|
||||
$query = 'INSERT INTO `co_contratti_promemoria`(`idcontratto`, `idtipointervento`, `data_richiesta`, `richiesta`, `idsede`, `idimpianti` ) VALUES('.prepare($id_parent).', '.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
|
||||
// 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 = '.$id_record.' ');
|
||||
|
||||
//copio righe articoli nel nuovo promemoria
|
||||
// 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 = '.$id_record.' ');
|
||||
|
||||
$_SESSION['infos'][] = tr('Promemoria intervento pianificato!');
|
||||
flash()->info(tr('Promemoria intervento pianificato!'));
|
||||
}
|
||||
} else {
|
||||
$_SESSION['warnings'][] = tr('Esiste già un promemoria pianificato per il '.readDate($data_richiesta).'.');
|
||||
flash()->warning(tr('Esiste già un promemoria pianificato per il _DATE_', [
|
||||
'_DATE_' => Translator::dateToLocale($data_richiesta),
|
||||
]));
|
||||
}
|
||||
|
||||
//Controllo che non esista già un intervento collegato a questo promemoria e, se ho spuntato di creare l'intervento, creo già anche quello
|
||||
// Controllo che non esista già un intervento collegato a questo promemoria e, se ho spuntato di creare l'intervento, creo già anche quello
|
||||
if ((empty($dbo->fetchArray("SELECT idintervento FROM co_contratti_promemoria WHERE id = '".((empty($idriga)) ? $id_record : $idriga)."'")[0]['idintervento'])) and ($post['pianifica_intervento'])) {
|
||||
//pianificare anche l' intervento?
|
||||
//if ($post['pianifica_intervento']) {
|
||||
// pianificare anche l' intervento?
|
||||
// if ($post['pianifica_intervento']) {
|
||||
/*$orario_inizio = post('orario_inizio');
|
||||
$orario_fine = post('orario_fine');*/
|
||||
|
||||
//$idanagrafica = 2;
|
||||
// $idanagrafica = 2;
|
||||
|
||||
//intervento sempre nello stato "In programmazione"
|
||||
// intervento sempre nello stato "In programmazione"
|
||||
$idstatointervento = 'WIP';
|
||||
|
||||
//calcolo codice intervento
|
||||
// calcolo codice intervento
|
||||
$formato = setting('Formato codice intervento');
|
||||
$template = str_replace('#', '%', $formato);
|
||||
|
||||
@ -174,21 +165,21 @@ switch (filter('op')) {
|
||||
|
||||
$idtecnici = post('idtecnico');
|
||||
|
||||
//aggiungo i tecnici
|
||||
// aggiungo i tecnici
|
||||
foreach ($idtecnici as $idtecnico) {
|
||||
add_tecnico($idintervento, $idtecnico, $data_richiesta.' '.post('orario_inizio'), $data_richiesta.' '.post('orario_fine'), $id_parent);
|
||||
}
|
||||
|
||||
//collego l'intervento ai promemoria
|
||||
// collego l'intervento ai promemoria
|
||||
$dbo->query('UPDATE co_contratti_promemoria SET idintervento='.prepare($idintervento).' WHERE id='.prepare(((empty($idriga)) ? $id_record : $idriga)));
|
||||
|
||||
//copio le righe dal promemoria all'intervento
|
||||
// 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 = '.$id_record.' ');
|
||||
|
||||
//copio gli articoli dal promemoria all'intervento
|
||||
// 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 = '.$id_record.' ');
|
||||
|
||||
//copio gli allegati dal promemoria all'intervento
|
||||
// copio gli allegati dal promemoria all'intervento
|
||||
$dbo->query('INSERT INTO zz_files (nome,filename,original,category,id_module,id_record) SELECT t.nome, t.filename, t.original, t.category, '.Modules::get('Interventi')['id'].', '.$idintervento.' FROM zz_files t WHERE t.id_record = '.$id_record.' AND t.id_plugin = '.$id_plugin.'');
|
||||
|
||||
// Decremento la quantità per ogni articolo copiato
|
||||
@ -205,24 +196,21 @@ switch (filter('op')) {
|
||||
}
|
||||
}
|
||||
|
||||
// $_SESSION['infos'][] = tr('Intervento '.$codice.' pianificato correttamente.');
|
||||
|
||||
$_SESSION['infos'][] = tr('Interventi pianificati correttamente.');
|
||||
//fine if pianificazione intervento
|
||||
|
||||
//}
|
||||
flash()->info(tr('Interventi pianificati correttamente'));
|
||||
} elseif ($post['pianifica_intervento']) {
|
||||
$_SESSION['warnings'][] = tr('Esiste già un intervento pianificato per il '.readDate($data_richiesta).'.');
|
||||
flash()->warning(tr('Esiste già un intervento pianificato per il _DATE_', [
|
||||
'_DATE_' => Translator::dateToLocale($data_richiesta),
|
||||
]));
|
||||
}
|
||||
}
|
||||
}
|
||||
//fine ciclo while
|
||||
// fine ciclo while
|
||||
} else {
|
||||
$_SESSION['errors'][] = tr('Nessuna data di conclusione del contratto oppure quest\'ultima è già trascorsa, impossibile pianificare nuovi promemoria.');
|
||||
flash()->error(tr("Nessuna data di conclusione del contratto oppure quest'ultima è già trascorsa, impossibile pianificare nuovi promemoria"));
|
||||
}
|
||||
//fine controllo data_conclusione
|
||||
// fine controllo data_conclusione
|
||||
} else {
|
||||
$_SESSION['errors'][] = tr('Errore durante la pianificazione. #'.$id_record);
|
||||
flash()->error(tr('Errore durante la pianificazione'));
|
||||
}
|
||||
break;
|
||||
|
||||
@ -231,13 +219,9 @@ switch (filter('op')) {
|
||||
*/
|
||||
|
||||
case 'editarticolo':
|
||||
|
||||
$idriga = post('idriga');
|
||||
$idarticolo = post('idarticolo');
|
||||
$idimpianto = post('idimpianto');
|
||||
//$idautomezzo = post('idautomezzo');
|
||||
|
||||
//$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);
|
||||
@ -248,11 +232,11 @@ switch (filter('op')) {
|
||||
// Elimino questo articolo dall'intervento
|
||||
$dbo->query('DELETE FROM co_righe_contratti_articoli WHERE id='.prepare($idriga));
|
||||
|
||||
//no break;
|
||||
// no break;
|
||||
|
||||
case 'addarticolo':
|
||||
$idarticolo = post('idarticolo');
|
||||
//$idautomezzo = post('idautomezzo');
|
||||
// $idautomezzo = post('idautomezzo');
|
||||
$descrizione = post('descrizione');
|
||||
$idimpianto = post('idimpianto');
|
||||
$qta = post('qta');
|
||||
@ -269,7 +253,7 @@ switch (filter('op')) {
|
||||
'qta' => $qta,
|
||||
]);
|
||||
|
||||
//Calcolo iva
|
||||
// Calcolo iva
|
||||
$rs_iva = $dbo->fetchArray('SELECT * FROM co_iva WHERE id='.prepare($idiva));
|
||||
$desc_iva = $rs_iva[0]['descrizione'];
|
||||
|
||||
@ -308,7 +292,7 @@ switch (filter('op')) {
|
||||
'qta' => $qta,
|
||||
]);
|
||||
|
||||
//Calcolo iva
|
||||
// Calcolo iva
|
||||
$rs_iva = $dbo->fetchArray('SELECT * FROM co_iva WHERE id='.prepare($idiva));
|
||||
$desc_iva = $rs_iva[0]['descrizione'];
|
||||
|
||||
@ -336,7 +320,7 @@ switch (filter('op')) {
|
||||
'qta' => $qta,
|
||||
]);
|
||||
|
||||
//Calcolo iva
|
||||
// Calcolo iva
|
||||
$rs_iva = $dbo->fetchArray('SELECT * FROM co_iva WHERE id='.prepare($idiva));
|
||||
$desc_iva = $rs_iva[0]['descrizione'];
|
||||
|
||||
|
@ -117,7 +117,7 @@ echo '
|
||||
// Impianto
|
||||
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.'" ]}
|
||||
{[ "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": "'.$idimpianto.'", "extra":"'.$readonly.'" ]}
|
||||
</div>
|
||||
</div>';
|
||||
|
||||
|
@ -3,7 +3,9 @@
|
||||
include_once __DIR__.'/../../core.php';
|
||||
|
||||
$plugin = Plugins::get($id_plugin);
|
||||
$is_add = filter('add') !== null ? true : false;
|
||||
$is_add = filter('add') ? true : false;
|
||||
|
||||
$pricing = Auth::admin() || Auth::user()['gruppo'] != 'Tecnici';
|
||||
|
||||
$rs = $dbo->fetchArray('SELECT * FROM co_righe_contratti_articoli WHERE id_riga_contratto='.prepare($id_record).' '.Modules::getAdditionalsQuery('Magazzino').' ORDER BY id ASC');
|
||||
|
||||
@ -14,12 +16,12 @@ if (!empty($rs)) {
|
||||
<th>'.tr('Articolo').'</th>
|
||||
<th width="8%">'.tr('Q.tà').'</th>';
|
||||
|
||||
if (Auth::admin() || Auth::user()['gruppo'] != 'Tecnici') {
|
||||
if ($pricing) {
|
||||
echo '
|
||||
<th width="15%">'.tr('Prezzo di acquisto').'</th>';
|
||||
}
|
||||
|
||||
if (Auth::admin() || Auth::user()['gruppo'] != 'Tecnici') {
|
||||
if ($pricing) {
|
||||
echo '
|
||||
<th width="15%">'.tr('Prezzo di vendita').'</th>
|
||||
<th width="10%">'.tr('Iva').'</th>
|
||||
@ -78,14 +80,14 @@ if (!empty($rs)) {
|
||||
'.Translator::numberToLocale($r['qta'], 'qta').' '.$r['um'].'
|
||||
</td>';
|
||||
|
||||
if (Auth::admin() || Auth::user()['gruppo'] != 'Tecnici') {
|
||||
if ($pricing) {
|
||||
echo '
|
||||
<td class="text-right">
|
||||
'.Translator::numberToLocale($r['prezzo_acquisto']).' €
|
||||
</td>';
|
||||
}
|
||||
|
||||
if (Auth::admin() || Auth::user()['gruppo'] != 'Tecnici') {
|
||||
if ($pricing) {
|
||||
// Prezzo unitario
|
||||
echo '
|
||||
<td class="text-right">
|
||||
@ -136,6 +138,9 @@ if (!empty($rs)) {
|
||||
|
||||
echo '
|
||||
</table>';
|
||||
} else {
|
||||
echo '
|
||||
<p>'.tr('Nessun articolo caricato').'.</p>';
|
||||
}
|
||||
|
||||
echo '
|
||||
|
@ -3,7 +3,9 @@
|
||||
include_once __DIR__.'/../../core.php';
|
||||
|
||||
$plugin = Plugins::get($id_plugin);
|
||||
$is_add = filter('add') !== null ? true : false;
|
||||
$is_add = filter('add') ? true : false;
|
||||
|
||||
$pricing = Auth::admin() || Auth::user()['gruppo'] != 'Tecnici';
|
||||
|
||||
$rs2 = $dbo->fetchArray('SELECT * FROM co_righe_contratti_materiali WHERE id_riga_contratto='.prepare($id_record).' '.Modules::getAdditionalsQuery('Magazzino').' ORDER BY id ASC');
|
||||
|
||||
@ -15,7 +17,7 @@ if (!empty($rs2)) {
|
||||
<th width="8%">'.tr('Q.tà').'</th>
|
||||
<th width="15%">'.tr('Prezzo di acquisto').'</th>';
|
||||
|
||||
if (Auth::admin() || Auth::user()['gruppo'] != 'Tecnici') {
|
||||
if ($pricing) {
|
||||
echo '
|
||||
<th width="15%">'.tr('Prezzo di vendita').'</th>
|
||||
<th width="10%">'.tr('Iva').'</th>
|
||||
@ -49,7 +51,7 @@ if (!empty($rs2)) {
|
||||
'.Translator::numberToLocale($r['prezzo_acquisto']).' €
|
||||
</td>';
|
||||
|
||||
if (Auth::admin() || Auth::user()['gruppo'] != 'Tecnici') {
|
||||
if ($pricing) {
|
||||
// Prezzo unitario
|
||||
$netto = $r['prezzo_vendita'] - $r['sconto_unitario'];
|
||||
|
||||
@ -103,6 +105,9 @@ if (!empty($rs2)) {
|
||||
|
||||
echo '
|
||||
</table>';
|
||||
} else {
|
||||
echo '
|
||||
<p>'.tr('Nessuna riga caricata').'.</p>';
|
||||
}
|
||||
|
||||
echo '
|
||||
|
@ -16,42 +16,42 @@ $pianificabile = $dbo->fetchOne('SELECT pianificabile FROM co_staticontratti WHE
|
||||
':id' => $contratto['idstato'],
|
||||
])['pianificabile'];
|
||||
|
||||
$stati_pianificabili = $dbo->fetchOne('SELECT GROUP_CONCAT(`descrizione`) AS stati_pianificabili FROM `co_staticontratti` WHERE `pianificabile` = 1')['stati_pianificabili'];
|
||||
$stati_pianificabili = $dbo->fetchOne('SELECT GROUP_CONCAT(`descrizione` SEPARATOR ", ") AS stati_pianificabili FROM `co_staticontratti` WHERE `pianificabile` = 1')['stati_pianificabili'];
|
||||
|
||||
echo '
|
||||
<div class="box">
|
||||
<div class="box-header with-border">
|
||||
<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>
|
||||
</div>
|
||||
<div class="box-body">
|
||||
<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 in uno dei seguenti stati: <b>'.$stati_pianificabili.'</b> e la <b>data di conclusione</b> definita').'.</p>';
|
||||
<span class="tip pull-right" 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").'">
|
||||
<i class="fa fa-question-circle-o fa-2x"></i>
|
||||
</span>
|
||||
|
||||
<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 in uno dei seguenti stati: <b>'.$stati_pianificabili.'</b> e la <b>data di conclusione</b> definita').'.</p>';
|
||||
|
||||
// Nessun intervento pianificato
|
||||
if (!empty($records)) {
|
||||
echo '
|
||||
<br>
|
||||
<h5>'.tr('Lista promemoria ed eventuali interventi associati').':</h5>
|
||||
<table class="table table-condensed table-striped table-hover">
|
||||
<thead>
|
||||
<tr>
|
||||
<th>'.tr('Data').'</th>
|
||||
<th>'.tr('Tipo intervento').'</th>
|
||||
<th>'.tr('Descrizione').'</th>
|
||||
<th>'.tr('Intervento').'</th>
|
||||
<th>'.tr('Sede').'</th>
|
||||
<th>'.tr('Impianti').'</th>
|
||||
<th>'.tr('Materiali').'</th>
|
||||
<th>'.tr('Allegati').'</th>
|
||||
<th class="text-right" >'.tr('Opzioni').'</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>';
|
||||
<br>
|
||||
<h5>'.tr('Lista promemoria ed eventuali interventi associati').':</h5>
|
||||
|
||||
<table class="table table-condensed table-striped table-hover">
|
||||
<thead>
|
||||
<tr>
|
||||
<th>'.tr('Data').'</th>
|
||||
<th>'.tr('Tipo intervento').'</th>
|
||||
<th>'.tr('Descrizione').'</th>
|
||||
<th>'.tr('Intervento').'</th>
|
||||
<th>'.tr('Sede').'</th>
|
||||
<th>'.tr('Impianti').'</th>
|
||||
<th>'.tr('Materiali').'</th>
|
||||
<th>'.tr('Allegati').'</th>
|
||||
<th class="text-right" >'.tr('Opzioni').'</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>';
|
||||
|
||||
// Elenco promemoria
|
||||
foreach ($records as $record) {
|
||||
// Sede
|
||||
if ($record['idsede'] == '-1') {
|
||||
echo '- '.('Nessuna').' -';
|
||||
echo '- '.tr('Nessuna').' -';
|
||||
} elseif (empty($record['idsede'])) {
|
||||
$info_sede = tr('Sede legale');
|
||||
} else {
|
||||
@ -121,58 +121,50 @@ if (!empty($records)) {
|
||||
}
|
||||
|
||||
echo '
|
||||
<tr>
|
||||
<td>'.Translator::dateToLocale($record['data_richiesta']).'<!--br><small>'.Translator::dateToLocale($contratto['data_conclusione']).'</small--></td>
|
||||
<td>'.$record['tipointervento'].'</td>
|
||||
<td>'.nl2br($record['richiesta']).'</td>
|
||||
<td>'.$info_intervento.'</td>
|
||||
<td>'.$info_sede.'</td>
|
||||
<td>'.$info_impianti.'</td>
|
||||
<td>'.$info_materiali.'</td>
|
||||
<td>'.$info_allegati.'</td>
|
||||
<td align="right">';
|
||||
<tr>
|
||||
<td>'.Translator::dateToLocale($record['data_richiesta']).'<!--br><small>'.Translator::dateToLocale($contratto['data_conclusione']).'</small--></td>
|
||||
<td>'.$record['tipointervento'].'</td>
|
||||
<td>'.nl2br($record['richiesta']).'</td>
|
||||
<td>'.$info_intervento.'</td>
|
||||
<td>'.$info_sede.'</td>
|
||||
<td>'.$info_impianti.'</td>
|
||||
<td>'.$info_materiali.'</td>
|
||||
<td>'.$info_allegati.'</td>
|
||||
<td align="right">
|
||||
|
||||
echo '
|
||||
<button type="button" class="btn btn-warning btn-sm" title="Pianifica..." data-toggle="tooltip" onclick="launch_modal(\'Pianifica\', \''.$plugin->fileurl('pianficazione.php').'?id_module='.$id_module.'&id_plugin='.$plugin['id'].'&id_parent='.$id_record.'&id_record='.$record['id'].'\');"'.((!empty($pianificabile) && !empty($contratto['data_conclusione'])) ? '' : ' disabled').'>
|
||||
<i class="fa fa-clock-o"></i>
|
||||
</button>';
|
||||
<button type="button" class="btn btn-warning btn-sm" title="Pianifica..." data-toggle="tooltip" onclick="launch_modal(\'Pianifica\', \''.$plugin->fileurl('pianficazione.php').'?id_module='.$id_module.'&id_plugin='.$plugin['id'].'&id_parent='.$id_record.'&id_record='.$record['id'].'\');"'.((!empty($pianificabile) && !empty($contratto['data_conclusione'])) ? '' : ' disabled').'>
|
||||
<i class="fa fa-clock-o"></i>
|
||||
</button>
|
||||
|
||||
echo '
|
||||
<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='.$record['id'].'\');"'.(!empty($pianificabile) ? '' : ' disabled').'><i class="fa fa-calendar"></i></button>';
|
||||
<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='.$record['id'].'\');"'.(!empty($pianificabile) ? '' : ' disabled').'>
|
||||
<i class="fa fa-calendar"></i>
|
||||
</button>
|
||||
|
||||
echo '
|
||||
<button type="button" '.$disabled.' title="'.$title.'" class="btn btn-danger btn-sm ask '.$disabled.' " data-op="delete-promemoria" data-id="'.$record['id'].'">
|
||||
<i class="fa fa-trash"></i>
|
||||
</button>';
|
||||
|
||||
echo '
|
||||
</td>
|
||||
</tr>';
|
||||
<button type="button" '.$disabled.' title="'.$title.'" class="btn btn-danger btn-sm ask '.$disabled.' " data-op="delete-promemoria" data-id="'.$record['id'].'">
|
||||
<i class="fa fa-trash"></i>
|
||||
</button>
|
||||
</td>
|
||||
</tr>';
|
||||
}
|
||||
echo '
|
||||
</tbody>
|
||||
</table>';
|
||||
|
||||
echo '<br><div class="pull-right">';
|
||||
</tbody>
|
||||
</table>';
|
||||
|
||||
if (!empty($records)) {
|
||||
echo '
|
||||
<button type="button" title="Elimina tutti i promemoria non associati ad intervento" class="btn btn-danger ask tip" data-op="delete-non-associati" data-id_plugin="'.$id_plugin.'" data-backto="record-edit">
|
||||
<i class="fa fa-trash"></i> '.tr('Elimina promemoria').'
|
||||
</button>';
|
||||
<br>
|
||||
<div class="pull-right">
|
||||
<button type="button" title="Elimina tutti i promemoria non associati ad intervento" class="btn btn-danger ask tip" data-op="delete-non-associati" data-id_plugin="'.$id_plugin.'" data-backto="record-edit">
|
||||
<i class="fa fa-trash"></i> '.tr('Elimina promemoria').'
|
||||
</button>
|
||||
</div>';
|
||||
}
|
||||
|
||||
echo '</div>';
|
||||
}
|
||||
|
||||
echo '
|
||||
<button type="button" title="Aggiungi un nuovo promemoria da pianificare." data-toggle="tooltip" class="btn btn-primary" id="add_promemoria">
|
||||
<i class="fa fa-plus"></i> '.tr('Nuovo promemoria').'
|
||||
</button>';
|
||||
|
||||
echo '
|
||||
</div>
|
||||
</div>';
|
||||
<button type="button" title="Aggiungi un nuovo promemoria da pianificare." data-toggle="tooltip" class="btn btn-primary" id="add_promemoria">
|
||||
<i class="fa fa-plus"></i> '.tr('Nuovo promemoria').'
|
||||
</button>';
|
||||
|
||||
$options = $dbo->fetchArray('SELECT idtipointervento, descrizione FROM `in_tipiintervento`');
|
||||
|
||||
|
@ -5,7 +5,7 @@ include_once __DIR__.'/../../core.php';
|
||||
$plugin = Plugins::get($id_plugin);
|
||||
|
||||
$id_module = Modules::get('Contratti')['id'];
|
||||
$is_add = filter('add') !== null ? true : false;
|
||||
$is_add = filter('add') ? true : false;
|
||||
|
||||
// Informazioni contratto
|
||||
$contratto = $dbo->fetchOne('SELECT * FROM `co_contratti` WHERE `id` = :id', [
|
||||
@ -40,12 +40,18 @@ if (!empty($id_sede)) {
|
||||
}
|
||||
|
||||
$pianificazione = [
|
||||
0 => tr('Pianificare a partire da questo promemoria _DATE_', [
|
||||
'_DATE_' => $data_richiesta,
|
||||
]),
|
||||
1 => tr('Pianificare a partire da oggi _DATE_', [
|
||||
'_DATE_' => date('Y-m-d'),
|
||||
]),
|
||||
[
|
||||
'id' => 0,
|
||||
'text' => tr('Pianificare a partire da questo promemoria _DATE_', [
|
||||
'_DATE_' => $data_richiesta,
|
||||
]),
|
||||
],
|
||||
[
|
||||
'id' => 1,
|
||||
'text' => tr('Pianificare a partire da oggi _DATE_', [
|
||||
'_DATE_' => date('Y-m-d'),
|
||||
]),
|
||||
],
|
||||
];
|
||||
|
||||
// orari inizio fine interventi (8h standard)
|
||||
@ -55,7 +61,7 @@ $orario_fine = !empty($tempo_standard) ? date('H:i', strtotime($orario_inizio) +
|
||||
echo '
|
||||
<form id="add_form" action="'.$rootdir.'/editor.php?id_module='.$id_module.'&id_plugin='.$id_plugin.'&id_parent='.$id_parent.'&id_record='.$id_record.'" method="post">
|
||||
<input type="hidden" name="backto" value="record-edit">
|
||||
<input type="hidden" name="op" value="'.(!empty($is_add) ? 'edit-promemoria' : 'pianifica').'">';
|
||||
<input type="hidden" name="op" value="'.(!empty($is_add) ? 'edit-promemoria' : 'pianificazione').'">';
|
||||
|
||||
echo '
|
||||
<!-- DATI PROMEMORIA -->
|
||||
@ -163,7 +169,7 @@ echo '
|
||||
</div>
|
||||
|
||||
<div class="col-md-7">
|
||||
{[ "type": "select", "label": "'.tr('Inizio pianificazione').'", "name": "parti_da_oggi", "values": '.json_encode($pianificazione).' ]}
|
||||
{[ "type": "select", "label": "'.tr('Inizio pianificazione').'", "name": "inizio", "values": '.json_encode($pianificazione).' ]}
|
||||
</div>
|
||||
|
||||
<div class="col-md-3">
|
||||
|
@ -114,7 +114,7 @@ class FileManager implements ManagerInterface
|
||||
</button>';
|
||||
} else {
|
||||
$result .= '
|
||||
<button class="btn btn-xs btn-default" title="'.tr('Anteprima file non disponibile').'." onclick="alert(\''.tr('Anteprima file di tipo "'.$extension.'" non supportata.').'\');">
|
||||
<button class="btn btn-xs btn-default disabled" title="'.tr('Anteprima file non disponibile').'" disabled>
|
||||
<i class="fa fa-eye"></i>
|
||||
</button>';
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user