import Breadcrumb from "../components/Breadcrumbs"; import {connect} from "react-redux"; import {actionCardChange, actionCardClear, actionCardRemove} from "../reducers/CartReducer"; import {ActionFullOrder} from "../actions/ActionOrder"; import {Box, Button, Container, Divider, Grid, Typography, useMediaQuery} from "@mui/material"; import {ItemHeaderLine, LinkProductItem, RemoveFromList, TableLine} from "../components/TableLine"; import {NotFoundBlock} from "../components/NotFoundBlock"; import imgUrl from "../img/not-found/3.png"; import AddShoppingCartIcon from "@mui/icons-material/AddShoppingCart"; import {SetCount} from "../components/SetCount"; import {useEffect, useState} from "react"; import {actionClearPromise} from "../reducers/PromiseReducer"; import CheckCircleOutlineIcon from '@mui/icons-material/CheckCircleOutline'; const CartGoodLine = ({item, onCartRemove, onCardChange}) => { let [count, setCount] = useState(item?.count) useEffect(() => { onCardChange(item?.good, count) }, [count]) return( ${item?.good?.price}}/> setCount(value)}/> ) } const TotalPriceLine = ({title, subtitle, sizeSubtitle='body2'}) => { return ( {title} {subtitle} ) } const BlockTotal = ({auth ,cart, rows, onOrderUpsert, onCartClear}) => { return ( <> TOTAL a + (i.good.price * i.count), 0)}`}/> a + (i.good.price * i.count), 0)}`} sizeSubtitle={'h6'}/> ) } const CBlockTotal = connect(state=>({auth: state.auth}))(BlockTotal) const CartPage = ({order, cart, onCardChange, onCartClear, onCartRemove, onOrderUpsert, actionClearOrder}) => { const matches = useMediaQuery('(max-width:768px)') let rows = [] for (const key of Object.values(cart)) { rows.push(key) } useEffect(() => { if (order && Object.entries(order).length > 0) { actionClearOrder('order') } },[cart]) return ( <> {Object.values(cart).length > 0 || order ?
{order && Object.entries(order).length > 0 ? {order.error ? Error, try again : <> Order successfully completed Thanks for your order! Attention! Shipping is paid separately upon receipt of the goods. Your order number: {order.payload?._id || 1} For the amount: ${+order.payload?.total || 0} } : {rows.map(item => )} }
: Click theicons to add products}/> } ) } const CCartPage = connect(state=>({cart: state.cart, order: state.promise?.order}), {onCardChange: actionCardChange, onCartClear: actionCardClear, onCartRemove: actionCardRemove, onOrderUpsert: ActionFullOrder, actionClearOrder: actionClearPromise})(CartPage) export default CCartPage