137 lines
3.3 KiB
Java
137 lines
3.3 KiB
Java
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;
|
|
}
|
|
}
|