From e6e1878cb2ca1cf3c5cf85e7441cd8de49eb7885 Mon Sep 17 00:00:00 2001 From: hamid zarghami Date: Sun, 22 Feb 2026 11:33:56 +0330 Subject: [PATCH] invoice list --- src/pages/order/List.tsx | 18 ++++++++++-------- src/pages/order/service/OrderService.ts | 8 ++++---- src/pages/order/types/Types.ts | 20 ++++++++++++++++++++ 3 files changed, 34 insertions(+), 12 deletions(-) diff --git a/src/pages/order/List.tsx b/src/pages/order/List.tsx index 8d7b323..9f04257 100644 --- a/src/pages/order/List.tsx +++ b/src/pages/order/List.tsx @@ -6,6 +6,7 @@ import { useGetOrders } from './hooks/useOrderData' import moment from 'moment-jalaali' import { Link } from 'react-router-dom' import { Paths } from '@/config/Paths' +import type { OrderListItemType } from './types/Types' const OrdersList: FC = () => { @@ -41,7 +42,7 @@ const OrdersList: FC = () => {
- columns={[ { key: 'orderNumber', @@ -58,6 +59,13 @@ const OrdersList: FC = () => { ) } }, + { + key: 'product', + title: 'نام محصول', + render: (item) => ( +
{item.product?.title ?? '—'}
+ ), + }, { key: 'createdAt', title: 'تاریخ ایجاد ', @@ -70,13 +78,7 @@ const OrdersList: FC = () => { { key: 'type', title: 'تعداد اقلام', - render: (item) => { - return ( -
- {item.items.length} -
- ) - } + render: () =>
۱
, }, { key: 'designer', diff --git a/src/pages/order/service/OrderService.ts b/src/pages/order/service/OrderService.ts index 749300b..99f8a3f 100644 --- a/src/pages/order/service/OrderService.ts +++ b/src/pages/order/service/OrderService.ts @@ -5,7 +5,7 @@ import type { CreateFinalOrderType, OrderDetailResponseType, OrderItemResponseType, - OrderResponseType, + OrderListResponseType, TicketsResponseType, } from "../types/Types"; import type { @@ -14,19 +14,19 @@ import type { } from "@/pages/product/types/Types"; export const getOrders = async () => { - const { data } = await axios.get(`/admin/orders`); + const { data } = await axios.get(`/admin/orders`); return data; }; export const getOrdersInvoiced = async (page: number = 1) => { - const { data } = await axios.get( + const { data } = await axios.get( `/admin/orders/invoiced?page=${page}`, ); return data; }; export const getRequests = async () => { - const { data } = await axios.get(`/admin/orders/request`); + const { data } = await axios.get(`/admin/orders/request`); return data; }; diff --git a/src/pages/order/types/Types.ts b/src/pages/order/types/Types.ts index a1a1bef..9955deb 100644 --- a/src/pages/order/types/Types.ts +++ b/src/pages/order/types/Types.ts @@ -74,6 +74,26 @@ export interface OrderItemAttribute { export type OrderResponseType = BaseResponse; +export interface OrderListItemType extends RowDataType { + id: string; + createdAt: string; + deletedAt: string | null; + invoiceItem: string; + product: Product | null; + print: string | null; + title: string; + type: string; + user: UserType; + designer: string | null; + creator: string; + orderNumber: number; + status: string; + estimatedDays: number; + attachments: string[]; +} + +export type OrderListResponseType = BaseResponse; + export type UserType = { addresse?: string; createdAt: string;