working on delivery flow
This commit is contained in:
@@ -34,6 +34,7 @@ export default function useOrder() {
|
||||
officeDetails,
|
||||
orderType,
|
||||
giftDetails,
|
||||
location,
|
||||
} = useAppSelector(selectCart);
|
||||
const highestLoyaltyItem = useAppSelector(selectHighestPricedLoyaltyItem);
|
||||
const { useLoyaltyPoints } = useAppSelector(selectCart);
|
||||
@@ -42,13 +43,24 @@ export default function useOrder() {
|
||||
|
||||
const [createOrder] = useCreateOrderMutation();
|
||||
|
||||
const getDeliveryMethod = useCallback(() => {
|
||||
if (orderType === OrderType.Delivery) return 1;
|
||||
if (orderType === OrderType.Pickup) return 2;
|
||||
if (orderType === OrderType.DineIn) return 3;
|
||||
if (orderType === OrderType.Gift) return 10;
|
||||
if (orderType === OrderType.ScheduledOrder) return 9;
|
||||
if (orderType === OrderType.ToRoom) return 5;
|
||||
if (orderType === OrderType.ToOffice) return 4;
|
||||
return undefined;
|
||||
}, [orderType]);
|
||||
|
||||
const handleCreateOrder = useCallback(() => {
|
||||
createOrder({
|
||||
phone: mobilenumber || phone || giftDetails?.senderPhone,
|
||||
couponID: coupon,
|
||||
discountAmount: 0,
|
||||
comment: specialRequest,
|
||||
delivery_method: "3",
|
||||
delivery_method: getDeliveryMethod(),
|
||||
timeslot: "",
|
||||
table_id: tables[0],
|
||||
deliveryType: orderType,
|
||||
@@ -73,6 +85,11 @@ export default function useOrder() {
|
||||
use_loylaty: useLoyaltyPoints && highestLoyaltyItem ? 1 : 0,
|
||||
useWallet: 0,
|
||||
tip,
|
||||
userCoordinates:
|
||||
location?.lat && location?.lng
|
||||
? `${location?.lat},${location?.lng}`
|
||||
: "",
|
||||
delivery_address: location?.address,
|
||||
...(orderType === OrderType.Gift
|
||||
? {
|
||||
receiverName: giftDetails?.receiverName,
|
||||
@@ -106,6 +123,37 @@ export default function useOrder() {
|
||||
.catch((error: any) => {
|
||||
console.error("Create Order failed:", error);
|
||||
});
|
||||
}, [createOrder, mobilenumber, phone, giftDetails?.senderPhone, giftDetails?.receiverName, giftDetails?.receiverPhone, giftDetails?.message, giftDetails?.isSecret, giftDetails?.senderEmail, giftDetails?.senderName, coupon, specialRequest, tables, orderType, restaurantID, items, officeDetails?.officeNo, user_uuid, estimateTime, orderPrice, useLoyaltyPoints, highestLoyaltyItem, tip, t, navigate, subdomain, dispatch]);
|
||||
}, [
|
||||
createOrder,
|
||||
mobilenumber,
|
||||
phone,
|
||||
giftDetails?.senderPhone,
|
||||
giftDetails?.receiverName,
|
||||
giftDetails?.receiverPhone,
|
||||
giftDetails?.message,
|
||||
giftDetails?.isSecret,
|
||||
giftDetails?.senderEmail,
|
||||
giftDetails?.senderName,
|
||||
coupon,
|
||||
specialRequest,
|
||||
tables,
|
||||
orderType,
|
||||
restaurantID,
|
||||
items,
|
||||
officeDetails?.officeNo,
|
||||
user_uuid,
|
||||
estimateTime,
|
||||
orderPrice,
|
||||
useLoyaltyPoints,
|
||||
highestLoyaltyItem,
|
||||
tip,
|
||||
location?.lat,
|
||||
location?.lng,
|
||||
location?.address,
|
||||
t,
|
||||
navigate,
|
||||
subdomain,
|
||||
dispatch,
|
||||
]);
|
||||
return { handleCreateOrder };
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user