Aggiunto flag impianti in fase di duplicazione attività

This commit is contained in:
MatteoPistorello 2022-09-29 15:22:24 +02:00
parent 8d65381243
commit d202d9f3df
3 changed files with 50 additions and 5 deletions

View File

@ -802,6 +802,7 @@ switch (post('op')) {
$data_richiesta = post('data_richiesta');
$copia_sessioni = post('copia_sessioni');
$copia_righe = post('copia_righe');
$copia_impianti = post('copia_impianti');
$new = $intervento->replicate();
$new->idstatointervento = $id_stato;
@ -862,6 +863,25 @@ switch (post('op')) {
}
}
// Copia delle sessioni
if (!empty($copia_impianti)) {
$impianti = $dbo->select('my_impianti_interventi', '*', ['idintervento' => $intervento->id]);
foreach ($impianti as $impianto) {
$dbo->insert('my_impianti_interventi', [
'idintervento' => $id_record,
'idimpianto' => $impianto['idimpianto']
]);
}
$componenti = $dbo->select('my_componenti_interventi', '*', ['id_intervento' => $intervento->id]);
foreach ($componenti as $componente) {
$dbo->insert('my_componenti_interventi', [
'id_intervento' => $id_record,
'id_componente' => $componente['id_componente']
]);
}
}
flash()->info(tr('Attività duplicata correttamente!'));
break;

View File

@ -172,6 +172,7 @@ switch (post('op')) {
$data_richiesta = post('data_richiesta');
$copia_sessioni = post('sessioni');
$copia_righe = post('righe');
$copia_impianti = post('impianti');
foreach ($id_records as $idintervento) {
$intervento = Intervento::find($idintervento);
@ -227,6 +228,25 @@ switch (post('op')) {
}
}
// Copia degli impianti
if (!empty($copia_impianti)) {
$impianti = $dbo->select('my_impianti_interventi', '*', ['idintervento' => $intervento->id]);
foreach ($impianti as $impianto) {
$dbo->insert('my_impianti_interventi', [
'idintervento' => $id_record,
'idimpianto' => $impianto['idimpianto']
]);
}
$componenti = $dbo->select('my_componenti_interventi', '*', ['id_intervento' => $intervento->id]);
foreach ($componenti as $componente) {
$dbo->insert('my_componenti_interventi', [
'id_intervento' => $id_record,
'id_componente' => $componente['id_componente']
]);
}
}
flash()->info(tr('Attività duplicate correttamente!'));
break;
@ -303,7 +323,8 @@ if (App::debug()) {
'msg' => '<br>{[ "type": "timestamp", "label": "'.tr('Data/ora richiesta').'", "name": "data_richiesta", "required": 0, "value": "-now-", "required":1 ]}
<br>{[ "type": "select", "label": "'.tr('Stato').'", "name": "idstatointervento", "required": 1, "values": "query=SELECT idstatointervento AS id, descrizione, colore AS _bgcolor_ FROM in_statiintervento WHERE deleted_at IS NULL ORDER BY descrizione", "value": "" ]}
<br>{[ "type":"checkbox", "label":"'.tr('Duplica righe').'", "name":"righe", "value":"" ]}
<br>{[ "type":"checkbox", "label":"'.tr('Duplica sessioni').'", "name":"sessioni", "value":"" ]}',
<br>{[ "type":"checkbox", "label":"'.tr('Duplica sessioni').'", "name":"sessioni", "value":"" ]}
<br>{[ "type":"checkbox", "label":"'.tr('Duplica impianti').'", "name":"impianti", "value":"" ]}',
'button' => tr('Procedi'),
'class' => 'btn btn-lg btn-warning',
'blank' => false,

View File

@ -39,12 +39,16 @@ echo '
{[ "type": "select", "label": "'.tr('Stato').'", "name": "id_stato", "required": 1, "values": "query=SELECT idstatointervento AS id, descrizione, colore AS _bgcolor_ FROM in_statiintervento WHERE deleted_at IS NULL ORDER BY descrizione", "value": "" ]}
</div>
<div class="col-md-3">
{["type": "checkbox", "label": "'.tr('Duplica righe').'", "name": "copia_righe", "help": "'.tr('Selezione per riportare anche le righe nella nuova attività').'", "value": 1 ]}
<div class="col-md-2">
{["type": "checkbox", "label": "'.tr('Duplica righe').'", "name": "copia_righe", "help": "'.tr('Selezione per riportare anche le righe nella nuova attività').'" ]}
</div>
<div class="col-md-3">
{["type": "checkbox", "label": "'.tr('Duplica sessioni').'", "name": "copia_sessioni", "help": "'.tr('Selezione per riportare anche le sessioni di lavoro nella nuova attività').'", "value": 1 ]}
<div class="col-md-2">
{["type": "checkbox", "label": "'.tr('Duplica sessioni').'", "name": "copia_sessioni", "help": "'.tr('Selezione per riportare anche le sessioni di lavoro nella nuova attività').'" ]}
</div>
<div class="col-md-2">
{["type": "checkbox", "label": "'.tr('Duplica impianti').'", "name": "copia_impianti", "help": "'.tr('Selezione per riportare anche gli impianti nella nuova attività').'" ]}
</div>
</div>