package it.acxent.contab.iva; import it.acxent.anag.IvaInterface; import it.acxent.fattele.FEDatiRiepilogoInterface; import it.acxent.util.DoubleOperator; public class RigaRegistroIvaItem implements FEDatiRiepilogoInterface { private IvaInterface iva; private double importoIvaNoCalc; private double imponibile; private boolean regimeDelMargine = false; private String fEEsigibilitaIva; public RigaRegistroIvaItem(IvaInterface l_iva) { setIva(l_iva); } public void addImporto(double l_imponibile, double l_importoIva) { DoubleOperator dImponibile = new DoubleOperator(getImponibile()); dImponibile.setScale(4, 5); dImponibile.add(l_imponibile); setImponibile(dImponibile.getResult()); DoubleOperator dImposta = new DoubleOperator(getImportoIvaNoCalc()); dImposta.setScale(2, 5); dImposta.add(l_importoIva); setImportoIvaNoCalc(dImposta.getResult()); } public double getImponibile() { return this.imponibile; } public double getImportoIva() { return getImportoIvaCalc(); } public double getImportoIvaNoCalc() { return this.importoIvaNoCalc; } public double xxgetImportoIvaSulTotaleImponibile() { DoubleOperator temp = new DoubleOperator((float)getIva().getAliquota()); temp.divide(100.0F); temp.multiply(getImponibile()); if (getImportoIva() != temp.getResult()) System.out.println("RRI: importi iva calcolati diversi"); return temp.getResult(); } public void setImponibile(double d) { this.imponibile = d; } public void setImportoIvaNoCalc(double d) { this.importoIvaNoCalc = d; } public IvaInterface getIva() { return this.iva; } private double getImportoIvaCalc() { if (getIva().isRegimeMargine()) return 0.0D; DoubleOperator temp = new DoubleOperator(getImponibile()); temp.setScale(4, 5); temp.multiply(getIva().getAliquota()); temp.divide(100.0F); return temp.getResult(); } public void setIva(IvaInterface iva) { this.iva = iva; } public double getFEAliquotaIva() { return (double)getIva().getAliquota(); } public double getFEArrotondamento() { return 0.0D; } public String getFEEsigibilitaIva() { return this.fEEsigibilitaIva; } public double getFEImponibileImporto() { return getImponibile(); } public double getFEImposta() { return getImportoIva(); } public String getFENatura() { return getIva().getFENatura(); } public String getFERiferimentoNormativo() { if (getFENatura().isEmpty()) return null; return getIva().getNotaEsenzione(); } public double getFESpeseAccessorie() { return 0.0D; } public double getImponibile2() { DoubleOperator dop = new DoubleOperator(getImponibile()); dop.setScale(2, 5); return dop.getResult(); } public double getImportoIva2() { DoubleOperator dop = new DoubleOperator(getImportoIvaCalc()); dop.setScale(2, 5); return dop.getResult(); } public boolean isRegimeDelMargine() { return this.regimeDelMargine; } public void setRegimeDelMargine(boolean regimeDelMargine) { this.regimeDelMargine = regimeDelMargine; } public void setFEEsigibilitaIva(String fEEsigibilitaIva) { this.fEEsigibilitaIva = fEEsigibilitaIva; } }