import { useDispatch } from "react-redux"; import { useEffect, useState } from "react"; import axios from "axios"; import dayjs from "dayjs"; import { FaBuilding, FaUser, FaPrint } from "react-icons/fa"; import { jsPDF } from "jspdf"; import html2canvas from "html2canvas"; import { PublicQrCodeget } from "../../../Features/ConfigMasterPage/ConfigMasterPage"; import { decryptToObject, getSession } from "../../../Services/Others"; import { getBranchDetail } from "../../../Features/BrachLogin/BranchLogin"; import "./PurchaseLink.scss"; const PurchaseLink = () => { const dispatch = useDispatch(); const apiUrlToken = import.meta.env.ENV_API_URL_TOKEN; const [order, setOrder] = useState(null); const [branch, setBranch] = useState(null); const [loading, setLoading] = useState(true); const url = new URL(window.location.href); const codesParam = url.searchParams.get("code"); useEffect(() => { if (codesParam) initializeData(); else setLoading(false); }, [codesParam]); const initializeData = async () => { try { if (!getSession("auth")) { const { data } = await axios.post(`${apiUrlToken}/jwtTokenGenerator`, { username: "1000000001", password: "1234", }); sessionStore("auth", data.token); sessionStore("LoginType", "Public"); } const qrData = await dispatch(PublicQrCodeget(codesParam)).unwrap(); const oldUrl = qrData?.data?.data?.[0]?.OldUrl; const decrypted = decryptToObject(oldUrl); if (!decrypted) return; setOrder(decrypted); if (decrypted?.BranchId) { const res = await dispatch(getBranchDetail({ BrId: decrypted.BranchId })).unwrap(); setBranch(res?.data?.data?.[0]); } } catch (err) { console.error(err); } finally { setLoading(false); } }; if (loading) return
{branch?.Address1}
{branch?.City}, {branch?.Dist}
{branch?.State} - {branch?.Zip}
{branch?.BrGSTIN &&GSTIN: {branch.BrGSTIN}
} {branch?.BrMobile &&Phone: {branch.BrMobile}
} {branch?.BrEmail &&Email: {branch.BrEmail}
}{addr.Address1}
{addr.Address2 &&{addr.Address2}
}{addr.City}, {addr.Dist}
{addr.State} - {addr.Zip}
Phone: {order.SuppMobile}
} {order.SuppEmail &&Email: {order.SuppEmail}
} {order.SuppGSTIN &&GSTIN: {order.SuppGSTIN}
}| S.No | Product | Variant | UOM | Qty |
|---|---|---|---|---|
| {idx + 1} | {item.ProdName} | {item.ProdVariantName || "-"} | {item.UOM} | {item.OrderQty} |