Opa queria uma ajuda dos amigos para o metodo adicionar_tens(Produto prod, int quant).
Não sei como invocar os metodos, das classes Produto, ItemNota, pois preciso fazer um calculo de:
O preco do produto xxxx multiplicado pela quantidade de itens da classe ItemNota, se o produto for de SC calcularia 12% de icms se for de RS calcula 17%. Para o calculo de preço x quantidade é atribuida a uma variavel ValorParcial e neste valor parcial aplico a 5 do estado.
Meu problema é esses get.codigo do produto como chamar isso dentro do método?
CLASSE NOTA FISCAL
public abstract class NotaFiscal {
private int codigo;
private Date data;
private String uf;
public static void main(String[] args){
}
private List<ItemNota> items;
public int getCodigo() {
return codigo;
}
public void setCodigo(int codigo) {
this.codigo = codigo;
}
public Date getData() {
return data;
}
public void setData(Date data) {
this.data = data;
}
public String getUf() {
return uf;
}
public void setUf(String uf) {
this.uf = uf;
}
public List<ItemNota> getItems() {
return items;
}
//total é item.getProduto().getPreco() * item.getQuant()
// --para cada produto percorendo a lista no for da lista de produtos
public void adicionarItem(Produto prod, int qtd) {
ItemNota it = new ItemNota();
it.setProduto(prod);
it.setQuant(qtd);
items.add(it);
}
public void calcularTotal() {
// return
}
public void calcularTotalSemipostos() {
// return
}
public NotaFiscal(Date data, String uf) {
super();
this.data = data;
this.uf = uf;
this.items = new ArrayList<ItemNota>();
}
}
CLASSE ITEM NOTA
public class ItemNota {
private Produto produto ;
private int quant;
public Produto getProduto() {
return produto;
}
public void setProduto(Produto produto) {
this.produto = produto;
}
public int getQuant() {
return quant;
}
public void setQuant(int quant) {
this.quant = quant;
}
public float getValorParcial () {
return quant * produto.getPreco();
}
}
CLASSE PRODUTO
public class Produto {
private int codigo;
private String descricao;
private float preco;
public Produto(int codigo, String descricao, float preco) {
super();
this.codigo = codigo;
this.descricao = descricao;
this.preco = preco;
}
public int getCodigo() {
return codigo;
}
public void setCodigo(int codigo) {
this.codigo = codigo;
}
public String getDescricao() {
return descricao;
}
public void setDescricao(String descricao) {
this.descricao = descricao;
}
public float getPreco() {
return preco;
}
public void setPreco(float preco) {
this.preco = preco;
}
@Override
public String toString() {
return "Produto [codigo=" + codigo + ", descricao=" + descricao
+ ", preco=" + preco + "]";
}
@Override
public int hashCode() {
final int prime = 31;
int result = 1;
result = prime * result + codigo;
return result;
}
@Override
public boolean equals(Object obj) {
if (this == obj)
return true;
if (obj == null)
return false;
if (getClass() != obj.getClass())
return false;
Produto other = (Produto) obj;
if (codigo != other.codigo)
return false;
return true;
}
}
CLASSE ICMS PR
public class CalculoICMSPR {
12%
}
CLASSE ICMS PR
public class CalculoICMSPR {
12%
}
CLASSE ICMS RS
public class CalculoICMSPR {
17%
}