diff --git a/src/components/MyCoupons/CouponPopup.jsx b/src/components/MyCoupons/CouponPopup.jsx index e247a68..f76c407 100644 --- a/src/components/MyCoupons/CouponPopup.jsx +++ b/src/components/MyCoupons/CouponPopup.jsx @@ -1,6 +1,41 @@ - +import { useMemo, useState } from "react"; +import { toast } from "react-toastify"; +import usersService from "../../services/UsersService"; const CouponPopup = ({ popUpHandler, data }) => { + const [loader, setLoader] = useState(false); + const apiCall = useMemo(() => new usersService(), []); + + const redeemCouponHandler = async () => { + setLoader(true); + + try { + const { code, coupon_id } = data; + const reqData = { code_id: Number(coupon_id), code }; + + const res = await apiCall.getCouponRedeem(reqData); + if(res.statusText === "OK") { + toast.success("Great news! Your coupon has been redeemed.", { + autoClose: 3000, + hideProgressBar: true, + }); + } + + popUpHandler(); + setLoader(false); + throw new Response(res); + } catch (error) { + error && + toast.warn("An error occurred while processing your coupon.", { + autoClose: 3000, + hideProgressBar: true, + }); + setLoader(false); + console.log(error) + // throw new Error(error); + } + }; + return (
@@ -45,14 +80,17 @@ const CouponPopup = ({ popUpHandler, data }) => {
diff --git a/src/services/UsersService.js b/src/services/UsersService.js index c7a5d74..948a2ae 100644 --- a/src/services/UsersService.js +++ b/src/services/UsersService.js @@ -455,13 +455,13 @@ class usersService { return this.postAuxEnd("/stepresetpass", reqData); } - getCouponRedeem() { + getCouponRedeem(reqData) { var postData = { uuid: localStorage.getItem("uid"), member_id: localStorage.getItem("member_id"), sessionid: localStorage.getItem("session_token"), - page: 0, - limit: 100, + action: 85020, + ...reqData }; return this.postAuxEnd("/couponredeem", postData); }