export default class Cofins { public cst: string; public pcofins: number; public vbc: number; public vcofins: number; public pbc: number; constructor(json) { json = json || {}; this.cst = json.cst || '99'; this.pcofins = json.pcofins || 0.0; this.vbc = json.vbc || 0.0; this.vcofins = json.vcofins || 0.0; this.pbc = json && json.pbc || 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.vcofins = this.vbc * this.pcofins / 100; } fromProduto(impostoProduto?){ this.cst = impostoProduto && impostoProduto.cst || '99'; this.pcofins = impostoProduto && impostoProduto.pcofins || 0.0; this.pbc = impostoProduto && impostoProduto.pbc || 0.0; } }