/** * Parent Constructor * * @param invoice invoice * @param paySchedule payment schedule */ public MInvoicePaySchedule(MInvoice invoice, MPaySchedule paySchedule) { super(invoice.getCtx(), 0, invoice.get_TrxName()); m_parent = invoice; setClientOrg(invoice); setC_Invoice_ID(invoice.getC_Invoice_ID()); setC_PaySchedule_ID(paySchedule.getC_PaySchedule_ID()); // Amounts int scale = MCurrency.getStdPrecision(getCtx(), invoice.getC_Currency_ID()); BigDecimal due = invoice.getGrandTotal(); if (due.compareTo(Env.ZERO) == 0) { setDueAmt(Env.ZERO); setDiscountAmt(Env.ZERO); setIsValid(false); } else { due = due.multiply(paySchedule.getPercentage()) .divide(HUNDRED, scale, BigDecimal.ROUND_HALF_UP); setDueAmt(due); BigDecimal discount = due.multiply(paySchedule.getDiscount()).divide(HUNDRED, scale, BigDecimal.ROUND_HALF_UP); setDiscountAmt(discount); setIsValid(true); } // Dates Timestamp dueDate = TimeUtil.addDays(invoice.getDateInvoiced(), paySchedule.getNetDays()); setDueDate(dueDate); Timestamp discountDate = TimeUtil.addDays(invoice.getDateInvoiced(), paySchedule.getDiscountDays()); setDiscountDate(discountDate); } // MInvoicePaySchedule
/** * Parent Constructor * * @param parent parent * @param invoice invoice * @param tLine tax line */ public MTaxDeclarationLine(MTaxDeclaration parent, MInvoice invoice, MInvoiceTax tLine) { this(parent.getCtx(), 0, parent.get_TrxName()); setClientOrg(invoice); setC_TaxDeclaration_ID(parent.getC_TaxDeclaration_ID()); setIsManual(false); // setC_Invoice_ID(invoice.getC_Invoice_ID()); setC_BPartner_ID(invoice.getC_BPartner_ID()); setC_Currency_ID(invoice.getC_Currency_ID()); setDateAcct(invoice.getDateAcct()); // setC_Tax_ID(tLine.getC_Tax_ID()); setTaxBaseAmt(tLine.getTaxBaseAmt()); setTaxAmt(tLine.getTaxAmt()); } // MTaxDeclarationLine
/** * Parent Constructor * * @param parent parent * @param invoice invoice * @param iLine invoice line */ public MTaxDeclarationLine(MTaxDeclaration parent, MInvoice invoice, MInvoiceLine iLine) { this(parent.getCtx(), 0, parent.get_TrxName()); setClientOrg(invoice); setC_TaxDeclaration_ID(parent.getC_TaxDeclaration_ID()); setIsManual(false); // setC_Invoice_ID(invoice.getC_Invoice_ID()); setC_BPartner_ID(invoice.getC_BPartner_ID()); setC_Currency_ID(invoice.getC_Currency_ID()); setDateAcct(invoice.getDateAcct()); // setC_InvoiceLine_ID(iLine.getC_InvoiceLine_ID()); setC_Tax_ID(iLine.getC_Tax_ID()); if (invoice.isTaxIncluded()) { setTaxBaseAmt(iLine.getLineNetAmt()); setTaxAmt(iLine.getTaxAmt()); } else { setTaxBaseAmt(iLine.getLineNetAmt()); setTaxAmt(iLine.getTaxAmt()); } } // MTaxDeclarationLine