|
|
@@ -97,6 +97,8 @@ class Report extends Component
|
|
|
$intersezione_con,
|
|
|
$prossimita_civico,
|
|
|
$prossimita_palo_luce,
|
|
|
+ $latitude,
|
|
|
+ $longitude,
|
|
|
$prossimita_chilometro,
|
|
|
$note_aggiuntive;
|
|
|
|
|
|
@@ -343,6 +345,8 @@ class Report extends Component
|
|
|
$this->intersezione_con = '';
|
|
|
$this->prossimita_civico = '';
|
|
|
$this->prossimita_palo_luce = '';
|
|
|
+ $this->latitude = 0;
|
|
|
+ $this->longitude = 0;
|
|
|
$this->prossimita_chilometro = '';
|
|
|
//$this->coordinata_x = '';
|
|
|
//$this->coordinata_y = '';
|
|
|
@@ -592,56 +596,95 @@ class Report extends Component
|
|
|
$this->emit('modalClosed');
|
|
|
}
|
|
|
|
|
|
-
|
|
|
-
|
|
|
public function add()
|
|
|
{
|
|
|
- try {
|
|
|
- $this->protocollo_num = DB::table('fcf_reports_reports')
|
|
|
- ->where('protocollo_anno', date('Y'))
|
|
|
- ->max('protocollo_num') + 1;
|
|
|
-
|
|
|
- $this->protocollo_anno = date('Y');
|
|
|
- $this->name = $this->protocollo_num . "/" . $this->protocollo_anno;
|
|
|
-
|
|
|
- $reportData = [
|
|
|
- 'name' => $this->name,
|
|
|
- 'protocollo_num' => $this->protocollo_num,
|
|
|
- 'protocollo_anno' => $this->protocollo_anno,
|
|
|
- 'validated' => $this->validated,
|
|
|
- 'necessita_nulla_osta' => $this->necessita_nulla_osta,
|
|
|
- 'data_nulla_osta' => $this->data_nulla_osta,
|
|
|
- 'localita_uno' => $this->localita_uno,
|
|
|
- 'localita_due' => $this->localita_due,
|
|
|
- 'verificatosi_in_data' => $this->verificatosi_in_data,
|
|
|
- 'verificatosi_in_data_ora' => $this->verificatosi_in_data_ora,
|
|
|
- 'verificatosi_in_data_minuti' => $this->verificatosi_in_data_minuti,
|
|
|
- 'rilievi_id' => $this->rilievi_id,
|
|
|
- 'segnalazione_data' => $this->segnalazione_data,
|
|
|
- 'segnalazione_ora' => $this->segnalazione_ora,
|
|
|
- 'segnalazione_minuti' => $this->segnalazione_minuti,
|
|
|
- 'sinistro_ora' => $this->sinistro_ora,
|
|
|
- 'sinistro_minuti' => $this->sinistro_minuti,
|
|
|
- 'localizzazione_incidente' => $this->localizzazione_incidente,
|
|
|
- 'nomenclatura_strada' => $this->nomenclatura_strada,
|
|
|
- 'condizioni_atmosferiche' => $this->condizioni_atmosferiche,
|
|
|
- 'pavimentazione' => $this->pavimentazione,
|
|
|
- 'condizione_strada' => $this->condizione_strada,
|
|
|
- 'fondo_stradale' => $this->fondo_stradale,
|
|
|
- 'visibilita' => $this->visibilita,
|
|
|
- 'particolarita_strada' => $this->particolarita_strada,
|
|
|
- ];
|
|
|
|
|
|
- Log::info('Creating report with data:', $reportData);
|
|
|
+ $rulesValidate = [
|
|
|
+ 'localita_uno' => 'required',
|
|
|
+ 'localita_due' => 'required',
|
|
|
+ 'verificatosi_in_data' => 'required',
|
|
|
+ 'verificatosi_in_data_ora' => 'required',
|
|
|
+ 'verificatosi_in_data_minuti' => 'required',
|
|
|
+ 'rilievi_id' => 'required',
|
|
|
+ 'segnalazione_data' => 'required',
|
|
|
+ 'segnalazione_ora' => 'required',
|
|
|
+ 'segnalazione_minuti' => 'required',
|
|
|
+ 'sinistro_ora' => 'required',
|
|
|
+ 'sinistro_minuti' => 'required',
|
|
|
+ 'localizzazione_incidente' => 'required',
|
|
|
+ 'nomenclatura_strada' => 'required',
|
|
|
+ 'condizioni_atmosferiche' => 'required',
|
|
|
+ 'pavimentazione' => 'required',
|
|
|
+ 'condizione_strada' => 'required',
|
|
|
+ 'fondo_stradale' => 'required',
|
|
|
+ 'visibilita' => 'required',
|
|
|
+ 'particolarita_strada' => 'required',
|
|
|
+ ];
|
|
|
+
|
|
|
+ $data = [];
|
|
|
+ foreach($rulesValidate as $k => $v)
|
|
|
+ {
|
|
|
+ $data[$k] = $this->$k;
|
|
|
+ }
|
|
|
+ //$this->validate($rulesValidate);
|
|
|
|
|
|
- $record = \App\Models\Report::create($reportData);
|
|
|
+ $validator = \Validator::make($data, $rulesValidate);
|
|
|
|
|
|
- session()->flash('success', 'Verbale creato');
|
|
|
- $this->closeModal();
|
|
|
- $this->edit($record->id);
|
|
|
- } catch (\Exception $ex) {
|
|
|
+ if($validator->fails())
|
|
|
+ {
|
|
|
session()->flash('error', 'Errore in fase di salvataggio. I dati sono da inserire obbligatoriamente.');
|
|
|
}
|
|
|
+ else
|
|
|
+ {
|
|
|
+
|
|
|
+ try {
|
|
|
+ $this->protocollo_num = DB::table('fcf_reports_reports')
|
|
|
+ ->where('protocollo_anno', date('Y'))
|
|
|
+ ->max('protocollo_num') + 1;
|
|
|
+
|
|
|
+ $this->protocollo_anno = date('Y');
|
|
|
+ $this->name = $this->protocollo_num . "/" . $this->protocollo_anno;
|
|
|
+
|
|
|
+ $reportData = [
|
|
|
+ 'name' => $this->name,
|
|
|
+ 'protocollo_num' => $this->protocollo_num,
|
|
|
+ 'protocollo_anno' => $this->protocollo_anno,
|
|
|
+ 'validated' => $this->validated,
|
|
|
+ 'necessita_nulla_osta' => $this->necessita_nulla_osta,
|
|
|
+ 'data_nulla_osta' => $this->data_nulla_osta,
|
|
|
+ 'localita_uno' => $this->localita_uno,
|
|
|
+ 'localita_due' => $this->localita_due,
|
|
|
+ 'verificatosi_in_data' => $this->verificatosi_in_data,
|
|
|
+ 'verificatosi_in_data_ora' => $this->verificatosi_in_data_ora,
|
|
|
+ 'verificatosi_in_data_minuti' => $this->verificatosi_in_data_minuti,
|
|
|
+ 'rilievi_id' => $this->rilievi_id,
|
|
|
+ 'segnalazione_data' => $this->segnalazione_data,
|
|
|
+ 'segnalazione_ora' => $this->segnalazione_ora,
|
|
|
+ 'segnalazione_minuti' => $this->segnalazione_minuti,
|
|
|
+ 'sinistro_ora' => $this->sinistro_ora,
|
|
|
+ 'sinistro_minuti' => $this->sinistro_minuti,
|
|
|
+ 'localizzazione_incidente' => $this->localizzazione_incidente,
|
|
|
+ 'nomenclatura_strada' => $this->nomenclatura_strada,
|
|
|
+ 'condizioni_atmosferiche' => $this->condizioni_atmosferiche,
|
|
|
+ 'pavimentazione' => $this->pavimentazione,
|
|
|
+ 'condizione_strada' => $this->condizione_strada,
|
|
|
+ 'fondo_stradale' => $this->fondo_stradale,
|
|
|
+ 'visibilita' => $this->visibilita,
|
|
|
+ 'particolarita_strada' => $this->particolarita_strada,
|
|
|
+ ];
|
|
|
+
|
|
|
+ Log::info('Creating report with data:', $reportData);
|
|
|
+
|
|
|
+ $record = \App\Models\Report::create($reportData);
|
|
|
+
|
|
|
+ session()->flash('success', 'Verbale creato');
|
|
|
+ $this->closeModal();
|
|
|
+ $this->edit($record->id);
|
|
|
+ } catch (\Exception $ex) {
|
|
|
+ Log::info('Error during report creation:' . $ex->getMessage());
|
|
|
+ session()->flash('error', 'Errore in fase di salvataggio. I dati sono da inserire obbligatoriamente.');
|
|
|
+ }
|
|
|
+ }
|
|
|
}
|
|
|
|
|
|
public function store()
|
|
|
@@ -655,6 +698,7 @@ class Report extends Component
|
|
|
$this->resetFields();
|
|
|
$this->add = false;
|
|
|
} catch (\Exception $ex) {
|
|
|
+ Log::info('Error during report creation:' . $ex->getMessage());
|
|
|
session()->flash('error', 'Errore in fase di salvataggio');
|
|
|
}
|
|
|
}
|
|
|
@@ -707,6 +751,8 @@ class Report extends Component
|
|
|
$this->intersezione_con = $record->intersezione_con;
|
|
|
$this->prossimita_civico = $record->prossimita_civico;
|
|
|
$this->prossimita_palo_luce = $record->prossimita_palo_luce;
|
|
|
+ $this->latitude = $record->latitude;
|
|
|
+ $this->longitude = $record->longitude;
|
|
|
$this->prossimita_chilometro = $record->prossimita_chilometro;
|
|
|
//$this->coordinata_x = $record->coordinata_x;
|
|
|
//$this->coordinata_y = $record->coordinata_y;
|
|
|
@@ -843,6 +889,7 @@ class Report extends Component
|
|
|
$this->add = false;
|
|
|
}
|
|
|
} catch (\Exception $ex) {
|
|
|
+ Log::info('Error during report edit :' . $ex->getMessage());
|
|
|
session()->flash('error', 'Errore (' . $ex->getMessage() . ')');
|
|
|
}
|
|
|
$this->emit('load-check', "");
|
|
|
@@ -875,7 +922,7 @@ class Report extends Component
|
|
|
$this->validate($rulesValidate);
|
|
|
}
|
|
|
try {
|
|
|
- \App\Models\Report::whereId($this->dataId)->update([
|
|
|
+ $reportData = [
|
|
|
'name' => str_pad($this->protocollo_num, 3, '0', STR_PAD_LEFT) . "/" . $this->protocollo_anno,
|
|
|
'necessita_nulla_osta' => $this->necessita_nulla_osta,
|
|
|
'data_nulla_osta' => $this->data_nulla_osta,
|
|
|
@@ -901,6 +948,8 @@ class Report extends Component
|
|
|
'intersezione_con' => $this->intersezione_con,
|
|
|
'prossimita_civico' => $this->prossimita_civico,
|
|
|
'prossimita_palo_luce' => $this->prossimita_palo_luce,
|
|
|
+ 'latitude' => $this->latitude,
|
|
|
+ 'longitude' => $this->longitude,
|
|
|
'prossimita_chilometro' => $this->prossimita_chilometro,
|
|
|
//'coordinata_x' => $this->coordinata_x,
|
|
|
//'coordinata_y' => $this->coordinata_y,
|
|
|
@@ -1000,7 +1049,11 @@ class Report extends Component
|
|
|
'segnaletica_orizzontale_4_altro' => $this->segnaletica_orizzontale_4_altro,
|
|
|
'segnaletica_orizzontale_4_direzione' => $this->segnaletica_orizzontale_4_direzione,
|
|
|
'validated' => $validate
|
|
|
- ]);
|
|
|
+ ];
|
|
|
+
|
|
|
+ \App\Models\Report::whereId($this->dataId)->update($reportData);
|
|
|
+
|
|
|
+ Log::info('Update report ' . $this->dataId . ' with data:', $reportData);
|
|
|
|
|
|
\App\Models\ReportTipoUrto::where('report_id', $this->dataId)->delete();
|
|
|
foreach ($this->tipo_urto as $x) {
|
|
|
@@ -1149,6 +1202,7 @@ class Report extends Component
|
|
|
'stato_testi_oculari' => $this->data_testi_oculari_stato_3
|
|
|
]);
|
|
|
} catch (\Exception $ex) {
|
|
|
+ Log::info('Error during save ' . $this->dataId . ' update:' . $ex->getMessage());
|
|
|
session()->flash('error', 'Errore in fase di salvataggio (' . $ex->getMessage() . ')');
|
|
|
}
|
|
|
|
|
|
@@ -1156,6 +1210,7 @@ class Report extends Component
|
|
|
$this->resetFields();
|
|
|
$this->update = false;
|
|
|
} catch (\Exception $ex) {
|
|
|
+ Log::info('Error during report ' . $this->dataId . ' update:' . $ex->getMessage());
|
|
|
session()->flash('error', 'Errore (' . $ex->getMessage() . ')');
|
|
|
}
|
|
|
}
|
|
|
@@ -1174,6 +1229,7 @@ class Report extends Component
|
|
|
{
|
|
|
try {
|
|
|
\App\Models\Report::find($id)->delete();
|
|
|
+ Log::info('Delete report :' . $id);
|
|
|
session()->flash('success', "Verbale eliminato");
|
|
|
} catch (\Exception $e) {
|
|
|
session()->flash('error', "Errore");
|