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 = {
|
||||
|
|
@ -81,11 +100,11 @@ const CardPage2 = (props) => {
|
|||
(cartItem) =>
|
||||
cartItem?.ProdId === item?.ProductDetail?.[0]?.ProdId &&
|
||||
cartItem?.InwardDtlId ===
|
||||
item?.ProductDetail?.[0]?.ProdVariantDetails?.[0]?.StockDetails?.[0]
|
||||
?.InwardDtlId &&
|
||||
item?.ProductDetail?.[0]?.ProdVariantDetails?.[0]?.StockDetails?.[0]
|
||||
?.InwardDtlId &&
|
||||
cartItem?.OrderRate ===
|
||||
item?.ProductDetail?.[0]?.ProdVariantDetails?.[0]?.StockDetails?.[0]
|
||||
?.SellPrice
|
||||
item?.ProductDetail?.[0]?.ProdVariantDetails?.[0]?.StockDetails?.[0]
|
||||
?.SellPrice
|
||||
);
|
||||
if (Isincart && Isincart?.StockAvailable === 'Y') {
|
||||
if (Isincart?.BalanceQty > Isincart?.OrderQty) {
|
||||
|
|
@ -131,13 +150,13 @@ const CardPage2 = (props) => {
|
|||
(cartItem) =>
|
||||
cartItem?.ProdId === qtydata?.ProductDetail?.[item?.QtyIndex]?.ProdId &&
|
||||
cartItem?.InwardDtlId ===
|
||||
qtydata?.ProductDetail?.[item?.QtyIndex]?.ProdVariantDetails?.[
|
||||
item?.VarientIndex
|
||||
]?.StockDetails?.[0]?.InwardDtlId &&
|
||||
qtydata?.ProductDetail?.[item?.QtyIndex]?.ProdVariantDetails?.[
|
||||
item?.VarientIndex
|
||||
]?.StockDetails?.[0]?.InwardDtlId &&
|
||||
cartItem?.OrderRate ===
|
||||
qtydata?.ProductDetail?.[item?.QtyIndex]?.ProdVariantDetails?.[
|
||||
item?.VarientIndex
|
||||
]?.StockDetails?.[0]?.SellPrice
|
||||
qtydata?.ProductDetail?.[item?.QtyIndex]?.ProdVariantDetails?.[
|
||||
item?.VarientIndex
|
||||
]?.StockDetails?.[0]?.SellPrice
|
||||
);
|
||||
console.log(Isincart, item, KioskOrderDetails, 'IsincartsingleVarient');
|
||||
if (Isincart && Isincart?.StockAvailable === 'Y') {
|
||||
|
|
@ -236,7 +255,7 @@ const CardPage2 = (props) => {
|
|||
SinglePc: onePcs ? 'Y' : 'N',
|
||||
NoOfPcs: onePcs
|
||||
? a?.ProductDetail?.[QtyIndex]?.ProdVariantDetails?.[VarientIndex]
|
||||
?.StockDetails?.[stockIndex]?.NoOfPcs
|
||||
?.StockDetails?.[stockIndex]?.NoOfPcs
|
||||
: null,
|
||||
ProdVariantName:
|
||||
a?.ProductDetail?.[QtyIndex]?.ProdVariantDetails?.[VarientIndex]
|
||||
|
|
@ -261,14 +280,14 @@ const CardPage2 = (props) => {
|
|||
?.StockDetails?.[stockIndex]?.InwardId,
|
||||
MRP: onePcs
|
||||
? a?.ProductDetail?.[QtyIndex]?.ProdVariantDetails?.[VarientIndex]
|
||||
?.StockDetails?.[stockIndex]?.OnePcsPrice
|
||||
?.StockDetails?.[stockIndex]?.OnePcsPrice
|
||||
: a?.ProductDetail?.[QtyIndex]?.ProdVariantDetails?.[VarientIndex]
|
||||
?.StockDetails?.[stockIndex]?.MRP,
|
||||
?.StockDetails?.[stockIndex]?.MRP,
|
||||
OrderRate: onePcs
|
||||
? a?.ProductDetail?.[QtyIndex]?.ProdVariantDetails?.[VarientIndex]
|
||||
?.StockDetails?.[stockIndex]?.OnePcsPrice
|
||||
?.StockDetails?.[stockIndex]?.OnePcsPrice
|
||||
: a?.ProductDetail?.[QtyIndex]?.ProdVariantDetails?.[VarientIndex]
|
||||
?.StockDetails?.[stockIndex]?.SellPrice,
|
||||
?.StockDetails?.[stockIndex]?.SellPrice,
|
||||
SuppId:
|
||||
a?.ProductDetail?.[QtyIndex]?.ProdVariantDetails?.[VarientIndex]
|
||||
?.StockDetails?.[stockIndex]?.SuppId,
|
||||
|
|
@ -312,28 +331,28 @@ const CardPage2 = (props) => {
|
|||
cartItem // if the item is already in the cart, increase the quantity of the item
|
||||
) =>
|
||||
cartItem.ProdId === item.ProdId &&
|
||||
cartItem.InwardDtlId === item.InwardDtlId &&
|
||||
cartItem.OrderRate === item.OrderRate &&
|
||||
cartItem.BookingTypeName === item.BookingTypeName
|
||||
cartItem.InwardDtlId === item.InwardDtlId &&
|
||||
cartItem.OrderRate === item.OrderRate &&
|
||||
cartItem.BookingTypeName === item.BookingTypeName
|
||||
? {
|
||||
...cartItem,
|
||||
OrderQty: cartItem.OrderQty + 1,
|
||||
TotalAmt: (cartItem.OrderQty + 1) * cartItem.OrderRate,
|
||||
TaxAmt: (
|
||||
...cartItem,
|
||||
OrderQty: cartItem.OrderQty + 1,
|
||||
TotalAmt: (cartItem.OrderQty + 1) * cartItem.OrderRate,
|
||||
TaxAmt: (
|
||||
((cartItem.OrderQty + 1) *
|
||||
cartItem.OrderRate *
|
||||
cartItem.TaxPercentage) /
|
||||
(100 + cartItem.TaxPercentage)
|
||||
).toFixed(2),
|
||||
WithoutTaxRate:
|
||||
(cartItem.OrderQty + 1) * cartItem.OrderRate -
|
||||
(
|
||||
((cartItem.OrderQty + 1) *
|
||||
cartItem.OrderRate *
|
||||
cartItem.TaxPercentage) /
|
||||
(100 + cartItem.TaxPercentage)
|
||||
).toFixed(2),
|
||||
WithoutTaxRate:
|
||||
(cartItem.OrderQty + 1) * cartItem.OrderRate -
|
||||
(
|
||||
((cartItem.OrderQty + 1) *
|
||||
cartItem.OrderRate *
|
||||
cartItem.TaxPercentage) /
|
||||
(100 + cartItem.TaxPercentage)
|
||||
).toFixed(2),
|
||||
}
|
||||
}
|
||||
: cartItem // otherwise, return the cart item
|
||||
)
|
||||
)
|
||||
|
|
@ -515,9 +534,9 @@ const CardPage2 = (props) => {
|
|||
card?.OverAllQty,
|
||||
KioskOrderDetails
|
||||
) > 0) ||
|
||||
card?.ProductDetail?.some(
|
||||
(item) => item?.StockAvailable !== 'Y'
|
||||
)
|
||||
card?.ProductDetail?.some(
|
||||
(item) => item?.StockAvailable !== 'Y'
|
||||
)
|
||||
? 'CardPage2-container'
|
||||
: 'CardPage2-container-dis '
|
||||
}
|
||||
|
|
@ -540,9 +559,9 @@ const CardPage2 = (props) => {
|
|||
card?.OverAllQty,
|
||||
KioskOrderDetails
|
||||
) > 0) ||
|
||||
card?.ProductDetail?.some(
|
||||
(item) => item?.StockAvailable !== 'Y'
|
||||
) ? (
|
||||
card?.ProductDetail?.some(
|
||||
(item) => item?.StockAvailable !== 'Y'
|
||||
) ? (
|
||||
''
|
||||
) : (
|
||||
<div
|
||||
|
|
@ -560,17 +579,17 @@ const CardPage2 = (props) => {
|
|||
card?.ProductDetail?.some(
|
||||
(item) => item?.StockAvailable !== 'Y'
|
||||
)) && (
|
||||
<p className="CardPage2-container-price">
|
||||
{' '}
|
||||
<span style={{ fontSize: '16px', fontFamily: 'gilroy' }}>
|
||||
₹
|
||||
</span>
|
||||
{ItemSellingPrice(card)}
|
||||
<span className="BSItemCard-itemCount">
|
||||
({ItemSize(card)} {ItemUomName(card)})
|
||||
</span>
|
||||
</p>
|
||||
)}
|
||||
<p className="CardPage2-container-price">
|
||||
{' '}
|
||||
<span style={{ fontSize: '16px', fontFamily: 'gilroy' }}>
|
||||
₹
|
||||
</span>
|
||||
{ItemSellingPrice(card)}
|
||||
<span className="BSItemCard-itemCount">
|
||||
({ItemSize(card)} {ItemUomName(card)})
|
||||
</span>
|
||||
</p>
|
||||
)}
|
||||
</div>
|
||||
)
|
||||
)}
|
||||
|
|
@ -723,7 +742,7 @@ const CardPage2 = (props) => {
|
|||
KioskOrderDetails,
|
||||
item?.ProdVariantName
|
||||
) > 0 ||
|
||||
qtydata?.ProductDetail?.[QtyIndex]?.StockAvailable !==
|
||||
qtydata?.ProductDetail?.[QtyIndex]?.StockAvailable !==
|
||||
'Y'
|
||||
? 'ProVariantCard'
|
||||
: 'ProVariantCard-dis'
|
||||
|
|
@ -739,7 +758,7 @@ const CardPage2 = (props) => {
|
|||
KioskOrderDetails,
|
||||
item?.ProdVariantName
|
||||
) > 0 ||
|
||||
qtydata?.ProductDetail?.[QtyIndex]?.StockAvailable !==
|
||||
qtydata?.ProductDetail?.[QtyIndex]?.StockAvailable !==
|
||||
'Y' ? (
|
||||
<div>₹ {item?.StockDetails?.[0]?.SellPrice}</div>
|
||||
) : (
|
||||
|
|
|
|||
|
|
@ -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 = {
|
||||
|
|
@ -80,11 +98,11 @@ const CardPage3 = (props) => {
|
|||
(cartItem) =>
|
||||
cartItem?.ProdId === item?.ProductDetail?.[0]?.ProdId &&
|
||||
cartItem?.InwardDtlId ===
|
||||
item?.ProductDetail?.[0]?.ProdVariantDetails?.[0]?.StockDetails?.[0]
|
||||
?.InwardDtlId &&
|
||||
item?.ProductDetail?.[0]?.ProdVariantDetails?.[0]?.StockDetails?.[0]
|
||||
?.InwardDtlId &&
|
||||
cartItem?.OrderRate ===
|
||||
item?.ProductDetail?.[0]?.ProdVariantDetails?.[0]?.StockDetails?.[0]
|
||||
?.SellPrice
|
||||
item?.ProductDetail?.[0]?.ProdVariantDetails?.[0]?.StockDetails?.[0]
|
||||
?.SellPrice
|
||||
);
|
||||
if (Isincart && Isincart?.StockAvailable === 'Y') {
|
||||
if (Isincart?.BalanceQty > Isincart?.OrderQty) {
|
||||
|
|
@ -131,13 +149,13 @@ const CardPage3 = (props) => {
|
|||
(cartItem) =>
|
||||
cartItem?.ProdId === qtydata?.ProductDetail?.[item?.QtyIndex]?.ProdId &&
|
||||
cartItem?.InwardDtlId ===
|
||||
qtydata?.ProductDetail?.[item?.QtyIndex]?.ProdVariantDetails?.[
|
||||
item?.VarientIndex
|
||||
]?.StockDetails?.[0]?.InwardDtlId &&
|
||||
qtydata?.ProductDetail?.[item?.QtyIndex]?.ProdVariantDetails?.[
|
||||
item?.VarientIndex
|
||||
]?.StockDetails?.[0]?.InwardDtlId &&
|
||||
cartItem?.OrderRate ===
|
||||
qtydata?.ProductDetail?.[item?.QtyIndex]?.ProdVariantDetails?.[
|
||||
item?.VarientIndex
|
||||
]?.StockDetails?.[0]?.SellPrice
|
||||
qtydata?.ProductDetail?.[item?.QtyIndex]?.ProdVariantDetails?.[
|
||||
item?.VarientIndex
|
||||
]?.StockDetails?.[0]?.SellPrice
|
||||
);
|
||||
console.log(Isincart, item, KioskOrderDetails, 'IsincartsingleVarient');
|
||||
if (Isincart && Isincart?.StockAvailable === 'Y') {
|
||||
|
|
@ -234,7 +252,7 @@ const CardPage3 = (props) => {
|
|||
SinglePc: onePcs ? 'Y' : 'N',
|
||||
NoOfPcs: onePcs
|
||||
? a?.ProductDetail?.[QtyIndex]?.ProdVariantDetails?.[VarientIndex]
|
||||
?.StockDetails?.[stockIndex]?.NoOfPcs
|
||||
?.StockDetails?.[stockIndex]?.NoOfPcs
|
||||
: null,
|
||||
ProdVariantName:
|
||||
a?.ProductDetail?.[QtyIndex]?.ProdVariantDetails?.[VarientIndex]
|
||||
|
|
@ -259,14 +277,14 @@ const CardPage3 = (props) => {
|
|||
?.StockDetails?.[stockIndex]?.InwardId,
|
||||
MRP: onePcs
|
||||
? a?.ProductDetail?.[QtyIndex]?.ProdVariantDetails?.[VarientIndex]
|
||||
?.StockDetails?.[stockIndex]?.OnePcsPrice
|
||||
?.StockDetails?.[stockIndex]?.OnePcsPrice
|
||||
: a?.ProductDetail?.[QtyIndex]?.ProdVariantDetails?.[VarientIndex]
|
||||
?.StockDetails?.[stockIndex]?.MRP,
|
||||
?.StockDetails?.[stockIndex]?.MRP,
|
||||
OrderRate: onePcs
|
||||
? a?.ProductDetail?.[QtyIndex]?.ProdVariantDetails?.[VarientIndex]
|
||||
?.StockDetails?.[stockIndex]?.OnePcsPrice
|
||||
?.StockDetails?.[stockIndex]?.OnePcsPrice
|
||||
: a?.ProductDetail?.[QtyIndex]?.ProdVariantDetails?.[VarientIndex]
|
||||
?.StockDetails?.[stockIndex]?.SellPrice,
|
||||
?.StockDetails?.[stockIndex]?.SellPrice,
|
||||
SuppId:
|
||||
a?.ProductDetail?.[QtyIndex]?.ProdVariantDetails?.[VarientIndex]
|
||||
?.StockDetails?.[stockIndex]?.SuppId,
|
||||
|
|
@ -310,28 +328,28 @@ const CardPage3 = (props) => {
|
|||
cartItem // if the item is already in the cart, increase the quantity of the item
|
||||
) =>
|
||||
cartItem.ProdId === item.ProdId &&
|
||||
cartItem.InwardDtlId === item.InwardDtlId &&
|
||||
cartItem.OrderRate === item.OrderRate &&
|
||||
cartItem.BookingTypeName === item.BookingTypeName
|
||||
cartItem.InwardDtlId === item.InwardDtlId &&
|
||||
cartItem.OrderRate === item.OrderRate &&
|
||||
cartItem.BookingTypeName === item.BookingTypeName
|
||||
? {
|
||||
...cartItem,
|
||||
OrderQty: cartItem.OrderQty + 1,
|
||||
TotalAmt: (cartItem.OrderQty + 1) * cartItem.OrderRate,
|
||||
TaxAmt: (
|
||||
...cartItem,
|
||||
OrderQty: cartItem.OrderQty + 1,
|
||||
TotalAmt: (cartItem.OrderQty + 1) * cartItem.OrderRate,
|
||||
TaxAmt: (
|
||||
((cartItem.OrderQty + 1) *
|
||||
cartItem.OrderRate *
|
||||
cartItem.TaxPercentage) /
|
||||
(100 + cartItem.TaxPercentage)
|
||||
).toFixed(2),
|
||||
WithoutTaxRate:
|
||||
(cartItem.OrderQty + 1) * cartItem.OrderRate -
|
||||
(
|
||||
((cartItem.OrderQty + 1) *
|
||||
cartItem.OrderRate *
|
||||
cartItem.TaxPercentage) /
|
||||
(100 + cartItem.TaxPercentage)
|
||||
).toFixed(2),
|
||||
WithoutTaxRate:
|
||||
(cartItem.OrderQty + 1) * cartItem.OrderRate -
|
||||
(
|
||||
((cartItem.OrderQty + 1) *
|
||||
cartItem.OrderRate *
|
||||
cartItem.TaxPercentage) /
|
||||
(100 + cartItem.TaxPercentage)
|
||||
).toFixed(2),
|
||||
}
|
||||
}
|
||||
: cartItem // otherwise, return the cart item
|
||||
)
|
||||
)
|
||||
|
|
@ -516,9 +534,9 @@ const CardPage3 = (props) => {
|
|||
card?.OverAllQty,
|
||||
KioskOrderDetails
|
||||
) > 0) ||
|
||||
card?.ProductDetail?.some(
|
||||
(item) => item?.StockAvailable !== 'Y'
|
||||
)
|
||||
card?.ProductDetail?.some(
|
||||
(item) => item?.StockAvailable !== 'Y'
|
||||
)
|
||||
? 'CardPage3-container'
|
||||
: 'CardPage3-container-dis'
|
||||
}
|
||||
|
|
@ -529,10 +547,10 @@ const CardPage3 = (props) => {
|
|||
{KioskOrderDetails?.some(
|
||||
(item) => item?.ProdName === card?.ProdName
|
||||
) && (
|
||||
<div className="CardPage3-check-symbol">
|
||||
<IoCheckmarkCircle />
|
||||
</div>
|
||||
)}
|
||||
<div className="CardPage3-check-symbol">
|
||||
<IoCheckmarkCircle />
|
||||
</div>
|
||||
)}
|
||||
<img
|
||||
src={
|
||||
card?.ProductDetail?.[0]?.ProdLogo
|
||||
|
|
@ -548,9 +566,9 @@ const CardPage3 = (props) => {
|
|||
card?.OverAllQty,
|
||||
KioskOrderDetails
|
||||
) > 0) ||
|
||||
card?.ProductDetail?.some(
|
||||
(item) => item?.StockAvailable !== 'Y'
|
||||
) ? (
|
||||
card?.ProductDetail?.some(
|
||||
(item) => item?.StockAvailable !== 'Y'
|
||||
) ? (
|
||||
''
|
||||
) : (
|
||||
<div
|
||||
|
|
@ -568,13 +586,13 @@ const CardPage3 = (props) => {
|
|||
card?.ProductDetail?.some(
|
||||
(item) => item?.StockAvailable !== 'Y'
|
||||
)) && (
|
||||
<p className="CardPage3-container-price">
|
||||
₹{ItemSellingPrice(card)}
|
||||
<span className="BSItemCard-itemCount">
|
||||
({ItemSize(card)} {ItemUomName(card)})
|
||||
</span>
|
||||
</p>
|
||||
)}
|
||||
<p className="CardPage3-container-price">
|
||||
₹{ItemSellingPrice(card)}
|
||||
<span className="BSItemCard-itemCount">
|
||||
({ItemSize(card)} {ItemUomName(card)})
|
||||
</span>
|
||||
</p>
|
||||
)}
|
||||
</div>
|
||||
)
|
||||
)}
|
||||
|
|
@ -724,7 +742,7 @@ const CardPage3 = (props) => {
|
|||
KioskOrderDetails,
|
||||
item?.ProdVariantName
|
||||
) > 0 ||
|
||||
qtydata?.ProductDetail?.[QtyIndex]?.StockAvailable !==
|
||||
qtydata?.ProductDetail?.[QtyIndex]?.StockAvailable !==
|
||||
'Y'
|
||||
? 'ProVariantCard'
|
||||
: 'ProVariantCard-dis'
|
||||
|
|
@ -740,7 +758,7 @@ const CardPage3 = (props) => {
|
|||
KioskOrderDetails,
|
||||
item?.ProdVariantName
|
||||
) > 0 ||
|
||||
qtydata?.ProductDetail?.[QtyIndex]?.StockAvailable !==
|
||||
qtydata?.ProductDetail?.[QtyIndex]?.StockAvailable !==
|
||||
'Y' ? (
|
||||
<div>₹{item?.StockDetails?.[0]?.SellPrice}</div>
|
||||
) : (
|
||||
|
|
|
|||
|
|
@ -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 = {
|
||||
|
|
@ -112,11 +129,11 @@ const CardPage4 = (props) => {
|
|||
(cartItem) =>
|
||||
cartItem?.ProdId === item?.ProductDetail?.[0]?.ProdId &&
|
||||
cartItem?.InwardDtlId ===
|
||||
item?.ProductDetail?.[0]?.ProdVariantDetails?.[0]?.StockDetails?.[0]
|
||||
?.InwardDtlId &&
|
||||
item?.ProductDetail?.[0]?.ProdVariantDetails?.[0]?.StockDetails?.[0]
|
||||
?.InwardDtlId &&
|
||||
cartItem?.OrderRate ===
|
||||
item?.ProductDetail?.[0]?.ProdVariantDetails?.[0]?.StockDetails?.[0]
|
||||
?.SellPrice
|
||||
item?.ProductDetail?.[0]?.ProdVariantDetails?.[0]?.StockDetails?.[0]
|
||||
?.SellPrice
|
||||
);
|
||||
if (Isincart && Isincart?.StockAvailable === 'Y') {
|
||||
if (Isincart?.BalanceQty > Isincart?.OrderQty) {
|
||||
|
|
@ -162,13 +179,13 @@ const CardPage4 = (props) => {
|
|||
(cartItem) =>
|
||||
cartItem?.ProdId === qtydata?.ProductDetail?.[item?.QtyIndex]?.ProdId &&
|
||||
cartItem?.InwardDtlId ===
|
||||
qtydata?.ProductDetail?.[item?.QtyIndex]?.ProdVariantDetails?.[
|
||||
item?.VarientIndex
|
||||
]?.StockDetails?.[0]?.InwardDtlId &&
|
||||
qtydata?.ProductDetail?.[item?.QtyIndex]?.ProdVariantDetails?.[
|
||||
item?.VarientIndex
|
||||
]?.StockDetails?.[0]?.InwardDtlId &&
|
||||
cartItem?.OrderRate ===
|
||||
qtydata?.ProductDetail?.[item?.QtyIndex]?.ProdVariantDetails?.[
|
||||
item?.VarientIndex
|
||||
]?.StockDetails?.[0]?.SellPrice
|
||||
qtydata?.ProductDetail?.[item?.QtyIndex]?.ProdVariantDetails?.[
|
||||
item?.VarientIndex
|
||||
]?.StockDetails?.[0]?.SellPrice
|
||||
);
|
||||
|
||||
if (Isincart && Isincart?.StockAvailable === 'Y') {
|
||||
|
|
@ -259,7 +276,7 @@ const CardPage4 = (props) => {
|
|||
SinglePc: onePcs ? 'Y' : 'N',
|
||||
NoOfPcs: onePcs
|
||||
? a?.ProductDetail?.[QtyIndex]?.ProdVariantDetails?.[VarientIndex]
|
||||
?.StockDetails?.[stockIndex]?.NoOfPcs
|
||||
?.StockDetails?.[stockIndex]?.NoOfPcs
|
||||
: null,
|
||||
ProdVariantName:
|
||||
a?.ProductDetail?.[QtyIndex]?.ProdVariantDetails?.[VarientIndex]
|
||||
|
|
@ -284,14 +301,14 @@ const CardPage4 = (props) => {
|
|||
?.StockDetails?.[stockIndex]?.InwardId,
|
||||
MRP: onePcs
|
||||
? a?.ProductDetail?.[QtyIndex]?.ProdVariantDetails?.[VarientIndex]
|
||||
?.StockDetails?.[stockIndex]?.OnePcsPrice
|
||||
?.StockDetails?.[stockIndex]?.OnePcsPrice
|
||||
: a?.ProductDetail?.[QtyIndex]?.ProdVariantDetails?.[VarientIndex]
|
||||
?.StockDetails?.[stockIndex]?.MRP,
|
||||
?.StockDetails?.[stockIndex]?.MRP,
|
||||
OrderRate: onePcs
|
||||
? a?.ProductDetail?.[QtyIndex]?.ProdVariantDetails?.[VarientIndex]
|
||||
?.StockDetails?.[stockIndex]?.OnePcsPrice
|
||||
?.StockDetails?.[stockIndex]?.OnePcsPrice
|
||||
: a?.ProductDetail?.[QtyIndex]?.ProdVariantDetails?.[VarientIndex]
|
||||
?.StockDetails?.[stockIndex]?.SellPrice,
|
||||
?.StockDetails?.[stockIndex]?.SellPrice,
|
||||
SuppId:
|
||||
a?.ProductDetail?.[QtyIndex]?.ProdVariantDetails?.[VarientIndex]
|
||||
?.StockDetails?.[stockIndex]?.SuppId,
|
||||
|
|
@ -335,28 +352,28 @@ const CardPage4 = (props) => {
|
|||
cartItem // if the item is already in the cart, increase the quantity of the item
|
||||
) =>
|
||||
cartItem.ProdId === item.ProdId &&
|
||||
cartItem.InwardDtlId === item.InwardDtlId &&
|
||||
cartItem.OrderRate === item.OrderRate &&
|
||||
cartItem?.BookingTypeName === item?.BookingTypeName
|
||||
cartItem.InwardDtlId === item.InwardDtlId &&
|
||||
cartItem.OrderRate === item.OrderRate &&
|
||||
cartItem?.BookingTypeName === item?.BookingTypeName
|
||||
? {
|
||||
...cartItem,
|
||||
OrderQty: cartItem.OrderQty + 1,
|
||||
TotalAmt: (cartItem.OrderQty + 1) * cartItem.OrderRate,
|
||||
TaxAmt: (
|
||||
...cartItem,
|
||||
OrderQty: cartItem.OrderQty + 1,
|
||||
TotalAmt: (cartItem.OrderQty + 1) * cartItem.OrderRate,
|
||||
TaxAmt: (
|
||||
((cartItem.OrderQty + 1) *
|
||||
cartItem.OrderRate *
|
||||
cartItem.TaxPercentage) /
|
||||
(100 + cartItem.TaxPercentage)
|
||||
).toFixed(2),
|
||||
WithoutTaxRate:
|
||||
(cartItem.OrderQty + 1) * cartItem.OrderRate -
|
||||
(
|
||||
((cartItem.OrderQty + 1) *
|
||||
cartItem.OrderRate *
|
||||
cartItem.TaxPercentage) /
|
||||
(100 + cartItem.TaxPercentage)
|
||||
).toFixed(2),
|
||||
WithoutTaxRate:
|
||||
(cartItem.OrderQty + 1) * cartItem.OrderRate -
|
||||
(
|
||||
((cartItem.OrderQty + 1) *
|
||||
cartItem.OrderRate *
|
||||
cartItem.TaxPercentage) /
|
||||
(100 + cartItem.TaxPercentage)
|
||||
).toFixed(2),
|
||||
}
|
||||
}
|
||||
: cartItem // otherwise, return the cart item
|
||||
)
|
||||
)
|
||||
|
|
@ -583,9 +600,9 @@ const CardPage4 = (props) => {
|
|||
card?.OverAllQty,
|
||||
KioskOrderDetails
|
||||
) > 0) ||
|
||||
card?.ProductDetail?.some(
|
||||
(item) => item?.StockAvailable !== 'Y'
|
||||
) ? (
|
||||
card?.ProductDetail?.some(
|
||||
(item) => item?.StockAvailable !== 'Y'
|
||||
) ? (
|
||||
<div
|
||||
className="CardPage4-addbutton"
|
||||
onClick={() => CardOnClick(card)}
|
||||
|
|
@ -745,7 +762,7 @@ const CardPage4 = (props) => {
|
|||
KioskOrderDetails,
|
||||
item?.ProdVariantName
|
||||
) > 0 ||
|
||||
qtydata?.ProductDetail?.[QtyIndex]?.StockAvailable !==
|
||||
qtydata?.ProductDetail?.[QtyIndex]?.StockAvailable !==
|
||||
'Y'
|
||||
? 'ProVariantCard'
|
||||
: 'ProVariantCard-dis'
|
||||
|
|
@ -761,7 +778,7 @@ const CardPage4 = (props) => {
|
|||
KioskOrderDetails,
|
||||
item?.ProdVariantName
|
||||
) > 0 ||
|
||||
qtydata?.ProductDetail?.[QtyIndex]?.StockAvailable !==
|
||||
qtydata?.ProductDetail?.[QtyIndex]?.StockAvailable !==
|
||||
'Y' ? (
|
||||
<div>₹{item?.StockDetails?.[0]?.SellPrice} </div>
|
||||
) : (
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
import { useEffect, useState } from 'react';
|
||||
import { useEffect, useState } from 'react';
|
||||
import { useSelector, useDispatch } from 'react-redux';
|
||||
import axios from 'axios';
|
||||
import { Skeleton } from 'antd';
|
||||
|
|
@ -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);
|
||||
|
|
@ -143,7 +148,7 @@ const KioskBookingPage = () => {
|
|||
responseData?.SessionId != null &&
|
||||
responseData?.SessionId != undefined &&
|
||||
sessionStore('SessionId', responseData?.SessionId);
|
||||
responseData?.DeviceAddress != null &&
|
||||
responseData?.DeviceAddress != null &&
|
||||
responseData?.DeviceAddress != undefined &&
|
||||
sessionStore('DeviceAddress', MACAddress);
|
||||
sessionStore('hasRefreshed', true);
|
||||
|
|
@ -160,10 +165,12 @@ const KioskBookingPage = () => {
|
|||
AppId: responseData?.AppId,
|
||||
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,
|
||||
|
|
@ -274,7 +281,7 @@ const KioskBookingPage = () => {
|
|||
AppId: AppId,
|
||||
})
|
||||
).unwrap();
|
||||
|
||||
|
||||
if (Response?.data?.statusCode == 1) {
|
||||
dispatch(
|
||||
getProductCardListKiosk({
|
||||
|
|
|
|||
|
|
@ -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(
|
||||
|
|
@ -31,28 +53,28 @@ const KisokOrderCart1 = (props) => {
|
|||
cartItem // if the item is already in the cart, increase the quantity of the item
|
||||
) =>
|
||||
cartItem.ProdId === item.ProdId &&
|
||||
cartItem.InwardDtlId === item.InwardDtlId &&
|
||||
cartItem.OrderRate === item.OrderRate &&
|
||||
cartItem?.BookingTypeName === item?.BookingTypeName
|
||||
cartItem.InwardDtlId === item.InwardDtlId &&
|
||||
cartItem.OrderRate === item.OrderRate &&
|
||||
cartItem?.BookingTypeName === item?.BookingTypeName
|
||||
? {
|
||||
...cartItem,
|
||||
OrderQty: cartItem.OrderQty + 1,
|
||||
TotalAmt: (cartItem.OrderQty + 1) * cartItem.OrderRate,
|
||||
TaxAmt: (
|
||||
...cartItem,
|
||||
OrderQty: cartItem.OrderQty + 1,
|
||||
TotalAmt: (cartItem.OrderQty + 1) * cartItem.OrderRate,
|
||||
TaxAmt: (
|
||||
((cartItem.OrderQty + 1) *
|
||||
cartItem.OrderRate *
|
||||
cartItem.TaxPercentage) /
|
||||
(100 + cartItem.TaxPercentage)
|
||||
).toFixed(2),
|
||||
WithoutTaxRate:
|
||||
(cartItem.OrderQty + 1) * cartItem.OrderRate -
|
||||
(
|
||||
((cartItem.OrderQty + 1) *
|
||||
cartItem.OrderRate *
|
||||
cartItem.TaxPercentage) /
|
||||
(100 + cartItem.TaxPercentage)
|
||||
).toFixed(2),
|
||||
WithoutTaxRate:
|
||||
(cartItem.OrderQty + 1) * cartItem.OrderRate -
|
||||
(
|
||||
((cartItem.OrderQty + 1) *
|
||||
cartItem.OrderRate *
|
||||
cartItem.TaxPercentage) /
|
||||
(100 + cartItem.TaxPercentage)
|
||||
).toFixed(2),
|
||||
}
|
||||
}
|
||||
: cartItem // otherwise, return the cart item
|
||||
)
|
||||
)
|
||||
|
|
@ -76,28 +98,28 @@ const KisokOrderCart1 = (props) => {
|
|||
cartItem // if the item is already in the cart, increase the quantity of the item
|
||||
) =>
|
||||
cartItem.ProdId === item.ProdId &&
|
||||
cartItem.InwardDtlId === item.InwardDtlId &&
|
||||
cartItem.OrderRate === item.OrderRate &&
|
||||
cartItem?.BookingTypeName === item?.BookingTypeName
|
||||
cartItem.InwardDtlId === item.InwardDtlId &&
|
||||
cartItem.OrderRate === item.OrderRate &&
|
||||
cartItem?.BookingTypeName === item?.BookingTypeName
|
||||
? {
|
||||
...cartItem,
|
||||
OrderQty: cartItem.OrderQty - 1,
|
||||
TotalAmt: (cartItem.OrderQty - 1) * cartItem.OrderRate,
|
||||
TaxAmt: (
|
||||
...cartItem,
|
||||
OrderQty: cartItem.OrderQty - 1,
|
||||
TotalAmt: (cartItem.OrderQty - 1) * cartItem.OrderRate,
|
||||
TaxAmt: (
|
||||
((cartItem.OrderQty - 1) *
|
||||
cartItem.OrderRate *
|
||||
cartItem.TaxPercentage) /
|
||||
(100 + cartItem.TaxPercentage)
|
||||
).toFixed(2),
|
||||
WithoutTaxRate:
|
||||
(cartItem.OrderQty - 1) * cartItem.OrderRate -
|
||||
(
|
||||
((cartItem.OrderQty - 1) *
|
||||
cartItem.OrderRate *
|
||||
cartItem.TaxPercentage) /
|
||||
(100 + cartItem.TaxPercentage)
|
||||
).toFixed(2),
|
||||
WithoutTaxRate:
|
||||
(cartItem.OrderQty - 1) * cartItem.OrderRate -
|
||||
(
|
||||
((cartItem.OrderQty - 1) *
|
||||
cartItem.OrderRate *
|
||||
cartItem.TaxPercentage) /
|
||||
(100 + cartItem.TaxPercentage)
|
||||
).toFixed(2),
|
||||
}
|
||||
}
|
||||
: cartItem // otherwise, return the cart item
|
||||
)
|
||||
)
|
||||
|
|
|
|||
|
|
@ -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(
|
||||
|
|
@ -34,28 +57,28 @@ const KisokOrderCart2 = (props) => {
|
|||
cartItem // if the item is already in the cart, increase the quantity of the item
|
||||
) =>
|
||||
cartItem.ProdId === item.ProdId &&
|
||||
cartItem.InwardDtlId === item.InwardDtlId &&
|
||||
cartItem.OrderRate === item.OrderRate &&
|
||||
cartItem?.BookingTypeName === item?.BookingTypeName
|
||||
cartItem.InwardDtlId === item.InwardDtlId &&
|
||||
cartItem.OrderRate === item.OrderRate &&
|
||||
cartItem?.BookingTypeName === item?.BookingTypeName
|
||||
? {
|
||||
...cartItem,
|
||||
OrderQty: cartItem.OrderQty + 1,
|
||||
TotalAmt: (cartItem.OrderQty + 1) * cartItem.OrderRate,
|
||||
TaxAmt: (
|
||||
...cartItem,
|
||||
OrderQty: cartItem.OrderQty + 1,
|
||||
TotalAmt: (cartItem.OrderQty + 1) * cartItem.OrderRate,
|
||||
TaxAmt: (
|
||||
((cartItem.OrderQty + 1) *
|
||||
cartItem.OrderRate *
|
||||
cartItem.TaxPercentage) /
|
||||
(100 + cartItem.TaxPercentage)
|
||||
).toFixed(2),
|
||||
WithoutTaxRate:
|
||||
(cartItem.OrderQty + 1) * cartItem.OrderRate -
|
||||
(
|
||||
((cartItem.OrderQty + 1) *
|
||||
cartItem.OrderRate *
|
||||
cartItem.TaxPercentage) /
|
||||
(100 + cartItem.TaxPercentage)
|
||||
).toFixed(2),
|
||||
WithoutTaxRate:
|
||||
(cartItem.OrderQty + 1) * cartItem.OrderRate -
|
||||
(
|
||||
((cartItem.OrderQty + 1) *
|
||||
cartItem.OrderRate *
|
||||
cartItem.TaxPercentage) /
|
||||
(100 + cartItem.TaxPercentage)
|
||||
).toFixed(2),
|
||||
}
|
||||
}
|
||||
: cartItem // otherwise, return the cart item
|
||||
)
|
||||
)
|
||||
|
|
@ -79,28 +102,28 @@ const KisokOrderCart2 = (props) => {
|
|||
cartItem // if the item is already in the cart, increase the quantity of the item
|
||||
) =>
|
||||
cartItem.ProdId === item.ProdId &&
|
||||
cartItem.InwardDtlId === item.InwardDtlId &&
|
||||
cartItem.OrderRate === item.OrderRate &&
|
||||
cartItem.BookingTypeName === item.BookingTypeName
|
||||
cartItem.InwardDtlId === item.InwardDtlId &&
|
||||
cartItem.OrderRate === item.OrderRate &&
|
||||
cartItem.BookingTypeName === item.BookingTypeName
|
||||
? {
|
||||
...cartItem,
|
||||
OrderQty: cartItem.OrderQty - 1,
|
||||
TotalAmt: (cartItem.OrderQty - 1) * cartItem.OrderRate,
|
||||
TaxAmt: (
|
||||
...cartItem,
|
||||
OrderQty: cartItem.OrderQty - 1,
|
||||
TotalAmt: (cartItem.OrderQty - 1) * cartItem.OrderRate,
|
||||
TaxAmt: (
|
||||
((cartItem.OrderQty - 1) *
|
||||
cartItem.OrderRate *
|
||||
cartItem.TaxPercentage) /
|
||||
(100 + cartItem.TaxPercentage)
|
||||
).toFixed(2),
|
||||
WithoutTaxRate:
|
||||
(cartItem.OrderQty - 1) * cartItem.OrderRate -
|
||||
(
|
||||
((cartItem.OrderQty - 1) *
|
||||
cartItem.OrderRate *
|
||||
cartItem.TaxPercentage) /
|
||||
(100 + cartItem.TaxPercentage)
|
||||
).toFixed(2),
|
||||
WithoutTaxRate:
|
||||
(cartItem.OrderQty - 1) * cartItem.OrderRate -
|
||||
(
|
||||
((cartItem.OrderQty - 1) *
|
||||
cartItem.OrderRate *
|
||||
cartItem.TaxPercentage) /
|
||||
(100 + cartItem.TaxPercentage)
|
||||
).toFixed(2),
|
||||
}
|
||||
}
|
||||
: cartItem // otherwise, return the cart item
|
||||
)
|
||||
)
|
||||
|
|
|
|||
|
|
@ -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(
|
||||
|
|
@ -38,28 +59,28 @@ const KisokOrderCart3 = (props) => {
|
|||
cartItem // if the item is already in the cart, increase the quantity of the item
|
||||
) =>
|
||||
cartItem.ProdId === item.ProdId &&
|
||||
cartItem.InwardDtlId === item.InwardDtlId &&
|
||||
cartItem.OrderRate === item.OrderRate &&
|
||||
cartItem?.BookingTypeName === item?.BookingTypeName
|
||||
cartItem.InwardDtlId === item.InwardDtlId &&
|
||||
cartItem.OrderRate === item.OrderRate &&
|
||||
cartItem?.BookingTypeName === item?.BookingTypeName
|
||||
? {
|
||||
...cartItem,
|
||||
OrderQty: cartItem.OrderQty + 1,
|
||||
TotalAmt: (cartItem.OrderQty + 1) * cartItem.OrderRate,
|
||||
TaxAmt: (
|
||||
...cartItem,
|
||||
OrderQty: cartItem.OrderQty + 1,
|
||||
TotalAmt: (cartItem.OrderQty + 1) * cartItem.OrderRate,
|
||||
TaxAmt: (
|
||||
((cartItem.OrderQty + 1) *
|
||||
cartItem.OrderRate *
|
||||
cartItem.TaxPercentage) /
|
||||
(100 + cartItem.TaxPercentage)
|
||||
).toFixed(2),
|
||||
WithoutTaxRate:
|
||||
(cartItem.OrderQty + 1) * cartItem.OrderRate -
|
||||
(
|
||||
((cartItem.OrderQty + 1) *
|
||||
cartItem.OrderRate *
|
||||
cartItem.TaxPercentage) /
|
||||
(100 + cartItem.TaxPercentage)
|
||||
).toFixed(2),
|
||||
WithoutTaxRate:
|
||||
(cartItem.OrderQty + 1) * cartItem.OrderRate -
|
||||
(
|
||||
((cartItem.OrderQty + 1) *
|
||||
cartItem.OrderRate *
|
||||
cartItem.TaxPercentage) /
|
||||
(100 + cartItem.TaxPercentage)
|
||||
).toFixed(2),
|
||||
}
|
||||
}
|
||||
: cartItem // otherwise, return the cart item
|
||||
)
|
||||
)
|
||||
|
|
@ -81,28 +102,28 @@ const KisokOrderCart3 = (props) => {
|
|||
cartItem // if the item is already in the cart, increase the quantity of the item
|
||||
) =>
|
||||
cartItem.ProdId === item.ProdId &&
|
||||
cartItem.InwardDtlId === item.InwardDtlId &&
|
||||
cartItem.OrderRate === item.OrderRate &&
|
||||
cartItem?.BookingTypeName === item?.BookingTypeName
|
||||
cartItem.InwardDtlId === item.InwardDtlId &&
|
||||
cartItem.OrderRate === item.OrderRate &&
|
||||
cartItem?.BookingTypeName === item?.BookingTypeName
|
||||
? {
|
||||
...cartItem,
|
||||
OrderQty: cartItem.OrderQty - 1,
|
||||
TotalAmt: (cartItem.OrderQty - 1) * cartItem.OrderRate,
|
||||
TaxAmt: (
|
||||
...cartItem,
|
||||
OrderQty: cartItem.OrderQty - 1,
|
||||
TotalAmt: (cartItem.OrderQty - 1) * cartItem.OrderRate,
|
||||
TaxAmt: (
|
||||
((cartItem.OrderQty - 1) *
|
||||
cartItem.OrderRate *
|
||||
cartItem.TaxPercentage) /
|
||||
(100 + cartItem.TaxPercentage)
|
||||
).toFixed(2),
|
||||
WithoutTaxRate:
|
||||
(cartItem.OrderQty - 1) * cartItem.OrderRate -
|
||||
(
|
||||
((cartItem.OrderQty - 1) *
|
||||
cartItem.OrderRate *
|
||||
cartItem.TaxPercentage) /
|
||||
(100 + cartItem.TaxPercentage)
|
||||
).toFixed(2),
|
||||
WithoutTaxRate:
|
||||
(cartItem.OrderQty - 1) * cartItem.OrderRate -
|
||||
(
|
||||
((cartItem.OrderQty - 1) *
|
||||
cartItem.OrderRate *
|
||||
cartItem.TaxPercentage) /
|
||||
(100 + cartItem.TaxPercentage)
|
||||
).toFixed(2),
|
||||
}
|
||||
}
|
||||
: cartItem // otherwise, return the cart item
|
||||
)
|
||||
)
|
||||
|
|
|
|||
|
|
@ -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(
|
||||
|
|
@ -51,28 +73,28 @@ const OrderView1 = (props) => {
|
|||
cartItem // if the item is already in the cart, increase the quantity of the item
|
||||
) =>
|
||||
cartItem.ProdId === item.ProdId &&
|
||||
cartItem.InwardDtlId === item.InwardDtlId &&
|
||||
cartItem.OrderRate === item.OrderRate &&
|
||||
cartItem?.BookingTypeName === item?.BookingTypeName
|
||||
cartItem.InwardDtlId === item.InwardDtlId &&
|
||||
cartItem.OrderRate === item.OrderRate &&
|
||||
cartItem?.BookingTypeName === item?.BookingTypeName
|
||||
? {
|
||||
...cartItem,
|
||||
OrderQty: cartItem.OrderQty + 1,
|
||||
TotalAmt: (cartItem.OrderQty + 1) * cartItem.OrderRate,
|
||||
TaxAmt: (
|
||||
...cartItem,
|
||||
OrderQty: cartItem.OrderQty + 1,
|
||||
TotalAmt: (cartItem.OrderQty + 1) * cartItem.OrderRate,
|
||||
TaxAmt: (
|
||||
((cartItem.OrderQty + 1) *
|
||||
cartItem.OrderRate *
|
||||
cartItem.TaxPercentage) /
|
||||
(100 + cartItem.TaxPercentage)
|
||||
).toFixed(2),
|
||||
WithoutTaxRate:
|
||||
(cartItem.OrderQty + 1) * cartItem.OrderRate -
|
||||
(
|
||||
((cartItem.OrderQty + 1) *
|
||||
cartItem.OrderRate *
|
||||
cartItem.TaxPercentage) /
|
||||
(100 + cartItem.TaxPercentage)
|
||||
).toFixed(2),
|
||||
WithoutTaxRate:
|
||||
(cartItem.OrderQty + 1) * cartItem.OrderRate -
|
||||
(
|
||||
((cartItem.OrderQty + 1) *
|
||||
cartItem.OrderRate *
|
||||
cartItem.TaxPercentage) /
|
||||
(100 + cartItem.TaxPercentage)
|
||||
).toFixed(2),
|
||||
}
|
||||
}
|
||||
: cartItem // otherwise, return the cart item
|
||||
)
|
||||
)
|
||||
|
|
@ -96,28 +118,28 @@ const OrderView1 = (props) => {
|
|||
cartItem // if the item is already in the cart, increase the quantity of the item
|
||||
) =>
|
||||
cartItem.ProdId === item.ProdId &&
|
||||
cartItem.InwardDtlId === item.InwardDtlId &&
|
||||
cartItem.OrderRate === item.OrderRate &&
|
||||
cartItem?.BookingTypeName === item?.BookingTypeName
|
||||
cartItem.InwardDtlId === item.InwardDtlId &&
|
||||
cartItem.OrderRate === item.OrderRate &&
|
||||
cartItem?.BookingTypeName === item?.BookingTypeName
|
||||
? {
|
||||
...cartItem,
|
||||
OrderQty: cartItem.OrderQty - 1,
|
||||
TotalAmt: (cartItem.OrderQty - 1) * cartItem.OrderRate,
|
||||
TaxAmt: (
|
||||
...cartItem,
|
||||
OrderQty: cartItem.OrderQty - 1,
|
||||
TotalAmt: (cartItem.OrderQty - 1) * cartItem.OrderRate,
|
||||
TaxAmt: (
|
||||
((cartItem.OrderQty - 1) *
|
||||
cartItem.OrderRate *
|
||||
cartItem.TaxPercentage) /
|
||||
(100 + cartItem.TaxPercentage)
|
||||
).toFixed(2),
|
||||
WithoutTaxRate:
|
||||
(cartItem.OrderQty - 1) * cartItem.OrderRate -
|
||||
(
|
||||
((cartItem.OrderQty - 1) *
|
||||
cartItem.OrderRate *
|
||||
cartItem.TaxPercentage) /
|
||||
(100 + cartItem.TaxPercentage)
|
||||
).toFixed(2),
|
||||
WithoutTaxRate:
|
||||
(cartItem.OrderQty - 1) * cartItem.OrderRate -
|
||||
(
|
||||
((cartItem.OrderQty - 1) *
|
||||
cartItem.OrderRate *
|
||||
cartItem.TaxPercentage) /
|
||||
(100 + cartItem.TaxPercentage)
|
||||
).toFixed(2),
|
||||
}
|
||||
}
|
||||
: cartItem // otherwise, return the cart item
|
||||
)
|
||||
)
|
||||
|
|
|
|||
|
|
@ -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(
|
||||
|
|
@ -61,28 +82,28 @@ const KioskOrderView2 = (props) => {
|
|||
cartItem // if the item is already in the cart, increase the quantity of the item
|
||||
) =>
|
||||
cartItem.ProdId === item.ProdId &&
|
||||
cartItem.InwardDtlId === item.InwardDtlId &&
|
||||
cartItem.OrderRate === item.OrderRate &&
|
||||
cartItem?.BookingTypeName === item?.BookingTypeName
|
||||
cartItem.InwardDtlId === item.InwardDtlId &&
|
||||
cartItem.OrderRate === item.OrderRate &&
|
||||
cartItem?.BookingTypeName === item?.BookingTypeName
|
||||
? {
|
||||
...cartItem,
|
||||
OrderQty: cartItem.OrderQty + 1,
|
||||
TotalAmt: (cartItem.OrderQty + 1) * cartItem.OrderRate,
|
||||
TaxAmt: (
|
||||
...cartItem,
|
||||
OrderQty: cartItem.OrderQty + 1,
|
||||
TotalAmt: (cartItem.OrderQty + 1) * cartItem.OrderRate,
|
||||
TaxAmt: (
|
||||
((cartItem.OrderQty + 1) *
|
||||
cartItem.OrderRate *
|
||||
cartItem.TaxPercentage) /
|
||||
(100 + cartItem.TaxPercentage)
|
||||
).toFixed(2),
|
||||
WithoutTaxRate:
|
||||
(cartItem.OrderQty + 1) * cartItem.OrderRate -
|
||||
(
|
||||
((cartItem.OrderQty + 1) *
|
||||
cartItem.OrderRate *
|
||||
cartItem.TaxPercentage) /
|
||||
(100 + cartItem.TaxPercentage)
|
||||
).toFixed(2),
|
||||
WithoutTaxRate:
|
||||
(cartItem.OrderQty + 1) * cartItem.OrderRate -
|
||||
(
|
||||
((cartItem.OrderQty + 1) *
|
||||
cartItem.OrderRate *
|
||||
cartItem.TaxPercentage) /
|
||||
(100 + cartItem.TaxPercentage)
|
||||
).toFixed(2),
|
||||
}
|
||||
}
|
||||
: cartItem // otherwise, return the cart item
|
||||
)
|
||||
)
|
||||
|
|
@ -106,28 +127,28 @@ const KioskOrderView2 = (props) => {
|
|||
cartItem // if the item is already in the cart, increase the quantity of the item
|
||||
) =>
|
||||
cartItem.ProdId === item.ProdId &&
|
||||
cartItem.InwardDtlId === item.InwardDtlId &&
|
||||
cartItem.OrderRate === item.OrderRate &&
|
||||
cartItem.BookingTypeName === item.BookingTypeName
|
||||
cartItem.InwardDtlId === item.InwardDtlId &&
|
||||
cartItem.OrderRate === item.OrderRate &&
|
||||
cartItem.BookingTypeName === item.BookingTypeName
|
||||
? {
|
||||
...cartItem,
|
||||
OrderQty: cartItem.OrderQty - 1,
|
||||
TotalAmt: (cartItem.OrderQty - 1) * cartItem.OrderRate,
|
||||
TaxAmt: (
|
||||
...cartItem,
|
||||
OrderQty: cartItem.OrderQty - 1,
|
||||
TotalAmt: (cartItem.OrderQty - 1) * cartItem.OrderRate,
|
||||
TaxAmt: (
|
||||
((cartItem.OrderQty - 1) *
|
||||
cartItem.OrderRate *
|
||||
cartItem.TaxPercentage) /
|
||||
(100 + cartItem.TaxPercentage)
|
||||
).toFixed(2),
|
||||
WithoutTaxRate:
|
||||
(cartItem.OrderQty - 1) * cartItem.OrderRate -
|
||||
(
|
||||
((cartItem.OrderQty - 1) *
|
||||
cartItem.OrderRate *
|
||||
cartItem.TaxPercentage) /
|
||||
(100 + cartItem.TaxPercentage)
|
||||
).toFixed(2),
|
||||
WithoutTaxRate:
|
||||
(cartItem.OrderQty - 1) * cartItem.OrderRate -
|
||||
(
|
||||
((cartItem.OrderQty - 1) *
|
||||
cartItem.OrderRate *
|
||||
cartItem.TaxPercentage) /
|
||||
(100 + cartItem.TaxPercentage)
|
||||
).toFixed(2),
|
||||
}
|
||||
}
|
||||
: cartItem // otherwise, return the cart item
|
||||
)
|
||||
)
|
||||
|
|
|
|||
|
|
@ -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(
|
||||
|
|
@ -54,28 +75,28 @@ const KioskOrderView = (props) => {
|
|||
cartItem // if the item is already in the cart, increase the quantity of the item
|
||||
) =>
|
||||
cartItem.ProdId === item.ProdId &&
|
||||
cartItem.InwardDtlId === item.InwardDtlId &&
|
||||
cartItem.OrderRate === item.OrderRate &&
|
||||
cartItem?.BookingTypeName === item?.BookingTypeName
|
||||
cartItem.InwardDtlId === item.InwardDtlId &&
|
||||
cartItem.OrderRate === item.OrderRate &&
|
||||
cartItem?.BookingTypeName === item?.BookingTypeName
|
||||
? {
|
||||
...cartItem,
|
||||
OrderQty: cartItem.OrderQty + 1,
|
||||
TotalAmt: (cartItem.OrderQty + 1) * cartItem.OrderRate,
|
||||
TaxAmt: (
|
||||
...cartItem,
|
||||
OrderQty: cartItem.OrderQty + 1,
|
||||
TotalAmt: (cartItem.OrderQty + 1) * cartItem.OrderRate,
|
||||
TaxAmt: (
|
||||
((cartItem.OrderQty + 1) *
|
||||
cartItem.OrderRate *
|
||||
cartItem.TaxPercentage) /
|
||||
(100 + cartItem.TaxPercentage)
|
||||
).toFixed(2),
|
||||
WithoutTaxRate:
|
||||
(cartItem.OrderQty + 1) * cartItem.OrderRate -
|
||||
(
|
||||
((cartItem.OrderQty + 1) *
|
||||
cartItem.OrderRate *
|
||||
cartItem.TaxPercentage) /
|
||||
(100 + cartItem.TaxPercentage)
|
||||
).toFixed(2),
|
||||
WithoutTaxRate:
|
||||
(cartItem.OrderQty + 1) * cartItem.OrderRate -
|
||||
(
|
||||
((cartItem.OrderQty + 1) *
|
||||
cartItem.OrderRate *
|
||||
cartItem.TaxPercentage) /
|
||||
(100 + cartItem.TaxPercentage)
|
||||
).toFixed(2),
|
||||
}
|
||||
}
|
||||
: cartItem // otherwise, return the cart item
|
||||
)
|
||||
)
|
||||
|
|
@ -98,28 +119,28 @@ const KioskOrderView = (props) => {
|
|||
cartItem // if the item is already in the cart, increase the quantity of the item
|
||||
) =>
|
||||
cartItem.ProdId === item.ProdId &&
|
||||
cartItem.InwardDtlId === item.InwardDtlId &&
|
||||
cartItem.OrderRate === item.OrderRate &&
|
||||
cartItem?.BookingTypeName === item?.BookingTypeName
|
||||
cartItem.InwardDtlId === item.InwardDtlId &&
|
||||
cartItem.OrderRate === item.OrderRate &&
|
||||
cartItem?.BookingTypeName === item?.BookingTypeName
|
||||
? {
|
||||
...cartItem,
|
||||
OrderQty: cartItem.OrderQty - 1,
|
||||
TotalAmt: (cartItem.OrderQty - 1) * cartItem.OrderRate,
|
||||
TaxAmt: (
|
||||
...cartItem,
|
||||
OrderQty: cartItem.OrderQty - 1,
|
||||
TotalAmt: (cartItem.OrderQty - 1) * cartItem.OrderRate,
|
||||
TaxAmt: (
|
||||
((cartItem.OrderQty - 1) *
|
||||
cartItem.OrderRate *
|
||||
cartItem.TaxPercentage) /
|
||||
(100 + cartItem.TaxPercentage)
|
||||
).toFixed(2),
|
||||
WithoutTaxRate:
|
||||
(cartItem.OrderQty - 1) * cartItem.OrderRate -
|
||||
(
|
||||
((cartItem.OrderQty - 1) *
|
||||
cartItem.OrderRate *
|
||||
cartItem.TaxPercentage) /
|
||||
(100 + cartItem.TaxPercentage)
|
||||
).toFixed(2),
|
||||
WithoutTaxRate:
|
||||
(cartItem.OrderQty - 1) * cartItem.OrderRate -
|
||||
(
|
||||
((cartItem.OrderQty - 1) *
|
||||
cartItem.OrderRate *
|
||||
cartItem.TaxPercentage) /
|
||||
(100 + cartItem.TaxPercentage)
|
||||
).toFixed(2),
|
||||
}
|
||||
}
|
||||
: cartItem // otherwise, return the cart item
|
||||
)
|
||||
)
|
||||
|
|
@ -201,10 +222,10 @@ const KioskOrderView = (props) => {
|
|||
{!item?.ProdVariantName?.toLowerCase().includes(
|
||||
'variant'
|
||||
) && (
|
||||
<span style={{ color: 'black' }}>
|
||||
{item?.ProdVariantName}{' '}
|
||||
</span>
|
||||
)}{' '}
|
||||
<span style={{ color: 'black' }}>
|
||||
{item?.ProdVariantName}{' '}
|
||||
</span>
|
||||
)}{' '}
|
||||
{item?.Size}{' '}
|
||||
{item?.SinglePc == 'Y' ? 'PCS' : item?.UomName}
|
||||
</div>
|
||||
|
|
|
|||
Loading…
Reference in New Issue