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