kisok quantity constrain
This commit is contained in:
parent
58e1a5e7a7
commit
70444d3028
|
|
@ -1,6 +1,6 @@
|
||||||
import React, { useEffect, useState } from 'react';
|
import React, { useEffect, useState } from 'react';
|
||||||
import { useDispatch, useSelector } from 'react-redux';
|
import { useDispatch, useSelector } from 'react-redux';
|
||||||
import { Drawer } from 'antd';
|
import { Drawer, message } from 'antd';
|
||||||
import { DefaultModal } from '../../../Components/Modal/DefaultModal';
|
import { DefaultModal } from '../../../Components/Modal/DefaultModal';
|
||||||
import {
|
import {
|
||||||
changeKioskPageName,
|
changeKioskPageName,
|
||||||
|
|
@ -16,10 +16,12 @@ import {
|
||||||
GlobalBookingTypeKiosk,
|
GlobalBookingTypeKiosk,
|
||||||
} from '../../../Features/BookingScreen/BookingData/KioskBookingData';
|
} from '../../../Features/BookingScreen/BookingData/KioskBookingData';
|
||||||
import horizontal from '../../../Images/defaultItemImg.png';
|
import horizontal from '../../../Images/defaultItemImg.png';
|
||||||
import { getConfigType } from '../../../Features/BookingScreen/BookingData/BookingData';
|
import { getConfigType, PreferenceData } from '../../../Features/BookingScreen/BookingData/BookingData';
|
||||||
|
import { calculateOverAllQtyLimit } from '../../../utils/calculations.js';
|
||||||
|
|
||||||
const CardPage1 = (props) => {
|
const CardPage1 = (props) => {
|
||||||
const dispatch = useDispatch();
|
const dispatch = useDispatch();
|
||||||
|
const preferenceDatas = useSelector(PreferenceData);
|
||||||
const kioskCategoriesCard = useSelector(GlobalProductCardListKiosk);
|
const kioskCategoriesCard = useSelector(GlobalProductCardListKiosk);
|
||||||
const KioskOrderDetails = useSelector(GlobalKioskOrderDetails);
|
const KioskOrderDetails = useSelector(GlobalKioskOrderDetails);
|
||||||
const getKioskLightColourdata = useSelector(getKioskLightColour);
|
const getKioskLightColourdata = useSelector(getKioskLightColour);
|
||||||
|
|
@ -35,7 +37,13 @@ const CardPage1 = (props) => {
|
||||||
const UomPrint = SettingDataSelector?.[0]?.SettingDtlDetails.filter(
|
const UomPrint = SettingDataSelector?.[0]?.SettingDtlDetails.filter(
|
||||||
(i) => i.SettingIdName === 'PrintUom'
|
(i) => i.SettingIdName === 'PrintUom'
|
||||||
)?.[0];
|
)?.[0];
|
||||||
|
const overAllLimitPreferenece =
|
||||||
|
preferenceDatas?.[0]?.['SettingDtlDetails']?.find(
|
||||||
|
(item) => (item.SettingIdName?.toLowerCase() === 'overalllimit') && item?.SettingValue === 'Y');
|
||||||
|
const itemWiseLimitPreferenece =
|
||||||
|
preferenceDatas?.[0]?.['SettingDtlDetails']?.find(
|
||||||
|
(item) => item.SettingIdName?.toLowerCase() === 'itemwiselimit' && item?.SettingValue === 'Y');
|
||||||
|
const maxQtyLimit = itemWiseLimitPreferenece?.SettingCount || overAllLimitPreferenece?.SettingCount || null;
|
||||||
useEffect(() => {
|
useEffect(() => {
|
||||||
getBookingTypeId();
|
getBookingTypeId();
|
||||||
}, []);
|
}, []);
|
||||||
|
|
@ -49,6 +57,15 @@ const CardPage1 = (props) => {
|
||||||
//Card on click function
|
//Card on click function
|
||||||
|
|
||||||
const CardOnClick = async (item, Parameter) => {
|
const CardOnClick = async (item, Parameter) => {
|
||||||
|
if ((overAllLimitPreferenece || itemWiseLimitPreferenece) && maxQtyLimit) {
|
||||||
|
if (overAllLimitPreferenece) {
|
||||||
|
const calculatedOverAllQty = calculateOverAllQtyLimit(KioskOrderDetails);
|
||||||
|
if ((calculatedOverAllQty + 1) > maxQtyLimit) {
|
||||||
|
message.warning(`Overall Quantity Limit Exceeds than ${maxQtyLimit}`)
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
setOnePeiceFlow(Parameter === 'OnePeiceProduct');
|
setOnePeiceFlow(Parameter === 'OnePeiceProduct');
|
||||||
|
|
||||||
const transformedItem = {
|
const transformedItem = {
|
||||||
|
|
|
||||||
|
|
@ -1,6 +1,6 @@
|
||||||
import React, { useEffect, useState } from 'react';
|
import React, { useEffect, useState } from 'react';
|
||||||
import { useDispatch, useSelector } from 'react-redux';
|
import { useDispatch, useSelector } from 'react-redux';
|
||||||
import { Drawer } from 'antd';
|
import { Drawer, message } from 'antd';
|
||||||
import { DefaultModal } from '../../../Components/Modal/DefaultModal';
|
import { DefaultModal } from '../../../Components/Modal/DefaultModal';
|
||||||
import {
|
import {
|
||||||
changeKioskPageName,
|
changeKioskPageName,
|
||||||
|
|
@ -15,10 +15,12 @@ import {
|
||||||
changeKioskOrderDetails,
|
changeKioskOrderDetails,
|
||||||
} from '../../../Features/BookingScreen/BookingData/KioskBookingData';
|
} from '../../../Features/BookingScreen/BookingData/KioskBookingData';
|
||||||
import horizontal from '../../../Images/defaultItemImg.png';
|
import horizontal from '../../../Images/defaultItemImg.png';
|
||||||
import { getConfigType } from '../../../Features/BookingScreen/BookingData/BookingData';
|
import { getConfigType, PreferenceData } from '../../../Features/BookingScreen/BookingData/BookingData';
|
||||||
|
import { calculateOverAllQtyLimit } from '../../../utils/calculations.js';
|
||||||
|
|
||||||
const CardPage2 = (props) => {
|
const CardPage2 = (props) => {
|
||||||
const dispatch = useDispatch();
|
const dispatch = useDispatch();
|
||||||
|
const preferenceDatas = useSelector(PreferenceData);
|
||||||
const kioskCategoriesCard = useSelector(GlobalProductCardListKiosk);
|
const kioskCategoriesCard = useSelector(GlobalProductCardListKiosk);
|
||||||
const KioskOrderDetails = useSelector(GlobalKioskOrderDetails);
|
const KioskOrderDetails = useSelector(GlobalKioskOrderDetails);
|
||||||
const getKioskLightColourdata = useSelector(getKioskLightColour);
|
const getKioskLightColourdata = useSelector(getKioskLightColour);
|
||||||
|
|
@ -35,6 +37,13 @@ const CardPage2 = (props) => {
|
||||||
(i) => i.SettingIdName === 'PrintUom'
|
(i) => i.SettingIdName === 'PrintUom'
|
||||||
)?.[0];
|
)?.[0];
|
||||||
|
|
||||||
|
const overAllLimitPreferenece =
|
||||||
|
preferenceDatas?.[0]?.['SettingDtlDetails']?.find(
|
||||||
|
(item) => (item.SettingIdName?.toLowerCase() === 'overalllimit') && item?.SettingValue === 'Y');
|
||||||
|
const itemWiseLimitPreferenece =
|
||||||
|
preferenceDatas?.[0]?.['SettingDtlDetails']?.find(
|
||||||
|
(item) => item.SettingIdName?.toLowerCase() === 'itemwiselimit' && item?.SettingValue === 'Y');
|
||||||
|
const maxQtyLimit = itemWiseLimitPreferenece?.SettingCount || overAllLimitPreferenece?.SettingCount || null;
|
||||||
useEffect(() => {
|
useEffect(() => {
|
||||||
getBookingTypeId();
|
getBookingTypeId();
|
||||||
}, []);
|
}, []);
|
||||||
|
|
@ -48,6 +57,16 @@ const CardPage2 = (props) => {
|
||||||
//Card on click function
|
//Card on click function
|
||||||
|
|
||||||
const CardOnClick = async (item, Parameter) => {
|
const CardOnClick = async (item, Parameter) => {
|
||||||
|
if ((overAllLimitPreferenece || itemWiseLimitPreferenece) && maxQtyLimit) {
|
||||||
|
if (overAllLimitPreferenece) {
|
||||||
|
const calculatedOverAllQty = calculateOverAllQtyLimit(KioskOrderDetails);
|
||||||
|
if ((calculatedOverAllQty + 1) > maxQtyLimit) {
|
||||||
|
message.warning(`Overall Quantity Limit Exceeds than ${maxQtyLimit}`)
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
setOnePeiceFlow(Parameter === 'OnePeiceProduct');
|
setOnePeiceFlow(Parameter === 'OnePeiceProduct');
|
||||||
|
|
||||||
const transformedItem = {
|
const transformedItem = {
|
||||||
|
|
|
||||||
|
|
@ -1,5 +1,5 @@
|
||||||
import React, { useEffect, useState } from 'react';
|
import React, { useEffect, useState } from 'react';
|
||||||
import { Drawer } from 'antd';
|
import { Drawer, message } from 'antd';
|
||||||
import { IoCheckmarkCircle } from 'react-icons/io5';
|
import { IoCheckmarkCircle } from 'react-icons/io5';
|
||||||
import { DefaultModal } from '../../../Components/Modal/DefaultModal';
|
import { DefaultModal } from '../../../Components/Modal/DefaultModal';
|
||||||
import defaultimage from '../../../Images/defaultItemImg.png';
|
import defaultimage from '../../../Images/defaultItemImg.png';
|
||||||
|
|
@ -14,10 +14,12 @@ import {
|
||||||
import { settingDataSelector } from '../../../Features/PreferenceMaster/PreferenceMaster.js';
|
import { settingDataSelector } from '../../../Features/PreferenceMaster/PreferenceMaster.js';
|
||||||
import horizontal from '../../../Images/defaultItemImg.png';
|
import horizontal from '../../../Images/defaultItemImg.png';
|
||||||
import { getKioskLightColour } from '../../../Features/Kiosk/kiosk';
|
import { getKioskLightColour } from '../../../Features/Kiosk/kiosk';
|
||||||
import { getConfigType } from '../../../Features/BookingScreen/BookingData/BookingData';
|
import { getConfigType, PreferenceData } from '../../../Features/BookingScreen/BookingData/BookingData';
|
||||||
|
import { calculateOverAllQtyLimit } from '../../../utils/calculations.js';
|
||||||
|
|
||||||
const CardPage3 = (props) => {
|
const CardPage3 = (props) => {
|
||||||
const dispatch = useDispatch();
|
const dispatch = useDispatch();
|
||||||
|
const preferenceDatas = useSelector(PreferenceData);
|
||||||
const kioskCategoriesCard = useSelector(GlobalProductCardListKiosk);
|
const kioskCategoriesCard = useSelector(GlobalProductCardListKiosk);
|
||||||
const KioskOrderDetails = useSelector(GlobalKioskOrderDetails);
|
const KioskOrderDetails = useSelector(GlobalKioskOrderDetails);
|
||||||
console.log(KioskOrderDetails, 'KioskOrderDetailsKioskOrderDetails');
|
console.log(KioskOrderDetails, 'KioskOrderDetailsKioskOrderDetails');
|
||||||
|
|
@ -35,6 +37,13 @@ const CardPage3 = (props) => {
|
||||||
const UomPrint = SettingDataSelector?.[0]?.SettingDtlDetails.filter(
|
const UomPrint = SettingDataSelector?.[0]?.SettingDtlDetails.filter(
|
||||||
(i) => i.SettingIdName === 'PrintUom'
|
(i) => i.SettingIdName === 'PrintUom'
|
||||||
)?.[0];
|
)?.[0];
|
||||||
|
const overAllLimitPreferenece =
|
||||||
|
preferenceDatas?.[0]?.['SettingDtlDetails']?.find(
|
||||||
|
(item) => (item.SettingIdName?.toLowerCase() === 'overalllimit') && item?.SettingValue === 'Y');
|
||||||
|
const itemWiseLimitPreferenece =
|
||||||
|
preferenceDatas?.[0]?.['SettingDtlDetails']?.find(
|
||||||
|
(item) => item.SettingIdName?.toLowerCase() === 'itemwiselimit' && item?.SettingValue === 'Y');
|
||||||
|
const maxQtyLimit = itemWiseLimitPreferenece?.SettingCount || overAllLimitPreferenece?.SettingCount || null;
|
||||||
const onClose = () => {
|
const onClose = () => {
|
||||||
setopenQuantity(false);
|
setopenQuantity(false);
|
||||||
};
|
};
|
||||||
|
|
@ -47,6 +56,15 @@ const CardPage3 = (props) => {
|
||||||
}, []);
|
}, []);
|
||||||
//Card on click function
|
//Card on click function
|
||||||
const CardOnClick = async (item, Parameter) => {
|
const CardOnClick = async (item, Parameter) => {
|
||||||
|
if ((overAllLimitPreferenece || itemWiseLimitPreferenece) && maxQtyLimit) {
|
||||||
|
if (overAllLimitPreferenece) {
|
||||||
|
const calculatedOverAllQty = calculateOverAllQtyLimit(KioskOrderDetails);
|
||||||
|
if ((calculatedOverAllQty + 1) > maxQtyLimit) {
|
||||||
|
message.warning(`Overall Quantity Limit Exceeds than ${maxQtyLimit}`)
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
setOnePeiceFlow(Parameter === 'OnePeiceProduct');
|
setOnePeiceFlow(Parameter === 'OnePeiceProduct');
|
||||||
|
|
||||||
const transformedItem = {
|
const transformedItem = {
|
||||||
|
|
|
||||||
|
|
@ -3,7 +3,7 @@ import { useDispatch, useSelector } from 'react-redux';
|
||||||
import { AiFillPlusCircle, AiFillMinusCircle } from 'react-icons/ai';
|
import { AiFillPlusCircle, AiFillMinusCircle } from 'react-icons/ai';
|
||||||
import { BsHandbag } from 'react-icons/bs';
|
import { BsHandbag } from 'react-icons/bs';
|
||||||
import { DefaultModal } from '../../../Components/Modal/DefaultModal';
|
import { DefaultModal } from '../../../Components/Modal/DefaultModal';
|
||||||
import { Drawer } from 'antd';
|
import { Drawer, message } from 'antd';
|
||||||
import '../../../Styles/Kiosk/CardPage/CardPage4.scss';
|
import '../../../Styles/Kiosk/CardPage/CardPage4.scss';
|
||||||
import {
|
import {
|
||||||
GlobalBookingTypeKiosk,
|
GlobalBookingTypeKiosk,
|
||||||
|
|
@ -14,10 +14,12 @@ import {
|
||||||
import { settingDataSelector } from '../../../Features/PreferenceMaster/PreferenceMaster.js';
|
import { settingDataSelector } from '../../../Features/PreferenceMaster/PreferenceMaster.js';
|
||||||
import horizontal from '../../../Images/defaultItemImg.png';
|
import horizontal from '../../../Images/defaultItemImg.png';
|
||||||
import { getKioskLightColour } from '../../../Features/Kiosk/kiosk';
|
import { getKioskLightColour } from '../../../Features/Kiosk/kiosk';
|
||||||
import { getConfigType } from '../../../Features/BookingScreen/BookingData/BookingData';
|
import { getConfigType, PreferenceData } from '../../../Features/BookingScreen/BookingData/BookingData';
|
||||||
|
import { calculateOverAllQtyLimit } from '../../../utils/calculations.js';
|
||||||
|
|
||||||
const CardPage4 = (props) => {
|
const CardPage4 = (props) => {
|
||||||
const dispatch = useDispatch();
|
const dispatch = useDispatch();
|
||||||
|
const preferenceDatas = useSelector(PreferenceData);
|
||||||
const kioskCategoriesCard = useSelector(GlobalProductCardListKiosk);
|
const kioskCategoriesCard = useSelector(GlobalProductCardListKiosk);
|
||||||
const KioskOrderDetails = useSelector(GlobalKioskOrderDetails);
|
const KioskOrderDetails = useSelector(GlobalKioskOrderDetails);
|
||||||
console.log(KioskOrderDetails, 'KioskOrderDetails');
|
console.log(KioskOrderDetails, 'KioskOrderDetails');
|
||||||
|
|
@ -36,7 +38,13 @@ const CardPage4 = (props) => {
|
||||||
const UomPrint = SettingDataSelector?.[0]?.SettingDtlDetails.filter(
|
const UomPrint = SettingDataSelector?.[0]?.SettingDtlDetails.filter(
|
||||||
(i) => i.SettingIdName === 'PrintUom'
|
(i) => i.SettingIdName === 'PrintUom'
|
||||||
)?.[0];
|
)?.[0];
|
||||||
|
const overAllLimitPreferenece =
|
||||||
|
preferenceDatas?.[0]?.['SettingDtlDetails']?.find(
|
||||||
|
(item) => (item.SettingIdName?.toLowerCase() === 'overalllimit') && item?.SettingValue === 'Y');
|
||||||
|
const itemWiseLimitPreferenece =
|
||||||
|
preferenceDatas?.[0]?.['SettingDtlDetails']?.find(
|
||||||
|
(item) => item.SettingIdName?.toLowerCase() === 'itemwiselimit' && item?.SettingValue === 'Y');
|
||||||
|
const maxQtyLimit = itemWiseLimitPreferenece?.SettingCount || overAllLimitPreferenece?.SettingCount || null;
|
||||||
useEffect(() => {
|
useEffect(() => {
|
||||||
getBookingTypeId();
|
getBookingTypeId();
|
||||||
}, []);
|
}, []);
|
||||||
|
|
@ -79,6 +87,15 @@ const CardPage4 = (props) => {
|
||||||
//Card on click function
|
//Card on click function
|
||||||
|
|
||||||
const CardOnClick = async (item, Parameter) => {
|
const CardOnClick = async (item, Parameter) => {
|
||||||
|
if ((overAllLimitPreferenece || itemWiseLimitPreferenece) && maxQtyLimit) {
|
||||||
|
if (overAllLimitPreferenece) {
|
||||||
|
const calculatedOverAllQty = calculateOverAllQtyLimit(KioskOrderDetails);
|
||||||
|
if ((calculatedOverAllQty + 1) > maxQtyLimit) {
|
||||||
|
message.warning(`Overall Quantity Limit Exceeds than ${maxQtyLimit}`)
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
setOnePeiceFlow(Parameter === 'OnePeiceProduct');
|
setOnePeiceFlow(Parameter === 'OnePeiceProduct');
|
||||||
|
|
||||||
const transformedItem = {
|
const transformedItem = {
|
||||||
|
|
|
||||||
|
|
@ -70,6 +70,11 @@ const KioskBookingPage = () => {
|
||||||
}, []);
|
}, []);
|
||||||
|
|
||||||
const fetchData = async () => {
|
const fetchData = async () => {
|
||||||
|
dispatch(getPreferenceData({
|
||||||
|
CompId: SessionDtl?.CompId,
|
||||||
|
BranchId: SessionDtl?.BranchId,
|
||||||
|
AppId: SessionDtl?.AppId,
|
||||||
|
})).unwrap();
|
||||||
const queryParams = await getQueryParams();
|
const queryParams = await getQueryParams();
|
||||||
|
|
||||||
console.log('queryParams', queryParams);
|
console.log('queryParams', queryParams);
|
||||||
|
|
@ -161,9 +166,11 @@ const KioskBookingPage = () => {
|
||||||
DeviceMacAddress: MACAddress
|
DeviceMacAddress: MACAddress
|
||||||
})).unwrap();
|
})).unwrap();
|
||||||
|
|
||||||
dispatch(getPreferenceData({ CompId: responseData?.CompId,
|
dispatch(getPreferenceData({
|
||||||
|
CompId: responseData?.CompId,
|
||||||
BranchId: responseData?.BranchId,
|
BranchId: responseData?.BranchId,
|
||||||
AppId: responseData?.AppId,})).unwrap();
|
AppId: responseData?.AppId,
|
||||||
|
})).unwrap();
|
||||||
dispatch(
|
dispatch(
|
||||||
getProductCategories({
|
getProductCategories({
|
||||||
CompId: responseData?.CompId,
|
CompId: responseData?.CompId,
|
||||||
|
|
|
||||||
|
|
@ -4,9 +4,22 @@ import { changeKioskOrderDetails } from '../../../Features/BookingScreen/Booking
|
||||||
import PozoDineInIcon from '../KioskIcons/KioskDineIn';
|
import PozoDineInIcon from '../KioskIcons/KioskDineIn';
|
||||||
import TakeAway from '../KioskIcons/KioskTakeAway';
|
import TakeAway from '../KioskIcons/KioskTakeAway';
|
||||||
import '../../../Styles/Kiosk/OrderCart/OrderCart1.scss';
|
import '../../../Styles/Kiosk/OrderCart/OrderCart1.scss';
|
||||||
|
import { useSelector } from 'react-redux';
|
||||||
|
import { PreferenceData } from '../../../Features/BookingScreen/BookingData/BookingData';
|
||||||
|
import { message } from 'antd';
|
||||||
|
import { calculateOverAllQtyLimit } from '../../../utils/calculations';
|
||||||
|
|
||||||
const KisokOrderCart1 = (props) => {
|
const KisokOrderCart1 = (props) => {
|
||||||
const dispatch = useDispatch();
|
const dispatch = useDispatch();
|
||||||
|
const preferenceDatas = useSelector(PreferenceData);
|
||||||
|
const overAllLimitPreferenece =
|
||||||
|
preferenceDatas?.[0]?.['SettingDtlDetails']?.find(
|
||||||
|
(item) => (item.SettingIdName?.toLowerCase() === 'overalllimit') && item?.SettingValue === 'Y');
|
||||||
|
const itemWiseLimitPreferenece =
|
||||||
|
preferenceDatas?.[0]?.['SettingDtlDetails']?.find(
|
||||||
|
(item) => item.SettingIdName?.toLowerCase() === 'itemwiselimit' && item?.SettingValue === 'Y');
|
||||||
|
const maxQtyLimit = itemWiseLimitPreferenece?.SettingCount || overAllLimitPreferenece?.SettingCount || null;
|
||||||
|
|
||||||
const KioskOrderDetails = props?.KioskOrderDetails;
|
const KioskOrderDetails = props?.KioskOrderDetails;
|
||||||
const removeFromCart = async (item) => {
|
const removeFromCart = async (item) => {
|
||||||
await dispatch(
|
await dispatch(
|
||||||
|
|
@ -24,6 +37,15 @@ const KisokOrderCart1 = (props) => {
|
||||||
);
|
);
|
||||||
};
|
};
|
||||||
const increase = async (item) => {
|
const increase = async (item) => {
|
||||||
|
if ((overAllLimitPreferenece || itemWiseLimitPreferenece) && maxQtyLimit) {
|
||||||
|
if (overAllLimitPreferenece) {
|
||||||
|
const calculatedOverAllQty = calculateOverAllQtyLimit(KioskOrderDetails);
|
||||||
|
if ((calculatedOverAllQty + 1) > maxQtyLimit) {
|
||||||
|
message.warning(`Overall Quantity Limit Exceeds than ${maxQtyLimit}`)
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
await dispatch(
|
await dispatch(
|
||||||
changeKioskOrderDetails(
|
changeKioskOrderDetails(
|
||||||
KioskOrderDetails?.map(
|
KioskOrderDetails?.map(
|
||||||
|
|
|
||||||
|
|
@ -6,9 +6,22 @@ import '../../../Styles/Kiosk/OrderCart/OrderCart2.scss';
|
||||||
import PozoDineInIcon from '../KioskIcons/KioskDineIn';
|
import PozoDineInIcon from '../KioskIcons/KioskDineIn';
|
||||||
import TakeAway from '../KioskIcons/KioskTakeAway';
|
import TakeAway from '../KioskIcons/KioskTakeAway';
|
||||||
import { color } from 'highcharts';
|
import { color } from 'highcharts';
|
||||||
|
import { calculateOverAllQtyLimit } from '../../../utils/calculations';
|
||||||
|
import { PreferenceData } from '../../../Features/BookingScreen/BookingData/BookingData';
|
||||||
|
import { useSelector } from 'react-redux';
|
||||||
|
import { message } from 'antd';
|
||||||
|
|
||||||
const KisokOrderCart2 = (props) => {
|
const KisokOrderCart2 = (props) => {
|
||||||
const dispatch = useDispatch();
|
const dispatch = useDispatch();
|
||||||
|
const preferenceDatas = useSelector(PreferenceData);
|
||||||
|
const overAllLimitPreferenece =
|
||||||
|
preferenceDatas?.[0]?.['SettingDtlDetails']?.find(
|
||||||
|
(item) => (item.SettingIdName?.toLowerCase() === 'overalllimit') && item?.SettingValue === 'Y');
|
||||||
|
const itemWiseLimitPreferenece =
|
||||||
|
preferenceDatas?.[0]?.['SettingDtlDetails']?.find(
|
||||||
|
(item) => item.SettingIdName?.toLowerCase() === 'itemwiselimit' && item?.SettingValue === 'Y');
|
||||||
|
const maxQtyLimit = itemWiseLimitPreferenece?.SettingCount || overAllLimitPreferenece?.SettingCount || null;
|
||||||
|
|
||||||
const KioskOrderDetails = props?.KioskOrderDetails;
|
const KioskOrderDetails = props?.KioskOrderDetails;
|
||||||
|
|
||||||
const removeFromCart = async (item) => {
|
const removeFromCart = async (item) => {
|
||||||
|
|
@ -27,6 +40,16 @@ const KisokOrderCart2 = (props) => {
|
||||||
);
|
);
|
||||||
};
|
};
|
||||||
const increase = async (item) => {
|
const increase = async (item) => {
|
||||||
|
if ((overAllLimitPreferenece || itemWiseLimitPreferenece) && maxQtyLimit) {
|
||||||
|
if (overAllLimitPreferenece) {
|
||||||
|
const calculatedOverAllQty = calculateOverAllQtyLimit(KioskOrderDetails);
|
||||||
|
if ((calculatedOverAllQty + 1) > maxQtyLimit) {
|
||||||
|
message.warning(`Overall Quantity Limit Exceeds than ${maxQtyLimit}`)
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
await dispatch(
|
await dispatch(
|
||||||
changeKioskOrderDetails(
|
changeKioskOrderDetails(
|
||||||
KioskOrderDetails?.map(
|
KioskOrderDetails?.map(
|
||||||
|
|
|
||||||
|
|
@ -8,10 +8,22 @@ import {
|
||||||
import PozoDineInIcon from '../KioskIcons/KioskDineIn';
|
import PozoDineInIcon from '../KioskIcons/KioskDineIn';
|
||||||
import TakeAway from '../KioskIcons/KioskTakeAway';
|
import TakeAway from '../KioskIcons/KioskTakeAway';
|
||||||
import '../../../Styles/Kiosk/OrderCart/OrderCart3.scss';
|
import '../../../Styles/Kiosk/OrderCart/OrderCart3.scss';
|
||||||
|
import { calculateOverAllQtyLimit } from '../../../utils/calculations';
|
||||||
|
import { message } from 'antd';
|
||||||
|
import { PreferenceData } from '../../../Features/BookingScreen/BookingData/BookingData';
|
||||||
|
|
||||||
const KisokOrderCart3 = (props) => {
|
const KisokOrderCart3 = (props) => {
|
||||||
const dispatch = useDispatch();
|
const dispatch = useDispatch();
|
||||||
const getKioskDarkColourdata = useSelector(getKioskDarkColour);
|
const getKioskDarkColourdata = useSelector(getKioskDarkColour);
|
||||||
|
const preferenceDatas = useSelector(PreferenceData);
|
||||||
|
const overAllLimitPreferenece =
|
||||||
|
preferenceDatas?.[0]?.['SettingDtlDetails']?.find(
|
||||||
|
(item) => (item.SettingIdName?.toLowerCase() === 'overalllimit') && item?.SettingValue === 'Y');
|
||||||
|
const itemWiseLimitPreferenece =
|
||||||
|
preferenceDatas?.[0]?.['SettingDtlDetails']?.find(
|
||||||
|
(item) => item.SettingIdName?.toLowerCase() === 'itemwiselimit' && item?.SettingValue === 'Y');
|
||||||
|
const maxQtyLimit = itemWiseLimitPreferenece?.SettingCount || overAllLimitPreferenece?.SettingCount || null;
|
||||||
|
|
||||||
const BookingTypeBoth = useSelector(GlobalKioskBookingTypeBoth);
|
const BookingTypeBoth = useSelector(GlobalKioskBookingTypeBoth);
|
||||||
const KioskOrderDetails = props?.KioskOrderDetails;
|
const KioskOrderDetails = props?.KioskOrderDetails;
|
||||||
|
|
||||||
|
|
@ -31,6 +43,15 @@ const KisokOrderCart3 = (props) => {
|
||||||
);
|
);
|
||||||
};
|
};
|
||||||
const increase = async (item) => {
|
const increase = async (item) => {
|
||||||
|
if ((overAllLimitPreferenece || itemWiseLimitPreferenece) && maxQtyLimit) {
|
||||||
|
if (overAllLimitPreferenece) {
|
||||||
|
const calculatedOverAllQty = calculateOverAllQtyLimit(KioskOrderDetails);
|
||||||
|
if ((calculatedOverAllQty + 1) > maxQtyLimit) {
|
||||||
|
message.warning(`Overall Quantity Limit Exceeds than ${maxQtyLimit}`)
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
await dispatch(
|
await dispatch(
|
||||||
changeKioskOrderDetails(
|
changeKioskOrderDetails(
|
||||||
KioskOrderDetails?.map(
|
KioskOrderDetails?.map(
|
||||||
|
|
|
||||||
|
|
@ -16,6 +16,9 @@ import KioskFooter3 from '../Components/KioskFooter3';
|
||||||
import PozoDineInIcon from '../KioskIcons/KioskDineIn';
|
import PozoDineInIcon from '../KioskIcons/KioskDineIn';
|
||||||
import TakeAway from '../KioskIcons/KioskTakeAway';
|
import TakeAway from '../KioskIcons/KioskTakeAway';
|
||||||
import '../../../Styles/Kiosk/OrderView/OrderView1.scss';
|
import '../../../Styles/Kiosk/OrderView/OrderView1.scss';
|
||||||
|
import { PreferenceData } from '../../../Features/BookingScreen/BookingData/BookingData';
|
||||||
|
import { calculateOverAllQtyLimit } from '../../../utils/calculations';
|
||||||
|
import { message } from 'antd';
|
||||||
|
|
||||||
const OrderView1 = (props) => {
|
const OrderView1 = (props) => {
|
||||||
const KioskThemeData = props?.hasOwnProperty('KioskThemeData')
|
const KioskThemeData = props?.hasOwnProperty('KioskThemeData')
|
||||||
|
|
@ -24,6 +27,14 @@ const OrderView1 = (props) => {
|
||||||
const dispatch = useDispatch();
|
const dispatch = useDispatch();
|
||||||
const KioskOrderDetails = useSelector(GlobalKioskOrderDetails);
|
const KioskOrderDetails = useSelector(GlobalKioskOrderDetails);
|
||||||
const getKioskLightColourdata = useSelector(getKioskLightColour);
|
const getKioskLightColourdata = useSelector(getKioskLightColour);
|
||||||
|
const preferenceDatas = useSelector(PreferenceData);
|
||||||
|
const overAllLimitPreferenece =
|
||||||
|
preferenceDatas?.[0]?.['SettingDtlDetails']?.find(
|
||||||
|
(item) => (item.SettingIdName?.toLowerCase() === 'overalllimit') && item?.SettingValue === 'Y');
|
||||||
|
const itemWiseLimitPreferenece =
|
||||||
|
preferenceDatas?.[0]?.['SettingDtlDetails']?.find(
|
||||||
|
(item) => item.SettingIdName?.toLowerCase() === 'itemwiselimit' && item?.SettingValue === 'Y');
|
||||||
|
const maxQtyLimit = itemWiseLimitPreferenece?.SettingCount || overAllLimitPreferenece?.SettingCount || null;
|
||||||
|
|
||||||
const BackToCategory = async () => {
|
const BackToCategory = async () => {
|
||||||
await dispatch(changeKioskPageName('categoryPage'));
|
await dispatch(changeKioskPageName('categoryPage'));
|
||||||
|
|
@ -44,6 +55,17 @@ const OrderView1 = (props) => {
|
||||||
);
|
);
|
||||||
};
|
};
|
||||||
const increase = async (item) => {
|
const increase = async (item) => {
|
||||||
|
|
||||||
|
|
||||||
|
if ((overAllLimitPreferenece || itemWiseLimitPreferenece) && maxQtyLimit) {
|
||||||
|
if (overAllLimitPreferenece) {
|
||||||
|
const calculatedOverAllQty = calculateOverAllQtyLimit(KioskOrderDetails);
|
||||||
|
if ((calculatedOverAllQty + 1) > maxQtyLimit) {
|
||||||
|
message.warning(`Overall Quantity Limit Exceeds than ${maxQtyLimit}`)
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
await dispatch(
|
await dispatch(
|
||||||
changeKioskOrderDetails(
|
changeKioskOrderDetails(
|
||||||
KioskOrderDetails?.map(
|
KioskOrderDetails?.map(
|
||||||
|
|
|
||||||
|
|
@ -18,6 +18,9 @@ import { IoMdClose } from 'react-icons/io';
|
||||||
import defaultImg from '../../../Images/defaultItemImg.png';
|
import defaultImg from '../../../Images/defaultItemImg.png';
|
||||||
import PozoDineInIcon from '../KioskIcons/KioskDineIn';
|
import PozoDineInIcon from '../KioskIcons/KioskDineIn';
|
||||||
import TakeAway from '../KioskIcons/KioskTakeAway';
|
import TakeAway from '../KioskIcons/KioskTakeAway';
|
||||||
|
import { calculateOverAllQtyLimit } from '../../../utils/calculations';
|
||||||
|
import { message } from 'antd';
|
||||||
|
import { PreferenceData } from '../../../Features/BookingScreen/BookingData/BookingData';
|
||||||
|
|
||||||
const KioskOrderView2 = (props) => {
|
const KioskOrderView2 = (props) => {
|
||||||
console.log(props, 'propsprops');
|
console.log(props, 'propsprops');
|
||||||
|
|
@ -25,6 +28,15 @@ const KioskOrderView2 = (props) => {
|
||||||
? props['KioskThemeData']
|
? props['KioskThemeData']
|
||||||
: null;
|
: null;
|
||||||
const dispatch = useDispatch();
|
const dispatch = useDispatch();
|
||||||
|
const preferenceDatas = useSelector(PreferenceData);
|
||||||
|
const overAllLimitPreferenece =
|
||||||
|
preferenceDatas?.[0]?.['SettingDtlDetails']?.find(
|
||||||
|
(item) => (item.SettingIdName?.toLowerCase() === 'overalllimit') && item?.SettingValue === 'Y');
|
||||||
|
const itemWiseLimitPreferenece =
|
||||||
|
preferenceDatas?.[0]?.['SettingDtlDetails']?.find(
|
||||||
|
(item) => item.SettingIdName?.toLowerCase() === 'itemwiselimit' && item?.SettingValue === 'Y');
|
||||||
|
const maxQtyLimit = itemWiseLimitPreferenece?.SettingCount || overAllLimitPreferenece?.SettingCount || null;
|
||||||
|
|
||||||
const KioskOrderDetails = useSelector(GlobalKioskOrderDetails);
|
const KioskOrderDetails = useSelector(GlobalKioskOrderDetails);
|
||||||
const getKioskLightColourdata = useSelector(getKioskLightColour);
|
const getKioskLightColourdata = useSelector(getKioskLightColour);
|
||||||
console.log(KioskOrderDetails, 'KioskOrderDetailsh');
|
console.log(KioskOrderDetails, 'KioskOrderDetailsh');
|
||||||
|
|
@ -54,6 +66,15 @@ const KioskOrderView2 = (props) => {
|
||||||
);
|
);
|
||||||
};
|
};
|
||||||
const increase = async (item) => {
|
const increase = async (item) => {
|
||||||
|
if ((overAllLimitPreferenece || itemWiseLimitPreferenece) && maxQtyLimit) {
|
||||||
|
if (overAllLimitPreferenece) {
|
||||||
|
const calculatedOverAllQty = calculateOverAllQtyLimit(KioskOrderDetails);
|
||||||
|
if ((calculatedOverAllQty + 1) > maxQtyLimit) {
|
||||||
|
message.warning(`Overall Quantity Limit Exceeds than ${maxQtyLimit}`)
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
await dispatch(
|
await dispatch(
|
||||||
changeKioskOrderDetails(
|
changeKioskOrderDetails(
|
||||||
KioskOrderDetails?.map(
|
KioskOrderDetails?.map(
|
||||||
|
|
|
||||||
|
|
@ -18,6 +18,9 @@ import {
|
||||||
import KioskFooter3 from '../Components/KioskFooter3';
|
import KioskFooter3 from '../Components/KioskFooter3';
|
||||||
import PozoDineInIcon from '../KioskIcons/KioskDineIn';
|
import PozoDineInIcon from '../KioskIcons/KioskDineIn';
|
||||||
import TakeAway from '../KioskIcons/KioskTakeAway';
|
import TakeAway from '../KioskIcons/KioskTakeAway';
|
||||||
|
import { PreferenceData } from '../../../Features/BookingScreen/BookingData/BookingData';
|
||||||
|
import { calculateOverAllQtyLimit } from '../../../utils/calculations';
|
||||||
|
import { message } from 'antd';
|
||||||
|
|
||||||
const KioskOrderView = (props) => {
|
const KioskOrderView = (props) => {
|
||||||
console.log(props, 'propsprops');
|
console.log(props, 'propsprops');
|
||||||
|
|
@ -27,6 +30,14 @@ const KioskOrderView = (props) => {
|
||||||
const dispatch = useDispatch();
|
const dispatch = useDispatch();
|
||||||
const KioskOrderDetails = useSelector(GlobalKioskOrderDetails);
|
const KioskOrderDetails = useSelector(GlobalKioskOrderDetails);
|
||||||
const getKioskLightColourdata = useSelector(getKioskLightColour);
|
const getKioskLightColourdata = useSelector(getKioskLightColour);
|
||||||
|
const preferenceDatas = useSelector(PreferenceData);
|
||||||
|
const overAllLimitPreferenece =
|
||||||
|
preferenceDatas?.[0]?.['SettingDtlDetails']?.find(
|
||||||
|
(item) => (item.SettingIdName?.toLowerCase() === 'overalllimit') && item?.SettingValue === 'Y');
|
||||||
|
const itemWiseLimitPreferenece =
|
||||||
|
preferenceDatas?.[0]?.['SettingDtlDetails']?.find(
|
||||||
|
(item) => item.SettingIdName?.toLowerCase() === 'itemwiselimit' && item?.SettingValue === 'Y');
|
||||||
|
const maxQtyLimit = itemWiseLimitPreferenece?.SettingCount || overAllLimitPreferenece?.SettingCount || null;
|
||||||
|
|
||||||
const BackToCategory = async () => {
|
const BackToCategory = async () => {
|
||||||
await dispatch(changeKioskPageName('categoryPage'));
|
await dispatch(changeKioskPageName('categoryPage'));
|
||||||
|
|
@ -47,6 +58,16 @@ const KioskOrderView = (props) => {
|
||||||
);
|
);
|
||||||
};
|
};
|
||||||
const increase = async (item) => {
|
const increase = async (item) => {
|
||||||
|
|
||||||
|
if ((overAllLimitPreferenece || itemWiseLimitPreferenece) && maxQtyLimit) {
|
||||||
|
if (overAllLimitPreferenece) {
|
||||||
|
const calculatedOverAllQty = calculateOverAllQtyLimit(KioskOrderDetails);
|
||||||
|
if ((calculatedOverAllQty + 1) > maxQtyLimit) {
|
||||||
|
message.warning(`Overall Quantity Limit Exceeds than ${maxQtyLimit}`)
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
await dispatch(
|
await dispatch(
|
||||||
changeKioskOrderDetails(
|
changeKioskOrderDetails(
|
||||||
KioskOrderDetails?.map(
|
KioskOrderDetails?.map(
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue