From a111565b204f8bf785eb1b9e93c7fdd4fde661cf Mon Sep 17 00:00:00 2001
From: AymaneMG <aymanemaghouti16@gmail.com>
Date: Wed, 2 Oct 2024 00:33:09 +0100
Subject: [PATCH] =?UTF-8?q?Retour=20commande=20d'achat=20cot=C3=A9=20chauf?=
 =?UTF-8?q?feur=20et=20commande=20de=20vente=20cot=C3=A9=20BO?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

---
 src/shared/_mock/_supplierOrder.ts            |  6 ++--
 src/shared/api/SupplierOrder.ts               | 16 +++++-----
 src/shared/api/saleOrder.ts                   |  8 ++++-
 .../order/all-orders/order-table-row.tsx      |  7 +++--
 .../order/details/order-details-toolbar.tsx   |  6 ++--
 .../order/details/order-status-history.tsx    |  6 ++--
 .../driver/order/view/order-details-view.tsx  |  2 +-
 .../order/view/supplier-order-list-view.tsx   | 30 +++++++++----------
 .../Order-table-toolbar.tsx                   |  3 --
 src/shared/types/supplierOrder.ts             | 12 ++++----
 10 files changed, 50 insertions(+), 46 deletions(-)

diff --git a/src/shared/_mock/_supplierOrder.ts b/src/shared/_mock/_supplierOrder.ts
index c2bd085b..8674589e 100644
--- a/src/shared/_mock/_supplierOrder.ts
+++ b/src/shared/_mock/_supplierOrder.ts
@@ -11,9 +11,9 @@ export const OrderStatus = [
 ];
 
 export const ORDER_STATUS_OPTIONS = [
-  { value: IOrderStatus.Completed, label: "terminé" },
-  { value: IOrderStatus.Pending, label: "à faire" },
-  { value: IOrderStatus.Ongoing, label: "en cours" }
+  { value: IOrderStatus.Completed, label: "livré" },
+  { value: IOrderStatus.Pending, label: "à collecter" },
+  { value: IOrderStatus.Ongoing, label: "réceptionné" }
 ];
 
 const ITEMS = [...Array(3)].map((_, index) => ({
diff --git a/src/shared/api/SupplierOrder.ts b/src/shared/api/SupplierOrder.ts
index 8077a4ac..89befb8c 100644
--- a/src/shared/api/SupplierOrder.ts
+++ b/src/shared/api/SupplierOrder.ts
@@ -23,7 +23,7 @@ export const fetcher = async (url: string) => {
 const mapOrderData = (data: any[]): ISupplierOrderItem[] => {
   return data.map(order => ({
     id: order.id,
-    orderNumber: `60${order.id}`,
+    orderNumber: `${order.id}`,
     createdAt: new Date(order.creationDate),
     deliveryDate: new Date(order.deliveryDate),
     fullAddress: `${order.street}, ${order.city}, ${order.state}, ${order.zipCode}, ${order.country}`,
@@ -60,7 +60,7 @@ export const useGetSupplierOrderDetails = (orderId: string) => {
     if (data) {
       return {
         id: data.orderId,
-        orderNumber: `60${data.orderId}`,
+        orderNumber: `${data.orderId}`,
         status:data.status,
         createdAt: new Date(data.creationDate),
         deliveryDate: new Date(data.deliveryDate),
@@ -121,11 +121,11 @@ export const updateOrderStatus = async (orderId: string, newStatus: IOrderStatus
 const mapStatus = (status: string) => {
   switch (status) {
     case "A_COLLECTER":
-      return "à faire";
+      return "à collecter";
     case "LIVREE":
-      return "en cours";
+      return "livré";
     case "RECEPTIONNEE":
-      return "terminé";
+      return "réceptionné";
     default:
       return status;
   }
@@ -134,11 +134,11 @@ const mapStatus = (status: string) => {
 
 const reverseMapStatus = (status: IOrderStatus) => {
   switch (status) {
-    case "à faire":
+    case "à collecter":
       return "A_COLLECTER";
-    case "en cours":
+    case "livré":
       return "LIVREE";
-    case "terminé":
+    case "réceptionné":
       return "RECEPTIONNEE";
     default:
       return status;
diff --git a/src/shared/api/saleOrder.ts b/src/shared/api/saleOrder.ts
index f9f15dc9..fe947207 100644
--- a/src/shared/api/saleOrder.ts
+++ b/src/shared/api/saleOrder.ts
@@ -36,7 +36,13 @@ export const deleteSaleOrderItem = async (id: string ) => {
 export const fetchAllSaleOrders = async (): Promise<SaleOrder[]> => {
   try {
     const response = await axiosInstance.get<SaleOrder[]>(endpoints.saleOrder.getAll);
-    return response.data;
+
+    // Sort the data based on creationDate from latest to oldest
+    const sortedData = response.data.sort((a, b) => {
+      return new Date(b.creationDate).getTime() - new Date(a.creationDate).getTime();
+    });
+
+    return sortedData;
   } catch (error) {
     throw new Error('Failed to fetch sale orders');
   }
diff --git a/src/shared/sections/driver/order/all-orders/order-table-row.tsx b/src/shared/sections/driver/order/all-orders/order-table-row.tsx
index f62ba9f3..d713a64e 100644
--- a/src/shared/sections/driver/order/all-orders/order-table-row.tsx
+++ b/src/shared/sections/driver/order/all-orders/order-table-row.tsx
@@ -43,6 +43,7 @@ export default function OrderTableRow({
         <Box
           sx={{
             cursor: 'pointer',
+            textAlign: 'center',
             '&:hover': {
               textDecoration: 'underline',
             },
@@ -103,9 +104,9 @@ export default function OrderTableRow({
         <Label
           variant="soft"
           color={
-            (status === 'terminé' && 'success') ||
-            (status === 'à faire' && 'warning') ||
-            (status === 'en cours' && 'info') ||
+            (status === 'livré' && 'success') ||
+            (status === 'à collecter' && 'warning') ||
+            (status === 'réceptionné' && 'info') ||
             'default'
           }
         >
diff --git a/src/shared/sections/driver/order/details/order-details-toolbar.tsx b/src/shared/sections/driver/order/details/order-details-toolbar.tsx
index c40ac2df..d22ee88c 100644
--- a/src/shared/sections/driver/order/details/order-details-toolbar.tsx
+++ b/src/shared/sections/driver/order/details/order-details-toolbar.tsx
@@ -16,9 +16,9 @@ const mapStatus = (status: string): IOrderStatus => {
   switch (status) {
     case "A_COLLECTER":
       return IOrderStatus.Pending;
-    case "LIVREE":
-      return IOrderStatus.Ongoing;
     case "RECEPTIONNEE":
+      return IOrderStatus.Ongoing;
+    case "LIVREE":
       return IOrderStatus.Completed;
     default:
       return status as IOrderStatus; // Fallback case
@@ -146,7 +146,7 @@ export default function OrderDetailsToolbar({
             onClick={handleValidéClick}
             disabled={selectedStatus === mappedStatus}
           >
-            Validé
+            Valider
           </Button>
         </Stack>
       </Stack>
diff --git a/src/shared/sections/driver/order/details/order-status-history.tsx b/src/shared/sections/driver/order/details/order-status-history.tsx
index e7231efa..257d699a 100644
--- a/src/shared/sections/driver/order/details/order-status-history.tsx
+++ b/src/shared/sections/driver/order/details/order-status-history.tsx
@@ -48,8 +48,8 @@ export default function OrderStatusHistory({ history }: Props) {
           <Table>
             <TableHead>
               <TableRow>
-                <StyledTableHeadCell>Old Status</StyledTableHeadCell>
-                <StyledTableHeadCell>New Status</StyledTableHeadCell>
+                <StyledTableHeadCell>Ancien Status</StyledTableHeadCell>
+                <StyledTableHeadCell>Nouveau Status</StyledTableHeadCell>
                 <StyledTableHeadCell>Date de changement</StyledTableHeadCell>
               </TableRow>
             </TableHead>
@@ -59,7 +59,7 @@ export default function OrderStatusHistory({ history }: Props) {
                   <StyledTableCell>{item.oldstatus}</StyledTableCell>
                   <StyledTableCell>{item.newstatus}</StyledTableCell>
                   <StyledTableCell>
-                    {format(new Date(item.date), 'dd MMMM yyyy HH:mm')}
+                    {format(new Date(item.date), 'dd-MM-yyyy HH:mm')}
                   </StyledTableCell>
                 </StyledTableRow>
               ))}
diff --git a/src/shared/sections/driver/order/view/order-details-view.tsx b/src/shared/sections/driver/order/view/order-details-view.tsx
index b364d3c7..b20b70cd 100644
--- a/src/shared/sections/driver/order/view/order-details-view.tsx
+++ b/src/shared/sections/driver/order/view/order-details-view.tsx
@@ -51,7 +51,7 @@ export default function OrderDetailsView({ id }: Props) {
       <OrderDetailsToolbar
         orderId={orderDetails.id}
         backLink={backLink}
-        orderNumber={`60${orderDetails.id}`}
+        orderNumber={orderDetails.id}
         createdAt={orderDetails.createdAt}
         deliveryDate={orderDetails.deliveryDate}
         status={orderDetails.status}
diff --git a/src/shared/sections/driver/order/view/supplier-order-list-view.tsx b/src/shared/sections/driver/order/view/supplier-order-list-view.tsx
index b1273977..36e8c125 100644
--- a/src/shared/sections/driver/order/view/supplier-order-list-view.tsx
+++ b/src/shared/sections/driver/order/view/supplier-order-list-view.tsx
@@ -59,9 +59,9 @@ interface IOrderStatusOption {
 
 const STATUS_OPTIONS: IOrderStatusOption[] = [
   { value: 'all', label: 'All' },
-  { value: 'à faire', label: 'À Faire' },
-  { value: 'en cours', label: 'En Cours' },
-  { value: 'terminé', label: 'Terminé' },
+  { value: 'à collecter', label: 'à collecter' },
+  { value: 'réceptionné', label: 'réceptionné' },
+  { value: 'livré', label: 'livré' },
 ];
 
 const TABLE_HEAD = [
@@ -205,15 +205,15 @@ export default function OrderListView() {
 
   const statusCounts = useMemo(() => {
     const allCount = dataFiltered.length;
-    const completedCount = dataFiltered.filter(order => order.status === 'terminé').length;
-    const pendingCount = dataFiltered.filter(order => order.status === 'à faire').length;
-    const ongoingCount = dataFiltered.filter(order => order.status === 'en cours').length;
+    const completedCount = dataFiltered.filter(order => order.status === 'livré').length;
+    const pendingCount = dataFiltered.filter(order => order.status === 'à collecter').length;
+    const ongoingCount = dataFiltered.filter(order => order.status === 'réceptionné').length;
 
     return {
       all: allCount,
-      terminé: completedCount,
-      'à faire': pendingCount,
-      'en cours': ongoingCount,
+      livré: completedCount,
+      'à collecter': pendingCount,
+      'réceptionné': ongoingCount,
     };
   }, [dataFiltered]);
 
@@ -272,16 +272,16 @@ export default function OrderListView() {
                   <Label
                     variant={(tab.value === filters.status && 'filled') || 'soft'}
                     color={
-                      (tab.value === 'terminé' && 'success') ||
-                      (tab.value === 'à faire' && 'warning') ||
-                      (tab.value === 'en cours' && 'info') ||
+                      (tab.value === 'livré' && 'success') ||
+                      (tab.value === 'à collecter' && 'warning') ||
+                      (tab.value === 'réceptionné' && 'info') ||
                       'default'
                     }
                   >
                     {tab.value === 'all' ? statusCounts.all : 
-                     tab.value === 'terminé' ? statusCounts.terminé : 
-                     tab.value === 'à faire' ? statusCounts['à faire'] : 
-                     statusCounts['en cours']}
+                     tab.value === 'livré' ? statusCounts.livré : 
+                     tab.value === 'à collecter' ? statusCounts['à collecter'] : 
+                     statusCounts['réceptionné']}
                   </Label>
                 }
               />
diff --git a/src/shared/sections/supplier/All-OrderSaleSupplier/Order-table-toolbar.tsx b/src/shared/sections/supplier/All-OrderSaleSupplier/Order-table-toolbar.tsx
index 3d1d3a96..6c627c0c 100644
--- a/src/shared/sections/supplier/All-OrderSaleSupplier/Order-table-toolbar.tsx
+++ b/src/shared/sections/supplier/All-OrderSaleSupplier/Order-table-toolbar.tsx
@@ -105,9 +105,6 @@ export default function InvoiceTableToolbar({
             }}
           />
 
-          <IconButton onClick={popover.onOpen}>
-            <Iconify icon="eva:more-vertical-fill" />
-          </IconButton>
         </Stack>
       </Stack>
     </>
diff --git a/src/shared/types/supplierOrder.ts b/src/shared/types/supplierOrder.ts
index 90c6b8f9..4f837fd5 100644
--- a/src/shared/types/supplierOrder.ts
+++ b/src/shared/types/supplierOrder.ts
@@ -21,15 +21,15 @@ export type ISupplierOrderTableFilters = {
 };
 
 export enum IOrderSupplierStatus {
-  Completed = "terminé",
-  Pending = "à faire",
-  Ongoing= "en cours"
+  Completed = "livré",
+  Pending = "à collecter",
+  Ongoing= "réceptionné"
 }
 
 export enum IOrderStatus {
-  Completed = "terminé",
-  Pending = "à faire",
-  Ongoing= "en cours"
+  Completed = "livré",
+  Pending = "à collecter",
+  Ongoing= "réceptionné"
 }
 // ----------------------------------------------------------------------
 
-- 
GitLab