From 1613525057b36342ddfdeaae40f46d4e89ac4163 Mon Sep 17 00:00:00 2001 From: vignesh Date: Wed, 25 Mar 2026 14:49:37 +0530 Subject: [PATCH] Issues Solved --- src/Components/PozoAppLoader/PozoLoader2.jsx | 2 +- .../Automated Reorder/AutomatedReorder.scss | 12 +- .../AutomatedReorderList.jsx | 666 +++++------ .../Components/BSItemCards/BSItemCard.jsx | 1027 ++++++++--------- .../Template/BSLayout4/BSLayout4.jsx | 18 +- src/Pages/CustomerMaster/CustMasterList.jsx | 34 +- src/Pages/Product/ExcelUpload.jsx | 369 ++---- src/Pages/Product/ProductList.jsx | 2 +- .../Components/BSItemCards/BSItemCard.scss | 5 +- src/Styles/OverAllStyle/OverAllStyle.scss | 14 + src/Styles/Product/excel.scss | 102 +- 11 files changed, 1117 insertions(+), 1134 deletions(-) diff --git a/src/Components/PozoAppLoader/PozoLoader2.jsx b/src/Components/PozoAppLoader/PozoLoader2.jsx index 0801ef9..6b08056 100644 --- a/src/Components/PozoAppLoader/PozoLoader2.jsx +++ b/src/Components/PozoAppLoader/PozoLoader2.jsx @@ -262,7 +262,7 @@ const styles = { status: { marginTop: '6px', - fontSize: '0.7rem', + fontSize: '0.6rem', fontWeight: 600, letterSpacing: '4px', textTransform: 'uppercase', diff --git a/src/Pages/Automated Reorder/AutomatedReorder.scss b/src/Pages/Automated Reorder/AutomatedReorder.scss index 083b4a9..903a74f 100644 --- a/src/Pages/Automated Reorder/AutomatedReorder.scss +++ b/src/Pages/Automated Reorder/AutomatedReorder.scss @@ -3,7 +3,7 @@ height: 90vh; overflow: auto; scrollbar-width: thin; - font-family: 'Poppins'; + font-family: "Poppins"; .automated-reorder-content { padding-top: 18px; @@ -51,4 +51,12 @@ padding: 6px !important; } } -} \ No newline at end of file +} + +.automated-reorder-list-content { + .eyeopenShow { + display: flex; + align-items: center; + justify-content: center; + } +} diff --git a/src/Pages/Automated Reorder/AutomatedReorderList.jsx b/src/Pages/Automated Reorder/AutomatedReorderList.jsx index 91d43bc..db7e7db 100644 --- a/src/Pages/Automated Reorder/AutomatedReorderList.jsx +++ b/src/Pages/Automated Reorder/AutomatedReorderList.jsx @@ -1,345 +1,359 @@ -import { useCallback, useEffect, useState } from "react"; -import { useDispatch } from "react-redux"; -import { getSession } from "../../Services/Others"; -import { changeBreadCrumb, getEmpAccess } from "../../Features/AppPage/CenterPage"; -import { Messages } from "../../Components/Notifications/Messages"; -import { Tables } from "../../Components/Tables/Table"; -import FormHeader from "../PageComponents/FormHeader"; -import Search from "../../Components/Forms/Search"; -import Buttons from "../../Components/Forms/Buttons"; +import { useCallback, useEffect, useState } from 'react'; +import { useDispatch } from 'react-redux'; +import { getSession } from '../../Services/Others'; import { - EditFilled, - DeleteFilled, - PlusOutlined, - ReloadOutlined, + changeBreadCrumb, + getEmpAccess, +} from '../../Features/AppPage/CenterPage'; +import { Messages } from '../../Components/Notifications/Messages'; +import { Tables } from '../../Components/Tables/Table'; +import FormHeader from '../PageComponents/FormHeader'; +import Search from '../../Components/Forms/Search'; +import Buttons from '../../Components/Forms/Buttons'; +import { + EditFilled, + DeleteFilled, + PlusOutlined, + ReloadOutlined, } from '@ant-design/icons'; -import { useLocation, useNavigate } from "react-router-dom"; -import { Space, Tooltip } from "antd"; -import { deleteAutomatedReorder, getAutomatedReorderList } from "../../Features/PurchaseOrder/PurchaseOrder"; -import { DefaultModal } from "../../Components/Modal/DefaultModal"; -import { FaRegEye } from "react-icons/fa"; -import { render } from "react-dom"; -import { useAuth } from "../../AuthContext"; -import "./AutomatedReorder.scss"; +import { useLocation, useNavigate } from 'react-router-dom'; +import { Space, Tooltip } from 'antd'; +import { + deleteAutomatedReorder, + getAutomatedReorderList, +} from '../../Features/PurchaseOrder/PurchaseOrder'; +import { DefaultModal } from '../../Components/Modal/DefaultModal'; +import { FaRegEye } from 'react-icons/fa'; +import { render } from 'react-dom'; +import { useAuth } from '../../AuthContext'; +import './AutomatedReorder.scss'; const subDirectory = import.meta.env.BASE_URL; const items = [ - { - name: 'Home', - link: `${subDirectory}app-page/home`, - }, - { - name: 'Automated Reorder', - link: `${subDirectory}setting/automated-reorder`, - }, + { + name: 'Home', + link: `${subDirectory}app-page/home`, + }, + { + name: 'Automated Reorder', + link: `${subDirectory}setting/automated-reorder`, + }, ]; - - const AutomatedReorderList = () => { - const dispatch = useDispatch(); - const navigate = useNavigate(); - const location = useLocation(); - const state = location?.state; - const { SadminuserAccess } = useAuth(); - let SAAccessCommonMaster = SadminuserAccess?.find( - (e) => e?.MenuName === 'Product Receipt' + const dispatch = useDispatch(); + const navigate = useNavigate(); + const location = useLocation(); + const state = location?.state; + const { SadminuserAccess } = useAuth(); + let SAAccessCommonMaster = SadminuserAccess?.find( + (e) => e?.MenuName === 'Product Receipt' + ); + + const AppId = getSession('AppId'); + const CompId = getSession('CompId'); + const BranchId = getSession('BranchId'); + const UserId = getSession('UserId'); + const UserType = getSession('UserType'); + const [empData, setEmpData] = useState(); + const [addnewAccess, setaddnewAccess] = useState(true); + + const [messageType, setMessageType] = useState(null); + const [messageData, setMessageData] = useState(null); + const [supplierModalOpen, setSupplierModalOpen] = useState(false); + const [supplierRecords, setSupplierRecords] = useState([]); + const [supplierRecordIndex, setSupplierRecordIndex] = useState(null); + const [page, setPage] = useState(1); + + const [searchedText, setSearchedText] = useState(''); + const [tableData, setTableData] = useState([]); + + const columns = [ + { + title: 'SL.NO', + dataIndex: 'SLNO', + key: 'SLNO', + width: '10%', + render: (_, record, index) => index + 1, + align: 'center', + }, + { + title: 'Product Name', + dataIndex: 'ProdName', + key: 'ProdName', + render: (_, record) => `${record.ProdName} (${record.UOMName})`, + }, + { + title: 'Supplier', + dataIndex: 'Supplier', + key: 'Supplier', + align: 'center', + render: (_, record, index) => ( + //
+ +
+ { + setSupplierModalOpen(true); + setSupplierRecords(record.SupplierDetails); + setSupplierRecordIndex(index); + }} + /> +
+
+ ), + }, + { + title: 'Order Type', + dataIndex: 'OrderType', + key: 'OrderType', + render: (_, record, index) => + record.OrderType === 'E' ? 'End of Day (EOD)' : 'Immediate', + }, + { + title: 'Confirmation Type', + dataIndex: 'OrderProcessing', + key: 'OrderProcessing', + render: (_, record, index) => + record.OrderProcessing === 'Y' ? 'Need Confirmation' : 'Auto', + }, + { + title: 'Reorder Quantity', + dataIndex: 'OrderQty', + key: 'OrderQty', + align: 'center', + }, + { + title: 'Action', + dataIndex: 'Action', + key: 'Action', + width: '100px', + align: 'center', + render: (_, record, index) => + record.ActiveStatus === 'A' ? ( +
+ handleEdit(record)} + /> + handleActiveAndDeactive(record)} + /> +
+ ) : ( + handleActiveAndDeactive(record)} + /> + ), + }, + ]; + + const supplierColumns = [ + { + title: 'SL.NO', + dataIndex: 'SLNO', + key: 'SLNO', + width: '10%', + render: (_, record, index) => index + 1, + }, + { + title: 'Supplier Name', + dataIndex: 'SuppName', + key: 'SuppName', + width: '20%', + }, + ]; + + useEffect(() => { + try { + if (AppId && CompId && BranchId) { + dispatch(changeBreadCrumb({ items: items })); + fetchData(); + if (state?.Notify) { + setMessageType(state?.Notify.messageType); + setMessageData(state?.Notify.messageData); + } + } + } catch (error) { + console.error(error, 'error: changeBreadCrumb'); + } + }, [AppId, CompId, BranchId]); + + useEffect(() => { + if (UserType === 'Employee') { + fetchApi(); + } + }, [UserType]); + + useEffect(() => { + let hasAccess = false; + + if (UserType === 'Admin' || UserType === 'Super Admin') { + hasAccess = true; + } else if (UserType === 'Employee') { + hasAccess = empData?.AddAccess === 'Y'; + } else if (UserType === 'Super Admin User') { + hasAccess = SAAccessCommonMaster?.AddAccess === 'Y'; + } + + setaddnewAccess(!hasAccess); + }, [empData, SAAccessCommonMaster, UserType]); + + const fetchApi = async () => { + let data = { + CompId: CompId, + BranchId: BranchId, + AppId: AppId, + EmpId: UserId, + }; + let response = await dispatch(getEmpAccess(data)).unwrap(); + let datas = response?.data?.data?.[0]?.EmpAccessDetails?.filter( + (item) => item.ConfigName === 'Automated Reorder' ); + setEmpData(datas?.[0]); + }; - const AppId = getSession('AppId'); - const CompId = getSession('CompId'); - const BranchId = getSession('BranchId'); - const UserId = getSession('UserId'); - const UserType = getSession('UserType'); - const [empData, setEmpData] = useState(); - const [addnewAccess, setaddnewAccess] = useState(true); - - const [messageType, setMessageType] = useState(null); - const [messageData, setMessageData] = useState(null); - const [supplierModalOpen, setSupplierModalOpen] = useState(false); - const [supplierRecords, setSupplierRecords] = useState([]); - const [supplierRecordIndex, setSupplierRecordIndex] = useState(null); - const [page, setPage] = useState(1); - - - const [searchedText, setSearchedText] = useState(''); - const [tableData, setTableData] = useState([]); - - const columns = [ - { - title: 'SL.NO', - dataIndex: 'SLNO', - key: 'SLNO', - width: '10%', - render: (_, record, index) => index + 1, - align: 'center', - }, - { - title: 'Product Name', - dataIndex: 'ProdName', - key: 'ProdName', - render: (_, record) => ( - `${record.ProdName} (${record.UOMName})` - ) - }, - { - title: 'Supplier', - dataIndex: 'Supplier', - key: 'Supplier', - align: 'center', - render: (_, record, index) => ( - //
- -
- { - setSupplierModalOpen(true); - setSupplierRecords(record.SupplierDetails); - setSupplierRecordIndex(index); - }} - /> -
-
- ), - }, - { - title: 'Order Type', - dataIndex: 'OrderType', - key: 'OrderType', - render: (_, record, index) => ( - record.OrderType === 'E' ? 'End of Day (EOD)' : 'Immediate' - ) - }, - { - title: 'Confirmation Type', - dataIndex: 'OrderProcessing', - key: 'OrderProcessing', - render: (_, record, index) => ( - record.OrderProcessing === 'Y' ? 'Need Confirmation' : 'Auto' - ) - }, - { - title: 'Reorder Quantity', - dataIndex: 'OrderQty', - key: 'OrderQty', - align: 'center', - }, - { - title: 'Action', - dataIndex: 'Action', - key: 'Action', - width: '100px', - align: 'center', - render: (_, record, index) => ( - - record.ActiveStatus === 'A' ? ( -
- handleEdit(record)} - /> - handleActiveAndDeactive(record)} - /> -
- ) : ( - handleActiveAndDeactive(record)} - /> - ) - ), - }, - ]; - - const supplierColumns = [ - { - title: 'SL.NO', - dataIndex: 'SLNO', - key: 'SLNO', - width: '10%', - render: (_, record, index) => index + 1 - }, - { - title: 'Supplier Name', - dataIndex: 'SuppName', - key: 'SuppName', - width: '20%', - } - ]; - - useEffect(() => { - try { - if (AppId && CompId && BranchId) { - dispatch(changeBreadCrumb({ items: items })); - fetchData() - if (state?.Notify) { - setMessageType(state?.Notify.messageType); - setMessageData(state?.Notify.messageData); - } - } - } catch (error) { - console.error(error, 'error: changeBreadCrumb'); - } - }, [AppId, CompId, BranchId]); - - useEffect(() => { - if (UserType === 'Employee') { - fetchApi(); - } - }, [UserType]); - - useEffect(() => { - let hasAccess = false; - - if (UserType === 'Admin' || UserType === 'Super Admin') { - hasAccess = true; - } else if (UserType === 'Employee') { - hasAccess = empData?.AddAccess === 'Y'; - } else if (UserType === 'Super Admin User') { - hasAccess = SAAccessCommonMaster?.AddAccess === 'Y'; - } - - setaddnewAccess(!hasAccess); - }, [empData, SAAccessCommonMaster, UserType]); - - const fetchApi = async () => { - let data = { - CompId: CompId, - BranchId: BranchId, - AppId: AppId, - EmpId: UserId, - }; - let response = await dispatch(getEmpAccess(data)).unwrap(); - let datas = response?.data?.data?.[0]?.EmpAccessDetails?.filter( - (item) => item.ConfigName === 'Automated Reorder' - ); - setEmpData(datas?.[0]); - }; - - const fetchData = async () => { - try { - const res = await dispatch(getAutomatedReorderList({ AppId, CompId, BranchId }))?.unwrap(); - if (res?.data?.statusCode === 1 && res?.data?.data?.length > 0) { - setTableData(res?.data?.data) - } else { - setTableData([]) - } - } catch (error) { - console.error(error, 'error: getAutomatedReorderList'); - } + const fetchData = async () => { + try { + const res = await dispatch( + getAutomatedReorderList({ AppId, CompId, BranchId }) + )?.unwrap(); + if (res?.data?.statusCode === 1 && res?.data?.data?.length > 0) { + setTableData(res?.data?.data); + } else { + setTableData([]); + } + } catch (error) { + console.error(error, 'error: getAutomatedReorderList'); } + }; - const onSearch = (value) => { - setSearchedText(value); - }; - const onSearchChange = (e) => { - setSearchedText(e?.target?.value); - }; + const onSearch = (value) => { + setSearchedText(value); + }; + const onSearchChange = (e) => { + setSearchedText(e?.target?.value); + }; - const handleAdd = () => { - navigate(`${subDirectory}setting/automated-reorder/new`); + const handleAdd = () => { + navigate(`${subDirectory}setting/automated-reorder/new`); + }; + + const handleEdit = (record) => { + navigate(`${subDirectory}setting/automated-reorder/update`, { + state: { + editstate: record, + }, + }); + }; + const handleActiveAndDeactive = async (record) => { + const res = await dispatch( + deleteAutomatedReorder({ + UniqueId: record?.UniqueId, + UpdatedBy: UserId, + ActiveStatus: record?.ActiveStatus === 'A' ? 'D' : 'A', + }) + )?.unwrap(); + if (res?.data?.statusCode === 1) { + setMessageType('success'); + setMessageData( + record?.ActiveStatus === 'A' + ? 'Deactivated Successfully' + : 'Activated Successfully' + ); + fetchData(); + } else { + setMessageType('error'); + setMessageData(res?.data?.message); } + }; - const handleEdit = (record) => { - navigate(`${subDirectory}setting/automated-reorder/update`, { - state: { - editstate: record, - } - }); - } - const handleActiveAndDeactive = async (record) => { - const res = await dispatch(deleteAutomatedReorder({ UniqueId: record?.UniqueId, UpdatedBy: UserId, ActiveStatus: record?.ActiveStatus === 'A' ? 'D' : 'A' }))?.unwrap(); - if (res?.data?.statusCode === 1) { - setMessageType('success'); - setMessageData(record?.ActiveStatus === 'A' ? 'Deactivated Successfully' : 'Activated Successfully'); - fetchData(); - } else { - setMessageType('error'); - setMessageData(res?.data?.message); - } - } + const onComplete = useCallback(() => { + setMessageType(null); + setMessageData(null); + }, []); + const handlePageChange = (current) => { + setPage(current); + }; - const onComplete = useCallback(() => { - setMessageType(null); - setMessageData(null); - }, []); - const handlePageChange = (current) => { - setPage(current); - }; - - return ( -
- -
-
-
-
- -
-
-
- -
- } - /> -
-
-
-
- -
+ return ( +
+ +
+
+
+
+
- { - setSupplierModalOpen(false); - setSupplierRecords(null); - setSupplierRecordIndex(null); - }} - children={ -
- -
- } - /> -
- ) -} +
+
+ +
+ } + /> +
+
+
+
+ +
+
+ { + setSupplierModalOpen(false); + setSupplierRecords(null); + setSupplierRecordIndex(null); + }} + children={ +
+ +
+ } + /> + + ); +}; -export default AutomatedReorderList \ No newline at end of file +export default AutomatedReorderList; diff --git a/src/Pages/BookingScreen/Components/BSItemCards/BSItemCard.jsx b/src/Pages/BookingScreen/Components/BSItemCards/BSItemCard.jsx index 364d2e3..956573b 100644 --- a/src/Pages/BookingScreen/Components/BSItemCards/BSItemCard.jsx +++ b/src/Pages/BookingScreen/Components/BSItemCards/BSItemCard.jsx @@ -120,7 +120,10 @@ import { ApplicationPreferences } from '../../../../Features/BrachLogin/BranchLo import { useDateStore } from '../../../../Features/BookingScreen/BookingData/DateStore.js'; import AddProduct from '../../../../Components/AddProduct/AddProduct.jsx'; import { MdOutlineAddShoppingCart } from 'react-icons/md'; -import { bulkpostdata, getUomData } from '../../../../Features/ProductPage/ProductPage.js'; +import { + bulkpostdata, + getUomData, +} from '../../../../Features/ProductPage/ProductPage.js'; import ProductPriceChange from '../UtillComponents/ProductPriceChange.jsx'; import ExpireConfirmModal from '../BookingFunctionality/ExpireConfirmModal.jsx'; import { calculateOverAllQtyLimit } from '../../../../utils/calculations.js'; @@ -162,7 +165,7 @@ export function SortableCard({ id, children, item }) { const BSItemCard = (props) => { const cardFunction = props?.cardFunctionality; - const { connectingState = null, setConnectingState = () => { } } = props; + const { connectingState = null, setConnectingState = () => {} } = props; console.log(connectingState?.positionChange, 'positionChange'); // const applyOffer = useApplyOfferto_CardDetail(); const preferenceDatas = useSelector(PreferenceData, shallowEqual); @@ -638,7 +641,7 @@ const BSItemCard = (props) => { WithoutTaxRate: availableFreeQty * item.OrderRate - (availableFreeQty * item.OrderRate * item.TaxPercentage) / - 100, + 100, Offer: availableFreeQty * item.OrderRate, }; @@ -687,7 +690,7 @@ const BSItemCard = (props) => { ((existingPaidItem.OrderQty + excessQty) * item.OrderRate * item.TaxPercentage) / - 100, + 100, }; ModifiedData.push(mergedPaidItem); @@ -722,7 +725,7 @@ const BSItemCard = (props) => { data?.InwardDtlId === item?.InwardDtlId && data?.ProdId === item?.ProdId && data?.OfferMessage?.[0]?.OfferId === - item?.OfferMessage?.[0]?.OfferId + item?.OfferMessage?.[0]?.OfferId ); if (isAlreadyExists !== -1) { @@ -742,11 +745,11 @@ const BSItemCard = (props) => { ).toFixed(2), WithoutTaxRate: (ModifiedData[isAlreadyExists].OrderQty + item.OrderQty) * - item.OrderRate - + item.OrderRate - ((ModifiedData[isAlreadyExists].OrderQty + item.OrderQty) * item.OrderRate * item.TaxPercentage) / - 100, + 100, Offer: (ModifiedData[isAlreadyExists].OrderQty + item.OrderQty) * item.OrderRate, @@ -772,10 +775,10 @@ const BSItemCard = (props) => { const appliedOfferAlreadyExists = AppliedOffers.findIndex( (offer) => offer?.FreeProductsList?.FreeProdId === - matchingFreeProduct?.FreeProdId && + matchingFreeProduct?.FreeProdId && offer?.TableName === matchingFreeProduct?.TableName && offer?.TableUniqueName === - matchingFreeProduct?.TableUniqueName && + matchingFreeProduct?.TableUniqueName && offer?.OfferId === matchingFreeProduct?.OfferId && offer?.OfferMode === matchingFreeProduct?.OfferMode && offer?.FreeProductsList?.ProdVariantDetails?.[0] @@ -978,7 +981,6 @@ const BSItemCard = (props) => { await dispatch( getOfferinBooking({ AppId: AppId, CompId: CompId, BranchId: BranchId }) ).unwrap(); - } useEffect(() => { @@ -1022,7 +1024,7 @@ const BSItemCard = (props) => { ? [] : SelectedDatas : ItemCard?.length == 0 || - (ItemCard?.[0]?.AppId === 0 && ItemCard?.[0]?.CompId === 0) + (ItemCard?.[0]?.AppId === 0 && ItemCard?.[0]?.CompId === 0) ? noSubcatCardData : ItemCard : ''; @@ -1056,8 +1058,7 @@ const BSItemCard = (props) => { if (AppId && CompId && BranchId) { fetchedit(); GetmultipleSearchData(); - getUom() - + getUom(); } // dispatch(changepreOrder(false)); Commented to Add Normal Produts After Adding the Combo Pack !!!!!! Dont Touch Without Shifayath Permission @@ -1065,7 +1066,7 @@ const BSItemCard = (props) => { const getUom = () => { dispatch(getUomData()); - } + }; const GetmultipleSearchData = async () => { const data = { @@ -1133,14 +1134,14 @@ const BSItemCard = (props) => { ProdSubCat: ProdSubCat, ...(AvailableDate && selectedDate ? { - date: Array.isArray(selectedDate) - ? selectedDate - .map((d) => (d?.format ? d.format('YYYY-MM-DD') : d)) - .join(',') - : selectedDate?.format - ? selectedDate.format('YYYY-MM-DD') - : selectedDate, - } + date: Array.isArray(selectedDate) + ? selectedDate + .map((d) => (d?.format ? d.format('YYYY-MM-DD') : d)) + .join(',') + : selectedDate?.format + ? selectedDate.format('YYYY-MM-DD') + : selectedDate, + } : {}), }; //mohan @@ -1187,14 +1188,14 @@ const BSItemCard = (props) => { prodCat: ProdCat, ...(AvailableDate && selectedDate ? { - date: Array.isArray(selectedDate) - ? selectedDate - .map((d) => (d?.format ? d.format('YYYY-MM-DD') : d)) - .join(',') - : selectedDate?.format - ? selectedDate.format('YYYY-MM-DD') - : selectedDate, - } + date: Array.isArray(selectedDate) + ? selectedDate + .map((d) => (d?.format ? d.format('YYYY-MM-DD') : d)) + .join(',') + : selectedDate?.format + ? selectedDate.format('YYYY-MM-DD') + : selectedDate, + } : {}), }; @@ -1400,13 +1401,13 @@ const BSItemCard = (props) => { (cartItem) => cartItem?.ProdId === item?.ProductDetail?.[QtyIndex]?.ProdId && cartItem?.InwardDtlId === - item?.ProductDetail?.[QtyIndex]?.ProdVariantDetails?.[ - VarientIndex - ]?.StockDetails?.[0]?.InwardDtlId && + item?.ProductDetail?.[QtyIndex]?.ProdVariantDetails?.[ + VarientIndex + ]?.StockDetails?.[0]?.InwardDtlId && cartItem?.OrderRate === - item?.ProductDetail?.[QtyIndex]?.ProdVariantDetails?.[ - VarientIndex - ]?.StockDetails?.[0]?.SellPrice && + item?.ProductDetail?.[QtyIndex]?.ProdVariantDetails?.[ + VarientIndex + ]?.StockDetails?.[0]?.SellPrice && !cartItem?.SalesId ); @@ -1415,9 +1416,9 @@ const BSItemCard = (props) => { (cartItem) => cartItem?.ProdId === item?.ProductDetail?.[QtyIndex]?.ProdId && cartItem?.InwardDtlId === - item?.ProductDetail?.[QtyIndex]?.ProdVariantDetails?.[ - VarientIndex - ]?.StockDetails?.[0]?.InwardDtlId && + item?.ProductDetail?.[QtyIndex]?.ProdVariantDetails?.[ + VarientIndex + ]?.StockDetails?.[0]?.InwardDtlId && // (cartItem?.OrderRate === item?.ProductDetail?.[QtyIndex]?.ProdVariantDetails?.[VarientIndex]?.StockDetails?.[0]?.SellPrice) !cartItem?.SalesId ); @@ -1459,11 +1460,11 @@ const BSItemCard = (props) => { (cartItem) => cartItem?.ProdId === item?.ProductDetail?.[QtyIndex]?.ProdId && cartItem?.InwardDtlId === - item?.ProductDetail?.[QtyIndex]?.ProdVariantDetails?.[VarientIndex] - ?.StockDetails?.[0]?.InwardDtlId && + item?.ProductDetail?.[QtyIndex]?.ProdVariantDetails?.[VarientIndex] + ?.StockDetails?.[0]?.InwardDtlId && cartItem?.OrderRate === - item?.ProductDetail?.[QtyIndex]?.ProdVariantDetails?.[VarientIndex] - ?.StockDetails?.[0]?.SellPrice && + item?.ProductDetail?.[QtyIndex]?.ProdVariantDetails?.[VarientIndex] + ?.StockDetails?.[0]?.SellPrice && !cartItem?.SalesId ); @@ -1472,9 +1473,9 @@ const BSItemCard = (props) => { (cartItem) => cartItem?.ProdId === item?.ProductDetail?.[QtyIndex]?.ProdId && cartItem?.InwardDtlId === - item?.ProductDetail?.[QtyIndex]?.ProdVariantDetails?.[ - VarientIndex - ]?.StockDetails?.[0]?.InwardDtlId && + item?.ProductDetail?.[QtyIndex]?.ProdVariantDetails?.[ + VarientIndex + ]?.StockDetails?.[0]?.InwardDtlId && // (cartItem?.OrderRate === item?.ProductDetail?.[QtyIndex]?.ProdVariantDetails?.[VarientIndex]?.StockDetails?.[0]?.SellPrice) !cartItem?.SalesId ); @@ -1555,13 +1556,13 @@ const BSItemCard = (props) => { (cartItem) => cartItem?.ProdId === qtydata?.ProductDetail?.[QtyIndex]?.ProdId && cartItem?.InwardDtlId === - qtydata?.ProductDetail?.[QtyIndex]?.ProdVariantDetails?.[ - index.key - ]?.StockDetails?.[0]?.InwardDtlId && + qtydata?.ProductDetail?.[QtyIndex]?.ProdVariantDetails?.[ + index.key + ]?.StockDetails?.[0]?.InwardDtlId && cartItem?.OrderRate === - qtydata?.ProductDetail?.[QtyIndex]?.ProdVariantDetails?.[ - index.key - ]?.StockDetails?.[0]?.SellPrice && + qtydata?.ProductDetail?.[QtyIndex]?.ProdVariantDetails?.[ + index.key + ]?.StockDetails?.[0]?.SellPrice && !cartItem?.SalesId ); @@ -1569,11 +1570,11 @@ const BSItemCard = (props) => { let Isincartonepc = CartOrderDetails?.filter( (cartItem) => cartItem?.ProdId === - qtydata?.ProductDetail?.[QtyIndex]?.ProdId && + qtydata?.ProductDetail?.[QtyIndex]?.ProdId && cartItem?.InwardDtlId === - qtydata?.ProductDetail?.[QtyIndex]?.ProdVariantDetails?.[ - index.key - ]?.StockDetails?.[0]?.InwardDtlId && + qtydata?.ProductDetail?.[QtyIndex]?.ProdVariantDetails?.[ + index.key + ]?.StockDetails?.[0]?.InwardDtlId && // (cartItem?.OrderRate === item?.ProductDetail?.[QtyIndex]?.ProdVariantDetails?.[VarientIndex]?.StockDetails?.[0]?.SellPrice) !cartItem?.SalesId ); @@ -1641,13 +1642,13 @@ const BSItemCard = (props) => { (cartItem) => cartItem?.ProdId === qtydata?.ProductDetail?.[QtyIndex]?.ProdId && cartItem?.InwardDtlId === - qtydata?.ProductDetail?.[QtyIndex]?.ProdVariantDetails?.[ - index.key - ]?.StockDetails?.[0]?.InwardDtlId && + qtydata?.ProductDetail?.[QtyIndex]?.ProdVariantDetails?.[ + index.key + ]?.StockDetails?.[0]?.InwardDtlId && cartItem?.OrderRate === - qtydata?.ProductDetail?.[QtyIndex]?.ProdVariantDetails?.[ - index.key - ]?.StockDetails?.[0]?.SellPrice && + qtydata?.ProductDetail?.[QtyIndex]?.ProdVariantDetails?.[ + index.key + ]?.StockDetails?.[0]?.SellPrice && !cartItem?.SalesId ); @@ -1656,9 +1657,9 @@ const BSItemCard = (props) => { (cartItem) => cartItem?.ProdId === qtydata?.ProductDetail?.[QtyIndex]?.ProdId && cartItem?.InwardDtlId === - qtydata?.ProductDetail?.[QtyIndex]?.ProdVariantDetails?.[ - index.key - ]?.StockDetails?.[0]?.InwardDtlId && + qtydata?.ProductDetail?.[QtyIndex]?.ProdVariantDetails?.[ + index.key + ]?.StockDetails?.[0]?.InwardDtlId && // (cartItem?.OrderRate === item?.ProductDetail?.[QtyIndex]?.ProdVariantDetails?.[VarientIndex]?.StockDetails?.[0]?.SellPrice) !cartItem?.SalesId ); @@ -1826,15 +1827,15 @@ const BSItemCard = (props) => { let Isincart = CartOrderDetails?.find( (cartItem) => cartItem?.ProdId === - qtydata?.ProductDetail?.[item?.QtyIndex]?.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 && !cartItem?.SalesId ); @@ -1842,11 +1843,11 @@ const BSItemCard = (props) => { let Isincartonepc = CartOrderDetails?.filter( (cartItem) => cartItem?.ProdId === - qtydata?.ProductDetail?.[item?.QtyIndex]?.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 === item?.ProductDetail?.[QtyIndex]?.ProdVariantDetails?.[VarientIndex]?.StockDetails?.[0]?.SellPrice) !cartItem?.SalesId ); @@ -1925,15 +1926,15 @@ const BSItemCard = (props) => { let Isincart = CartOrderDetails?.find( (cartItem) => cartItem?.ProdId === - qtydata?.ProductDetail?.[item?.QtyIndex]?.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 && !cartItem?.SalesId ); @@ -1941,11 +1942,11 @@ const BSItemCard = (props) => { let Isincartonepc = CartOrderDetails?.filter( (cartItem) => cartItem?.ProdId === - qtydata?.ProductDetail?.[item?.QtyIndex]?.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 === item?.ProductDetail?.[QtyIndex]?.ProdVariantDetails?.[VarientIndex]?.StockDetails?.[0]?.SellPrice) !cartItem?.SalesId ); @@ -2237,15 +2238,15 @@ const BSItemCard = (props) => { const isExistsInFreeProdList = hasOffer ? FreeProdList?.filter( - (f) => - f?.FreeProdId === item?.ProdId && - f?.ProdVariantDetails?.some((variant) => - variant?.StockDetails?.some( - (stock) => stock?.FreeInwardDtlId === item?.InwardDtlId - ) - ) && - f?.RemainingQty > 0 - ) + (f) => + f?.FreeProdId === item?.ProdId && + f?.ProdVariantDetails?.some((variant) => + variant?.StockDetails?.some( + (stock) => stock?.FreeInwardDtlId === item?.InwardDtlId + ) + ) && + f?.RemainingQty > 0 + ) : []; const calculateTaxAmounts = (qty, rate, taxPercentage) => { @@ -2312,10 +2313,10 @@ const BSItemCard = (props) => { ((cartItem?.OfferModeType && cartItem?.OfferMode === 'B' ? true : cartItem?.OfferMode !== 'B') && - cartItem?.OfferMode !== 'P' && - cartItem?.OfferMode !== 'C' && - cartItem?.OfferMode !== 'O' && - cartItem?.OfferMode !== 'L' + cartItem?.OfferMode !== 'P' && + cartItem?.OfferMode !== 'C' && + cartItem?.OfferMode !== 'O' && + cartItem?.OfferMode !== 'L' ? true : cartItem?.Offer === 0) ); @@ -2326,10 +2327,10 @@ const BSItemCard = (props) => { ((cartItem?.OfferModeType && cartItem?.OfferMode === 'B' ? true : cartItem?.OfferMode !== 'B') && - cartItem?.OfferMode !== 'P' && - cartItem?.OfferMode !== 'C' && - cartItem?.OfferMode !== 'O' && - cartItem?.OfferMode !== 'L' + cartItem?.OfferMode !== 'P' && + cartItem?.OfferMode !== 'C' && + cartItem?.OfferMode !== 'O' && + cartItem?.OfferMode !== 'L' ? true : cartItem?.Offer === 0) ); @@ -2343,10 +2344,10 @@ const BSItemCard = (props) => { ((cartItem?.OfferModeType && cartItem?.OfferMode === 'B' ? true : cartItem?.OfferMode !== 'B') && - cartItem?.OfferMode !== 'P' && - cartItem?.OfferMode !== 'C' && - cartItem?.OfferMode !== 'O' && - cartItem?.OfferMode !== 'L' + cartItem?.OfferMode !== 'P' && + cartItem?.OfferMode !== 'C' && + cartItem?.OfferMode !== 'O' && + cartItem?.OfferMode !== 'L' ? true : cartItem?.Offer === 0) ) @@ -2359,10 +2360,10 @@ const BSItemCard = (props) => { ((cartItem?.OfferModeType && cartItem?.OfferMode === 'B' ? true : cartItem?.OfferMode !== 'B') && - cartItem?.OfferMode !== 'P' && - cartItem?.OfferMode !== 'C' && - cartItem?.OfferMode !== 'O' && - cartItem?.OfferMode !== 'L' + cartItem?.OfferMode !== 'P' && + cartItem?.OfferMode !== 'C' && + cartItem?.OfferMode !== 'O' && + cartItem?.OfferMode !== 'L' ? true : cartItem?.Offer === 0) ) @@ -2383,8 +2384,8 @@ const BSItemCard = (props) => { isItemInCart, item?.OtherProduct === 'Others' || item?.ScaleType === 'weight' ? ( - (item?.OrderQty || 0) + parseFloat(isItemInCart?.OrderQty) - )?.toFixed(3) + (item?.OrderQty || 0) + parseFloat(isItemInCart?.OrderQty) + )?.toFixed(3) : null ); const updatedData = addFirst @@ -2410,8 +2411,8 @@ const BSItemCard = (props) => { isItemInCartHold, item?.OtherProduct === 'Others' || item?.ScaleType === 'weight' ? ( - (item?.OrderQty || 0) + parseFloat(isItemInCartHold?.OrderQty) - )?.toFixed(3) + (item?.OrderQty || 0) + parseFloat(isItemInCartHold?.OrderQty) + )?.toFixed(3) : null ); const updatedData = addFirst @@ -2638,14 +2639,14 @@ const BSItemCard = (props) => { updatedCartData = cartData.map((item, idx) => idx === indexToCheck ? { - ...item, - Offer: null, - OfferMessage: undefined, - OfferMode: undefined, - OfferModeType: false, - OfferType: undefined, - OfferValue: null, - } + ...item, + Offer: null, + OfferMessage: undefined, + OfferMode: undefined, + OfferModeType: false, + OfferType: undefined, + OfferValue: null, + } : item ); } @@ -2696,8 +2697,8 @@ const BSItemCard = (props) => { ...item, Offer: sameProduct || - bestOffer?.OfferMode === 'I' || - bestOffer?.OfferMode === 'Q' + bestOffer?.OfferMode === 'I' || + bestOffer?.OfferMode === 'Q' ? bestOffer?.OfferAmount || item.Offer : item.Offer || bestOffer?.OfferAmount, OfferType: item?.OfferType || bestOffer?.OfferType, @@ -2714,10 +2715,10 @@ const BSItemCard = (props) => { ((c?.OfferModeType && c?.OfferMode === 'B' ? true : c?.OfferMode !== 'B') && - c?.OfferMode !== 'P' && - c?.OfferMode !== 'C' && - c?.OfferMode !== 'O' && - c?.OfferMode !== 'L' + c?.OfferMode !== 'P' && + c?.OfferMode !== 'C' && + c?.OfferMode !== 'O' && + c?.OfferMode !== 'L' ? true : c?.Offer === 0); @@ -3104,10 +3105,10 @@ const BSItemCard = (props) => { return FreeProdList.map((f, i) => i === index ? { - ...existing, - ...newFreeProd, - ProdVariantDetails: existing.ProdVariantDetails, - } + ...existing, + ...newFreeProd, + ProdVariantDetails: existing.ProdVariantDetails, + } : f ); } else { @@ -3177,7 +3178,7 @@ const BSItemCard = (props) => { const cycleSize = buyQty + getQty; const fullCycles = Math.floor( freeCartItem?.reduce((acc, fc) => acc + (fc?.OrderQty || 0), 0) / - cycleSize + cycleSize ); const totalFreeQty = fullCycles * getQty; @@ -3735,7 +3736,7 @@ const BSItemCard = (props) => { parseInt(totalSelectedProductQty || 0) + parseInt(reorderComboConsumed || 0); } - } catch (_) { } + } catch (_) {} let getCurrentProdDtl = orderDetails?.filter( (a) => a?.ProdName === ProdName ); @@ -3936,7 +3937,7 @@ const BSItemCard = (props) => { parseInt(totalSelectedProductQty || 0) + parseInt(reorderComboConsumed || 0); } - } catch (_) { } + } catch (_) {} let getCurrentProdDtl = orderDetails?.filter((a) => a?.ProdId === ProdId); let totalOrderQty = getCurrentProdDtl?.reduce((accumulator, card) => { return ( @@ -3972,7 +3973,7 @@ const BSItemCard = (props) => { }, 0); totalOrderQty = parseInt(totalOrderQty || 0) + parseInt(comboConsumed || 0); - } catch (_) { } + } catch (_) {} let OverallProdQty = totalOrderQty - totalSelectedProductQty; if ( parseInt(ItemQuantity) > @@ -4058,7 +4059,7 @@ const BSItemCard = (props) => { parseInt(totalSelectedProductQty || 0) + parseInt(reorderComboConsumed || 0); } - } catch (_) { } + } catch (_) {} let getCurrentProdDtl = orderDetails?.filter((a) => a?.ProdId === ProdId); let totalOrderQty = getCurrentProdDtl?.reduce((accumulator, card) => { return ( @@ -4097,7 +4098,7 @@ const BSItemCard = (props) => { }, 0); totalOrderQty = parseInt(totalOrderQty || 0) + parseInt(comboConsumed || 0); - } catch (_) { } + } catch (_) {} let OverallProdQty = totalOrderQty - totalSelectedProductQty; if ( parseInt(ItemQuantity) > @@ -4189,7 +4190,7 @@ const BSItemCard = (props) => { parseInt(totalSelectedProductQty || 0) + parseInt(reorderComboConsumed || 0); } - } catch (_) { } + } catch (_) {} let getCurrentProdDtl = orderDetails?.filter( (a) => a?.ProdId === ProdId && a?.InwardDtlId === InwardDtlId ); @@ -4232,7 +4233,7 @@ const BSItemCard = (props) => { }, 0); totalOrderQty = parseInt(totalOrderQty || 0) + parseInt(comboConsumed || 0); - } catch (_) { } + } catch (_) {} let OverallProdQty = totalOrderQty - totalSelectedProductQty; if ( @@ -4316,7 +4317,7 @@ const BSItemCard = (props) => { parseInt(totalSelectedProductQty || 0) + parseInt(reorderComboConsumed || 0); } - } catch (_) { } + } catch (_) {} let getCurrentProdDtl = orderDetails?.filter( (a) => a?.ProdId === ProdId && a?.InwardDtlId === InwardDtlId ); @@ -4363,7 +4364,7 @@ const BSItemCard = (props) => { }, 0); totalOrderQty = parseInt(totalOrderQty || 0) + parseInt(comboConsumed || 0); - } catch (_) { } + } catch (_) {} let OverallProdQty = totalOrderQty - totalSelectedProductQty; if ( @@ -4541,7 +4542,7 @@ const BSItemCard = (props) => { 0 || - record.StockCount === 'Stock Not Maintained' + record.StockCount === 'Stock Not Maintained' ? { color: '#000', cursor: 'pointer' } : { color: '#f49898', cursor: 'not-allowed' } } @@ -4571,7 +4572,7 @@ const BSItemCard = (props) => { 0 || - record.StockCount === 'Stock Not Maintained' + record.StockCount === 'Stock Not Maintained' ? { color: '#000', cursor: 'pointer' } : { color: '#f49898', cursor: 'not-allowed' } } @@ -4601,7 +4602,7 @@ const BSItemCard = (props) => { 0 || - record.StockCount === 'Stock Not Maintained' + record.StockCount === 'Stock Not Maintained' ? { color: '#000', cursor: 'pointer' } : { color: '#f49898', cursor: 'not-allowed' } } @@ -4776,17 +4777,17 @@ const BSItemCard = (props) => { qtydata?.ProductDetail?.[QtyIndex]?.StockAvailable === 'Y' ? onePeiceFlow ? returnVariantStock( - qtydata?.ProductDetail?.[QtyIndex]?.ProdId, - item?.OverAllPcs, - CartOrderDetails, - item?.ProdVariantName - ) + qtydata?.ProductDetail?.[QtyIndex]?.ProdId, + item?.OverAllPcs, + CartOrderDetails, + item?.ProdVariantName + ) : returnVariantStock( - qtydata?.ProductDetail?.[QtyIndex]?.ProdId, - item?.OverAllQty, - CartOrderDetails, - item?.ProdVariantName - ) + qtydata?.ProductDetail?.[QtyIndex]?.ProdId, + item?.OverAllQty, + CartOrderDetails, + item?.ProdVariantName + ) : 'Stock Not Maintained', VariantAvailableFrom: item?.AvailableFrom, VariantAvailableTo: item?.AvailableTo, @@ -4808,20 +4809,20 @@ const BSItemCard = (props) => { 'Batch No': item?.BatchRef, StockCount: onePeiceFlow ? returnCountStock( - item?.ProdId, - item?.OverAllPcs, - CartOrderDetails, - item?.InwardDtlId, - 'Y' - ) + item?.ProdId, + item?.OverAllPcs, + CartOrderDetails, + item?.InwardDtlId, + 'Y' + ) : returnCountStock( - item?.ProdId, - item?.BalanceQty, - CartOrderDetails, - item?.InwardDtlId, - 'N', - item?.OverAllPcs - ), + item?.ProdId, + item?.BalanceQty, + CartOrderDetails, + item?.InwardDtlId, + 'N', + item?.OverAllPcs + ), 'Stock Date': ExtractDateFormate(item?.InwardDate), Price: onePeiceFlow ? item?.OnePcsPrice : item?.SellPrice, ExpDate: @@ -5998,9 +5999,9 @@ const BSItemCard = (props) => { allProducts.forEach((product) => { const brandName = product.BrandName && - product.BrandName !== 'null' && - product.BrandName !== 'undefined' && - product.BrandName.trim() !== '' + product.BrandName !== 'null' && + product.BrandName !== 'undefined' && + product.BrandName.trim() !== '' ? product.BrandName : 'Others'; @@ -6034,13 +6035,13 @@ const BSItemCard = (props) => { const result = prodname ? (cardData || [])?.filter( - (item) => - normalize(item.ProdName).includes(normalize(prodname)) || - normalize(item.ProdCatName).includes(normalize(prodname)) || - item.ProductDetail?.some((detail) => - normalize(detail.ProdName).includes(normalize(prodname)) - ) - ) + (item) => + normalize(item.ProdName).includes(normalize(prodname)) || + normalize(item.ProdCatName).includes(normalize(prodname)) || + item.ProductDetail?.some((detail) => + normalize(detail.ProdName).includes(normalize(prodname)) + ) + ) : cardData; console.log(prodQty, 'cardDatacardData', result, prodname); @@ -6060,8 +6061,8 @@ const BSItemCard = (props) => { CardOnclick( result?.[0], result?.[0]?.OnePcsAvailable === 'Y' && - preferenceSingleSales && - 'OnePeiceProduct' + preferenceSingleSales && + 'OnePeiceProduct' ); // AddOrderDetails2(result?.[0]) } else if (item?.OverAllQty < prodQty) { @@ -6121,21 +6122,21 @@ const BSItemCard = (props) => { zIndex: connectingState?.positionChange ? '0' : '20', top: templateData?.BookingNavbar?.[0] === 'Navbar3' && - templateData?.BookingLayout?.[0] === 'Layout3' + templateData?.BookingLayout?.[0] === 'Layout3' ? '5px' : templateData?.BookingNavbar?.[0] === 'Navbar3' && - ['Layout1', 'Layout2'].includes( - templateData?.BookingLayout?.[0] - ) + ['Layout1', 'Layout2'].includes( + templateData?.BookingLayout?.[0] + ) ? '3px' : templateData?.BookingNavbar?.[0] === 'Navbar3' && - ['Layout4', 'Layout5', 'Layout6'].includes( - templateData?.BookingLayout?.[0] - ) + ['Layout4', 'Layout5', 'Layout6'].includes( + templateData?.BookingLayout?.[0] + ) ? '3rem' : ['Layout4', 'Layout5', 'Layout6'].includes( - templateData?.BookingLayout?.[0] - ) + templateData?.BookingLayout?.[0] + ) ? '3.1rem' : templateData?.BookingNavbar?.[0] === 'Navbar3' ? '3rem' @@ -6217,21 +6218,21 @@ const BSItemCard = (props) => { }} className={ (item?.OverAllQty !== undefined && - !preferenceSingleSales + !preferenceSingleSales ? returnCount( - item?.ProductDetail?.[0]?.ProdName, - item?.OverAllQty, - CartOrderDetails, - item?.OverAllPcs - ) + item?.ProductDetail?.[0]?.ProdName, + item?.OverAllQty, + CartOrderDetails, + item?.OverAllPcs + ) : returnOnepcCount( - item?.ProductDetail?.[0]?.ProdName, - item?.OverAllPcs, - CartOrderDetails - ) > 0) || - item?.ProductDetail?.some( - (item) => item?.StockAvailable !== 'Y' - ) + item?.ProductDetail?.[0]?.ProdName, + item?.OverAllPcs, + CartOrderDetails + ) > 0) || + item?.ProductDetail?.some( + (item) => item?.StockAvailable !== 'Y' + ) ? 'BkPrdCardActive' : 'BkPrdCardDeActive' } @@ -6269,39 +6270,39 @@ const BSItemCard = (props) => { cardFunction?.Background && (SelectedCardColor ? SelectedCardColor?.[ - 'BackgroundColor' - ] + 'BackgroundColor' + ] : ''), padding: !cardFunction?.ImageUp && - !cardFunction?.ImageDown + !cardFunction?.ImageDown ? cardFunction?.SmallImage && - '5px 9px' + '5px 9px' : '8px 2px', flexDirection: cardFunction?.ImageRight && - 'row-reverse' + 'row-reverse' ? cardFunction?.ImageRight && - 'row-reverse' + 'row-reverse' : cardFunction?.ImageUp && 'column' ? cardFunction?.ImageUp && - 'column' + 'column' : cardFunction?.ImageDown && - 'column-reverse' + 'column-reverse' ? cardFunction?.ImageDown && - 'column-reverse' + 'column-reverse' : cardFunction?.ImageLeft && - 'row', + 'row', borderRadius: cardFunction?.EdgeCurve && '6px', width: !cardFunction?.ImageUp && - !cardFunction?.ImageDown && - !cardFunction?.BigImage && - !cardFunction?.ImageRight && - cardFunction?.SmallImage && - (cardFunction?.ImageUp || - cardFunction?.ImageDown) + !cardFunction?.ImageDown && + !cardFunction?.BigImage && + !cardFunction?.ImageRight && + cardFunction?.SmallImage && + (cardFunction?.ImageUp || + cardFunction?.ImageDown) ? '6rem' : cardFunction?.BigImage && '9rem', height: @@ -6334,19 +6335,19 @@ const BSItemCard = (props) => { if ( !( (item?.OverAllQty !== undefined && - !preferenceSingleSales + !preferenceSingleSales ? returnCount( - item?.ProductDetail?.[0] - ?.ProdName, - item?.OverAllQty, - CartOrderDetails - ) + item?.ProductDetail?.[0] + ?.ProdName, + item?.OverAllQty, + CartOrderDetails + ) : returnOnepcCount( - item?.ProductDetail?.[0] - ?.ProdName, - item?.OverAllPcs, - CartOrderDetails - ) > 0) || + item?.ProductDetail?.[0] + ?.ProdName, + item?.OverAllPcs, + CartOrderDetails + ) > 0) || item?.ProductDetail?.some( (item) => item?.StockAvailable !== 'Y' @@ -6358,8 +6359,8 @@ const BSItemCard = (props) => { CardOnclick( item, item?.OnePcsAvailable === 'Y' && - preferenceSingleSales && - 'OnePeiceProduct' + preferenceSingleSales && + 'OnePeiceProduct' ); } }} @@ -6368,39 +6369,39 @@ const BSItemCard = (props) => { > {(cardFunction?.BigImage || cardFunction?.SmallImage) && ( - - )} + ? item?.ProductDetail?.[0] + ?.ProdLogo + : defaultimage + } + alt="" + /> + )}
{ cardFunction?.Background && (SelectedCardColor ? SelectedCardColor?.[ - 'BackgroundColor' - ] + 'BackgroundColor' + ] : ''), position: !cardFunction?.BigImage @@ -6434,7 +6435,7 @@ const BSItemCard = (props) => { height: cardFunction?.SmallImage ? '5.5rem' : !cardFunction?.BigImage && - '5.5rem', + '5.5rem', alignItems: !cardFunction?.BigImage && !cardFunction?.SmallImage && @@ -6457,11 +6458,11 @@ const BSItemCard = (props) => { 'uppercase', width: !cardFunction?.SmallImage ? cardFunction?.BigImage && - '120px' + '120px' : cardFunction?.SmallImage && - !cardFunction?.ImageUp && - !cardFunction?.ImageDown && - '85px', + !cardFunction?.ImageUp && + !cardFunction?.ImageDown && + '85px', // Width: cardFunction?.BigImage && "70px", fontSize: !cardFunction?.BigImage && @@ -6483,24 +6484,24 @@ const BSItemCard = (props) => { > {item?.ProdName}{' '} {(item?.OverAllQty !== undefined && - !preferenceSingleSales + !preferenceSingleSales ? returnCount( - item?.ProductDetail?.[0] - ?.ProdName, - item?.OverAllQty, - CartOrderDetails, - item - ) + item?.ProductDetail?.[0] + ?.ProdName, + item?.OverAllQty, + CartOrderDetails, + item + ) : returnOnepcCount( - item?.ProductDetail?.[0] - ?.ProdName, - item?.OverAllPcs, - CartOrderDetails - ) > 0) || - item?.ProductDetail?.some( - (item) => - item?.StockAvailable !== 'Y' - ) ? ( + item?.ProductDetail?.[0] + ?.ProdName, + item?.OverAllPcs, + CartOrderDetails + ) > 0) || + item?.ProductDetail?.some( + (item) => + item?.StockAvailable !== 'Y' + ) ? ( '' ) : (

{ fontSize: !cardFunction?.SmallImage ? cardFunction?.BigImage && - '12px' + '12px' : '12px', textAlign: 'center', - lineHeight: '2', fontFamily: SelectedCardFont ? SelectedCardFont : '', color: SelectedCardColor ? SelectedCardColor?.[ - 'FontColor' - ] + 'FontColor' + ] : '', }} > @@ -6565,17 +6565,16 @@ const BSItemCard = (props) => { fontSize: !cardFunction?.SmallImage ? cardFunction?.BigImage && - '12px' + '12px' : '12px', textAlign: 'center', - lineHeight: '2', fontFamily: SelectedCardFont ? SelectedCardFont : '', color: SelectedCardColor ? SelectedCardColor?.[ - 'FontColor' - ] + 'FontColor' + ] : '', }} > @@ -6623,19 +6622,19 @@ const BSItemCard = (props) => { count={ !preferenceSingleSales ? returnCount( - item - ?.ProductDetail?.[0] - ?.ProdName, - item?.OverAllQty, - CartOrderDetails - ) + item + ?.ProductDetail?.[0] + ?.ProdName, + item?.OverAllQty, + CartOrderDetails + ) : returnOnepcCount( - item - ?.ProductDetail?.[0] - ?.ProdName, - item?.OverAllPcs, - CartOrderDetails - ) + item + ?.ProductDetail?.[0] + ?.ProdName, + item?.OverAllPcs, + CartOrderDetails + ) } overflowCount={10000} > @@ -6687,14 +6686,14 @@ const BSItemCard = (props) => { item?.OverAllPcs, CartOrderDetails ) > 0 || - item?.ProductDetail?.some( - (product) => - product?.StockAvailable !== - 'Y' - ) + item?.ProductDetail?.some( + (product) => + product?.StockAvailable !== + 'Y' + ) ? cardFunction?.Background ? SelectedCardColor?.BackgroundColor || - '#000000' + '#000000' : '#fff' : '#ff4d4f', }} @@ -6736,39 +6735,39 @@ const BSItemCard = (props) => { cardFunction?.Background && (SelectedCardColor ? SelectedCardColor?.[ - 'BackgroundColor' - ] + 'BackgroundColor' + ] : ''), padding: !cardFunction?.ImageUp && - !cardFunction?.ImageDown + !cardFunction?.ImageDown ? cardFunction?.SmallImage && - '5px 9px' + '5px 9px' : '8px 2px', flexDirection: cardFunction?.ImageRight && - 'row-reverse' + 'row-reverse' ? cardFunction?.ImageRight && - 'row-reverse' + 'row-reverse' : cardFunction?.ImageUp && 'column' ? cardFunction?.ImageUp && - 'column' + 'column' : cardFunction?.ImageDown && - 'column-reverse' + 'column-reverse' ? cardFunction?.ImageDown && - 'column-reverse' + 'column-reverse' : cardFunction?.ImageLeft && - 'row', + 'row', borderRadius: cardFunction?.EdgeCurve && '6px', width: !cardFunction?.ImageUp && - !cardFunction?.ImageDown && - !cardFunction?.BigImage && - !cardFunction?.ImageRight && - cardFunction?.SmallImage && - (cardFunction?.ImageUp || - cardFunction?.ImageDown) + !cardFunction?.ImageDown && + !cardFunction?.BigImage && + !cardFunction?.ImageRight && + cardFunction?.SmallImage && + (cardFunction?.ImageUp || + cardFunction?.ImageDown) ? '6rem' : cardFunction?.BigImage && '9rem', height: @@ -6786,19 +6785,19 @@ const BSItemCard = (props) => { if ( !( (item?.OverAllQty !== undefined && - !preferenceSingleSales + !preferenceSingleSales ? returnCount( - item?.ProductDetail?.[0] - ?.ProdName, - item?.OverAllQty, - CartOrderDetails - ) + item?.ProductDetail?.[0] + ?.ProdName, + item?.OverAllQty, + CartOrderDetails + ) : returnOnepcCount( - item?.ProductDetail?.[0] - ?.ProdName, - item?.OverAllPcs, - CartOrderDetails - ) > 0) || + item?.ProductDetail?.[0] + ?.ProdName, + item?.OverAllPcs, + CartOrderDetails + ) > 0) || item?.ProductDetail?.some( (item) => item?.StockAvailable !== 'Y' @@ -6810,48 +6809,48 @@ const BSItemCard = (props) => { CardOnclick( item, item?.OnePcsAvailable === 'Y' && - preferenceSingleSales && - 'OnePeiceProduct' + preferenceSingleSales && + 'OnePeiceProduct' ); } }} - // data-aos="zoom-in" data-aos-duration="600" + // data-aos="zoom-in" data-aos-duration="600" > {(cardFunction?.BigImage || cardFunction?.SmallImage) && ( - - )} + ? item?.ProductDetail?.[0] + ?.ProdLogo + : defaultimage + } + alt="" + /> + )}

{ cardFunction?.Background && (SelectedCardColor ? SelectedCardColor?.[ - 'BackgroundColor' - ] + 'BackgroundColor' + ] : ''), position: !cardFunction?.BigImage @@ -6885,7 +6884,7 @@ const BSItemCard = (props) => { height: cardFunction?.SmallImage ? '5.5rem' : !cardFunction?.BigImage && - '4.5rem', + '4.5rem', alignItems: !cardFunction?.BigImage && !cardFunction?.SmallImage && @@ -6905,11 +6904,11 @@ const BSItemCard = (props) => { 'uppercase', width: !cardFunction?.SmallImage ? cardFunction?.BigImage && - '120px' + '120px' : cardFunction?.SmallImage && - !cardFunction?.ImageUp && - !cardFunction?.ImageDown && - '85px', + !cardFunction?.ImageUp && + !cardFunction?.ImageDown && + '85px', // Width: cardFunction?.BigImage && "70px", fontSize: !cardFunction?.BigImage && @@ -6931,24 +6930,24 @@ const BSItemCard = (props) => { > {item?.ProdName}{' '} {(item?.OverAllQty !== undefined && - !preferenceSingleSales + !preferenceSingleSales ? returnCount( - item?.ProductDetail?.[0] - ?.ProdName, - item?.OverAllQty, - CartOrderDetails, - item - ) + item?.ProductDetail?.[0] + ?.ProdName, + item?.OverAllQty, + CartOrderDetails, + item + ) : returnOnepcCount( - item?.ProductDetail?.[0] - ?.ProdName, - item?.OverAllPcs, - CartOrderDetails - ) > 0) || - item?.ProductDetail?.some( - (item) => - item?.StockAvailable !== 'Y' - ) ? ( + item?.ProductDetail?.[0] + ?.ProdName, + item?.OverAllPcs, + CartOrderDetails + ) > 0) || + item?.ProductDetail?.some( + (item) => + item?.StockAvailable !== 'Y' + ) ? ( '' ) : (

{ fontSize: !cardFunction?.SmallImage ? cardFunction?.BigImage && - '12px' + '12px' : '12px', textAlign: 'center', - lineHeight: '2', fontFamily: SelectedCardFont ? SelectedCardFont : '', color: SelectedCardColor ? SelectedCardColor?.[ - 'FontColor' - ] + 'FontColor' + ] : '', }} > @@ -7013,17 +7011,16 @@ const BSItemCard = (props) => { fontSize: !cardFunction?.SmallImage ? cardFunction?.BigImage && - '12px' + '12px' : '12px', textAlign: 'center', - lineHeight: '2', fontFamily: SelectedCardFont ? SelectedCardFont : '', color: SelectedCardColor ? SelectedCardColor?.[ - 'FontColor' - ] + 'FontColor' + ] : '', }} > @@ -7068,19 +7065,19 @@ const BSItemCard = (props) => { count={ !preferenceSingleSales ? returnCount( - item - ?.ProductDetail?.[0] - ?.ProdName, - item?.OverAllQty, - CartOrderDetails - ) + item + ?.ProductDetail?.[0] + ?.ProdName, + item?.OverAllQty, + CartOrderDetails + ) : returnOnepcCount( - item - ?.ProductDetail?.[0] - ?.ProdName, - item?.OverAllPcs, - CartOrderDetails - ) + item + ?.ProductDetail?.[0] + ?.ProdName, + item?.OverAllPcs, + CartOrderDetails + ) } overflowCount={10000} > @@ -7131,14 +7128,14 @@ const BSItemCard = (props) => { item?.OverAllPcs, CartOrderDetails ) > 0 || - item?.ProductDetail?.some( - (product) => - product?.StockAvailable !== - 'Y' - ) + item?.ProductDetail?.some( + (product) => + product?.StockAvailable !== + 'Y' + ) ? cardFunction?.Background ? SelectedCardColor?.BackgroundColor || - '#000000' + '#000000' : '#fff' : '#ff4d4f', }} @@ -7153,21 +7150,21 @@ const BSItemCard = (props) => {

0) || - item?.ProductDetail?.some( - (item) => item?.StockAvailable !== 'Y' - ) + item?.ProductDetail?.[0]?.ProdName, + item?.OverAllPcs, + CartOrderDetails + ) > 0) || + item?.ProductDetail?.some( + (item) => item?.StockAvailable !== 'Y' + ) ? 'card4Main card4Main-active' : 'card4Main card4Main-deactive' } @@ -7190,17 +7187,17 @@ const BSItemCard = (props) => { if ( !( (item?.OverAllQty !== undefined && - !preferenceSingleSales + !preferenceSingleSales ? returnCount( - item?.ProductDetail?.[0]?.ProdName, - item?.OverAllQty, - CartOrderDetails - ) + item?.ProductDetail?.[0]?.ProdName, + item?.OverAllQty, + CartOrderDetails + ) : returnOnepcCount( - item?.ProductDetail?.[0]?.ProdName, - item?.OverAllPcs, - CartOrderDetails - ) > 0) || + item?.ProductDetail?.[0]?.ProdName, + item?.OverAllPcs, + CartOrderDetails + ) > 0) || item?.ProductDetail?.some( (item) => item?.StockAvailable !== 'Y' ) @@ -7215,8 +7212,8 @@ const BSItemCard = (props) => { CardOnclick( item, item?.OnePcsAvailable === 'Y' && - preferenceSingleSales && - 'OnePeiceProduct' + preferenceSingleSales && + 'OnePeiceProduct' ); // This will trigger if you're clicking outside the "One Piece" button } @@ -7258,7 +7255,7 @@ const BSItemCard = (props) => { height={60} src={ item?.ProductDetail?.[0]?.ProdLogo === - '' + '' ? defaultimage : item?.ProductDetail?.[0]?.ProdLogo ? item?.ProductDetail?.[0]?.ProdLogo @@ -7273,21 +7270,21 @@ const BSItemCard = (props) => {
{item?.ProdName} {(item?.OverAllQty !== undefined && - !preferenceSingleSales + !preferenceSingleSales ? returnCount( - item?.ProductDetail?.[0]?.ProdName, - item?.OverAllQty, - CartOrderDetails, - item - ) + item?.ProductDetail?.[0]?.ProdName, + item?.OverAllQty, + CartOrderDetails, + item + ) : returnOnepcCount( - item?.ProductDetail?.[0]?.ProdName, - item?.OverAllPcs, - CartOrderDetails - ) > 0) || - item?.ProductDetail?.some( - (item) => item?.StockAvailable !== 'Y' - ) ? ( + item?.ProductDetail?.[0]?.ProdName, + item?.OverAllPcs, + CartOrderDetails + ) > 0) || + item?.ProductDetail?.some( + (item) => item?.StockAvailable !== 'Y' + ) ? ( '' ) : (

{

{cardFunction?.MRP && ((item?.OverAllQty !== undefined && - !preferenceSingleSales + !preferenceSingleSales ? returnCount( - item?.ProductDetail?.[0]?.ProdName, - item?.OverAllQty, - CartOrderDetails, - item - ) + item?.ProductDetail?.[0]?.ProdName, + item?.OverAllQty, + CartOrderDetails, + item + ) : returnOnepcCount( - item?.ProductDetail?.[0]?.ProdName, - item?.OverAllPcs, - CartOrderDetails - ) > 0) || + item?.ProductDetail?.[0]?.ProdName, + item?.OverAllPcs, + CartOrderDetails + ) > 0) || item?.ProductDetail?.some( (item) => item?.StockAvailable !== 'Y' )) && ( @@ -7327,33 +7324,33 @@ const BSItemCard = (props) => {
)} {((item?.OverAllQty !== undefined && - !preferenceSingleSales + !preferenceSingleSales ? returnCount( - item?.ProductDetail?.[0]?.ProdName, - item?.OverAllQty, - CartOrderDetails, - item - ) + item?.ProductDetail?.[0]?.ProdName, + item?.OverAllQty, + CartOrderDetails, + item + ) : returnOnepcCount( - item?.ProductDetail?.[0]?.ProdName, - item?.OverAllPcs, - CartOrderDetails - ) > 0) || + item?.ProductDetail?.[0]?.ProdName, + item?.OverAllPcs, + CartOrderDetails + ) > 0) || item?.ProductDetail?.some( (item) => item?.StockAvailable !== 'Y' )) && ( -
-
- ₹ {ItemSellingPrice(item)} -
- -
- <> - ({ItemSize(item)} {ItemUomName(item)}) - -
+
+
+ ₹ {ItemSellingPrice(item)}
- )} + +
+ <> + ({ItemSize(item)} {ItemUomName(item)}) + +
+
+ )}
{/* Stock Count Badge */} @@ -7378,17 +7375,17 @@ const BSItemCard = (props) => { count={ !preferenceSingleSales ? returnCount( - item?.ProductDetail?.[0] - ?.ProdName, - item?.OverAllQty, - CartOrderDetails - ) + item?.ProductDetail?.[0] + ?.ProdName, + item?.OverAllQty, + CartOrderDetails + ) : returnOnepcCount( - item?.ProductDetail?.[0] - ?.ProdName, - item?.OverAllPcs, - CartOrderDetails - ) + item?.ProductDetail?.[0] + ?.ProdName, + item?.OverAllPcs, + CartOrderDetails + ) } overflowCount={10000} > @@ -7437,13 +7434,13 @@ const BSItemCard = (props) => { item?.OverAllPcs, CartOrderDetails ) > 0 || - item?.ProductDetail?.some( - (product) => - product?.StockAvailable !== 'Y' - ) + item?.ProductDetail?.some( + (product) => + product?.StockAvailable !== 'Y' + ) ? cardFunction?.Background ? SelectedCardColor?.BackgroundColor || - '#000000' + '#000000' : '#fff' : '#ff4d4f', }} @@ -7825,16 +7822,16 @@ const BSItemCard = (props) => { ]?.ProdVariantName?.toLowerCase()?.includes( 'variant' ) && ( - - ( - { - qtydata?.ProductDetail?.[QtyIndex] - ?.ProdVariantDetails?.[VarientIndex] - ?.ProdVariantName - } - ){' '} - - )} + + ( + { + qtydata?.ProductDetail?.[QtyIndex] + ?.ProdVariantDetails?.[VarientIndex] + ?.ProdVariantName + } + ){' '} + + )}

diff --git a/src/Pages/BookingScreen/Template/BSLayout4/BSLayout4.jsx b/src/Pages/BookingScreen/Template/BSLayout4/BSLayout4.jsx index f43e5fc..2cb1cb5 100644 --- a/src/Pages/BookingScreen/Template/BSLayout4/BSLayout4.jsx +++ b/src/Pages/BookingScreen/Template/BSLayout4/BSLayout4.jsx @@ -5,22 +5,20 @@ import { Tooltip, Badge, Popconfirm } from 'antd'; import { isMobile } from 'react-device-detect'; import BookingCloseIcon from '../../Components/UtillComponents/BookingCloseIcon.jsx'; const BSNavbar1 = lazy(() => import('../../Components/BSNavbar/BSNavbar1')); - const CategoryHorizontal = lazy( +const CategoryHorizontal = lazy( () => import('../../Components/BSCategories/BSCategoryHorizontal') ); const BSItemCard = lazy( () => import('../../Components/BSItemCards/BSItemCard') ); - + const BSBillingTable2 = lazy( () => import('../../Components/BSBillingTables/BSBillingTable2/BSBillingTable2') ); -const BSBillingTable3 = lazy( - () => - import('../../Components/BSBillingTables/BSBillingTable3/BSBillingTable3overall') -); - + +import BSBillingTable3 from '../../Components/BSBillingTables/BSBillingTable3/BSBillingTable3overall'; + import { dynamicComponentProps } from '../DynamicComponentProps.js'; import { getTemplateData, @@ -95,16 +93,10 @@ const BSOtherServicesVerticalcat = lazy( () => import('../../Components/BSCategories/BSOtherServicesVerticalcat.jsx') ); - const SalesCountForStandard = lazy( () => import('../SalesCountForStandard.jsx') ); -const StandardTable = lazy( - () => - import('../../Components/BSBillingTables/StandardTable/StandardTable.jsx') -); - const ComboSalesBillTable = lazy( () => import('../../Components/BSBillingTables/ComboSalesBillTable/ComboSalesBillTable.jsx') diff --git a/src/Pages/CustomerMaster/CustMasterList.jsx b/src/Pages/CustomerMaster/CustMasterList.jsx index cade722..b11113f 100644 --- a/src/Pages/CustomerMaster/CustMasterList.jsx +++ b/src/Pages/CustomerMaster/CustMasterList.jsx @@ -25,8 +25,7 @@ import { Messages } from '../../Components/Notifications/Messages'; import { DefaultModal } from '../../Components/Modal/DefaultModal.jsx'; import { useAuth } from '../../AuthContext.jsx'; import { getPreferenceData } from '../../Features/BookingScreen/BookingData/BookingData.js'; - -const subDirectory = import.meta.env.BASE_URL; +const subDirectory = import.meta.env.ENV_BASE_URL; const items = [ { @@ -71,7 +70,6 @@ const CustomerMaster = () => { const [addnewAccess, setaddnewAccess] = useState(true); const [allowDecimal, setAllowDecimal] = useState(false); - async function fetchData() { if (location?.state?.Notiffy) { setMessageType(location?.state?.Notiffy.messageType); @@ -155,13 +153,22 @@ const CustomerMaster = () => { } }; const getPreference = async () => { - const data = { AppId: AppId, CompId: CompId, BranchId: BranchId, UserId: UserId }; - const { data: res } = await dispatch(getPreferenceData(data)).unwrap() - const decimalSetting = res?.data?.[0]?.SettingDtlDetails?.find((setting) => setting?.SettingIdName?.toLowerCase() === "decimal" && setting?.SettingValue === 'Y'); + const data = { + AppId: AppId, + CompId: CompId, + BranchId: BranchId, + UserId: UserId, + }; + const { data: res } = await dispatch(getPreferenceData(data)).unwrap(); + const decimalSetting = res?.data?.[0]?.SettingDtlDetails?.find( + (setting) => + setting?.SettingIdName?.toLowerCase() === 'decimal' && + setting?.SettingValue === 'Y' + ); if (decimalSetting) { - setAllowDecimal(true) + setAllowDecimal(true); } - } + }; //Delete const statusFormatter = async (row) => { @@ -251,7 +258,8 @@ const CustomerMaster = () => { width: '100px', render: (text, row) => ( - {(row?.CustName ? (row?.CustName + ' ') : '') + (row?.CustShortName || "") || row?.CustMobile} + {(row?.CustName ? row?.CustName + ' ' : '') + + (row?.CustShortName || '') || row?.CustMobile} ), filteredValue: [searchedText], @@ -260,8 +268,12 @@ const CustomerMaster = () => { String(record.CustShortName) ?.toLowerCase() ?.includes(value?.toLowerCase()) || - String(record.CustName)?.toLowerCase()?.includes(value?.toLowerCase()) || - String(record.CustMobile)?.toLowerCase()?.includes(value?.toLowerCase()) + String(record.CustName) + ?.toLowerCase() + ?.includes(value?.toLowerCase()) || + String(record.CustMobile) + ?.toLowerCase() + ?.includes(value?.toLowerCase()) ); }, sorter: (a, b) => a?.CustName?.length - b?.CustName?.length, diff --git a/src/Pages/Product/ExcelUpload.jsx b/src/Pages/Product/ExcelUpload.jsx index 08040aa..b7ab7f0 100644 --- a/src/Pages/Product/ExcelUpload.jsx +++ b/src/Pages/Product/ExcelUpload.jsx @@ -1,6 +1,5 @@ import React, { useState, useRef, useEffect, useContext } from 'react'; import { useDispatch, useSelector } from 'react-redux'; -// import { read, utils } from 'xlsx'; import ExcelJS from 'exceljs'; import { Table, Form, Input, Tooltip, Modal, Select } from 'antd'; import { @@ -18,7 +17,6 @@ import { getFieldSetupData, } from '../../Features/ProductPage/ProductPage.js'; import Imageupload from '../../Components/Forms/Upload.jsx'; -import { BiSolidFileExport } from 'react-icons/bi'; import { CiExport } from 'react-icons/ci'; import { uploadImage } from '../../Features/upload/upload.js'; @@ -617,15 +615,20 @@ const ProductExcel = ({ }; console.log(tableFieldPreferences, 'tableFieldPreferences'); + useEffect(() => { if (excelData && excelData?.length > 0) { let ExecelToJsConvertion = []; let slicedData = excelData?.slice(1); - let filteredData = slicedData?.filter( - (item) => item?.[item?.length - 1]?.trim() !== 'sample row' - ); + let filteredData = slicedData?.filter((item) => { + const values = Object.values(item || {}); + const lastVal = values[values.length - 1]; + return typeof lastVal === 'string' + ? lastVal.trim() !== 'sample row' + : true; + }); filteredData?.map((item, index) => { - ExecelToJsConvertion.push({ + ExecelToJsConvertion?.push({ key: index, ProductName: item?.['0'], Quantity: item?.['1'], @@ -1005,112 +1008,6 @@ const ProductExcel = ({ reader.readAsArrayBuffer(file); }; - // const uploadAndProcessExcel = (file) => { - // const reader = new FileReader(); - - // reader.onload = (e) => { - // const data = new Uint8Array(e.target.result); - - // const workbook = read(data, { type: 'array' }); - // const worksheet = workbook.Sheets[workbook.SheetNames[0]]; - - // const jsonData = utils.sheet_to_json(worksheet, { - // header: 1, - // raw: false, - // dateNF: 'DD/MM/YY', - // }); - - // const nonEmptyRows = jsonData.filter((row) => - // row.some((cell) => cell !== '') - // ); - - // const header = nonEmptyRows[0]; - // const rows = nonEmptyRows.slice(1); - - // const dateFields = [ - // 'Available From', - // 'Available To', - // 'Manufacture Date', - // 'Expire Date', - // 'Stock Date', - // ]; - - // function convertToDisplayFormat(dateString) { - // const date = new Date(dateString); - // const day = date.getDate().toString().padStart(2, '0'); - // const month = (date.getMonth() + 1).toString().padStart(2, '0'); - // const year = date.getFullYear().toString(); - // return `${day}-${month}-${year}`; - // } - - // const formattedData = rows.map((row) => { - // let rowData = header.reduce((acc, col, columnIndex) => { - // if (dateFields?.includes(col)) { - // acc[col] = convertToDisplayFormat(row[columnIndex]); - // } else { - // acc[col] = row[columnIndex]; - // } - // return acc; - // }, {}); - - // return rowData; - // }); - - // if (jsonData.length > 0) { - // const extractedHeaders = Object.keys(formattedData[0]); - - // const filteredData = formattedData.filter( - // (item) => !Object.values(item)?.includes('sample row') - // ); - - // // ✅ Add default variant name if missing - // const updatedData = filteredData.map((item) => ({ - // ...item, - // 'Product Varient Name': - // item['Product Varient Name'] === undefined - // ? 'Variant 1' - // : item['Product Varient Name'], - // 'Available To': - // item['Available To'] == 'NaN-NaN-NaN' ? '' : item['Available To'], - // ProdId: item['ProdId'] || null, - // })); - - // // Detect modified products - - // const modifiedProducts = findModifiedProducts(OrginalData, updatedData); - // const modifiedIds = new Set(modifiedProducts.map((p) => p.ProdId)); - // const originalIds = new Set(OrginalData?.map((p) => p.ProdId) || []); - // const markedData = updatedData - // .map((item) => ({ - // ...item, - // isModified: - // modifiedIds.has(item.ProdId) || !originalIds.has(item.ProdId), - // })) - // .sort((a, b) => b.isModified - a.isModified); - // setUploadedRawData(markedData); - // console.log(modifiedProducts, 'modifiedProducts'); - - // // ✅ Set only once with final data - // setHeaders(extractedHeaders); - - // autoMapFields(extractedHeaders); - // dispatch(uploadExcel({ file, jsonData: nonEmptyRows })); - // setWorksheet(worksheet); - // setDatas([]); // Clear mapped state initially - // setExcelData([]); - // } - - // // setMappingOpen(true); - // dispatch(uploadExcel({ file, jsonData: nonEmptyRows })); - // setWorksheet(worksheet); - // setWorksheet1(worksheet1); - // setDatas(formattedData); // Update Datas state here - // // setExcelData(formattedData); - // }; - - // reader.readAsArrayBuffer(file); - // }; - useEffect(() => { imagecall(); addOnlineImage(); @@ -1875,24 +1772,6 @@ const ProductExcel = ({ } }); - // // Now set protection for all rows - // // First, unlock ALL cells in the worksheet - // for (let rowNum = 1; rowNum <= worksheet.rowCount; rowNum++) { - // const row = worksheet.getRow(rowNum); - // row.eachCell({ includeEmpty: true }, (cell, colNumber) => { - // const config = selectedColumns[colNumber - 1]; - // cell.protection = { locked: config?.locked || false }; - // }); - // } - - // // Then lock ONLY the header row (row 1) and sample row (row 2) - // worksheet.getRow(1).eachCell({ includeEmpty: true }, (cell) => { - // cell.protection = { locked: true }; - // }); - - // worksheet.getRow(2).eachCell({ includeEmpty: true }, (cell) => { - // cell.protection = { locked: true }; - // }); // Add empty rows for data entry for (let i = 1; i <= 1000; i++) { worksheet.addRow({}); @@ -2497,18 +2376,6 @@ const ProductExcel = ({ } }; - // Usage examples: - // Download only specific fields: - // handleDownload(['ProdName', 'Size']); // Only Product Name and Quantity - // handleDownload(['ProdName', 'Size', 'UOM', 'SellPrice']); // Multiple fields - // handleDownload(['ProdName', 'Size', 'UOM', 'SellPrice', 'ProdCat', 'Brand']); // More fields - - // Available field names: - // 'ProdName', 'Size', 'UOM', 'SellPrice', 'ProdCat', 'ProdSubCat', 'Brand', - // 'ProdVarientName', 'MRP', 'StockAvailable', 'OfferPrice', 'Supplier', 'TaxId', - // 'AutoGenerateQr', 'AddQrCode', 'SpecialPrice', 'OnePiecePrice', 'AutoGenOnePieceQr', - // 'AutoGenOnePieceQrNum', 'CESS', 'HSNCode', 'PartNumber', 'Rack', 'ManufDate', - // 'ExpDate', 'AvailableFrom', 'AvailableTo' const handleFileSubmit = (e) => { e.preventDefault(); if (excelFile === null) { @@ -2883,7 +2750,7 @@ const ProductExcel = ({
@@ -3162,13 +3029,24 @@ const ProductExcel = ({ display: 'flex', flexDirection: 'column', justifyContent: 'space-between', - height: '80%', + alignItems: 'center', + height: '60%', }} >
- {col.title} + + {col.title} + {!isMapped && ( - Not mapped + + Not mapped + )}
@@ -3217,7 +3095,7 @@ const ProductExcel = ({ style={{ position: 'absolute', right: '-17px', - top: '80%', + top: '90%', transform: 'translateY(-50%)', color: 'red', fontSize: 14, @@ -3347,111 +3225,102 @@ const ProductExcel = ({ autoComplete="off" onSubmit={handleFileSubmit} > -
-

- Upload Your Excel -

+
+
+

+ Upload Your Excel +

+
+ +
+ +
+
+
handleExportData()} + > +
+ +
+
+ Export Excel +
+
+ + {message && ( +
No Data Found
+ )} +
+ + {excelData?.length > 0 && excelData && ( +
+ + + +
+ )} +
0 ? 'space-between' : 'flex-end', + gap: '1rem', }} > - -
- + {excelData?.length > 0 && ( +
+
+

+ Modified +
+
+

+ Not Modified +
+ )} + + + -
handleExportData()} - > -
- -
-
- Export Excel -
-
- {/* {excelData?.length > 0 && excelData && -
setMappingOpen(true)}> -
- -
-
- Map Your Fields -
-
- } */} - {loading &&
Loading...
} - {message &&
No Data Found
}
- - {excelData?.length > 0 && excelData && ( -
- - - -
- )} -
-
0 ? 'space-between' : 'flex-end', - width: '100%', - }} - > - {excelData?.length > 0 && ( -
-
-

- Modified -
-
-

- Not Modified -
-
- )} - - - -
{(!excelData || excelData?.length === 0) && ( @@ -3542,13 +3411,6 @@ const ProductExcel = ({ margin: '1rem 0rem', }} > - {/* -
- - Download -
-
*/} - {excelData && excelData?.length > 0 && (
-
+ setMappingOpen(false)} > {requiredFields.map((field) => { diff --git a/src/Pages/Product/ProductList.jsx b/src/Pages/Product/ProductList.jsx index 98d0b0e..a2edd1c 100644 --- a/src/Pages/Product/ProductList.jsx +++ b/src/Pages/Product/ProductList.jsx @@ -2714,7 +2714,7 @@ const ProductList = () => { open={openExcel} title="Bulk Upload" footer={true} - width={excelDataValues?.length > 0 ? 2500 : 600} + width={excelDataValues?.length > 0 ? 2500 : 700} className={'bulkuploadmodal'} children={ <> diff --git a/src/Styles/BookingScreen/Components/BSItemCards/BSItemCard.scss b/src/Styles/BookingScreen/Components/BSItemCards/BSItemCard.scss index 3cc2a73..5f386db 100644 --- a/src/Styles/BookingScreen/Components/BSItemCards/BSItemCard.scss +++ b/src/Styles/BookingScreen/Components/BSItemCards/BSItemCard.scss @@ -78,7 +78,7 @@ } .BSItemCard-content { - padding: 1px 0; + padding: 3px 0; background-color: rgba(255, 255, 255, 0.8); position: absolute; display: flex; @@ -96,7 +96,8 @@ font-weight: 500; max-width: 130px; display: -webkit-box; - -webkit-line-clamp: 3; + -webkit-line-clamp: 2; + line-height: 1; -webkit-box-orient: vertical; overflow: hidden; } diff --git a/src/Styles/OverAllStyle/OverAllStyle.scss b/src/Styles/OverAllStyle/OverAllStyle.scss index 841b020..bfd5707 100644 --- a/src/Styles/OverAllStyle/OverAllStyle.scss +++ b/src/Styles/OverAllStyle/OverAllStyle.scss @@ -1721,3 +1721,17 @@ table { right: 2rem; } } + +.addVariant { + background: #23378a29; + color: #23378a; + padding: 12px 24px; + border: none; + font-family: "Poppins", sans-serif; + font-size: 14px; + font-weight: 500; + cursor: pointer; + border-radius: 6px; + outline: none; + height: max-content; +} diff --git a/src/Styles/Product/excel.scss b/src/Styles/Product/excel.scss index 00a9214..a964f20 100644 --- a/src/Styles/Product/excel.scss +++ b/src/Styles/Product/excel.scss @@ -8,12 +8,7 @@ font-weight: bold !important; } -// .viewerExcelupload table { -// // table-layout: auto !important; -// } - .viewerExcelupload::-webkit-scrollbar { - // display: block !important; width: 0rem; height: 0.5rem; } @@ -28,7 +23,7 @@ background-color: #1292ee; color: #fff; border-radius: 4px; - font-family: 'Poppins'; + font-family: "Poppins"; font-size: 16px; svg { @@ -48,6 +43,8 @@ .tableExcelUpload { .ant-table-cell { padding: 0 8px !important; + font-family: "Poppins"; + font-weight: 500 !important; } .ant-select-selection-placeholder { @@ -129,16 +126,16 @@ } .mdsheet { - width: 25px; - height: 25px; + width: 20px; + height: 20px; border: 1px solid #5bff73; background-color: #b3ffbf; border-radius: 4px; } .mdsheet2 { - width: 25px; + width: 20px; + height: 20px; border-radius: 4px; - height: 25px; background-color: #ffc7f8; border: 1px solid #ff74ec; } @@ -148,5 +145,88 @@ font-family: "Poppins"; font-size: 14px; font-weight: 500; + @media (max-width: 500px) { + font-size: 10px; + } } -} \ No newline at end of file +} + +.field-setup-selected-fields { + display: flex; + flex-wrap: wrap; + gap: 4px; + margin-bottom: 50px; + height: max-content; + max-height: 50vh; + overflow: auto; + + .selected-field { + display: flex; + align-items: center; + gap: 4px; + background: #0bad77; + padding: 6px 10px; + border-radius: 6px; + font-size: 13px; + font-weight: 600; + color: #fff; + + .close-icon { + display: flex; + align-items: center; + cursor: pointer; + + > svg { + color: #ffffffff !important; + } + } + } +} + +.HeadingUploadExl { + display: flex; + align-items: center; + justify-content: space-between; + gap: 1rem; + width: 50%; + @media (max-width: 950px) { + width: 100%; + } +} +.download-linkMain { + display: flex; + align-items: center; + gap: 1rem; + justify-content: space-between; + margin-bottom: 10px; + @media (max-width: 950px) { + flex-wrap: wrap; + } +} + +.download-link { + width: 50%; + justify-content: space-between; + align-items: center; + @media (max-width: 950px) { + width: 100%; + } +} + +.viewerExcelupload { + .ant-select-selection-item { + margin-top: 0 !important ; + padding-top: 0 !important; + } +} + +.download-link span { + font-size: 12px; + font-weight: 400; +} +.imgUpldr { + display: flex; + flex-direction: column; + align-items: center; + gap: 2px; +}