feat: add fetch for multi-stub (#59)
Some checks failed
it-academy/dry-wash-pl/pipeline/head There was a failure building this commit
it-academy/dry-wash-pl/pipeline/pr-main There was a failure building this commit

This commit is contained in:
2024-12-22 12:00:12 +03:00
parent fc699e7890
commit 6096cfc15c
10 changed files with 205 additions and 59 deletions

View File

@@ -19,12 +19,14 @@ import OrderItem from '../OrderItem';
import { OrderProps } from '../OrderItem/OrderItem';
import { armService } from '../../api/arm';
import DateNavigator from '../DateNavigator';
import { MasterProps } from '../MasterItem/MasterItem';
const TABLE_HEADERS = [
'carNumber' as const,
'washingTime' as const,
'orderDate' as const,
'status' as const,
'masters' as const,
'telephone' as const,
'location' as const,
];
@@ -35,21 +37,29 @@ const Orders = () => {
});
const { fetchOrders } = armService();
const { fetchMasters } = armService();
const toast = useToast();
const [orders, setOrders] = useState<OrderProps[]>([]);
const [allMasters, setAllMasters] = useState<MasterProps[]>([]);
const [loading, setLoading] = useState(false);
const [error, setError] = useState<string | null>(null);
const [currentDate, setCurrentDate] = useState(new Date());
useEffect(() => {
const loadOrders = async () => {
const loadData = async () => {
setLoading(true);
setError(null);
try {
const data = await fetchOrders({ date: currentDate });
setOrders(data.body);
const [ordersData, mastersData] = await Promise.all([
fetchOrders({ date: currentDate }),
fetchMasters(),
]);
setOrders(ordersData.body);
setAllMasters(mastersData.body);
} catch (err) {
setError(err.message);
toast({
@@ -64,8 +74,8 @@ const Orders = () => {
}
};
loadOrders();
}, [toast, t, currentDate]);
loadData();
}, [currentDate, toast, t]);
return (
<Box p='8'>
@@ -112,6 +122,7 @@ const Orders = () => {
!error &&
orders.map((order, index) => (
<OrderItem
allMasters={allMasters}
key={index}
{...order}
status={order.status as OrderProps['status']}