add tto order

This commit is contained in:
Danel Kungla
2025-09-26 15:58:25 +03:00
parent 6c3ae1eda6
commit bfdd1ec62a
6 changed files with 30 additions and 31 deletions

View File

@@ -26,17 +26,7 @@ async function OrderConfirmedPage(props: {
params: Promise<{ orderId: string }>; params: Promise<{ orderId: string }>;
}) { }) {
const params = await props.params; const params = await props.params;
const medusaOrder = await retrieveOrder(params.orderId).catch(() => null);
const order = await getAnalysisOrder({
analysisOrderId: Number(params.orderId),
}).catch(() => null);
if (!order) {
redirect(pathsConfig.app.myOrders);
}
const medusaOrder = await retrieveOrder(order.medusa_order_id).catch(
() => null,
);
if (!medusaOrder) { if (!medusaOrder) {
redirect(pathsConfig.app.myOrders); redirect(pathsConfig.app.myOrders);
} }
@@ -46,7 +36,12 @@ async function OrderConfirmedPage(props: {
<PageHeader title={<Trans i18nKey="cart:order.title" />} /> <PageHeader title={<Trans i18nKey="cart:order.title" />} />
<Divider /> <Divider />
<div className="small:grid-cols-[1fr_360px] grid grid-cols-1 gap-x-40 gap-y-6 lg:px-4"> <div className="small:grid-cols-[1fr_360px] grid grid-cols-1 gap-x-40 gap-y-6 lg:px-4">
<OrderDetails order={order} /> <OrderDetails
order={{
id: medusaOrder.id,
created_at: medusaOrder.created_at,
}}
/>
<Divider /> <Divider />
<OrderItems medusaOrder={medusaOrder} /> <OrderItems medusaOrder={medusaOrder} />
<CartTotals medusaOrder={medusaOrder} /> <CartTotals medusaOrder={medusaOrder} />

View File

@@ -171,9 +171,11 @@ const TimeSlots = ({
reservationId, reservationId,
newStartTime: timeSlot.StartTime, newStartTime: timeSlot.StartTime,
newServiceId: Number(syncedService.id), newServiceId: Number(syncedService.id),
timeSlot.UserID, newAppointmentUserId: timeSlot.UserID,
timeSlot.SyncUserID, newSyncUserId: timeSlot.SyncUserID,
booking.selectedLocationId ? booking.selectedLocationId : null, newLocationId: booking.selectedLocationId
? booking.selectedLocationId
: null,
cartId, cartId,
}); });

View File

@@ -4,14 +4,18 @@ import { Trans } from '@kit/ui/trans';
import type { AnalysisOrder } from '~/lib/types/order'; import type { AnalysisOrder } from '~/lib/types/order';
export default function OrderDetails({ order }: { order: AnalysisOrder }) { export default function OrderDetails({
order,
}: {
order: { id: string; created_at: string | Date };
}) {
return ( return (
<div className="flex flex-col gap-y-2"> <div className="flex flex-col gap-y-2">
<div> <div>
<span className="font-bold"> <span className="font-bold">
<Trans i18nKey="cart:orderConfirmed.orderNumber" />:{' '} <Trans i18nKey="cart:orderConfirmed.orderNumber" />:{' '}
</span> </span>
<span>{order.medusa_order_id}</span> <span>{order.id}</span>
</div> </div>
<div> <div>

View File

@@ -64,7 +64,10 @@ export default function OrderBlock({
items={itemsTtoService} items={itemsTtoService}
title="orders:table.ttoService" title="orders:table.ttoService"
type="ttoService" type="ttoService"
order={{ status: medusaOrderStatus.toUpperCase() }} order={{
status: medusaOrderStatus.toUpperCase(),
medusaOrderId,
}}
/> />
)} )}
<OrderItemsTable <OrderItemsTable

View File

@@ -42,10 +42,12 @@ export default function OrderItemsTable({
const isAnalysisOrder = type === 'analysisOrder'; const isAnalysisOrder = type === 'analysisOrder';
const openAnalysisResults = async () => { const openDetailedView = async () => {
if (isAnalysisOrder && order?.medusaOrderId && order?.id) { if (isAnalysisOrder && order?.medusaOrderId && order?.id) {
await logAnalysisResultsNavigateAction(order.medusaOrderId); await logAnalysisResultsNavigateAction(order.medusaOrderId);
router.push(`${pathsConfig.app.analysisResults}/${order.id}`); router.push(`${pathsConfig.app.analysisResults}/${order.id}`);
} else {
router.push(`${pathsConfig.app.myOrders}/${order.medusaOrderId}`);
} }
}; };
@@ -88,13 +90,11 @@ export default function OrderItemsTable({
/> />
</TableCell> </TableCell>
{isAnalysisOrder && ( <TableCell className="px-6 text-right">
<TableCell className="px-6 text-right"> <Button size="sm" onClick={openDetailedView}>
<Button size="sm" onClick={openAnalysisResults}> <Trans i18nKey="analysis-results:view" />
<Trans i18nKey="analysis-results:view" /> </Button>
</Button> </TableCell>
</TableCell>
)}
</TableRow> </TableRow>
))} ))}
</TableBody> </TableBody>

View File

@@ -61,11 +61,6 @@ export const listOrders = async (
}; };
export const createTransferRequest = async ( export const createTransferRequest = async (
state: {
success: boolean;
error: string | null;
order: HttpTypes.StoreOrder | null;
},
formData: FormData, formData: FormData,
): Promise<{ ): Promise<{
success: boolean; success: boolean;