always pick the most recent subscription

This commit is contained in:
m5r
2021-10-21 01:03:32 +02:00
parent c0554f321c
commit a4ac0384c2
5 changed files with 51 additions and 10 deletions

View File

@ -2,7 +2,7 @@ import type { BlitzApiRequest, BlitzApiResponse } from "blitz";
import twilio from "twilio";
import type { ApiError } from "app/core/types";
import db, { Direction, SubscriptionStatus } from "db";
import db, { Direction, Prisma, SubscriptionStatus } from "db";
import appLogger from "integrations/logger";
import { translateCallStatus, voiceUrl } from "integrations/twilio";
import updateCallDurationQueue from "../queue/update-call-duration";
@ -36,7 +36,16 @@ export default async function incomingCallHandler(req: BlitzApiRequest, res: Bli
organization: {
include: {
subscriptions: {
where: { status: SubscriptionStatus.active },
where: {
OR: [
{ status: { not: SubscriptionStatus.deleted } },
{
status: SubscriptionStatus.deleted,
cancellationEffectiveDate: { gt: new Date() },
},
],
},
orderBy: { lastEventTime: Prisma.SortOrder.desc },
},
},
},
@ -101,7 +110,16 @@ export default async function incomingCallHandler(req: BlitzApiRequest, res: Bli
organization: {
include: {
subscriptions: {
where: { status: SubscriptionStatus.active },
where: {
OR: [
{ status: { not: SubscriptionStatus.deleted } },
{
status: SubscriptionStatus.deleted,
cancellationEffectiveDate: { gt: new Date() },
},
],
},
orderBy: { lastEventTime: Prisma.SortOrder.desc },
},
},
},