export default class Pis { public cst: string; public pbc: number; public ppis: number; public qbcprod: number; public valiqprod: number; public vbc: number; public vpis: number; constructor(json) { json = json || {}; this.cst = json.cst || '99'; this.pbc = json.pbc || 0.0; this.ppis = json.ppis || 0.0; this.qbcprod = json.qbcprod || 0.0; this.valiqprod = json.valiqprod || 0.0; this.vbc = json.vbc || 0.0; this.vpis = json.vpis || 0.0; } public recalc(value: ({ valor_unitario: number, quantidade: number, extra: number, vipi: number })) { this.vbc = this.pbc > 0.0 ? (value.valor_unitario * this.pbc / 100) * value.quantidade + value.extra + (value.vipi || 0) : 0.0; this.vpis = this.vbc * this.ppis / 100; } public fromProduto(impostoProduto?){ this.cst = impostoProduto && impostoProduto.cst || '99'; this.pbc = impostoProduto && impostoProduto.pbc || 0.0; this.ppis = impostoProduto && impostoProduto.ppis || 0.0; this.qbcprod = impostoProduto && impostoProduto.qbcprod || 0.0; this.valiqprod = impostoProduto && impostoProduto.valiqprod || 0.0; } }