update: the invoice service

This commit is contained in:
mahyargdz
2025-04-23 14:29:48 +03:30
parent 4d01c87eb2
commit 10a7653451
6 changed files with 107 additions and 6 deletions
@@ -6,6 +6,7 @@ import { BaseEntity } from "../../../common/entities/base.entity";
import { DecimalTransformer } from "../../../common/transformers/decimal.transformer";
import { Discount } from "../../discounts/entities/discount.entity";
import { User } from "../../users/entities/user.entity";
import { RecurringPeriodEnum } from "../enums/invoice-recurring-period.enum";
import { InvoiceStatus } from "../enums/invoice-status.enum";
@Entity()
@@ -37,6 +38,18 @@ export class Invoice extends BaseEntity {
@Column({ type: "decimal", precision: 16, scale: 2, nullable: true, transformer: new DecimalTransformer() })
lateFee: Decimal | null;
@Column({ type: "boolean", default: false })
isRecurring: boolean;
@Column({ type: "enum", enum: RecurringPeriodEnum, nullable: true })
recurringPeriod?: RecurringPeriodEnum;
@Column({ type: "int", default: 0 })
maxRecurringCycles: number;
@Column({ type: "int", default: 0 })
currentRecurringCycle: number;
//---------------------------------------------
@OneToMany(() => InvoiceItem, (invoiceItem) => invoiceItem.invoice, { cascade: true })