.
This commit is contained in:
parent
f286ea1bdc
commit
bcfc517a26
@ -253,6 +253,8 @@ export const QuotesDataTable = ({
|
||||
);
|
||||
}
|
||||
|
||||
console.log(data);
|
||||
|
||||
if (data?.total_items === 0 && !isFiltered) {
|
||||
return (
|
||||
<SimpleEmptyState
|
||||
|
||||
@ -1,9 +1,6 @@
|
||||
import { useDownloader } from "@/lib/hooks";
|
||||
import { UseListQueryResult, useList, useOne, useSave } from "@/lib/hooks/useDataSource";
|
||||
import {
|
||||
IFilterItemDataProviderParam,
|
||||
IGetListDataProviderParams,
|
||||
} from "@/lib/hooks/useDataSource/DataSource";
|
||||
import { IGetListDataProviderParams } from "@/lib/hooks/useDataSource/DataSource";
|
||||
import { TDataSourceError } from "@/lib/hooks/useDataSource/types";
|
||||
import { useDataSource } from "@/lib/hooks/useDataSource/useDataSource";
|
||||
import { useQueryKey } from "@/lib/hooks/useQueryKey";
|
||||
@ -41,24 +38,6 @@ export type UseQuotesReportParamsType = {
|
||||
queryOptions?: Record<string, unknown>;
|
||||
};
|
||||
|
||||
const quoteStatusFilter: Record<string, IFilterItemDataProviderParam> = {
|
||||
draft: {
|
||||
field: "status",
|
||||
operator: "eq",
|
||||
value: "draft",
|
||||
},
|
||||
archived: {
|
||||
field: "status",
|
||||
operator: "eq",
|
||||
value: "archived",
|
||||
},
|
||||
active: {
|
||||
field: "status",
|
||||
operator: "eq",
|
||||
value: "active",
|
||||
},
|
||||
};
|
||||
|
||||
export const useQuotes = () => {
|
||||
const dataSource = useDataSource();
|
||||
const keys = useQueryKey();
|
||||
@ -99,7 +78,16 @@ export const useQuotes = () => {
|
||||
return dataSource.getList({
|
||||
resource: "quotes",
|
||||
quickSearchTerm,
|
||||
filters: status !== "all" ? Array.of(quoteStatusFilter[status]) : undefined,
|
||||
filters:
|
||||
status !== "all"
|
||||
? [
|
||||
{
|
||||
field: "status",
|
||||
operator: "eq",
|
||||
value: status,
|
||||
},
|
||||
]
|
||||
: undefined,
|
||||
pagination,
|
||||
});
|
||||
},
|
||||
|
||||
@ -41,8 +41,17 @@ export const QuotesList = () => {
|
||||
<TabsTrigger value='draft'>
|
||||
<Trans i18nKey='quotes.list.tabs.draft' />
|
||||
</TabsTrigger>
|
||||
<TabsTrigger value='emitted'>
|
||||
<Trans i18nKey='quotes.list.tabs.emitted' />
|
||||
<TabsTrigger value='ready'>
|
||||
<Trans i18nKey='quotes.list.tabs.ready' />
|
||||
</TabsTrigger>
|
||||
<TabsTrigger value='delivered'>
|
||||
<Trans i18nKey='quotes.list.tabs.delivered' />
|
||||
</TabsTrigger>
|
||||
<TabsTrigger value='accepted'>
|
||||
<Trans i18nKey='quotes.list.tabs.accepted' />
|
||||
</TabsTrigger>
|
||||
<TabsTrigger value='rejected'>
|
||||
<Trans i18nKey='quotes.list.tabs.rejected' />
|
||||
</TabsTrigger>
|
||||
<TabsTrigger value='archived' className='hidden sm:flex'>
|
||||
<Trans i18nKey='quotes.list.tabs.archived' />
|
||||
@ -76,12 +85,21 @@ export const QuotesList = () => {
|
||||
<TabsContent value='draft'>
|
||||
<QuotesDataTable status='draft' preview={enabledPreview} />
|
||||
</TabsContent>
|
||||
<TabsContent value='ready'>
|
||||
<QuotesDataTable status='ready' preview={enabledPreview} />
|
||||
</TabsContent>
|
||||
<TabsContent value='delivered'>
|
||||
<QuotesDataTable status='delivered' preview={enabledPreview} />
|
||||
</TabsContent>
|
||||
<TabsContent value='accepted'>
|
||||
<QuotesDataTable status='accepted' preview={enabledPreview} />
|
||||
</TabsContent>
|
||||
<TabsContent value='rejected'>
|
||||
<QuotesDataTable status='rejected' preview={enabledPreview} />
|
||||
</TabsContent>
|
||||
<TabsContent value='archived'>
|
||||
<QuotesDataTable status='archived' preview={enabledPreview} />
|
||||
</TabsContent>
|
||||
<TabsContent value='emitted'>
|
||||
<QuotesDataTable status='emitted' preview={enabledPreview} />
|
||||
</TabsContent>
|
||||
</Tabs>
|
||||
</DataTableProvider>
|
||||
);
|
||||
|
||||
@ -16,7 +16,7 @@ export interface IDataTableContextState {
|
||||
setPagination: (newPagination: PaginationState) => void;
|
||||
sorting: SortingState;
|
||||
setSorting: Dispatch<SetStateAction<SortingState>>;
|
||||
globalFilter: string;
|
||||
globalFilter?: string;
|
||||
setGlobalFilter: (newGlobalFilter: string) => void;
|
||||
resetGlobalFilter: () => void;
|
||||
isFiltered: boolean;
|
||||
@ -26,7 +26,7 @@ export const DataTableContext = createContext<IDataTableContextState | null>(nul
|
||||
|
||||
export const DataTableProvider = ({
|
||||
syncWithLocation = true,
|
||||
initialGlobalFilter = "",
|
||||
initialGlobalFilter = undefined,
|
||||
initialPageIndex,
|
||||
initialPageSize,
|
||||
children,
|
||||
@ -41,10 +41,10 @@ export const DataTableProvider = ({
|
||||
initialPageIndex,
|
||||
initialPageSize,
|
||||
});
|
||||
const [globalFilter, setGlobalFilter] = useState<string>(initialGlobalFilter);
|
||||
const [globalFilter, setGlobalFilter] = useState<string | undefined>(initialGlobalFilter);
|
||||
const [sorting, setSorting] = useState<SortingState>([]);
|
||||
|
||||
const isFiltered = useMemo(() => Boolean(globalFilter.length), [globalFilter]);
|
||||
const isFiltered = useMemo(() => Boolean(globalFilter && globalFilter.length), [globalFilter]);
|
||||
const resetGlobalFilter = useCallback(() => setGlobalFilter(""), []);
|
||||
|
||||
return (
|
||||
|
||||
@ -119,7 +119,8 @@
|
||||
"tabs": {
|
||||
"all": "All",
|
||||
"draft": "Draft",
|
||||
"emitted": "Emitted",
|
||||
"ready": "Ready",
|
||||
"delivered": "Delivered",
|
||||
"accepted": "Accepted",
|
||||
"rejected": "Rejected",
|
||||
"archived": "Archived"
|
||||
|
||||
@ -119,7 +119,8 @@
|
||||
"tabs": {
|
||||
"all": "Todas",
|
||||
"draft": "Borradores",
|
||||
"emitted": "Emitidas",
|
||||
"ready": "Preparados",
|
||||
"delivered": "Entregado",
|
||||
"accepted": "Accepted",
|
||||
"rejected": "Rejected",
|
||||
"archived": "Archivadas"
|
||||
|
||||
Loading…
Reference in New Issue
Block a user