diff --git a/apps/edr-passenger-api/src/modules/bookings/bookings.controller.ts b/apps/edr-passenger-api/src/modules/bookings/bookings.controller.ts index 77b3ca1f8..b04be6bb2 100644 --- a/apps/edr-passenger-api/src/modules/bookings/bookings.controller.ts +++ b/apps/edr-passenger-api/src/modules/bookings/bookings.controller.ts @@ -1,5 +1,6 @@ -import { Body, Controller, Delete, Get, Param, Post, Patch, UseGuards, Query, Req, BadRequestException, SetMetadata } from '@nestjs/common'; +import { Body, Controller, Delete, Get, Param, Post, Patch, UseGuards, Query, Req, SetMetadata, BadRequestException, UnauthorizedException } from '@nestjs/common'; import { ApiTags, ApiOperation, ApiBearerAuth, ApiResponse, ApiQuery, ApiBody } from '@nestjs/swagger'; +import { IsPublic } from '@tria-plc/api-common/modules/auth/decorators/public.decorator'; import { Throttle } from '@nestjs/throttler'; import { BookingsService } from './bookings.service'; import { GuestBookingService } from './guest-booking.service'; @@ -35,13 +36,13 @@ export class BookingsController { @Query('page') page?: string, @Query('pageSize') pageSize?: string, ) { - const passengerId = req.user?.passengerId; - if (!passengerId) throw new Error('Passenger ID not found in token'); - return this.service.findByPassengerId(passengerId, { - search, - status, - page: page ? parseInt(page) : 1, - pageSize: pageSize ? parseInt(pageSize) : 20 + const iamUserId = req.user?.id; + if (!iamUserId) throw new UnauthorizedException(); + return this.service.findByIamUserId(iamUserId, { + search, + status, + page: page ? parseInt(page) : 1, + pageSize: pageSize ? parseInt(pageSize) : 20 }); } diff --git a/apps/edr-passenger-api/src/modules/bookings/bookings.service.ts b/apps/edr-passenger-api/src/modules/bookings/bookings.service.ts index a81c6eeb0..7567489bd 100644 --- a/apps/edr-passenger-api/src/modules/bookings/bookings.service.ts +++ b/apps/edr-passenger-api/src/modules/bookings/bookings.service.ts @@ -44,6 +44,11 @@ export class BookingsService { private readonly fareEngine: FareEngineService, ) {} + async findByIamUserId(iamUserId: string, filters: BookingFilters = {}) { + const passenger = await this.prisma.passenger.findUniqueOrThrow({ where: { iamUserId }, select: { id: true } }); + return this.findByPassengerId(passenger.id, filters); + } + async findByPassengerId(passengerId: string, filters: BookingFilters = {}) { const { search, status, page = 1, pageSize = 20 } = filters; const skip = (page - 1) * pageSize; diff --git a/apps/edr-payment-api/src/config/dmoney.config.ts b/apps/edr-payment-api/src/config/dmoney.config.ts index d0938eeea..26949d301 100644 --- a/apps/edr-payment-api/src/config/dmoney.config.ts +++ b/apps/edr-payment-api/src/config/dmoney.config.ts @@ -11,7 +11,7 @@ export default registerAs("dmoney", () => ({ returnUrl: process.env.DMONEY_RETURN_URL ?? "", timeoutExpress: process.env.DMONEY_TIMEOUT_EXPRESS ?? "120m", language: process.env.DMONEY_LANGUAGE ?? "en", - currency: process.env.DMONEY_CURRENCY ?? "FDJ", + currency: process.env.DMONEY_CURRENCY ?? "DJF", privateKey: process.env.DMONEY_PRIVATE_KEY ?? "", publicKey: process.env.DMONEY_PUBLIC_KEY ?? "", insecureTls: process.env.DMONEY_INSECURE_TLS === "true", diff --git a/packages/payment-providers/src/providers/dmoney/dmoney.provider.ts b/packages/payment-providers/src/providers/dmoney/dmoney.provider.ts index 72651b6d3..e241eec89 100644 --- a/packages/payment-providers/src/providers/dmoney/dmoney.provider.ts +++ b/packages/payment-providers/src/providers/dmoney/dmoney.provider.ts @@ -206,18 +206,16 @@ export class DMoneyProvider implements PaymentProvider { appid: this.merchantAppId, merch_code: this.merchantCode, merch_order_id: input.merchantOrderId, - trade_type: "Checkout" as const, + trade_type: "WebCheckout" as const, + business_type: "OnlineMerchant" as const, title: `${input.orderRef}`, total_amount: totalAmount, - trans_currency: 1 == 1 ? "DJF": this.currency, + trans_currency: this.currency, timeout_express: this.timeoutExpress, ...(redirectUrl ? { redirect_url: redirectUrl } : {}), }, }; - console.log("\n\n\n") - console.log(req) - console.log("\n\n\n") const sign = signRequestObject( req as unknown as Record, this.privateKey, @@ -265,7 +263,7 @@ export class DMoneyProvider implements PaymentProvider { `sign=${sign}`, "sign_type=SHA256WithRSA", "version=1.0", - "trade_type=Checkout", + "trade_type=WebCheckout", `language=${this.language}`, ].join("&"); return `${this.webBaseUrl}/payment/web/paygate?${query}`; diff --git a/packages/payment-providers/src/providers/dmoney/dmoney.types.ts b/packages/payment-providers/src/providers/dmoney/dmoney.types.ts index 72a5f2669..29729870d 100644 --- a/packages/payment-providers/src/providers/dmoney/dmoney.types.ts +++ b/packages/payment-providers/src/providers/dmoney/dmoney.types.ts @@ -10,12 +10,12 @@ export interface DMoneyPreOrderBizContent { appid: string; merch_code: string; merch_order_id: string; - trade_type: 'Checkout'; + trade_type: 'WebCheckout'; + business_type: 'OnlineMerchant'; title: string; total_amount: string; trans_currency: string; timeout_express: string; - business_type?: string; redirect_url?: string; callback_info?: string; }