@rytass/invoice-adapter-ecpay
Version:
Rytass Invoice Gateway - ECPay
29 lines (26 loc) • 868 B
JavaScript
import { InvoiceAllowanceState } from '@rytass/invoice';
class ECPayInvoiceAllowance {
allowanceNumber;
allowancePrice;
allowancedOn;
remainingAmount;
items;
parentInvoice;
status = InvoiceAllowanceState.INITED;
invalidOn = null;
constructor(options){
this.allowanceNumber = options.allowanceNumber;
this.allowancePrice = options.allowancePrice;
this.allowancedOn = options.allowancedOn;
this.remainingAmount = options.remainingAmount;
this.items = options.items;
this.parentInvoice = options.parentInvoice;
this.status = options.status;
}
invalid(invalidOn = new Date()) {
this.invalidOn = invalidOn;
this.status = InvoiceAllowanceState.INVALID;
this.parentInvoice.nowAmount += this.allowancePrice;
}
}
export { ECPayInvoiceAllowance };