Merge branch 'mayankSprint2' of http://git.wdipl.com/Mayank.Mishra/MinglarBackendNestJS into paritosh-main1
This commit is contained in:
@@ -695,6 +695,45 @@ export class ItineraryService {
|
||||
},
|
||||
},
|
||||
},
|
||||
ActivityVenues: {
|
||||
where: { isActive: true, deletedAt: null },
|
||||
select: {
|
||||
id: true,
|
||||
venueName: true,
|
||||
venueLabel: true,
|
||||
venueCapacity: true,
|
||||
availableSeats: true,
|
||||
ActivityPrices: {
|
||||
where: { isActive: true, deletedAt: null },
|
||||
orderBy: { createdAt: 'asc' },
|
||||
select: {
|
||||
id: true,
|
||||
noOfSession: true,
|
||||
isPackage: true,
|
||||
sessionValidity: true,
|
||||
sessionValidityFrequency: true,
|
||||
basePrice: true,
|
||||
sellPrice: true,
|
||||
ActivityPriceTaxes: {
|
||||
where: { isActive: true, deletedAt: null },
|
||||
select: {
|
||||
id: true,
|
||||
taxXid: true,
|
||||
taxPer: true,
|
||||
taxAmount: true,
|
||||
taxes: {
|
||||
select: {
|
||||
id: true,
|
||||
taxName: true,
|
||||
taxPer: true,
|
||||
},
|
||||
},
|
||||
},
|
||||
},
|
||||
},
|
||||
},
|
||||
},
|
||||
},
|
||||
},
|
||||
},
|
||||
itineraryActivitySelections: {
|
||||
@@ -837,6 +876,30 @@ export class ItineraryService {
|
||||
(itinerary.ItineraryActivities ?? []).map(async (item) => {
|
||||
const coverImage = item.activity?.ActivitiesMedia?.[0]?.mediaFileName ?? null;
|
||||
const coverImagePresignedUrl = await attachPresignedUrl(coverImage);
|
||||
const selectedVenue = item.activity?.ActivityVenues?.find(
|
||||
(venue) => venue.id === item.venueXid,
|
||||
) ?? null;
|
||||
const venueForPricing =
|
||||
selectedVenue ?? item.activity?.ActivityVenues?.[0] ?? null;
|
||||
const venuePrices = venueForPricing?.ActivityPrices ?? [];
|
||||
const activityPriceDetails = venuePrices.reduce(
|
||||
(lowest, current) =>
|
||||
!lowest || current.sellPrice < lowest.sellPrice ? current : lowest,
|
||||
null as (typeof venuePrices)[number] | null,
|
||||
);
|
||||
const selectedVenueCharge = activityPriceDetails
|
||||
? summarizeCheckoutRows([
|
||||
{
|
||||
id: activityPriceDetails.id,
|
||||
baseAmount: Number(activityPriceDetails.basePrice) || 0,
|
||||
totalAmount:
|
||||
activityPriceDetails.sellPrice === null
|
||||
? null
|
||||
: Number(activityPriceDetails.sellPrice),
|
||||
taxes: mapCheckoutTaxes(activityPriceDetails.ActivityPriceTaxes ?? []),
|
||||
},
|
||||
])
|
||||
: { items: [], baseAmount: 0, taxAmount: 0, totalAmount: 0 };
|
||||
|
||||
const details = item.ItineraryDetails ?? [];
|
||||
const memberSelectionGroups = new Map<number, any[]>();
|
||||
@@ -863,12 +926,7 @@ export class ItineraryService {
|
||||
|
||||
const activityCharge =
|
||||
pickCheckoutSummary(detailGroups, ['ACTIVITY']) ??
|
||||
{
|
||||
items: [],
|
||||
baseAmount: Number(item.totalAmount) || 0,
|
||||
taxAmount: 0,
|
||||
totalAmount: Number(item.totalAmount) || 0,
|
||||
};
|
||||
selectedVenueCharge;
|
||||
|
||||
const foodCharge =
|
||||
pickCheckoutSummary(detailGroups, ['FOOD']) ??
|
||||
@@ -1030,9 +1088,7 @@ export class ItineraryService {
|
||||
};
|
||||
});
|
||||
|
||||
const activityTotalAmount = sumCheckoutValues(
|
||||
memberSelections.map((selection) => selection.pricing.totalAmount),
|
||||
);
|
||||
const activityTotalAmount = Number(selectedVenueCharge.totalAmount) || 0;
|
||||
|
||||
return {
|
||||
itineraryActivityXid: item.id,
|
||||
|
||||
Reference in New Issue
Block a user