diff --git a/modules/articoli/bulk.php b/modules/articoli/bulk.php index b2e74bbb2..07c2c03ee 100644 --- a/modules/articoli/bulk.php +++ b/modules/articoli/bulk.php @@ -49,11 +49,14 @@ switch (post('op')) { break; case 'change-vendita': + $percentuale = post('percentuale'); + $prezzo_partenza = post('prezzo_partenza'); + foreach ($id_records as $id) { $articolo = Articolo::find($id); - $percentuale = post('percentuale'); + $prezzo_partenza = post('prezzo_partenza')=='vendita' ? $articolo->prezzo_vendita : $articolo->prezzo_acquisto; - $new_prezzo_vendita = $articolo->prezzo_vendita + ($articolo->prezzo_vendita * $percentuale / 100); + $new_prezzo_vendita = $prezzo_partenza + ($prezzo_partenza * $percentuale / 100); $articolo->setPrezzoVendita($new_prezzo_vendita, $articolo->idiva_vendita); $articolo->save(); } @@ -167,6 +170,51 @@ switch (post('op')) { download($file, 'articoli.csv'); break; + + case 'change-categoria': + $categoria = post('id_categoria'); + $n_articoli = 0; + + foreach ($id_records as $id) { + $articolo = Articolo::find($id); + $articolo->id_categoria = $categoria; + $articolo->id_sottocategoria = null; + $articolo->save(); + + ++$n_articoli; + } + + if ($n_articoli > 0) { + flash()->info(tr('Categoria cambiata a _NUM_ articoli!', [ + '_NUM_' => $n_articoli, + ])); + } else { + flash()->warning(tr('Nessun articolo modificato!')); + } + + break; + + case 'change-iva': + $iva = post('id_iva'); + $n_articoli = 0; + + foreach ($id_records as $id) { + $articolo = Articolo::find($id); + $articolo->idiva_vendita = $iva; + $articolo->save(); + + ++$n_articoli; + } + + if ($n_articoli > 0) { + flash()->info(tr('Categoria cambiata a _NUM_ articoli!', [ + '_NUM_' => $n_articoli, + ])); + } else { + flash()->warning(tr('Nessun articolo modificato!')); + } + + break; } if (App::debug()) { @@ -205,7 +253,9 @@ $operations['change-vendita'] = [ 'text' => ' '.tr('Aggiorna prezzo di vendita').'', 'data' => [ 'title' => tr('Aggiornare il prezzo di vendita per gli articoli selezionati?'), - 'msg' => 'Per indicare uno sconto inserire la percentuale con il segno meno, al contrario per un rincaro inserire la percentuale senza segno.

{[ "type": "number", "label": "'.tr('Percentuale sconto/magg.').'", "name": "percentuale", "required": 1, "icon-after": "%" ]}', + 'msg' => 'Per indicare uno sconto inserire la percentuale con il segno meno, al contrario per un rincaro inserire la percentuale senza segno.

+ {[ "type": "select", "label": "'.tr('Partendo da:').'", "name": "prezzo_partenza", "required": 1, "values": "list=\"acquisto\":\"Prezzo di acquisto\",\"vendita\":\"Prezzo di vendita\"" ]}
+ {[ "type": "number", "label": "'.tr('Percentuale sconto/magg.').'", "name": "percentuale", "required": 1, "icon-after": "%" ]}', 'button' => tr('Procedi'), 'class' => 'btn btn-lg btn-warning', 'blank' => false, @@ -250,4 +300,26 @@ $operations['crea-preventivo'] = [ ], ]; +$operations['change-categoria'] = [ + 'text' => ' '.tr('Aggiorna categoria').'', + 'data' => [ + 'title' => tr('Cambiare la categoria?'), + 'msg' => tr('Per ciascun articolo selezionato, verrĂ  modificata la categoria').' +

{[ "type": "select", "label": "'.tr('Categoria').'", "name": "id_categoria", "required": 1, "ajax-source": "categorie" ]}', + 'button' => tr('Procedi'), + 'class' => 'btn btn-lg btn-warning', + ], +]; + +$operations['change-iva'] = [ + 'text' => ' '.tr('Aggiorna aliquota iva').'', + 'data' => [ + 'title' => tr('Cambiare l\'aliquota iva?'), + 'msg' => tr('Per ciascun articolo selezionato, verrĂ  modificata l\'aliquota iva').' +

{[ "type": "select", "label": "'.tr('Iva').'", "name": "id_iva", "required": 1, "ajax-source": "iva" ]}', + 'button' => tr('Procedi'), + 'class' => 'btn btn-lg btn-warning', + ], +]; + return $operations;