Aggiunto coefficiente di vendita in articoli e azione di gruppo
This commit is contained in:
parent
5ed9bc9efa
commit
e4d36a99fe
|
@ -58,8 +58,12 @@ switch (post('op')) {
|
|||
|
||||
$articolo->barcode = post('barcode');
|
||||
$articolo->threshold_qta = post('threshold_qta');
|
||||
$articolo->coefficiente = post('coefficiente');
|
||||
$articolo->idiva_vendita = post('idiva_vendita');
|
||||
$articolo->prezzo_acquisto = post('prezzo_acquisto');
|
||||
$articolo->setPrezzoVendita(post('prezzo_vendita'), post('idiva_vendita'));
|
||||
if (empty(post('coefficiente'))) {
|
||||
$articolo->setPrezzoVendita(post('prezzo_vendita'), post('idiva_vendita'));
|
||||
}
|
||||
$articolo->idconto_vendita = post('idconto_vendita');
|
||||
$articolo->idconto_acquisto = post('idconto_acquisto');
|
||||
$articolo->save();
|
||||
|
@ -116,6 +120,8 @@ switch (post('op')) {
|
|||
$articolo->abilita_serial = post('abilita_serial');
|
||||
$articolo->ubicazione = post('ubicazione');
|
||||
$articolo->threshold_qta = post('threshold_qta');
|
||||
$articolo->coefficiente = post('coefficiente');
|
||||
$articolo->idiva_vendita = post('idiva_vendita');
|
||||
$articolo->prezzo_acquisto = post('prezzo_acquisto');
|
||||
$articolo->idconto_vendita = post('idconto_vendita');
|
||||
$articolo->idconto_acquisto = post('idconto_acquisto');
|
||||
|
@ -129,7 +135,9 @@ switch (post('op')) {
|
|||
$articolo->fattore_um_secondaria = post('fattore_um_secondaria');
|
||||
$articolo->qta_multipla = post('qta_multipla');
|
||||
|
||||
$articolo->setPrezzoVendita(post('prezzo_vendita'), post('idiva_vendita'));
|
||||
if (empty(post('coefficiente'))) {
|
||||
$articolo->setPrezzoVendita(post('prezzo_vendita'), post('idiva_vendita'));
|
||||
}
|
||||
|
||||
$componente = post('componente_filename');
|
||||
$articolo->componente_filename = $componente;
|
||||
|
|
|
@ -19,6 +19,12 @@
|
|||
|
||||
include_once __DIR__.'/../../core.php';
|
||||
|
||||
use Modules\Iva\Aliquota;
|
||||
|
||||
$prezzi_ivati = setting('Utilizza prezzi di vendita comprensivi di IVA');
|
||||
$iva_predefinita = setting('Iva predefinita');
|
||||
$aliquota_predefinita = floatval(Aliquota::find($iva_predefinita)->percentuale);
|
||||
|
||||
?><form action="" method="post" id="add-form">
|
||||
<input type="hidden" name="op" value="add">
|
||||
<input type="hidden" name="backto" value="record-edit">
|
||||
|
@ -63,16 +69,10 @@ include_once __DIR__.'/../../core.php';
|
|||
</div>
|
||||
|
||||
<div class="col-md-4">
|
||||
{[ "type": "number", "label": "<?php echo tr('Quantità iniziale'); ?>", "name": "qta", "decimals": "qta" ]}
|
||||
{[ "type": "number", "label": "<?php echo tr('Coefficiente di vendita'); ?>", "name": "coefficiente", "help": "<?php echo tr('Imposta un coefficiente per calcolare automaticamente il prezzo di vendita quando cambia il prezzo di acquisto'); ?>." ]}
|
||||
</div>
|
||||
|
||||
<div class="col-md-4">
|
||||
{[ "type": "number", "label": "<?php echo tr('Soglia minima quantità'); ?>", "name": "threshold_qta", "decimals": "qta", "min-value": "undefined" ]}
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="row">
|
||||
<div class="col-md-6">
|
||||
<?php
|
||||
if (!setting('Utilizza prezzi di vendita comprensivi di IVA')) {
|
||||
echo '
|
||||
|
@ -82,9 +82,22 @@ include_once __DIR__.'/../../core.php';
|
|||
|
||||
{[ "type": "number", "label": "<?php echo tr('Prezzo di vendita'); ?>", "name": "prezzo_vendita", "icon-after": "<?php echo currency(); ?>", "help": "<?php echo setting('Utilizza prezzi di vendita comprensivi di IVA') ? tr('Importo IVA inclusa') : ''; ?>" ]}
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
<div class="col-md-6">
|
||||
<div class="row">
|
||||
<div class="col-md-4">
|
||||
{[ "type": "number", "label": "<?php echo tr('Quantità iniziale'); ?>", "name": "qta", "decimals": "qta" ]}
|
||||
</div>
|
||||
|
||||
<div class="col-md-4">
|
||||
{[ "type": "number", "label": "<?php echo tr('Soglia minima quantità'); ?>", "name": "threshold_qta", "decimals": "qta", "min-value": "undefined" ]}
|
||||
</div>
|
||||
|
||||
<div class="col-md-4">
|
||||
{[ "type": "select", "label": "<?php echo tr('Iva di vendita'); ?>", "name": "idiva_vendita", "ajax-source": "iva", "valore_predefinito": "Iva predefinita", "help": "<?php echo tr('Se non specificata, verrà utilizzata l\'iva di default delle impostazioni'); ?>" ]}
|
||||
<input type="hidden" name="prezzi_ivati" value="<?php echo $prezzi_ivati; ?>">
|
||||
<input type="hidden" name="aliquota_predefinita" value="<?php echo $aliquota_predefinita; ?>">
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
@ -109,6 +122,9 @@ include_once __DIR__.'/../../core.php';
|
|||
</form>
|
||||
|
||||
<script>
|
||||
iva_vendita = $("#add-form").find("#idiva_vendita");
|
||||
percentuale = 0;
|
||||
|
||||
$(document).ready(function () {
|
||||
var sub = $('#add-form').find('#subcategoria_add');
|
||||
var original = sub.parent().find(".input-group-addon button").attr("onclick");
|
||||
|
@ -128,24 +144,65 @@ $(document).ready(function () {
|
|||
}
|
||||
});
|
||||
|
||||
input("coefficiente").on('keyup', function(){
|
||||
if (iva_vendita.val()) {
|
||||
percentuale = parseFloat(iva_vendita.selectData().percentuale);
|
||||
}
|
||||
if (!percentuale) {
|
||||
percentuale = parseFloat(input("aliquota_predefinita").get());
|
||||
}
|
||||
if (input("coefficiente").get()) {
|
||||
let prezzo_vendita = input('prezzo_acquisto').get() * input("coefficiente").get();
|
||||
if (parseFloat(input("prezzi_ivati").get())) {
|
||||
prezzo_vendita = prezzo_vendita + (prezzo_vendita * percentuale / 100);
|
||||
}
|
||||
input("prezzo_vendita").set(prezzo_vendita);
|
||||
input("prezzo_vendita").disable();
|
||||
$("#scorpora_iva_add").addClass("disabled");
|
||||
} else {
|
||||
input("prezzo_vendita").enable();
|
||||
$("#scorpora_iva_add").removeClass("disabled");
|
||||
}
|
||||
});
|
||||
|
||||
input("prezzo_acquisto").on('keyup change', function(){
|
||||
if (iva_vendita.val()) {
|
||||
percentuale = parseFloat(iva_vendita.selectData().percentuale);
|
||||
}
|
||||
if (!percentuale) {
|
||||
percentuale = parseFloat(input("aliquota_predefinita").get());
|
||||
}
|
||||
if (input("coefficiente").get()) {
|
||||
let prezzo_vendita = input('prezzo_acquisto').get() * input("coefficiente").get();
|
||||
if (parseFloat(input("prezzi_ivati").get())) {
|
||||
prezzo_vendita = prezzo_vendita + (prezzo_vendita * percentuale / 100);
|
||||
}
|
||||
input("prezzo_vendita").set(prezzo_vendita);
|
||||
input("prezzo_vendita").disable();
|
||||
$("#scorpora_iva_add").addClass("disabled");
|
||||
} else {
|
||||
input("prezzo_vendita").enable();
|
||||
$("#scorpora_iva_add").removeClass("disabled");
|
||||
}
|
||||
});
|
||||
|
||||
$("#scorpora_iva_add").click( function() {
|
||||
scorpora_iva_add();
|
||||
});
|
||||
});
|
||||
|
||||
function scorpora_iva_add() {
|
||||
if ($("#add-form").find("#idiva_vendita").val() != '') {
|
||||
var percentuale = parseFloat($("#add-form").find("#idiva_vendita").selectData().percentuale);
|
||||
if(!percentuale) return;
|
||||
|
||||
var input = $("#add-form").find("#prezzo_vendita");
|
||||
var prezzo = input.val().toEnglish();
|
||||
|
||||
var scorporato = prezzo * 100 / (100 + percentuale);
|
||||
|
||||
input.val(scorporato);
|
||||
}else{
|
||||
swal("<?php echo tr('Attenzione'); ?>", "<?php echo tr('Seleziona Iva di vendita.'); ?>", "warning");
|
||||
if (iva_vendita.val()) {
|
||||
percentuale = parseFloat(iva_vendita.selectData().percentuale);
|
||||
}
|
||||
if (!percentuale) {
|
||||
percentuale = parseFloat(input("aliquota_predefinita").get());
|
||||
}
|
||||
if(!percentuale) return;
|
||||
|
||||
let input = $("#prezzo_vendita");
|
||||
let prezzo = input.val().toEnglish();
|
||||
let scorporato = prezzo * 100 / (100 + percentuale);
|
||||
input.val(scorporato);
|
||||
}
|
||||
</script>
|
||||
|
|
|
@ -55,36 +55,59 @@ switch (post('op')) {
|
|||
$tipologia = post('tipologia');
|
||||
$arrotondamento = post('arrotondamento');
|
||||
$prezzi_ivati = setting('Utilizza prezzi di vendita comprensivi di IVA');
|
||||
$articoli_coeff = 0;
|
||||
|
||||
foreach ($id_records as $id) {
|
||||
$articolo = Articolo::find($id);
|
||||
$prezzo_partenza = post('prezzo_partenza') == 'vendita' ? $articolo->prezzo_vendita : $articolo->prezzo_acquisto;
|
||||
$aliquota_iva = floatval(Aliquota::find($articolo->idiva_vendita)->percentuale);
|
||||
|
||||
$new_prezzo_vendita = $prezzo_partenza + ($prezzo_partenza * $percentuale / 100);
|
||||
if (empty((int)$articolo->coefficiente)) {
|
||||
$prezzo_partenza = post('prezzo_partenza') == 'vendita' ? $articolo->prezzo_vendita : $articolo->prezzo_acquisto;
|
||||
$aliquota_iva = floatval(Aliquota::find($articolo->idiva_vendita)->percentuale);
|
||||
|
||||
// Arrotondamento
|
||||
if (!empty($tipologia) && !empty($arrotondamento)) {
|
||||
if ($tipologia == 'ivato') {
|
||||
$new_prezzo_vendita = $prezzo_partenza + ($prezzo_partenza * $percentuale / 100);
|
||||
|
||||
// Arrotondamento
|
||||
if (!empty($tipologia) && !empty($arrotondamento)) {
|
||||
if ($tipologia == 'ivato') {
|
||||
$new_prezzo_vendita = $new_prezzo_vendita + ($new_prezzo_vendita * $aliquota_iva / 100);
|
||||
}
|
||||
|
||||
$new_prezzo_vendita = ceil($new_prezzo_vendita / $arrotondamento) * $arrotondamento;
|
||||
}
|
||||
|
||||
if (in_array($tipologia, ['ivato', '']) && !$prezzi_ivati) {
|
||||
$new_prezzo_vendita = $new_prezzo_vendita * 100 / (100 + $aliquota_iva);
|
||||
}
|
||||
|
||||
if (in_array($tipologia, ['imponibile', '']) && $prezzi_ivati) {
|
||||
$new_prezzo_vendita = $new_prezzo_vendita + ($new_prezzo_vendita * $aliquota_iva / 100);
|
||||
}
|
||||
|
||||
$new_prezzo_vendita = ceil($new_prezzo_vendita / $arrotondamento) * $arrotondamento;
|
||||
$articolo->setPrezzoVendita($new_prezzo_vendita, $articolo->idiva_vendita);
|
||||
$articolo->save();
|
||||
} else {
|
||||
$articoli_coeff++;
|
||||
}
|
||||
|
||||
if (in_array($tipologia, ['ivato', '']) && !$prezzi_ivati) {
|
||||
$new_prezzo_vendita = $new_prezzo_vendita * 100 / (100 + $aliquota_iva);
|
||||
}
|
||||
|
||||
if (in_array($tipologia, ['imponibile', '']) && $prezzi_ivati) {
|
||||
$new_prezzo_vendita = $new_prezzo_vendita + ($new_prezzo_vendita * $aliquota_iva / 100);
|
||||
}
|
||||
|
||||
$articolo->setPrezzoVendita($new_prezzo_vendita, $articolo->idiva_vendita);
|
||||
$articolo->save();
|
||||
}
|
||||
|
||||
flash()->info(tr('Prezzi di vendita aggiornati!'));
|
||||
flash()->warning(tr('_NUM_ prezzi di vendita non aggiornati per coefficiente impostato!', [
|
||||
'_NUM_' => $articoli_coeff,
|
||||
]));
|
||||
|
||||
break;
|
||||
|
||||
case 'change-coefficiente':
|
||||
foreach ($id_records as $id) {
|
||||
$articolo = Articolo::find($id);
|
||||
$coefficiente = post('coefficiente');
|
||||
|
||||
$articolo->coefficiente = $coefficiente;
|
||||
$articolo->prezzo_acquisto = $articolo->prezzo_acquisto;
|
||||
$articolo->save();
|
||||
}
|
||||
|
||||
flash()->info(tr('Coefficienti di vendita aggiornati!'));
|
||||
|
||||
break;
|
||||
|
||||
|
@ -356,7 +379,7 @@ $operations['change-acquisto'] = [
|
|||
'text' => '<span><i class="fa fa-refresh"></i> '.tr('Aggiorna prezzo di acquisto').'</span>',
|
||||
'data' => [
|
||||
'title' => tr('Aggiornare il prezzo di acquisto 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.<br><br>{[ "type": "number", "label": "'.tr('Percentuale sconto/magg.').'", "name": "percentuale", "required": 1, "icon-after": "%" ]}',
|
||||
'msg' => tr('Per indicare uno sconto inserire la percentuale con il segno meno, al contrario per un rincaro inserire la percentuale senza segno.').'<br><br>{[ "type": "number", "label": "'.tr('Percentuale sconto/magg.').'", "name": "percentuale", "required": 1, "icon-after": "%" ]}',
|
||||
'button' => tr('Procedi'),
|
||||
'class' => 'btn btn-lg btn-warning',
|
||||
'blank' => false,
|
||||
|
@ -367,7 +390,7 @@ $operations['change-vendita'] = [
|
|||
'text' => '<span><i class="fa fa-refresh"></i> '.tr('Aggiorna prezzo di vendita').'</span>',
|
||||
'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.<br><br>
|
||||
'msg' => tr('Per indicare uno sconto inserire la percentuale con il segno meno, al contrario per un rincaro inserire la percentuale senza segno.').'<br><br>
|
||||
{[ "type": "select", "label": "'.tr('Partendo da:').'", "name": "prezzo_partenza", "required": 1, "values": "list=\"acquisto\":\"Prezzo di acquisto\",\"vendita\":\"Prezzo di vendita\"" ]}<br>
|
||||
{[ "type": "number", "label": "'.tr('Percentuale sconto/magg.').'", "name": "percentuale", "required": 1, "icon-after": "%" ]}<br>
|
||||
{[ "type": "select", "label": "'.tr('Arrotonda prezzo:').'", "name": "tipologia", "values": "list=\"0\":\"Non arrotondare\",\"imponibile\":\"Imponibile\",\"ivato\":\"Ivato\"", "value": 0 ]}<br>
|
||||
|
@ -378,6 +401,17 @@ $operations['change-vendita'] = [
|
|||
],
|
||||
];
|
||||
|
||||
$operations['change-coefficiente'] = [
|
||||
'text' => '<span><i class="fa fa-refresh"></i> '.tr('Aggiorna coefficiente di vendita').'</span>',
|
||||
'data' => [
|
||||
'title' => tr('Aggiornare il coefficiente di vendita per gli articoli selezionati?'),
|
||||
'msg' => tr('Per ciascun articolo selezionato, verrà modificato il coefficiente e il relativo prezzo di vendita').'<br><br>{[ "type": "number", "label": "'.tr('Coefficiente di vendita').'", "name": "coefficiente", "required": 1 ]}',
|
||||
'button' => tr('Procedi'),
|
||||
'class' => 'btn btn-lg btn-warning',
|
||||
'blank' => false,
|
||||
],
|
||||
];
|
||||
|
||||
$operations['stampa-etichette'] = [
|
||||
'text' => '<span><i class="fa fa-barcode"></i> '.tr('Stampa etichette').'</span>',
|
||||
'data' => [
|
||||
|
|
|
@ -19,6 +19,8 @@
|
|||
|
||||
include_once __DIR__.'/../../core.php';
|
||||
|
||||
use Modules\Iva\Aliquota;
|
||||
|
||||
?><form action="" method="post" id="edit-form" enctype="multipart/form-data">
|
||||
<input type="hidden" name="backto" value="record-edit">
|
||||
<input type="hidden" name="op" value="update">
|
||||
|
@ -162,11 +164,15 @@ include_once __DIR__.'/../../core.php';
|
|||
|
||||
<div class="panel-body">
|
||||
<div class="row">
|
||||
<div class="col-md-6">
|
||||
<div class="col-md-4">
|
||||
{[ "type": "number", "label": "<?php echo tr('Prezzo di acquisto'); ?>", "name": "prezzo_acquisto", "value": "$prezzo_acquisto$", "icon-after": "<?php echo currency(); ?>", "help": "<?php echo tr('Prezzo di acquisto previsto per i fornitori i cui dati non sono stati inseriti nel plugin Fornitori'); ?>." ]}
|
||||
</div>
|
||||
|
||||
<div class="col-md-6">
|
||||
<div class="col-md-4">
|
||||
{[ "type": "number", "label": "<?php echo tr('Coefficiente di vendita'); ?>", "name": "coefficiente", "value": "$coefficiente$", "help": "<?php echo tr('Imposta un coefficiente per calcolare automaticamente il prezzo di vendita quando cambia il prezzo di acquisto'); ?>." ]}
|
||||
</div>
|
||||
|
||||
<div class="col-md-4">
|
||||
{[ "type": "number", "label": "<?php echo tr('Soglia minima quantità'); ?>", "name": "threshold_qta", "value": "$threshold_qta$", "decimals": "qta", "min-value": "undefined" ]}
|
||||
</div>
|
||||
</div>
|
||||
|
@ -215,21 +221,25 @@ include_once __DIR__.'/../../core.php';
|
|||
<div class="col-md-6">
|
||||
<?php
|
||||
$prezzi_ivati = setting('Utilizza prezzi di vendita comprensivi di IVA');
|
||||
$iva_predefinita = setting('Iva predefinita');
|
||||
$aliquota_predefinita = floatval(Aliquota::find($iva_predefinita)->percentuale);
|
||||
if (empty($prezzi_ivati)) {
|
||||
echo '
|
||||
<button type="button" class="btn btn-info btn-xs pull-right tip pull-right" title="'.tr('Scorpora l\'IVA dal prezzo di vendita.').'" id="scorporaIva">
|
||||
<button type="button" class="btn btn-info btn-xs pull-right tip pull-right '.(!empty((int)$articolo->coefficiente) ? 'disabled' : '').'" title="'.tr('Scorpora l\'IVA dal prezzo di vendita.').'" id="scorporaIva">
|
||||
<i class="fa fa-calculator"></i>
|
||||
</button>';
|
||||
}
|
||||
|
||||
echo '
|
||||
{[ "type": "number", "label": "'.tr('Prezzo di vendita').'", "name": "prezzo_vendita", "value": "'.($prezzi_ivati ? $articolo->prezzo_vendita_ivato : $articolo->prezzo_vendita).'", "icon-after": "'.currency().'", "help": "'.($prezzi_ivati ? tr('Importo IVA inclusa') : '').'" ]}
|
||||
{[ "type": "number", "label": "'.tr('Prezzo di vendita').'", "name": "prezzo_vendita", "value": "'.($prezzi_ivati ? $articolo->prezzo_vendita_ivato : $articolo->prezzo_vendita).'", "icon-after": "'.currency().'", "help": "'.($prezzi_ivati ? tr('Importo IVA inclusa') : '').'", "disabled": "'.(!empty((int)$articolo->coefficiente) ? 1 : 0).'" ]}
|
||||
</div>';
|
||||
|
||||
?>
|
||||
|
||||
<div class="col-md-6">
|
||||
{[ "type": "select", "label": "<?php echo tr('Iva di vendita'); ?>", "name": "idiva_vendita", "ajax-source": "iva", "value": "$idiva_vendita$", "help": "<?php echo tr('Se non specificata, verrà utilizzata l\'iva di default delle impostazioni'); ?>" ]}
|
||||
<input type="hidden" name="prezzi_ivati" value="<?php echo $prezzi_ivati; ?>">
|
||||
<input type="hidden" name="aliquota_predefinita" value="<?php echo $aliquota_predefinita; ?>">
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
@ -306,6 +316,48 @@ echo '
|
|||
{( "name": "filelist_and_upload", "id_module": "$id_module$", "id_record": "$id_record$" )}
|
||||
|
||||
<script>
|
||||
let iva_vendita = $("#idiva_vendita");
|
||||
let percentuale = 0;
|
||||
|
||||
$(document).ready(function() {
|
||||
if (iva_vendita.val()) {
|
||||
percentuale = parseFloat(iva_vendita.selectData().percentuale);
|
||||
}
|
||||
if (!percentuale) {
|
||||
percentuale = parseFloat(input("aliquota_predefinita").get());
|
||||
}
|
||||
|
||||
input("coefficiente").on('keyup', function(){
|
||||
if (input("coefficiente").get()) {
|
||||
let prezzo_vendita = input('prezzo_acquisto').get() * input("coefficiente").get();
|
||||
if (parseFloat(input("prezzi_ivati").get())) {
|
||||
prezzo_vendita = prezzo_vendita + (prezzo_vendita * percentuale / 100);
|
||||
}
|
||||
input("prezzo_vendita").set(prezzo_vendita);
|
||||
input("prezzo_vendita").disable();
|
||||
$("#scorporaIva").addClass("disabled");
|
||||
} else {
|
||||
input("prezzo_vendita").enable();
|
||||
$("#scorporaIva").removeClass("disabled");
|
||||
}
|
||||
});
|
||||
|
||||
input("prezzo_acquisto").on('keyup change', function(){
|
||||
if (input("coefficiente").get()) {
|
||||
let prezzo_vendita = input('prezzo_acquisto').get() * input("coefficiente").get();
|
||||
if (parseFloat(input("prezzi_ivati").get())) {
|
||||
prezzo_vendita = prezzo_vendita + (prezzo_vendita * percentuale / 100);
|
||||
}
|
||||
input("prezzo_vendita").set(prezzo_vendita);
|
||||
input("prezzo_vendita").disable();
|
||||
$("#scorporaIva").addClass("disabled");
|
||||
} else {
|
||||
input("prezzo_vendita").enable();
|
||||
$("#scorporaIva").removeClass("disabled");
|
||||
}
|
||||
});
|
||||
});
|
||||
|
||||
$("#categoria").change(function() {
|
||||
updateSelectOption("id_categoria", $(this).val());
|
||||
|
||||
|
@ -313,27 +365,17 @@ $("#categoria").change(function() {
|
|||
});
|
||||
|
||||
function scorporaIva() {
|
||||
let iva_vendita = $("#idiva_vendita");
|
||||
|
||||
if (iva_vendita.val()) {
|
||||
let percentuale = parseFloat(iva_vendita.selectData().percentuale);
|
||||
if(!percentuale) return;
|
||||
|
||||
let input = $("#prezzo_vendita");
|
||||
let prezzo = input.val().toEnglish();
|
||||
|
||||
let scorporato = prezzo * 100 / (100 + percentuale);
|
||||
|
||||
input.val(scorporato);
|
||||
}else{
|
||||
swal("<?php echo tr('Attenzione'); ?>", "<?php echo tr('Seleziona Iva di vendita.'); ?>", "warning");
|
||||
}
|
||||
if(!percentuale) return;
|
||||
|
||||
let input = $("#prezzo_vendita");
|
||||
let prezzo = input.val().toEnglish();
|
||||
let scorporato = prezzo * 100 / (100 + percentuale);
|
||||
input.val(scorporato);
|
||||
}
|
||||
|
||||
$("#scorporaIva").click( function() {
|
||||
scorporaIva();
|
||||
});
|
||||
|
||||
</script>
|
||||
|
||||
|
||||
|
|
|
@ -142,6 +142,30 @@ class Articolo extends Model
|
|||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Imposta il prezzo di acquisto e aggiorna il prezzo di vendita in base al coefficiente.
|
||||
*
|
||||
* @param $value
|
||||
*/
|
||||
public function setPrezzoAcquistoAttribute($value)
|
||||
{
|
||||
$this->attributes['prezzo_acquisto'] = $value;
|
||||
|
||||
if (!empty($this->coefficiente)) {
|
||||
$prezzo_vendita = $value * $this->coefficiente;
|
||||
|
||||
$prezzi_ivati = setting('Utilizza prezzi di vendita comprensivi di IVA');
|
||||
$id_iva = $this->idiva_vendita ?: setting('Iva predefinita');
|
||||
$percentuale_aliquota = floatval(Aliquota::find($id_iva)->percentuale);
|
||||
|
||||
if ($prezzi_ivati) {
|
||||
$prezzo_vendita = $prezzo_vendita * (1 + $percentuale_aliquota / 100);
|
||||
}
|
||||
|
||||
$this->setPrezzoVendita($prezzo_vendita, $this->idiva_vendita);
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Verifica se l'articolo corrente è una variante per una Combinazione.
|
||||
*
|
||||
|
|
|
@ -80,4 +80,7 @@ INSERT INTO `zz_views` (`id`, `id_module`, `name`, `query`, `order`, `visible`,
|
|||
UPDATE `zz_views` SET `summable` = '1' WHERE (`zz_views`.`name` = 'Q.tà ordinata' OR `zz_views`.`name` = 'Q.tà' OR `zz_views`.`name` = 'Q.tà disponibile' OR `zz_views`.`name` = 'Q.tà impegnata') AND `zz_views`.`id_module` = (SELECT `id` FROM `zz_modules` WHERE `name` = 'Articoli');
|
||||
|
||||
-- Stampe definitive registri iva
|
||||
CREATE TABLE `co_stampecontabili` ( `id` INT NOT NULL AUTO_INCREMENT , `id_print` INT NOT NULL , `date_start` DATE NOT NULL , `date_end` DATE NOT NULL , `first_page` INT NOT NULL , `last_page` INT NOT NULL , `dir` VARCHAR(255) NOT NULL , PRIMARY KEY (`id`));
|
||||
CREATE TABLE `co_stampecontabili` ( `id` INT NOT NULL AUTO_INCREMENT , `id_print` INT NOT NULL , `date_start` DATE NOT NULL , `date_end` DATE NOT NULL , `first_page` INT NOT NULL , `last_page` INT NOT NULL , `dir` VARCHAR(255) NOT NULL , PRIMARY KEY (`id`));
|
||||
|
||||
-- Coefficiente di vendita
|
||||
ALTER TABLE `mg_articoli` ADD `coefficiente` DECIMAL(12,6) NOT NULL AFTER `prezzo_acquisto`;
|
Loading…
Reference in New Issue