fetchOne('SELECT * FROM co_contratti WHERE id = :id', [
':id' => $id_record,
]);
$records = $dbo->fetchArray('SELECT *, (SELECT descrizione FROM in_tipiintervento WHERE idtipointervento=co_promemoria.idtipointervento) AS tipointervento FROM co_promemoria WHERE idcontratto='.prepare($id_record).' ORDER BY data_richiesta ASC');
// Intervento/promemoria pianificabile
$pianificabile = $dbo->fetchOne('SELECT pianificabile FROM co_staticontratti WHERE id = :id', [
':id' => $contratto['idstato'],
])['pianificabile'];
if ($pianificabile) {
$pianificabile = (date('Y', strtotime($contratto['data_accettazione'])) > 1970 and date('Y', strtotime($contratto['data_conclusione'])) > 1970) ? true : false;
}
$stati_pianificabili = $dbo->fetchOne('SELECT GROUP_CONCAT(`descrizione` SEPARATOR ", ") AS stati_pianificabili FROM `co_staticontratti` WHERE `pianificabile` = 1')['stati_pianificabili'];
echo '
'.tr('Puoi pianificare dei "promemoria" o direttamente gli interventi da effettuare entro determinate scadenze. Per poter pianificare i promemoria, il contratto deve avere data accettazione e data conclusione definita ed essere in uno dei seguenti stati: '.$stati_pianificabili.'').'.
';
// Nessun intervento pianificato
if (!empty($records)) {
echo '
'.tr('Lista promemoria ed eventuali interventi associati').':
'.tr('Data').'
'.tr('Tipo intervento').'
'.tr('Descrizione').'
'.tr('Intervento').'
'.tr('Sede').'
'.tr('Impianti').'
'.tr('Materiali').'
'.tr('Allegati').'
'.tr('Opzioni').'
';
// Elenco promemoria
foreach ($records as $record) {
// Sede
if ($record['idsede'] == '-1') {
echo '- '.tr('Nessuna').' -';
} elseif (empty($record['idsede'])) {
$info_sede = tr('Sede legale');
} else {
$sede = $dbo->fetchOne("SELECT id, CONCAT( CONCAT_WS( ' (', CONCAT_WS(', ', nomesede, citta), indirizzo ), ')') AS descrizione FROM an_sedi WHERE id=".prepare($record['idsede']));
$info_sede = $sede[0]['descrizione'];
}
// Intervento svolto
if (!empty($record['idintervento'])) {
$sede = $dbo->fetchOne('SELECT id, codice, (SELECT MIN(orario_inizio) FROM in_interventi_tecnici WHERE idintervento=in_interventi.id) AS data FROM in_interventi WHERE id='.prepare($record['idintervento']));
$info_intervento = Modules::link('Interventi', $sede[0]['id'], tr('Intervento num. _NUM_ del _DATE_', [
'_NUM_' => $sede[0]['codice'],
'_DATE_' => Translator::dateToLocale($sede[0]['data']),
]));
$disabled = 'disabled';
$title = 'Per eliminare il promemoria, eliminare prima l\'intervento associato.';
} else {
$info_intervento = '- '.('Nessuno').' -';
$disabled = '';
$title = 'Elimina promemoria...';
}
// data_conclusione contratto
if (date('Y', strtotime($contratto['data_conclusione'])) < 1971) {
$contratto['data_conclusione'] = '';
}
// info impianti
$info_impianti = '';
if (!empty($record['idimpianti'])) {
$impianti = $dbo->fetchArray('SELECT id, matricola, nome FROM my_impianti WHERE id IN ('.($record['idimpianti']).')');
foreach ($impianti as $impianto) {
$info_impianti .= Modules::link('MyImpianti', $impianto['id'], tr('_NOME_ (_MATRICOLA_)', [
'_NOME_' => $impianto['nome'],
'_MATRICOLA_' => $impianto['matricola'],
])).' ';
}
}
// Info materiali/articoli
$materiali = $dbo->fetchArray('SELECT id, descrizione,qta,um,prezzo_vendita, \'\' AS idarticolo FROM co_promemoria_righe WHERE id_promemoria = '.prepare($record['id']).'
UNION SELECT id, descrizione,qta,um,prezzo_vendita, idarticolo FROM co_promemoria_articoli WHERE id_promemoria = '.prepare($record['id']));
$info_materiali = '';
foreach ($materiali as $materiale) {
$info_materiali .= tr(' _QTA_ _UM_ x _DESC_', [
'_DESC_' => ((!empty($materiale['idarticolo'])) ? Modules::link('Articoli', $materiale['idarticolo'], $materiale['descrizione']) : $materiale['descrizione']),
'_QTA_' => Translator::numberToLocale($materiale['qta']),
'_UM_' => $materiale['um'],
'_PREZZO_' => $materiale['prezzo_vendita'],
]).' ';
}
// Info allegati
$allegati = Uploads::get([
'id_plugin' => $id_plugin,
'id_record' => $record['id'],
]);
$info_allegati = '';
foreach ($allegati as $allegato) {
$info_allegati .= tr(' _NOME_ (_ORIGINAL_)', [
'_ORIGINAL_' => $allegato['original'],
'_NOME_' => $allegato['name'],
]).' ';
}
echo '
';
}
}
echo '
';
//TODO: terminare con gestione swal standard, prevedere salvataggio ajax e possibilità di lanciare pop-up
/*$msg = '{[ "type": "select", "label": "'.tr('Tipo intervento').'", "name": "idtipointervento", "required": 1, "values": "query=SELECT co_contratti_tipiintervento.idtipointervento AS id, in_tipiintervento.descrizione AS 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" ]}';
echo '
';*/
$options = $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');
echo '
';