import React, { useState, useEffect } from "react"; import axios from "axios"; import { Box, Typography, Grid, Paper } from "@mui/material"; import { useParams, useNavigate } from "react-router-dom"; import { isAutheticated } from "../../auth"; import Button from "@material-ui/core/Button"; import swal from "sweetalert"; import PDmodal from "./ModalPD.js"; import SCmodal from "./ModalSC.js"; import TMmodal from "./ModalTM.js"; const MapRD = () => { const { id } = useParams(); const token = isAutheticated(); const navigate = useNavigate(); const [success, setSuccess] = useState(true); const [data, setData] = useState(null); const [openPDModal, setOpenPDModal] = useState(false); const [openSCModal, setOpenSCModal] = useState(false); const [openTMModal, setOpenTMModal] = useState(false); useEffect(() => { const fetchData = async () => { try { const response = await axios.get(`/api/getRD/${id}`, { headers: { "Access-Control-Allow-Origin": "*", Authorization: `Bearer ${token}`, "Content-Type": "multipart/form-data", }, }); setData(response?.data); } catch (error) { console.error("Error fetching data: ", error); } }; fetchData(); }, [id, token, success]); const handleDelete = (designation) => { swal({ title: "Are you sure?", icon: "warning", buttons: { Yes: { text: "Yes", value: true }, Cancel: { text: "Cancel", value: "cancel" }, }, }).then((value) => { if (value === true) { let data = {}; if (designation === "TM") { data.mappedTM = true; } else if (designation === "SC") { data.mappedSC = true; } else { data.principal_distributor = true; } axios .patch(`/api/unmap/${id}`, data, { headers: { "Access-Control-Allow-Origin": "*", Authorization: `Bearer ${token}`, }, }) .then((res) => { swal({ title: "Deleted", text: "Retailer Unmapped successfully!", icon: "success", button: "Ok", }); setSuccess((prev) => !prev); }) .catch((err) => { let msg = err?.response?.data?.message || "Something went wrong!"; swal({ title: "Warning", text: msg, icon: "error", button: "Retry", dangerMode: true, }); }); } }); }; const handleOpenPDModal = () => setOpenPDModal(true); const handleClosePDModal = () => setOpenPDModal(false); const handleOpenSCModal = () => setOpenSCModal(true); const handleCloseSCModal = () => setOpenSCModal(false); const handleOpenTMModal = () => setOpenTMModal(true); const handleCloseTMModal = () => setOpenTMModal(false); const refreshData = () => { setSuccess((prev) => !prev); }; return ( Retailer Details Retailer Details Trade Name: {data?.kyc.trade_name} Name: {data?.name} Address: {data?.kyc.address} Town/City: {data?.kyc.city} District: {data?.kyc.district} State: {data?.kyc.state} Pincode: {data?.kyc.pincode} Mobile Number: {data?.mobile_number} Mapped Territory Manager:{" "} {data?.mappedTM?.name || "Not Mapped"} Mapped Principal Distributor:{" "} {data?.principal_distributer?.name || "Not Mapped"} Mapped Sales Coordinator:{" "} {data?.mappedSC?.name || "Not Mapped"} {/* Territory Managers */} Territory Manager Details Name: {data?.mappedTM?.name || "Not Mapped"} Mobile Number:{" "} {data?.mappedTM?.mobileNumber || "Not Mapped"} Email: {data?.mappedTM?.email || "Not Mapped"} {/* Sales Coordinators */} Sales Coordinator Details Name: {data?.mappedSC?.name || "Not Mapped"} Mobile Number:{" "} {data?.mappedSC?.mobileNumber || "Not Mapped"} Email: {data?.mappedSC?.email || "Not Mapped"} {/* Principal Distributor */} Principal Distributor Details Name:{" "} {data?.principal_distributer?.name || "Not Mapped"} Mobile Number:{" "} {data?.principal_distributer?.phone || "Not Mapped"} Email:{" "} {data?.principal_distributer?.email || "Not Mapped"} ); }; export default MapRD;