import React, { useState, useEffect } from "react"; import { Link } from "react-router-dom"; import axios from "axios"; import { isAutheticated } from "src/auth"; import Button from "@material-ui/core/Button"; function NewOrders() { const token = isAutheticated(); const [loading, setLoading] = useState(true); const [success, setSuccess] = useState(true); const [newOrdersData, setNewOrdersData] = useState([]); const [currentPage, setCurrentPage] = useState(1); const [itemPerPage, setItemPerPage] = useState(10); const [showData, setShowData] = useState(newOrdersData); const handleShowEntries = (e) => { setCurrentPage(1); setItemPerPage(e.target.value); }; useEffect(() => { function getNewOrder() { axios .get(`/api/order/getAll/:new`, { headers: { "Access-Control-Allow-Origin": "*", Authorization: `Bearer ${token}`, }, }) .then((res) => { setNewOrdersData(res.data.order); console.log(res.data); setLoading(false); }) .catch((err) => { console.log(err); setLoading(false); }); } getNewOrder(); }, [success]); useEffect(() => { const loadData = () => { const indexOfLastPost = currentPage * itemPerPage; const indexOfFirstPost = indexOfLastPost - itemPerPage; setShowData(newOrdersData.slice(indexOfFirstPost, indexOfLastPost)); }; loadData(); }, [currentPage, itemPerPage, newOrdersData]); const handleDelete = (id) => { console.log(id); swal({ title: "Are you sure?", icon: "error", buttons: { Yes: { text: "Yes", value: true }, Cancel: { text: "Cancel", value: "cancel" }, }, }).then((value) => { if (value === true) { axios .delete(`/api/order/delete/${id}`, { headers: { "Access-Control-Allow-Origin": "*", Authorization: `Bearer ${token}`, }, }) .then((res) => { setSuccess((prev) => !prev); }) .catch((err) => { swal({ title: "Warning", text: err.response.data.message ? err.response.data.message : "Something went wrong!", icon: "error", button: "Retry", dangerMode: true, }); }); } }); }; return (
New Orders
{/*
*/}
{!loading && showData.length === 0 && ( )} {loading ? ( ) : ( showData.map((order, i) => { return ( ); }) )}
Order ID Customer Order value Order At Status Actions
No Data Available
Loading...
{order?.orderID} {order?.user?.name} ${order?.total_amount} {new Date(order?.paidAt).toLocaleString( "en-IN", { month: "short", day: "numeric", year: "numeric", hour: "2-digit", minute: "numeric", hour12: true, } )} {order?.orderStatus} {/* */}
Showing {currentPage * itemPerPage - itemPerPage + 1} to{" "} {Math.min( currentPage * itemPerPage, newOrdersData.length )}{" "} of {newOrdersData.length} entries
  • setCurrentPage((prev) => prev - 1)} > Previous
  • {!(currentPage - 1 < 1) && (
  • setCurrentPage((prev) => prev - 1) } > {currentPage - 1}
  • )}
  • {currentPage}
  • {!( (currentPage + 1) * itemPerPage - itemPerPage > newOrdersData.length - 1 ) && (
  • { setCurrentPage((prev) => prev + 1); }} > {currentPage + 1}
  • )}
  • newOrdersData.length - 1 ) ? "paginate_button page-item next" : "paginate_button page-item next disabled" } > setCurrentPage((prev) => prev + 1)} > Next
); } export default NewOrders;