// import React from 'react';
// import Createstaff from 'pages/createstaff'
import { enqueueSnackbar } from 'notistack';
import { DeleteFilled, NotificationOutlined } from '@ant-design/icons';
import { useState, useEffect, Fragment } from 'react';
import { Empty } from 'antd';
import { DatePicker } from '@mui/x-date-pickers/DatePicker';
import { LocalizationProvider } from '@mui/x-date-pickers/LocalizationProvider';
import dayjs from 'dayjs';
var utc = require('dayjs/plugin/utc');
dayjs.extend(utc);
import axios from 'axios';
import { AdapterDayjs } from '@mui/x-date-pickers/AdapterDayjs';
// import { DataGrid } from '@mui/x-data-grid'
// material-ui
import HoverSocialCard from 'components/cards/statistics/HoverSocialCard';
// import {FacebookOutlined} from '@ant-design/icons';
import { useTheme } from '@mui/material/styles';
// import { edittabstatus1 } from 'store/reducers/dashboard1';
import {
Avatar,
// AvatarGroup,
// Button as Button1,
Box,
// DateRangePicker,
Button,
Grid,
Tabs,
Tab,
IconButton,
Stack,
// TextField,
Chip,
// TableSortLabel,
Typography,
// Divider,
Table,
TableCell,
TableBody,
TableHead,
// TableSortLabel,
Collapse,
Dialog,
TableRow,
DialogContent,
DialogTitle,
Tooltip,
FormControl,
OutlinedInput,
InputAdornment,
Skeleton,
CircularProgress,
DialogActions
// Popper,
// ClickAwayListener
// Checkbox
} from '@mui/material';
import MainCard from 'components/MainCard';
// import { useSelector } from 'store';
// import { useDispatch } from 'react-redux';
import {
SearchOutlined,
EnvironmentOutlined,
UserOutlined,
// MoreOutlined ,
CloseOutlined
} from '@ant-design/icons';
import { PopupTransition } from 'components/@extended/Transitions';
// import FilterList from '@mui/icons-material/FilterList';
import KeyboardArrowDownIcon from '@mui/icons-material/KeyboardArrowDown';
import KeyboardArrowUpIcon from '@mui/icons-material/KeyboardArrowUp';
import {
addDays,
addMonths,
addWeeks,
// addYears,
endOfMonth,
endOfWeek,
// endOfYear,
startOfMonth,
startOfWeek
// startOfYear,
} from 'date-fns';
// import { DateRangePicker } from '@mui/x-date-pickers-pro/DateRangePicker';
// import { DesktopDateRangePicker } from '@mui/x-date-pickers-pro/DesktopDateRangePicker';
// import { AdapterDateFns } from '@mui/x-date-pickers/AdapterDateFns';
// import { DateRangePicker } from "mui-daterange-picker-orient";
import { DateRangePicker } from 'mui-daterange-picker';
// import EnhancedTable from 'components/tablemuiedit'
import {
// CloseOutlined,
// PlusOutlined,
EyeTwoTone
// EditTwoTone,
// DeleteTwoTone
} from '@ant-design/icons';
import { useNavigate } from 'react-router';
import * as React from 'react';
import PropTypes from 'prop-types';
// import { alpha } from '@mui/material/styles';
// import Box from '@mui/material/Box';
// import Table from '@mui/material/Table';
// import TableBody from '@mui/material/TableBody';
// import TableCell from '@mui/material/TableCell';
import TableContainer from '@mui/material/TableContainer';
// import TableHead from '@mui/material/TableHead';
import TablePagination from '@mui/material/TablePagination';
// import TableRow from '@mui/material/TableRow';
// import TablePagination from '@mui/material/TablePagination';
import TableSortLabel from '@mui/material/TableSortLabel';
// import Toolbar from '@mui/material/Toolbar';
// import Typography from '@mui/material/Typography';
// import Paper from '@mui/material/Paper';
// import Checkbox from '@mui/material/Checkbox';
// import IconButton from '@mui/material/IconButton';
// import Tooltip from '@mui/material/Tooltip';
// import FormControlLabel from '@mui/material/FormControlLabel';
// // import Switch from '@mui/material/Switch';
// import DeleteIcon from '@mui/icons-material/Delete';
// import FilterListIcon from '@mui/icons-material/FilterList';
import { visuallyHidden } from '@mui/utils';
import Loader from 'components/Loader';
import { FilterList } from '@mui/icons-material';
// import MainCard from 'components/MainCard';
// import DialogTitle from 'themes/overrides/DialogTitle';
// import MainCard from 'components/MainCard';
const Orders = () => {
function descendingComparator(a, b, orderBy) {
if (b[orderBy] < a[orderBy]) {
return -1;
}
if (b[orderBy] > a[orderBy]) {
return 1;
}
return 0;
}
function getComparator(order, orderBy) {
return order === 'desc' ? (a, b) => descendingComparator(a, b, orderBy) : (a, b) => -descendingComparator(a, b, orderBy);
}
// Since 2020 all major browsers ensure sort stability with Array.prototype.sort().
// stableSort() brings sort stability to non-modern browsers (notably IE11). If you
// only support modern browsers you can replace stableSort(exampleArray, exampleComparator)
// with exampleArray.slice().sort(exampleComparator)
function stableSort(array, comparator) {
const stabilizedThis = array.map((el, index) => [el, index]);
stabilizedThis.sort((a, b) => {
const order = comparator(a[0], b[0]);
if (order !== 0) {
return order;
}
return a[1] - b[1];
});
return stabilizedThis.map((el) => el[0]);
}
const headCells = [
{
id: 'sno',
disablePadding: true,
label: 'S NO'
},
// {
// id: 'tenantname',
// numeric: false,
// disablePadding: false,
// label: 'CUSTOMER',
// },
{
id: 'orderid',
numeric: false,
disablePadding: false,
label: 'ORDER ID'
},
{
id: 'eventname',
disablePadding: false,
label: 'Pickup'
},
{
id: 'eventname4',
disablePadding: false,
label: 'Delivery'
},
// {
// id: 'ordervalue',
// disablePadding: false,
// label: 'VALUE $',
// },
{
id: 'itemcount',
disablePadding: false,
label: 'NOTES'
},
{
id: 'orderstatus',
disablePadding: false,
label: 'STATUS'
},
{
id: 'action',
disablePadding: false,
label: 'ACTION'
}
];
function EnhancedTableHead(props) {
const { order, orderBy, onRequestSort } = props;
const createSortHandler = (property) => (event) => {
onRequestSort(event, property);
};
return (
{headCells.map((headCell) => (
{headCell.label}
{orderBy === headCell.id ? (
{order === 'desc' ? 'sorted descending' : 'sorted ascending'}
) : null}
))}
);
}
EnhancedTableHead.propTypes = {
numSelected: PropTypes.number.isRequired,
onRequestSort: PropTypes.func.isRequired,
onSelectAllClick: PropTypes.func.isRequired,
order: PropTypes.oneOf(['asc', 'desc']).isRequired,
orderBy: PropTypes.string.isRequired,
rowCount: PropTypes.number.isRequired
};
function EnhancedTable() {
const [order, setOrder] = React.useState('asc');
const [orderBy, setOrderBy] = React.useState('calories');
const [selected, setSelected] = React.useState([]);
const [page, setPage] = React.useState(0);
const [rowsPerPage, setRowsPerPage] = React.useState(10);
const [expandopen, setExpandopen] = React.useState('');
const [dialogopen, setDialogopen] = useState(false);
const [stafflist, setStafflist] = useState([]);
const [loading1, setLoading1] = useState(false);
const [open, setOpen] = useState(false);
const [orderheaderid, setOrderheaderid] = useState('');
const cancelorder = async () => {
await axios
.put(`${process.env.REACT_APP_URL}/orders/updateorder`, {
orderheaderid: orderheaderid,
orderstatus: 'cancelled',
cancelled: dayjs().format('YYYY-MM-DD HH:mm:ss')
})
.then((res) => {
console.log(res);
if (res.data.status) {
// if (orderheaderid && tenantid) {
// fetchorderdetails();
// fetchorderaddons();
// fetchorderattires();
// }
enqueueSnackbar('Order Cancelled Successfully', {
variant: 'success',
anchorOrigin: { vertical: 'top', horizontal: 'right' },
autoHideDuration: 2000
});
handleClose(true);
if (localStorage.getItem('tenantid')) {
setTenantid(localStorage.getItem('tenantid'));
let val = localStorage.getItem('tenantid');
fetchtable(val);
fetchpercentage(val);
fetchtableuncovered(val);
fetchtablecovered(val);
fetchtablecancelled(val);
// fetchtableassigned(val);
// fetchtablepicked(val);
fetchtablecreated(val);
}
}
})
.catch((err) => {
console.log(err);
});
};
const fetchstafflist = async (odid) => {
setLoading1(true);
try {
await axios
.get(`${process.env.REACT_APP_URL2}/orders/getassignedinfo?orderdetailid=${odid}`)
.then((res) => {
console.log(res);
if (res.data.status) {
setStafflist(res.data.Details);
}
setLoading1(false);
})
.catch((err) => {
console.log(err);
setLoading1(false);
});
} catch (err) {
console.log(err);
setLoading1(false);
}
};
const dialogclose = () => {
setDialogopen(false);
};
const handleRequestSort = (event, property) => {
const isAsc = orderBy === property && order === 'asc';
setOrder(isAsc ? 'desc' : 'asc');
setOrderBy(property);
};
const handleSelectAllClick = (event) => {
if (event.target.checked) {
const newSelected = rows.map((n) => n.name);
setSelected(newSelected);
return;
}
setSelected([]);
};
const handleChangePage = (event, newPage) => {
setPage(newPage);
};
const handleChangeRowsPerPage = (event) => {
setRowsPerPage(parseInt(event.target.value, 10));
setPage(0);
};
const isSelected = (name) => selected.indexOf(name) !== -1;
// Avoid a layout jump when reaching the last page with empty rows.
const emptyRows = page > 0 ? Math.max(0, (1 + page) * rowsPerPage - rows.length) : 0;
const visibleRows = React.useMemo(
() => stableSort(rows, getComparator(order, orderBy)).slice(page * rowsPerPage, page * rowsPerPage + rowsPerPage),
[order, orderBy, page, rowsPerPage]
);
const handleClose = () => {
setOpen(false);
setOrderheaderid('');
};
function AlertCustomerDelete({
// title,
open,
handleClose
}) {
// const [deletepassword, setDeletepassword] = useState('');
return (
);
}
return (
{loading && (
<>
{[0, 1, 2, 3, 4, 5, 6, 7, 8, 9].map((item) => (
))}
>
)}
{visibleRows.length == 0 && !loading && (
<>
{/* empty
*/}
>
)}
{visibleRows.map((row, index) => {
const isItemSelected = isSelected(row.sno);
const labelId = `enhanced-table-checkbox-${index}`;
return (
<>
{row.sno}
{row.orderid}
{dayjs(row.deliverydate).utc().format('DD/MM/YYYY')}
{dayjs(row.deliverydate).utc().format('hh:mm A')}
{/*
{row.customername}
{row.contactno}
*/}
{row.pickupcustomer}
{row.pickupcontactno}
{/* {row.pickupaddress.slice(0, 20)} */}
{row.pickupsuburb || row.pickupaddress.slice(0, 20)}
{/*
*/}
{/*
{row.customersuburb || row.deliveryaddress.slice(0, 20)}
*/}
{row.deliverycustomer}
{row.deliverycontactno}
{/* {row.pickupaddress.slice(0, 20)} */}
{row.deliverysuburb || row.deliveryaddress.slice(0, 20)}
{row.ordernotes}
{/* */}
{row.orderstatus === 'pending' && }
{row.orderstatus === 'modified' && }
{row.orderstatus === 'cancelled' && }
{row.orderstatus === 'delivered' && }
{row.orderstatus === 'processing' && }
{row.orderstatus === 'ready' && }
{row.orderstatus === 'confirmed' && }
{row.orderstatus === 'active' && }
{row.orderstatus === 'closed' && }
{row.orderstatus === 'created' && }
{row.orderstatus == 'created' && (
<>
{
e.stopPropagation();
setOrderheaderid(row.orderheaderid);
setOpen(true);
// navigate(`/details`, {
// state: {
// orderheaderid: row.orderheaderid,
// tenantid: row.tenantid
// }
// })
}}
>
{/* */}
>
)}
{/*
{(row.ordershifts).map((val5, k) => {
return <>
Shift {k + 1}
{''}{val5.locationaddress}
{((val5.shiftstatus == 1) || (val5.status == 1)) &&
}
#
Role
Start Date
End Date
Unpaid break
Count
Assigned
Price
Amount
Assigned Roles
{((val5.orderdetails) ? val5.orderdetails : []).map((val, i) => {
return <>
{i + 1}
{val.productname}
{dayjs(val.starttime).format('MM/DD/YYYY')}
{dayjs(val.starttime).format('hh:mm A')}
{' '}
{dayjs(val.endtime).format('MM/DD/YYYY')}
{dayjs(val.endtime).format('hh:mm A')}
{val.unpaidbreak || 0}
0) ? "warning" : "error"} variant="light" size="small" />
${val.price}
${val.landingamount}
>
})}
>
})
}
*/}
>
);
})}
{emptyRows > 0 && (
)}
);
}
const [startdate, setStartdate] = useState(dayjs().format('YYYY-MM-DD'));
const [enddate, setEnddate] = useState(dayjs().format('YYYY-MM-DD'));
const [tenantid, setTenantid] = useState('');
const [percentage1, setPercentage1] = useState('0');
const [percentage2, setPercentage2] = useState('0');
const [percentage3, setPercentage3] = useState('0');
const [percentage4, setPercentage4] = useState('0');
let [orderarr, setArr] = useState([]);
let [orderarrcovered, setArrcovered] = useState([]);
let [orderarractive, setArractive] = useState([]);
let [orderarruncovered, setArruncovered] = useState([]);
let [orderarrcancelled, setArrcancelled] = useState([]);
let [orderarrassigned, setArrassigned] = useState([]);
let [orderarrconfirmed, setArrconfirmed] = useState([]);
let [orderarrmodified, setArrmodified] = useState([]);
let [orderarrclosed, setArrclosed] = useState([]);
let [orderarrpicked, setArrpicked] = useState([]);
let [orderarrcreated, setArrcreated] = useState([]);
const [allorders, setAllorders] = useState('');
const [activeorders, setActiveorders] = useState('');
const [coveredorders, setCoveredorders] = useState('');
const [uncoveredorders, setUncoveredorders] = useState('');
const [cancelled, setCancelled] = useState('');
const [assigned, setAssigned] = useState('');
const [confirmed, setConfirmed] = useState('');
const [modified, setModified] = useState('');
const [completed, setCompleted] = useState('');
const [closed, setClosed] = useState('');
const [picked, setPicked] = useState('');
const [created, setCreated] = useState('');
const [tabstatus, setTabstatus] = useState('Created');
const [loading, setLoading] = useState(true);
const theme = useTheme();
let [rows, setRows] = useState([]);
const [tabvalue, setTabvalue] = useState(0);
let navigate = useNavigate();
const [open, setOpen] = useState(false);
const [dateselect, setDateselect] = useState('select');
// const [tabstatus1, setTabstatus1] = useState('All');
const [tabstatus1, setTabstatus1] = useState('Today');
// const [datestatus, setDatestatus] = useState('All');
const [datestatus, setDatestatus] = useState('Today');
const [searchword, setSearchword] = useState('');
const handleChangetab = (e, i) => {
setTabvalue(i);
// if (i === 0) setTabstatus('All orders')
if (i === 0) setTabstatus('Created');
// if (i === 2) setTabstatus('Modified')
if (i === 1) setTabstatus('Pending');
// if (i === 2) setTabstatus('Assigned')
// if (i === 3) setTabstatus('Picked')
if (i === 2) setTabstatus('Delivered');
if (i === 3) setTabstatus('Cancelled');
// if (i === 0) setTabstatus('All orders')
// if (i === 1) setTabstatus('Pending')
// if (i === 1) setTabstatus('Modified')
// if (i === 3) setTabstatus('Assigned')
// if (i === 0) setTabstatus('Confirmed')
// if (i === 2) setTabstatus('Completed')
// if (i === 3) setTabstatus('Closed')
console.log(i);
};
useEffect(() => {
console.log(localStorage.getItem('appuserid'));
if (localStorage.getItem('tenantid')) {
setTenantid(localStorage.getItem('tenantid'));
let val = localStorage.getItem('tenantid');
fetchtable(val);
fetchpercentage(val);
// fetchtableactive();
fetchtableuncovered(val);
fetchtablecovered(val);
fetchtablecancelled(val);
// fetchtableassigned(val);
// fetchtablepicked(val);
fetchtablecreated(val);
// fetchtableconfirmed(val);
// fetchtablemodified(val);
// fetchtableclosed(val)
// fetchtable(val)
// console.log(activeorders);
}
}, []);
useEffect(() => {
if (localStorage.getItem('tenantid')) {
let val = localStorage.getItem('tenantid');
// fetchtable();
// fetchpercentage(val);
// fetchtableactive();
fetchtableuncovered(val);
fetchtablecovered(val);
fetchtablecancelled(val);
// fetchtableassigned(val);
// fetchtablepicked(val);
// fetchtableconfirmed(val);
// fetchtablemodified(val);
// fetchtableclosed(val)
fetchtable(val);
fetchtablecreated(val);
console.log(activeorders);
}
}, [startdate, enddate]);
useEffect(() => {
// if (tabstatus === 'All orders') setRows(orderarr)
// if (tabstatus === 'Completed') setRows(orderarrcovered)
// if (tabstatus === 'Active') setRows(orderarractive)
// if (tabstatus === 'Pending') setRows(orderarruncovered)
// if (tabstatus === 'Cancelled') setRows(orderarrcancelled)
// if (tabstatus === 'Assigned') setRows(orderarrassigned)
// if (tabstatus === 'Confirmed') setRows(orderarrconfirmed)
if (tabstatus === 'Created') setRows(orderarrcreated);
if (tabstatus === 'All orders') setRows(orderarr);
if (tabstatus === 'Delivered') setRows(orderarrcovered);
if (tabstatus === 'Pending') setRows(orderarruncovered);
// if (tabstatus === 'Active') setRows(orderarractive)
// if (tabstatus === 'Pending') setRows(orderarruncovered)
if (tabstatus === 'Cancelled') setRows(orderarrcancelled);
if (tabstatus === 'Assigned') setRows(orderarrassigned);
// if (tabstatus === 'Confirmed') setRows(orderarrconfirmed)
// if (tabstatus === 'Modified') setRows(orderarrmodified)
// if (tabstatus === 'Closed') setRows(orderarrclosed)
if (tabstatus === 'Picked') setRows(orderarrpicked);
}, [tabstatus]);
const okclicked = () => {
setOpen(false);
};
useEffect(() => {
var day = 60 * 60 * 24 * 1000;
var startDate = new Date();
if (tabstatus1 === 'Tomorrow') {
setEnddate(new Date(startDate.getTime() + day).toISOString().substring(0, 10));
setStartdate(new Date(startDate.getTime() + day).toISOString().substring(0, 10));
setDateselect('select');
} else if (tabstatus1 === 'Today') {
setEnddate(new Date().toISOString().substring(0, 10));
setStartdate(new Date().toISOString().substring(0, 10));
setDateselect('select');
} else if (tabstatus1 === 'Week') {
setStartdate(new Date(startDate.getTime() - day * 7).toISOString().substring(0, 10));
setEnddate(new Date().toISOString().substring(0, 10));
setDateselect('select');
}
// else if (tabstatus1 === 'All') {
// setEnddate('');
// setStartdate('');
// setDateselect('all');
// }
}, [tabstatus1]);
const choosedate = (date) => {
setStartdate(date.$d.toISOString().substring(0, 10));
setEnddate(date.$d.toISOString().substring(0, 10));
setTabstatus1('');
};
useEffect(() => {
if (tabstatus === 'All Orders') {
if (searchword) {
let arr = orderarr.filter((val) => {
return (
val.orderid.toLowerCase().includes(searchword.toLowerCase()) ||
val.deliveryaddress.toLowerCase().includes(searchword.toLowerCase()) ||
// || val.customername.toLowerCase().includes(searchword.toLowerCase())
val.pickupaddress.toString().toLowerCase().includes(searchword.toLowerCase()) ||
val.ordernotes.toString().toLowerCase().includes(searchword.toLowerCase())
// || val.contactno.toString().toLowerCase().includes(searchword.toLowerCase())
);
});
console.log(arr);
setRows([...arr]);
} else {
setRows([...orderarr]);
}
} else if (tabstatus === 'Delivered') {
if (searchword) {
let arr = orderarrcovered.filter((val) => {
return (
val.orderid.toLowerCase().includes(searchword.toLowerCase()) ||
val.pickupaddress.toString().toLowerCase().includes(searchword.toLowerCase()) ||
val.ordernotes.toString().toLowerCase().includes(searchword.toLowerCase()) ||
val.deliveryaddress.toLowerCase().includes(searchword.toLowerCase())
// || val.customername.toLowerCase().includes(searchword.toLowerCase())
// || val.contactno.toString().toLowerCase().includes(searchword.toLowerCase())
);
});
console.log(arr);
setRows([...arr]);
} else {
setRows([...orderarrcovered]);
}
} else if (tabstatus === 'Active') {
if (searchword) {
let arr = orderarractive.filter((val) => {
return (
val.orderid.toLowerCase().includes(searchword.toLowerCase()) ||
val.eventname.toLowerCase().includes(searchword.toLowerCase()) ||
// || val.customername.toLowerCase().includes(searchword.toLowerCase())
val.ordervalue.toString().toLowerCase().includes(searchword.toLowerCase()) ||
val.deliveryaddress.toLowerCase().includes(searchword.toLowerCase())
// || val.contactno.toString().toLowerCase().includes(searchword.toLowerCase())
);
});
console.log(arr);
setRows([...arr]);
} else {
setRows([...orderarractive]);
}
} else if (tabstatus === 'Pending') {
if (searchword) {
let arr = orderarruncovered.filter((val) => {
return (
val.orderid.toLowerCase().includes(searchword.toLowerCase()) ||
val.pickupaddress.toString().toLowerCase().includes(searchword.toLowerCase()) ||
val.ordernotes.toString().toLowerCase().includes(searchword.toLowerCase()) ||
val.deliveryaddress.toLowerCase().includes(searchword.toLowerCase())
// || val.customername.toLowerCase().includes(searchword.toLowerCase())
// || val.contactno.toString().toLowerCase().includes(searchword.toLowerCase())
);
});
console.log(arr);
setRows([...arr]);
} else {
setRows([...orderarruncovered]);
}
} else if (tabstatus === 'Cancelled') {
if (searchword) {
let arr = orderarrcancelled.filter((val) => {
return (
val.orderid.toLowerCase().includes(searchword.toLowerCase()) ||
val.pickupaddress.toString().toLowerCase().includes(searchword.toLowerCase()) ||
val.ordernotes.toString().toLowerCase().includes(searchword.toLowerCase()) ||
val.deliveryaddress.toLowerCase().includes(searchword.toLowerCase())
// || val.customername.toLowerCase().includes(searchword.toLowerCase())
// || val.contactno.toString().toLowerCase().includes(searchword.toLowerCase())
);
});
console.log(arr);
setRows([...arr]);
} else {
setRows([...orderarrcancelled]);
}
} else if (tabstatus === 'Assigned') {
if (searchword) {
let arr = orderarrassigned.filter((val) => {
return (
val.orderid.toLowerCase().includes(searchword.toLowerCase()) ||
val.pickupaddress.toString().toLowerCase().includes(searchword.toLowerCase()) ||
val.ordernotes.toString().toLowerCase().includes(searchword.toLowerCase()) ||
val.deliveryaddress.toLowerCase().includes(searchword.toLowerCase())
// || val.customername.toLowerCase().includes(searchword.toLowerCase())
// || val.contactno.toString().toLowerCase().includes(searchword.toLowerCase())
);
});
console.log(arr);
setRows([...arr]);
} else {
setRows([...orderarrassigned]);
}
} else if (tabstatus === 'Confirmed') {
if (searchword) {
let arr = orderarrconfirmed.filter((val) => {
return (
val.orderid.toLowerCase().includes(searchword.toLowerCase()) ||
val.pickupaddress.toString().toLowerCase().includes(searchword.toLowerCase()) ||
val.ordernotes.toString().toLowerCase().includes(searchword.toLowerCase()) ||
val.deliveryaddress.toLowerCase().includes(searchword.toLowerCase())
// || val.customername.toLowerCase().includes(searchword.toLowerCase())
// || val.contactno.toString().toLowerCase().includes(searchword.toLowerCase())
);
});
console.log(arr);
setRows([...arr]);
} else {
setRows([...orderarrconfirmed]);
}
} else if (tabstatus === 'Modified') {
if (searchword) {
let arr = orderarrmodified.filter((val) => {
return (
val.orderid.toLowerCase().includes(searchword.toLowerCase()) ||
val.eventname.toLowerCase().includes(searchword.toLowerCase()) ||
val.tenantname.toLowerCase().includes(searchword.toLowerCase()) ||
val.ordervalue.toString().toLowerCase().includes(searchword.toLowerCase()) ||
val.deliveryaddress.toLowerCase().includes(searchword.toLowerCase()) ||
val.contactno.toString().toLowerCase().includes(searchword.toLowerCase())
);
});
console.log(arr);
setRows([...arr]);
} else {
setRows([...orderarrmodified]);
}
} else if (tabstatus === 'Closed') {
if (searchword) {
let arr = orderarrclosed.filter((val) => {
return (
val.orderid.toLowerCase().includes(searchword.toLowerCase()) ||
val.eventname.toLowerCase().includes(searchword.toLowerCase()) ||
val.tenantname.toLowerCase().includes(searchword.toLowerCase()) ||
val.ordervalue.toString().toLowerCase().includes(searchword.toLowerCase()) ||
val.deliveryaddress.toLowerCase().includes(searchword.toLowerCase()) ||
val.contactno.toString().toLowerCase().includes(searchword.toLowerCase())
);
});
console.log(arr);
setRows([...arr]);
}
} else if (tabstatus === 'Picked') {
if (searchword) {
let arr = orderarrpicked.filter((val) => {
return (
val.orderid.toLowerCase().includes(searchword.toLowerCase()) ||
val.pickupaddress.toString().toLowerCase().includes(searchword.toLowerCase()) ||
val.ordernotes.toString().toLowerCase().includes(searchword.toLowerCase()) ||
val.deliveryaddress.toLowerCase().includes(searchword.toLowerCase()) ||
val.customername.toLowerCase().includes(searchword.toLowerCase()) ||
val.contactno.toString().toLowerCase().includes(searchword.toLowerCase())
);
});
console.log(arr);
setRows([...arr]);
} else {
setRows([...orderarrpicked]);
}
} else if (tabstatus === 'Created') {
if (searchword) {
let arr = orderarrcreated.filter((val) => {
return (
val.orderid.toLowerCase().includes(searchword.toLowerCase()) ||
val.pickupaddress.toString().toLowerCase().includes(searchword.toLowerCase()) ||
val.ordernotes.toString().toLowerCase().includes(searchword.toLowerCase()) ||
val.deliveryaddress.toLowerCase().includes(searchword.toLowerCase())
// || val.customername.toLowerCase().includes(searchword.toLowerCase())
// || val.contactno.toString().toLowerCase().includes(searchword.toLowerCase())
);
});
console.log(arr);
setRows([...arr]);
} else {
setRows([...orderarrcreated]);
}
}
}, [orderarr, searchword]);
const handleChange1 = (e) => {
setTabstatus1(e.target.innerText);
setDatestatus(e.target.innerText);
};
const fetchtable = async (tid) => {
try {
await axios
.get(`${process.env.REACT_APP_URL}/orders/tenant/getorders/?tenantid=${tid}`)
.then((res) => {
if (res.data.status) {
let arr = [];
res.data.details.map((val, i) => {
arr = [...arr, { ...val, sno: i + 1 }];
});
setArr(arr);
console.log(res.data.Details);
if (tabstatus == 'All Orders') {
setRows(arr);
}
}
})
.catch((err) => {
console.log(err);
});
} catch (err) {
console.log(err);
}
};
const fetchtablecovered = async (tid) => {
try {
// await axios.get(`${process.env.REACT_APP_URL}/orders/getorders/?tenantid=${tid}&status=completed`)
await axios
.get(
`${process.env.REACT_APP_URL}/orders/tenant/getorders/?tenantid=${tid}&status=delivered&fromdate=${startdate}&todate=${enddate}`
)
.then((res) => {
// if (res.data.message === "Success") {
let arr = [];
res.data.details.map((val, i) => {
arr = [...arr, { ...val, sno: i + 1 }];
});
console.log('delivered', arr);
setArrcovered(arr);
// }
})
.catch((err) => {
console.log(err);
});
} catch (err) {
console.log(err);
}
};
const fetchtablecreated = async (tid) => {
try {
// await axios.get(`${process.env.REACT_APP_URL}/orders/getorders/?tenantid=${tid}&status=completed`)
await axios
.get(`${process.env.REACT_APP_URL}/orders/tenant/getorders/?tenantid=${tid}&status=created&fromdate=${startdate}&todate=${enddate}`)
.then((res) => {
// if (res.data.message === "Success") {
let arr = [];
res.data.details.map((val, i) => {
arr = [...arr, { ...val, sno: i + 1 }];
});
console.log('created', arr);
setArrcreated(arr);
if (tabstatus == 'Created') {
setRows(arr);
}
// }
})
.catch((err) => {
console.log(err);
});
} catch (err) {
console.log(err);
}
};
const fetchtableactive = async () => {
try {
await axios
.get(
`${process.env.REACT_APP_URL2}/orders/orderliststatus?fromdate=${startdate}&todate=${enddate}&type=${dateselect}&status=processing&sort=desc`
)
.then((res) => {
if (res.data.message === 'Success') {
let arr = [];
res.data.Details.map((val, i) => {
arr = [...arr, { ...val, sno: i + 1 }];
});
setArractive(arr);
}
})
.catch((err) => {
console.log(err);
});
} catch (err) {
console.log(err);
}
};
const fetchtableuncovered = async (tid) => {
try {
await axios
.get(`${process.env.REACT_APP_URL}/orders/tenant/getorders/?tenantid=${tid}&status=pending&fromdate=${startdate}&todate=${enddate}`)
.then((res) => {
if (res.data.message === 'Success') {
let arr = [];
res.data.details.map((val, i) => {
arr = [...arr, { ...val, sno: i + 1 }];
});
console.log('pending', arr);
setArruncovered(arr);
}
})
.catch((err) => {
console.log(err);
});
} catch (err) {
console.log(err);
}
};
const fetchtablecancelled = async (tid) => {
try {
await axios
.get(
`${process.env.REACT_APP_URL}/orders/tenant/getorders/?tenantid=${tid}&status=cancelled&fromdate=${startdate}&todate=${enddate}`
)
// await axios.get(`${process.env.REACT_APP_URL2}/client/orders/getordersbystatus?tenantid=${tid}&status=cancelled`)
.then((res) => {
// if (res.data.message === "Success") {
let arr = [];
console.log(res.data.details);
res.data.details.map((val, i) => {
arr = [...arr, { ...val, sno: i + 1 }];
});
console.log('cancelled', arr);
setArrcancelled(arr);
// }
})
.catch((err) => {
console.log(err);
});
} catch (err) {
console.log(err);
}
};
const fetchtableassigned = async (tid) => {
try {
await axios
.get(
`${process.env.REACT_APP_URL}/orders/tenant/getorders/?tenantid=${tid}&status=accepted&fromdate=${startdate}&todate=${enddate}`
)
.then((res) => {
// if (res.data.message === "Success") {
let arr = [];
console.log(res.data.details);
res.data.details.map((val, i) => {
arr = [...arr, { ...val, sno: i + 1 }];
});
setArrassigned(arr);
// }
})
.catch((err) => {
console.log(err);
});
} catch (err) {
console.log(err);
}
};
const fetchtablepicked = async (tid) => {
try {
await axios
.get(`${process.env.REACT_APP_URL}/orders/tenant/getorders/?tenantid=${tid}&status=picked&fromdate=${startdate}&todate=${enddate}`)
.then((res) => {
// if (res.data.message === "Success") {
let arr = [];
console.log(res.data.details);
res.data.details.map((val, i) => {
arr = [...arr, { ...val, sno: i + 1 }];
});
setArrpicked(arr);
// }
})
.catch((err) => {
console.log(err);
});
} catch (err) {
console.log(err);
}
};
const fetchtableconfirmed = async (tid) => {
try {
// await axios.get(`${process.env.REACT_APP_URL2}/orders/orderliststatus?fromdate=${startdate}&todate=${enddate}&type=${dateselect}&status=confirmed&sort=desc`)
await axios
.get(
`${process.env.REACT_APP_URL2}/client/orders/getordersbystatus?tenantid=${tid}&status=confirmed&fromdate=${startdate}&todate=${enddate}`
)
.then((res) => {
if (res.data.message === 'Success') {
let arr = [];
console.log(res.data.Details);
res.data.Details.map((val, i) => {
arr = [...arr, { ...val, sno: i + 1 }];
});
setArrconfirmed(arr);
}
})
.catch((err) => {
console.log(err);
});
} catch (err) {
console.log(err);
}
};
const fetchtablemodified = async (tid) => {
try {
// await axios.get(`${process.env.REACT_APP_URL2}/orders/orderliststatus?fromdate=${startdate}&todate=${enddate}&type=${dateselect}&status=modified&sort=desc`)
await axios
.get(
`${process.env.REACT_APP_URL2}/client/orders/getordersbystatus?tenantid=${tid}&status=modified&fromdate=${startdate}&todate=${enddate}`
)
.then((res) => {
if (res.data.message === 'Success') {
let arr = [];
console.log(res.data.Details);
res.data.Details.map((val, i) => {
arr = [...arr, { ...val, sno: i + 1 }];
});
setArrmodified(arr);
}
})
.catch((err) => {
console.log(err);
});
} catch (err) {
console.log(err);
}
};
const fetchtableclosed = async (tid) => {
try {
// await axios.get(`${process.env.REACT_APP_URL2}/orders/orderliststatus?fromdate=${startdate}&todate=${enddate}&type=${dateselect}&status=modified&sort=desc`)
await axios
.get(
`${process.env.REACT_APP_URL2}/client/orders/getordersbystatus?tenantid=${tid}&status=closed&fromdate=${startdate}&todate=${enddate}`
)
.then((res) => {
if (res.data.message === 'Success') {
let arr = [];
console.log(res.data.Details);
res.data.Details.map((val, i) => {
arr = [...arr, { ...val, sno: i + 1 }];
});
setArrclosed(arr);
}
})
.catch((err) => {
console.log(err);
});
} catch (err) {
console.log(err);
}
};
const fetchpercentage = async (tid) => {
setLoading(true);
try {
// await axios.get(`${process.env.REACT_APP_URL}/orders/getordersummary/?tenantid=${tid}&fromdate=${startdate}&todate=${enddate}`)
await axios
.get(`${process.env.REACT_APP_URL}/orders/getordersummary/?tenantid=${tid}`)
.then((res) => {
console.log(res);
// setConfirmed(res.data.details.confirmed.toString());
// setModified(res.data.details.modified.toString());
setAllorders(res.data.details.total.toString());
setCoveredorders(res.data.details.delivered.toString());
setCancelled(res.data.details.cancelled.toString());
setUncoveredorders(res.data.details.pending.toString());
// setActiveorders(res.data.details.assigned.toString());
// setAssigned(res.data.details.accepted.toString());
setCreated(res.data.details.created.toString());
setClosed(res.data.details.delivered.toString());
// setPicked(res.data.details.picked.toString())
setPercentage1((Math.round((res.data.details.created / res.data.details.total) * 100) || 0).toString());
setPercentage3((Math.round((res.data.details.delivered / res.data.details.total) * 100) || 0).toString());
setPercentage4((Math.round((res.data.details.cancelled / res.data.details.total) * 100) || 0).toString());
setPercentage2((Math.round((res.data.details.pending / res.data.details.total) * 100) || 0).toString());
setLoading(false);
})
.catch((err) => {
console.log(err);
setLoading(false);
// enqueueSnackbar(err.message, {
// variant: 'error', anchorOrigin: { vertical: 'top', horizontal: 'right' },
// autoHideDuration: 2000
// })
});
} catch (err) {
console.log(err);
setLoading(false);
}
};
return (
<>
{loading && }
Orders
{/* */}
{/*
*/}
{/*
*/}
{/*
: confirmed} percentage={percentage1.toString()} color={theme.palette.success.main} />
*/}
{/*
: modified} percentage={percentage2.toString()} color={theme.palette.secondary[600]} />
*/}
: created}
percentage={percentage1.toString()}
color={theme.palette.primary.main}
/>
: uncoveredorders}
percentage={percentage2.toString()}
color={theme.palette.warning.main}
/>
{/*
: assigned} percentage={percentage2.toString()} color={theme.palette.info.main} />
: picked} percentage={percentage3.toString()} color={theme.palette.primary.main} />
*/}
: coveredorders}
percentage={percentage3.toString()}
color={theme.palette.success.main}
/>
{/*
: closed} percentage={percentage4.toString()} color={theme.palette.warning.main} />
*/}
: cancelled}
percentage={percentage4.toString()}
color={theme.palette.secondary[600]}
/>
{/* */}
{startdate && enddate && (
{dayjs(startdate).format('DD/MM/YYYY')} - {dayjs(enddate).format('DD/MM/YYYY')}
}
variant="combined"
color="warning"
size="small"
/>
)}
{(!startdate || !enddate) && (
<>
>
)}
setOpen(true)}
>
{/* }
/> */}
}
iconPosition="end"
/>
}
iconPosition="end"
/>
{/* }
iconPosition="end"
/> */}
{/* }
iconPosition="end"
/> */}
{/* }
iconPosition="end"
/> */}
{/* }
iconPosition="end"
/> */}
}
iconPosition="end"
/>
{/* }
iconPosition="end"
/> */}
}
iconPosition="end"
/>
>
);
};
export default Orders;