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').':
'; // 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 '
'.tr('Data').' '.tr('Tipo intervento').' '.tr('Descrizione').' '.tr('Intervento').' '.tr('Sede').' '.tr('Impianti').' '.tr('Materiali').' '.tr('Allegati').' '.tr('Opzioni').'
'.Translator::dateToLocale($record['data_richiesta']).' '.$record['tipointervento'].' '.nl2br($record['richiesta']).' '.$info_intervento.' '.$info_sede.' '.$info_impianti.' '.$info_materiali.' '.$info_allegati.'
'; if (!empty($records)) { 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 ' ';