mirror of
https://github.com/devcode-it/openstamanager.git
synced 2025-02-02 17:07:01 +01:00
Visualizzazione informazioni riferimento
This commit is contained in:
parent
d07adca48f
commit
596cae6eb8
@ -303,13 +303,13 @@ if (!empty($righe)) {
|
||||
$prezzo_unitario = $riga['PrezzoUnitario'];
|
||||
|
||||
echo '
|
||||
<tr data-id="'.$key.'" data-qta="'.$qta.'">
|
||||
<tr data-id="'.$key.'" data-qta="'.$qta.'" data-prezzo_unitario="'.$prezzo_unitario.'" data-iva_percentuale="'.$riga['AliquotaIVA'].'">
|
||||
<td>
|
||||
'.$riga['Descrizione'].'<br>
|
||||
|
||||
'.(!empty($codici_articoli) ? '<small>'.implode(', ', $codici_articoli).'</small><br>' : '').'
|
||||
<span id="riferimento_'.$key.'_descrizione"></span>
|
||||
<span id="riferimento_'.$key.'"></span>
|
||||
<b id="riferimento_'.$key.'"></b>
|
||||
</td>
|
||||
|
||||
<td class="text-center">
|
||||
@ -327,6 +327,7 @@ if (!empty($righe)) {
|
||||
'_VALUE_' => empty($riga['Natura']) ? numberFormat($riga['AliquotaIVA']).'%' : $riga['Natura'],
|
||||
'_DESC_' => $riga['RiferimentoNormativo'] ? ' - '.$riga['RiferimentoNormativo'] : '',
|
||||
]).'
|
||||
<span id="riferimento_'.$key.'_iva"></span>
|
||||
</td>
|
||||
</tr>
|
||||
|
||||
@ -367,34 +368,41 @@ if (!empty($righe)) {
|
||||
echo '
|
||||
<script>
|
||||
function copy() {
|
||||
let first_iva = null;
|
||||
let first_conto = null;
|
||||
let aliquote = $("select[name^=iva");
|
||||
let conti = $("select[name^=conto");
|
||||
|
||||
$("select[name^=iva").each(function() {
|
||||
if ($(this).val() != "" && first_iva == null){
|
||||
first_iva = $(this);
|
||||
// Individuazione della prima IVA selezionata
|
||||
let iva_selezionata = null;
|
||||
for (const aliquota of aliquote) {
|
||||
const data = $(aliquota).selectData();
|
||||
if (data) {
|
||||
iva_selezionata = data;
|
||||
break;
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
$("select[name^=conto").each(function() {
|
||||
if ($(this).val() != "" && first_conto == null) {
|
||||
first_conto = $(this);
|
||||
// Individuazione del primo conto selezionato
|
||||
let conto_selezionato = null;
|
||||
for (const conto of conti) {
|
||||
const data = $(conto).selectData();
|
||||
if (data) {
|
||||
conto_selezionato = data;
|
||||
break;
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
if(first_iva) {
|
||||
$iva = first_iva.selectData();
|
||||
|
||||
$("select[name^=iva").each(function() {
|
||||
$(this).selectSet($iva.id);
|
||||
// Selezione generale per l\'IVA
|
||||
if (iva_selezionata) {
|
||||
aliquote.each(function() {
|
||||
$(this).selectSet(iva_selezionata.id);
|
||||
});
|
||||
}
|
||||
|
||||
if(first_conto) {
|
||||
$conto = first_conto.selectData();
|
||||
|
||||
$("select[name^=conto").each(function() {
|
||||
$(this).selectSetNew($conto.id, $conto.text);
|
||||
// Selezione generale per il conto
|
||||
if (conto_selezionato) {
|
||||
console.log(conto_selezionato);
|
||||
conti.each(function() {
|
||||
$(this).selectSetNew(conto_selezionato.id, conto_selezionato.text, conto_selezionato);
|
||||
});
|
||||
}
|
||||
}
|
||||
@ -456,9 +464,7 @@ function selezionaRiferimento(riga, tipo_documento, id_documento) {
|
||||
righe_ordini: riferimenti.ordini,
|
||||
};
|
||||
|
||||
let url = "'.$structure->fileurl('riferimento.php').'?" + Object.keys(query).map(function(k) {
|
||||
return encodeURIComponent(k) + "=" + encodeURIComponent(query[k])
|
||||
}).join("&")
|
||||
let url = "'.$structure->fileurl('riferimento.php').'?" + $.param(query);
|
||||
|
||||
openModal("'.tr('Selezione riferimento').'", url);
|
||||
}
|
||||
@ -495,15 +501,46 @@ function getRiferimenti() {
|
||||
* @param riga = {tipo, id, descrizione, qta, prezzo_unitario}
|
||||
*/
|
||||
function impostaRiferimento(id_riga, documento, riga) {
|
||||
// Informazioni interne per il riferimento
|
||||
$("#tipo_riferimento_" + id_riga).val(documento.tipo);
|
||||
$("#id_riferimento_" + id_riga).val(documento.id);
|
||||
|
||||
$("#tipo_riga_riferimento_" + id_riga).val(riga.tipo);
|
||||
$("#id_riga_riferimento_" + id_riga).val(riga.id);
|
||||
|
||||
$("#riferimento_" + id_riga).html(documento.descrizione ? documento.descrizione : "");
|
||||
|
||||
// Gestione della selezione
|
||||
input("selezione_riferimento[" + id_riga + "]").disable();
|
||||
$("#rimuovi_riferimento_" + id_riga).removeClass("disabled");
|
||||
|
||||
let riga_fe = $("#id_riga_riferimento_" + id_riga).closest("tr").prev();
|
||||
|
||||
// Informazioni visibili
|
||||
let qta = parseFloat(riga.qta);
|
||||
let riferimento_qta = $("#riferimento_" + id_riga + "_qta");
|
||||
riferimento_qta.html("<br>" + qta.toLocale());
|
||||
if (qta === riga_fe.data("qta")){
|
||||
riferimento_qta.addClass("text-success").removeClass("text-danger");
|
||||
} else {
|
||||
riferimento_qta.removeClass("text-success").addClass("text-danger");
|
||||
}
|
||||
|
||||
let prezzo_unitario = parseFloat(riga.prezzo_unitario);
|
||||
let riferimento_prezzo = $("#riferimento_" + id_riga + "_prezzo");
|
||||
riferimento_prezzo.html("<br>" + prezzo_unitario.toLocale() + " " + globals.currency)
|
||||
if (prezzo_unitario === riga_fe.data("prezzo_unitario")){
|
||||
riferimento_prezzo.addClass("text-success").removeClass("text-danger");
|
||||
} else {
|
||||
riferimento_prezzo.removeClass("text-success").addClass("text-danger");
|
||||
}
|
||||
|
||||
let iva_percentuale = parseFloat(riga.iva_percentuale);
|
||||
let riferimento_iva = $("#riferimento_" + id_riga + "_iva");
|
||||
riferimento_iva.html("<br>" + iva_percentuale.toLocale() + "%");
|
||||
if (prezzo_unitario === riga_fe.data("iva_percentuale")){
|
||||
riferimento_iva.addClass("text-success").removeClass("text-danger");
|
||||
} else {
|
||||
riferimento_iva.removeClass("text-success").addClass("text-danger");
|
||||
}
|
||||
|
||||
$("#riferimento_" + id_riga).html(documento.descrizione ? documento.descrizione : "");
|
||||
}
|
||||
</script>';
|
||||
|
@ -35,8 +35,17 @@ $righe = $documento->getRighe();
|
||||
foreach ($righe as $riga) {
|
||||
$qta_rimanente = $riga->qta_rimanente - $righe_utilizzate[$riga->id];
|
||||
|
||||
$dettagli = [
|
||||
'tipo' => get_class($riga),
|
||||
'id' => $riga->id,
|
||||
'qta' => $riga->qta,
|
||||
'prezzo_unitario' => $riga->prezzo_unitario,
|
||||
'id_iva' => $riga->id_iva,
|
||||
'iva_percentuale' => $riga->aliquota->percentuale,
|
||||
];
|
||||
|
||||
echo '
|
||||
<tr '.($id_riferimento == $riga->id ? 'class="success"' : '').' data-type="'.get_class($riga).'" data-id="'.$riga->id.'" data-qta="'.$riga->qta.'" data-prezzo_unitario="'.$riga->prezzo_unitario.'">
|
||||
<tr '.($id_riferimento == $riga->id ? 'class="success"' : '').' data-dettagli='.json_encode($dettagli).'>
|
||||
<td>'.$riga->descrizione.'</td>
|
||||
<td>'.numberFormat($qta_rimanente, 'qta').' / '.numberFormat($riga->qta, 'qta').'</td>
|
||||
<td class="text-center">';
|
||||
@ -67,11 +76,8 @@ var documento_importazione = {
|
||||
function selezionaRiga(button) {
|
||||
let riga = $(button).closest("tr");
|
||||
|
||||
let dati_riga = {
|
||||
tipo: riga.data("type"),
|
||||
id: riga.data("id"),
|
||||
};
|
||||
impostaRiferimento("'.$id_riga.'", documento_importazione, dati_riga);
|
||||
let dettagli_riga = riga.data("dettagli");
|
||||
impostaRiferimento("'.$id_riga.'", documento_importazione, dettagli_riga);
|
||||
|
||||
$(button).closest(".modal").modal("hide");
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user