update: add to query to the invoice search for ademin
This commit is contained in:
@@ -30,6 +30,11 @@ export class InvoicesSearchQueryDto extends PaginationDto {
|
|||||||
@IsDateString({}, { message: InvoiceMessage.INVALID_DATE })
|
@IsDateString({}, { message: InvoiceMessage.INVALID_DATE })
|
||||||
@ApiPropertyOptional({ description: "since query", example: "2025-01-27" })
|
@ApiPropertyOptional({ description: "since query", example: "2025-01-27" })
|
||||||
since?: string;
|
since?: string;
|
||||||
|
|
||||||
|
@IsOptional()
|
||||||
|
@IsDateString({}, { message: InvoiceMessage.INVALID_DATE })
|
||||||
|
@ApiPropertyOptional({ description: "to date query", example: "2025-01-27" })
|
||||||
|
to?: string;
|
||||||
}
|
}
|
||||||
|
|
||||||
export class UserInvoicesSearchQueryDto extends PickType(InvoicesSearchQueryDto, ["status", "limit", "page"]) {}
|
export class UserInvoicesSearchQueryDto extends PickType(InvoicesSearchQueryDto, ["status", "limit", "page"]) {}
|
||||||
|
|||||||
@@ -62,7 +62,6 @@ export class InvoicesService {
|
|||||||
const totalPrice = invoiceItems.reduce((sum, item) => new Decimal(item.totalPrice).add(sum), new Decimal(0));
|
const totalPrice = invoiceItems.reduce((sum, item) => new Decimal(item.totalPrice).add(sum), new Decimal(0));
|
||||||
const tax = totalPrice.mul(0.1);
|
const tax = totalPrice.mul(0.1);
|
||||||
|
|
||||||
//TODO:for test use minutes
|
|
||||||
const dueDate = dayjs().add(INVOICE.DUEDATE, "day").toDate();
|
const dueDate = dayjs().add(INVOICE.DUEDATE, "day").toDate();
|
||||||
|
|
||||||
const invoice = queryRunner.manager.create(Invoice, {
|
const invoice = queryRunner.manager.create(Invoice, {
|
||||||
@@ -91,7 +90,7 @@ export class InvoicesService {
|
|||||||
},
|
},
|
||||||
queryRunner,
|
queryRunner,
|
||||||
);
|
);
|
||||||
|
//TODO:remove the test delay
|
||||||
await this.invoiceQueue.add(
|
await this.invoiceQueue.add(
|
||||||
INVOICE.INVOICE_REMINDER_JOB_NAME,
|
INVOICE.INVOICE_REMINDER_JOB_NAME,
|
||||||
{ invoiceId: invoice.id },
|
{ invoiceId: invoice.id },
|
||||||
|
|||||||
@@ -50,6 +50,12 @@ export class InvoicesRepository extends Repository<Invoice> {
|
|||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (queryDto.to) {
|
||||||
|
queryBuilder.andWhere("(invoice.createdAt <= :to OR invoice.dueDate <= :to OR invoice.paidAt <= :to)", {
|
||||||
|
to: new Date(queryDto.to),
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
queryBuilder.orderBy("invoice.createdAt", "DESC");
|
queryBuilder.orderBy("invoice.createdAt", "DESC");
|
||||||
queryBuilder.skip(skip);
|
queryBuilder.skip(skip);
|
||||||
queryBuilder.take(limit);
|
queryBuilder.take(limit);
|
||||||
|
|||||||
Reference in New Issue
Block a user