diff --git a/modules/contratti/actions.php b/modules/contratti/actions.php
index 14bc20bf3..3062df780 100644
--- a/modules/contratti/actions.php
+++ b/modules/contratti/actions.php
@@ -641,19 +641,15 @@ switch (post('op')) {
break;
case 'edit-price':
- $righe = $post['righe'];
+ $righe = (array) post('righe');
$numero_totale = 0;
foreach ($righe as $riga) {
if (($riga['id']) != null) {
$articolo = Articolo::find($riga['id']);
- } else {
- $originale = ArticoloOriginale::find(post('idarticolo'));
- $articolo = Articolo::build($fattura, $originale);
- $articolo->id_dettaglio_fornitore = post('id_dettaglio_fornitore') ?: null;
}
- if ($articolo['prezzo_unitario'] != $riga['price']) {
+ if ($articolo->prezzo_unitario != $riga['price']) {
$articolo->setPrezzoUnitario($riga['price'], $articolo->idiva);
$articolo->save();
++$numero_totale;
@@ -672,5 +668,85 @@ switch (post('op')) {
flash()->warning(tr('Nessun prezzo modificato!'));
}
+ break;
+
+ case 'update-price':
+ $dir = 'entrata';
+ $id_anagrafica = $contratto->idanagrafica;
+ $prezzi_ivati = setting('Utilizza prezzi di vendita comprensivi di IVA');
+ $numero_totale = 0;
+ $id_righe = (array) post('righe');
+
+ foreach ($id_righe as $id_riga) {
+ $riga = Articolo::find($id_riga) ?: Riga::find($id_riga);
+
+ // CALCOLO PREZZO UNITARIO
+ $prezzo_unitario = 0;
+ $sconto = 0;
+ if ($riga->isArticolo()) {
+ // Prezzi netti clienti / listino fornitore
+ $prezzi = $dbo->fetchArray('SELECT minimo, massimo, sconto_percentuale, '.($prezzi_ivati ? 'prezzo_unitario_ivato' : 'prezzo_unitario').' AS prezzo_unitario
+ FROM mg_prezzi_articoli
+ WHERE id_articolo = '.prepare($riga->idarticolo).' AND dir = '.prepare($dir).' AND id_anagrafica = '.prepare($id_anagrafica));
+
+ if ($prezzi) {
+ foreach ($prezzi as $prezzo) {
+ if ($riga->qta >= $prezzo['minimo'] && $riga->qta <= $prezzo['massimo']) {
+ $prezzo_unitario = $prezzo['prezzo_unitario'];
+ $sconto = $prezzo['sconto_percentuale'];
+ continue;
+ }
+
+ if ($prezzo['minimo'] == null && $prezzo['massimo'] == null && $prezzo['prezzo_unitario'] != null) {
+ $prezzo_unitario = $prezzo['prezzo_unitario'];
+ $sconto = $prezzo['sconto_percentuale'];
+ continue;
+ }
+ }
+ }
+ if (empty($prezzo_unitario)) {
+ // Prezzi listini clienti
+ $listino = $dbo->fetchOne('SELECT sconto_percentuale AS sconto_percentuale_listino, '.($prezzi_ivati ? 'prezzo_unitario_ivato' : 'prezzo_unitario').' AS prezzo_unitario_listino
+ FROM mg_listini
+ LEFT JOIN mg_listini_articoli ON mg_listini.id=mg_listini_articoli.id_listino
+ LEFT JOIN an_anagrafiche ON mg_listini.id=an_anagrafiche.id_listino
+ WHERE mg_listini.data_attivazione<=NOW() AND mg_listini_articoli.data_scadenza>=NOW() AND mg_listini.attivo=1 AND id_articolo = '.prepare($riga->idarticolo).' AND dir = '.prepare($dir).' AND idanagrafica = '.prepare($id_anagrafica));
+
+ if ($listino) {
+ $prezzo_unitario = $listino['prezzo_unitario_listino'];
+ $sconto = $listino['sconto_percentuale_listino'];
+ }
+ }
+ $prezzo_unitario = $prezzo_unitario ?: ($prezzi_ivati ? $riga->articolo->prezzo_vendita_ivato : $riga->articolo->prezzo_vendita);
+ $riga->setPrezzoUnitario($prezzo_unitario, $riga->idiva);
+
+ if ($dir == 'entrata') {
+ $riga->costo_unitario = $riga->articolo->prezzo_acquisto;
+ }
+ }
+
+ // Aggiunta sconto combinato se è presente un piano di sconto nell'anagrafica
+ $piano_sconto = $dbo->fetchOne('SELECT prc_guadagno FROM an_anagrafiche INNER JOIN mg_piani_sconto ON an_anagrafiche.id_piano_sconto_vendite=mg_piani_sconto.id WHERE idanagrafica='.prepare($id_anagrafica));
+ if (!empty($piano_sconto)) {
+ $sconto = parseScontoCombinato($piano_sconto['prc_guadagno'].'+'.$sconto);
+ }
+
+ $riga->setSconto($sconto, 'PRC');
+ $riga->save();
+ ++$numero_totale;
+ }
+
+ if ($numero_totale > 1) {
+ flash()->info(tr('_NUM_ prezzi modificati!', [
+ '_NUM_' => $numero_totale,
+ ]));
+ } elseif ($numero_totale == 1) {
+ flash()->info(tr('_NUM_ prezzo modificato!', [
+ '_NUM_' => $numero_totale,
+ ]));
+ } else {
+ flash()->warning(tr('Nessun prezzo modificato!'));
+ }
+
break;
}
diff --git a/modules/contratti/row-list.php b/modules/contratti/row-list.php
index 82b295fd3..b9a5e12a0 100755
--- a/modules/contratti/row-list.php
+++ b/modules/contratti/row-list.php
@@ -342,7 +342,11 @@ if (!$block_edit && sizeof($righe) > 0) {
+
+
';
}
@@ -381,6 +385,34 @@ function confrontaRighe(id) {
openModal("'.tr('Confronta prezzi').'", "'.$module->fileurl('modals/confronta_righe.php').'?id_module=" + globals.id_module + "&id_record=" + globals.id_record + "&righe=" + id);
}
+function aggiornaRighe(id) {
+ swal({
+ title: "'.tr('Aggiornare prezzi di queste righe?').'",
+ html: "'.tr('Confermando verranno aggiornati i prezzi delle righe secondo i listini ed i prezzi predefiniti collegati all\'articolo e ai piani sconto collegati all\'anagrafica.').'",
+ type: "warning",
+ showCancelButton: true,
+ confirmButtonText: "'.tr('Sì').'"
+ }).then(function () {
+ $.ajax({
+ url: globals.rootdir + "/actions.php",
+ type: "POST",
+ data: {
+ id_module: globals.id_module,
+ id_record: globals.id_record,
+ op: "update-price",
+ righe: id,
+ },
+ success: function (response) {
+ renderMessages();
+ caricaRighe(null);
+ },
+ error: function() {
+ renderMessages();
+ caricaRighe(null);
+ }
+ });
+ }).catch(swal.noop);
+}
function rimuoviRiga(id) {
swal({
@@ -401,11 +433,12 @@ function rimuoviRiga(id) {
righe: id,
},
success: function (response) {
- content_was_modified = false;
- location.reload();
+ renderMessages();
+ caricaRighe(null);
},
error: function() {
- location.reload();
+ renderMessages();
+ caricaRighe(null);
}
});
}).catch(swal.noop);
@@ -430,10 +463,12 @@ function duplicaRiga(id) {
righe: id,
},
success: function (response) {
- location.reload();
+ renderMessages();
+ caricaRighe(null);
},
error: function() {
- location.reload();
+ renderMessages();
+ caricaRighe(null);
}
});
}).catch(swal.noop);
@@ -470,10 +505,12 @@ $(".check").on("change", function() {
$("#elimina_righe").removeClass("disabled");
$("#duplica_righe").removeClass("disabled");
$("#confronta_righe").removeClass("disabled");
+ $("#aggiorna_righe").removeClass("disabled");
} else {
$("#elimina_righe").addClass("disabled");
$("#duplica_righe").addClass("disabled");
$("#confronta_righe").addClass("disabled");
+ $("#aggiorna_righe").addClass("disabled");
}
});
diff --git a/modules/ddt/actions.php b/modules/ddt/actions.php
index befb1b883..4c49b1c21 100755
--- a/modules/ddt/actions.php
+++ b/modules/ddt/actions.php
@@ -661,19 +661,15 @@ switch (filter('op')) {
break;
case 'edit-price':
- $righe = $post['righe'];
+ $righe = (array) post('righe');
$numero_totale = 0;
foreach ($righe as $riga) {
if (($riga['id']) != null) {
$articolo = Articolo::find($riga['id']);
- } else {
- $originale = ArticoloOriginale::find(post('idarticolo'));
- $articolo = Articolo::build($fattura, $originale);
- $articolo->id_dettaglio_fornitore = post('id_dettaglio_fornitore') ?: null;
}
- if ($articolo['prezzo_unitario'] != $riga['price']) {
+ if ($articolo->prezzo_unitario != $riga['price']) {
$articolo->setPrezzoUnitario($riga['price'], $articolo->idiva);
$articolo->save();
++$numero_totale;
@@ -692,6 +688,88 @@ switch (filter('op')) {
flash()->warning(tr('Nessun prezzo modificato!'));
}
+ break;
+
+ case 'update-price':
+ $id_anagrafica = $ddt->idanagrafica;
+ $prezzi_ivati = setting('Utilizza prezzi di vendita comprensivi di IVA');
+ $numero_totale = 0;
+ $id_righe = (array) post('righe');
+
+ foreach ($id_righe as $id_riga) {
+ $riga = Articolo::find($id_riga) ?: Riga::find($id_riga);
+
+ // CALCOLO PREZZO UNITARIO
+ $prezzo_unitario = 0;
+ $sconto = 0;
+ if ($riga->isArticolo()) {
+ // Prezzi netti clienti / listino fornitore
+ $prezzi = $dbo->fetchArray('SELECT minimo, massimo, sconto_percentuale, '.($prezzi_ivati ? 'prezzo_unitario_ivato' : 'prezzo_unitario').' AS prezzo_unitario
+ FROM mg_prezzi_articoli
+ WHERE id_articolo = '.prepare($riga->idarticolo).' AND dir = '.prepare($dir).' AND id_anagrafica = '.prepare($id_anagrafica));
+
+ if ($prezzi) {
+ foreach ($prezzi as $prezzo) {
+ if ($riga->qta >= $prezzo['minimo'] && $riga->qta <= $prezzo['massimo']) {
+ $prezzo_unitario = $prezzo['prezzo_unitario'];
+ $sconto = $prezzo['sconto_percentuale'];
+ continue;
+ }
+
+ if ($prezzo['minimo'] == null && $prezzo['massimo'] == null && $prezzo['prezzo_unitario'] != null) {
+ $prezzo_unitario = $prezzo['prezzo_unitario'];
+ $sconto = $prezzo['sconto_percentuale'];
+ continue;
+ }
+ }
+ }
+ if (empty($prezzo_unitario)) {
+ // Prezzi listini clienti
+ $listino = $dbo->fetchOne('SELECT sconto_percentuale AS sconto_percentuale_listino, '.($prezzi_ivati ? 'prezzo_unitario_ivato' : 'prezzo_unitario').' AS prezzo_unitario_listino
+ FROM mg_listini
+ LEFT JOIN mg_listini_articoli ON mg_listini.id=mg_listini_articoli.id_listino
+ LEFT JOIN an_anagrafiche ON mg_listini.id=an_anagrafiche.id_listino
+ WHERE mg_listini.data_attivazione<=NOW() AND mg_listini_articoli.data_scadenza>=NOW() AND mg_listini.attivo=1 AND id_articolo = '.prepare($riga->idarticolo).' AND dir = '.prepare($dir).' AND idanagrafica = '.prepare($id_anagrafica));
+
+ if ($listino) {
+ $prezzo_unitario = $listino['prezzo_unitario_listino'];
+ $sconto = $listino['sconto_percentuale_listino'];
+ }
+ }
+
+ if ($dir == 'entrata') {
+ $prezzo_unitario = $prezzo_unitario ?: ($prezzi_ivati ? $riga->articolo->prezzo_vendita_ivato : $riga->articolo->prezzo_vendita);
+ $riga->costo_unitario = $riga->articolo->prezzo_acquisto;
+ } else {
+ $prezzo_unitario = $prezzo_unitario ?: $riga->articolo->prezzo_acquisto;
+ }
+ $riga->setPrezzoUnitario($prezzo_unitario, $riga->idiva);
+ }
+
+ // Aggiunta sconto combinato se è presente un piano di sconto nell'anagrafica
+ $join = ($dir == 'entrata' ? 'id_piano_sconto_vendite' : 'id_piano_sconto_acquisti');
+ $piano_sconto = $dbo->fetchOne('SELECT prc_guadagno FROM an_anagrafiche INNER JOIN mg_piani_sconto ON an_anagrafiche.'.$join.'=mg_piani_sconto.id WHERE idanagrafica='.prepare($id_anagrafica));
+ if (!empty($piano_sconto)) {
+ $sconto = parseScontoCombinato($piano_sconto['prc_guadagno'].'+'.$sconto);
+ }
+
+ $riga->setSconto($sconto, 'PRC');
+ $riga->save();
+ ++$numero_totale;
+ }
+
+ if ($numero_totale > 1) {
+ flash()->info(tr('_NUM_ prezzi modificati!', [
+ '_NUM_' => $numero_totale,
+ ]));
+ } elseif ($numero_totale == 1) {
+ flash()->info(tr('_NUM_ prezzo modificato!', [
+ '_NUM_' => $numero_totale,
+ ]));
+ } else {
+ flash()->warning(tr('Nessun prezzo modificato!'));
+ }
+
break;
}
diff --git a/modules/ddt/row-list.php b/modules/ddt/row-list.php
index b3d08acc3..7bb03afa1 100755
--- a/modules/ddt/row-list.php
+++ b/modules/ddt/row-list.php
@@ -388,11 +388,14 @@ if (!$block_edit && sizeof($righe) > 0) {
';
if ($dir == 'entrata') {
echo '
- ';
+ ';
}
echo '
+
';
}
echo '
@@ -430,6 +433,35 @@ function confrontaRighe(id) {
openModal("'.tr('Confronta prezzi').'", "'.$module->fileurl('modals/confronta_righe.php').'?id_module=" + globals.id_module + "&id_record=" + globals.id_record + "&righe=" + id);
}
+function aggiornaRighe(id) {
+ swal({
+ title: "'.tr('Aggiornare prezzi di queste righe?').'",
+ html: "'.tr('Confermando verranno aggiornati i prezzi delle righe secondo i listini ed i prezzi predefiniti collegati all\'articolo e ai piani sconto collegati all\'anagrafica.').'",
+ type: "warning",
+ showCancelButton: true,
+ confirmButtonText: "'.tr('Sì').'"
+ }).then(function () {
+ $.ajax({
+ url: globals.rootdir + "/actions.php",
+ type: "POST",
+ data: {
+ id_module: globals.id_module,
+ id_record: globals.id_record,
+ op: "update-price",
+ righe: id,
+ },
+ success: function (response) {
+ renderMessages();
+ caricaRighe(null);
+ },
+ error: function() {
+ renderMessages();
+ caricaRighe(null);
+ }
+ });
+ }).catch(swal.noop);
+}
+
function rimuoviRiga(id) {
swal({
title: "'.tr('Rimuovere queste righe?').'",
@@ -449,11 +481,12 @@ function rimuoviRiga(id) {
righe: id,
},
success: function (response) {
- content_was_modified = false;
- location.reload();
+ renderMessages();
+ caricaRighe(null);
},
error: function() {
- location.reload();
+ renderMessages();
+ caricaRighe(null);
}
});
}).catch(swal.noop);
@@ -478,10 +511,12 @@ function duplicaRiga(id) {
righe: id,
},
success: function (response) {
- location.reload();
+ renderMessages();
+ caricaRighe(null);
},
error: function() {
- location.reload();
+ renderMessages();
+ caricaRighe(null);
}
});
}).catch(swal.noop);
@@ -534,10 +569,12 @@ $(".check").on("change", function() {
$("#elimina_righe").removeClass("disabled");
$("#duplica_righe").removeClass("disabled");
$("#confronta_righe").removeClass("disabled");
+ $("#aggiorna_righe").removeClass("disabled");
} else {
$("#elimina_righe").addClass("disabled");
$("#duplica_righe").addClass("disabled");
$("#confronta_righe").addClass("disabled");
+ $("#aggiorna_righe").removeClass("disabled");
}
});
diff --git a/modules/fatture/actions.php b/modules/fatture/actions.php
index 7a864da5c..4eebe320c 100755
--- a/modules/fatture/actions.php
+++ b/modules/fatture/actions.php
@@ -1055,19 +1055,15 @@ switch ($op) {
break;
case 'edit-price':
- $righe = $post['righe'];
+ $righe = (array) post('righe');
$numero_totale = 0;
foreach ($righe as $riga) {
if (($riga['id']) != null) {
$articolo = Articolo::find($riga['id']);
- } else {
- $originale = ArticoloOriginale::find(post('idarticolo'));
- $articolo = Articolo::build($fattura, $originale);
- $articolo->id_dettaglio_fornitore = post('id_dettaglio_fornitore') ?: null;
}
- if ($articolo['prezzo_unitario'] != $riga['price']) {
+ if ($articolo->prezzo_unitario != $riga['price']) {
$articolo->setPrezzoUnitario($riga['price'], $articolo->idiva);
$articolo->save();
++$numero_totale;
@@ -1086,6 +1082,87 @@ switch ($op) {
flash()->warning(tr('Nessun prezzo modificato!'));
}
+ break;
+
+ case 'update-price':
+ $id_anagrafica = $fattura->idanagrafica;
+ $prezzi_ivati = setting('Utilizza prezzi di vendita comprensivi di IVA');
+ $numero_totale = 0;
+ $id_righe = (array) post('righe');
+
+ foreach ($id_righe as $id_riga) {
+ $riga = Articolo::find($id_riga) ?: Riga::find($id_riga);
+
+ // CALCOLO PREZZO UNITARIO
+ $prezzo_unitario = 0;
+ $sconto = 0;
+ if ($riga->isArticolo()) {
+ // Prezzi netti clienti / listino fornitore
+ $prezzi = $dbo->fetchArray('SELECT minimo, massimo, sconto_percentuale, '.($prezzi_ivati ? 'prezzo_unitario_ivato' : 'prezzo_unitario').' AS prezzo_unitario
+ FROM mg_prezzi_articoli
+ WHERE id_articolo = '.prepare($riga->idarticolo).' AND dir = '.prepare($dir).' AND id_anagrafica = '.prepare($id_anagrafica));
+
+ if ($prezzi) {
+ foreach ($prezzi as $prezzo) {
+ if ($riga->qta >= $prezzo['minimo'] && $riga->qta <= $prezzo['massimo']) {
+ $prezzo_unitario = $prezzo['prezzo_unitario'];
+ $sconto = $prezzo['sconto_percentuale'];
+ continue;
+ }
+
+ if ($prezzo['minimo'] == null && $prezzo['massimo'] == null && $prezzo['prezzo_unitario'] != null) {
+ $prezzo_unitario = $prezzo['prezzo_unitario'];
+ $sconto = $prezzo['sconto_percentuale'];
+ continue;
+ }
+ }
+ }
+ if (empty($prezzo_unitario)) {
+ // Prezzi listini clienti
+ $listino = $dbo->fetchOne('SELECT sconto_percentuale AS sconto_percentuale_listino, '.($prezzi_ivati ? 'prezzo_unitario_ivato' : 'prezzo_unitario').' AS prezzo_unitario_listino
+ FROM mg_listini
+ LEFT JOIN mg_listini_articoli ON mg_listini.id=mg_listini_articoli.id_listino
+ LEFT JOIN an_anagrafiche ON mg_listini.id=an_anagrafiche.id_listino
+ WHERE mg_listini.data_attivazione<=NOW() AND mg_listini_articoli.data_scadenza>=NOW() AND mg_listini.attivo=1 AND id_articolo = '.prepare($riga->idarticolo).' AND dir = '.prepare($dir).' AND idanagrafica = '.prepare($id_anagrafica));
+
+ if ($listino) {
+ $prezzo_unitario = $listino['prezzo_unitario_listino'];
+ $sconto = $listino['sconto_percentuale_listino'];
+ }
+ }
+ if ($dir == 'entrata') {
+ $prezzo_unitario = $prezzo_unitario ?: ($prezzi_ivati ? $riga->articolo->prezzo_vendita_ivato : $riga->articolo->prezzo_vendita);
+ $riga->costo_unitario = $riga->articolo->prezzo_acquisto;
+ } else {
+ $prezzo_unitario = $prezzo_unitario ?: $riga->articolo->prezzo_acquisto;
+ }
+ $riga->setPrezzoUnitario($prezzo_unitario, $riga->idiva);
+ }
+
+ // Aggiunta sconto combinato se è presente un piano di sconto nell'anagrafica
+ $join = ($dir == 'entrata' ? 'id_piano_sconto_vendite' : 'id_piano_sconto_acquisti');
+ $piano_sconto = $dbo->fetchOne('SELECT prc_guadagno FROM an_anagrafiche INNER JOIN mg_piani_sconto ON an_anagrafiche.'.$join.'=mg_piani_sconto.id WHERE idanagrafica='.prepare($id_anagrafica));
+ if (!empty($piano_sconto)) {
+ $sconto = parseScontoCombinato($piano_sconto['prc_guadagno'].'+'.$sconto);
+ }
+
+ $riga->setSconto($sconto, 'PRC');
+ $riga->save();
+ ++$numero_totale;
+ }
+
+ if ($numero_totale > 1) {
+ flash()->info(tr('_NUM_ prezzi modificati!', [
+ '_NUM_' => $numero_totale,
+ ]));
+ } elseif ($numero_totale == 1) {
+ flash()->info(tr('_NUM_ prezzo modificato!', [
+ '_NUM_' => $numero_totale,
+ ]));
+ } else {
+ flash()->warning(tr('Nessun prezzo modificato!'));
+ }
+
break;
}
diff --git a/modules/fatture/row-list.php b/modules/fatture/row-list.php
index 285b9a607..cd57ac1b7 100755
--- a/modules/fatture/row-list.php
+++ b/modules/fatture/row-list.php
@@ -507,11 +507,14 @@ if (!$block_edit && sizeof($righe) > 0) {
';
if ($direzione == 'entrata') {
echo '
- ';
+ ';
}
echo '
+
';
}
echo '
@@ -549,6 +552,35 @@ function confrontaRighe(id) {
openModal("'.tr('Confronta prezzi').'", "'.$module->fileurl('modals/confronta_righe.php').'?id_module=" + globals.id_module + "&id_record=" + globals.id_record + "&righe=" + id);
}
+function aggiornaRighe(id) {
+ swal({
+ title: "'.tr('Aggiornare prezzi di queste righe?').'",
+ html: "'.tr('Confermando verranno aggiornati i prezzi delle righe secondo i listini ed i prezzi predefiniti collegati all\'articolo e ai piani sconto collegati all\'anagrafica.').'",
+ type: "warning",
+ showCancelButton: true,
+ confirmButtonText: "'.tr('Sì').'"
+ }).then(function () {
+ $.ajax({
+ url: globals.rootdir + "/actions.php",
+ type: "POST",
+ data: {
+ id_module: globals.id_module,
+ id_record: globals.id_record,
+ op: "update-price",
+ righe: id,
+ },
+ success: function (response) {
+ renderMessages();
+ caricaRighe(null);
+ },
+ error: function() {
+ renderMessages();
+ caricaRighe(null);
+ }
+ });
+ }).catch(swal.noop);
+}
+
function rimuoviRiga(id) {
swal({
title: "'.tr('Rimuovere queste righe?').'",
@@ -568,11 +600,12 @@ function rimuoviRiga(id) {
righe: id,
},
success: function (response) {
- content_was_modified = false;
- location.reload();
+ renderMessages();
+ caricaRighe(null);
},
error: function() {
- location.reload();
+ renderMessages();
+ caricaRighe(null);
}
});
}).catch(swal.noop);
@@ -597,10 +630,12 @@ function duplicaRiga(id) {
righe: id,
},
success: function (response) {
- location.reload();
+ renderMessages();
+ caricaRighe(null);
},
error: function() {
- location.reload();
+ renderMessages();
+ caricaRighe(null);
}
});
}).catch(swal.noop);
@@ -653,10 +688,12 @@ $(".check").on("change", function() {
$("#elimina_righe").removeClass("disabled");
$("#duplica_righe").removeClass("disabled");
$("#confronta_righe").removeClass("disabled");
+ $("#aggiorna_righe").removeClass("disabled");
} else {
$("#elimina_righe").addClass("disabled");
$("#duplica_righe").addClass("disabled");
$("#confronta_righe").addClass("disabled");
+ $("#aggiorna_righe").removeClass("disabled");
}
});
diff --git a/modules/interventi/actions.php b/modules/interventi/actions.php
index 14fbdac10..29346202a 100644
--- a/modules/interventi/actions.php
+++ b/modules/interventi/actions.php
@@ -1145,19 +1145,15 @@ switch (post('op')) {
break;
case 'edit-price':
- $righe = $post['righe'];
+ $righe = (array) post('righe');
$numero_totale = 0;
foreach ($righe as $riga) {
if (($riga['id']) != null) {
$articolo = Articolo::find($riga['id']);
- } else {
- $originale = ArticoloOriginale::find(post('idarticolo'));
- $articolo = Articolo::build($fattura, $originale);
- $articolo->id_dettaglio_fornitore = post('id_dettaglio_fornitore') ?: null;
}
- if ($articolo['prezzo_unitario'] != $riga['price']) {
+ if ($articolo->prezzo_unitario != $riga['price']) {
$articolo->setPrezzoUnitario($riga['price'], $articolo->idiva);
$articolo->save();
++$numero_totale;
@@ -1176,5 +1172,85 @@ switch (post('op')) {
flash()->warning(tr('Nessun prezzo modificato!'));
}
+ break;
+
+ case 'update-price':
+ $dir = 'entrata';
+ $id_anagrafica = $intervento->idanagrafica;
+ $prezzi_ivati = setting('Utilizza prezzi di vendita comprensivi di IVA');
+ $numero_totale = 0;
+ $id_righe = (array) post('righe');
+
+ foreach ($id_righe as $id_riga) {
+ $riga = Articolo::find($id_riga) ?: Riga::find($id_riga);
+
+ // CALCOLO PREZZO UNITARIO
+ $prezzo_unitario = 0;
+ $sconto = 0;
+ if ($riga->isArticolo()) {
+ // Prezzi netti clienti / listino fornitore
+ $prezzi = $dbo->fetchArray('SELECT minimo, massimo, sconto_percentuale, '.($prezzi_ivati ? 'prezzo_unitario_ivato' : 'prezzo_unitario').' AS prezzo_unitario
+ FROM mg_prezzi_articoli
+ WHERE id_articolo = '.prepare($riga->idarticolo).' AND dir = '.prepare($dir).' AND id_anagrafica = '.prepare($id_anagrafica));
+
+ if ($prezzi) {
+ foreach ($prezzi as $prezzo) {
+ if ($riga->qta >= $prezzo['minimo'] && $riga->qta <= $prezzo['massimo']) {
+ $prezzo_unitario = $prezzo['prezzo_unitario'];
+ $sconto = $prezzo['sconto_percentuale'];
+ continue;
+ }
+
+ if ($prezzo['minimo'] == null && $prezzo['massimo'] == null && $prezzo['prezzo_unitario'] != null) {
+ $prezzo_unitario = $prezzo['prezzo_unitario'];
+ $sconto = $prezzo['sconto_percentuale'];
+ continue;
+ }
+ }
+ }
+ if (empty($prezzo_unitario)) {
+ // Prezzi listini clienti
+ $listino = $dbo->fetchOne('SELECT sconto_percentuale AS sconto_percentuale_listino, '.($prezzi_ivati ? 'prezzo_unitario_ivato' : 'prezzo_unitario').' AS prezzo_unitario_listino
+ FROM mg_listini
+ LEFT JOIN mg_listini_articoli ON mg_listini.id=mg_listini_articoli.id_listino
+ LEFT JOIN an_anagrafiche ON mg_listini.id=an_anagrafiche.id_listino
+ WHERE mg_listini.data_attivazione<=NOW() AND mg_listini_articoli.data_scadenza>=NOW() AND mg_listini.attivo=1 AND id_articolo = '.prepare($riga->idarticolo).' AND dir = '.prepare($dir).' AND idanagrafica = '.prepare($id_anagrafica));
+
+ if ($listino) {
+ $prezzo_unitario = $listino['prezzo_unitario_listino'];
+ $sconto = $listino['sconto_percentuale_listino'];
+ }
+ }
+ $prezzo_unitario = $prezzo_unitario ?: ($prezzi_ivati ? $riga->articolo->prezzo_vendita_ivato : $riga->articolo->prezzo_vendita);
+ $riga->setPrezzoUnitario($prezzo_unitario, $riga->idiva);
+
+ if ($dir == 'entrata') {
+ $riga->costo_unitario = $riga->articolo->prezzo_acquisto;
+ }
+ }
+
+ // Aggiunta sconto combinato se è presente un piano di sconto nell'anagrafica
+ $piano_sconto = $dbo->fetchOne('SELECT prc_guadagno FROM an_anagrafiche INNER JOIN mg_piani_sconto ON an_anagrafiche.id_piano_sconto_vendite=mg_piani_sconto.id WHERE idanagrafica='.prepare($id_anagrafica));
+ if (!empty($piano_sconto)) {
+ $sconto = parseScontoCombinato($piano_sconto['prc_guadagno'].'+'.$sconto);
+ }
+
+ $riga->setSconto($sconto, 'PRC');
+ $riga->save();
+ ++$numero_totale;
+ }
+
+ if ($numero_totale > 1) {
+ flash()->info(tr('_NUM_ prezzi modificati!', [
+ '_NUM_' => $numero_totale,
+ ]));
+ } elseif ($numero_totale == 1) {
+ flash()->info(tr('_NUM_ prezzo modificato!', [
+ '_NUM_' => $numero_totale,
+ ]));
+ } else {
+ flash()->warning(tr('Nessun prezzo modificato!'));
+ }
+
break;
}
diff --git a/modules/interventi/row-list.php b/modules/interventi/row-list.php
index 4dd373e7d..79abce077 100755
--- a/modules/interventi/row-list.php
+++ b/modules/interventi/row-list.php
@@ -279,14 +279,15 @@ if (!$block_edit && sizeof($righe) > 0) {
';
- if ($direzione == 'entrata') {
- echo '
- ';
- }
- echo '
+
+
+
+
+
';
}
echo '
@@ -324,6 +325,35 @@ function confrontaRighe(id) {
openModal("'.tr('Confronta prezzi').'", "'.$module->fileurl('modals/confronta_righe.php').'?id_module=" + globals.id_module + "&id_record=" + globals.id_record + "&righe=" + id);
}
+function aggiornaRighe(id) {
+ swal({
+ title: "'.tr('Aggiornare prezzi di queste righe?').'",
+ html: "'.tr('Confermando verranno aggiornati i prezzi delle righe secondo i listini ed i prezzi predefiniti collegati all\'articolo e ai piani sconto collegati all\'anagrafica.').'",
+ type: "warning",
+ showCancelButton: true,
+ confirmButtonText: "'.tr('Sì').'"
+ }).then(function () {
+ $.ajax({
+ url: globals.rootdir + "/actions.php",
+ type: "POST",
+ data: {
+ id_module: globals.id_module,
+ id_record: globals.id_record,
+ op: "update-price",
+ righe: id,
+ },
+ success: function (response) {
+ renderMessages();
+ caricaRighe(null);
+ },
+ error: function() {
+ renderMessages();
+ caricaRighe(null);
+ }
+ });
+ }).catch(swal.noop);
+}
+
function rimuoviRiga(id) {
swal({
title: "'.tr('Rimuovere queste righe?').'",
@@ -343,11 +373,12 @@ function rimuoviRiga(id) {
righe: id,
},
success: function (response) {
- content_was_modified = false;
- location.reload();
+ renderMessages();
+ caricaRighe(null);
},
error: function() {
- location.reload();
+ renderMessages();
+ caricaRighe(null);
}
});
}).catch(swal.noop);
@@ -372,10 +403,12 @@ function duplicaRiga(id) {
righe: id,
},
success: function (response) {
- location.reload();
+ renderMessages();
+ caricaRighe(null);
},
error: function() {
- location.reload();
+ renderMessages();
+ caricaRighe(null);
}
});
}).catch(swal.noop);
@@ -420,10 +453,12 @@ $(".check").on("change", function() {
$("#elimina_righe").removeClass("disabled");
$("#duplica_righe").removeClass("disabled");
$("#confronta_righe").removeClass("disabled");
+ $("#aggiorna_righe").removeClass("disabled");
} else {
$("#elimina_righe").addClass("disabled");
$("#duplica_righe").addClass("disabled");
$("#confronta_righe").addClass("disabled");
+ $("#aggiorna_righe").removeClass("disabled");
}
});
diff --git a/modules/ordini/actions.php b/modules/ordini/actions.php
index c23b2d52f..55066f6ea 100755
--- a/modules/ordini/actions.php
+++ b/modules/ordini/actions.php
@@ -716,19 +716,15 @@ switch (post('op')) {
break;
case 'edit-price':
- $righe = $post['righe'];
+ $righe = (array) post('righe');
$numero_totale = 0;
foreach ($righe as $riga) {
if (($riga['id']) != null) {
$articolo = Articolo::find($riga['id']);
- } else {
- $originale = ArticoloOriginale::find(post('idarticolo'));
- $articolo = Articolo::build($fattura, $originale);
- $articolo->id_dettaglio_fornitore = post('id_dettaglio_fornitore') ?: null;
}
- if ($articolo['prezzo_unitario'] != $riga['price']) {
+ if ($articolo->prezzo_unitario != $riga['price']) {
$articolo->setPrezzoUnitario($riga['price'], $articolo->idiva);
$articolo->save();
++$numero_totale;
@@ -749,42 +745,84 @@ switch (post('op')) {
break;
- // Duplica ordine
- case 'copy':
- $new = $ordine->replicate();
- $new->numero = Ordine::getNextNumero(post('data'), $ordine->tipo->dir, $ordine->id_segment);
- $new->numero_esterno = Ordine::getNextNumeroSecondario(post('data'), $ordine->tipo->dir, $ordine->id_segment);
- $new->idstatoordine = post('idstatoordine');
- $new->data = post('data');
- $new->save();
+ case 'update-price':
+ $id_anagrafica = $ordine->idanagrafica;
+ $prezzi_ivati = setting('Utilizza prezzi di vendita comprensivi di IVA');
+ $numero_totale = 0;
+ $id_righe = (array) post('righe');
- $id_record = $new->id;
+ foreach ($id_righe as $id_riga) {
+ $riga = Articolo::find($id_riga) ?: Riga::find($id_riga);
- if (!empty(post('copia_righe'))) {
- $righe = $ordine->getRighe();
- foreach ($righe as $riga) {
- $new_riga = $riga->replicate();
- $new_riga->setDocument($new);
+ // CALCOLO PREZZO UNITARIO
+ $prezzo_unitario = 0;
+ $sconto = 0;
+ if ($riga->isArticolo()) {
+ // Prezzi netti clienti / listino fornitore
+ $prezzi = $dbo->fetchArray('SELECT minimo, massimo, sconto_percentuale, '.($prezzi_ivati ? 'prezzo_unitario_ivato' : 'prezzo_unitario').' AS prezzo_unitario
+ FROM mg_prezzi_articoli
+ WHERE id_articolo = '.prepare($riga->idarticolo).' AND dir = '.prepare($dir).' AND id_anagrafica = '.prepare($id_anagrafica));
- $new_riga->qta_evasa = 0;
- $new_riga->save();
+ if ($prezzi) {
+ foreach ($prezzi as $prezzo) {
+ if ($riga->qta >= $prezzo['minimo'] && $riga->qta <= $prezzo['massimo']) {
+ $prezzo_unitario = $prezzo['prezzo_unitario'];
+ $sconto = $prezzo['sconto_percentuale'];
+ continue;
+ }
+
+ if ($prezzo['minimo'] == null && $prezzo['massimo'] == null && $prezzo['prezzo_unitario'] != null) {
+ $prezzo_unitario = $prezzo['prezzo_unitario'];
+ $sconto = $prezzo['sconto_percentuale'];
+ continue;
+ }
+ }
+ }
+ if (empty($prezzo_unitario)) {
+ // Prezzi listini clienti
+ $listino = $dbo->fetchOne('SELECT sconto_percentuale AS sconto_percentuale_listino, '.($prezzi_ivati ? 'prezzo_unitario_ivato' : 'prezzo_unitario').' AS prezzo_unitario_listino
+ FROM mg_listini
+ LEFT JOIN mg_listini_articoli ON mg_listini.id=mg_listini_articoli.id_listino
+ LEFT JOIN an_anagrafiche ON mg_listini.id=an_anagrafiche.id_listino
+ WHERE mg_listini.data_attivazione<=NOW() AND mg_listini_articoli.data_scadenza>=NOW() AND mg_listini.attivo=1 AND id_articolo = '.prepare($riga->idarticolo).' AND dir = '.prepare($dir).' AND idanagrafica = '.prepare($id_anagrafica));
+
+ if ($listino) {
+ $prezzo_unitario = $listino['prezzo_unitario_listino'];
+ $sconto = $listino['sconto_percentuale_listino'];
+ }
+ }
+ if ($dir == 'entrata') {
+ $prezzo_unitario = $prezzo_unitario ?: ($prezzi_ivati ? $riga->articolo->prezzo_vendita_ivato : $riga->articolo->prezzo_vendita);
+ $riga->costo_unitario = $riga->articolo->prezzo_acquisto;
+ } else {
+ $prezzo_unitario = $prezzo_unitario ?: $riga->articolo->prezzo_acquisto;
+ }
+ $riga->setPrezzoUnitario($prezzo_unitario, $riga->idiva);
}
+
+ // Aggiunta sconto combinato se è presente un piano di sconto nell'anagrafica
+ $join = ($dir == 'entrata' ? 'id_piano_sconto_vendite' : 'id_piano_sconto_acquisti');
+ $piano_sconto = $dbo->fetchOne('SELECT prc_guadagno FROM an_anagrafiche INNER JOIN mg_piani_sconto ON an_anagrafiche.'.$join.'=mg_piani_sconto.id WHERE idanagrafica='.prepare($id_anagrafica));
+ if (!empty($piano_sconto)) {
+ $sconto = parseScontoCombinato($piano_sconto['prc_guadagno'].'+'.$sconto);
+ }
+
+ $riga->setSconto($sconto, 'PRC');
+ $riga->save();
+ ++$numero_totale;
}
- //copia allegati
- if (!empty(post('copia_allegati'))) {
- $allegati = $ordine->uploads();
- foreach ($allegati as $allegato) {
- $allegato->copia([
- 'id_module' => $new->getModule()->id,
- 'id_record' => $new->id,
- ]);
- }
+ if ($numero_totale > 1) {
+ flash()->info(tr('_NUM_ prezzi modificati!', [
+ '_NUM_' => $numero_totale,
+ ]));
+ } elseif ($numero_totale == 1) {
+ flash()->info(tr('_NUM_ prezzo modificato!', [
+ '_NUM_' => $numero_totale,
+ ]));
+ } else {
+ flash()->warning(tr('Nessun prezzo modificato!'));
}
- flash()->info(tr('Aggiunto ordine numero _NUM_!', [
- '_NUM_' => $new->numero,
- ]));
-
break;
-}
+}
\ No newline at end of file
diff --git a/modules/ordini/row-list.php b/modules/ordini/row-list.php
index 15ef3c5f0..387020154 100755
--- a/modules/ordini/row-list.php
+++ b/modules/ordini/row-list.php
@@ -434,11 +434,14 @@ if (!$block_edit && sizeof($righe) > 0) {
';
if ($direzione == 'entrata') {
echo '
- ';
+ ';
}
echo '
+
';
}
echo '
@@ -476,6 +479,36 @@ function confrontaRighe(id) {
openModal("'.tr('Confronta prezzi').'", "'.$module->fileurl('modals/confronta_righe.php').'?id_module=" + globals.id_module + "&id_record=" + globals.id_record + "&righe=" + id);
}
+function aggiornaRighe(id) {
+ swal({
+ title: "'.tr('Aggiornare prezzi di queste righe?').'",
+ html: "'.tr('Confermando verranno aggiornati i prezzi delle righe secondo i listini ed i prezzi predefiniti collegati all\'articolo e ai piani sconto collegati all\'anagrafica.').'",
+ type: "warning",
+ showCancelButton: true,
+ confirmButtonText: "'.tr('Sì').'"
+ }).then(function () {
+ $.ajax({
+ url: globals.rootdir + "/actions.php",
+ type: "POST",
+ dataType: "json",
+ data: {
+ id_module: globals.id_module,
+ id_record: globals.id_record,
+ op: "update-price",
+ righe: id,
+ },
+ success: function (response) {
+ renderMessages();
+ caricaRighe(null);
+ },
+ error: function() {
+ renderMessages();
+ caricaRighe(null);
+ }
+ });
+ }).catch(swal.noop);
+}
+
function rimuoviRiga(id) {
swal({
title: "'.tr('Rimuovere queste righe?').'",
@@ -495,11 +528,12 @@ function rimuoviRiga(id) {
righe: id,
},
success: function (response) {
- content_was_modified = false;
- location.reload();
+ renderMessages();
+ caricaRighe(null);
},
error: function() {
- location.reload();
+ renderMessages();
+ caricaRighe(null);
}
});
}).catch(swal.noop);
@@ -524,10 +558,12 @@ function duplicaRiga(id) {
righe: id,
},
success: function (response) {
- location.reload();
+ renderMessages();
+ caricaRighe(null);
},
error: function() {
- location.reload();
+ renderMessages();
+ caricaRighe(null);
}
});
}).catch(swal.noop);
@@ -580,10 +616,12 @@ $(".check").on("change", function() {
$("#elimina_righe").removeClass("disabled");
$("#duplica_righe").removeClass("disabled");
$("#confronta_righe").removeClass("disabled");
+ $("#aggiorna_righe").removeClass("disabled");
} else {
$("#elimina_righe").addClass("disabled");
$("#duplica_righe").addClass("disabled");
$("#confronta_righe").addClass("disabled");
+ $("#aggiorna_righe").removeClass("disabled");
}
});
diff --git a/modules/preventivi/actions.php b/modules/preventivi/actions.php
index 0b447277f..ef0bdfcef 100755
--- a/modules/preventivi/actions.php
+++ b/modules/preventivi/actions.php
@@ -516,19 +516,15 @@ switch (post('op')) {
break;
case 'edit-price':
- $righe = $post['righe'];
+ $righe = (array) post('righe');
$numero_totale = 0;
foreach ($righe as $riga) {
if (($riga['id']) != null) {
$articolo = Articolo::find($riga['id']);
- } else {
- $originale = ArticoloOriginale::find(post('idarticolo'));
- $articolo = Articolo::build($fattura, $originale);
- $articolo->id_dettaglio_fornitore = post('id_dettaglio_fornitore') ?: null;
}
- if ($articolo['prezzo_unitario'] != $riga['price']) {
+ if ($articolo->prezzo_unitario != $riga['price']) {
$articolo->setPrezzoUnitario($riga['price'], $articolo->idiva);
$articolo->save();
++$numero_totale;
@@ -548,4 +544,84 @@ switch (post('op')) {
}
break;
-}
+
+ case 'update-price':
+ $dir = 'entrata';
+ $id_anagrafica = $preventivo->idanagrafica;
+ $prezzi_ivati = setting('Utilizza prezzi di vendita comprensivi di IVA');
+ $numero_totale = 0;
+ $id_righe = (array) post('righe');
+
+ foreach ($id_righe as $id_riga) {
+ $riga = Articolo::find($id_riga) ?: Riga::find($id_riga);
+
+ // CALCOLO PREZZO UNITARIO
+ $prezzo_unitario = 0;
+ $sconto = 0;
+ if ($riga->isArticolo()) {
+ // Prezzi netti clienti / listino fornitore
+ $prezzi = $dbo->fetchArray('SELECT minimo, massimo, sconto_percentuale, '.($prezzi_ivati ? 'prezzo_unitario_ivato' : 'prezzo_unitario').' AS prezzo_unitario
+ FROM mg_prezzi_articoli
+ WHERE id_articolo = '.prepare($riga->idarticolo).' AND dir = '.prepare($dir).' AND id_anagrafica = '.prepare($id_anagrafica));
+
+ if ($prezzi) {
+ foreach ($prezzi as $prezzo) {
+ if ($riga->qta >= $prezzo['minimo'] && $riga->qta <= $prezzo['massimo']) {
+ $prezzo_unitario = $prezzo['prezzo_unitario'];
+ $sconto = $prezzo['sconto_percentuale'];
+ continue;
+ }
+
+ if ($prezzo['minimo'] == null && $prezzo['massimo'] == null && $prezzo['prezzo_unitario'] != null) {
+ $prezzo_unitario = $prezzo['prezzo_unitario'];
+ $sconto = $prezzo['sconto_percentuale'];
+ continue;
+ }
+ }
+ }
+ if (empty($prezzo_unitario)) {
+ // Prezzi listini clienti
+ $listino = $dbo->fetchOne('SELECT sconto_percentuale AS sconto_percentuale_listino, '.($prezzi_ivati ? 'prezzo_unitario_ivato' : 'prezzo_unitario').' AS prezzo_unitario_listino
+ FROM mg_listini
+ LEFT JOIN mg_listini_articoli ON mg_listini.id=mg_listini_articoli.id_listino
+ LEFT JOIN an_anagrafiche ON mg_listini.id=an_anagrafiche.id_listino
+ WHERE mg_listini.data_attivazione<=NOW() AND mg_listini_articoli.data_scadenza>=NOW() AND mg_listini.attivo=1 AND id_articolo = '.prepare($riga->idarticolo).' AND dir = '.prepare($dir).' AND idanagrafica = '.prepare($id_anagrafica));
+
+ if ($listino) {
+ $prezzo_unitario = $listino['prezzo_unitario_listino'];
+ $sconto = $listino['sconto_percentuale_listino'];
+ }
+ }
+ $prezzo_unitario = $prezzo_unitario ?: ($prezzi_ivati ? $riga->articolo->prezzo_vendita_ivato : $riga->articolo->prezzo_vendita);
+ $riga->setPrezzoUnitario($prezzo_unitario, $riga->idiva);
+
+ if ($dir == 'entrata') {
+ $riga->costo_unitario = $riga->articolo->prezzo_acquisto;
+ }
+ }
+
+ // Aggiunta sconto combinato se è presente un piano di sconto nell'anagrafica
+ $piano_sconto = $dbo->fetchOne('SELECT prc_guadagno FROM an_anagrafiche INNER JOIN mg_piani_sconto ON an_anagrafiche.id_piano_sconto_vendite=mg_piani_sconto.id WHERE idanagrafica='.prepare($id_anagrafica));
+ if (!empty($piano_sconto)) {
+ $sconto = parseScontoCombinato($piano_sconto['prc_guadagno'].'+'.$sconto);
+ }
+
+ $riga->setSconto($sconto, 'PRC');
+ $riga->save();
+ ++$numero_totale;
+ }
+
+ if ($numero_totale > 1) {
+ flash()->info(tr('_NUM_ prezzi modificati!', [
+ '_NUM_' => $numero_totale,
+ ]));
+ } elseif ($numero_totale == 1) {
+ flash()->info(tr('_NUM_ prezzo modificato!', [
+ '_NUM_' => $numero_totale,
+ ]));
+ } else {
+ flash()->warning(tr('Nessun prezzo modificato!'));
+ }
+
+ break;
+}
\ No newline at end of file
diff --git a/modules/preventivi/row-list.php b/modules/preventivi/row-list.php
index 6509aef78..d6732ef08 100755
--- a/modules/preventivi/row-list.php
+++ b/modules/preventivi/row-list.php
@@ -453,7 +453,11 @@ if (!$block_edit && sizeof($righe) > 0) {
+
+
';
}
@@ -492,6 +496,36 @@ function confrontaRighe(id) {
openModal("'.tr('Confronta prezzi').'", "'.$module->fileurl('modals/confronta_righe.php').'?id_module=" + globals.id_module + "&id_record=" + globals.id_record + "&righe=" + id);
}
+function aggiornaRighe(id) {
+ swal({
+ title: "'.tr('Aggiornare prezzi di queste righe?').'",
+ html: "'.tr('Confermando verranno aggiornati i prezzi delle righe secondo i listini ed i prezzi predefiniti collegati all\'articolo e ai piani sconto collegati all\'anagrafica.').'",
+ type: "warning",
+ showCancelButton: true,
+ confirmButtonText: "'.tr('Sì').'"
+ }).then(function () {
+ $.ajax({
+ url: globals.rootdir + "/actions.php",
+ type: "POST",
+ dataType: "json",
+ data: {
+ id_module: globals.id_module,
+ id_record: globals.id_record,
+ op: "update-price",
+ righe: id,
+ },
+ success: function (response) {
+ renderMessages();
+ caricaRighe(null);
+ },
+ error: function() {
+ renderMessages();
+ caricaRighe(null);
+ }
+ });
+ }).catch(swal.noop);
+}
+
function rimuoviRiga(id) {
swal({
title: "'.tr('Rimuovere queste righe?').'",
@@ -511,11 +545,12 @@ function rimuoviRiga(id) {
righe: id,
},
success: function (response) {
- content_was_modified = false;
- location.reload();
+ renderMessages();
+ caricaRighe(null);
},
error: function() {
- location.reload();
+ renderMessages();
+ caricaRighe(null);
}
});
}).catch(swal.noop);
@@ -540,10 +575,12 @@ function duplicaRiga(id) {
righe: id,
},
success: function (response) {
- location.reload();
+ renderMessages();
+ caricaRighe(null);
},
error: function() {
- location.reload();
+ renderMessages();
+ caricaRighe(null);
}
});
}).catch(swal.noop);
@@ -580,10 +617,12 @@ $(".check").on("change", function() {
$("#elimina_righe").removeClass("disabled");
$("#duplica_righe").removeClass("disabled");
$("#confronta_righe").removeClass("disabled");
+ $("#aggiorna_righe").removeClass("disabled");
} else {
$("#elimina_righe").addClass("disabled");
$("#duplica_righe").addClass("disabled");
$("#confronta_righe").addClass("disabled");
+ $("#aggiorna_righe").removeClass("disabled");
}
});