diff --git a/src/Pages/CancelReschedule/SalesBillProductReturnList.jsx b/src/Pages/CancelReschedule/SalesBillProductReturnList.jsx index 0e84251..3d34668 100644 --- a/src/Pages/CancelReschedule/SalesBillProductReturnList.jsx +++ b/src/Pages/CancelReschedule/SalesBillProductReturnList.jsx @@ -6,7 +6,7 @@ import { PlusOutlined } from '@ant-design/icons'; import { Messages } from '../../Components/Notifications/Messages'; import { Tables } from '../../Components/Tables/Table'; import { Search } from '../../Components/Forms/Search'; -import { changeBreadCrumb } from '../../Features/AppPage/CenterPage.js'; +import { changeBreadCrumb, getEmpAccess } from '../../Features/AppPage/CenterPage.js'; import { BsEye } from "react-icons/bs"; import Buttons from '../../Components/Forms/Buttons'; import { getSession } from '../../Services/Others'; @@ -14,6 +14,7 @@ import FormHeader from '../PageComponents/FormHeader.jsx'; import { getSalesReturn } from '../../Features/CancelReschedule/CancelApplicableProd.js'; import '../../Styles/OverAllStyle/OverAllStyle.scss'; import { DefaultModal } from '../../Components/Modal/DefaultModal.jsx'; +import { useAuth } from '../../AuthContext.jsx'; const subDirectory = import.meta.env.ENV_BASE_URL; const items = [ @@ -33,16 +34,24 @@ const items = [ ]; const SalesBillProductReturnList = () => { + const { SadminuserAccess } = useAuth(); + const SAAccessCommonMaster = SadminuserAccess?.find( + (e) => e?.MenuName === 'Sales Product Return' + ); const [page, setpage] = useState(1); const CompId = getSession('CompId'); const BranchId = getSession('BranchId'); const AppId = getSession('AppId'); + const UserId = getSession('UserId'); + const UserType = getSession('UserType'); const navigateTo = useNavigate(); const dispatch = useDispatch(); const [tabledata, setTabledata] = useState(); const [message, setMessage] = useState({ type: null, data: null }); const [searchedText, setSearchedText] = useState(''); const [sortedInfo, setSortedInfo] = useState({}); + const [empData, setEmpData] = useState(); + const [addnewAccess, setaddnewAccess] = useState(true); const [productDetailsModel, setProductDetailsModel] = useState({ model: false, data: [] @@ -98,6 +107,38 @@ const SalesBillProductReturnList = () => { setMessage({ type: null, data: null }) }, []); + + 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]); + + useEffect(() => { + if (UserType === "Employee") { + fetchApi() + } + }, [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 === 'Sales Product Return' + ); + setEmpData(datas?.[0]); + }; const columns = [ { title: 'Sl.No', @@ -170,6 +211,7 @@ const SalesBillProductReturnList = () => { buttonText={'Add New'} handleSubmit={() => handelAddButton()} color="901D77" + disabled={addnewAccess} icon={} > OPEN