fix: complete first version issue remediation

This commit is contained in:
hectorzhao
2026-07-11 10:14:37 +08:00
parent 709ac97764
commit 208a6c23f8
73 changed files with 1549 additions and 245 deletions
+20 -2
View File
@@ -133,8 +133,8 @@ export class BillingService {
});
}
listManualRechargeRecords(tenantId?: string) {
return this.prisma.rechargeOrder.findMany({
async listManualRechargeRecords(tenantId?: string) {
const orders = await this.prisma.rechargeOrder.findMany({
where: {
tenantId,
payMethod: 'manual_topup',
@@ -143,6 +143,24 @@ export class BillingService {
orderBy: { createdAt: 'desc' },
take: 100,
});
const orderIds = orders.map((order) => order.id);
if (orderIds.length === 0) {
return orders;
}
const transactions = await this.prisma.accountTransaction.findMany({
where: {
relatedType: 'recharge_order',
relatedId: { in: orderIds },
},
select: { relatedId: true, balanceAfter: true },
});
const balanceAfterByOrderId = new Map(transactions.map((transaction) => [transaction.relatedId, transaction.balanceAfter]));
return orders.map((order) => ({
...order,
balanceAfterCents: balanceAfterByOrderId.get(order.id) ?? null,
}));
}
async createRechargeOrder(data: CreateRechargeOrderDto) {