Skip to content

Commit 4e6ff39

Browse files
committed
refactor: ottimizzazione creazione record
1 parent b8ded3f commit 4e6ff39

36 files changed

Lines changed: 133 additions & 140 deletions

File tree

modules/adattatori_archiviazione/actions.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -33,7 +33,7 @@
3333

3434
$id_record = $adapter->id;
3535

36-
flash()->info(tr('Nuoovo adattatore aggiunto!'));
36+
flash()->info(tr('Nuovo adattatore aggiunto!'));
3737

3838
break;
3939

modules/anagrafiche/src/Provenienza.php

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -34,6 +34,14 @@ class Provenienza extends Model
3434
protected static $translated_fields = [
3535
'title',
3636
];
37+
public static function build($name = null)
38+
{
39+
$model = new static();
40+
$model->name = $name;
41+
$model->save();
42+
43+
return $model;
44+
}
3745

3846
public function anagrafiche()
3947
{

modules/anagrafiche/src/Relazione.php

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -35,6 +35,15 @@ class Relazione extends Model
3535
'title',
3636
];
3737

38+
public static function build($name = null)
39+
{
40+
$model = new static();
41+
$model->name = $name;
42+
$model->save();
43+
44+
return $model;
45+
}
46+
3847
public function anagrafiche()
3948
{
4049
return $this->hasMany(Anagrafica::class, 'idrelazione');

modules/anagrafiche/src/Settore.php

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -35,6 +35,15 @@ class Settore extends Model
3535
'title',
3636
];
3737

38+
public static function build($name = null)
39+
{
40+
$model = new static();
41+
$model->name = $name;
42+
$model->save();
43+
44+
return $model;
45+
}
46+
3847
public function anagrafiche()
3948
{
4049
return $this->hasMany(Anagrafica::class, 'id_settore');

modules/articoli/actions.php

Lines changed: 5 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -57,11 +57,7 @@
5757
$categoria = Categoria::find(post('categoria'));
5858
$sottocategoria = Categoria::find(post('subcategoria'));
5959
$articolo = Articolo::build($codice, $categoria, $sottocategoria);
60-
61-
if (Models\Locale::getDefault()->id == Models\Locale::getPredefined()->id) {
62-
$articolo->name = post('descrizione');
63-
}
64-
60+
$articolo->name = post('descrizione');
6561
$articolo->coefficiente = post('coefficiente');
6662
$articolo->idiva_vendita = post('idiva_vendita');
6763
$articolo->prezzo_acquisto = post('prezzo_acquisto');
@@ -77,9 +73,10 @@
7773
$articolo->fattore_um_secondaria = post('fattore_um_secondaria');
7874
$articolo->id_marca = post('id_marca');
7975
$articolo->id_modello = post('id_modello');
80-
$articolo->setTranslation('title', post('descrizione'));
8176
$articolo->save();
8277

78+
$articolo->setTranslation('title', post('descrizione'));
79+
8380
// Aggiornamento delle varianti per i campi comuni
8481
Combinazione::sincronizzaVarianti($articolo);
8582

@@ -206,15 +203,14 @@
206203
if (empty(post('coefficiente'))) {
207204
$articolo->setPrezzoVendita(post('prezzo_vendita'), post('idiva_vendita'));
208205
}
209-
210206
$componente = post('componente_filename');
211207
$articolo->componente_filename = $componente;
212208
$articolo->attivo = post('attivo');
213-
$articolo->setTranslation('title', post('descrizione'));
214209
$articolo->note = post('note');
215-
216210
$articolo->save();
217211

212+
$articolo->setTranslation('title', post('descrizione'));
213+
218214
// Aggiornamento delle varianti per i campi comuni
219215
Combinazione::sincronizzaVarianti($articolo);
220216

modules/attributi_combinazioni/actions.php

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -32,8 +32,9 @@
3232
flash()->error(tr('Questo nome è già stato utilizzato per un altro attributo.'));
3333
} else {
3434
$attributo = Attributo::build();
35+
$attributo->name = $title;
3536
$id_record = $dbo->lastInsertedID();
36-
$attributo->setTranslation('title', $title);
37+
$attributo->save();
3738

3839
flash()->info(tr('Nuovo attributo creato correttamente!'));
3940
}
@@ -46,6 +47,10 @@
4647
if (!empty($attributo_new) && $attributo_new != $id_record) {
4748
flash()->error(tr('Questo nome è già stato utilizzato per un altro attributo.'));
4849
} else {
50+
if (Models\Locale::getDefault()->id == Models\Locale::getPredefined()->id) {
51+
$attributo->name = $title;
52+
}
53+
$attributo->save();
4954
$attributo->setTranslation('title', $title);
5055
flash()->info(tr('Attributo aggiornato correttamente!'));
5156
}

modules/beni/actions.php

Lines changed: 3 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -28,11 +28,12 @@
2828
if (isset($descrizione)) {
2929
$aspetto_new = AspettoBeni::where('id', '=', (new AspettoBeni())->getByField('title', $descrizione))->where('id', '!=', $id_record)->first();
3030
if (empty($aspetto_new)) {
31-
$aspetto->setTranslation('title', $descrizione);
3231
if (Models\Locale::getDefault()->id == Models\Locale::getPredefined()->id) {
3332
$aspetto->name = $descrizione;
3433
}
3534
$aspetto->save();
35+
36+
$aspetto->setTranslation('title', $descrizione);
3637
flash()->info(tr('Salvataggio completato.'));
3738
} else {
3839
flash()->error(tr("E' già presente un aspetto beni con questa descrizione."));
@@ -49,14 +50,9 @@
4950
if (isset($descrizione)) {
5051
if (empty(AspettoBeni::where('id', '=', (new AspettoBeni())->getByField('title', $descrizione))->where('id', '!=', $id_record)->first())) {
5152
$aspetto = AspettoBeni::build();
52-
if (Models\Locale::getDefault()->id == Models\Locale::getPredefined()->id) {
53-
$aspetto->name = $descrizione;
54-
}
53+
$aspetto->name = $descrizione;
5554
$aspetto->save();
56-
5755
$id_record = $dbo->lastInsertedID();
58-
$aspetto->setTranslation('title', $descrizione);
59-
$aspetto->save();
6056

6157
if (isAjaxRequest()) {
6258
echo json_encode(['id' => $id_record, 'text' => $descrizione]);

modules/categorie/actions.php

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -55,10 +55,10 @@
5555
$categoria->parent = $id_original ?: null;
5656
$categoria->is_articolo = $is_articolo;
5757
$categoria->is_impianto = $is_impianto;
58-
$categoria->setTranslation('title', $nome);
59-
$categoria->setTranslation('note', $nota);
6058
$categoria->save();
6159

60+
$categoria->setTranslation('title', $nome);
61+
$categoria->setTranslation('note', $nota);
6262
// Aggiorna i flag delle sottocategorie se è un parent
6363
$subcategorie = Categoria::where('parent', '=', $id_record)->get();
6464
if (!empty($subcategorie)) {
@@ -118,10 +118,9 @@
118118
$categoria->parent = $id_original;
119119
$categoria->is_articolo = $is_articolo;
120120
$categoria->is_impianto = $is_impianto;
121-
$categoria->setTranslation('note', $nota);
122-
$categoria->setTranslation('title', $nome);
123121
$categoria->save();
124122

123+
$categoria->setTranslation('note', $nota);
125124
flash()->info(tr('Aggiunta nuova tipologia di _TYPE_', [
126125
'_TYPE_' => 'categoria',
127126
]));

modules/categorie_contratti/actions.php

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -31,10 +31,13 @@
3131
if (isset($nome) && isset($nota) && isset($colore)) {
3232
$categoria->colore = $colore;
3333
$categoria->parent = $id_original ?: null;
34-
$categoria->setTranslation('title', $nome);
34+
if (Models\Locale::getDefault()->id == Models\Locale::getPredefined()->id) {
35+
$categoria->name = $nome;
36+
}
3537
$categoria->setTranslation('note', $nota);
3638
$categoria->save();
3739

40+
$categoria->setTranslation('title', $nome);
3841
flash()->info(tr('Salvataggio completato!'));
3942
} else {
4043
flash()->error(tr('Ci sono stati alcuni errori durante il salvataggio!'));
@@ -68,9 +71,9 @@
6871
} else {
6972
$categoria = Categoria::build($colore);
7073
$id_record = $dbo->lastInsertedID();
74+
$categoria->name = $nome;
7175
$categoria->parent = $id_original;
7276
$categoria->setTranslation('note', $nota);
73-
$categoria->setTranslation('title', $nome);
7477
$categoria->save();
7578

7679
flash()->info(tr('Aggiunta nuova tipologia di _TYPE_', [

modules/categorie_documenti/actions.php

Lines changed: 2 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -32,12 +32,12 @@
3232
'_NAME_' => $descrizione,
3333
]));
3434
} else {
35-
$categoria->setTranslation('title', $descrizione);
3635
if (Models\Locale::getDefault()->id == Models\Locale::getPredefined()->id) {
3736
$categoria->name = $descrizione;
3837
}
3938
$categoria->save();
4039

40+
$categoria->setTranslation('title', $descrizione);
4141
$categoria->syncPermessi(post('permessi') ?: []);
4242

4343
flash()->info(tr('Informazioni salvate correttamente!'));
@@ -55,11 +55,8 @@
5555
]));
5656
} else {
5757
$categoria = Categoria::build();
58-
if (Models\Locale::getDefault()->id == Models\Locale::getPredefined()->id) {
59-
$categoria->name = $descrizione;
60-
}
58+
$categoria->name = $descrizione;
6159
$id_record = $dbo->lastInsertedID();
62-
$categoria->setTranslation('title', $descrizione);
6360
$categoria->save();
6461

6562
if (isAjaxRequest()) {

0 commit comments

Comments
 (0)